From 3da34f297a7503ce97690452b3765beeed4c54a7 Mon Sep 17 00:00:00 2001 From: zvecr Date: Sat, 26 Feb 2022 00:57:08 +0000 Subject: [PATCH 001/699] Start develop for 2022q2 --- readme.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/readme.md b/readme.md index 5649ddfa09..63b483c744 100644 --- a/readme.md +++ b/readme.md @@ -1,3 +1,7 @@ +# This is the `develop` branch! + +See the [Breaking Changes](https://docs.qmk.fm/#/breaking_changes) document for more information. + # Quantum Mechanical Keyboard Firmware [![Current Version](https://img.shields.io/github/tag/qmk/qmk_firmware.svg)](https://github.com/qmk/qmk_firmware/tags) From 156f0561f2e9865eb76a79742d8224cdd7100f27 Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Sun, 27 Feb 2022 04:05:03 +0100 Subject: [PATCH 002/699] [Core] Squeeze AVR some more with `-mrelax` and `-mcall-prologues` (#16269) --- platforms/avr/platform.mk | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/platforms/avr/platform.mk b/platforms/avr/platform.mk index 4d9cafaeef..9f304d2e20 100644 --- a/platforms/avr/platform.mk +++ b/platforms/avr/platform.mk @@ -18,6 +18,13 @@ COMPILEFLAGS += -ffunction-sections COMPILEFLAGS += -fdata-sections COMPILEFLAGS += -fpack-struct COMPILEFLAGS += -fshort-enums +COMPILEFLAGS += -mcall-prologues + +# Linker relaxation is only possible if +# link time optimizations are not enabled. +ifeq ($(strip $(LTO_ENABLE)), no) + COMPILEFLAGS += -mrelax +endif ASFLAGS += $(AVR_ASFLAGS) @@ -28,7 +35,7 @@ CFLAGS += -fno-strict-aliasing CXXFLAGS += $(COMPILEFLAGS) CXXFLAGS += -fno-exceptions -std=c++11 -LDFLAGS +=-Wl,--gc-sections +LDFLAGS += -Wl,--gc-sections OPT_DEFS += -DF_CPU=$(F_CPU)UL From e4a6afa369ca695be97dc3ba96fe129a1c24456e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 27 Feb 2022 11:28:51 +0000 Subject: [PATCH 003/699] Rework generate-api CLI command to use .build directory (#16441) --- .github/workflows/api.yml | 2 +- .github/workflows/develop_api.yml | 2 +- api_data/_config.yml | 1 - {api_data => data/templates/api}/readme.md | 0 lib/python/qmk/cli/generate/api.py | 28 ++++++++++++++++------ lib/python/qmk/tests/test_cli_commands.py | 2 +- 6 files changed, 24 insertions(+), 11 deletions(-) delete mode 100644 api_data/_config.yml rename {api_data => data/templates/api}/readme.md (100%) diff --git a/.github/workflows/api.yml b/.github/workflows/api.yml index a19667f97e..f0c49baf60 100644 --- a/.github/workflows/api.yml +++ b/.github/workflows/api.yml @@ -35,4 +35,4 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.SPACES_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.SPACES_SECRET_KEY }} AWS_S3_ENDPOINT: https://nyc3.digitaloceanspaces.com - SOURCE_DIR: 'api_data' + SOURCE_DIR: '.build/api_data' diff --git a/.github/workflows/develop_api.yml b/.github/workflows/develop_api.yml index f0098142c7..3eb6e53c20 100644 --- a/.github/workflows/develop_api.yml +++ b/.github/workflows/develop_api.yml @@ -35,4 +35,4 @@ jobs: AWS_ACCESS_KEY_ID: ${{ secrets.SPACES_ACCESS_KEY }} AWS_SECRET_ACCESS_KEY: ${{ secrets.SPACES_SECRET_KEY }} AWS_S3_ENDPOINT: https://nyc3.digitaloceanspaces.com - SOURCE_DIR: 'api_data' + SOURCE_DIR: '.build/api_data' diff --git a/api_data/_config.yml b/api_data/_config.yml deleted file mode 100644 index 277f1f2c51..0000000000 --- a/api_data/_config.yml +++ /dev/null @@ -1 +0,0 @@ -theme: jekyll-theme-cayman diff --git a/api_data/readme.md b/data/templates/api/readme.md similarity index 100% rename from api_data/readme.md rename to data/templates/api/readme.md diff --git a/lib/python/qmk/cli/generate/api.py b/lib/python/qmk/cli/generate/api.py index 285bd90eb5..0596b3f22b 100755 --- a/lib/python/qmk/cli/generate/api.py +++ b/lib/python/qmk/cli/generate/api.py @@ -1,7 +1,7 @@ """This script automates the generation of the QMK API data. """ from pathlib import Path -from shutil import copyfile +import shutil import json from milc import cli @@ -12,28 +12,42 @@ from qmk.json_encoders import InfoJSONEncoder from qmk.json_schema import json_load from qmk.keyboard import find_readme, list_keyboards +TEMPLATE_PATH = Path('data/templates/api/') +BUILD_API_PATH = Path('.build/api_data/') + @cli.argument('-n', '--dry-run', arg_only=True, action='store_true', help="Don't write the data to disk.") +@cli.argument('-f', '--filter', arg_only=True, action='append', default=[], help="Filter the list of keyboards based on partial name matches the supplied value. May be passed multiple times.") @cli.subcommand('Creates a new keymap for the keyboard of your choosing', hidden=False if cli.config.user.developer else True) def generate_api(cli): """Generates the QMK API data. """ - api_data_dir = Path('api_data') - v1_dir = api_data_dir / 'v1' + if BUILD_API_PATH.exists(): + shutil.rmtree(BUILD_API_PATH) + + shutil.copytree(TEMPLATE_PATH, BUILD_API_PATH) + + v1_dir = BUILD_API_PATH / 'v1' keyboard_all_file = v1_dir / 'keyboards.json' # A massive JSON containing everything keyboard_list_file = v1_dir / 'keyboard_list.json' # A simple list of keyboard targets keyboard_aliases_file = v1_dir / 'keyboard_aliases.json' # A list of historical keyboard names and their new name keyboard_metadata_file = v1_dir / 'keyboard_metadata.json' # All the data configurator/via needs for initialization usb_file = v1_dir / 'usb.json' # A mapping of USB VID/PID -> keyboard target - if not api_data_dir.exists(): - api_data_dir.mkdir() + # Filter down when required + keyboard_list = list_keyboards() + if cli.args.filter: + kb_list = [] + for keyboard_name in keyboard_list: + if any(i in keyboard_name for i in cli.args.filter): + kb_list.append(keyboard_name) + keyboard_list = kb_list kb_all = {} usb_list = {} # Generate and write keyboard specific JSON files - for keyboard_name in list_keyboards(): + for keyboard_name in keyboard_list: kb_all[keyboard_name] = info_json(keyboard_name) keyboard_dir = v1_dir / 'keyboards' / keyboard_name keyboard_info = keyboard_dir / 'info.json' @@ -47,7 +61,7 @@ def generate_api(cli): cli.log.debug('Wrote file %s', keyboard_info) if keyboard_readme_src: - copyfile(keyboard_readme_src, keyboard_readme) + shutil.copyfile(keyboard_readme_src, keyboard_readme) cli.log.debug('Copied %s -> %s', keyboard_readme_src, keyboard_readme) if 'usb' in kb_all[keyboard_name]: diff --git a/lib/python/qmk/tests/test_cli_commands.py b/lib/python/qmk/tests/test_cli_commands.py index 54b143c64f..c379c92229 100644 --- a/lib/python/qmk/tests/test_cli_commands.py +++ b/lib/python/qmk/tests/test_cli_commands.py @@ -232,7 +232,7 @@ def test_clean(): def test_generate_api(): - result = check_subcommand('generate-api', '--dry-run') + result = check_subcommand('generate-api', '--dry-run', '--filter', 'handwired/pytest') check_returncode(result) From f634fddd344a456c3eff8014d9d58a2d764d7a8c Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 4 Mar 2022 22:04:45 +1100 Subject: [PATCH 004/699] Remove `send_unicode_hex_string()` (#16518) --- docs/feature_unicode.md | 11 ------- docs/ja/feature_unicode.md | 11 ------- .../process_keycode/process_unicode_common.c | 33 ------------------- .../process_keycode/process_unicode_common.h | 1 - 4 files changed, 56 deletions(-) diff --git a/docs/feature_unicode.md b/docs/feature_unicode.md index 6c3e2a1a2f..bced419a03 100644 --- a/docs/feature_unicode.md +++ b/docs/feature_unicode.md @@ -230,17 +230,6 @@ send_unicode_string("(ノಠ痊ಠ)ノ彡┻━┻"); Example uses include sending Unicode strings when a key is pressed, as described in [Macros](feature_macros.md). -### `send_unicode_hex_string()` (Deprecated) - -Similar to `send_unicode_string()`, but the characters are represented by their Unicode code points, written in hexadecimal and separated by spaces. For example, the table flip above would be achieved with: - -```c -send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); -``` - -An easy way to convert your Unicode string to this format is to use [this site](https://r12a.github.io/app-conversion/) and take the result in the "Hex/UTF-32" section. - - ## Additional Language Support In `quantum/keymap_extras`, you'll see various language files — these work the same way as the ones for alternative layouts such as Colemak or BÉPO. When you include one of these language headers, you gain access to keycodes specific to that language / national layout. Such keycodes are defined by a 2-letter country/language code, followed by an underscore and a 4-letter abbreviation of the character to which the key corresponds. For example, including `keymap_french.h` and using `FR_UGRV` in your keymap will output `ù` when typed on a system with a native French AZERTY layout. diff --git a/docs/ja/feature_unicode.md b/docs/ja/feature_unicode.md index bfcb866ce1..2158678f3c 100644 --- a/docs/ja/feature_unicode.md +++ b/docs/ja/feature_unicode.md @@ -233,17 +233,6 @@ send_unicode_string("(ノಠ痊ಠ)ノ彡┻━┻"); 使用例には、[Macros](ja/feature_macros.md) で説明されているように、キーが押された時に Unicode 文字列を送信することが含まれます。 -### `send_unicode_hex_string()` - -`send_unicode_string()` に似ていますが、文字は Unicode コードポイントで表され、16進数で記述され、空白で区切られています。例えば、上記のちゃぶ台返しは以下で表されます: - -```c -send_unicode_hex_string("0028 30CE 0CA0 75CA 0CA0 0029 30CE 5F61 253B 2501 253B"); -``` - -[このサイト](https://r12a.github.io/app-conversion/)で結果を "Hex/UTF-32" で受け取ることで、Unicode 文字列をこの形式に簡単に変換できます。 - - ## 追加の言語サポート `quantum/keymap_extras` には、様々な言語ファイルがあります — これらは Colemak または BÉPO のような代替レイアウトのファイルと同じように動作します。これらの言語ヘッダのいずれかを `#include` すると、その言語/国のレイアウトに固有のキーコードにアクセスできます。このようなキーコードは、2文字の国/言語コードの後に、アンダースコアとキーが対応する4文字の略語が続くことで定義されます。例えば、キーマップに `keymap_french.h` を含め、`FR_UGRV` を使うと、ネイティブのフランス語 AZERTY レイアウトを使うシステムで入力すると、`ù` が出力されます。 diff --git a/quantum/process_keycode/process_unicode_common.c b/quantum/process_keycode/process_unicode_common.c index 46b77e14ba..2606ea1f37 100644 --- a/quantum/process_keycode/process_unicode_common.c +++ b/quantum/process_keycode/process_unicode_common.c @@ -16,8 +16,6 @@ #include "process_unicode_common.h" #include "eeprom.h" -#include -#include unicode_config_t unicode_config; uint8_t unicode_saved_mods; @@ -231,37 +229,6 @@ void register_unicode(uint32_t code_point) { unicode_input_finish(); } -// clang-format off - -void send_unicode_hex_string(const char *str) { - if (!str) { - return; - } - - while (*str) { - // Find the next code point (token) in the string - for (; *str == ' '; str++); // Skip leading spaces - size_t n = strcspn(str, " "); // Length of the current token - char code_point[n+1]; - strncpy(code_point, str, n); // Copy token into buffer - code_point[n] = '\0'; // Make sure it's null-terminated - - // Normalize the code point: make all hex digits lowercase - for (char *p = code_point; *p; p++) { - *p = tolower((unsigned char)*p); - } - - // Send the code point as a Unicode input string - unicode_input_start(); - send_string(code_point); - unicode_input_finish(); - - str += n; // Move to the first ' ' (or '\0') after the current token - } -} - -// clang-format on - // Borrowed from https://nullprogram.com/blog/2017/10/06/ static const char *decode_utf8(const char *str, int32_t *code_point) { const char *next; diff --git a/quantum/process_keycode/process_unicode_common.h b/quantum/process_keycode/process_unicode_common.h index 1a6607c757..8a4494c939 100644 --- a/quantum/process_keycode/process_unicode_common.h +++ b/quantum/process_keycode/process_unicode_common.h @@ -90,7 +90,6 @@ void register_hex(uint16_t hex); void register_hex32(uint32_t hex); void register_unicode(uint32_t code_point); -void send_unicode_hex_string(const char *str); void send_unicode_string(const char *str); bool process_unicode_common(uint16_t keycode, keyrecord_t *record); From ace0603f4f060783ea91c224c0caec6c1b799f15 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 5 Mar 2022 00:25:24 +1100 Subject: [PATCH 005/699] Change data driven "str" type to represent a quoted string literal (#16516) * Change data driven "str" type to represent a quoted string literal * Update docs --- data/mappings/info_config.json | 2 +- data/mappings/info_rules.json | 4 ++-- docs/data_driven_config.md | 5 +++-- lib/python/qmk/cli/generate/config_h.py | 9 +++++++-- lib/python/qmk/cli/generate/rules_mk.py | 4 +++- lib/python/qmk/info.py | 10 ++++++++-- 6 files changed, 24 insertions(+), 10 deletions(-) diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json index cfe8807d43..6c55f11647 100644 --- a/data/mappings/info_config.json +++ b/data/mappings/info_config.json @@ -3,7 +3,7 @@ { # Format: # : {"info_key": , ["value_type": ], ["to_json": ], ["to_c": ]} - # value_type: one of "array", "array.int", "bool", "int", "hex", "list", "mapping" + # value_type: one of "array", "array.int", "bool", "int", "hex", "list", "mapping", "str", "raw" # to_json: Default `true`. Set to `false` to exclude this mapping from info.json # to_c: Default `true`. Set to `false` to exclude this mapping from config.h # warn_duplicate: Default `true`. Set to `false` to turn off warning when a value exists in both places diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json index aea67e04c8..f03cadcd44 100644 --- a/data/mappings/info_rules.json +++ b/data/mappings/info_rules.json @@ -3,7 +3,7 @@ { # Format: # : {"info_key": , ["value_type": ], ["to_json": ], ["to_c": ]} - # value_type: one of "array", "array.int", "bool", "int", "list", "hex", "mapping" + # value_type: one of "array", "array.int", "bool", "int", "list", "hex", "mapping", "str", "raw" # to_json: Default `true`. Set to `false` to exclude this mapping from info.json # to_c: Default `true`. Set to `false` to exclude this mapping from rules.mk # warn_duplicate: Default `true`. Set to `false` to turn off warning when a value exists in both places @@ -20,6 +20,6 @@ "MOUSEKEY_ENABLE": {"info_key": "mouse_key.enabled", "value_type": "bool"}, "NO_USB_STARTUP_CHECK": {"info_key": "usb.no_startup_check", "value_type": "bool"}, "SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"}, - "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "value_type": "str", "to_c": false}, + "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false}, "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"} } diff --git a/docs/data_driven_config.md b/docs/data_driven_config.md index 38fb5dbf14..cdcf21a19c 100644 --- a/docs/data_driven_config.md +++ b/docs/data_driven_config.md @@ -44,7 +44,7 @@ In other cases you should group like options together in an `object`. This is pa In most cases you can add a simple mapping. These are maintained as JSON files in `data/mappings/info_config.json` and `data/mappings/info_rules.json`, and control mapping for `config.h` and `rules.mk`, respectively. Each mapping is keyed by the `config.h` or `rules.mk` variable, and the value is a hash with the following keys: * `info_key`: (required) The location within `info.json` for this value. See below. -* `value_type`: (optional) Default `str`. The format for this variable's value. See below. +* `value_type`: (optional) Default `raw`. The format for this variable's value. See below. * `to_json`: (optional) Default `true`. Set to `false` to exclude this mapping from info.json * `to_c`: (optional) Default `true`. Set to `false` to exclude this mapping from config.h * `warn_duplicate`: (optional) Default `true`. Set to `false` to turn off warning when a value exists in both places @@ -57,7 +57,7 @@ Under the hood we use [Dotty Dict](https://dotty-dict.readthedocs.io/en/latest/) #### Value Types -By default we treat all values as simple strings. If your value is more complex you can use one of these types to intelligently parse the data: +By default we treat all values as unquoted "raw" data. If your value is more complex you can use one of these types to intelligently parse the data: * `array`: A comma separated array of strings * `array.int`: A comma separated array of integers @@ -65,6 +65,7 @@ By default we treat all values as simple strings. If your value is more complex * `hex`: A number formatted as hex * `list`: A space separate array of strings * `mapping`: A hash of key/value pairs +* `str`: A quoted string literal ### Add code to extract it diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index 24bbbdf517..340ed10436 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py @@ -82,7 +82,7 @@ def generate_config_items(kb_info_json, config_h_lines): for config_key, info_dict in info_config_map.items(): info_key = info_dict['info_key'] - key_type = info_dict.get('value_type', 'str') + key_type = info_dict.get('value_type', 'raw') to_config = info_dict.get('to_config', True) if not to_config: @@ -110,6 +110,11 @@ def generate_config_items(kb_info_json, config_h_lines): config_h_lines.append(f'#ifndef {key}') config_h_lines.append(f'# define {key} {value}') config_h_lines.append(f'#endif // {key}') + elif key_type == 'str': + config_h_lines.append('') + config_h_lines.append(f'#ifndef {config_key}') + config_h_lines.append(f'# define {config_key} "{config_value}"') + config_h_lines.append(f'#endif // {config_key}') elif key_type == 'bcd_version': (major, minor, revision) = config_value.split('.') config_h_lines.append('') @@ -200,7 +205,7 @@ def generate_config_h(cli): cli.args.output.parent.mkdir(parents=True, exist_ok=True) if cli.args.output.exists(): cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(config_h) + cli.args.output.write_text(config_h, encoding='utf-8') if not cli.args.quiet: cli.log.info('Wrote info_config.h to %s.', cli.args.output) diff --git a/lib/python/qmk/cli/generate/rules_mk.py b/lib/python/qmk/cli/generate/rules_mk.py index ce824f6378..a1b10cc945 100755 --- a/lib/python/qmk/cli/generate/rules_mk.py +++ b/lib/python/qmk/cli/generate/rules_mk.py @@ -19,7 +19,7 @@ def process_mapping_rule(kb_info_json, rules_key, info_dict): return None info_key = info_dict['info_key'] - key_type = info_dict.get('value_type', 'str') + key_type = info_dict.get('value_type', 'raw') try: rules_value = kb_info_json[info_key] @@ -32,6 +32,8 @@ def process_mapping_rule(kb_info_json, rules_key, info_dict): return f'{rules_key} ?= {"yes" if rules_value else "no"}' elif key_type == 'mapping': return '\n'.join([f'{key} ?= {value}' for key, value in rules_value.items()]) + elif key_type == 'str': + return f'{rules_key} ?= "{rules_value}"' return f'{rules_key} ?= {rules_value}' diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index b86eaa059f..c399a9f321 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -411,7 +411,7 @@ def _extract_config_h(info_data): for config_key, info_dict in info_config_map.items(): info_key = info_dict['info_key'] - key_type = info_dict.get('value_type', 'str') + key_type = info_dict.get('value_type', 'raw') try: if config_key in config_c and info_dict.get('to_json', True): @@ -443,6 +443,9 @@ def _extract_config_h(info_data): elif key_type == 'int': dotty_info[info_key] = int(config_c[config_key]) + elif key_type == 'str': + dotty_info[info_key] = config_c[config_key].strip('"') + elif key_type == 'bcd_version': major = int(config_c[config_key][2:4]) minor = int(config_c[config_key][4]) @@ -491,7 +494,7 @@ def _extract_rules_mk(info_data): for rules_key, info_dict in info_rules_map.items(): info_key = info_dict['info_key'] - key_type = info_dict.get('value_type', 'str') + key_type = info_dict.get('value_type', 'raw') try: if rules_key in rules and info_dict.get('to_json', True): @@ -523,6 +526,9 @@ def _extract_rules_mk(info_data): elif key_type == 'int': dotty_info[info_key] = int(rules[rules_key]) + elif key_type == 'str': + dotty_info[info_key] = rules[rules_key].strip('"') + else: dotty_info[info_key] = rules[rules_key] From 7d41639d549c7db0763d6769a089794b6050c99f Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 5 Mar 2022 11:20:34 +1100 Subject: [PATCH 006/699] Map data driven `DESCRIPTION` as string literal (#16523) --- data/mappings/info_config.json | 2 +- keyboards/sowbug/68keys/config.h | 1 - keyboards/sowbug/ansi_tkl/config.h | 1 - keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h | 1 - keyboards/xelus/ninjin/config.h | 1 - lib/python/qmk/tests/test_cli_commands.py | 2 +- 6 files changed, 2 insertions(+), 6 deletions(-) diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json index 6c55f11647..2121741d19 100644 --- a/data/mappings/info_config.json +++ b/data/mappings/info_config.json @@ -17,7 +17,7 @@ "DEVICE_VER": {"info_key": "usb.device_ver", "value_type": "hex"}, # TODO: Replace ^^^ with vvv #"DEVICE_VER": {"info_key": "usb.device_version", "value_type": "bcd_version"}, - "DESCRIPTION": {"info_key": "keyboard_folder", "to_json": false}, + "DESCRIPTION": {"info_key": "keyboard_folder", "value_type": "str", "to_json": false}, "DIODE_DIRECTION": {"info_key": "diode_direction"}, "FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "bool"}, "DYNAMIC_KEYMAP_EEPROM_MAX_ADDR": {"info_key": "dynamic_keymap.eeprom_max_addr", "value_type": "int"}, diff --git a/keyboards/sowbug/68keys/config.h b/keyboards/sowbug/68keys/config.h index 0aad9a4574..0721302dbe 100644 --- a/keyboards/sowbug/68keys/config.h +++ b/keyboards/sowbug/68keys/config.h @@ -26,7 +26,6 @@ #define DEVICE_VER 0x0001 #define MANUFACTURER github.com/sowbug #define PRODUCT 68-key keyboard -#define DESCRIPTION A 68-key keyboard based on 68keys.io // key matrix size #define MATRIX_ROWS 5 diff --git a/keyboards/sowbug/ansi_tkl/config.h b/keyboards/sowbug/ansi_tkl/config.h index 505453b72b..44e82bbac7 100644 --- a/keyboards/sowbug/ansi_tkl/config.h +++ b/keyboards/sowbug/ansi_tkl/config.h @@ -26,7 +26,6 @@ #define DEVICE_VER 0x0001 #define MANUFACTURER github.com/sowbug #define PRODUCT ANSI TKL -#define DESCRIPTION A tenkeyless ANSI-layout keyboard // key matrix size #define MATRIX_ROWS 6 diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h index 7bd5b224df..597d287b07 100644 --- a/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h +++ b/keyboards/unicomp/spacesaver_m_pre_2013/overnumpad_1xb/config.h @@ -23,7 +23,6 @@ #define DEVICE_VER 0x0001 #define MANUFACTURER Unicomp/Purdea Andrei #define PRODUCT Unicomp Spacesaver M -#define DESCRIPTION QMK firmware for the Unicomp Spacesaver M keyboard with a replacement Overnumpad controller #define SERIAL_NUMBER "purdea.ro:overnumpad_controller" /* key matrix size */ diff --git a/keyboards/xelus/ninjin/config.h b/keyboards/xelus/ninjin/config.h index cbaca37b5e..4dd40210a6 100644 --- a/keyboards/xelus/ninjin/config.h +++ b/keyboards/xelus/ninjin/config.h @@ -22,7 +22,6 @@ #define DEVICE_VER 0x0001 #define MANUFACTURER Xelus #define PRODUCT Ninjin -#define DESCRIPTION Ninjin /* key matrix size */ #define MATRIX_ROWS 6 diff --git a/lib/python/qmk/tests/test_cli_commands.py b/lib/python/qmk/tests/test_cli_commands.py index d5cf1841c9..d40d4bf573 100644 --- a/lib/python/qmk/tests/test_cli_commands.py +++ b/lib/python/qmk/tests/test_cli_commands.py @@ -259,7 +259,7 @@ def test_generate_config_h(): result = check_subcommand('generate-config-h', '-kb', 'handwired/pytest/basic') check_returncode(result) assert '# define DEVICE_VER 0x0001' in result.stdout - assert '# define DESCRIPTION handwired/pytest/basic' in result.stdout + assert '# define DESCRIPTION "handwired/pytest/basic"' in result.stdout assert '# define DIODE_DIRECTION COL2ROW' in result.stdout assert '# define MANUFACTURER none' in result.stdout assert '# define PRODUCT pytest' in result.stdout From 4cae7becb19f58005e68a3c4ec4ce426c5d74d5b Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Mon, 7 Mar 2022 12:02:00 +0900 Subject: [PATCH 007/699] [Keymap] Change helix:fraanrosi keymap to use split_common (#16533) --- keyboards/helix/rev2/keymaps/fraanrosi/rules.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk b/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk index 98585b0d60..4e80183863 100644 --- a/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk +++ b/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk @@ -5,6 +5,7 @@ # See TOP/keyboards/helix/rules.mk for a list of options that can be set. # See TOP/docs/config_options.md for more information. # +SPLIT_KEYBOARD = yes LTO_ENABLE = no # if firmware size over limit, try this option MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control From 9d6cea070e3687b743500b05efca060c13eb4685 Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Mon, 7 Mar 2022 12:02:40 +0900 Subject: [PATCH 008/699] [Keymap] Change helix:five_rows_jis keymap to use split_common (#16538) --- .../helix/rev2/keymaps/five_rows_jis/keymap.c | 130 +++++++++++++++--- .../helix/rev2/keymaps/five_rows_jis/rules.mk | 9 ++ 2 files changed, 118 insertions(+), 21 deletions(-) diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c b/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c index a22a4b1663..24b2a59012 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c @@ -1,10 +1,7 @@ #include QMK_KEYBOARD_H #include "keymap_jp.h" -#include "bootloader.h" -#ifdef PROTOCOL_LUFA -#include "lufa.h" -#include "split_util.h" -#endif +#include +#include #ifdef SSD1306OLED #include "ssd1306.h" #endif @@ -15,15 +12,6 @@ // * If you want to use the Kana key you can enable this comment out. However, the binary size may be over. * // #define KANA_ENABLE -extern keymap_config_t keymap_config; - -#ifdef RGBLIGHT_ENABLE -//Following line allows macro to read current RGB settings -extern rgblight_config_t rgblight_config; -#endif - -extern uint8_t is_master; - // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them @@ -209,7 +197,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #error "undefined keymaps" #endif -#ifdef SSD1306OLED +#if defined(SSD1306OLED) || defined(OLED_ENABLE) char keylog[24] = {}; const char code_to_name[60] = { ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', @@ -266,7 +254,7 @@ void update_tri_layer_RGB(uint8_t layer1, uint8_t layer2, uint8_t layer3) { #endif bool process_record_user(uint16_t keycode, keyrecord_t *record) { - #ifdef SSD1306OLED + #if defined(SSD1306OLED) || defined(OLED_ENABLE) if (record->event.pressed) { set_keylog(keycode, record); } @@ -279,7 +267,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { rgblight_mode(RGB_current_mode); rgblight_step(); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } break; #endif @@ -312,7 +300,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { eeconfig_update_rgblight_default(); rgblight_enable(); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } break; #endif @@ -325,7 +313,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { void matrix_init_user(void) { #ifdef RGBLIGHT_ENABLE - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); #endif //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h #ifdef SSD1306OLED @@ -431,7 +419,7 @@ void iota_gfx_task_user(void) { #endif matrix_clear(&matrix); - if (is_master) { + if (is_keyboard_master()) { render_status(&matrix); } else { render_logo(&matrix); @@ -440,4 +428,104 @@ void iota_gfx_task_user(void) { matrix_update(&display, &matrix); } -#endif +#endif // end of SSD1306OLED + +//OLED update loop +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (is_keyboard_master()) { + return OLED_ROTATION_0; + } else { + return OLED_ROTATION_180; + } +} + +//assign the right code to your layers for OLED display +#define L_BASE _BASE +#define L_LOWER (1<<_LOWER) +#define L_RAISE (1<<_RAISE) +#define L_ADJUST (1<<_ADJUST) +#define L_ADJUST_TRI (L_ADJUST|L_RAISE|L_LOWER) +#define L_LOW_E (1<<_LOW_E) +#define L_RAI_E (1<<_RAI_E) +#define L_ADJUST_TRIE (L_ADJUST|L_RAI_E|L_LOW_E) + +const char helix_logo[]={ + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, + 0}; + +static inline void render_logo(void) { + oled_write(helix_logo, false); +} + +const char mac_win_logo[][2][3]={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; + +static inline void render_status(void) { + char buf[20]; + // Render to mode icon + if(keymap_config.swap_lalt_lgui==false){ + oled_write(mac_win_logo[0][0], false); + oled_write_P(PSTR("\n"), false); + oled_write(mac_win_logo[0][1], false); + } else { + oled_write(mac_win_logo[1][0], false); + oled_write_P(PSTR("\n"), false); + oled_write(mac_win_logo[1][1], false); + } + + #ifdef RGBLIGHT_ENABLE + snprintf(buf, sizeof(buf), " LED mode:%d", (short)RGB_current_mode); + oled_write(buf, false); + #endif + + // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below + oled_write_P(PSTR("\nLayer: "), false); + switch (layer_state) { + case L_BASE: + oled_write_P(default_layer_state == (1UL<<_BAS_E) ? PSTR("BaseEx") : PSTR("Base"), false); + break; + case L_RAISE: + oled_write_P(PSTR("Raise"), false); + break; + case L_RAI_E: + oled_write_P(PSTR("RaiseEx"), false); + break; + case L_LOWER: + oled_write_P(PSTR("Lower"), false); + break; + case L_LOW_E: + oled_write_P(PSTR("LowerEx"), false); + break; + case L_ADJUST: + case L_ADJUST_TRI: + case L_ADJUST_TRIE: + oled_write_P(PSTR("Adjust"), false); + break; + default: + snprintf(buf, sizeof(buf), "%d", (short)layer_state); + oled_write(buf, false); + } + + oled_write(keylog, false); +} + +bool oled_task_user(void) { + +# if DEBUG_TO_SCREEN + if (debug_enable) { + return; + } +# endif + + if (is_keyboard_master()) { + render_status(); + } else { + render_logo(); + } + + return false; +} + +#endif // end of OLED_ENABLE diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk index 3ef6f82366..6300137fd6 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/rules.mk @@ -1,4 +1,5 @@ LTO_ENABLE = no # if firmware size over limit, try this option +SPLIT_KEYBOARD = yes # Helix Spacific Build Options # you can uncomment and edit follows 7 Variables @@ -10,3 +11,11 @@ HELIX_ROWS = 5 # Helix Rows is 4 or 5 # LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) # LED_ANIMATIONS = yes # LED animations # IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) + +# OLED_ENABLE が yes のとき +# OLED_SELECT が core ならば QMK 標準の oled_dirver.c を使用します。 +# OLED_SELECT が core 以外ならば従来どおり helix/local_drivers/ssd1306.c を使用します。 +# If OLED_ENABLE is 'yes' +# If OLED_SELECT is 'core', use QMK standard oled_dirver.c. +# If OLED_SELECT is other than 'core', use helix/local_drivers/ssd1306.c. +OLED_SELECT = core From b77d51f41aaee66b5d9743a7ba58655f944f4d71 Mon Sep 17 00:00:00 2001 From: npspears <40127181+npspears@users.noreply.github.com> Date: Sun, 6 Mar 2022 21:26:23 -0600 Subject: [PATCH 009/699] [Keyboard] add support for Quark_Plus (#16324) Co-authored-by: Ryan --- keyboards/checkerboards/quark_plus/config.h | 74 +++++++++++++++ keyboards/checkerboards/quark_plus/info.json | 23 +++++ .../quark_plus/keymaps/2u/config.h | 1 + .../quark_plus/keymaps/2u/keymap.c | 82 +++++++++++++++++ .../quark_plus/keymaps/2x225u/config.h | 1 + .../quark_plus/keymaps/2x225u/keymap.c | 82 +++++++++++++++++ .../quark_plus/keymaps/2x3u/config.h | 1 + .../quark_plus/keymaps/2x3u/keymap.c | 82 +++++++++++++++++ .../quark_plus/keymaps/default/config.h | 1 + .../quark_plus/keymaps/default/keymap.c | 82 +++++++++++++++++ .../quark_plus/keymaps/default/readme.md | 1 + .../quark_plus/keymaps/via/keymap.c | 89 +++++++++++++++++++ .../quark_plus/keymaps/via/rules.mk | 1 + .../checkerboards/quark_plus/quark_plus.c | 35 ++++++++ .../checkerboards/quark_plus/quark_plus.h | 82 +++++++++++++++++ keyboards/checkerboards/quark_plus/readme.md | 17 ++++ keyboards/checkerboards/quark_plus/rules.mk | 20 +++++ 17 files changed, 674 insertions(+) create mode 100644 keyboards/checkerboards/quark_plus/config.h create mode 100644 keyboards/checkerboards/quark_plus/info.json create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2u/config.h create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2u/keymap.c create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2x225u/config.h create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2x225u/keymap.c create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2x3u/config.h create mode 100644 keyboards/checkerboards/quark_plus/keymaps/2x3u/keymap.c create mode 100644 keyboards/checkerboards/quark_plus/keymaps/default/config.h create mode 100644 keyboards/checkerboards/quark_plus/keymaps/default/keymap.c create mode 100644 keyboards/checkerboards/quark_plus/keymaps/default/readme.md create mode 100644 keyboards/checkerboards/quark_plus/keymaps/via/keymap.c create mode 100644 keyboards/checkerboards/quark_plus/keymaps/via/rules.mk create mode 100644 keyboards/checkerboards/quark_plus/quark_plus.c create mode 100644 keyboards/checkerboards/quark_plus/quark_plus.h create mode 100644 keyboards/checkerboards/quark_plus/readme.md create mode 100644 keyboards/checkerboards/quark_plus/rules.mk diff --git a/keyboards/checkerboards/quark_plus/config.h b/keyboards/checkerboards/quark_plus/config.h new file mode 100644 index 0000000000..a2d2dc230c --- /dev/null +++ b/keyboards/checkerboards/quark_plus/config.h @@ -0,0 +1,74 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7070 +#define PRODUCT_ID 0x5344 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Nasp +#define PRODUCT QUARK_PlUS + +/* key matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 6 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B4, B1, C2, D0, D6, B0, B6, B5 } +#define MATRIX_COL_PINS { C6, D1, D5, D4, D3, D2 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + +/* Switch LED Backlighting */ +#define BACKLIGHT_PIN C4 +#define BACKLIGHT_LEVELS 6 +#define BACKLIGHT_BREATHING +#define BREATHING_PERIOD 6 + +// ws2812 options +#define RGB_DI_PIN C5 // pin the DI on the ws2812 is hooked-up to +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLED_NUM 14 // number of LEDs +#define RGBLIGHT_HUE_STEP 12 // units to step when in/decreasing hue +#define RGBLIGHT_SAT_STEP 12 // units to step when in/decresing saturation +#define RGBLIGHT_VAL_STEP 12 // units to step when in/decreasing value (brightness) + +#define ENCODERS_PAD_A { C7, B7, B3, B2} +#define ENCODERS_PAD_B { B7, C7, B2, B3} +#define ENCODER_RESOLUTION 4 diff --git a/keyboards/checkerboards/quark_plus/info.json b/keyboards/checkerboards/quark_plus/info.json new file mode 100644 index 0000000000..b5a111ce8e --- /dev/null +++ b/keyboards/checkerboards/quark_plus/info.json @@ -0,0 +1,23 @@ +{ + "keyboard_name": "Quark_Plus", + "url": "https://www.github.com/qmk/qmk_firmware/tree/master/keyboards/checkerboards/quark_plus", + "maintainer": "nasp", + "layouts": { + "LAYOUT_grid": { + "layout": + [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"CTRL", "x":0, "y":3}, {"label":"WIN", "x":1, "y":3}, {"label":"MENU", "x":2, "y":3}, {"label":"ALT", "x":3, "y":3}, {"label":"⇓", "x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"label":"⇑", "x":7, "y":3}, {"label":"LEFT", "x":8, "y":3}, {"label":"DOWN", "x":9, "y":3}, {"label":"UP", "x":10, "y":3}, {"label":"RIGHT", "x":11, "y":3}] + }, + "LAYOUT_2u": { + "layout": + [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"CTRL", "x":0, "y":3}, {"label":"WIN", "x":1, "y":3}, {"label":"MENU", "x":2, "y":3}, {"label":"ALT", "x":3, "y":3}, {"label":"⇓", "x":4, "y":3}, {"x":5, "y":3, "w":2}, {"label":"⇑", "x":7, "y":3}, {"label":"LEFT", "x":8, "y":3}, {"label":"DOWN", "x":9, "y":3}, {"label":"UP", "x":10, "y":3}, {"label":"RIGHT", "x":11, "y":3}] + }, + "LAYOUT_2x225u": { + "layout": + [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"CTRL", "x":0, "y":3, "w":1.25}, {"label":"WIN", "x":1.25, "y":3, "w":1.25}, {"label":"ALT", "x":2.5, "y":3, "w":1.25}, {"x":3.75, "y":3, "w":2.25}, {"x":6, "y":3, "w":2.25}, {"label":"ALT", "x":8.25, "y":3, "w":1.25}, {"label":"MENU", "x":9.5, "y":3, "w":1.25}, {"label":"CTRL", "x":10.75, "y":3, "w":1.25}] + }, + "LAYOUT_2x3u": { + "layout": + [{"label":"Tab", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Back Space", "x":11, "y":0}, {"label":"Esc", "x":0, "y":1}, {"label":"A", "x":1, "y":1}, {"label":"S", "x":2, "y":1}, {"label":"D", "x":3, "y":1}, {"label":"F", "x":4, "y":1}, {"label":"G", "x":5, "y":1}, {"label":"H", "x":6, "y":1}, {"label":"J", "x":7, "y":1}, {"label":"K", "x":8, "y":1}, {"label":"L", "x":9, "y":1}, {"label":";", "x":10, "y":1}, {"label":"'", "x":11, "y":1}, {"label":"Shift", "x":0, "y":2}, {"label":"Z", "x":1, "y":2}, {"label":"X", "x":2, "y":2}, {"label":"C", "x":3, "y":2}, {"label":"V", "x":4, "y":2}, {"label":"B", "x":5, "y":2}, {"label":"N", "x":6, "y":2}, {"label":"M", "x":7, "y":2}, {"label":",", "x":8, "y":2}, {"label":".", "x":9, "y":2}, {"label":"/", "x":10, "y":2}, {"label":"Return", "x":11, "y":2}, {"label":"CTRL", "x":0, "y":3}, {"label":"WIN", "x":1, "y":3}, {"label":"ALT", "x":2, "y":3}, {"x":3, "y":3, "w":3}, {"x":6, "y":3, "w":3}, {"label":"ALT", "x":9, "y":3}, {"label":"MENU", "x":10, "y":3}, {"label":"CTRL", "x":11, "y":3}] + } + } + } diff --git a/keyboards/checkerboards/quark_plus/keymaps/2u/config.h b/keyboards/checkerboards/quark_plus/keymaps/2u/config.h new file mode 100644 index 0000000000..9ec4fd1a94 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2u/config.h @@ -0,0 +1 @@ +#define TAPPING_TOGGLE 2 diff --git a/keyboards/checkerboards/quark_plus/keymaps/2u/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/2u/keymap.c new file mode 100644 index 0000000000..b62e60370e --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2u/keymap.c @@ -0,0 +1,82 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Defines for task manager and such +#define CALTDEL LCTL(LALT(KC_DEL)) +#define TSKMGR LCTL(LSFT(KC_ESC)) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* [0] + * ,-----------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+------| + * | TAB | Q | W | E | R | T | Y | U | I | O | P | DEL | + * |------------+------+------+------+------+-------------+------+------+------+------+------| + * | CTRL&ESC | A | S | D | F | G | H | J | K | L | ; | " | + * |------------+------+------+------+------+------|------+------+------+------+------+------| + * | SHIFT | Z | X | C | V | B | N | M | , | . | / | ENTER | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| + * | PRINT | Ctrl | ALT | GUI |LOWER | SPACE |RAISE | LEFT | DOWN | UP |RIGHT | + * `-----------------------------------------------------------------------------------------' + */ + [0] = LAYOUT_2u( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_PSCR, KC_LCTL, KC_LALT, KC_LGUI, TT(1), KC_SPC, TT(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* [1] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+----| + * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC | + * |------------+------+------+------+------+-------------+------+------+------+------+----| + * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | + * |------------+------+------+------+------+------|------+------+------+------+------+----| + * | | | | | | | | + | = | | | | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----| + * | | | ESC |CTRL-ALT-DEL|TASK| | | | | '|' | ` | | + * `---------------------------------------------------------------------------------------' + */ + [1] = LAYOUT_2u( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______, + _______, KC_ESC, CALTDEL, TSKMGR, _______, _______, _______, _______, KC_NUBS, KC_GRV, _______ + ), + + /* [2] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+---| + * | | | | UP | | | | _ | | [ | ] | | + * |------------+------+------+------+------+-------------+------+------+------+------+---| + * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | | + * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| + * |RESET | | | | | | | | | | | + * `---------------------------------------------------------------------------------------' + */ + [2] = LAYOUT_2u( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/2x225u/config.h b/keyboards/checkerboards/quark_plus/keymaps/2x225u/config.h new file mode 100644 index 0000000000..9ec4fd1a94 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2x225u/config.h @@ -0,0 +1 @@ +#define TAPPING_TOGGLE 2 diff --git a/keyboards/checkerboards/quark_plus/keymaps/2x225u/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/2x225u/keymap.c new file mode 100644 index 0000000000..f490f76f9f --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2x225u/keymap.c @@ -0,0 +1,82 @@ +/* Copyright 2015-2017 Jack Humbert + * Modified by Nasp for the Quark + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Defines for task manager and such +#define CALTDEL LCTL(LALT(KC_DEL)) +#define TSKMGR LCTL(LSFT(KC_ESC)) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* [0] + * ,-----------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------------+------+------+------+------+-------------+------+------+------+------+------| + * | CTL & ESC | A | S | D | F | G | H | J | K | L | ; | " | + * |------------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift | Z | X | C | V | B | N | M | , | . | / |Enter | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| + * | PRINT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS | + * `-----------------------------------------------------------------------------------------' + */ + [0] = LAYOUT_2x225u( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + CTL_T(KC_ESC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_PSCR, KC_LGUI, KC_LALT, TT(1), LT(2, KC_SPC), KC_LBRC, KC_RBRC, KC_CAPS + ), + + /* [1] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+----| + * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC | + * |------------+------+------+------+------+-------------+------+------+------+------+----| + * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | + * |------------+------+------+------+------+------|------+------+------+------+------+----| + * | | | | | | | | + | = | | | | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----| + * | ESC | CTRL-ALT-DEL | TASK | | | '|' | ` | | + * `---------------------------------------------------------------------------------------' + */ + [1] = LAYOUT_2x225u( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______, + KC_ESC, CALTDEL, TSKMGR, _______, _______, KC_NUBS, KC_GRV, _______ + ), + + /* [2] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+---| + * | | | | UP | | | | _ | | [ | ] | | + * |------------+------+------+------+------+-------------+------+------+------+------+---| + * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | | + * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| + * | RESET | | | | | | | | + * `---------------------------------------------------------------------------------------' + */ + [2] = LAYOUT_2x225u( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______ + ), + }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/2x3u/config.h b/keyboards/checkerboards/quark_plus/keymaps/2x3u/config.h new file mode 100644 index 0000000000..9ec4fd1a94 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2x3u/config.h @@ -0,0 +1 @@ +#define TAPPING_TOGGLE 2 diff --git a/keyboards/checkerboards/quark_plus/keymaps/2x3u/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/2x3u/keymap.c new file mode 100644 index 0000000000..ea65b98cd9 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/2x3u/keymap.c @@ -0,0 +1,82 @@ +/* Copyright 2015-2017 Jack Humbert + * Modified by Nasp for the Quark + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Defines for task manager and such +#define CALTDEL LCTL(LALT(KC_DEL)) +#define TSKMGR LCTL(LSFT(KC_ESC)) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* [0] +* ,-----------------------------------------------------------------------------------------. +* |------------+------+------+------+------+------+------+------+------+------+------+------| +* | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | +* |------------+------+------+------+------+-------------+------+------+------+------+------| +* | CTL & ESC | A | S | D | F | G | H | J | K | L | ; | " | +* |------------+------+------+------+------+------|------+------+------+------+------+------| +* | Shift | Z | X | C | V | B | N | M | , | . | / |Enter | +* |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| +* | PRINT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS | +* `-----------------------------------------------------------------------------------------' +*/ +[0] = LAYOUT_2x3u( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + CTL_T(KC_ESC), KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_PSCR, KC_LGUI, KC_LALT, TT(1), LT(2, KC_SPC), KC_LBRC, KC_RBRC, KC_CAPS + ), + +/* [1] +* ,---------------------------------------------------------------------------------------. +* |------------+------+------+------+------+------+------+------+------+------+------+----| +* | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC | +* |------------+------+------+------+------+-------------+------+------+------+------+----| +* | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | +* |------------+------+------+------+------+------|------+------+------+------+------+----| +* | | | | | | | | + | = | | | | +* |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----| +* | ESC | CTRL-ALT-DEL | TASK | | | '|' | ` | | +* `---------------------------------------------------------------------------------------' +*/ +[1] = LAYOUT_2x3u( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______, + KC_ESC, CALTDEL, TSKMGR, _______, _______, KC_NUBS, KC_GRV, _______ + ), + +/* [2] +* ,---------------------------------------------------------------------------------------. +* |------------+------+------+------+------+------+------+------+------+------+------+---| +* | | | | UP | | | | _ | | [ | ] | | +* |------------+------+------+------+------+-------------+------+------+------+------+---| +* | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | | +* |------------+------+------+------+------+-----+-----+------+------+------+------+-----| +* | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | +* |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| +* | RESET | | | | | | | | +* `---------------------------------------------------------------------------------------' + */ +[2] = LAYOUT_2x3u( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______ + ), + }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/default/config.h b/keyboards/checkerboards/quark_plus/keymaps/default/config.h new file mode 100644 index 0000000000..9ec4fd1a94 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/default/config.h @@ -0,0 +1 @@ +#define TAPPING_TOGGLE 2 diff --git a/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c new file mode 100644 index 0000000000..871a386441 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c @@ -0,0 +1,82 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Defines for task manager and such +#define CALTDEL LCTL(LALT(KC_DEL)) +#define TSKMGR LCTL(LSFT(KC_ESC)) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* [0] + * ,-----------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+------| + * | TAB | Q | W | E | R | T | Y | U | I | O | P | DEL | + * |------------+------+------+------+------+-------------+------+------+------+------+------| + * | CTRL&ESC | A | S | D | F | G | H | J | K | L | ; | " | + * |------------+------+------+------+------+------|------+------+------+------+------+------| + * | SHIFT | Z | X | C | V | B | N | M | , | . | / | ENTER | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| + * | PRINT | Ctrl | ALT | GUI |LOWER |SPACE |SPACE|RAISE | LEFT | DOWN | UP |RIGHT | + * `-----------------------------------------------------------------------------------------' + */ + [0] = LAYOUT_grid( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_PSCR, KC_LCTL, KC_LALT, KC_LGUI, TT(1), KC_SPC, KC_SPC, TT(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* [1] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+----| + * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC | + * |------------+------+------+------+------+-------------+------+------+------+------+----| + * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | + * |------------+------+------+------+------+------|------+------+------+------+------+----| + * | | | | | | | | + | = | | | | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----| + * | | | ESC |CTRL-ALT-DEL|TASK| | | | | | '|' | ` | | + * `---------------------------------------------------------------------------------------' + */ + [1] = LAYOUT_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______, + _______, KC_ESC, CALTDEL, TSKMGR, _______, _______, _______, _______, _______, KC_NUBS, KC_GRV, _______ + ), + + /* [2] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+---| + * | | | | UP | | | | _ | | [ | ] | | + * |------------+------+------+------+------+-------------+------+------+------+------+---| + * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | | + * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| + * |RESET | | | | | | | | | | | | + * `---------------------------------------------------------------------------------------' + */ + [2] = LAYOUT_grid( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/default/readme.md b/keyboards/checkerboards/quark_plus/keymaps/default/readme.md new file mode 100644 index 0000000000..65ffbc82db --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/default/readme.md @@ -0,0 +1 @@ +The Default Quark_Plus Layout diff --git a/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c new file mode 100644 index 0000000000..165ecbbd53 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c @@ -0,0 +1,89 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Defines for task manager and such +#define CALTDEL LCTL(LALT(KC_DEL)) +#define TSKMGR LCTL(LSFT(KC_ESC)) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* [0] + * ,-----------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+------| + * | TAB | Q | W | E | R | T | Y | U | I | O | P | DEL | + * |------------+------+------+------+------+-------------+------+------+------+------+------| + * | CTRL&ESC | A | S | D | F | G | H | J | K | L | ; | " | + * |------------+------+------+------+------+------|------+------+------+------+------+------| + * | SHIFT | Z | X | C | V | B | N | M | , | . | / | ENTER | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| + * | PRINT | Ctrl | ALT | GUI |LOWER |SPACE |SPACE|RAISE | LEFT | DOWN | UP |RIGHT | + * `-----------------------------------------------------------------------------------------' + */ + [0] = LAYOUT_grid( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + KC_PSCR, KC_LCTL, KC_LALT, KC_LGUI, TT(1), KC_SPC, KC_SPC, TT(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* [1] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+----| + * | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | BCKSPC | + * |------------+------+------+------+------+-------------+------+------+------+------+----| + * | \ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | / | + * |------------+------+------+------+------+------|------+------+------+------+------+----| + * | | | | | | | | + | = | | | | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+----| + * | | | ESC |CTRL-ALT-DEL|TASK| | | | | | '|' | ` | | + * `---------------------------------------------------------------------------------------' + */ + [1] = LAYOUT_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_SLSH, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_EQL, _______, _______, _______, + _______, KC_ESC, CALTDEL, TSKMGR, _______, _______, _______, _______, _______, KC_NUBS, KC_GRV, _______ + ), + + /* [2] + * ,---------------------------------------------------------------------------------------. + * |------------+------+------+------+------+------+------+------+------+------+------+---| + * | | | | UP | | | | _ | | [ | ] | | + * |------------+------+------+------+------+-------------+------+------+------+------+---| + * | | | LEFT | DOWN | RIGHT | | | - | | [ | ] | | + * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| + * |RESET | | | | | | | | | | | | + * `---------------------------------------------------------------------------------------' + */ + [2] = LAYOUT_grid( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [3] = LAYOUT_grid( + _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, + 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk b/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk new file mode 100644 index 0000000000..69de2e4c5a --- /dev/null +++ b/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/checkerboards/quark_plus/quark_plus.c b/keyboards/checkerboards/quark_plus/quark_plus.c new file mode 100644 index 0000000000..036d3a96c5 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/quark_plus.c @@ -0,0 +1,35 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#include "quark_plus.h" + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_kb(index, clockwise)) { return false; } + if (index == 1) { /* left encoder*/ + if (clockwise){ + tap_code(KC_WH_U); + } else { + tap_code(KC_WH_D); + } + } else if (index == 0) { /* right encoder */ + if (clockwise){ + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + return true; +} diff --git a/keyboards/checkerboards/quark_plus/quark_plus.h b/keyboards/checkerboards/quark_plus/quark_plus.h new file mode 100644 index 0000000000..4152acbe50 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/quark_plus.h @@ -0,0 +1,82 @@ +/* Copyright 2022 Nathan Spears + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_grid( \ + k00, k10, k11, k01, k02, k12, k13, k03, k04, k14, k15, k05, \ + k20, k30, k31, k21, k22, k32, k33, k23, k24, k34, k35, k25, \ + k40, k50, k51, k41, k42, k52, k53, k43, k44, k54, k55, k45, \ + k60, k70, k71, k61, k62, k72, k73, k63, k64, k74, k75, k65 \ +) { \ + { k00, k01, k02, k03, k04, k05 }, \ + { k10, k11, k12, k13, k14, k15 }, \ + { k20, k21, k22, k23, k24, k25 }, \ + { k30, k31, k32, k33, k34, k35 }, \ + { k40, k41, k42, k43, k44, k45 }, \ + { k50, k51, k52, k53, k54, k55 }, \ + { k60, k61, k62, k63, k64, k65 }, \ + { k70, k71, k72, k73, k74, k75 } \ +} +#define LAYOUT_2u( \ + k00, k10, k11, k01, k02, k12, k13, k03, k04, k14, k15, k05, \ + k20, k30, k31, k21, k22, k32, k33, k23, k24, k34, k35, k25, \ + k40, k50, k51, k41, k42, k52, k53, k43, k44, k54, k55, k45, \ + k60, k70, k71, k61, k62, k73, k63, k64, k74, k75, k65 \ +) { \ + { k00, k01, k02, k03, k04, k05 }, \ + { k10, k11, k12, k13, k14, k15 }, \ + { k20, k21, k22, k23, k24, k25 }, \ + { k30, k31, k32, k33, k34, k35 }, \ + { k40, k41, k42, k43, k44, k45 }, \ + { k50, k51, k52, k53, k54, k55 }, \ + { k60, k61, k62, XXX, k64, k65 }, \ + { k70, k71, XXX, k73, k74, k75 } \ +} +#define LAYOUT_2x225u( \ + k00, k10, k11, k01, k02, k12, k13, k03, k04, k14, k15, k05, \ + k20, k30, k31, k21, k22, k32, k33, k23, k24, k34, k35, k25, \ + k40, k50, k51, k41, k42, k52, k53, k43, k44, k54, k55, k45, \ + k60, k70, k61, k62, k63, k64, k75, k65 \ +) { \ + { k00, k01, k02, k03, k04, k05 }, \ + { k10, k11, k12, k13, k14, k15 }, \ + { k20, k21, k22, k23, k24, k25 }, \ + { k30, k31, k32, k33, k34, k35 }, \ + { k40, k41, k42, k43, k44, k45 }, \ + { k50, k51, k52, k53, k54, k55 }, \ + { k60, k61, k62, k63, k64, k65 }, \ + { k70, XXX, XXX, XXX, XXX, k75 } \ +} +#define LAYOUT_2x3u( \ + k00, k10, k11, k01, k02, k12, k13, k03, k04, k14, k15, k05, \ + k20, k30, k31, k21, k22, k32, k33, k23, k24, k34, k35, k25, \ + k40, k50, k51, k41, k42, k52, k53, k43, k44, k54, k55, k45, \ + k60, k70, k71, k62, k63, k74, k75, k65 \ +) { \ + { k00, k01, k02, k03, k04, k05 }, \ + { k10, k11, k12, k13, k14, k15 }, \ + { k20, k21, k22, k23, k24, k25 }, \ + { k30, k31, k32, k33, k34, k35 }, \ + { k40, k41, k42, k43, k44, k45 }, \ + { k50, k51, k52, k53, k54, k55 }, \ + { k60, XXX, k62, k63, XXX, k65 }, \ + { k70, k71, XXX, XXX, k74, k75 } \ +} diff --git a/keyboards/checkerboards/quark_plus/readme.md b/keyboards/checkerboards/quark_plus/readme.md new file mode 100644 index 0000000000..6e4ff5f65f --- /dev/null +++ b/keyboards/checkerboards/quark_plus/readme.md @@ -0,0 +1,17 @@ +# Quark_Plus + +![Quark_Plus](https://i.imgur.com/4TI6BA0h.png) + +The Quark Plus is a premium Quark for those that want more features of the original. It features support for 4 rotary encoders (it is recommended to use 1 per left and right side), LED backlighting, RGB underglow, JST connector, and compatibility for earlier revisions of your favorite ortholinear keyboard. + +* Keyboard Maintainer: [Nasp](https://github.com/npspears) +* Hardware Supported: Quark_Plus +* Hardware Availability: https://www.checkerboards.xyz + +Make example for this keyboard (after setting up your build environment): + + make checkerboards/quark_plus:default + +To enter the bootloader, press the hardware button on the back of the PCB just to the left of the USB connector. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/checkerboards/quark_plus/rules.mk b/keyboards/checkerboards/quark_plus/rules.mk new file mode 100644 index 0000000000..8ffb43e252 --- /dev/null +++ b/keyboards/checkerboards/quark_plus/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +BACKLIGHT_DRIVER = pwm # Valid driver values are pwm, software, custom or no +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Enable rotary encoder From de10757f057d31a148d0b881535d875ff4af5c9c Mon Sep 17 00:00:00 2001 From: Andrew Garver Date: Sun, 6 Mar 2022 20:27:08 -0700 Subject: [PATCH 010/699] [Keyboard] fourier via keymap (#16335) --- keyboards/keebio/fourier/keymaps/via/keymap.c | 69 +++++++++++++++++++ keyboards/keebio/fourier/keymaps/via/rules.mk | 2 + 2 files changed, 71 insertions(+) create mode 100644 keyboards/keebio/fourier/keymaps/via/keymap.c create mode 100644 keyboards/keebio/fourier/keymaps/via/rules.mk diff --git a/keyboards/keebio/fourier/keymaps/via/keymap.c b/keyboards/keebio/fourier/keymaps/via/keymap.c new file mode 100644 index 0000000000..c16ff08d06 --- /dev/null +++ b/keyboards/keebio/fourier/keymaps/via/keymap.c @@ -0,0 +1,69 @@ +/* +Copyright 2022 Andrew Garver + +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 . +*/ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. +enum custom_layers { + _BASE, + _FN1, + _FN2, + _FN3, +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, +}; + +#define KC_FN1 MO(_FN1) +#define KC_FN2 MO(_FN2) +#define SPFN1 LT(_FN1, KC_SPACE) +#define BSFN2 LT(_FN2, KC_BSPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, 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_LCTL, KC_LALT, KC_LGUI, KC_FN1, SPFN1, BSFN2, KC_RGUI, KC_RALT, KC_FN2, KC_RCTL + ), + + [_FN1] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, + RESET, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, + RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_UP, _______, + RGB_TOG, _______, _______, _______, _______, KC_DEL, KC_0, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_FN2] = LAYOUT( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, + _______, _______, _______, KC_INS, KC_PGUP, KC_HOME, _______, _______, _______, _______, KC_COLN, _______, + _______, _______, _______, KC_DEL, KC_PGDN, KC_END, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______ + ), + + [_FN3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +}; diff --git a/keyboards/keebio/fourier/keymaps/via/rules.mk b/keyboards/keebio/fourier/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/keebio/fourier/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From 5de86a05c31482b5c770888e33c98d933c42b34c Mon Sep 17 00:00:00 2001 From: Takuya Urakawa Date: Mon, 7 Mar 2022 12:27:41 +0900 Subject: [PATCH 011/699] [Keyboard] Add Lain keyboard (#16345) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/dm9records/lain/config.h | 47 ++++++++++ keyboards/dm9records/lain/info.json | 60 +++++++++++++ .../dm9records/lain/keymaps/default/keymap.c | 79 ++++++++++++++++ .../dm9records/lain/keymaps/default/readme.md | 5 ++ .../dm9records/lain/keymaps/via/keymap.c | 90 +++++++++++++++++++ .../dm9records/lain/keymaps/via/readme.md | 8 ++ .../dm9records/lain/keymaps/via/rules.mk | 1 + keyboards/dm9records/lain/lain.c | 49 ++++++++++ keyboards/dm9records/lain/lain.h | 41 +++++++++ keyboards/dm9records/lain/readme.md | 32 +++++++ keyboards/dm9records/lain/rules.mk | 18 ++++ 11 files changed, 430 insertions(+) create mode 100644 keyboards/dm9records/lain/config.h create mode 100644 keyboards/dm9records/lain/info.json create mode 100644 keyboards/dm9records/lain/keymaps/default/keymap.c create mode 100644 keyboards/dm9records/lain/keymaps/default/readme.md create mode 100644 keyboards/dm9records/lain/keymaps/via/keymap.c create mode 100644 keyboards/dm9records/lain/keymaps/via/readme.md create mode 100644 keyboards/dm9records/lain/keymaps/via/rules.mk create mode 100644 keyboards/dm9records/lain/lain.c create mode 100644 keyboards/dm9records/lain/lain.h create mode 100644 keyboards/dm9records/lain/readme.md create mode 100644 keyboards/dm9records/lain/rules.mk diff --git a/keyboards/dm9records/lain/config.h b/keyboards/dm9records/lain/config.h new file mode 100644 index 0000000000..8bccf4bbb5 --- /dev/null +++ b/keyboards/dm9records/lain/config.h @@ -0,0 +1,47 @@ +// Copyright 2022 Takuya Urakawa @hsgw (dm9records.com, 5z6p.com) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x04D8 +#define PRODUCT_ID 0xE8F4 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Dm9Records +#define PRODUCT lain + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 13 + +/* + * Keyboard Matrix Assignments + */ +#define MATRIX_ROW_PINS \ + { C6, D7, D6, D4 } +#define MATRIX_COL_PINS \ + { C7, F7, F6, F5, F4, F1, F0, B3, B2, B1, D2, D3, D5 } + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* LED Settings */ +#define LED_NUM 3 +#define LED_PINS \ + { B6, B5, B4 } + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +#define DYNAMIC_KEYMAP_LAYER_COUNT 6 diff --git a/keyboards/dm9records/lain/info.json b/keyboards/dm9records/lain/info.json new file mode 100644 index 0000000000..57e28d28dd --- /dev/null +++ b/keyboards/dm9records/lain/info.json @@ -0,0 +1,60 @@ +{ + "keyboard_name": "lain", + "url": "https://5z6p.com/lain", + "maintainer": "hsgw", + "layouts": { + "LAYOUT": { + "layout": [ + { "x": 0, "y": 0 }, + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 5, "y": 0 }, + { "x": 6, "y": 0 }, + { "x": 8.5, "y": 0 }, + { "x": 9.5, "y": 0 }, + { "x": 10.5, "y": 0 }, + { "x": 11.5, "y": 0 }, + { "x": 12.5, "y": 0 }, + { "x": 13.5, "y": 0, "w": 1.5 }, + { "x": 0.25, "y": 1 }, + { "x": 1.25, "y": 1 }, + { "x": 2.25, "y": 1 }, + { "x": 3.25, "y": 1 }, + { "x": 4.25, "y": 1 }, + { "x": 5.25, "y": 1 }, + { "x": 6.25, "y": 1 }, + { "x": 8.75, "y": 1 }, + { "x": 9.75, "y": 1 }, + { "x": 10.75, "y": 1 }, + { "x": 11.75, "y": 1 }, + { "x": 12.75, "y": 1 }, + { "x": 13.75, "y": 1 }, + { "x": 0.5, "y": 2, "w": 1.25 }, + { "x": 1.75, "y": 2 }, + { "x": 2.75, "y": 2 }, + { "x": 3.75, "y": 2 }, + { "x": 4.75, "y": 2 }, + { "x": 5.75, "y": 2 }, + { "x": 8.25, "y": 2 }, + { "x": 9.25, "y": 2 }, + { "x": 10.25, "y": 2 }, + { "x": 11.25, "y": 2 }, + { "x": 12.25, "y": 2 }, + { "x": 13.25, "y": 2, "w": 1.25 }, + { "x": 1, "y": 3, "w": 1.75 }, + { "x": 2.75, "y": 3, "w": 1.25 }, + { "x": 4, "y": 3 }, + { "x": 5, "y": 3, "w": 1.25 }, + { "x": 6.25, "y": 3 }, + { "x": 7.75, "y": 3 }, + { "x": 8.75, "y": 3, "w": 1.25 }, + { "x": 10, "y": 3 }, + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 }, + { "x": 13, "y": 3, "w": 1.25 } + ] + } + } +} diff --git a/keyboards/dm9records/lain/keymaps/default/keymap.c b/keyboards/dm9records/lain/keymaps/default/keymap.c new file mode 100644 index 0000000000..655e3211b2 --- /dev/null +++ b/keyboards/dm9records/lain/keymaps/default/keymap.c @@ -0,0 +1,79 @@ +// Copyright 2022 Takuya Urakawa @hsgw (dm9records.com, 5z6p.com) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layers { BASE, NUM, FUNC, CONF }; +enum custom_keycodes { LED_EN = SAFE_RANGE }; + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_RBRC, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_INS, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LALT, KC_LGUI, MO(NUM), KC_SPC, KC_ENT, MO(FUNC), KC_RALT, KC_MENU, KC_RCTL, KC_RSFT + ), + [NUM] = LAYOUT( + KC_DEL, 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_CAPS, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), S(KC_MINS),S(KC_EQL), + _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, KC_BSLS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [FUNC] = LAYOUT( + KC_DEL, 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT,_______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [CONF] = LAYOUT( + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + LED_EN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LED_EN: + if (record->event.pressed) { + lain_enable_leds_toggle(); + } + return false; + default: + break; + } + return true; +} + +// clang-format on + +layer_state_t layer_state_set_user(layer_state_t state) { + layer_state_t computed = update_tri_layer_state(state, NUM, FUNC, CONF); + switch (get_highest_layer(computed)) { + case NUM: + lain_set_led(1, 1); + lain_set_led(2, 0); + break; + case FUNC: + lain_set_led(1, 0); + lain_set_led(2, 1); + break; + case CONF: + lain_set_led(1, 1); + lain_set_led(2, 1); + break; + default: + lain_set_led(1, 0); + lain_set_led(2, 0); + break; + } + return computed; +} + +bool led_update_user(led_t led_state) { + lain_set_led(0, led_state.caps_lock); + return false; +} diff --git a/keyboards/dm9records/lain/keymaps/default/readme.md b/keyboards/dm9records/lain/keymaps/default/readme.md new file mode 100644 index 0000000000..2f59c80ebc --- /dev/null +++ b/keyboards/dm9records/lain/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# The default keymap for lain + +## Leds setting +1: CAPS LOCK +2-3: Layor indicator diff --git a/keyboards/dm9records/lain/keymaps/via/keymap.c b/keyboards/dm9records/lain/keymaps/via/keymap.c new file mode 100644 index 0000000000..829ffb624f --- /dev/null +++ b/keyboards/dm9records/lain/keymaps/via/keymap.c @@ -0,0 +1,90 @@ +// Copyright 2022 Takuya Urakawa @hsgw (dm9records.com, 5z6p.com) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layers { BASE, NUM, FUNC, CONF, _04, _05 }; + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [BASE] = LAYOUT( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_RBRC, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_INS, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, KC_LALT, KC_LGUI, FN_MO13, KC_SPC, KC_ENT, FN_MO23, KC_RALT, KC_MENU, KC_RCTL, KC_RSFT + ), + [NUM] = LAYOUT( + KC_DEL, 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_CAPS, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), S(KC_0), S(KC_MINS),S(KC_EQL), + _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, KC_BSLS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [FUNC] = LAYOUT( + KC_DEL, 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT,_______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [CONF] = LAYOUT( + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + USER00, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), + [_04] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), + [_05] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ) +}; + +// clang-format on + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case USER00: + // via user keycode USER00 : toggle leds enable + if (record->event.pressed) { + lain_enable_leds_toggle(); + } + return false; + default: + break; + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case NUM: + lain_set_led(1, 1); + lain_set_led(2, 0); + break; + case FUNC: + lain_set_led(1, 0); + lain_set_led(2, 1); + break; + case CONF: + lain_set_led(1, 1); + lain_set_led(2, 1); + break; + default: + lain_set_led(1, 0); + lain_set_led(2, 0); + break; + } + return state; +} + +bool led_update_user(led_t led_state) { + lain_set_led(0, led_state.caps_lock); + return false; +} diff --git a/keyboards/dm9records/lain/keymaps/via/readme.md b/keyboards/dm9records/lain/keymaps/via/readme.md new file mode 100644 index 0000000000..efde27cb47 --- /dev/null +++ b/keyboards/dm9records/lain/keymaps/via/readme.md @@ -0,0 +1,8 @@ +# The via keymap for lain + +## Leds setting +1: CAPS LOCK +2-3: Layor indicator + +## Via user keycode +USER00 : toggle leds enable diff --git a/keyboards/dm9records/lain/keymaps/via/rules.mk b/keyboards/dm9records/lain/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/dm9records/lain/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/dm9records/lain/lain.c b/keyboards/dm9records/lain/lain.c new file mode 100644 index 0000000000..cb8354e5c2 --- /dev/null +++ b/keyboards/dm9records/lain/lain.c @@ -0,0 +1,49 @@ +// Copyright 2022 Takuya Urakawa @hsgw (dm9records.com, 5z6p.com) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "lain.h" + +keyboard_config_t lain_config; + +static const pin_t leds[LED_NUM] = LED_PINS; +bool led_states[LED_NUM] = {0}; + +void lain_eeconfig_update_kb(void) { eeconfig_update_kb(lain_config.raw); } + +void lain_set_led(uint8_t no, bool flag) { + led_states[no] = flag; + writePin(leds[no], lain_config.led_enabled ? flag : false); +} + +void lain_enable_leds(bool flag) { + lain_config.led_enabled = flag; + lain_eeconfig_update_kb(); + + for (int i = 0; i < LED_NUM; i++) { + writePin(leds[i], lain_config.led_enabled ? led_states[i] : false); + } +} + +void lain_enable_leds_toggle(void) { lain_enable_leds(!lain_config.led_enabled); } + +void led_init_ports(void) { + for (uint8_t i = 0; i < LED_NUM; i++) { + setPinOutput(leds[i]); + lain_set_led(leds[i], 0); + } +} + +void eeconfig_init_kb(void) { + // set default config + lain_config.led_enabled = true; + lain_eeconfig_update_kb(); + + eeconfig_init_user(); +} + +void keyboard_post_init_kb(void) { + // read stored config + lain_config.raw = eeconfig_read_kb(); + + keyboard_post_init_user(); +} diff --git a/keyboards/dm9records/lain/lain.h b/keyboards/dm9records/lain/lain.h new file mode 100644 index 0000000000..e449416e50 --- /dev/null +++ b/keyboards/dm9records/lain/lain.h @@ -0,0 +1,41 @@ +// Copyright 2022 Takuya Urakawa @hsgw (dm9records.com, 5z6p.com) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +typedef union { + uint32_t raw; + struct { + bool led_enabled : 1; + }; +} keyboard_config_t; + +extern keyboard_config_t lain_config; + +void lain_set_led(uint8_t no, bool flag); +void lain_enable_leds(bool flag); +void lain_enable_leds_toggle(void); + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +// clang-format off +#define LAYOUT( \ + k01,k02,k03,k04,k05,k06,k07, k08,k09,k10,k11,k12,k13, \ + k14,k15,k16,k17,k18,k19,k20, k21,k22,k23,k24,k25,k26, \ + k27,k28,k29,k30,k31,k32, k33,k34,k35,k36,k37,k38, \ + k39,k40,k41,k42,k43, k44,k45,k46,k47,k48,k49) \ + { \ + {k01, k02, k03,k04,k05,k06,k07, k08,k09,k10,k11,k12,k13}, \ + {k14, k15, k16,k17,k18,k19,k20, k21,k22,k23,k24,k25,k26}, \ + {k27, k28, k29,k30,k31,k32,KC_NO, k33,k34,k35,k36,k37,k38}, \ + {KC_NO,k39, k40,k41,k42,k43,KC_NO, k44,k45,k46,k47,k48,k49} \ + } +// clang-format on diff --git a/keyboards/dm9records/lain/readme.md b/keyboards/dm9records/lain/readme.md new file mode 100644 index 0000000000..6eb216af61 --- /dev/null +++ b/keyboards/dm9records/lain/readme.md @@ -0,0 +1,32 @@ +# lain + +![lain](https://i.imgur.com/V0mR1Bgh.jpg) + +Ergonomic 40% keyboard. + +serial exprement lain themed. +licensed under #lainttl (https://www.nbcuni.co.jp/rondorobe/anime/lain/ttl/) + +* Keyboard Maintainer: [Takuya Urakawa @hsgw](https://github.com/hsgw), https://5z6p.com +* Hardware Supported: onboard MCU. +* Hardware Availability: Group buy. (https://5z6p.com/products/lain/) + +Make example for this keyboard (after setting up your build environment): + + make dm9records/lain:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Note +### PCB revision + +If your pcb is not Rev.1, you should use the firmware in below repository. +https://github.com/hsgw/qmk_firmware/tree/lain/keyboards/dm9records/lain + +### Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/dm9records/lain/rules.mk b/keyboards/dm9records/lain/rules.mk new file mode 100644 index 0000000000..476cf49f27 --- /dev/null +++ b/keyboards/dm9records/lain/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From dcfa4712fb6a000079b5bea8d7cbfc8db91d7bcb Mon Sep 17 00:00:00 2001 From: Felix Jen Date: Sun, 6 Mar 2022 21:30:13 -0600 Subject: [PATCH 012/699] [Keyboard] Add Kyuu Hotswap (#16360) Co-authored-by: Drashna Jaelre --- keyboards/fjlabs/kyuu/config.h | 120 ++++++++++++++++++ keyboards/fjlabs/kyuu/info.json | 83 ++++++++++++ .../fjlabs/kyuu/keymaps/default/keymap.c | 39 ++++++ keyboards/fjlabs/kyuu/keymaps/via/keymap.c | 58 +++++++++ keyboards/fjlabs/kyuu/keymaps/via/rules.mk | 1 + keyboards/fjlabs/kyuu/kyuu.c | 14 ++ keyboards/fjlabs/kyuu/kyuu.h | 32 +++++ keyboards/fjlabs/kyuu/readme.md | 16 +++ keyboards/fjlabs/kyuu/rules.mk | 20 +++ 9 files changed, 383 insertions(+) create mode 100644 keyboards/fjlabs/kyuu/config.h create mode 100644 keyboards/fjlabs/kyuu/info.json create mode 100644 keyboards/fjlabs/kyuu/keymaps/default/keymap.c create mode 100644 keyboards/fjlabs/kyuu/keymaps/via/keymap.c create mode 100644 keyboards/fjlabs/kyuu/keymaps/via/rules.mk create mode 100644 keyboards/fjlabs/kyuu/kyuu.c create mode 100644 keyboards/fjlabs/kyuu/kyuu.h create mode 100644 keyboards/fjlabs/kyuu/readme.md create mode 100644 keyboards/fjlabs/kyuu/rules.mk diff --git a/keyboards/fjlabs/kyuu/config.h b/keyboards/fjlabs/kyuu/config.h new file mode 100644 index 0000000000..b73d6c8f85 --- /dev/null +++ b/keyboards/fjlabs/kyuu/config.h @@ -0,0 +1,120 @@ +/* +Copyright 2021 + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7074 // FJLabs +#define PRODUCT_ID 0x1012 // Kyuu Hotswap +#define DEVICE_VER 0x0001 // Version 1 +#define MANUFACTURER FJLabs +#define PRODUCT Kyuu Hotswap + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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) + * +*/ + +// Checked with Eagle Schematic +#define MATRIX_ROW_PINS { F4, F1, F7, F6, F5 } +#define MATRIX_COL_PINS { F0, B1, B2, B3, B7, D0, D1, D2, D3, D5, D7, B4, B5, B6, C6 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Define Badge RGB */ +#define RGB_DI_PIN C7 +#define RGBLED_NUM 16 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGB_VAL_STEP 12 +#define RGBLIGHT_DEFAULT_SPD 144 +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL +/* #define RGBLIGHT_LAYER_BLINK*/ + +/* Define less important options */ + +/* + * 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 + +/* + * 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 diff --git a/keyboards/fjlabs/kyuu/info.json b/keyboards/fjlabs/kyuu/info.json new file mode 100644 index 0000000000..2bb1ebe843 --- /dev/null +++ b/keyboards/fjlabs/kyuu/info.json @@ -0,0 +1,83 @@ +{ + "keyboard_name": "BKS65", + "url": "https://www.bolsakeyboardsupply.com", + "maintainer": "FJLabs", + "layouts": { + "LAYOUT_65_ansi_blocker_badge": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6, "y": 0}, + {"x": 7, "y": 0}, + {"x": 8, "y": 0}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 0, "y": 1, "w": 1.5}, + {"x": 1.5, "y": 1}, + {"x": 2.5, "y": 1}, + {"x": 3.5, "y": 1}, + {"x": 4.5, "y": 1}, + {"x": 5.5, "y": 1}, + {"x": 6.5, "y": 1}, + {"x": 7.5, "y": 1}, + {"x": 8.5, "y": 1}, + {"x": 9.5, "y": 1}, + {"x": 10.5, "y": 1}, + {"x": 11.5, "y": 1}, + {"x": 12.5, "y": 1}, + {"x": 13.5, "y": 1, "w": 1.5}, + {"x": 15, "y": 1}, + + {"x": 0, "y": 2, "w": 1.75}, + {"x": 1.75, "y": 2}, + {"x": 2.75, "y": 2}, + {"x": 3.75, "y": 2}, + {"x": 4.75, "y": 2}, + {"x": 5.75, "y": 2}, + {"x": 6.75, "y": 2}, + {"x": 7.75, "y": 2}, + {"x": 8.75, "y": 2}, + {"x": 9.75, "y": 2}, + {"x": 10.75, "y": 2}, + {"x": 11.75, "y": 2}, + {"x": 12.75, "y": 2, "w": 2.25}, + {"x": 15, "y": 2}, + + {"x": 0, "y": 3, "w": 1.25}, + {"x": 1.25, "y": 3}, + {"x": 2.25, "y": 3}, + {"x": 3.25, "y": 3}, + {"x": 4.25, "y": 3}, + {"x": 5.25, "y": 3}, + {"x": 6.25, "y": 3}, + {"x": 7.25, "y": 3}, + {"x": 8.25, "y": 3}, + {"x": 9.25, "y": 3}, + {"x": 10.25, "y": 3}, + {"x": 11.25, "y": 3}, + {"x": 12.25, "y": 3, "w": 1.75}, + {"x": 14, "y": 3}, + {"x": 15, "y": 3}, + + {"x": 0, "y": 4, "w": 1.25}, + {"x": 1.25, "y": 4, "w": 1.25}, + {"x": 2.5, "y": 4, "w": 1.25}, + {"x": 3.75, "y": 4, "w": 6.25}, + {"x": 10, "y": 4, "w": 1.25}, + {"x": 11.25, "y": 4, "w": 1.25}, + {"x": 13, "y": 4}, + {"x": 14, "y": 4}, + {"x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/fjlabs/kyuu/keymaps/default/keymap.c b/keyboards/fjlabs/kyuu/keymaps/default/keymap.c new file mode 100644 index 0000000000..2e671423b5 --- /dev/null +++ b/keyboards/fjlabs/kyuu/keymaps/default/keymap.c @@ -0,0 +1,39 @@ +/* +Copyright 2021 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_65_ansi_blocker_badge( + KC_GESC, 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_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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_65_ansi_blocker_badge( + KC_GESC, 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_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK + ) +}; diff --git a/keyboards/fjlabs/kyuu/keymaps/via/keymap.c b/keyboards/fjlabs/kyuu/keymaps/via/keymap.c new file mode 100644 index 0000000000..2a97513b38 --- /dev/null +++ b/keyboards/fjlabs/kyuu/keymaps/via/keymap.c @@ -0,0 +1,58 @@ +/* +Copyright 2021 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_65_ansi_blocker_badge( + KC_GESC, 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_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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_65_ansi_blocker_badge( + KC_GESC, 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_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK + ), + + [_LAYER2] = LAYOUT_65_ansi_blocker_badge( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [_LAYER3] = LAYOUT_65_ansi_blocker_badge( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; diff --git a/keyboards/fjlabs/kyuu/keymaps/via/rules.mk b/keyboards/fjlabs/kyuu/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/fjlabs/kyuu/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/fjlabs/kyuu/kyuu.c b/keyboards/fjlabs/kyuu/kyuu.c new file mode 100644 index 0000000000..9de177c600 --- /dev/null +++ b/keyboards/fjlabs/kyuu/kyuu.c @@ -0,0 +1,14 @@ +/* +Copyright 2021 +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 . +*/ +#include "kyuu.h" diff --git a/keyboards/fjlabs/kyuu/kyuu.h b/keyboards/fjlabs/kyuu/kyuu.h new file mode 100644 index 0000000000..865708eaf5 --- /dev/null +++ b/keyboards/fjlabs/kyuu/kyuu.h @@ -0,0 +1,32 @@ +/* +Copyright 2021 +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 . +*/ + +#pragma once + +#include "quantum.h" + +/* BKS65 Keymap Definitions */ +#define LAYOUT_65_ansi_blocker_badge( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K45, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/fjlabs/kyuu/readme.md b/keyboards/fjlabs/kyuu/readme.md new file mode 100644 index 0000000000..775868c5d1 --- /dev/null +++ b/keyboards/fjlabs/kyuu/readme.md @@ -0,0 +1,16 @@ +# PaperSky Studio Kyuu Hotswap + +The following is the QMK Firmware for the Kyuu compatible Hotswap PCB + +--- + +* Keyboard Maintainer: FJLabs +* Hardware Supported: Kyuu Hotswap PCB + +Make example for this keyboard (after setting up your build environment): + + make fjlabs/kyuu:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +You can enter the bootloader by pressing the two reset pads on the back of the PCB with tweezers. diff --git a/keyboards/fjlabs/kyuu/rules.mk b/keyboards/fjlabs/kyuu/rules.mk new file mode 100644 index 0000000000..3bbcce8b85 --- /dev/null +++ b/keyboards/fjlabs/kyuu/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency +F_CPU = 8000000 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow \ No newline at end of file From 0e08fad5c5dfd8dd2522a9ed43058d993d35fdf4 Mon Sep 17 00:00:00 2001 From: kopibeng <52724926+kopibeng@users.noreply.github.com> Date: Mon, 7 Mar 2022 11:36:22 +0800 Subject: [PATCH 013/699] [Keyboard] Add support for Typ65+ (#16399) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Joel Challis --- keyboards/kopibeng/typ65/config.h | 59 +++++++++++++ keyboards/kopibeng/typ65/info.json | 88 +++++++++++++++++++ .../kopibeng/typ65/keymaps/default/keymap.c | 57 ++++++++++++ keyboards/kopibeng/typ65/keymaps/via/keymap.c | 57 ++++++++++++ keyboards/kopibeng/typ65/keymaps/via/rules.mk | 2 + keyboards/kopibeng/typ65/readme.md | 21 +++++ keyboards/kopibeng/typ65/rules.mk | 19 ++++ keyboards/kopibeng/typ65/typ65.c | 51 +++++++++++ keyboards/kopibeng/typ65/typ65.h | 54 ++++++++++++ 9 files changed, 408 insertions(+) create mode 100644 keyboards/kopibeng/typ65/config.h create mode 100644 keyboards/kopibeng/typ65/info.json create mode 100644 keyboards/kopibeng/typ65/keymaps/default/keymap.c create mode 100644 keyboards/kopibeng/typ65/keymaps/via/keymap.c create mode 100644 keyboards/kopibeng/typ65/keymaps/via/rules.mk create mode 100644 keyboards/kopibeng/typ65/readme.md create mode 100644 keyboards/kopibeng/typ65/rules.mk create mode 100644 keyboards/kopibeng/typ65/typ65.c create mode 100644 keyboards/kopibeng/typ65/typ65.h diff --git a/keyboards/kopibeng/typ65/config.h b/keyboards/kopibeng/typ65/config.h new file mode 100644 index 0000000000..9b96483b6a --- /dev/null +++ b/keyboards/kopibeng/typ65/config.h @@ -0,0 +1,59 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B50 // 'KP' kopibeng +#define PRODUCT_ID 0x065E +#define DEVICE_VER 0x0001 +#define MANUFACTURER kopibeng +#define PRODUCT Typ65+ + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { D0, D1, D2, F6, B0 } +#define MATRIX_COL_PINS { D3, D5, D4, D6, D7, B4, B5, B6, C6, C7, F7, F5, F4, F1, F0, E6 } + +#define LED_CAPS_LOCK_PIN B1 +#define INDICATOR_0 B2 +#define INDICATOR_1 B7 +#define INDICATOR_2 B3 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 diff --git a/keyboards/kopibeng/typ65/info.json b/keyboards/kopibeng/typ65/info.json new file mode 100644 index 0000000000..ce3bfbee39 --- /dev/null +++ b/keyboards/kopibeng/typ65/info.json @@ -0,0 +1,88 @@ +{ + "keyboard_name": "Typ65+", + "maintainer": "kopibeng", + "url": "https://www.axiomstudios.shop/", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "K01", "x": 1.25, "y": 0 }, + { "label": "K02", "x": 2.25, "y": 0 }, + { "label": "K03", "x": 3.25, "y": 0 }, + { "label": "K04", "x": 4.25, "y": 0 }, + { "label": "K05", "x": 5.25, "y": 0 }, + { "label": "K06", "x": 6.25, "y": 0 }, + { "label": "K07", "x": 7.25, "y": 0 }, + { "label": "K08", "x": 8.25, "y": 0 }, + { "label": "K09", "x": 9.25, "y": 0 }, + { "label": "K0A", "x": 10.25, "y": 0 }, + { "label": "K0B", "x": 11.25, "y": 0 }, + { "label": "K0C", "x": 12.25, "y": 0 }, + { "label": "K0D", "x": 13.25, "y": 0 }, + { "label": "K1E", "x": 14.25, "y": 0 }, + { "label": "K0E", "x": 15.25, "y": 0 }, + { "label": "K0F", "x": 16.25, "y": 0 }, + + { "label": "K00", "x": 0, "y": 1 }, + { "label": "K11", "w": 1.5, "x": 1.25, "y": 1 }, + { "label": "K12", "x": 2.75, "y": 1 }, + { "label": "K13", "x": 3.75, "y": 1 }, + { "label": "K14", "x": 4.75, "y": 1 }, + { "label": "K15", "x": 5.75, "y": 1 }, + { "label": "K16", "x": 6.75, "y": 1 }, + { "label": "K17", "x": 7.75, "y": 1 }, + { "label": "K18", "x": 8.75, "y": 1 }, + { "label": "K19", "x": 9.75, "y": 1 }, + { "label": "K1A", "x": 10.75, "y": 1 }, + { "label": "K1B", "x": 11.75, "y": 1 }, + { "label": "K1C", "x": 12.75, "y": 1 }, + { "label": "K1D", "x": 13.75, "y": 1 }, + { "label": "K2E", "w": 1.5, "x": 14.75, "y": 1 }, + { "label": "K1F", "x": 16.25, "y": 1 }, + + { "label": "K10", "x": 0, "y": 2 }, + { "label": "K21", "w": 1.75, "x": 1.25, "y": 2 }, + { "label": "K22", "x": 3, "y": 2 }, + { "label": "K23", "x": 4, "y": 2 }, + { "label": "K24", "x": 5, "y": 2 }, + { "label": "K25", "x": 6, "y": 2 }, + { "label": "K26", "x": 7, "y": 2 }, + { "label": "K27", "x": 8, "y": 2 }, + { "label": "K28", "x": 9, "y": 2 }, + { "label": "K29", "x": 10, "y": 2 }, + { "label": "K2A", "x": 11, "y": 2 }, + { "label": "K2B", "x": 12, "y": 2 }, + { "label": "K2C", "x": 13, "y": 2 }, + { "label": "K2D", "w": 2.25, "x": 14, "y": 2 }, + { "label": "K2F", "x": 16.25, "y": 2 }, + + { "label": "K20", "x": 0, "y": 3 }, + { "label": "K31", "w": 1.25, "x": 1.25, "y": 3 }, + { "label": "K32", "x": 2.5, "y": 3 }, + { "label": "K33", "x": 3.5, "y": 3 }, + { "label": "K34", "x": 4.5, "y": 3 }, + { "label": "K35", "x": 5.5, "y": 3 }, + { "label": "K36", "x": 6.5, "y": 3 }, + { "label": "K37", "x": 7.5, "y": 3 }, + { "label": "K38", "x": 8.5, "y": 3 }, + { "label": "K39", "x": 9.5, "y": 3 }, + { "label": "K3A", "x": 10.5, "y": 3 }, + { "label": "K3B", "x": 11.5, "y": 3 }, + { "label": "K3C", "x": 12.5, "y": 3 }, + { "label": "K3D", "w": 1.75, "x": 13.5, "y": 3 }, + { "label": "K3E", "x": 15.25, "y": 3 }, + { "label": "K3F", "x": 16.25, "y": 3 }, + + { "label": "K30", "x": 0, "y": 4 }, + { "label": "K41", "w": 1.25, "x": 1.25, "y": 4 }, + { "label": "K42", "w": 1.25, "x": 2.5, "y": 4 }, + { "label": "K43", "w": 1.25, "x": 3.75, "y": 4 }, + { "label": "K47", "w": 6.25, "x": 5, "y": 4 }, + { "label": "K4B", "w": 1.25, "x": 11.25, "y": 4 }, + { "label": "K4C", "w": 1.25, "x": 12.5, "y": 4 }, + { "label": "K4D", "x": 14.25, "y": 4 }, + { "label": "K4E", "x": 15.25, "y": 4 }, + { "label": "K4F", "x": 16.25, "y": 4 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/kopibeng/typ65/keymaps/default/keymap.c b/keyboards/kopibeng/typ65/keymaps/default/keymap.c new file mode 100644 index 0000000000..63628ade61 --- /dev/null +++ b/keyboards/kopibeng/typ65/keymaps/default/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_HOME, + KC_TRNS, 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, KC_PGUP, + KC_TRNS, 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_PGDN, + KC_TRNS, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_TRNS, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, + 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, 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 + ), + + // Fn2 Layer + [2] = LAYOUT_all( + 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, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + // Fn3 Layer + [3] = LAYOUT_all( + 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, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + diff --git a/keyboards/kopibeng/typ65/keymaps/via/keymap.c b/keyboards/kopibeng/typ65/keymaps/via/keymap.c new file mode 100644 index 0000000000..63628ade61 --- /dev/null +++ b/keyboards/kopibeng/typ65/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_HOME, + KC_TRNS, 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, KC_PGUP, + KC_TRNS, 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_PGDN, + KC_TRNS, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_TRNS, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, + 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, 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 + ), + + // Fn2 Layer + [2] = LAYOUT_all( + 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, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + // Fn3 Layer + [3] = LAYOUT_all( + 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, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + diff --git a/keyboards/kopibeng/typ65/keymaps/via/rules.mk b/keyboards/kopibeng/typ65/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/kopibeng/typ65/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/kopibeng/typ65/readme.md b/keyboards/kopibeng/typ65/readme.md new file mode 100644 index 0000000000..af8106891d --- /dev/null +++ b/keyboards/kopibeng/typ65/readme.md @@ -0,0 +1,21 @@ +# Typ65+ + +![Typ65+](https://i.imgur.com/WCTwfdF.jpg) + +A 65% solderable or hotswap PCB with left side macro column, support for VIA and layer indicator LEDs. + +* Keyboard Maintainer: kopibeng +* Hardware Supported: A 65% keyboard with ATMEGA32U4 +* Hardware Availability: https://www.axiomstudios.shop/ + +Make example for this keyboard (after setting up your build environment): + + make kopibeng/typ65:via + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +* Physical reset button: Press the RESET switch on top side of PCB. +* Bootmagic reset: Unplug keyboard, hold down ESC key and plug in the keyboard. +* Keycode reset: Press the RESET keycode (default: MO(1) + HOME keys in default layout). diff --git a/keyboards/kopibeng/typ65/rules.mk b/keyboards/kopibeng/typ65/rules.mk new file mode 100644 index 0000000000..6089f643c4 --- /dev/null +++ b/keyboards/kopibeng/typ65/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = no # Enable Encoder \ No newline at end of file diff --git a/keyboards/kopibeng/typ65/typ65.c b/keyboards/kopibeng/typ65/typ65.c new file mode 100644 index 0000000000..152b2e7737 --- /dev/null +++ b/keyboards/kopibeng/typ65/typ65.c @@ -0,0 +1,51 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include "typ65.h" + +void keyboard_pre_init_kb (void) { + setPinOutput(INDICATOR_0); + setPinOutput(INDICATOR_1); + setPinOutput(INDICATOR_2); + + keyboard_pre_init_user(); +} + +__attribute__((weak)) layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case 1: + writePinHigh(INDICATOR_0); + writePinLow(INDICATOR_1); + writePinLow(INDICATOR_2); + break; + case 2: + writePinLow(INDICATOR_0); + writePinHigh(INDICATOR_1); + writePinLow(INDICATOR_2); + break; + case 3: + writePinLow(INDICATOR_0); + writePinLow(INDICATOR_1); + writePinHigh(INDICATOR_2); + break; + default: + writePinHigh(INDICATOR_0); + writePinHigh(INDICATOR_1); + writePinHigh(INDICATOR_2); + break; + } + return state; +} \ No newline at end of file diff --git a/keyboards/kopibeng/typ65/typ65.h b/keyboards/kopibeng/typ65/typ65.h new file mode 100644 index 0000000000..189139df3b --- /dev/null +++ b/keyboards/kopibeng/typ65/typ65.h @@ -0,0 +1,54 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +/* + * + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │1E │0E │0F │ │0E │ Full Backspace + * ┌───┐ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │00 │ │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │2E │1F │ │2E │ + * 2.25u ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌─┴─┐ │ ISO + * LShift │10 │ │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │2F │ │2D │ │ + * ┌────────┐ ├───┤ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴───┘ + * │31 │ │20 │ │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │3F │ + * └────────┘ ├───┤ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │30 │ │41 │42 │43 │47 │4B │4C │ │4D │4E │4F │ + * └───┘ └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │41 │42 │43 │47 │4C │ 7u Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ + * + */ + +#define LAYOUT_all( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K1E, K0E, K0F, \ + K00, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2E, K1F, \ + K10, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \ + K20, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F, \ + K30, K41, K42, K43, K47, K4B, K4C, K4D, K4E, K4F \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F}, \ + {K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F}, \ + {K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F}, \ + {K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F}, \ + {___, K41, K42, K43, ___, ___, ___, K47, ___, ___, ___, K4B, K4C, K4D, K4E, K4F} \ +} From d8971d707eddea5d16ef5fa3dad807b494aed39f Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Sun, 6 Mar 2022 20:55:08 -0800 Subject: [PATCH 014/699] Format code according to conventions (#16554) --- keyboards/checkerboards/quark_plus/keymaps/via/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk b/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk index 69de2e4c5a..1e5b99807c 100644 --- a/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk +++ b/keyboards/checkerboards/quark_plus/keymaps/via/rules.mk @@ -1 +1 @@ -VIA_ENABLE = yes +VIA_ENABLE = yes From ff6c70415c536e6435023627197550889ffa1501 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sun, 6 Mar 2022 22:12:17 -0800 Subject: [PATCH 015/699] [Keymap] Drashna Mouse keys and oled updates (#16556) --- .../charybdis/3x5/keymaps/drashna/keymap.c | 4 +- .../charybdis/3x5/keymaps/drashna/mcuconf.h | 14 +- .../charybdis/3x5/keymaps/drashna/rules.mk | 7 +- .../charybdis/4x6/keymaps/drashna/chconf.h | 38 +++ .../charybdis/4x6/keymaps/drashna/config.h | 91 ++++++ .../charybdis/4x6/keymaps/drashna/halconf.h | 26 ++ .../charybdis/4x6/keymaps/drashna/keymap.c | 132 ++++++++ .../charybdis/4x6/keymaps/drashna/mcuconf.h | 44 +++ .../charybdis/4x6/keymaps/drashna/rules.mk | 24 ++ .../tractyl_manuform/5x6_right/f411/mcuconf.h | 14 +- .../tractyl_manuform/5x6_right/info.json | 1 - .../5x6_right/keymaps/drashna/config.h | 5 + .../5x6_right/keymaps/drashna/keymap.c | 84 +++-- .../5x6_right/keymaps/drashna/rules.mk | 1 + keyboards/handwired/tractyl_manuform/config.h | 1 - .../handwired/tractyl_manuform/info.json | 4 + .../tractyl_manuform/tractyl_manuform.c | 4 +- .../tractyl_manuform/tractyl_manuform.h | 4 +- .../splitkb/kyria/keymaps/drashna/rules.mk | 1 + layouts/community/ortho_4x12/drashna/rules.mk | 24 +- layouts/community/ortho_5x12/drashna/rules.mk | 10 +- .../community/split_3x6_3/drashna/keymap.c | 4 +- users/drashna/callbacks.c | 20 +- users/drashna/callbacks.h | 3 + users/drashna/config.h | 2 + users/drashna/keyrecords/caps_word.c | 164 ++++++---- users/drashna/keyrecords/caps_word.h | 77 +++++ users/drashna/keyrecords/process_records.c | 26 +- users/drashna/keyrecords/process_records.h | 4 +- users/drashna/keyrecords/unicode.c | 4 +- users/drashna/oled/oled_stuff.c | 290 ++++-------------- users/drashna/oled/sh110x.c | 86 ++---- users/drashna/pointing/pointing.c | 2 +- users/drashna/post_config.h | 5 +- users/drashna/rgb/rgb_stuff.c | 4 +- users/drashna/rules.mk | 5 +- users/drashna/split/transport_sync.c | 12 +- 37 files changed, 776 insertions(+), 465 deletions(-) create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/chconf.h create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/halconf.h create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h create mode 100644 keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk create mode 100644 keyboards/handwired/tractyl_manuform/info.json diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c index aba169dbb5..1af9868855 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/keymap.c @@ -58,9 +58,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_MOUSE] = LAYOUT_charybdis_3x5( - _______, _______, _______, S_D_MOD, DPI_MOD, KC_WH_U, _______, _______, _______, _______, + _______, _______, _______, _______, _______, KC_WH_U, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, - _______, _______, _______, S_D_RMOD,DPI_RMOD, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, + _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______, SNIPING, _______, _______, _______ ), [_LOWER] = LAYOUT_charybdis_3x5_wrapper( diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h index d868eae48e..05b5776ac3 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/mcuconf.h @@ -21,8 +21,8 @@ #undef STM32_I2C_USE_I2C1 #define STM32_I2C_USE_I2C1 TRUE -#undef STM32_I2C_I2C1_RX_DMA_STREAM -#define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +// #undef STM32_I2C_I2C1_RX_DMA_STREAM +// #define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) #undef STM32_I2C_I2C1_TX_DMA_STREAM #define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1) @@ -35,19 +35,9 @@ #undef STM32_SPI_USE_SPI1 #define STM32_SPI_USE_SPI1 TRUE -#undef STM32_SPI_SPI1_RX_DMA_STREAM -#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0) -#undef STM32_SPI_SPI1_TX_DMA_STREAM -#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) - #undef STM32_SERIAL_USE_USART2 #define STM32_SERIAL_USE_USART2 TRUE -#undef STM32_UART_USART2_RX_DMA_STREAM -#define STM32_UART_USART2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) -#undef STM32_UART_USART2_TX_DMA_STREAM -#define STM32_UART_USART2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) - #undef STM32_GPT_USE_TIM4 #define STM32_GPT_USE_TIM4 TRUE diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk index d23bf99aac..0cff2a7a2e 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/drashna/rules.mk @@ -2,7 +2,10 @@ MCU = STM32F411 # Bootloader selection -BOOTLOADER = stm32-dfu +# BOOTLOADER = stm32-dfu +BOOTLOADER := tinyuf2 + +LTO_ENABLE := no BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite KEYBOARD_SHARED_EP = yes @@ -20,3 +23,5 @@ NKRO_ENABLE = yes CONSOLE_ENABLE = yes AUTOCORRECTION_ENABLE = yes + +DEBOUNCE_TYPE = asym_eager_defer_pk diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/chconf.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/chconf.h new file mode 100644 index 0000000000..8b55eaeef0 --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/chconf.h @@ -0,0 +1,38 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/blackpill_f411/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE + +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE + +#define CH_CFG_FACTORY_SEMAPHORES TRUE + +#define CH_CFG_FACTORY_MAILBOXES TRUE + +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE + +#define CH_CFG_FACTORY_PIPES TRUE + +#include_next diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h new file mode 100644 index 0000000000..f384318dc4 --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/config.h @@ -0,0 +1,91 @@ +/** + * Copyright 2021 Charly Delay (@0xcharly) + * + * 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 . + */ +#pragma once + +#undef MATRIX_COL_PINS +#define MATRIX_COL_PINS \ + { B0, B1, B10, B3, B4, B5 } +#undef MATRIX_COL_PINS_RIGHT +#define MATRIX_COL_PINS_RIGHT \ + { B0, B1, B10, B3, B4, B5 } + +#undef MATRIX_ROW_PINS +#define MATRIX_ROW_PINS \ + { B15, A2, B8, A8, B9 } +#undef MATRIX_ROW_PINS_RIGHT +#define MATRIX_ROW_PINS_RIGHT \ + { B15, A2, B8, A8, B9 } + +#define DIODE_DIRECTION ROW2COL +#define SPLIT_HAND_PIN A3 + +#undef RGB_DI_PIN +#define RGB_DI_PIN A1 +#define WS2812_EXTERNAL_PULLUP +#define WS2812_PWM_DRIVER PWMD2 +#define WS2812_PWM_CHANNEL 2 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_EXTERNAL_PULLUP +#define WS2812_DMA_STREAM STM32_DMA1_STREAM1 +#define WS2812_DMA_CHANNEL 3 +#define WS2812_PWM_TARGET_PERIOD 800000 + +#define DEBUG_LED_PIN C13 + +#undef SOFT_SERIAL_PIN +// #define SERIAL_USART_FULL_DUPLEX // Enable full duplex operation mode. +#define SERIAL_USART_TX_PIN A9 +// #define SERIAL_USART_RX_PIN A3 +// #define SERIAL_USART_DRIVER SD2 +// #define SERIAL_USART_TX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 +// #define SERIAL_USART_RX_PAL_MODE 7 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 7 +// #define SERIAL_USART_TIMEOUT 100 // USART driver timeout. default 100 +// // #define SERIAL_USART_PIN_SWAP // swap RX and TX pins on master +// // To use the highest possible baudrate (3.75Mbit/s) uncomment the following +// // line, this can result in dropped communications so lower the speed if there +// // are many timeouts. +// // #define SERIAL_USART_SPEED (STM32_PCLK2 >> 4) + +#define CRC8_USE_TABLE +#define CRC8_OPTIMIZE_SPEED + +/* spi config for eeprom and pmw3360 sensor */ +#define SPI_DRIVER SPID1 +#define SPI_SCK_PIN A5 +#define SPI_SCK_PAL_MODE 5 +#define SPI_MOSI_PIN A7 +#define SPI_MOSI_PAL_MODE 5 +#define SPI_MISO_PIN A6 +#define SPI_MISO_PAL_MODE 5 + +#define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4 +#define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64 + +#undef PMW3360_CS_PIN +#define PMW3360_CS_PIN B14 +#define PMW3360_CS_MODE 3 +#define PMW3360_CS_DIVISOR 64 + +#define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200 +#define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 400 +#define CHARYBDIS_MINIMUM_SNIPING_DPI 200 +#define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 100 + +/* RGB Matrix. */ + +#undef RGB_MATRIX_MAXIMUM_BRIGHTNESS +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/halconf.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/halconf.h new file mode 100644 index 0000000000..97a288d7bd --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/halconf.h @@ -0,0 +1,26 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_SERIAL TRUE +// #define HAL_USE_I2C TRUE +#define HAL_USE_SPI TRUE +#define SPI_USE_WAIT TRUE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD +// #define HAL_USE_GPT TRUE + +#include_next diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c new file mode 100644 index 0000000000..e26ffc14aa --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/keymap.c @@ -0,0 +1,132 @@ +/** + * Copyright 2021 Charly Delay (@0xcharly) + * + * 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 . + */ +#include "drashna.h" + +#define LAYOUT_charybdis_4x6_wrapper(...) LAYOUT_charybdis_4x6(__VA_ARGS__) +#define LAYOUT_charybdis_4x6_base( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_charybdis_4x6_wrapper( \ + KC_ESC, ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, UC_CLUE, \ + SH_TT, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, SH_TT, \ + LALT_T(KC_TAB), K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, RALT_T(K1B), \ + OS_LSFT, CTL_T(K21), K22, K23, K24, K25, K26, K27, K28, K29, RCTL_T(K2A), OS_RSFT, \ + KC_GRV, OS_LALT, OS_LGUI, TT(_MOUSE), KC_ENT, \ + KC_SPC, BK_LWER, DL_RAIS \ + ) + +#define LAYOUT_base_wrapper(...) LAYOUT_charybdis_4x6_base(__VA_ARGS__) + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DEFAULT_LAYER_1] = LAYOUT_base_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ + ), + + [_DEFAULT_LAYER_2] = LAYOUT_base_wrapper( + ______________COLEMAK_MOD_DH_L1____________, ______________COLEMAK_MOD_DH_R1____________, + ______________COLEMAK_MOD_DH_L2____________, ______________COLEMAK_MOD_DH_R2____________, + ______________COLEMAK_MOD_DH_L3____________, ______________COLEMAK_MOD_DH_R3____________ + ), + [_DEFAULT_LAYER_3] = LAYOUT_base_wrapper( + _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, + _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, + _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ + ), + + [_DEFAULT_LAYER_4] = LAYOUT_base_wrapper( + _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, + _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, + _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ + ), + + + + [_MOUSE] = LAYOUT_charybdis_4x6( + _______, _______, _______, _______, _______, _______, DRGSCRL, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, SNP_TOG, + _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING, + _______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ), + [_GAMEPAD] = LAYOUT_charybdis_4x6( + KC_ESC, KC_NO, KC_1, KC_2, KC_3, KC_4, _______, _______, _______, _______, _______, _______, + KC_F1, KC_K, KC_Q, KC_W, KC_E, KC_R, _______, _______, _______, _______, _______, _______, + KC_TAB, KC_G, KC_A, KC_S, KC_D, KC_F, _______, _______, _______, _______, _______, _______, + KC_LCTL, KC_LSFT, KC_Z, KC_X, KC_C, KC_H, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ), + [_DIABLO] = LAYOUT_charybdis_4x6( + KC_ESC, KC_V, KC_D, KC_LALT, KC_NO, KC_NO, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, + KC_TAB, KC_S, KC_I, KC_F, KC_M, KC_T, _______, _______, _______, _______, _______, _______, + KC_Q, KC_1, KC_2, KC_3, KC_4, KC_G, _______, _______, _______, _______, _______, _______, + KC_LCTL, KC_D3_1, KC_D3_2, KC_D3_3, KC_D3_4, KC_Z, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ), + [_DIABLOII] = LAYOUT_charybdis_4x6( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_GRV, _______, _______, _______, _______, _______, _______, + KC_TAB, KC_A, KC_T, KC_Q, KC_I, KC_M, _______, _______, _______, _______, _______, _______, + KC_S, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, _______, _______, _______, _______, + KC_LCTL, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ), + + [_LOWER] = LAYOUT_charybdis_4x6_wrapper( + KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, + _______, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______, + _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE, + _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ), + + [_RAISE] = LAYOUT_charybdis_4x6_wrapper( + KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, + KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, + _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, + _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, + _______, _______, _______, _______, _______, + _______, _______, _______ + ) + +}; +// clang-format on + + +void matrix_init_keyemap(void) { setPinInputHigh(A0); } + +void matrix_scan_keymap(void) { + if (!readPin(A0)) { + reset_keyboard(); + } +} + +#ifdef USB_VBUS_PIN +bool usb_vbus_state(void) { + setPinInputLow(USB_VBUS_PIN); + wait_us(5); + return readPin(USB_VBUS_PIN); +} +#endif diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h new file mode 100644 index 0000000000..0f60612d79 --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/mcuconf.h @@ -0,0 +1,44 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ + +#pragma once + +#include_next "mcuconf.h" +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +// #undef STM32_I2C_I2C1_RX_DMA_STREAM +// #define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#undef STM32_I2C_I2C1_TX_DMA_STREAM +#define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1) + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE + +#undef STM32_SPI_USE_SPI1 +#define STM32_SPI_USE_SPI1 TRUE + +#undef STM32_SERIAL_USE_USART1 +#define STM32_SERIAL_USE_USART1 TRUE + +#undef STM32_GPT_USE_TIM4 +#define STM32_GPT_USE_TIM4 TRUE + +#undef STM32_ST_USE_TIMER +#define STM32_ST_USE_TIMER 5 diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk new file mode 100644 index 0000000000..ab86b1b8ba --- /dev/null +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/drashna/rules.mk @@ -0,0 +1,24 @@ +# MCU name +MCU = STM32F411 + +# Bootloader selection +BOOTLOADER = stm32-dfu +# BOOTLOADER := tinyuf2 + +LTO_ENABLE := no + +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +KEYBOARD_SHARED_EP = yes +MOUSE_SHARED_EP = yes + +EEPROM_DRIVER = spi +WS2812_DRIVER = pwm +SERIAL_DRIVER = usart + +MOUSEKEY_ENABLE = yes +NKRO_ENABLE = yes +CONSOLE_ENABLE = yes + +AUTOCORRECTION_ENABLE = yes + +DEBOUNCE_TYPE = asym_eager_defer_pk diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/mcuconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/mcuconf.h index d868eae48e..05b5776ac3 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/mcuconf.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/mcuconf.h @@ -21,8 +21,8 @@ #undef STM32_I2C_USE_I2C1 #define STM32_I2C_USE_I2C1 TRUE -#undef STM32_I2C_I2C1_RX_DMA_STREAM -#define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +// #undef STM32_I2C_I2C1_RX_DMA_STREAM +// #define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) #undef STM32_I2C_I2C1_TX_DMA_STREAM #define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 1) @@ -35,19 +35,9 @@ #undef STM32_SPI_USE_SPI1 #define STM32_SPI_USE_SPI1 TRUE -#undef STM32_SPI_SPI1_RX_DMA_STREAM -#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0) -#undef STM32_SPI_SPI1_TX_DMA_STREAM -#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) - #undef STM32_SERIAL_USE_USART2 #define STM32_SERIAL_USE_USART2 TRUE -#undef STM32_UART_USART2_RX_DMA_STREAM -#define STM32_UART_USART2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) -#undef STM32_UART_USART2_TX_DMA_STREAM -#define STM32_UART_USART2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) - #undef STM32_GPT_USE_TIM4 #define STM32_GPT_USE_TIM4 TRUE diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/info.json b/keyboards/handwired/tractyl_manuform/5x6_right/info.json index 51eb009aa5..81a308fd21 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/info.json +++ b/keyboards/handwired/tractyl_manuform/5x6_right/info.json @@ -1,7 +1,6 @@ { "keyboard_name": "Tractyl Manuform 5x6", "url": "", - "maintainer": "drashna", "layouts": { "LAYOUT_5x6_right": { "layout": [ diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h index c3a30d2bc8..2a7a18f01b 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/config.h @@ -22,3 +22,8 @@ #ifdef OLED_DRIVER_SH1107 # undef OLED_DISPLAY_128X64 #endif + +# define CHARYBDIS_MINIMUM_DEFAULT_DPI 1200 +# define CHARYBDIS_DEFAULT_DPI_CONFIG_STEP 200 +# define CHARYBDIS_MINIMUM_SNIPING_DPI 400 +# define CHARYBDIS_SNIPING_DPI_CONFIG_STEP 200 diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c index 570760cf66..82fd4cbea3 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c +++ b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/keymap.c @@ -60,13 +60,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_MOUSE] = LAYOUT_5x6_right( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, KC_WH_U, DPI_MOD, DPI_RMOD,S_D_MOD, S_D_RMOD,DRGSCRL, + _______, _______, _______, _______, _______, _______, DRGSCRL, DPI_RMOD,DPI_MOD, S_D_RMOD,S_D_MOD, SNP_TOG, + _______, _______, _______, _______, _______, _______, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_D, KC_BTN1, KC_BTN3, KC_BTN2, KC_BTN6, SNIPING, _______, _______, _______, _______, _______, _______, KC_BTN7, KC_BTN4, KC_BTN5, KC_BTN8, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN3, - _______, KC_ACCEL, _______, + _______, _______, _______, _______, _______, _______, _______ ), [_GAMEPAD] = LAYOUT_5x6_right( @@ -104,30 +104,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _________________LOWER_L1__________________, _________________LOWER_R1__________________, _______, _______, _________________LOWER_L2__________________, _________________LOWER_R2__________________, KC_PIPE, _______, _________________LOWER_L3__________________, _________________LOWER_R3__________________, _______, - _______, _______, _______, _______, - _______, _______, _______, - _______, _______, _______, - _______, _______, _______, _______ + _______, _______, _______, _______, + _______, _______, _______, + _______, _______, _______, + _______, _______, _______, _______ ), [_RAISE] = LAYOUT_5x6_right_wrapper( - KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, - KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, - _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, - _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, - _______, _______, _______, _______, - _______, _______, _______, - _______, _______, _______, - _______, _______, _______, _______ + KC_F12, _________________FUNC_LEFT_________________, _________________FUNC_RIGHT________________, KC_F11, + KC_GRV, _________________RAISE_L1__________________, _________________RAISE_R1__________________, _______, + _______, _________________RAISE_L2__________________, _________________RAISE_R2__________________, KC_BSLS, + _______, _________________RAISE_L3__________________, _________________RAISE_R3__________________, _______, + _______, _______, _______, _______, + _______, _______, _______, + _______, _______, _______, + _______, _______, _______, _______ ), [_ADJUST] = LAYOUT_5x6_right_wrapper( - KC_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_NOMODE, KC_NOMODE,KC_BLOCKS,KC_REGIONAL,_______,_______, KC_RST, - VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EEP_RST, - KEYLOCK, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS, - UC_MOD, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY, - TG(_DIABLOII), AUTO_CTN, TG_GAME, TG_DBLO, - _______, REBOOT, KC_NUKE, - _______, _______, _______, - _______, _______, KC_NUKE, _______ + KC_MAKE, KC_WIDE,KC_AUSSIE,KC_SCRIPT,KC_ZALGO,KC_NOMODE, KC_NOMODE,KC_BLOCKS,KC_REGIONAL,_______,_______, KC_RST, + VRSN, _________________ADJUST_L1_________________, _________________ADJUST_R1_________________, EEP_RST, + KEYLOCK, _________________ADJUST_L2_________________, _________________ADJUST_R2_________________, TG_MODS, + UC_MOD, _________________ADJUST_L3_________________, _________________ADJUST_R3_________________, KC_MPLY, + TG(_DIABLOII), AUTO_CTN, TG_GAME, TG_DBLO, + _______, REBOOT, KC_NUKE, + _______, _______, _______, + _______, _______, KC_NUKE, _______ ), }; @@ -149,6 +149,16 @@ const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { }; // clang-format on #else + +deferred_token encoder_token = INVALID_DEFERRED_TOKEN; +static int8_t last_direction = -1; + +static uint32_t encoder_callback(uint32_t trigger_time, void *cb_arg) { + unregister_code(last_direction ? KC_WH_D : KC_WH_U); + last_direction = -1; + return 0; +} + bool encoder_update_user(uint8_t index, bool clockwise) { # ifdef SWAP_HANDS_ENABLE if (swap_hands) { @@ -158,7 +168,20 @@ bool encoder_update_user(uint8_t index, bool clockwise) { if (index == 0) { tap_code_delay(clockwise ? KC_VOLD : KC_VOLU, 5); } else if (index == 1) { - tap_code_delay(clockwise ? KC_WH_D : KC_WH_U, 5); + if (last_direction != clockwise || encoder_token == INVALID_DEFERRED_TOKEN) { + uint8_t keycode = clockwise ? KC_WH_D : KC_WH_U; + last_direction = clockwise; + if (encoder_token != INVALID_DEFERRED_TOKEN) { + if (cancel_deferred_exec(encoder_token)) { + encoder_token = INVALID_DEFERRED_TOKEN; + } + unregister_code(clockwise ? KC_WH_U : KC_WH_D); + } + register_code(keycode); + encoder_token = defer_exec(MOUSEKEY_WHEEL_DELAY + MOUSEKEY_WHEEL_INTERVAL, encoder_callback, NULL); + } else { + extend_deferred_exec(encoder_token, MOUSEKEY_WHEEL_INTERVAL); + } } return false; } @@ -167,7 +190,9 @@ bool encoder_update_user(uint8_t index, bool clockwise) { #ifdef OLED_ENABLE extern uint16_t typing_mode; -oled_rotation_t oled_init_keymap(oled_rotation_t rotation) { return OLED_ROTATION_180; } +oled_rotation_t oled_init_keymap(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} void oled_render_large_display(void) { if (is_keyboard_left()) { @@ -176,13 +201,16 @@ void oled_render_large_display(void) { oled_advance_page(true); oled_advance_page(true); + // clang-format off static const char PROGMEM logo[] = { 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8A, 0x8B, 0x8C, 0x8D, 0x8E, 0x8F, 0x90, 0x91, 0x92, 0x93, 0x94, 0xA0, 0xA1, 0xA2, 0xA3, 0xA4, 0xA5, 0xA6, 0xA7, 0xA8, 0xA9, 0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0xAF, 0xB0, 0xB1, 0xB2, 0xB3, 0xB4, 0xC0, 0xC1, 0xC2, 0xC3, 0xC4, 0xC5, 0xC6, 0xC7, 0xC8, 0xC9, 0xCA, 0xCB, 0xCC, 0xCD, 0xCE, 0xCF, 0xD0, 0xD1, 0xD2, 0xD3, 0xD4, 0x00 }; + // clang-format on oled_write_P(logo, false); +# ifdef CUSTOM_UNICODE_ENABLE oled_set_cursor(1, 14); oled_write_ln_P(PSTR("Unicode:"), false); switch (typing_mode) { @@ -204,10 +232,14 @@ void oled_render_large_display(void) { case KC_ZALGO: oled_write_P(PSTR(" Zalgo"), false); break; - default: + case KC_NOMODE: oled_write_P(PSTR(" Normal"), false); break; + default: + oled_write_P(PSTR(" Unknown"), false); + break; } +# endif } } #endif diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk index 9ef58ab5ec..4cad07ef66 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk +++ b/keyboards/handwired/tractyl_manuform/5x6_right/keymaps/drashna/rules.mk @@ -10,6 +10,7 @@ ENCODER_ENABLE = yes ENCODER_MAP_ENABLE = yes AUTOCORRECTION_ENABLE = yes CAPS_WORD_ENABLE = yes +DEFERRED_EXEC_ENABLE = yes ifeq ($(strip $(KEYBOARD)), handwired/tractyl_manuform/5x6_right/elite_c) RGBLIGHT_ENABLE = no diff --git a/keyboards/handwired/tractyl_manuform/config.h b/keyboards/handwired/tractyl_manuform/config.h index f9160ea148..821f9be9b6 100644 --- a/keyboards/handwired/tractyl_manuform/config.h +++ b/keyboards/handwired/tractyl_manuform/config.h @@ -22,7 +22,6 @@ along with this program. If not, see . /* USB Device descriptor parameter */ #define VENDOR_ID 0x44DD -#define MANUFACTURER Drashna /* disable debug print */ // #define NO_DEBUG diff --git a/keyboards/handwired/tractyl_manuform/info.json b/keyboards/handwired/tractyl_manuform/info.json new file mode 100644 index 0000000000..7214e6773b --- /dev/null +++ b/keyboards/handwired/tractyl_manuform/info.json @@ -0,0 +1,4 @@ +{ + "manufacturer": "QMK Community", + "maintainer": "Drashna Jael're" +} diff --git a/keyboards/handwired/tractyl_manuform/tractyl_manuform.c b/keyboards/handwired/tractyl_manuform/tractyl_manuform.c index 033146134d..0ae49b6397 100644 --- a/keyboards/handwired/tractyl_manuform/tractyl_manuform.c +++ b/keyboards/handwired/tractyl_manuform/tractyl_manuform.c @@ -247,7 +247,7 @@ static bool has_shift_mod(void) { * - default DPI: internal table index/actual DPI * - sniping DPI: internal table index/actual DPI */ -static void debug_charybdis_config_to_console(charybdis_config_t* config) { +__attribute__((unused)) static void debug_charybdis_config_to_console(charybdis_config_t* config) { # ifdef CONSOLE_ENABLE dprintf("(charybdis) process_record_kb: config = {\n" "\traw = 0x%04X,\n" @@ -264,7 +264,6 @@ static void debug_charybdis_config_to_console(charybdis_config_t* config) { bool process_record_kb(uint16_t keycode, keyrecord_t* record) { if (!process_record_user(keycode, record)) { - debug_charybdis_config_to_console(&g_charybdis_config); return false; } # ifndef NO_CHARYBDIS_KEYCODES @@ -321,7 +320,6 @@ bool process_record_kb(uint16_t keycode, keyrecord_t* record) { pointing_device_send(); } # endif // !MOUSEKEY_ENABLE - debug_charybdis_config_to_console(&g_charybdis_config); return true; } diff --git a/keyboards/handwired/tractyl_manuform/tractyl_manuform.h b/keyboards/handwired/tractyl_manuform/tractyl_manuform.h index 197aee985e..b62b6f7553 100644 --- a/keyboards/handwired/tractyl_manuform/tractyl_manuform.h +++ b/keyboards/handwired/tractyl_manuform/tractyl_manuform.h @@ -24,8 +24,6 @@ # include "4x6_right.h" #endif -#ifdef POINTING_DEVICE_ENABLE -# ifndef NO_CHARYBDIS_KEYCODES enum charybdis_keycodes { # ifdef VIA_ENABLE POINTER_DEFAULT_DPI_FORWARD = USER00, @@ -50,8 +48,8 @@ enum charybdis_keycodes { # define SNP_TOG SNIPING_MODE_TOGGLE # define DRGSCRL DRAGSCROLL_MODE # define DRG_TOG DRAGSCROLL_MODE_TOGGLE -# endif // !NO_CHARYBDIS_KEYCODES +#ifdef POINTING_DEVICE_ENABLE /** \brief Return the current DPI value for the pointer's default mode. */ uint16_t charybdis_get_pointer_default_dpi(void); diff --git a/keyboards/splitkb/kyria/keymaps/drashna/rules.mk b/keyboards/splitkb/kyria/keymaps/drashna/rules.mk index ddba0780a2..3ddcddbee3 100644 --- a/keyboards/splitkb/kyria/keymaps/drashna/rules.mk +++ b/keyboards/splitkb/kyria/keymaps/drashna/rules.mk @@ -20,6 +20,7 @@ ifeq ($(strip $(KEYBOARD)), splitkb/kyria/rev1/proton_c) CTPC = yes AUTOCORRECTION_ENABLE = yes CAPS_WORD_ENABLE = yes + OLED_DRIVER = custom DEBUG_MATRIX_SCAN_RATE_ENABLE = api else LTO_ENABLE = yes diff --git a/layouts/community/ortho_4x12/drashna/rules.mk b/layouts/community/ortho_4x12/drashna/rules.mk index 2905fb0fd4..e5c25d6fd5 100644 --- a/layouts/community/ortho_4x12/drashna/rules.mk +++ b/layouts/community/ortho_4x12/drashna/rules.mk @@ -1,24 +1,22 @@ -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control +EXTRAKEY_ENABLE = yes # Audio control and System control TAP_DANCE_ENABLE = no -SPACE_CADET_ENABLE = no NKRO_ENABLE = yes CAPS_WORD_ENABLE = no +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +BACKLIGHT_ENABLE = no -ifneq ($(strip $(KEYBOARD)), planck/rev6) - CONSOLE_ENABLE = no - COMMAND_ENABLE = no - ifeq ($(strip $(LAYOUT_HAS_RGB)), yes) - RGBLIGHT_ENABLE = yes - INDICATOR_LIGHTS = yes - RGBLIGHT_STARTUP_ANIMATION = yes - endif -else +ifeq ($(strip $(LAYOUT_HAS_RGB)), yes) + RGBLIGHT_ENABLE = yes +endif + +ifeq ($(strip $(KEYBOARD)), planck/rev6) CONSOLE_ENABLE = yes RGBLIGHT_ENABLE = yes - RGBLIGHT_STARTUP_ANIMATION = yes RGB_MATRIX_ENABLE = no + RGBLIGHT_STARTUP_ANIMATION = yes AUDIO_ENABLE = yes EEPROM_DRIVER = i2c ENCODER_MAP_ENABLE = yes diff --git a/layouts/community/ortho_5x12/drashna/rules.mk b/layouts/community/ortho_5x12/drashna/rules.mk index 98ac829092..57cc3ce0be 100644 --- a/layouts/community/ortho_5x12/drashna/rules.mk +++ b/layouts/community/ortho_5x12/drashna/rules.mk @@ -1,7 +1,7 @@ -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration TAP_DANCE_ENABLE = no NKRO_ENABLE = yes @@ -12,7 +12,7 @@ ifeq ($(strip $(KEYBOARD)), fractal) AUDIO_SUPPORTED = yes RGBLIGHT_SUPPORTED = yes RGBLIGHT_ENABLE = yes - RGBLIGHT_STARTUP_ANIMATION = yes + RGBLIGHT_STARTUP_ANIMATION = no BOOTLOADER = qmk-dfu CUSTOM_UNICODE_ENABLE = no endif diff --git a/layouts/community/split_3x6_3/drashna/keymap.c b/layouts/community/split_3x6_3/drashna/keymap.c index 4bd4618d0c..1bc758fce9 100644 --- a/layouts/community/split_3x6_3/drashna/keymap.c +++ b/layouts/community/split_3x6_3/drashna/keymap.c @@ -123,7 +123,7 @@ uint8_t current_kaki_frame = 0; uint8_t current_rtogi_frame = 0; // uint8_t current_ltogi_frame = 0; // clang-format off -void render_kitty(void) { +void render_small_kitty(void) { // Images credit j-inc(/James Incandenza) and pixelbenny. Credit to obosob for initial animation approach. static const char PROGMEM sleep[SLEEP_FRAMES][ANIM_SIZE] = {{ // 'sleep1', 32x32px @@ -228,7 +228,7 @@ void render_kitty(void) { } void oled_driver_render_logo_right(void) { - render_kitty(); + render_small_kitty(); oled_set_cursor(0, 4); render_default_layer_state(); diff --git a/users/drashna/callbacks.c b/users/drashna/callbacks.c index f01aab433e..c11a381dee 100644 --- a/users/drashna/callbacks.c +++ b/users/drashna/callbacks.c @@ -33,10 +33,10 @@ void matrix_init_user(void) { __attribute__((weak)) void keyboard_post_init_keymap(void) {} void keyboard_post_init_user(void) { -#if defined(RGBLIGHT_ENABLE) +#if defined(CUSTOM_RGBLIGHT) keyboard_post_init_rgb_light(); #endif -#if defined(RGB_MATRIX_ENABLE) +#if defined(CUSTOM_RGB_MATRIX) keyboard_post_init_rgb_matrix(); #endif #if defined(SPLIT_KEYBOARD) && defined(SPLIT_TRANSACTION_IDS_USER) @@ -104,8 +104,10 @@ void matrix_scan_user(void) { #ifdef TAP_DANCE_ENABLE // Run Diablo 3 macro checking code. run_diablo_macro_check(); #endif // TAP_DANCE_ENABLE - -#if defined(RGB_MATRIX_ENABLE) +#ifdef CAPS_WORD_ENABLE + caps_word_task(); +#endif +#if defined(CUSTOM_RGB_MATRIX) matrix_scan_rgb_matrix(); #endif matrix_scan_secret(); @@ -126,12 +128,12 @@ layer_state_t layer_state_set_user(layer_state_t state) { } state = update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST); -#if defined(POINTING_DEVICE_ENABLE) +#if defined(CUSTOM_POINTING_DEVICE) state = layer_state_set_pointing(state); #endif -#if defined(RGBLIGHT_ENABLE) +#if defined(CUSTOM_RGBLIGHT) state = layer_state_set_rgb_light(state); -#endif // RGBLIGHT_ENABLE +#endif // CUSTOM_RGBLIGHT #if defined(AUDIO_ENABLE) && !defined(__arm__) static bool is_gamepad_on = false; if (layer_state_cmp(state, _GAMEPAD) != is_gamepad_on) { @@ -156,9 +158,9 @@ layer_state_t default_layer_state_set_user(layer_state_t s state = default_layer_state_set_keymap(state); #if 0 -# if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +# if defined(CUSTOM_RGBLIGHT) || defined(RGB_MATRIX_ENABLE) state = default_layer_state_set_rgb(state); -# endif // RGBLIGHT_ENABLE +# endif #endif return state; } diff --git a/users/drashna/callbacks.h b/users/drashna/callbacks.h index f6ac6b88de..5fe5f6a808 100644 --- a/users/drashna/callbacks.h +++ b/users/drashna/callbacks.h @@ -23,3 +23,6 @@ void matrix_init_unicode(void); #ifdef SPLIT_KEYBOARD void matrix_slave_scan_keymap(void); #endif +#ifdef CAPS_WORD_ENABLE +# include "keyrecords/caps_word.h" +#endif diff --git a/users/drashna/config.h b/users/drashna/config.h index f55ed36bc2..4551c3504f 100644 --- a/users/drashna/config.h +++ b/users/drashna/config.h @@ -291,4 +291,6 @@ # ifndef OLED_BRIGHTNESS # define OLED_BRIGHTNESS 50 # endif +# undef OLED_UPDATE_INTERVAL +# define OLED_UPDATE_INTERVAL 100 #endif diff --git a/users/drashna/keyrecords/caps_word.c b/users/drashna/keyrecords/caps_word.c index 0c7cd6cfe5..a152b2387b 100644 --- a/users/drashna/keyrecords/caps_word.c +++ b/users/drashna/keyrecords/caps_word.c @@ -1,83 +1,139 @@ -// Copyright 2021 Google LLC. -// SPDX-License-Identifier: Apache-2.0 - #include "caps_word.h" -#ifndef IS_COMMAND -# define IS_COMMAND() (get_mods() == MOD_MASK_SHIFT) -#endif +static bool caps_word_active = false; -bool caps_word_enabled = false; -bool caps_word_shifted = false; +#if CAPS_WORD_IDLE_TIMEOUT > 0 +# if CAPS_WORD_IDLE_TIMEOUT < 100 || CAPS_WORD_IDLE_TIMEOUT > 30000 +// Constrain timeout to a sensible range. With the 16-bit timer, the longest +// representable timeout is 32768 ms, rounded here to 30000 ms = half a minute. +# error "caps_word: CAPS_WORD_IDLE_TIMEOUT must be between 100 and 30000 ms" +# endif + +static uint16_t idle_timer = 0; + +void caps_word_task(void) { + if (caps_word_active && timer_expired(timer_read(), idle_timer)) { + caps_word_set(false); + } +} +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 -/** - * @brief Handler for Caps Word feature. - * - * This checks the keycodes, and applies shift to the correct keys, if and when needid. - * - * @param keycode Keycode from matrix - * @param record keyrecord_t data structure - * @return true Continue processing keycode and sent to host - * @return false Stop processing keycode, and do not send to host - */ bool process_caps_word(uint16_t keycode, keyrecord_t* record) { - if (!caps_word_enabled) { +#ifndef NO_ACTION_ONESHOT + const uint8_t mods = get_mods() | get_oneshot_mods(); +#else + const uint8_t mods = get_mods(); +#endif // NO_ACTION_ONESHOT + + if (!caps_word_active) { // Pressing both shift keys at the same time enables caps word. - if (IS_COMMAND()) { - clear_mods(); - clear_oneshot_mods(); - caps_word_shifted = false; - caps_word_enabled = true; + if ((mods & MOD_MASK_SHIFT) == MOD_MASK_SHIFT) { + caps_word_set(true); // Activate Caps Word. return false; } return true; + } else { +#if CAPS_WORD_IDLE_TIMEOUT > 0 + idle_timer = record->event.time + CAPS_WORD_IDLE_TIMEOUT; +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 } if (!record->event.pressed) { return true; } - if (!((get_mods() | get_oneshot_mods()) & ~MOD_MASK_SHIFT)) { + if (!(mods & ~MOD_MASK_SHIFT)) { switch (keycode) { + // Ignore MO, TO, TG, TT, and OSL layer switch keys. + case QK_MOMENTARY ... QK_MOMENTARY_MAX: + case QK_TO ... QK_TO_MAX: + case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: + return true; + +#ifndef NO_ACTION_TAPPING case QK_MOD_TAP ... QK_MOD_TAP_MAX: + if (record->tap.count == 0) { + // Deactivate if a mod becomes active through holding a mod-tap key. + caps_word_set(false); + return true; + } + keycode &= 0xff; + break; + +# ifndef NO_ACTION_LAYER case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: - // Earlier return if this has not been considered tapped yet. +# endif // NO_ACTION_LAYER if (record->tap.count == 0) { return true; } - // Get the base tapping keycode of a mod- or layer-tap key. keycode &= 0xff; + break; +#endif // NO_ACTION_TAPPING + +#ifdef SWAP_HANDS_ENABLE + case QK_SWAP_HANDS ... QK_SWAP_HANDS_MAX: + if (keycode > 0x56F0 || record->tap.count == 0) { + return true; + } + keycode &= 0xff; + break; +#endif // SWAP_HANDS_ENABLE } - switch (keycode) { - // Letter keys should be shifted. - case KC_A ... KC_Z: - if (!caps_word_shifted) { - register_code(KC_LSFT); - } - caps_word_shifted = true; - return true; - - // Keycodes that continue caps word but shouldn't get shifted. - case KC_1 ... KC_0: - case KC_BSPC: - case KC_MINS: - case KC_UNDS: - if (caps_word_shifted) { - unregister_code(KC_LSFT); - } - caps_word_shifted = false; - return true; - - // Any other keycode disables caps word. + if (caps_word_press_user(keycode)) { + return true; } } - // Disable caps word. - caps_word_enabled = false; - if (caps_word_shifted) { - unregister_code(KC_LSFT); - } - caps_word_shifted = false; + caps_word_set(false); // Deactivate Caps Word. return true; } + +void caps_word_set(bool active) { + if (active != caps_word_active) { + if (active) { + clear_mods(); +#ifndef NO_ACTION_ONESHOT + clear_oneshot_mods(); +#endif // NO_ACTION_ONESHOT +#if CAPS_WORD_IDLE_TIMEOUT > 0 + idle_timer = timer_read() + CAPS_WORD_IDLE_TIMEOUT; +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + } else if ((get_weak_mods() & MOD_BIT(KC_LSFT)) != 0) { + // If the weak shift mod is still on, turn it off and send an update to + // the host computer. + del_weak_mods(MOD_BIT(KC_LSFT)); + send_keyboard_report(); + } + + caps_word_active = active; + caps_word_set_user(active); + } +} + +bool caps_word_get(void) { + return caps_word_active; +} + +__attribute__((weak)) void caps_word_set_user(bool active) {} + +__attribute__((weak)) bool caps_word_press_user(uint16_t keycode) { + switch (keycode) { + // Keycodes that continue Caps Word, with shift applied. + case KC_A ... KC_Z: + add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. + return true; + + // Keycodes that continue Caps Word, without shifting. + case KC_1 ... KC_0: + case KC_BSPC: + case KC_MINS: + case KC_UNDS: + return true; + + default: + return false; // Deactivate Caps Word. + } +} diff --git a/users/drashna/keyrecords/caps_word.h b/users/drashna/keyrecords/caps_word.h index 79e410ddda..4279d7e831 100644 --- a/users/drashna/keyrecords/caps_word.h +++ b/users/drashna/keyrecords/caps_word.h @@ -5,4 +5,81 @@ #include "drashna.h" +// Call this function from `process_record_user()` to implement Caps Word. bool process_caps_word(uint16_t keycode, keyrecord_t* record); + +// If CAPS_WORD_IDLE_TIMEOUT is set, call `caps_word_task()` from +// `matrix_scan_user()` as described above. +// +// If CAPS_WORD_IDLE_TIMEOUT isn't set, calling this function has no effect (but +// will still compile). +#if CAPS_WORD_IDLE_TIMEOUT > 0 +void caps_word_task(void); +#else +static inline void caps_word_task(void) {} +#endif + +// Activates or deactivates Caps Word. For instance activate Caps Word with a +// combo by defining a `COMBO_ACTION` that calls `caps_word_set(true)`: +// +// void process_combo_event(uint16_t combo_index, bool pressed) { +// switch(combo_index) { +// case CAPS_COMBO: +// if (pressed) { +// caps_word_set(true); // Activate Caps Word. +// } +// break; +// +// // Other combos... +// } +// } +void caps_word_set(bool active); + +// Returns whether Caps Word is currently active. +bool caps_word_get(void); + +// An optional callback that gets called when Caps Word turns on or off. This is +// useful to represent the current Caps Word state, e.g. by setting an LED or +// playing a sound. In your keymap, define +// +// void caps_word_set_user(bool active) { +// if (active) { +// // Do something when Caps Word activates. +// } else { +// // Do something when Caps Word deactivates. +// } +// } +void caps_word_set_user(bool active); + +// An optional callback which is called on every key press while Caps Word is +// active. When the key should be shifted (that is, a letter key), the callback +// should call `add_weak_mods(MOD_BIT(KC_LSFT))` to shift the key. The callback +// also determines whether the key should continue Caps Word. Returning true +// continues the current "word", while returning false is "word breaking" and +// deactivates Caps Word. The default callback is +// +// bool caps_word_press_user(uint16_t keycode) { +// switch (keycode) { +// // Keycodes that continue Caps Word, with shift applied. +// case KC_A ... KC_Z: +// add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. +// return true; +// +// // Keycodes that continue Caps Word, without shifting. +// case KC_1 ... KC_0: +// case KC_BSPC: +// case KC_MINS: +// case KC_UNDS: +// return true; +// +// default: +// return false; // Deactivate Caps Word. +// } +// } +// +// To customize, copy the above function into your keymap and add/remove +// keycodes to the above cases. +// +// NOTE: Outside of this callback, you can use `caps_word_set(false)` to +// deactivate Caps Word. +bool caps_word_press_user(uint16_t keycode); diff --git a/users/drashna/keyrecords/process_records.c b/users/drashna/keyrecords/process_records.c index 160a880215..99267d88a8 100644 --- a/users/drashna/keyrecords/process_records.c +++ b/users/drashna/keyrecords/process_records.c @@ -41,21 +41,21 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #ifdef KEYLOGGER_ENABLE uprintf("KL: kc: 0x%04X, col: %2u, row: %2u, pressed: %b, time: %5u, int: %b, count: %u\n", keycode, record->event.key.col, record->event.key.row, record->event.pressed, record->event.time, record->tap.interrupted, record->tap.count); #endif // KEYLOGGER_ENABLE -#ifdef OLED_ENABLE +#if defined(OLED_ENABLE) && defined(CUSTOM_OLED_DRIVER) process_record_user_oled(keycode, record); #endif // OLED if (!(process_record_keymap(keycode, record) && process_record_secrets(keycode, record) -#ifdef RGB_MATRIX_ENABLE +#ifdef CUSTOM_RGB_MATRIX && process_record_user_rgb_matrix(keycode, record) #endif -#ifdef RGBLIGHT_ENABLE +#ifdef CUSTOM_RGBLIGHT && process_record_user_rgb_light(keycode, record) #endif #ifdef CUSTOM_UNICODE_ENABLE && process_record_unicode(keycode, record) #endif -#if defined(POINTING_DEVICE_ENABLE) +#if defined(CUSTOM_POINTING_DEVICE) && process_record_pointing(keycode, record) #endif #ifdef CAPS_WORD_ENABLE @@ -142,26 +142,26 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } break; case KC_RGB_T: // This allows me to use underglow as layer indication, or as normal -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#if defined(CUSTOM_RGBLIGHT) || defined(CUSTOM_RGB_MATRIX) if (record->event.pressed) { userspace_config.rgb_layer_change ^= 1; dprintf("rgblight layer change [EEPROM]: %u\n", userspace_config.rgb_layer_change); eeconfig_update_user(userspace_config.raw); if (userspace_config.rgb_layer_change) { -# if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +# if defined(CUSTOM_RGBLIGHT) && defined(CUSTOM_RGB_MATRIX) rgblight_enable_noeeprom(); # endif layer_state_set(layer_state); // This is needed to immediately set the layer color (looks better) -# if defined(RGBLIGHT_ENABLE) && defined(RGB_MATRIX_ENABLE) +# if defined(CUSTOM_RGBLIGHT) && defined(CUSTOM_RGB_MATRIX) } else { rgblight_disable_noeeprom(); # endif } } -#endif // RGBLIGHT_ENABLE +#endif // CUSTOM_RGBLIGHT break; -#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) +#if defined(CUSTOM_RGBLIGHT) || defined(CUSTOM_RGB_MATRIX) case RGB_TOG: // Split keyboards need to trigger on key-up for edge-case issue # ifndef SPLIT_KEYBOARD @@ -169,10 +169,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { # else if (!record->event.pressed) { # endif -# if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) +# if defined(CUSTOM_RGBLIGHT) && !defined(RGBLIGHT_DISABLE_KEYCODES) rgblight_toggle(); # endif -# if defined(RGB_MATRIX_ENABLE) && !defined(RGB_MATRIX_DISABLE_KEYCODES) +# if defined(CUSTOM_RGB_MATRIX) && !defined(RGB_MATRIX_DISABLE_KEYCODES) rgb_matrix_toggle(); # endif } @@ -181,7 +181,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case RGB_MODE_FORWARD ... RGB_MODE_GRADIENT: // quantum_keycodes.h L400 for definitions if (record->event.pressed) { bool is_eeprom_updated; -# if defined(RGBLIGHT_ENABLE) && !defined(RGBLIGHT_DISABLE_KEYCODES) +# if defined(CUSTOM_RGBLIGHT) && !defined(RGBLIGHT_DISABLE_KEYCODES) // This disables layer indication, as it's assumed that if you're changing this ... you want that disabled if (userspace_config.rgb_layer_change) { userspace_config.rgb_layer_change = false; @@ -189,7 +189,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { is_eeprom_updated = true; } # endif -# if defined(RGB_MATRIX_ENABLE) && defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) +# if defined(CUSTOM_RGB_MATRIX) && defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) if (userspace_config.rgb_matrix_idle_anim) { userspace_config.rgb_matrix_idle_anim = false; dprintf("RGB Matrix Idle Animation [EEPROM]: %u\n", userspace_config.rgb_matrix_idle_anim); diff --git a/users/drashna/keyrecords/process_records.h b/users/drashna/keyrecords/process_records.h index d7a81d4607..5ca2966131 100644 --- a/users/drashna/keyrecords/process_records.h +++ b/users/drashna/keyrecords/process_records.h @@ -4,8 +4,10 @@ #pragma once #include "drashna.h" -#if defined(KEYBOARD_handwired_tractyl_manuform) +#if defined(KEYBOARD_handwired_tractyl_manuform) && defined(POINTING_DEVICE_ENABLE) # define PLACEHOLDER_SAFE_RANGE KEYMAP_SAFE_RANGE +#elif defined(KEYBOARD_bastardkb_charybdis) +# define PLACEHOLDER_SAFE_RANGE CHARYBDIS_SAFE_RANGE #else # define PLACEHOLDER_SAFE_RANGE SAFE_RANGE #endif diff --git a/users/drashna/keyrecords/unicode.c b/users/drashna/keyrecords/unicode.c index 5acd51da9b..af87ee2a61 100644 --- a/users/drashna/keyrecords/unicode.c +++ b/users/drashna/keyrecords/unicode.c @@ -6,7 +6,7 @@ #include "drashna.h" #include "process_unicode_common.h" -uint16_t typing_mode; +uint16_t typing_mode = KC_NOMODE; /** * @brief Registers the unicode keystrokes based on desired unicode @@ -245,7 +245,7 @@ bool process_record_unicode(uint16_t keycode, keyrecord_t *record) { if (typing_mode != keycode) { typing_mode = keycode; } else { - typing_mode = 0; + typing_mode = KC_NOMODE; } } break; diff --git a/users/drashna/oled/oled_stuff.c b/users/drashna/oled/oled_stuff.c index 752829e0fa..2a26b8b638 100644 --- a/users/drashna/oled/oled_stuff.c +++ b/users/drashna/oled/oled_stuff.c @@ -19,6 +19,9 @@ #ifdef UNICODE_COMMON_ENABLE # include "process_unicode_common.h" #endif +# ifdef AUDIO_CLICKY +# include "process_clicky.h" +# endif #include extern bool host_driver_disabled; @@ -26,7 +29,9 @@ extern bool host_driver_disabled; uint32_t oled_timer = 0; char keylog_str[OLED_KEYLOGGER_LENGTH] = {0}; static uint16_t log_timer = 0; +#ifdef OLED_DISPLAY_VERBOSE static const char PROGMEM display_border[3] = {0x0, 0xFF, 0x0}; +#endif deferred_token kittoken; @@ -101,12 +106,6 @@ bool process_record_user_oled(uint16_t keycode, keyrecord_t *record) { return true; } -void update_log(void) { - if (timer_elapsed(log_timer) > 750) { - // add_keylog(0); - } -} - /** * @brief Renders keylogger buffer to oled * @@ -448,20 +447,24 @@ void render_bootmagic_status(void) { #endif } -#if defined(POINTING_DEVICE_ENABLE) +#if defined(CUSTOM_POINTING_DEVICE) extern bool tap_toggling; #endif void render_user_status(void) { #ifdef AUDIO_ENABLE - bool is_audio_on = false, is_clicky_on = false; + bool is_audio_on = false, l_is_clicky_on = false; # ifdef SPLIT_KEYBOARD - is_audio_on = user_state.audio_enable; - is_clicky_on = user_state.audio_clicky_enable; + is_audio_on = user_state.audio_enable; +# ifdef AUDIO_CLICKY + l_is_clicky_on = user_state.audio_clicky_enable; +# endif # else is_audio_on = is_audio_on(); - is_clicky_on = is_clicky_on(); +# ifdef AUDIO_CLICKY + l_is_clicky_on = is_clicky_on(); +# endif # endif #endif #if defined(OLED_DISPLAY_VERBOSE) @@ -476,7 +479,7 @@ void render_user_status(void) { # if !defined(OLED_DISPLAY_VERBOSE) oled_write_P(PSTR(" "), false); # endif -#elif defined(POINTING_DEVICE_ENABLE) +#elif defined(CUSTOM_POINTING_DEVICE) static const char PROGMEM mouse_lock[3] = {0xF2, 0xF3, 0}; oled_write_P(mouse_lock, tap_toggling); #endif @@ -486,7 +489,7 @@ void render_user_status(void) { # ifdef AUDIO_CLICKY static const char PROGMEM audio_clicky_status[2][3] = {{0xF4, 0xF5, 0}, {0xF6, 0xF7, 0}}; - oled_write_P(audio_clicky_status[is_clicky_on && is_audio_on], false); + oled_write_P(audio_clicky_status[l_is_clicky_on && is_audio_on], false); # if !defined(OLED_DISPLAY_VERBOSE) oled_write_P(PSTR(" "), false); # endif @@ -540,6 +543,7 @@ void render_wpm(uint8_t padding) { // vertical_offset = 0; void render_wpm_graph(uint8_t max_lines_graph, uint8_t vertical_offset) { +#ifdef WPM_ENABLE static uint16_t timer = 0; static uint8_t x = OLED_DISPLAY_HEIGHT - 1; uint8_t currwpm = get_current_wpm(); @@ -588,6 +592,7 @@ void render_wpm_graph(uint8_t max_lines_graph, uint8_t vertical_offset) { timer = timer_read(); // refresh the timer for the next iteration } +#endif } #if defined(POINTING_DEVICE_ENABLE) @@ -625,7 +630,7 @@ __attribute__((weak)) void oled_driver_render_logo_right(void) { //#define ANIM_FRAME_DURATION 500 // how long each frame lasts in ms // #define SLEEP_TIMER 60000 // should sleep after this period of 0 wpm, needs fixing -#define OLED_ANIM_SIZE 32 // number of bytes in array, minimize for adequate firmware size, max is 1024 +#define OLED_ANIM_SIZE 36 #define OLED_ANIM_ROWS 4 #define OLED_ANIM_MAX_FRAMES 3 #if (OLED_SLEEP_FRAMES > OLED_ANIM_MAX_FRAMES) || (OLED_WAKE_FRAMES > OLED_ANIM_MAX_FRAMES) || (OLED_KAKI_FRAMES > OLED_ANIM_MAX_FRAMES) || (OLED_RTOGI_FRAMES > OLED_ANIM_MAX_FRAMES) @@ -645,247 +650,67 @@ void render_kitty(void) { // sleep frames { { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, - 0xa8, 0x48, 0xa8, 0x18, 0x08, 0x00, 0x00, 0x00, - 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, - 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x80, - 0x44, 0x84, 0x06, 0x05, 0x04, 0x80, 0x40, 0x20, - 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, - 0x18, 0x04, 0x04, 0x02, 0x7a, 0x86, 0x01, 0x80, - 0x80, 0x01, 0x03, 0x05, 0x07, 0x01, 0x00, 0x00, - 0x80, 0x83, 0x45, 0xfa, 0x3c, 0xe0, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x33, 0x24, 0x28, - 0x28, 0x29, 0x29, 0x29, 0x3a, 0x18, 0x1c, 0x39, - 0x24, 0x24, 0x3a, 0x2d, 0x26, 0x31, 0x1f, 0x00 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0xa8, 0x48, 0xa8, 0x18, 0x08, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x02, 0x02, 0x02, 0x02, 0x02, 0x00, 0x00, 0x80, 0x44, 0x84, 0x06, 0x05, 0x04, 0x80, 0x40, 0x20, 0x10, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x18, 0x04, 0x04, 0x02, 0x7a, 0x86, 0x01, 0x80, 0x80, 0x01, 0x03, 0x05, 0x07, 0x01, 0x00, 0x00, 0x80, 0x83, 0x45, 0xfa, 0x3c, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x33, 0x24, 0x28, 0x28, 0x29, 0x29, 0x29, 0x3a, 0x18, 0x1c, 0x39, 0x24, 0x24, 0x3a, 0x2d, 0x26, 0x31, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00 } }, { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x22, 0x22, 0x3a, 0x2a, 0x26, 0x22, 0x80, 0xc0, - 0x80, 0x00, 0x24, 0x34, 0x2c, 0xe4, 0x60, 0x10, - 0x70, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x38, - 0x04, 0x02, 0x02, 0x01, 0x79, 0x87, 0x01, 0x80, - 0x81, 0x83, 0x05, 0x05, 0x03, 0x01, 0x00, 0x00, - 0x80, 0x43, 0x05, 0xfa, 0x3c, 0xe0, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, - 0x10, 0x10, 0x10, 0x10, 0x10, 0x33, 0x24, 0x28, - 0x28, 0x28, 0x29, 0x29, 0x3a, 0x18, 0x1c, 0x39, - 0x24, 0x24, 0x3a, 0x2d, 0x26, 0x31, 0x1f, 0x00 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, 0x22, 0x3a, 0x2a, 0x26, 0x22, 0x80, 0xc0, 0x80, 0x00, 0x24, 0x34, 0x2c, 0xe4, 0x60, 0x10, 0x70, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x38, 0x04, 0x02, 0x02, 0x01, 0x79, 0x87, 0x01, 0x80, 0x81, 0x83, 0x05, 0x05, 0x03, 0x01, 0x00, 0x00, 0x80, 0x43, 0x05, 0xfa, 0x3c, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x08, 0x10, 0x10, 0x10, 0x10, 0x10, 0x33, 0x24, 0x28, 0x28, 0x28, 0x29, 0x29, 0x3a, 0x18, 0x1c, 0x39, 0x24, 0x24, 0x3a, 0x2d, 0x26, 0x31, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00 } } }, // wake frames { { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xc0, 0x30, 0x08, 0x10, 0x60, 0x80, - 0x00, 0x80, 0x60, 0x10, 0x08, 0x30, 0xc0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x7f, 0x80, 0x40, 0x40, 0x5c, 0x00, 0x01, - 0x41, 0x01, 0x00, 0x5c, 0x40, 0x40, 0x80, 0x7f, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x40, 0x40, 0x80, 0xe1, 0x12, 0x0a, 0x06, 0x00, - 0x80, 0x00, 0x06, 0x0a, 0x12, 0xe1, 0x80, 0x40, - 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, - 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, - 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x11, 0x10, 0x10, - 0x14, 0x14, 0x1f, 0x1c, 0x14, 0x14, 0x14, 0x08 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x08, 0x10, 0x60, 0x80, 0x00, 0x80, 0x60, 0x10, 0x08, 0x30, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x80, 0x40, 0x40, 0x5c, 0x00, 0x01, 0x41, 0x01, 0x00, 0x5c, 0x40, 0x40, 0x80, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x80, 0xe1, 0x12, 0x0a, 0x06, 0x00, 0x80, 0x00, 0x06, 0x0a, 0x12, 0xe1, 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x11, 0x10, 0x10, 0x14, 0x14, 0x1f, 0x1c, 0x14, 0x14, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00 } }, { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0xc0, 0x30, 0x08, 0x10, 0x60, 0x80, - 0x00, 0x80, 0x60, 0x10, 0x08, 0x30, 0xc0, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x7f, 0x90, 0x12, 0x0a, 0x02, 0xf4, 0x09, - 0x0d, 0xf1, 0x04, 0x02, 0x0a, 0x12, 0x90, 0x7f, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x40, 0x40, 0x80, 0xe1, 0x12, 0x0a, 0x06, 0x01, - 0x81, 0x00, 0x06, 0x0a, 0x12, 0xe1, 0x80, 0x40, - 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, - 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, - 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x11, 0x10, 0x10, - 0x14, 0x14, 0x1f, 0x1c, 0x14, 0x14, 0x14, 0x08 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x30, 0x08, 0x10, 0x60, 0x80, 0x00, 0x80, 0x60, 0x10, 0x08, 0x30, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0x90, 0x12, 0x0a, 0x02, 0xf4, 0x09, 0x0d, 0xf1, 0x04, 0x02, 0x0a, 0x12, 0x90, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x80, 0xe1, 0x12, 0x0a, 0x06, 0x01, 0x81, 0x00, 0x06, 0x0a, 0x12, 0xe1, 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x11, 0x10, 0x10, 0x14, 0x14, 0x1f, 0x1c, 0x14, 0x14, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00 } } }, // kaki frames { { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, - 0x80, 0x80, 0x80, 0x00, 0xfc, 0x84, 0x08, 0x08, - 0x10, 0x20, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1e, 0x60, - 0x80, 0x00, 0x00, 0x91, 0xa1, 0x80, 0x00, 0x00, - 0x22, 0x84, 0x40, 0x50, 0x48, 0xc1, 0x3e, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x40, 0x41, 0x82, 0xe2, 0x12, 0x0a, 0x06, 0x00, - 0x80, 0x88, 0x4f, 0x02, 0x22, 0xe2, 0x9f, 0x40, - 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, - 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, - 0x0f, 0x18, 0x14, 0x10, 0x10, 0x10, 0x10, 0x10, - 0x14, 0x14, 0x1f, 0x1a, 0x0a, 0x0a, 0x04, 0x00 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x80, 0x80, 0x80, 0x00, 0xfc, 0x84, 0x08, 0x08, 0x10, 0x20, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1e, 0x60, 0x80, 0x00, 0x00, 0x91, 0xa1, 0x80, 0x00, 0x00, 0x22, 0x84, 0x40, 0x50, 0x48, 0xc1, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x41, 0x82, 0xe2, 0x12, 0x0a, 0x06, 0x00, 0x80, 0x88, 0x4f, 0x02, 0x22, 0xe2, 0x9f, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, 0x0f, 0x18, 0x14, 0x10, 0x10, 0x10, 0x10, 0x10, 0x14, 0x14, 0x1f, 0x1a, 0x0a, 0x0a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00 } }, { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xf0, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x06, 0x1a, 0x22, 0xc2, 0x04, 0x04, - 0x04, 0x07, 0x00, 0xc0, 0x20, 0x10, 0x80, 0x80, - 0x01, 0x01, 0x02, 0xfc, 0xfe, 0x02, 0x3c, 0x20, - 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0d, 0x8d, - 0x55, 0x50, 0x94, 0xf0, 0x10, 0x09, 0x08, 0x00, - 0x80, 0x00, 0x06, 0x09, 0x1b, 0xee, 0x00, 0x00, - 0x00, 0x00, 0x81, 0xfe, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, - 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, - 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x19, 0x18, 0x1c, - 0x14, 0x16, 0x15, 0x14, 0x14, 0x14, 0x14, 0x08 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x10, 0x20, 0x20, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x06, 0x1a, 0x22, 0xc2, 0x04, 0x04, 0x04, 0x07, 0x00, 0xc0, 0x20, 0x10, 0x80, 0x80, 0x01, 0x01, 0x02, 0xfc, 0xfe, 0x02, 0x3c, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0d, 0x8d, 0x55, 0x50, 0x94, 0xf0, 0x10, 0x09, 0x08, 0x00, 0x80, 0x00, 0x06, 0x09, 0x1b, 0xee, 0x00, 0x00, 0x00, 0x00, 0x81, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x19, 0x18, 0x1c, 0x14, 0x16, 0x15, 0x14, 0x14, 0x14, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00 } }, { - { - 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, - 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x20, 0x40, - 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x01, - 0x02, 0x04, 0x04, 0x03, 0x80, 0x40, 0x40, 0x20, - 0x00, 0x01, 0x02, 0x8c, 0x70, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0d, 0x8d, - 0x55, 0x50, 0x94, 0xf0, 0x10, 0x0a, 0x0e, 0x1d, - 0x95, 0x24, 0x24, 0x27, 0x13, 0xe1, 0x01, 0x01, - 0x01, 0x01, 0x02, 0xfc, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, - 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, - 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x19, 0x18, 0x1c, - 0x14, 0x14, 0x17, 0x14, 0x14, 0x14, 0x14, 0x08 - } + { 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x10, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x0f, 0xf0, 0x00, 0x01, 0x02, 0x04, 0x04, 0x03, 0x80, 0x40, 0x40, 0x20, 0x00, 0x01, 0x02, 0x8c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0d, 0x8d, 0x55, 0x50, 0x94, 0xf0, 0x10, 0x0a, 0x0e, 0x1d, 0x95, 0x24, 0x24, 0x27, 0x13, 0xe1, 0x01, 0x01, 0x01, 0x01, 0x02, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1f, 0x14, 0x14, 0x10, 0x10, 0x11, 0x1f, 0x10, 0x10, 0x18, 0x0f, 0x18, 0x10, 0x10, 0x1f, 0x19, 0x18, 0x1c, 0x14, 0x14, 0x17, 0x14, 0x14, 0x14, 0x14, 0x08, 0x00, 0x00, 0x00, 0x00 } } }, // rtogi frames { { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xc0, 0x20, 0x10, 0x10, 0x08, 0x04, 0x02, - 0x01, 0x0f, 0x90, 0x10, 0x20, 0xf0, 0xf8, 0xf8 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, - 0x48, 0x47, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x08, 0x88, 0xc7, 0xc4, 0x62, 0x23, 0x11, 0x3f - }, - { - 0x80, 0x40, 0x20, 0x10, 0x88, 0xcc, 0x43, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, - 0x80, 0x80, 0xc0, 0xe1, 0xfe, 0xb8, 0x88, 0x0c, - 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - }, - { - 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x01, 0x01, 0x06, 0x04, 0x04, 0x04, 0x04, - 0x05, 0x04, 0x04, 0x04, 0x07, 0x07, 0x07, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10, 0x10, 0x08, 0x04, 0x02, 0x01, 0x0f, 0x90, 0x10, 0x20, 0xf0, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x48, 0x47, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x88, 0xc7, 0xc4, 0x62, 0x23, 0x11, 0x3f, 0x00, 0x00, 0x00, 0x00 }, + { 0x80, 0x40, 0x20, 0x10, 0x88, 0xcc, 0x43, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x80, 0x80, 0xc0, 0xe1, 0xfe, 0xb8, 0x88, 0x0c, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x06, 0x04, 0x04, 0x04, 0x04, 0x05, 0x04, 0x04, 0x04, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } }, { - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x00, 0xc0, 0x20, 0x10, 0x10, 0x08, 0x04, 0x02, - 0x01, 0x1f, 0xa0, 0x20, 0x40, 0x80, 0x00, 0xf0 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, - 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, - 0x48, 0x47, 0x88, 0x00, 0x00, 0x00, 0x00, 0x24, - 0x24, 0x28, 0x6b, 0x40, 0xa0, 0x99, 0x86, 0xff - }, - { - 0x0f, 0x11, 0x22, 0x44, 0x48, 0x4c, 0x43, 0x80, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, - 0x80, 0x80, 0xc0, 0xe1, 0xfe, 0xb8, 0x88, 0x0c, - 0x04, 0x06, 0x06, 0x06, 0x0e, 0x0e, 0x06, 0x01 - }, - { - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, - 0x01, 0x01, 0x01, 0x06, 0x04, 0x04, 0x04, 0x04, - 0x05, 0x04, 0x04, 0x04, 0x07, 0x07, 0x07, 0x03, - 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 - } + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x10, 0x10, 0x08, 0x04, 0x02, 0x01, 0x1f, 0xa0, 0x20, 0x40, 0x80, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x10, 0x08, 0x08, 0x08, 0x08, 0x48, 0x47, 0x88, 0x00, 0x00, 0x00, 0x00, 0x24, 0x24, 0x28, 0x6b, 0x40, 0xa0, 0x99, 0x86, 0xff, 0x00, 0x00, 0x00, 0x00 }, + { 0x0f, 0x11, 0x22, 0x44, 0x48, 0x4c, 0x43, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x80, 0x80, 0xc0, 0xe1, 0xfe, 0xb8, 0x88, 0x0c, 0x04, 0x06, 0x06, 0x06, 0x0e, 0x0e, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00 }, + { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x06, 0x04, 0x04, 0x04, 0x04, 0x05, 0x04, 0x04, 0x04, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 } } } }; @@ -899,7 +724,7 @@ void render_kitty(void) { uint32_t kitty_animation_phases(uint32_t triger_time, void *cb_arg) { static uint32_t anim_frame_duration = 500; -#ifdef POINTING_DEVICE_ENABLE +#ifdef CUSTOM_POINTING_DEVICE if (tap_toggling) { animation_frame = (animation_frame + 1) % OLED_RTOGI_FRAMES; animation_type = 3; @@ -953,7 +778,7 @@ void oled_driver_render_logo_left(void) { render_matrix_scan_rate(2); # endif oled_set_cursor(7, 2); -# if defined(KEYBOARD_bastardkb_charybdis) || defined(KEYBOARD_handwired_tractyl_manuform) +# if (defined(KEYBOARD_bastardkb_charybdis) || defined(KEYBOARD_handwired_tractyl_manuform)) && defined(POINTING_DEVICE_ENABLE) render_pointing_dpi_status(charybdis_get_pointer_sniping_enabled() ? charybdis_get_pointer_sniping_dpi() : charybdis_get_pointer_default_dpi(), 1); // credit and thanks to jaspertandy on discord for these images @@ -1054,7 +879,6 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { __attribute__((weak)) bool oled_task_keymap(void) { return true; } bool oled_task_user(void) { - update_log(); if (is_keyboard_master()) { #ifndef OLED_DISPLAY_TEST diff --git a/users/drashna/oled/sh110x.c b/users/drashna/oled/sh110x.c index c850a47538..cfdae1db16 100644 --- a/users/drashna/oled/sh110x.c +++ b/users/drashna/oled/sh110x.c @@ -26,8 +26,7 @@ along with this program. If not, see . #include "keyboard.h" -// Used commands from spec sheet: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf -// for SH1106: https://www.velleman.eu/downloads/29/infosheets/sh1106_datasheet.pdf +// for SH1107: https://www.displayfuture.com/Display/datasheet/controller/SH1107.pdf // Fundamental Commands #define CONTRAST 0x81 @@ -97,17 +96,8 @@ along with this program. If not, see . #define OLED_ALL_BLOCKS_MASK (((((OLED_BLOCK_TYPE)1 << (OLED_BLOCK_COUNT - 1)) - 1) << 1) | 1) -#define OLED_IC_HAS_HORIZONTAL_MODE (OLED_IC == OLED_IC_SSD1306) -#define OLED_IC_COM_PINS_ARE_COLUMNS (OLED_IC == OLED_IC_SH1107) - #ifndef OLED_COM_PIN_COUNT -# if OLED_IC == OLED_IC_SH1106 -# define OLED_COM_PIN_COUNT 64 -# elif OLED_IC == OLED_IC_SH1107 -# define OLED_COM_PIN_COUNT 128 -# else -# error Invalid OLED_IC value -# endif +# define OLED_COM_PIN_COUNT 128 #endif #ifndef OLED_COM_PIN_OFFSET @@ -203,24 +193,12 @@ bool oled_init(oled_rotation_t rotation) { DISPLAY_CLOCK, 0x80, MULTIPLEX_RATIO, -#if OLED_IC_COM_PINS_ARE_COLUMNS OLED_DISPLAY_WIDTH - 1, -#else - OLED_DISPLAY_HEIGHT - 1, -#endif - DISPLAY_OFFSET, + SH1107_DISPLAY_START_LINE, 0x00, - DISPLAY_START_LINE | 0x00, CHARGE_PUMP, 0x14, -#if (OLED_IC != OLED_IC_SH1106) - // MEMORY_MODE is unsupported on SH1106 (Page Addressing only) - MEMORY_MODE, - 0x00, // Horizontal addressing mode -#elif OLED_IC == OLED_IC_SH1107 - // Page addressing mode SH1107_MEMORY_MODE_PAGE, -#endif }; if (I2C_TRANSMIT_P(display_setup1) != I2C_STATUS_SUCCESS) { print("oled_init cmd set 1 failed\n"); @@ -229,7 +207,11 @@ bool oled_init(oled_rotation_t rotation) { if (!HAS_FLAGS(oled_rotation, OLED_ROTATION_180)) { static const uint8_t PROGMEM display_normal[] = { - I2C_CMD, SEGMENT_REMAP_INV, COM_SCAN_DEC, DISPLAY_OFFSET, OLED_COM_PIN_OFFSET, + I2C_CMD, + SEGMENT_REMAP_INV, + COM_SCAN_DEC, + DISPLAY_OFFSET, + OLED_COM_PIN_OFFSET, }; if (I2C_TRANSMIT_P(display_normal) != I2C_STATUS_SUCCESS) { print("oled_init cmd normal rotation failed\n"); @@ -237,7 +219,11 @@ bool oled_init(oled_rotation_t rotation) { } } else { static const uint8_t PROGMEM display_flipped[] = { - I2C_CMD, SEGMENT_REMAP, COM_SCAN_INC, DISPLAY_OFFSET, (OLED_COM_PIN_COUNT - OLED_COM_PIN_OFFSET) % OLED_COM_PIN_COUNT, + I2C_CMD, + SEGMENT_REMAP, + COM_SCAN_INC, + DISPLAY_OFFSET, + (OLED_COM_PIN_COUNT - OLED_COM_PIN_OFFSET) % OLED_COM_PIN_COUNT, }; if (I2C_TRANSMIT_P(display_flipped) != I2C_STATUS_SUCCESS) { print("display_flipped failed\n"); @@ -245,7 +231,18 @@ bool oled_init(oled_rotation_t rotation) { } } - static const uint8_t PROGMEM display_setup2[] = {I2C_CMD, COM_PINS, OLED_COM_PINS, CONTRAST, OLED_BRIGHTNESS, PRE_CHARGE_PERIOD, 0x22, VCOM_DETECT, 0x35, DISPLAY_ALL_ON_RESUME, NORMAL_DISPLAY, DEACTIVATE_SCROLL, DISPLAY_ON}; if (I2C_TRANSMIT_P(display_setup2) != I2C_STATUS_SUCCESS) { + static const uint8_t PROGMEM display_setup2[] = { + I2C_CMD, COM_PINS, + OLED_COM_PINS, + CONTRAST, OLED_BRIGHTNESS, + PRE_CHARGE_PERIOD, 0x22, + VCOM_DETECT, 0x35, + DISPLAY_ALL_ON_RESUME, + NORMAL_DISPLAY, + DEACTIVATE_SCROLL, + DISPLAY_ON + }; + if (I2C_TRANSMIT_P(display_setup2) != I2C_STATUS_SUCCESS) { print("display_setup2 failed\n"); return false; } @@ -277,22 +274,11 @@ static void calc_bounds(uint8_t update_start, uint8_t *cmd_array) { // Calculate commands to set memory addressing bounds. uint8_t start_page = OLED_BLOCK_SIZE * update_start / OLED_DISPLAY_WIDTH; uint8_t start_column = OLED_BLOCK_SIZE * update_start % OLED_DISPLAY_WIDTH; -#if !OLED_IC_HAS_HORIZONTAL_MODE // Commands for Page Addressing Mode. Sets starting page and column; has no end bound. // Column value must be split into high and low nybble and sent as two commands. cmd_array[0] = PAM_PAGE_ADDR | start_page; cmd_array[1] = PAM_SETCOLUMN_LSB | ((OLED_COLUMN_OFFSET + start_column) & 0x0f); cmd_array[2] = PAM_SETCOLUMN_MSB | ((OLED_COLUMN_OFFSET + start_column) >> 4 & 0x0f); - cmd_array[3] = NOP; - cmd_array[4] = NOP; - cmd_array[5] = NOP; -#else - // Commands for use in Horizontal Addressing mode. - cmd_array[1] = start_column + OLED_COLUMN_OFFSET; - cmd_array[4] = start_page; - cmd_array[2] = (OLED_BLOCK_SIZE + OLED_DISPLAY_WIDTH - 1) % OLED_DISPLAY_WIDTH + cmd_array[1]; - cmd_array[5] = (OLED_BLOCK_SIZE + OLED_DISPLAY_WIDTH - 1) / OLED_DISPLAY_WIDTH - 1 + cmd_array[4]; -#endif } static void calc_bounds_90(uint8_t update_start, uint8_t *cmd_array) { @@ -310,19 +296,12 @@ static void calc_bounds_90(uint8_t update_start, uint8_t *cmd_array) { // Top page number for a block which is at the bottom edge of the screen. const uint8_t bottom_block_top_page = (height_in_pages - page_inc_per_block) % height_in_pages; -#if !OLED_IC_HAS_HORIZONTAL_MODE // Only the Page Addressing Mode is supported uint8_t start_page = bottom_block_top_page - (OLED_BLOCK_SIZE * update_start % OLED_DISPLAY_HEIGHT / 8); uint8_t start_column = OLED_BLOCK_SIZE * update_start / OLED_DISPLAY_HEIGHT * 8; cmd_array[0] = PAM_PAGE_ADDR | start_page; cmd_array[1] = PAM_SETCOLUMN_LSB | ((OLED_COLUMN_OFFSET + start_column) & 0x0f); cmd_array[2] = PAM_SETCOLUMN_MSB | ((OLED_COLUMN_OFFSET + start_column) >> 4 & 0x0f); -#else - cmd_array[1] = OLED_BLOCK_SIZE * update_start / OLED_DISPLAY_HEIGHT * 8 + OLED_COLUMN_OFFSET; - cmd_array[4] = bottom_block_top_page - (OLED_BLOCK_SIZE * update_start % OLED_DISPLAY_HEIGHT / 8); - cmd_array[2] = (OLED_BLOCK_SIZE + OLED_DISPLAY_HEIGHT - 1) / OLED_DISPLAY_HEIGHT * 8 - 1 + cmd_array[1]; - cmd_array[5] = (OLED_BLOCK_SIZE + OLED_DISPLAY_HEIGHT - 1) % OLED_DISPLAY_HEIGHT / 8 + cmd_array[4]; -#endif } uint8_t crot(uint8_t a, int8_t n) { @@ -358,11 +337,7 @@ void oled_render(void) { } // Set column & page position -#if OLED_IC_HAS_HORIZONTAL_MODE - static uint8_t display_start[] = {I2C_CMD, COLUMN_ADDR, 0, OLED_DISPLAY_WIDTH - 1, PAGE_ADDR, 0, OLED_DISPLAY_HEIGHT / 8 - 1}; -#else static uint8_t display_start[] = {I2C_CMD, PAM_PAGE_ADDR, PAM_SETCOLUMN_LSB, PAM_SETCOLUMN_MSB}; -#endif if (!HAS_FLAGS(oled_rotation, OLED_ROTATION_90)) { calc_bounds(update_start, &display_start[1]); // Offset from I2C_CMD byte at the start } else { @@ -392,13 +367,6 @@ void oled_render(void) { rotate_90(&oled_buffer[OLED_BLOCK_SIZE * update_start + source_map[i]], &temp_buffer[target_map[i]]); } -#if OLED_IC_HAS_HORIZONTAL_MODE - // Send render data chunk after rotating - if (I2C_WRITE_REG(I2C_DATA, &temp_buffer[0], OLED_BLOCK_SIZE) != I2C_STATUS_SUCCESS) { - print("oled_render90 data failed\n"); - return; - } -#else // For SH1106 or SH1107 the data chunk must be split into separate pieces for each page const uint8_t columns_in_block = (OLED_BLOCK_SIZE + OLED_DISPLAY_HEIGHT - 1) / OLED_DISPLAY_HEIGHT * 8; const uint8_t num_pages = OLED_BLOCK_SIZE / columns_in_block; @@ -417,7 +385,6 @@ void oled_render(void) { return; } } -#endif } // Turn on display if it is off @@ -825,7 +792,7 @@ void oled_task(void) { } #else oled_set_cursor(0, 0); - oled_task_kb(); + oled_task_kbr(); #endif #if OLED_SCROLL_TIMEOUT > 0 @@ -856,5 +823,6 @@ void oled_task(void) { #endif } + __attribute__((weak)) bool oled_task_kb(void) { return oled_task_user(); } __attribute__((weak)) bool oled_task_user(void) { return true; } diff --git a/users/drashna/pointing/pointing.c b/users/drashna/pointing/pointing.c index d0a83e2c26..2e313ba574 100644 --- a/users/drashna/pointing/pointing.c +++ b/users/drashna/pointing/pointing.c @@ -118,7 +118,7 @@ bool process_record_pointing(uint16_t keycode, keyrecord_t* record) { } layer_state_t layer_state_set_pointing(layer_state_t state) { - if (layer_state_cmp(state, _GAMEPAD) || layer_state_cmp(state, _DIABLO)) { + if (layer_state_cmp(state, _GAMEPAD) || layer_state_cmp(state, _DIABLO) || layer_state_cmp(state, _DIABLOII)) { state |= ((layer_state_t)1 << _MOUSE); } return state; diff --git a/users/drashna/post_config.h b/users/drashna/post_config.h index 0c9bda2eeb..2d5e6438d6 100644 --- a/users/drashna/post_config.h +++ b/users/drashna/post_config.h @@ -37,10 +37,9 @@ # define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_REST_MODE #endif -#ifdef QMK_KEYS_PER_SCAN -# undef QMK_KEYS_PER_SCAN +#ifndef QMK_KEYS_PER_SCAN +# define QMK_KEYS_PER_SCAN 8 #endif -#define QMK_KEYS_PER_SCAN 4 #ifdef MOUSEKEY_ENABLE // mouse movement config diff --git a/users/drashna/rgb/rgb_stuff.c b/users/drashna/rgb/rgb_stuff.c index 09071f7151..7d2cf0c73d 100644 --- a/users/drashna/rgb/rgb_stuff.c +++ b/users/drashna/rgb/rgb_stuff.c @@ -24,7 +24,6 @@ static bool is_rgblight_startup; static HSV old_hsv; static uint8_t old_mode; deferred_token rgb_startup_token; -# endif uint32_t rgb_startup_animation(uint32_t triger_time, void *cb_arg) { if (is_rgblight_startup && is_keyboard_master()) { @@ -45,6 +44,7 @@ uint32_t rgb_startup_animation(uint32_t triger_time, void *cb_arg) { } return is_rgblight_startup ? 10 : 0; } +# endif void keyboard_post_init_rgb_light(void) { # if defined(RGBLIGHT_STARTUP_ANIMATION) @@ -56,11 +56,11 @@ void keyboard_post_init_rgb_light(void) { old_mode = rgblight_get_mode(); rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); is_rgblight_startup = true; + rgb_startup_token = defer_exec(300, rgb_startup_animation, NULL); # endif if (userspace_config.rgb_layer_change) { layer_state_set_rgb_light(layer_state); } - rgb_startup_token = defer_exec(300, rgb_startup_animation, NULL); } diff --git a/users/drashna/rules.mk b/users/drashna/rules.mk index 4bc71b6939..12fa956b7d 100644 --- a/users/drashna/rules.mk +++ b/users/drashna/rules.mk @@ -53,6 +53,7 @@ CUSTOM_RGBLIGHT ?= yes ifeq ($(strip $(RGBLIGHT_ENABLE)), yes) ifeq ($(strip $(CUSTOM_RGBLIGHT)), yes) SRC += $(USER_PATH)/rgb/rgb_stuff.c + OPT_DEFS += -DCUSTOM_RGBLIGHT ifeq ($(strip $(RGBLIGHT_NOEEPROM)), yes) OPT_DEFS += -DRGBLIGHT_NOEEPROM endif @@ -67,6 +68,7 @@ CUSTOM_RGB_MATRIX ?= yes ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes) ifeq ($(strip $(CUSTOM_RGB_MATRIX)), yes) SRC += $(USER_PATH)/rgb/rgb_matrix_stuff.c + OPT_DEFS += -DCUSTOM_RGB_MATRIX endif endif @@ -86,7 +88,7 @@ ifeq ($(strip $(OLED_ENABLE)), yes) QUANTUM_LIB_SRC += i2c_master.c endif ifeq ($(strip $(CUSTOM_OLED_DRIVER)), yes) - OPT_DEFS += -DCUSTOM_OLED_DRIVER_CODE + OPT_DEFS += -DCUSTOM_OLED_DRIVER SRC += $(USER_PATH)/oled/oled_stuff.c endif ifeq ($(strip $(OLED_DISPLAY_TEST)), yes) @@ -99,6 +101,7 @@ CUSTOM_POINTING_DEVICE ?= yes ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes) ifeq ($(strip $(CUSTOM_POINTING_DEVICE)), yes) SRC += $(USER_PATH)/pointing/pointing.c + OPT_DEFS += -DCUSTOM_POINTING_DEVICE endif endif diff --git a/users/drashna/split/transport_sync.c b/users/drashna/split/transport_sync.c index 4c113ec257..539a18900c 100644 --- a/users/drashna/split/transport_sync.c +++ b/users/drashna/split/transport_sync.c @@ -57,7 +57,7 @@ void user_config_sync(uint8_t initiator2target_buffer_size, const void* initiato void watchdog_handler(uint8_t in_buflen, const void* in_data, uint8_t out_buflen, void* out_data) { watchdog_ping_done = true; } #endif -#ifdef OLED_ENABLE +#ifdef CUSTOM_OLED_DRIVER # include "oled/oled_stuff.h" void keylogger_string_sync(uint8_t initiator2target_buffer_size, const void* initiator2target_buffer, uint8_t target2initiator_buffer_size, void* target2initiator_buffer) { if (initiator2target_buffer_size == OLED_KEYLOGGER_LENGTH) { @@ -71,7 +71,7 @@ void keyboard_post_init_transport_sync(void) { transaction_register_rpc(RPC_ID_USER_STATE_SYNC, user_state_sync); transaction_register_rpc(RPC_ID_USER_KEYMAP_SYNC, user_keymap_sync); transaction_register_rpc(RPC_ID_USER_CONFIG_SYNC, user_config_sync); -#ifdef OLED_ENABLE +#ifdef CUSTOM_OLED_DRIVER transaction_register_rpc(RPC_ID_USER_KEYLOG_STR, keylogger_string_sync); #endif @@ -92,7 +92,7 @@ void user_transport_update(void) { user_state.audio_enable = is_audio_on(); user_state.audio_clicky_enable = is_clicky_on(); #endif -#if defined(POINTING_DEVICE_ENABLE) && defined(KEYBOARD_handwired_tractyl_manuform) +#if defined(CUSTOM_POINTING_DEVICE) user_state.tap_toggling = tap_toggling; #endif #ifdef UNICODE_COMMON_ENABLE @@ -111,7 +111,7 @@ void user_transport_update(void) { #ifdef UNICODE_COMMON_ENABLE unicode_config.input_mode = user_state.unicode_mode; #endif -#if defined(POINTING_DEVICE_ENABLE) && defined(KEYBOARD_handwired_tractyl_manuform) +#if defined(CUSTOM_POINTING_DEVICE) tap_toggling = user_state.tap_toggling; #endif #ifdef SWAP_HANDS_ENABLE @@ -127,7 +127,7 @@ void user_transport_sync(void) { static uint16_t last_keymap = 0; static uint32_t last_config = 0, last_sync[4], last_user_state = 0; bool needs_sync = false; -#ifdef OLED_ENABLE +#ifdef CUSTOM_OLED_DRIVER static char keylog_temp[OLED_KEYLOGGER_LENGTH] = {0}; #endif @@ -187,7 +187,7 @@ void user_transport_sync(void) { needs_sync = false; } -#ifdef OLED_ENABLE +#ifdef CUSTOM_OLED_DRIVER // Check if the state values are different if (memcmp(&keylog_str, &keylog_temp, OLED_KEYLOGGER_LENGTH)) { needs_sync = true; From 0978dca728e18d79c6888f095c6cb861c895b746 Mon Sep 17 00:00:00 2001 From: owlab-git <88034417+owlab-git@users.noreply.github.com> Date: Mon, 7 Mar 2022 14:41:16 +0800 Subject: [PATCH 016/699] [Keyboard] add qk65 files by qwertykeys studio (#16491) --- keyboards/qwertykeys/qk65/hotswap/config.h | 46 ++++++ keyboards/qwertykeys/qk65/hotswap/hotswap.c | 17 ++ keyboards/qwertykeys/qk65/hotswap/hotswap.h | 33 ++++ keyboards/qwertykeys/qk65/hotswap/info.json | 78 +++++++++ .../qk65/hotswap/keymaps/default/keymap.c | 54 +++++++ .../qk65/hotswap/keymaps/via/keymap.c | 54 +++++++ .../qk65/hotswap/keymaps/via/rules.mk | 2 + keyboards/qwertykeys/qk65/hotswap/readme.md | 21 +++ keyboards/qwertykeys/qk65/hotswap/rules.mk | 18 +++ keyboards/qwertykeys/qk65/solder/config.h | 44 +++++ keyboards/qwertykeys/qk65/solder/info.json | 152 ++++++++++++++++++ .../qk65/solder/keymaps/default/keymap.c | 53 ++++++ .../qk65/solder/keymaps/via/keymap.c | 53 ++++++ .../qk65/solder/keymaps/via/rules.mk | 2 + keyboards/qwertykeys/qk65/solder/readme.md | 21 +++ keyboards/qwertykeys/qk65/solder/rules.mk | 18 +++ keyboards/qwertykeys/qk65/solder/solder.c | 17 ++ keyboards/qwertykeys/qk65/solder/solder.h | 49 ++++++ 18 files changed, 732 insertions(+) create mode 100644 keyboards/qwertykeys/qk65/hotswap/config.h create mode 100644 keyboards/qwertykeys/qk65/hotswap/hotswap.c create mode 100644 keyboards/qwertykeys/qk65/hotswap/hotswap.h create mode 100644 keyboards/qwertykeys/qk65/hotswap/info.json create mode 100644 keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c create mode 100644 keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c create mode 100644 keyboards/qwertykeys/qk65/hotswap/keymaps/via/rules.mk create mode 100644 keyboards/qwertykeys/qk65/hotswap/readme.md create mode 100644 keyboards/qwertykeys/qk65/hotswap/rules.mk create mode 100644 keyboards/qwertykeys/qk65/solder/config.h create mode 100644 keyboards/qwertykeys/qk65/solder/info.json create mode 100644 keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c create mode 100644 keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c create mode 100644 keyboards/qwertykeys/qk65/solder/keymaps/via/rules.mk create mode 100644 keyboards/qwertykeys/qk65/solder/readme.md create mode 100644 keyboards/qwertykeys/qk65/solder/rules.mk create mode 100644 keyboards/qwertykeys/qk65/solder/solder.c create mode 100644 keyboards/qwertykeys/qk65/solder/solder.h diff --git a/keyboards/qwertykeys/qk65/hotswap/config.h b/keyboards/qwertykeys/qk65/hotswap/config.h new file mode 100644 index 0000000000..8dfaf1648d --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/config.h @@ -0,0 +1,46 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4F53 //0x4F53 for qwertykeys +#define PRODUCT_ID 0x514B //0x514B QK for QK65 +#define DEVICE_VER 0x0001 +#define MANUFACTURER qwertykeys +#define PRODUCT QK65 + + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* Keyboard Matrix Assignments */ +#define MATRIX_ROW_PINS { B0, B7, D0, D1, D2 } +#define MATRIX_COL_PINS { D5, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6, F5, F4, F1, F0 } +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* NKRO */ +#define FORCE_NKRO + + diff --git a/keyboards/qwertykeys/qk65/hotswap/hotswap.c b/keyboards/qwertykeys/qk65/hotswap/hotswap.c new file mode 100644 index 0000000000..78de3ff275 --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/hotswap.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ +#include "hotswap.h" \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/hotswap.h b/keyboards/qwertykeys/qk65/hotswap/hotswap.h new file mode 100644 index 0000000000..1f61c5ed6b --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/hotswap.h @@ -0,0 +1,33 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#pragma once +#include "quantum.h" + +#define LAYOUT_hotswap( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ + K400, K401, K402, K404, K407, K408, K412, K413, K414 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213, K214 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \ + { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ +} \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/info.json b/keyboards/qwertykeys/qk65/hotswap/info.json new file mode 100644 index 0000000000..2848a3f5e8 --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/info.json @@ -0,0 +1,78 @@ +{ + "keyboard_name": "qk65", + "url": "", + "maintainer": "qwertykeys", + "layouts": { + "LAYOUT_hotswap": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..4c9960f29e --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c @@ -0,0 +1,54 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_hotswap( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_hotswap( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), + + [2] = LAYOUT_hotswap( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_hotswap( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c new file mode 100644 index 0000000000..ca81553007 --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_hotswap( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_hotswap( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), + + [2] = LAYOUT_hotswap( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_hotswap( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/rules.mk b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/hotswap/readme.md b/keyboards/qwertykeys/qk65/hotswap/readme.md new file mode 100644 index 0000000000..f7c0c64d80 --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/readme.md @@ -0,0 +1,21 @@ +# qk65 - hotswap PCB + +![qk65](https://i.imgur.com/kFhx5qS.png) + +A 65% made by qwertykeys. + +* Keyboard Maintainer: [qwertykeys](https://github.com/owlab-git) +* Hardware Supported: qk65 hotswap PCB +* Hardware Availability: + +Make example for this keyboard (after setting up your build environment): + + make qwertykeys/qk65/hotswap:default + +Flashing example for this keyboard: + + make qwertykeys/qk65/hotswap:default:flash + +**Bootloader:** Press the physical reset button on the bottom side of the PCB (labeled SW1) or hold down ESC while plugging in the board. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/qwertykeys/qk65/hotswap/rules.mk b/keyboards/qwertykeys/qk65/hotswap/rules.mk new file mode 100644 index 0000000000..f9417ae2bf --- /dev/null +++ b/keyboards/qwertykeys/qk65/hotswap/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/config.h b/keyboards/qwertykeys/qk65/solder/config.h new file mode 100644 index 0000000000..be8c11bbda --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter s*/ +#define VENDOR_ID 0x4F53 // 0x4F53 for qwertykeys +#define PRODUCT_ID 0x5153 //0x5153 QS for QK65 Solder +#define DEVICE_VER 0x0001 +#define MANUFACTURER qwertykeys +#define PRODUCT QK65 + + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* Keyboard Matrix Assignments */ +#define MATRIX_ROW_PINS { B0, B7, D0, D1, D2 } +#define MATRIX_COL_PINS { D5, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6, F5, F4, F1, F0 } +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* NKRO */ +#define FORCE_NKRO \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/info.json b/keyboards/qwertykeys/qk65/solder/info.json new file mode 100644 index 0000000000..2251813623 --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/info.json @@ -0,0 +1,152 @@ +{ + "keyboard_name": "qk65", + "url": "", + "maintainer": "qwertykeys", + "layouts": { + "LAYOUT_solder": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_iso": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c new file mode 100644 index 0000000000..8d52b17d2a --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_iso( + 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_BSPC, 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_PGUP, + 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_BSLS, KC_ENT, KC_PGDN, + KC_LSFT, KC_BSLS, 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_iso( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), + + [2] = LAYOUT_iso( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_iso( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c new file mode 100644 index 0000000000..88afc5984b --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_solder( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_BSLS, 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_solder( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), + + [2] = LAYOUT_solder( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_solder( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/via/rules.mk b/keyboards/qwertykeys/qk65/solder/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/readme.md b/keyboards/qwertykeys/qk65/solder/readme.md new file mode 100644 index 0000000000..8987ebc586 --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/readme.md @@ -0,0 +1,21 @@ +# qk65 - solder PCB + +![qk65](https://i.imgur.com/BnZl8Xz.png) + +A 65% made by qwertykeys. + +* Keyboard Maintainer: [qwertykeys](https://github.com/owlab-git) +* Hardware Supported: qk65 solder PCB +* Hardware Availability: + +Make example for this keyboard (after setting up your build environment): + + make qwertykeys/qk65/solder:default + +Flashing example for this keyboard: + + make qwertykeys/qk65/solder:default:flash + +**Bootloader:** Press the physical reset button on the bottom side of the PCB (labeled SW1) or hold down ESC while plugging in the board. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/rules.mk b/keyboards/qwertykeys/qk65/solder/rules.mk new file mode 100644 index 0000000000..f9417ae2bf --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/solder.c b/keyboards/qwertykeys/qk65/solder/solder.c new file mode 100644 index 0000000000..fc95c768fd --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/solder.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ +#include "solder.h" \ No newline at end of file diff --git a/keyboards/qwertykeys/qk65/solder/solder.h b/keyboards/qwertykeys/qk65/solder/solder.h new file mode 100644 index 0000000000..5409662229 --- /dev/null +++ b/keyboards/qwertykeys/qk65/solder/solder.h @@ -0,0 +1,49 @@ +/* +Copyright 2022 qwertykeys + +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 . +*/ + +#pragma once +#include "quantum.h" + +#define LAYOUT_solder( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K113, K013, K014, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K212, K114, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, \ + K300, K312, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ + K400, K401, K402, K404, K407, K408, K412, K413, K414 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \ + { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ +} + + + +#define LAYOUT_iso( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \ + K300, K312, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ + K400, K401, K402, K404, K407, K408, K412, K413, K414 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \ + { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ +} \ No newline at end of file From 1a1b22ef07e7a60292bfebc8fc1c973b69d88c8c Mon Sep 17 00:00:00 2001 From: xiao <307671+xia0@users.noreply.github.com> Date: Mon, 7 Mar 2022 17:22:49 +1030 Subject: [PATCH 017/699] [Keyboard] Sick68 VIA keymap (#16508) Co-authored-by: xia0 --- .../handwired/sick68/keymaps/via/config.h | 20 +++++++ .../handwired/sick68/keymaps/via/keymap.c | 60 +++++++++++++++++++ .../handwired/sick68/keymaps/via/readme.md | 2 + .../handwired/sick68/keymaps/via/rules.mk | 2 + 4 files changed, 84 insertions(+) create mode 100644 keyboards/handwired/sick68/keymaps/via/config.h create mode 100644 keyboards/handwired/sick68/keymaps/via/keymap.c create mode 100644 keyboards/handwired/sick68/keymaps/via/readme.md create mode 100644 keyboards/handwired/sick68/keymaps/via/rules.mk diff --git a/keyboards/handwired/sick68/keymaps/via/config.h b/keyboards/handwired/sick68/keymaps/via/config.h new file mode 100644 index 0000000000..4ce1e3e785 --- /dev/null +++ b/keyboards/handwired/sick68/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2022 @xia0 + +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 . +*/ + +#define ENCODERS_PAD_A { F0 } +#define ENCODERS_PAD_B { F1 } +#define ENCODER_RESOLUTION 4 diff --git a/keyboards/handwired/sick68/keymaps/via/keymap.c b/keyboards/handwired/sick68/keymaps/via/keymap.c new file mode 100644 index 0000000000..3257c1b973 --- /dev/null +++ b/keyboards/handwired/sick68/keymaps/via/keymap.c @@ -0,0 +1,60 @@ +/* Copyright 2020 umbynos + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi( + 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_BSPC, KC_GRV, + 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, KC_DEL, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi( + _______, 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_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, + _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, KC_BTN1, KC_MS_U, KC_BTN2, + _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R + ), + [2] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; + +/* Volume control by default +*/ +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + return false; +} diff --git a/keyboards/handwired/sick68/keymaps/via/readme.md b/keyboards/handwired/sick68/keymaps/via/readme.md new file mode 100644 index 0000000000..f03fbedb48 --- /dev/null +++ b/keyboards/handwired/sick68/keymaps/via/readme.md @@ -0,0 +1,2 @@ +# VIA keymap for sick68 +Adds support for VIA mapping and encoder (pin F0 and F1 by default). diff --git a/keyboards/handwired/sick68/keymaps/via/rules.mk b/keyboards/handwired/sick68/keymaps/via/rules.mk new file mode 100644 index 0000000000..7225ba1fa1 --- /dev/null +++ b/keyboards/handwired/sick68/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +ENCODER_ENABLE = yes From c810d8cc1bafda075e32d7a20de021e5f7d74e41 Mon Sep 17 00:00:00 2001 From: xiao <307671+xia0@users.noreply.github.com> Date: Mon, 7 Mar 2022 17:23:41 +1030 Subject: [PATCH 018/699] [Keyboard] Update Wakizashi 40 config and readme (#16505) --- keyboards/handwired/wakizashi40/info.json | 10 +++++----- keyboards/handwired/wakizashi40/readme.md | 12 +++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/keyboards/handwired/wakizashi40/info.json b/keyboards/handwired/wakizashi40/info.json index b64ab55116..eed6dd9417 100644 --- a/keyboards/handwired/wakizashi40/info.json +++ b/keyboards/handwired/wakizashi40/info.json @@ -1,9 +1,9 @@ { - "manufacturer": "fumbucker", + "manufacturer": "xia0", "keyboard_name": "Wakizashi 40", - "maintainer": "fumbucker", + "maintainer": "xia0", "debounce": 5, - "processor": "at90usb1286", + "processor": "atmega32u4", "diode_direction": "COL2ROW", "features": { "audio": false, @@ -20,8 +20,8 @@ "unicode": false }, "matrix_pins": { - "cols": ["C5", "C4", "D2", "D3", "D4", "D5", "C6", "D7", "B0", "B1", "B2", "B3", "B4"], - "rows": ["C0", "C1", "C2", "C3"] + "cols": ["F4", "F6", "F7", "B1", "B3", "B2", "B6", "B5", "B4", "E6", "D7", "C6", "D4"], + "rows": ["D3", "D2", "D1", "D0"] }, "usb": { "device_ver": "0x0001", diff --git a/keyboards/handwired/wakizashi40/readme.md b/keyboards/handwired/wakizashi40/readme.md index d94a75651c..8bb6c2aebc 100644 --- a/keyboards/handwired/wakizashi40/readme.md +++ b/keyboards/handwired/wakizashi40/readme.md @@ -1,12 +1,12 @@ # Wakizashi 40 -![Wakizashi40](https://cdn.thingiverse.com/renders/51/50/81/13/a9/7078248666f70b422127c6662cf79563_preview_featured.jpg) +![Wakizashi40](https://i.imgur.com/TVTfa0X.jpg) Reverse stagger 40% keyboard based on the Katana 60. -* Keyboard Maintainer: [fumbucker](https://github.com/xia0) -* Hardware Supported: Teensy2++ -* Hardware Availability: [thingiverse](https://www.thingiverse.com/thing:3467930) +* Keyboard Maintainer: [xia0](https://github.com/xia0) +* Hardware Supported: ATmega32u4 +* Hardware Availability: [prusaprinters.org](https://www.prusaprinters.org/prints/128575-wakizashi-40-keyboard) Make example for this keyboard (after setting up your build environment): @@ -16,4 +16,6 @@ See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) ## Bootloader -* **Keycode in layout**: Press the key mapped to `RESET` if it is available (Capslock + R). +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available From bbd47fcaa258422caeb3ad5dca7cb3cce3b539ed Mon Sep 17 00:00:00 2001 From: fOmey Date: Mon, 7 Mar 2022 17:55:56 +1100 Subject: [PATCH 019/699] [Keyboard] Atlantis ak81_ve encoder behaviour enhancement & fixes (#16503) --- keyboards/atlantis/ak81_ve/ak81_ve.c | 31 +++++++++++++++++++++++----- keyboards/atlantis/ak81_ve/ak81_ve.h | 1 - keyboards/atlantis/ak81_ve/config.h | 8 +++---- 3 files changed, 30 insertions(+), 10 deletions(-) diff --git a/keyboards/atlantis/ak81_ve/ak81_ve.c b/keyboards/atlantis/ak81_ve/ak81_ve.c index fcf279ed46..2426d70fe8 100644 --- a/keyboards/atlantis/ak81_ve/ak81_ve.c +++ b/keyboards/atlantis/ak81_ve/ak81_ve.c @@ -40,8 +40,8 @@ led_config_t g_led_config = { { 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 8, - 4, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, - 4, 4, 4, 1, 1, 4, 1, 1, 1, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 } }; #endif @@ -52,9 +52,30 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { return false; } if (clockwise) { - tap_code(KC_VOLD); - } else { - tap_code(KC_VOLU); + switch (get_highest_layer(layer_state)) { + case 0: + tap_code(KC_VOLU); + break; + case 1: + rgb_matrix_step(); + break; + default: + tap_code(KC_VOLU); + break; + } + } + else { + switch (get_highest_layer(layer_state)) { + case 0: + tap_code(KC_VOLD); + break; + case 1: + rgb_matrix_step_reverse(); + break; + default: + tap_code(KC_VOLD); + break; + } } return true; } diff --git a/keyboards/atlantis/ak81_ve/ak81_ve.h b/keyboards/atlantis/ak81_ve/ak81_ve.h index c43f477c0a..d295320689 100644 --- a/keyboards/atlantis/ak81_ve/ak81_ve.h +++ b/keyboards/atlantis/ak81_ve/ak81_ve.h @@ -16,7 +16,6 @@ #pragma once #include "quantum.h" -#include "encoder_actions.h" #define LAYOUT( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K010, K011, K012, K013, K014, \ diff --git a/keyboards/atlantis/ak81_ve/config.h b/keyboards/atlantis/ak81_ve/config.h index 44507c47f7..1b6050f9ac 100644 --- a/keyboards/atlantis/ak81_ve/config.h +++ b/keyboards/atlantis/ak81_ve/config.h @@ -35,12 +35,12 @@ #define UNUSED_PINS /* Encoder pins */ -#define ENCODERS_PAD_A { B0 } -#define ENCODERS_PAD_B { E6 } +#define ENCODERS_PAD_A { E6 } +#define ENCODERS_PAD_B { B0 } #define ENCODER_RESOLUTION 4 #define ENCODERS 1 -#define ENCODERS_CCW_KEY { { 3, 5 } } // Note: array is { col, row ) -#define ENCODERS_CW_KEY { { 4, 5 } } // Note: array is { col, row ) +#define ENCODERS_CCW_KEY { { 4, 5 } } // Note: array is { col, row ) +#define ENCODERS_CW_KEY { { 3, 5 } } // Note: array is { col, row ) /* LED pins */ #define LED_CAPS_LOCK_PIN D4 From 2d8266bd7b896a7e9c3f971d4b8ed5be274c7951 Mon Sep 17 00:00:00 2001 From: Koobaczech <67293963+Koobaczech@users.noreply.github.com> Date: Mon, 7 Mar 2022 01:58:06 -0500 Subject: [PATCH 020/699] [Keyboard] Tidy Up pearlboards (#16497) --- keyboards/pearlboards/pandora/rules.mk | 12 +++++----- keyboards/pearlboards/zeus/rules.mk | 8 +++---- .../zeuspad/keymaps/default/keymap.c | 24 +++++++++---------- .../pearlboards/zeuspad/keymaps/via/keymap.c | 24 +++++++++---------- keyboards/pearlboards/zeuspad/rules.mk | 8 +++---- 5 files changed, 38 insertions(+), 38 deletions(-) diff --git a/keyboards/pearlboards/pandora/rules.mk b/keyboards/pearlboards/pandora/rules.mk index 04aacf572b..e0d88f1d85 100644 --- a/keyboards/pearlboards/pandora/rules.mk +++ b/keyboards/pearlboards/pandora/rules.mk @@ -10,13 +10,13 @@ BOOTLOADER = atmel-dfu BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -DIP_SWITCH_ENABLE = yes -ENCODER_ENABLE = yes +DIP_SWITCH_ENABLE = yes # Enable dip switches +ENCODER_ENABLE = yes # Rotary encoder -LTO_ENABLE = yes +LTO_ENABLE = yes # Link time optimization diff --git a/keyboards/pearlboards/zeus/rules.mk b/keyboards/pearlboards/zeus/rules.mk index b75d687546..556a5e9df9 100644 --- a/keyboards/pearlboards/zeus/rules.mk +++ b/keyboards/pearlboards/zeus/rules.mk @@ -16,8 +16,8 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = yes # Audio output -ENCODER_ENABLE = yes -HAPTIC_ENABLE = yes -HAPTIC_DRIVER = DRV2605L +ENCODER_ENABLE = yes # Rotary encoder +HAPTIC_ENABLE = yes # Rumble feefback +HAPTIC_DRIVER = DRV2605L # Rumble motor -LTO_ENABLE = yes +LTO_ENABLE = yes # Link time optimization diff --git a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c index 3faa703484..71a33c4545 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c @@ -19,18 +19,18 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - KC_ESC, KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE, - KC_NLCK, KC_PSLS, KC_PAST, MO(1), - KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_P0, KC_PDOT, KC_PENT), + LT(1, KC_ESC), KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_P0, KC_PDOT, KC_PENT), [1] = LAYOUT_all( - RESET, KC_LCTL, KC_LALT, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_HUI, KC_PMNS, - KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_P0, KC_PDOT, KC_PENT) + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RESET, RGB_TOG, RGB_MOD, RGB_HUI, + 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) }; diff --git a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c index a0c6b0c69f..5c99ae2acc 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c @@ -19,20 +19,20 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - KC_ESC, RGB_TOG, RGB_MOD, KC_MEDIA_PLAY_PAUSE, - KC_NLCK, KC_PSLS, KC_PAST, MO(1), - KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_P0, KC_PDOT, KC_PENT), + LT(1, KC_ESC), RGB_TOG, RGB_MOD, KC_MEDIA_PLAY_PAUSE, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_P0, KC_PDOT, KC_PENT), [1] = LAYOUT_all( - RESET, KC_LCTL, KC_LALT, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_HUI, KC_PMNS, - KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_P0, KC_PDOT, KC_PENT), + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RESET, RGB_TOG, RGB_MOD, RGB_HUI, + 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), [2] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/zeuspad/rules.mk b/keyboards/pearlboards/zeuspad/rules.mk index 0299b99a2f..b76fe206a1 100644 --- a/keyboards/pearlboards/zeuspad/rules.mk +++ b/keyboards/pearlboards/zeuspad/rules.mk @@ -16,8 +16,8 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes -OLED_ENABLE = yes -OLED_DRIVER = SSD1306 +ENCODER_ENABLE = yes # Rotary encoder +OLED_ENABLE = yes # Enable oled +OLED_DRIVER = SSD1306 # Oled type -LTO_ENABLE = yes +LTO_ENABLE = yes # Link time optimization From b26217414c8bd421d2d0e6edd161c6e7ea0bc1be Mon Sep 17 00:00:00 2001 From: Koobaczech <67293963+Koobaczech@users.noreply.github.com> Date: Mon, 7 Mar 2022 01:58:38 -0500 Subject: [PATCH 021/699] [Keyboard] Delete duplicate pandora directory (#16496) --- keyboards/pandora/config.h | 83 ---------------------- keyboards/pandora/info.json | 10 --- keyboards/pandora/keymaps/default/keymap.c | 43 ----------- keyboards/pandora/keymaps/via/keymap.c | 58 --------------- keyboards/pandora/keymaps/via/rules.mk | 1 - keyboards/pandora/pandora.c | 17 ----- keyboards/pandora/pandora.h | 38 ---------- keyboards/pandora/readme.md | 21 ------ keyboards/pandora/rules.mk | 21 ------ 9 files changed, 292 deletions(-) delete mode 100644 keyboards/pandora/config.h delete mode 100644 keyboards/pandora/info.json delete mode 100644 keyboards/pandora/keymaps/default/keymap.c delete mode 100644 keyboards/pandora/keymaps/via/keymap.c delete mode 100644 keyboards/pandora/keymaps/via/rules.mk delete mode 100644 keyboards/pandora/pandora.c delete mode 100644 keyboards/pandora/pandora.h delete mode 100644 keyboards/pandora/readme.md delete mode 100644 keyboards/pandora/rules.mk diff --git a/keyboards/pandora/config.h b/keyboards/pandora/config.h deleted file mode 100644 index 3a44129c49..0000000000 --- a/keyboards/pandora/config.h +++ /dev/null @@ -1,83 +0,0 @@ -/* -Copyright 2020 Koobaczech - -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 . -*/ - -#pragma once - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6963 -#define PRODUCT_ID 0x6963 -#define DEVICE_VER 0x0002 -#define MANUFACTURER Koobaczech -#define PRODUCT Pandora - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 15 - -/* - * 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 { B4, D7, D6, B3, B0 } -#define MATRIX_COL_PINS { D2, D1, D0, D3, D5, B5, B6, B7, D4, C6, C7, F0, F1, F4, F7 } -#define UNUSED_PINS - -/* COL2ROW, ROW2COL*/ -#define DIODE_DIRECTION COL2ROW - -#define LED_CAPS_LOCK_PIN E6 -#define LED_PIN_ON_STATE 0 - -/* Encoder Function */ -#define ENCODERS_PAD_A { F6 } -#define ENCODERS_PAD_B { F5 } -//#define ENCODER_DIRECTION_FLIP -#define ENCODER_RESOLUTION 1 -#define DIP_SWITCH_PINS { B2, B5 } - -//#define BACKLIGHT_PIN -//#define BACKLIGHT_LEVELS 5 -// #define BACKLIGHT_BREATHING - -/*== all animations enabled ==*/ -/* If RGBLIGHT_SLEEP defined, the RGB lighting will be switched off when the host goes to sleep */ -#define RGB_DI_PIN B1 -#ifdef RGB_DI_PIN -# define RGBLIGHT_ANIMATIONS -# define RGBLED_NUM 12 -# define RGBLIGHT_HUE_STEP 8 -# define RGBLIGHT_SAT_STEP 8 -# define RGBLIGHT_VAL_STEP 8 -# define RGBLIGHT_SLEEP -#endif - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 0 - -/* 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 diff --git a/keyboards/pandora/info.json b/keyboards/pandora/info.json deleted file mode 100644 index ed84808c5d..0000000000 --- a/keyboards/pandora/info.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "keyboard_name": "Pandora", - "url": "", - "maintainer": "Koobaczech", - "layouts": { - "LAYOUT": { - "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"0,10", "x":10, "y":0}, {"label":"0,11", "x":11, "y":0}, {"label":"0,12", "x":12, "y":0}, {"label":"0,13", "x":13, "y":0}, {"label":"0,14", "x":14, "y":0}, {"label":"1,0", "x":0, "y":1, "w":1.5}, {"label":"1,1", "x":1.5, "y":1}, {"label":"1,2", "x":2.5, "y":1}, {"label":"1,3", "x":3.5, "y":1}, {"label":"1,4", "x":4.5, "y":1}, {"label":"1,5", "x":5.5, "y":1}, {"label":"1,6", "x":6.5, "y":1}, {"label":"1,7", "x":7.5, "y":1}, {"label":"1,8", "x":8.5, "y":1}, {"label":"1,9", "x":9.5, "y":1}, {"label":"1,10", "x":10.5, "y":1}, {"label":"1,11", "x":11.5, "y":1}, {"label":"1,12", "x":12.5, "y":1}, {"label":"1,13", "x":13.5, "y":1, "w":1.5}, {"label":"2,0", "x":0, "y":2, "w":1.75}, {"label":"2,1", "x":1.75, "y":2}, {"label":"2,2", "x":2.75, "y":2}, {"label":"2,3", "x":3.75, "y":2}, {"label":"2,4", "x":4.75, "y":2}, {"label":"2,5", "x":5.75, "y":2}, {"label":"2,6", "x":6.75, "y":2}, {"label":"2,7", "x":7.75, "y":2}, {"label":"2,8", "x":8.75, "y":2}, {"label":"2,9", "x":9.75, "y":2}, {"label":"2,10", "x":10.75, "y":2}, {"label":"2,11", "x":11.75, "y":2}, {"label":"2,12", "x":12.75, "y":2}, {"label":"2,13", "x":13.75, "y":2, "w":1.25}, {"label":"3,0", "x":0, "y":3, "w":1.25}, {"label":"3,1", "x":1.25, "y":3}, {"label":"3,2", "x":2.25, "y":3}, {"label":"3,3", "x":3.25, "y":3}, {"label":"3,4", "x":4.25, "y":3}, {"label":"3,5", "x":5.25, "y":3}, {"label":"3,6", "x":6.25, "y":3}, {"label":"3,7", "x":7.25, "y":3}, {"label":"3,8", "x":8.25, "y":3}, {"label":"3,9", "x":9.25, "y":3}, {"label":"3,10", "x":10.25, "y":3}, {"label":"3,11", "x":11.25, "y":3}, {"label":"3,12", "x":12.25, "y":3, "w":1.75}, {"label":"3,13", "x":14, "y":3}, {"label":"4,0", "x":0, "y":4, "w":1.25}, {"label":"4,1", "x":1.25, "y":4, "w":1.25}, {"label":"4,2", "x":2.5, "y":4, "w":1.25}, {"label":"4,6", "x":3.75, "y":4, "w":6.25}, {"label":"4,10", "x":10, "y":4, "w":1.25}, {"label":"4,11", "x":11.25, "y":4, "w":1.25}, {"label":"4,12", "x":12.5, "y":4, "w":1.25}, {"label":"4,13", "x":13.75, "y":4, "w":1.25}] - } - } -} diff --git a/keyboards/pandora/keymaps/default/keymap.c b/keyboards/pandora/keymaps/default/keymap.c deleted file mode 100644 index 1878f078ce..0000000000 --- a/keyboards/pandora/keymaps/default/keymap.c +++ /dev/null @@ -1,43 +0,0 @@ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( - KC_GESC, 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_DEL, 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, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), - - [1] = LAYOUT_all( - KC_GRV, 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_DEL, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) -}; - -// Encoder rotate function -bool encoder_update_user(uint8_t index, bool clockwise) { - /* First encoder */ - if (index == 0) { - if (clockwise) { - tap_code(KC_AUDIO_VOL_UP); - } else { - tap_code(KC_AUDIO_VOL_DOWN); - } - } - return true; -} - -// Encoder click function -bool dip_switch_update_user(uint8_t index, bool active) { - switch (index) { - /* First encoder */ - case 0: - if (active) { - tap_code(KC_MUTE); - } - break; - } - return true; -} diff --git a/keyboards/pandora/keymaps/via/keymap.c b/keyboards/pandora/keymaps/via/keymap.c deleted file mode 100644 index eb2007447b..0000000000 --- a/keyboards/pandora/keymaps/via/keymap.c +++ /dev/null @@ -1,58 +0,0 @@ -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [0] = LAYOUT_all( - KC_GESC, 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_DEL, 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, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), - - [1] = LAYOUT_all( - KC_GRV, 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_DEL, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - - [2] = LAYOUT_all( - 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, 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, KC_TRNS), - - [3] = LAYOUT_all( - 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, 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, KC_TRNS) -}; - -// Encoder rotate function -bool encoder_update_user(uint8_t index, bool clockwise) { - /* First encoder */ - if (index == 0) { - if (clockwise) { - tap_code(KC_AUDIO_VOL_UP); - } else { - tap_code(KC_AUDIO_VOL_DOWN); - } - } - return true; -} - -// Encoder click function -bool dip_switch_update_user(uint8_t index, bool active) { - switch (index) { - /* First encoder */ - case 0: - if (active) { - tap_code(KC_MUTE); - } - break; - } - return true; -} diff --git a/keyboards/pandora/keymaps/via/rules.mk b/keyboards/pandora/keymaps/via/rules.mk deleted file mode 100644 index 1e5b99807c..0000000000 --- a/keyboards/pandora/keymaps/via/rules.mk +++ /dev/null @@ -1 +0,0 @@ -VIA_ENABLE = yes diff --git a/keyboards/pandora/pandora.c b/keyboards/pandora/pandora.c deleted file mode 100644 index 3d166646b8..0000000000 --- a/keyboards/pandora/pandora.c +++ /dev/null @@ -1,17 +0,0 @@ -/* Copyright 2020 Koobaczech - * - * 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 . - */ - -#include "pandora.h" diff --git a/keyboards/pandora/pandora.h b/keyboards/pandora/pandora.h deleted file mode 100644 index d73ae84473..0000000000 --- a/keyboards/pandora/pandora.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 Koobaczech - * - * 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 . - */ - -/* - * This layout covers all of the possible build layouts. Also, any - * built layouts will work without having to change anything. -*/ - -#pragma once - -#include "quantum.h" - -#define LAYOUT_all( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, \ - 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, k2d, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \ - k40, k41, k42, k46, k4a, k4b, k4c, k4d \ -) { \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, KC_NO }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, KC_NO }, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, KC_NO }, \ - { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4a, k4b, k4c, k4d, KC_NO } \ -} diff --git a/keyboards/pandora/readme.md b/keyboards/pandora/readme.md deleted file mode 100644 index 4870c9981c..0000000000 --- a/keyboards/pandora/readme.md +++ /dev/null @@ -1,21 +0,0 @@ -# Pandora - -![Pandora](https://i.imgur.com/fQRmwfO.jpg) - -Pandora is an ultra premium 60 percent keyboard. The construction uses 6063 alu, -pvd coated brass/stainless steel and dyed polycarbonate. The finishes include -e-coating, anodizing, micro arc anodization, metal polish and fine beadblasting. -Layouts are limited to a few ANSI variations such as tsangan/wkl and ISO. The -keyboard also has a usb-c daugtherboard, an integrated usb hub and rotary -encoder. The case has indicator lights for caps and is gasket mounted. The pcb -is designed by me in house and has some super cool tricks up its sleeve as well. - -* Keyboard Maintainer: Koobaczech -* Hardware Supported: Pandora -* Availability: Link to come - -Make example for this keyboard (after setting up your build environment): - - make pandora:default - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/pandora/rules.mk b/keyboards/pandora/rules.mk deleted file mode 100644 index 6ee43455f1..0000000000 --- a/keyboards/pandora/rules.mk +++ /dev/null @@ -1,21 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = yes # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output -DIP_SWITCH_ENABLE = yes -ENCODER_ENABLE = yes -OLED_ENABLE = no # Future release From 9dea8a7d86970570022030f3a99023b0f2ba291c Mon Sep 17 00:00:00 2001 From: jels <66403163+Jels02@users.noreply.github.com> Date: Mon, 7 Mar 2022 16:59:30 +1000 Subject: [PATCH 022/699] [Keyboard] Update Jels88 (#16486) --- keyboards/jels/jels88/info.json | 189 ++++++++++++++++++++++++++++++++ keyboards/jels/jels88/jels88.h | 6 +- keyboards/jels/jels88/readme.md | 2 +- 3 files changed, 193 insertions(+), 4 deletions(-) diff --git a/keyboards/jels/jels88/info.json b/keyboards/jels/jels88/info.json index 96a740a9fd..827e911494 100644 --- a/keyboards/jels/jels88/info.json +++ b/keyboards/jels/jels88/info.json @@ -97,6 +97,195 @@ { "label": "\u2193", "x": 16.25, "y": 5.25 }, { "label": "\u2192", "x": 17.25, "y": 5.25 } ] + }, + "LAYOUT_ansi": { + "layout": [ + { "label": "Esc", "x": 0, "y": 0 }, + { "label": "F1", "x": 1.25, "y": 0 }, + { "label": "F2", "x": 2.25, "y": 0 }, + { "label": "F3", "x": 3.25, "y": 0 }, + { "label": "F4", "x": 4.25, "y": 0 }, + { "label": "F5", "x": 5.5, "y": 0 }, + { "label": "F6", "x": 6.5, "y": 0 }, + { "label": "F7", "x": 7.5, "y": 0 }, + { "label": "F8", "x": 8.5, "y": 0 }, + { "label": "F9", "x": 9.75, "y": 0 }, + { "label": "F10", "x": 10.75, "y": 0 }, + { "label": "F11", "x": 11.75, "y": 0 }, + { "label": "F12", "x": 12.75, "y": 0 }, + { "label": "F13", "x": 14, "y": 0 }, + { "label": "PrtSc", "x": 15.25, "y": 0 }, + { "label": "Scroll Lock", "x": 16.25, "y": 0 }, + { "label": "Pause", "x": 17.25, "y": 0 }, + { "label": "~", "x": 0, "y": 1.25 }, + { "label": "!", "x": 1, "y": 1.25 }, + { "label": "@", "x": 2, "y": 1.25 }, + { "label": "#", "x": 3, "y": 1.25 }, + { "label": "$", "x": 4, "y": 1.25 }, + { "label": "%", "x": 5, "y": 1.25 }, + { "label": "^", "x": 6, "y": 1.25 }, + { "label": "&", "x": 7, "y": 1.25 }, + { "label": "*", "x": 8, "y": 1.25 }, + { "label": "(", "x": 9, "y": 1.25 }, + { "label": ")", "x": 10, "y": 1.25 }, + { "label": "_", "x": 11, "y": 1.25 }, + { "label": "+", "x": 12, "y": 1.25 }, + { "label": "Bksp", "x": 13, "y": 1.25 }, + { "label": "~", "x": 14, "y": 1.25 }, + { "label": "Insert", "x": 15.25, "y": 1.25 }, + { "label": "Home", "x": 16.25, "y": 1.25 }, + { "label": "PgUp", "x": 17.25, "y": 1.25 }, + { "label": "Tab", "x": 0, "y": 2.25, "w": 1.5 }, + { "label": "Q", "x": 1.5, "y": 2.25 }, + { "label": "W", "x": 2.5, "y": 2.25 }, + { "label": "E", "x": 3.5, "y": 2.25 }, + { "label": "R", "x": 4.5, "y": 2.25 }, + { "label": "T", "x": 5.5, "y": 2.25 }, + { "label": "Y", "x": 6.5, "y": 2.25 }, + { "label": "U", "x": 7.5, "y": 2.25 }, + { "label": "I", "x": 8.5, "y": 2.25 }, + { "label": "O", "x": 9.5, "y": 2.25 }, + { "label": "P", "x": 10.5, "y": 2.25 }, + { "label": "{", "x": 11.5, "y": 2.25 }, + { "label": "}", "x": 12.5, "y": 2.25 }, + { "label": "|", "x": 13.5, "y": 2.25, "w": 1.5 }, + { "label": "Delete", "x": 15.25, "y": 2.25 }, + { "label": "End", "x": 16.25, "y": 2.25 }, + { "label": "PgDn", "x": 17.25, "y": 2.25 }, + { "label": "Caps Lock", "x": 0, "y": 3.25, "w": 1.75 }, + { "label": "A", "x": 1.75, "y": 3.25 }, + { "label": "S", "x": 2.75, "y": 3.25 }, + { "label": "D", "x": 3.75, "y": 3.25 }, + { "label": "F", "x": 4.75, "y": 3.25 }, + { "label": "G", "x": 5.75, "y": 3.25 }, + { "label": "H", "x": 6.75, "y": 3.25 }, + { "label": "J", "x": 7.75, "y": 3.25 }, + { "label": "K", "x": 8.75, "y": 3.25 }, + { "label": "L", "x": 9.75, "y": 3.25 }, + { "label": ":", "x": 10.75, "y": 3.25 }, + { "label": "\"", "x": 11.75, "y": 3.25 }, + { "label": "Enter", "x": 12.75, "y": 3.25, "w": 2.25 }, + { "label": "Shift", "x": 0, "y": 4.25, "w": 2.25 }, + { "label": "Z", "x": 2.25, "y": 4.25 }, + { "label": "X", "x": 3.25, "y": 4.25 }, + { "label": "C", "x": 4.25, "y": 4.25 }, + { "label": "V", "x": 5.25, "y": 4.25 }, + { "label": "B", "x": 6.25, "y": 4.25 }, + { "label": "N", "x": 7.25, "y": 4.25 }, + { "label": "M", "x": 8.25, "y": 4.25 }, + { "label": "<", "x": 9.25, "y": 4.25 }, + { "label": ">", "x": 10.25, "y": 4.25 }, + { "label": "?", "x": 11.25, "y": 4.25 }, + { "label": "Shift", "x": 12.25, "y": 4.25, "w": 1.75 }, + { "x": 14, "y": 4.25 }, + { "label": "\u2191", "x": 16.25, "y": 4.25 }, + { "label": "Ctrl", "x": 0, "y": 5.25, "w": 1.25 }, + { "label": "Win", "x": 1.25, "y": 5.25, "w": 1.25 }, + { "label": "Alt", "x": 2.5, "y": 5.25, "w": 1.25 }, + { "x": 3.75, "y": 5.25, "w": 6.25 }, + { "label": "Alt", "x": 10, "y": 5.25, "w": 1.25 }, + { "label": "Win", "x": 11.25, "y": 5.25, "w": 1.25 }, + { "label": "Menu", "x": 12.5, "y": 5.25, "w": 1.25 }, + { "label": "Ctrl", "x": 13.75, "y": 5.25, "w": 1.25 }, + { "label": "\u2190", "x": 15.25, "y": 5.25 }, + { "label": "\u2193", "x": 16.25, "y": 5.25 }, + { "label": "\u2192", "x": 17.25, "y": 5.25 } + ] + }, + "LAYOUT_iso": { + "layout": [ + { "label": "Esc", "x": 0, "y": 0 }, + { "label": "F1", "x": 1.25, "y": 0 }, + { "label": "F2", "x": 2.25, "y": 0 }, + { "label": "F3", "x": 3.25, "y": 0 }, + { "label": "F4", "x": 4.25, "y": 0 }, + { "label": "F5", "x": 5.5, "y": 0 }, + { "label": "F6", "x": 6.5, "y": 0 }, + { "label": "F7", "x": 7.5, "y": 0 }, + { "label": "F8", "x": 8.5, "y": 0 }, + { "label": "F9", "x": 9.75, "y": 0 }, + { "label": "F10", "x": 10.75, "y": 0 }, + { "label": "F11", "x": 11.75, "y": 0 }, + { "label": "F12", "x": 12.75, "y": 0 }, + { "label": "F13", "x": 14, "y": 0 }, + { "label": "PrtSc", "x": 15.25, "y": 0 }, + { "label": "Scroll Lock", "x": 16.25, "y": 0 }, + { "label": "Pause", "x": 17.25, "y": 0 }, + { "label": "~", "x": 0, "y": 1.25 }, + { "label": "!", "x": 1, "y": 1.25 }, + { "label": "@", "x": 2, "y": 1.25 }, + { "label": "#", "x": 3, "y": 1.25 }, + { "label": "$", "x": 4, "y": 1.25 }, + { "label": "%", "x": 5, "y": 1.25 }, + { "label": "^", "x": 6, "y": 1.25 }, + { "label": "&", "x": 7, "y": 1.25 }, + { "label": "*", "x": 8, "y": 1.25 }, + { "label": "(", "x": 9, "y": 1.25 }, + { "label": ")", "x": 10, "y": 1.25 }, + { "label": "_", "x": 11, "y": 1.25 }, + { "label": "+", "x": 12, "y": 1.25 }, + { "label": "Bksp", "x": 13, "y": 1.25 }, + { "label": "~", "x": 14, "y": 1.25 }, + { "label": "Insert", "x": 15.25, "y": 1.25 }, + { "label": "Home", "x": 16.25, "y": 1.25 }, + { "label": "PgUp", "x": 17.25, "y": 1.25 }, + { "label": "Tab", "x": 0, "y": 2.25, "w": 1.5 }, + { "label": "Q", "x": 1.5, "y": 2.25 }, + { "label": "W", "x": 2.5, "y": 2.25 }, + { "label": "E", "x": 3.5, "y": 2.25 }, + { "label": "R", "x": 4.5, "y": 2.25 }, + { "label": "T", "x": 5.5, "y": 2.25 }, + { "label": "Y", "x": 6.5, "y": 2.25 }, + { "label": "U", "x": 7.5, "y": 2.25 }, + { "label": "I", "x": 8.5, "y": 2.25 }, + { "label": "O", "x": 9.5, "y": 2.25 }, + { "label": "P", "x": 10.5, "y": 2.25 }, + { "label": "{", "x": 11.5, "y": 2.25 }, + { "label": "}", "x": 12.5, "y": 2.25 }, + { "label": "Enter", "x": 13.75, "y": 2.25, "w": 1.25, "h":2 }, + { "label": "Delete", "x": 15.25, "y": 2.25 }, + { "label": "End", "x": 16.25, "y": 2.25 }, + { "label": "PgDn", "x": 17.25, "y": 2.25 }, + { "label": "Caps Lock", "x": 0, "y": 3.25, "w": 1.75 }, + { "label": "A", "x": 1.75, "y": 3.25 }, + { "label": "S", "x": 2.75, "y": 3.25 }, + { "label": "D", "x": 3.75, "y": 3.25 }, + { "label": "F", "x": 4.75, "y": 3.25 }, + { "label": "G", "x": 5.75, "y": 3.25 }, + { "label": "H", "x": 6.75, "y": 3.25 }, + { "label": "J", "x": 7.75, "y": 3.25 }, + { "label": "K", "x": 8.75, "y": 3.25 }, + { "label": "L", "x": 9.75, "y": 3.25 }, + { "label": ":", "x": 10.75, "y": 3.25 }, + { "label": "\"", "x": 11.75, "y": 3.25 }, + { "label": "|", "x": 12.75, "y": 3.25, "w": 1 }, + { "label": "Shift", "x": 0, "y": 4.25, "w": 1.25 }, + { "label": "|", "x": 1.25, "y": 4.25 }, + { "label": "Z", "x": 2.25, "y": 4.25 }, + { "label": "X", "x": 3.25, "y": 4.25 }, + { "label": "C", "x": 4.25, "y": 4.25 }, + { "label": "V", "x": 5.25, "y": 4.25 }, + { "label": "B", "x": 6.25, "y": 4.25 }, + { "label": "N", "x": 7.25, "y": 4.25 }, + { "label": "M", "x": 8.25, "y": 4.25 }, + { "label": "<", "x": 9.25, "y": 4.25 }, + { "label": ">", "x": 10.25, "y": 4.25 }, + { "label": "?", "x": 11.25, "y": 4.25 }, + { "label": "Shift", "x": 12.25, "y": 4.25, "w": 1.75 }, + { "x": 14, "y": 4.25 }, + { "label": "\u2191", "x": 16.25, "y": 4.25 }, + { "label": "Ctrl", "x": 0, "y": 5.25, "w": 1.25 }, + { "label": "Win", "x": 1.25, "y": 5.25, "w": 1.25 }, + { "label": "Alt", "x": 2.5, "y": 5.25, "w": 1.25 }, + { "x": 3.75, "y": 5.25, "w": 6.25 }, + { "label": "Alt", "x": 10, "y": 5.25, "w": 1.25 }, + { "label": "Win", "x": 11.25, "y": 5.25, "w": 1.25 }, + { "label": "Menu", "x": 12.5, "y": 5.25, "w": 1.25 }, + { "label": "Ctrl", "x": 13.75, "y": 5.25, "w": 1.25 }, + { "label": "\u2190", "x": 15.25, "y": 5.25 }, + { "label": "\u2193", "x": 16.25, "y": 5.25 }, + { "label": "\u2192", "x": 17.25, "y": 5.25 } + ] } } } diff --git a/keyboards/jels/jels88/jels88.h b/keyboards/jels/jels88/jels88.h index 8314d0d2e0..2a7f870772 100644 --- a/keyboards/jels/jels88/jels88.h +++ b/keyboards/jels/jels88/jels88.h @@ -48,7 +48,7 @@ K1A0, K1A1, K1B1, K1B2, K1A2, K1A3, K1B3, K1B4, K1A4, K1A5, K1B5, K1B6, K1A6, K1A7, K2B7, K2A7, K2A8, K1A8, \ K2B0, K2B1, K2A1, K2A2, K2B2, K2B3, K2A3, K2A4, K2B4, K2B5, K2A5, K2A6, K2B6, K3A7, K1B7, K1B8, K2B8, \ K3A0, K3A1, K3B1, K3B2, K3A2, K3A3, K3B3, K3B4, K3A4, K3A5, K3B5, K3B6, K3A6, \ - K4B0, K4A1, K4A2, K4B2, K4B3, K4A3, K4A4, K4B4, K4B5, K4A5, K4A6, K4B6, K4B7, K4A7, \ + K4B0, K4A1, K4A2, K4B2, K4B3, K4A3, K4A4, K4B4, K4B5, K4A5, K4A6, K4B6, K4B7, K4A7, \ K5A0, K5A1, K5B1, K5B3, K5A5, K5A6, K5B6, K5B7, K5A7, K5A8, K4A8 \ ){ \ {____, K0A1, K0A2, K0A3, K0A4, K0A5, K0A6, K0A7, K0A8}, \ @@ -71,7 +71,7 @@ K1A0, K1A1, K1B1, K1B2, K1A2, K1A3, K1B3, K1B4, K1A4, K1A5, K1B5, K1B6, K1A6, K1A7, K3A7, K2A7, K2A8, K1A8, \ K2B0, K2B1, K2A1, K2A2, K2B2, K2B3, K2A3, K2A4, K2B4, K2B5, K2A5, K2A6, K2B6, K2B7, K1B7, K1B8, K2B8, \ K3A0, K3A1, K3B1, K3B2, K3A2, K3A3, K3B3, K3B4, K3A4, K3A5, K3B5, K3B6, K3A6, \ - K4B0, K4A1, K4A2, K4B2, K4B3, K4A3, K4A4, K4B4, K4B5, K4A5, K4A6, K4B6, K4B7, K4A7, \ + K4B0, K4B1, K4A1, K4A2, K4B2, K4B3, K4A3, K4A4, K4B4, K4B5, K4A5, K4A6, K4B6, K4B7, K4A7, \ K5A0, K5A1, K5B1, K5B3, K5A5, K5A6, K5B6, K5B7, K5A7, K5A8, K4A8 \ ){ \ {____, K0A1, K0A2, K0A3, K0A4, K0A5, K0A6, K0A7, K0A8}, \ @@ -83,7 +83,7 @@ {K3A0, K3A1, K3A2, K3A3, K3A4, K3A5, K3A6, K3A7, ____}, \ {____, K3B1, K3B2, K3B3, K3B4, K3B5, K3B6, ____, ____}, \ {____, K4A1, K4A2, K4A3, K4A4, K4A5, K4A6, K4A7, K4A8}, \ - {K4B0, ____, K4B2, K4B3, K4B4, K4B5, K4B6, K4B7, ____}, \ + {K4B0, K4B1, K4B2, K4B3, K4B4, K4B5, K4B6, K4B7, ____}, \ {K5A0, K5A1, ____, ____, ____, K5A5, K5A6, K5A7, K5A8}, \ {____, K5B1, ____, K5B3, ____, ____, K5B6, K5B7, ____} \ } diff --git a/keyboards/jels/jels88/readme.md b/keyboards/jels/jels88/readme.md index 0ea1f4c64c..37d18dbf40 100644 --- a/keyboards/jels/jels88/readme.md +++ b/keyboards/jels/jels88/readme.md @@ -2,7 +2,7 @@ ![jels88](https://i.imgur.com/7kuYR4G.png) -* Keyboard Maintainer: [jels](https://github.com/Jels-kb) +* Keyboard Maintainer: [jels](https://github.com/Jels02) * Hardware Supported: jels88b/jels88c PCB * Hardware Availabililty: Group buys, Various dates. From 6e61126e08a2219db81ab0fc2ad6b385e2bd6098 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Mon, 7 Mar 2022 15:02:31 +0800 Subject: [PATCH 023/699] [Keyboard] BM68HSRGB/rev2 (#16454) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/kprepublic/bm68hsrgb/rev1/readme.md | 4 +- keyboards/kprepublic/bm68hsrgb/rev2/config.h | 133 ++++++++++++++++++ keyboards/kprepublic/bm68hsrgb/rev2/info.json | 83 +++++++++++ .../bm68hsrgb/rev2/keymaps/default/keymap.c | 103 ++++++++++++++ .../bm68hsrgb/rev2/keymaps/via/keymap.c | 103 ++++++++++++++ .../bm68hsrgb/rev2/keymaps/via/rules.mk | 2 + keyboards/kprepublic/bm68hsrgb/rev2/readme.md | 24 ++++ keyboards/kprepublic/bm68hsrgb/rev2/rev2.c | 124 ++++++++++++++++ keyboards/kprepublic/bm68hsrgb/rev2/rev2.h | 34 +++++ keyboards/kprepublic/bm68hsrgb/rev2/rules.mk | 21 +++ 10 files changed, 629 insertions(+), 2 deletions(-) create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/config.h create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/info.json create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/rules.mk create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/readme.md create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/rev2.c create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/rev2.h create mode 100644 keyboards/kprepublic/bm68hsrgb/rev2/rules.mk diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/readme.md b/keyboards/kprepublic/bm68hsrgb/rev1/readme.md index 54d71cab2c..d74a9659f8 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/readme.md +++ b/keyboards/kprepublic/bm68hsrgb/rev1/readme.md @@ -10,11 +10,11 @@ A 65% hotswap in switch RGB keyboard from KPRepublic. Make example for this keyboard (after setting up your build environment): - make kprepublic/bm68hsrgb:default + make kprepublic/bm68hsrgb/rev1:default Flashing example for this keyboard: - make kprepublic/bm68hsrgb:default:flash + make kprepublic/bm68hsrgb/rev1:default:flash To reset the board into bootloader mode, do one of the following: diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/config.h b/keyboards/kprepublic/bm68hsrgb/rev2/config.h new file mode 100644 index 0000000000..4faca73c0d --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/config.h @@ -0,0 +1,133 @@ + /* Copyright 2022 bdtc123 + * Copyright 2022 peepeetee + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B50 +#define PRODUCT_ID 0x1131 +#define DEVICE_VER 0x0002 +#define MANUFACTURER KP republic +#define PRODUCT bm68v2 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 +#define MATRIX_ROW_PINS { D6, D4, D5, D3, F6 } +#define MATRIX_COL_PINS { F0, F1, B0, B1, B2, B3, E6, B7, D2, D7, B4, B5, B6, C6, C7} +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION ROW2COL +#define USB_POLLING_INTERVAL_MS 1 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION +#define RGBLIGHT_LIMIT_VAL 150 +#define RGBLED_NUM 6 +#define RGB_DI_PIN E2 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 + + + +#define DRIVER_ADDR_1 0b0110000 + +#define DRIVER_COUNT 1 +#define DRIVER_1_LED_TOTAL 68 +#define DRIVER_LED_TOTAL DRIVER_1_LED_TOTAL +#define DRIVER_INDICATOR_LED_TOTAL 0 + +#ifdef RGB_MATRIX_ENABLE + +#define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects +#define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended +#define RGB_MATRIX_KEYPRESSES + +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // Limit to vendor-recommended value +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +// # define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +// # define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +// # define ENABLE_RGB_MATRIX_DUAL_BEACON +// # define ENABLE_RGB_MATRIX_RAINBOW_BEACON +// # define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +// # define ENABLE_RGB_MATRIX_RAINDROPS +// # define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +// # define ENABLE_RGB_MATRIX_HUE_BREATHING +// # define ENABLE_RGB_MATRIX_HUE_PENDULUM +// # define ENABLE_RGB_MATRIX_HUE_WAVE +// # define ENABLE_RGB_MATRIX_PIXEL_RAIN +// # define ENABLE_RGB_MATRIX_PIXEL_FLOW +// # define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif + + +#if defined(RGB_MATRIX_ENABLE) && defined(RGBLIGHT_ENABLE) + #define RGB_MATRIX_DISABLE_KEYCODES +#endif + +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/info.json b/keyboards/kprepublic/bm68hsrgb/rev2/info.json new file mode 100644 index 0000000000..23a4d4d38f --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/info.json @@ -0,0 +1,83 @@ +{ + "keyboard_name": "bm68hsrgb/rev2", + "url": "", + "maintainer": "bdtc123", + "layouts": { + "LAYOUT_65_ansi": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4}, + {"x":11, "y":4}, + {"x":12, "y":4}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + } + } +} diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c new file mode 100644 index 0000000000..e4542b553f --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c @@ -0,0 +1,103 @@ + /* Copyright 2022 bdtc123 + * + * 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 . + */ +#include QMK_KEYBOARD_H +enum my_keycodes { + RMT = SAFE_RANGE, + RMS, + RMIH, + RMDH, + RMIS, + RMDS, + RMIV, + RMDV +}; +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RMT: + if (record->event.pressed) + {rgb_matrix_toggle(); + } + return false; + case RMS: + if (record->event.pressed) + {rgb_matrix_step(); + } + return false; + case RMIH: + if (record->event.pressed) + {rgb_matrix_increase_hue(); + } + return false; + case RMDH: + if (record->event.pressed) + {rgb_matrix_decrease_hue(); + } + return false; + case RMIS: + if (record->event.pressed) + {rgb_matrix_increase_sat(); + } + return false; + case RMDS: + if (record->event.pressed) + {rgb_matrix_decrease_sat(); + } + return false; + case RMIV: + if (record->event.pressed) + {rgb_matrix_increase_val(); + } + return false; + case RMDV: + if (record->event.pressed) + {rgb_matrix_decrease_val(); + } + return true; + default: + return true; + } +} + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi( + KC_GESC, 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, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, + KC_CAPS, RMT, RMS, RMIH, RMDH, RMIS, RMDS, RMIV, RMDV, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______ + ), + [2] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c new file mode 100644 index 0000000000..02c54584c6 --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c @@ -0,0 +1,103 @@ + /* Copyright 2022 bdtc123 + * + * 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 . + */ +#include QMK_KEYBOARD_H +enum my_keycodes { + RM_TOGG = SAFE_RANGE, + RM_MOD, + RM_HUI, + RM_HUD, + RM_SAI, + RM_SAD, + RM_VAI, + RM_VAD +}; +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RM_TOGG: + if (record->event.pressed) + {rgb_matrix_toggle(); + } + return false; + case RM_MOD: + if (record->event.pressed) + {rgb_matrix_step(); + } + return false; + case RM_HUI: + if (record->event.pressed) + {rgb_matrix_increase_hue(); + } + return false; + case RM_HUD: + if (record->event.pressed) + {rgb_matrix_decrease_hue(); + } + return false; + case RM_SAI: + if (record->event.pressed) + {rgb_matrix_increase_sat(); + } + return false; + case RM_SAD: + if (record->event.pressed) + {rgb_matrix_decrease_sat(); + } + return false; + case RM_VAI: + if (record->event.pressed) + {rgb_matrix_increase_val(); + } + return false; + case RM_VAD: + if (record->event.pressed) + {rgb_matrix_decrease_val(); + } + return true; + default: + return true; + } +} + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi( + KC_GESC, 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, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, + KC_CAPS, RM_TOGG, RM_MOD, RM_HUI, RM_HUD, RM_SAI, RM_SAD, RM_VAI, RM_VAD, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______ + ), + [2] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_65_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/rules.mk b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/readme.md b/keyboards/kprepublic/bm68hsrgb/rev2/readme.md new file mode 100644 index 0000000000..ec66db99d6 --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/readme.md @@ -0,0 +1,24 @@ +# BM68HSRGB + +![BM68HSRGB](https://i.imgur.com/uuYP8OIl.jpeg) + +A 65% hotswap in switch RGB keyboard from KPRepublic. + +* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee) +* Hardware Supported: BM68HSRGB +* Hardware Availability: [KP Republic](https://kprepublic.com/products/bm68rgb-bm68-rgb-65-hot-swappable-custom-mechanical-keyboard-pcb-programmed-qmk-via-firmware-full-rgb-switch-underglow-type-c) + +Make example for this keyboard (after setting up your build environment): + + make kprepublic/bm68hsrgb/rev2:default + +Flashing example for this keyboard: + + make kprepublic/bm68hsrgb/rev2:default:flash + +To reset the board into bootloader mode, do one of the following: + +* Short the two-pad footprint to the left of the spacebar switch while the board is plugged in +* Hold the Esc key while connecting the USB cable (also erases persistent settings) + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c new file mode 100644 index 0000000000..be743cbae5 --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.c @@ -0,0 +1,124 @@ + /* Copyright 2022 bdtc123 + * + * 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 . + */ +#include "rev2.h" + +#ifdef RGB_MATRIX_ENABLE + +const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { + {0, CS6_SW1, CS5_SW1, CS4_SW1}, + {0, CS6_SW2, CS5_SW2, CS4_SW2}, + {0, CS6_SW3, CS5_SW3, CS4_SW3}, + {0, CS6_SW4, CS5_SW4, CS4_SW4}, + {0, CS6_SW5, CS5_SW5, CS4_SW5}, + {0, CS6_SW6, CS5_SW6, CS4_SW6}, + {0, CS6_SW7, CS5_SW7, CS4_SW7}, + {0, CS6_SW8, CS5_SW8, CS4_SW8}, + {0, CS18_SW1, CS17_SW1, CS16_SW1}, + {0, CS18_SW2, CS17_SW2, CS16_SW2}, + {0, CS18_SW3, CS17_SW3, CS16_SW3}, + {0, CS18_SW4, CS17_SW4, CS16_SW4}, + {0, CS18_SW5, CS17_SW5, CS16_SW5}, + {0, CS18_SW6, CS17_SW6, CS16_SW6}, + {0, CS18_SW7, CS17_SW7, CS16_SW7}, + + {0, CS9_SW1, CS8_SW1, CS7_SW1}, + {0, CS9_SW2, CS8_SW2, CS7_SW2}, + {0, CS9_SW3, CS8_SW3, CS7_SW3}, + {0, CS9_SW4, CS8_SW4, CS7_SW4}, + {0, CS9_SW5, CS8_SW5, CS7_SW5}, + {0, CS9_SW6, CS8_SW6, CS7_SW6}, + {0, CS9_SW7, CS8_SW7, CS7_SW7}, + {0, CS9_SW8, CS8_SW8, CS7_SW8}, + {0, CS21_SW1, CS20_SW1, CS19_SW1}, + {0, CS21_SW2, CS20_SW2, CS19_SW2}, + {0, CS21_SW3, CS20_SW3, CS19_SW3}, + {0, CS21_SW4, CS20_SW4, CS19_SW4}, + {0, CS21_SW5, CS20_SW5, CS19_SW5}, + {0, CS21_SW6, CS20_SW6, CS19_SW6}, + {0, CS21_SW7, CS20_SW7, CS19_SW7}, + + {0, CS12_SW1, CS11_SW1, CS10_SW1}, + {0, CS12_SW2, CS11_SW2, CS10_SW2}, + {0, CS12_SW3, CS11_SW3, CS10_SW3}, + {0, CS12_SW4, CS11_SW4, CS10_SW4}, + {0, CS12_SW5, CS11_SW5, CS10_SW5}, + {0, CS12_SW6, CS11_SW6, CS10_SW6}, + {0, CS12_SW7, CS11_SW7, CS10_SW7}, + {0, CS12_SW8, CS11_SW8, CS10_SW8}, + {0, CS24_SW1, CS23_SW1, CS22_SW1}, + {0, CS24_SW2, CS23_SW2, CS22_SW2}, + {0, CS24_SW3, CS23_SW3, CS22_SW3}, + {0, CS24_SW4, CS23_SW4, CS22_SW4}, + {0, CS24_SW6, CS23_SW6, CS22_SW6}, + {0, CS24_SW7, CS23_SW7, CS22_SW7}, + + {0, CS15_SW1, CS14_SW1, CS13_SW1}, + {0, CS15_SW3, CS14_SW3, CS13_SW3}, + {0, CS15_SW4, CS14_SW4, CS13_SW4}, + {0, CS15_SW5, CS14_SW5, CS13_SW5}, + {0, CS15_SW6, CS14_SW6, CS13_SW6}, + {0, CS15_SW7, CS14_SW7, CS13_SW7}, + {0, CS15_SW8, CS14_SW8, CS13_SW8}, + {0, CS27_SW1, CS26_SW1, CS25_SW1}, + {0, CS27_SW2, CS26_SW2, CS25_SW2}, + {0, CS27_SW3, CS26_SW3, CS25_SW3}, + {0, CS27_SW4, CS26_SW4, CS25_SW4}, + {0, CS27_SW5, CS26_SW5, CS25_SW5}, + {0, CS27_SW6, CS26_SW6, CS25_SW6}, + {0, CS27_SW7, CS26_SW7, CS25_SW7}, + + {0, CS3_SW1, CS2_SW1, CS1_SW1}, + {0, CS3_SW2, CS2_SW2, CS1_SW2}, + {0, CS3_SW3, CS2_SW3, CS1_SW3}, + {0, CS3_SW7, CS2_SW7, CS1_SW7}, + {0, CS30_SW2, CS29_SW2, CS28_SW2}, + {0, CS30_SW3, CS29_SW3, CS28_SW3}, + {0, CS30_SW4, CS29_SW4, CS28_SW4}, + {0, CS30_SW5, CS29_SW5, CS28_SW5}, + {0, CS30_SW6, CS29_SW6, CS28_SW6}, + {0, CS30_SW7, CS29_SW7, CS28_SW7} + +}; +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, + { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, + { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, NO_LED, 42, 43 }, + { 44,NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }, + { 58, 59, 60, NO_LED, NO_LED,NO_LED, 61, NO_LED, NO_LED, 62, 63, 64, 65, 66, 67 } +}, { + {0,0},{15,0},{30,0},{45,0},{60,0},{75,0},{90,0},{105,0},{120,0},{135,0},{150,0},{165,0},{180,0},{203,0},{224,0}, + {4,16},{23,16},{38,16},{53,16},{68,16},{83,16},{98,16},{113,16},{128,16},{143,16},{158,16},{173,16},{188,16},{206,16},{224,16}, + {6,32},{26,32},{41,32},{56,32},{71,32},{86,32},{101,32},{116,32},{131,32},{146,32},{161,32},{176,32},{201,32},{224,32}, + {9,48},{34,48},{49,48},{64,48},{79,48},{94,48},{109,48},{124,48},{139,48},{154,48},{169,48},{189,48},{210,48},{224,48}, + { 2, 64 }, { 21, 64 }, { 39, 64 }, { 96, 64 }, { 150, 64 }, { 165, 64 }, { 180, 64 }, { 195, 64 }, { 210, 64 }, { 224, 64 } +}, { + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 1, 4, 1, 1, 1, 1, 1, 1 +} }; + + +__attribute__ ((weak)) +void rgb_matrix_indicators_user(void) +{ + if (host_keyboard_led_state().caps_lock) + { + rgb_matrix_set_color(30, 0xFF, 0xFF, 0xFF); + } +} +#endif diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/rev2.h b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.h new file mode 100644 index 0000000000..c4cff29a77 --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/rev2.h @@ -0,0 +1,34 @@ + /* Copyright 2022 bdtc123 + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_65_ansi( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, XXX, K2D, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/rules.mk b/keyboards/kprepublic/bm68hsrgb/rev2/rules.mk new file mode 100644 index 0000000000..3520ee3229 --- /dev/null +++ b/keyboards/kprepublic/bm68hsrgb/rev2/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = IS31FL3741 +LTO_ENABLE = yes From 41fb9120d0aff73664da880871d4e168ad158ae2 Mon Sep 17 00:00:00 2001 From: takashicompany Date: Mon, 7 Mar 2022 16:02:52 +0900 Subject: [PATCH 024/699] [Keyboard] Update DogTag Macro Pad (#16446) Co-authored-by: Drashna Jaelre --- keyboards/takashicompany/dogtag/config.h | 12 +++---- keyboards/takashicompany/dogtag/dogtag.c | 28 ++++++++++++--- keyboards/takashicompany/dogtag/dogtag.h | 15 ++++---- keyboards/takashicompany/dogtag/info.json | 34 ++++++++++++++----- .../dogtag/keymaps/default/keymap.c | 8 ++--- .../dogtag/keymaps/via/config.h | 2 +- .../dogtag/keymaps/via/keymap.c | 8 ++--- keyboards/takashicompany/dogtag/rules.mk | 1 + 8 files changed, 74 insertions(+), 34 deletions(-) diff --git a/keyboards/takashicompany/dogtag/config.h b/keyboards/takashicompany/dogtag/config.h index 542a44ce62..631435092d 100644 --- a/keyboards/takashicompany/dogtag/config.h +++ b/keyboards/takashicompany/dogtag/config.h @@ -27,7 +27,7 @@ along with this program. If not, see . #define PRODUCT DogTag /* key matrix size */ -#define MATRIX_ROWS 2 * 2 +#define MATRIX_ROWS 6 #define MATRIX_COLS 5 /* @@ -40,9 +40,9 @@ along with this program. If not, see . * ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode) * */ -#define MATRIX_ROW_PINS { B2, B6 } +#define MATRIX_ROW_PINS { B2, B6, B3 } #define MATRIX_COL_PINS { F4, F5, F6, F7, B1 } -#define MATRIX_ROW_PINS_RIGHT { B2, B6 } +#define MATRIX_ROW_PINS_RIGHT { B2, B6, B3 } #define MATRIX_COL_PINS_RIGHT { B1, F7, F6, F5, F4 } #define UNUSED_PINS @@ -50,7 +50,7 @@ along with this program. If not, see . /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -#define ENCODER_RESOLUTION 1 +#define ENCODER_RESOLUTION 4 #define ENCODERS_PAD_A { D4 } #define ENCODERS_PAD_B { C6 } @@ -71,8 +71,8 @@ along with this program. If not, see . #define RGB_DI_PIN D3 #ifdef RGB_DI_PIN -# define RGBLED_NUM 3 * 2 -# define RGBLED_SPLIT {3, 3} +# define RGBLED_NUM 4 * 2 +# define RGBLED_SPLIT { 4, 4 } # define RGBLIGHT_HUE_STEP 8 # define RGBLIGHT_SAT_STEP 8 # define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/takashicompany/dogtag/dogtag.c b/keyboards/takashicompany/dogtag/dogtag.c index 459ca9d3f8..e5d0779c08 100644 --- a/keyboards/takashicompany/dogtag/dogtag.c +++ b/keyboards/takashicompany/dogtag/dogtag.c @@ -17,11 +17,31 @@ #include "dogtag.h" bool encoder_update_kb(uint8_t index, bool clockwise) { - if (!encoder_update_user(index, clockwise)) { return false; } - if (clockwise) { - tap_code(KC_MS_WH_DOWN); + keypos_t key; + if (index == 0) { + if (clockwise) { + key.row = 2; + key.col = 1; + } else { + key.row = 2; + key.col = 0; + } + uint8_t layer = layer_switch_get_layer(key); + uint16_t keycode = keymap_key_to_keycode(layer, key); + + tap_code16(keycode); } else { - tap_code(KC_MS_WH_UP); + if (clockwise) { + key.row = 5; + key.col = 0; + } else { + key.row = 5; + key.col = 1; + } + uint8_t layer = layer_switch_get_layer(key); + uint16_t keycode = keymap_key_to_keycode(layer, key); + + tap_code16(keycode); } return true; diff --git a/keyboards/takashicompany/dogtag/dogtag.h b/keyboards/takashicompany/dogtag/dogtag.h index f2b7f5f601..fb5ae151ea 100644 --- a/keyboards/takashicompany/dogtag/dogtag.h +++ b/keyboards/takashicompany/dogtag/dogtag.h @@ -27,11 +27,14 @@ * represents the switch matrix. */ #define LAYOUT( \ - l01, l02, l03, l04, r01, r02, r03, r04,\ - l05, l06, l07, l08, l09, r05, r06, r07, r08, r09 \ + l01, l02, l03, l04, r01, r02, r03, r04, \ + l05, l06, l07, l08, l09, r05, r06, r07, r08, r09, \ + l10, l11, r10, r11 \ ) { \ - { l01, l02, l03, l04, KC_NO }, \ - { l05, l06, l07, l08, l09 }, \ - { KC_NO, r01, r02, r03, r04,}, \ - { r05, r06, r07, r08, r09 } \ + { l01, l02, l03, l04, KC_NO }, \ + { l05, l06, l07, l08, l09 }, \ + { l10, l11, KC_NO, KC_NO, KC_NO }, \ + { KC_NO, r01, r02, r03, r04}, \ + { r05, r06, r07, r08, r09 }, \ + { r10, r11, KC_NO, KC_NO, KC_NO } \ } diff --git a/keyboards/takashicompany/dogtag/info.json b/keyboards/takashicompany/dogtag/info.json index 9dad380b70..64079408a8 100644 --- a/keyboards/takashicompany/dogtag/info.json +++ b/keyboards/takashicompany/dogtag/info.json @@ -21,10 +21,6 @@ "x": 3, "y": 0 }, - { - "x": 7, - "y": 0 - }, { "x": 8, "y": 0 @@ -37,6 +33,10 @@ "x": 10, "y": 0 }, + { + "x": 11, + "y": 0 + }, { "x": 0, "y": 1 @@ -53,10 +53,6 @@ "x": 3, "y": 1 }, - { - "x": 7, - "y": 1 - }, { "x": 8, "y": 1 @@ -69,13 +65,33 @@ "x": 10, "y": 1 }, + { + "x": 11, + "y": 1 + }, { "x": 4, "y": 2 }, { - "x": 6, + "x": 7, "y": 2 + }, + { + "x": 3.5, + "y": 3.25 + }, + { + "x": 4.5, + "y": 3.25 + }, + { + "x": 6.5, + "y": 3.25 + }, + { + "x": 7.5, + "y": 3.25 } ] } diff --git a/keyboards/takashicompany/dogtag/keymaps/default/keymap.c b/keyboards/takashicompany/dogtag/keymaps/default/keymap.c index 790d1b8126..865e6a2290 100644 --- a/keyboards/takashicompany/dogtag/keymaps/default/keymap.c +++ b/keyboards/takashicompany/dogtag/keymaps/default/keymap.c @@ -16,15 +16,15 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - LAYOUT( LT(1, KC_ESC), KC_Q, KC_W, KC_E, KC_Y, KC_U, KC_I, KC_O, - KC_LSFT, KC_A, KC_S, KC_D, KC_SPC, KC_TAB, KC_H, KC_J, KC_K, KC_L + KC_LSFT, KC_A, KC_S, KC_D, KC_SPC, KC_TAB, KC_H, KC_J, KC_K, KC_L, + KC_WH_U, KC_WH_D, KC_WH_U, KC_WH_D ), LAYOUT( KC_TRNS, RGB_MOD, RGB_HUI, RGB_SAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_K, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, RGB_M_P, RGB_M_K, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_WH_L, KC_WH_R, KC_WH_L, KC_WH_R ) - }; diff --git a/keyboards/takashicompany/dogtag/keymaps/via/config.h b/keyboards/takashicompany/dogtag/keymaps/via/config.h index 2ae708b32d..60e30a615f 100644 --- a/keyboards/takashicompany/dogtag/keymaps/via/config.h +++ b/keyboards/takashicompany/dogtag/keymaps/via/config.h @@ -17,4 +17,4 @@ along with this program. If not, see . #pragma once -#define DYNAMIC_KEYMAP_LAYER_COUNT 16 \ No newline at end of file +#define DYNAMIC_KEYMAP_LAYER_COUNT 12 \ No newline at end of file diff --git a/keyboards/takashicompany/dogtag/keymaps/via/keymap.c b/keyboards/takashicompany/dogtag/keymaps/via/keymap.c index 790d1b8126..865e6a2290 100644 --- a/keyboards/takashicompany/dogtag/keymaps/via/keymap.c +++ b/keyboards/takashicompany/dogtag/keymaps/via/keymap.c @@ -16,15 +16,15 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - LAYOUT( LT(1, KC_ESC), KC_Q, KC_W, KC_E, KC_Y, KC_U, KC_I, KC_O, - KC_LSFT, KC_A, KC_S, KC_D, KC_SPC, KC_TAB, KC_H, KC_J, KC_K, KC_L + KC_LSFT, KC_A, KC_S, KC_D, KC_SPC, KC_TAB, KC_H, KC_J, KC_K, KC_L, + KC_WH_U, KC_WH_D, KC_WH_U, KC_WH_D ), LAYOUT( KC_TRNS, RGB_MOD, RGB_HUI, RGB_SAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RGB_M_P, RGB_M_K, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, RGB_M_P, RGB_M_K, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_WH_L, KC_WH_R, KC_WH_L, KC_WH_R ) - }; diff --git a/keyboards/takashicompany/dogtag/rules.mk b/keyboards/takashicompany/dogtag/rules.mk index dc6f5127fc..08b1ffe09c 100644 --- a/keyboards/takashicompany/dogtag/rules.mk +++ b/keyboards/takashicompany/dogtag/rules.mk @@ -19,3 +19,4 @@ AUDIO_ENABLE = no # Audio output ENCODER_ENABLE = yes SPLIT_KEYBOARD = yes +MOUSEKEY_ENABLE = yes \ No newline at end of file From 4b4f1c6edb3c0fdba20f241e453407c80f262620 Mon Sep 17 00:00:00 2001 From: Will McGloughlin <3410869+wymcg@users.noreply.github.com> Date: Mon, 7 Mar 2022 02:16:50 -0500 Subject: [PATCH 025/699] [Keymap] Add encoder showcase keymap (#16544) --- keyboards/psuieee/pluto12/config.h | 110 ++---------------- .../psuieee/pluto12/keymaps/default/keymap.c | 2 +- .../psuieee/pluto12/keymaps/wymcg/keymap.c | 56 +++++++++ .../psuieee/pluto12/keymaps/wymcg/readme.md | 1 + keyboards/psuieee/pluto12/pluto12.c | 2 +- keyboards/psuieee/pluto12/pluto12.h | 2 +- keyboards/psuieee/pluto12/rules.mk | 1 + 7 files changed, 68 insertions(+), 106 deletions(-) create mode 100644 keyboards/psuieee/pluto12/keymaps/wymcg/keymap.c create mode 100644 keyboards/psuieee/pluto12/keymaps/wymcg/readme.md diff --git a/keyboards/psuieee/pluto12/config.h b/keyboards/psuieee/pluto12/config.h index 60d3f0a501..b59bd05afe 100644 --- a/keyboards/psuieee/pluto12/config.h +++ b/keyboards/psuieee/pluto12/config.h @@ -1,4 +1,4 @@ -// Copyright 2021 Willem McGloughlin (wymcg) +// Copyright 2021-22 Willem McGloughlin (wymcg) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once @@ -16,123 +16,27 @@ #define MATRIX_ROWS 3 #define MATRIX_COLS 4 -/* - * 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) - * - */ +/* Keyboard Matrix Assignments */ #define MATRIX_ROW_PINS { D0, D4, C6 } #define MATRIX_COL_PINS { D7, E6, B4, B5 } #define UNUSED_PINS +/* Encoder Assignments */ +#define ENCODERS_PAD_A { B6 } +#define ENCODERS_PAD_B { B2 } +#define ENCODER_RESOLUTION 4 + /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ -//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 - -//#define LED_NUM_LOCK_PIN B0 -//#define LED_CAPS_LOCK_PIN B1 -//#define LED_SCROLL_LOCK_PIN B2 -//#define LED_COMPOSE_PIN B3 -//#define LED_KANA_PIN B4 - -//#define BACKLIGHT_PIN B7 -//#define BACKLIGHT_LEVELS 3 -//#define BACKLIGHT_BREATHING - -//#define RGB_DI_PIN E2 -//#ifdef RGB_DI_PIN -//# define RGBLED_NUM 16 -//# define RGBLIGHT_HUE_STEP 8 -//# define RGBLIGHT_SAT_STEP 8 -//# define RGBLIGHT_VAL_STEP 8 -//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -/*== all animations enable ==*/ -//# define RGBLIGHT_ANIMATIONS -/*== or choose animations ==*/ -//# define RGBLIGHT_EFFECT_BREATHING -//# define RGBLIGHT_EFFECT_RAINBOW_MOOD -//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL -//# define RGBLIGHT_EFFECT_SNAKE -//# define RGBLIGHT_EFFECT_KNIGHT -//# define RGBLIGHT_EFFECT_CHRISTMAS -//# define RGBLIGHT_EFFECT_STATIC_GRADIENT -//# define RGBLIGHT_EFFECT_RGB_TEST -//# define RGBLIGHT_EFFECT_ALTERNATING -/*== customize breathing effect ==*/ -/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -/*==== use exp() and sin() ====*/ -//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -//#endif - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - /* 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 useful 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 - -/* - * 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 - /* disable these deprecated features by default */ #define NO_ACTION_MACRO #define NO_ACTION_FUNCTION - -/* Bootmagic Lite key configuration */ -//#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/psuieee/pluto12/keymaps/default/keymap.c b/keyboards/psuieee/pluto12/keymaps/default/keymap.c index 1c09c4fc83..c7008dad9e 100644 --- a/keyboards/psuieee/pluto12/keymaps/default/keymap.c +++ b/keyboards/psuieee/pluto12/keymaps/default/keymap.c @@ -1,4 +1,4 @@ -// Copyright 2021 Will McGLoughlin (wymcg) +// Copyright 2021-22 Will McGLoughlin (wymcg) // SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H diff --git a/keyboards/psuieee/pluto12/keymaps/wymcg/keymap.c b/keyboards/psuieee/pluto12/keymaps/wymcg/keymap.c new file mode 100644 index 0000000000..96499b8789 --- /dev/null +++ b/keyboards/psuieee/pluto12/keymaps/wymcg/keymap.c @@ -0,0 +1,56 @@ +// Copyright 2021-22 Will McGLoughlin (wymcg) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _NAV, + _PROD +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_MUTE, KC_MPRV, KC_MPLY, KC_MNXT, + TO(_NAV), G(KC_1), G(KC_2), G(KC_3), + TO(_PROD), G(KC_4), G(KC_5), G(KC_6) + ), + [_NAV] = LAYOUT( + TO(_BASE), KC_HOME, KC_UP, KC_END, + A(KC_TAB), KC_LEFT, KC_DOWN, KC_RIGHT, + G(KC_TAB), KC_PGDN, KC_PGUP, MO(_BASE) + ), + [_PROD] = LAYOUT( + TO(_BASE), KC_NO, KC_NO, KC_NO, + C(KC_Z), C(KC_X), C(KC_C), C(KC_V), + C(KC_A), C(KC_LEFT), C(KC_RIGHT),MO(_BASE) + ) +}; + +bool encoder_update_user(uint8_t index, bool clockwise) { + switch (biton32(layer_state)) { + case _BASE: + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + break; + case _NAV: + if (clockwise) { + tap_code16(C(G(KC_RIGHT))); + } else { + tap_code16(C(G(KC_LEFT))); + } + break; + case _PROD: + if (clockwise) { + tap_code16(C(KC_Y)); + } else { + tap_code16(C(KC_Z)); + } + break; + } + return false; +} diff --git a/keyboards/psuieee/pluto12/keymaps/wymcg/readme.md b/keyboards/psuieee/pluto12/keymaps/wymcg/readme.md new file mode 100644 index 0000000000..60d2f19be3 --- /dev/null +++ b/keyboards/psuieee/pluto12/keymaps/wymcg/readme.md @@ -0,0 +1 @@ +# wymcg's custom keymap diff --git a/keyboards/psuieee/pluto12/pluto12.c b/keyboards/psuieee/pluto12/pluto12.c index c08911493c..15d5fad99f 100644 --- a/keyboards/psuieee/pluto12/pluto12.c +++ b/keyboards/psuieee/pluto12/pluto12.c @@ -1,4 +1,4 @@ -// Copyright 2021 Will McGloughlin (@wymcg) +// Copyright 2021-22 Will McGloughlin (@wymcg) // SPDX-License-Identifier: GPL-2.0-or-later #include "pluto12.h" diff --git a/keyboards/psuieee/pluto12/pluto12.h b/keyboards/psuieee/pluto12/pluto12.h index 7a01de10f7..fc3f391156 100644 --- a/keyboards/psuieee/pluto12/pluto12.h +++ b/keyboards/psuieee/pluto12/pluto12.h @@ -1,4 +1,4 @@ -// Copyright 2021 Will McGloughlin (@wymcg) +// Copyright 2021-22 Will McGloughlin (@wymcg) // SPDX-License-Identifier: GPL-2.0-or-later #pragma once diff --git a/keyboards/psuieee/pluto12/rules.mk b/keyboards/psuieee/pluto12/rules.mk index 515ca5621f..a56e12eb22 100644 --- a/keyboards/psuieee/pluto12/rules.mk +++ b/keyboards/psuieee/pluto12/rules.mk @@ -16,3 +16,4 @@ NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes From 44f1bd9b3a9185951c283ceb5eeb2ecc2be72418 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Mon, 7 Mar 2022 21:04:22 +1100 Subject: [PATCH 026/699] ChibiOS 21.11.1 update. (#16251) * ChibiOS 21.11.1 update. * `uf2-tinyuf2` => `tinyuf2` * Updated chibios-contrib, fixup preprocessor for tinyuf2 bootloader. * Fixup keychron L433 boards. * Makefile cleanup. * RISC-V build fixes. * Fixup RISC-V build. --- builddefs/common_rules.mk | 2 +- builddefs/mcu_selection.mk | 83 ++++++-- .../input_club/ergodox_infinity/mcuconf.h | 2 +- keyboards/matrix/abelx/mcuconf.h | 3 +- lib/chibios | 2 +- lib/chibios-contrib | 2 +- .../GENERIC_STM32_F303XC/configs/mcuconf.h | 3 +- .../GENERIC_STM32_F405XG/configs/mcuconf.h | 75 ++++--- .../GENERIC_STM32_F407XE/configs/mcuconf.h | 75 ++++--- .../GENERIC_STM32_G431XB/configs/mcuconf.h | 20 +- .../GENERIC_STM32_G474XE/configs/mcuconf.h | 22 +- .../GENERIC_STM32_L412XB/configs/board.h | 5 +- .../GENERIC_STM32_L412XB/configs/config.h | 2 - .../GENERIC_STM32_L412XB/configs/mcuconf.h | 60 ++---- .../GENERIC_STM32_L432XC/configs/config.h | 3 - .../GENERIC_STM32_L432XC/configs/mcuconf.h | 14 +- .../GENERIC_STM32_L433XC/configs/config.h | 2 - .../boards/QMK_PROTON_C/configs/chconf.h | 69 ++++++- .../boards/QMK_PROTON_C/configs/halconf.h | 31 ++- .../boards/QMK_PROTON_C/configs/mcuconf.h | 3 +- .../chibios/boards/common/configs/chconf.h | 69 ++++++- .../chibios/boards/common/configs/halconf.h | 31 ++- platforms/chibios/drivers/ws2812_spi.c | 28 ++- platforms/chibios/platform.mk | 10 +- platforms/chibios/timer.c | 2 +- platforms/chibios/wait.c | 2 +- util/uf2conv.py | 112 ++++++---- util/uf2families.json | 192 ++++++++++++++++++ 28 files changed, 681 insertions(+), 243 deletions(-) create mode 100644 util/uf2families.json diff --git a/builddefs/common_rules.mk b/builddefs/common_rules.mk index b303a87919..85dfe67f3f 100644 --- a/builddefs/common_rules.mk +++ b/builddefs/common_rules.mk @@ -316,7 +316,7 @@ gccversion : @$(BUILD_CMD) %.uf2: %.hex - $(eval CMD=$(UF2CONV) $(BUILD_DIR)/$(TARGET).hex -o $(BUILD_DIR)/$(TARGET).uf2 -c -f $(UF2_FAMILY) >/dev/null 2>&1) + $(eval CMD=$(UF2CONV) $(BUILD_DIR)/$(TARGET).hex --output $(BUILD_DIR)/$(TARGET).uf2 --convert --family $(UF2_FAMILY) >/dev/null 2>&1) #@$(SILENT) || printf "$(MSG_EXECUTING) '$(CMD)':\n" @$(SILENT) || printf "$(MSG_UF2) $@" | $(AWK_CMD) @$(BUILD_CMD) diff --git a/builddefs/mcu_selection.mk b/builddefs/mcu_selection.mk index 9fdd22c3b6..ec33ee4446 100644 --- a/builddefs/mcu_selection.mk +++ b/builddefs/mcu_selection.mk @@ -9,7 +9,9 @@ ifneq ($(findstring MKL26Z64, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = KINETIS MCU_SERIES = KL2x @@ -36,7 +38,9 @@ ifneq ($(findstring MK20DX128, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = KINETIS MCU_SERIES = K20x @@ -63,7 +67,9 @@ ifneq ($(findstring MK20DX256, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = KINETIS MCU_SERIES = K20x @@ -90,7 +96,9 @@ ifneq ($(findstring MK66FX1M0, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = KINETIS MCU_SERIES = MK66F18 @@ -117,7 +125,9 @@ ifneq ($(findstring STM32F042, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F0xx @@ -157,7 +167,9 @@ ifneq ($(findstring STM32F072, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F0xx @@ -192,7 +204,9 @@ ifneq ($(findstring STM32F103, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F1xx @@ -224,7 +238,9 @@ ifneq ($(findstring STM32F303, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F3xx @@ -259,7 +275,9 @@ ifneq ($(findstring STM32F401, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F4xx @@ -299,7 +317,9 @@ ifneq ($(findstring STM32F405, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F4xx @@ -334,7 +354,9 @@ ifneq ($(findstring STM32F407, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F4xx @@ -369,7 +391,9 @@ ifneq ($(findstring STM32F411, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F4xx @@ -409,7 +433,9 @@ ifneq ($(findstring STM32F446, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32F4xx @@ -441,7 +467,9 @@ ifneq ($(findstring STM32G431, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32G4xx @@ -476,7 +504,9 @@ ifneq ($(findstring STM32G474, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32G4xx @@ -511,7 +541,9 @@ ifneq (,$(filter $(MCU),STM32L432 STM32L442)) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32L4xx @@ -548,7 +580,9 @@ ifneq (,$(filter $(MCU),STM32L433 STM32L443)) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32L4xx @@ -585,7 +619,9 @@ ifneq (,$(filter $(MCU),STM32L412 STM32L422)) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = STM32 MCU_SERIES = STM32L4xx @@ -602,7 +638,7 @@ ifneq (,$(filter $(MCU),STM32L412 STM32L422)) # /boards/, or drivers/boards/ BOARD ?= GENERIC_STM32_L412XB - PLATFORM_NAME ?= platform_l432 + PLATFORM_NAME ?= platform_l412_l422 USE_FPU ?= yes @@ -622,7 +658,9 @@ ifneq ($(findstring WB32F3G71, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) MCU_FAMILY = WB32 MCU_SERIES = WB32F3G71xx @@ -657,7 +695,10 @@ ifneq ($(findstring GD32VF103, $(MCU)),) ## chip/board settings # - the next two should match the directories in - # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + # /os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES) + # OR + # /os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES) + MCU_PORT_NAME = GD MCU_FAMILY = GD32V MCU_SERIES = GD32VF103 diff --git a/keyboards/input_club/ergodox_infinity/mcuconf.h b/keyboards/input_club/ergodox_infinity/mcuconf.h index f6730b99ca..e4dfa75186 100644 --- a/keyboards/input_club/ergodox_infinity/mcuconf.h +++ b/keyboards/input_club/ergodox_infinity/mcuconf.h @@ -62,7 +62,7 @@ /* Need to redefine this, since the default is for K20x */ /* This is for Teensy LC; you should comment it out (or change to 5) * for Teensy 3.x */ -#define KINETIS_USB_USB0_IRQ_PRIORITY 2 +#define KINETIS_USB_USB0_IRQ_PRIORITY 5 /* * SPI driver system settings. diff --git a/keyboards/matrix/abelx/mcuconf.h b/keyboards/matrix/abelx/mcuconf.h index a22ce51c4c..a2fd42b8c4 100644 --- a/keyboards/matrix/abelx/mcuconf.h +++ b/keyboards/matrix/abelx/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -169,7 +169,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE diff --git a/lib/chibios b/lib/chibios index d7b9d1c87f..257302333c 160000 --- a/lib/chibios +++ b/lib/chibios @@ -1 +1 @@ -Subproject commit d7b9d1c87f724bd7c8cd1486d6d0dc3ba52e0d52 +Subproject commit 257302333c31f1f710800c2b97acf3550de043e1 diff --git a/lib/chibios-contrib b/lib/chibios-contrib index d1c2126d1c..ff1c6ec90c 160000 --- a/lib/chibios-contrib +++ b/lib/chibios-contrib @@ -1 +1 @@ -Subproject commit d1c2126d1cd867c50127da84425805e225df8555 +Subproject commit ff1c6ec90cfc250d81e6f29a0d60a4faf2afb46d diff --git a/platforms/chibios/boards/GENERIC_STM32_F303XC/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_F303XC/configs/mcuconf.h index c6f5a8ac52..e0af4a276b 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F303XC/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_F303XC/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -186,7 +186,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE diff --git a/platforms/chibios/boards/GENERIC_STM32_F405XG/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_F405XG/configs/mcuconf.h index 908a580a91..394e750256 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F405XG/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_F405XG/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -86,6 +86,28 @@ #define STM32_IRQ_EXTI21_PRIORITY 15 #define STM32_IRQ_EXTI22_PRIORITY 15 +#define STM32_IRQ_TIM1_BRK_TIM9_PRIORITY 7 +#define STM32_IRQ_TIM1_UP_TIM10_PRIORITY 7 +#define STM32_IRQ_TIM1_TRGCO_TIM11_PRIORITY 7 +#define STM32_IRQ_TIM1_CC_PRIORITY 7 +#define STM32_IRQ_TIM2_PRIORITY 7 +#define STM32_IRQ_TIM3_PRIORITY 7 +#define STM32_IRQ_TIM4_PRIORITY 7 +#define STM32_IRQ_TIM5_PRIORITY 7 +#define STM32_IRQ_TIM6_PRIORITY 7 +#define STM32_IRQ_TIM7_PRIORITY 7 +#define STM32_IRQ_TIM8_BRK_TIM12_PRIORITY 7 +#define STM32_IRQ_TIM8_UP_TIM13_PRIORITY 7 +#define STM32_IRQ_TIM8_TRGCO_TIM14_PRIORITY 7 +#define STM32_IRQ_TIM8_CC_PRIORITY 7 + +#define STM32_IRQ_USART1_PRIORITY 12 +#define STM32_IRQ_USART2_PRIORITY 12 +#define STM32_IRQ_USART3_PRIORITY 12 +#define STM32_IRQ_UART4_PRIORITY 12 +#define STM32_IRQ_UART5_PRIORITY 12 +#define STM32_IRQ_USART6_PRIORITY 12 + /* * ADC driver system settings. */ @@ -137,21 +159,11 @@ #define STM32_GPT_USE_TIM7 FALSE #define STM32_GPT_USE_TIM8 FALSE #define STM32_GPT_USE_TIM9 FALSE +#define STM32_GPT_USE_TIM10 FALSE #define STM32_GPT_USE_TIM11 FALSE #define STM32_GPT_USE_TIM12 FALSE +#define STM32_GPT_USE_TIM13 FALSE #define STM32_GPT_USE_TIM14 FALSE -#define STM32_GPT_TIM1_IRQ_PRIORITY 7 -#define STM32_GPT_TIM2_IRQ_PRIORITY 7 -#define STM32_GPT_TIM3_IRQ_PRIORITY 7 -#define STM32_GPT_TIM4_IRQ_PRIORITY 7 -#define STM32_GPT_TIM5_IRQ_PRIORITY 7 -#define STM32_GPT_TIM6_IRQ_PRIORITY 7 -#define STM32_GPT_TIM7_IRQ_PRIORITY 7 -#define STM32_GPT_TIM8_IRQ_PRIORITY 7 -#define STM32_GPT_TIM9_IRQ_PRIORITY 7 -#define STM32_GPT_TIM11_IRQ_PRIORITY 7 -#define STM32_GPT_TIM12_IRQ_PRIORITY 7 -#define STM32_GPT_TIM14_IRQ_PRIORITY 7 /* * I2C driver system settings. @@ -199,13 +211,11 @@ #define STM32_ICU_USE_TIM5 FALSE #define STM32_ICU_USE_TIM8 FALSE #define STM32_ICU_USE_TIM9 FALSE -#define STM32_ICU_TIM1_IRQ_PRIORITY 7 -#define STM32_ICU_TIM2_IRQ_PRIORITY 7 -#define STM32_ICU_TIM3_IRQ_PRIORITY 7 -#define STM32_ICU_TIM4_IRQ_PRIORITY 7 -#define STM32_ICU_TIM5_IRQ_PRIORITY 7 -#define STM32_ICU_TIM8_IRQ_PRIORITY 7 -#define STM32_ICU_TIM9_IRQ_PRIORITY 7 +#define STM32_ICU_USE_TIM10 FALSE +#define STM32_ICU_USE_TIM11 FALSE +#define STM32_ICU_USE_TIM12 FALSE +#define STM32_ICU_USE_TIM13 FALSE +#define STM32_ICU_USE_TIM14 FALSE /* * MAC driver system settings. @@ -221,7 +231,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE @@ -229,13 +238,11 @@ #define STM32_PWM_USE_TIM5 FALSE #define STM32_PWM_USE_TIM8 FALSE #define STM32_PWM_USE_TIM9 FALSE -#define STM32_PWM_TIM1_IRQ_PRIORITY 7 -#define STM32_PWM_TIM2_IRQ_PRIORITY 7 -#define STM32_PWM_TIM3_IRQ_PRIORITY 7 -#define STM32_PWM_TIM4_IRQ_PRIORITY 7 -#define STM32_PWM_TIM5_IRQ_PRIORITY 7 -#define STM32_PWM_TIM8_IRQ_PRIORITY 7 -#define STM32_PWM_TIM9_IRQ_PRIORITY 7 +#define STM32_PWM_USE_TIM10 FALSE +#define STM32_PWM_USE_TIM11 FALSE +#define STM32_PWM_USE_TIM12 FALSE +#define STM32_PWM_USE_TIM13 FALSE +#define STM32_PWM_USE_TIM14 FALSE /* * RTC driver system settings. @@ -265,12 +272,6 @@ #define STM32_SERIAL_USE_UART4 FALSE #define STM32_SERIAL_USE_UART5 FALSE #define STM32_SERIAL_USE_USART6 FALSE -#define STM32_SERIAL_USART1_PRIORITY 12 -#define STM32_SERIAL_USART2_PRIORITY 12 -#define STM32_SERIAL_USART3_PRIORITY 12 -#define STM32_SERIAL_UART4_PRIORITY 12 -#define STM32_SERIAL_UART5_PRIORITY 12 -#define STM32_SERIAL_USART6_PRIORITY 12 /* * SPI driver system settings. @@ -319,12 +320,6 @@ #define STM32_UART_UART5_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) #define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2) #define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) -#define STM32_UART_USART1_IRQ_PRIORITY 12 -#define STM32_UART_USART2_IRQ_PRIORITY 12 -#define STM32_UART_USART3_IRQ_PRIORITY 12 -#define STM32_UART_UART4_IRQ_PRIORITY 12 -#define STM32_UART_UART5_IRQ_PRIORITY 12 -#define STM32_UART_USART6_IRQ_PRIORITY 12 #define STM32_UART_USART1_DMA_PRIORITY 0 #define STM32_UART_USART2_DMA_PRIORITY 0 #define STM32_UART_USART3_DMA_PRIORITY 0 diff --git a/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/mcuconf.h index 928ee56c71..07399ad2f7 100644 --- a/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_F407XE/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -86,6 +86,28 @@ #define STM32_IRQ_EXTI21_PRIORITY 15 #define STM32_IRQ_EXTI22_PRIORITY 15 +#define STM32_IRQ_TIM1_BRK_TIM9_PRIORITY 7 +#define STM32_IRQ_TIM1_UP_TIM10_PRIORITY 7 +#define STM32_IRQ_TIM1_TRGCO_TIM11_PRIORITY 7 +#define STM32_IRQ_TIM1_CC_PRIORITY 7 +#define STM32_IRQ_TIM2_PRIORITY 7 +#define STM32_IRQ_TIM3_PRIORITY 7 +#define STM32_IRQ_TIM4_PRIORITY 7 +#define STM32_IRQ_TIM5_PRIORITY 7 +#define STM32_IRQ_TIM6_PRIORITY 7 +#define STM32_IRQ_TIM7_PRIORITY 7 +#define STM32_IRQ_TIM8_BRK_TIM12_PRIORITY 7 +#define STM32_IRQ_TIM8_UP_TIM13_PRIORITY 7 +#define STM32_IRQ_TIM8_TRGCO_TIM14_PRIORITY 7 +#define STM32_IRQ_TIM8_CC_PRIORITY 7 + +#define STM32_IRQ_USART1_PRIORITY 12 +#define STM32_IRQ_USART2_PRIORITY 12 +#define STM32_IRQ_USART3_PRIORITY 12 +#define STM32_IRQ_UART4_PRIORITY 12 +#define STM32_IRQ_UART5_PRIORITY 12 +#define STM32_IRQ_USART6_PRIORITY 12 + /* * ADC driver system settings. */ @@ -137,21 +159,11 @@ #define STM32_GPT_USE_TIM7 FALSE #define STM32_GPT_USE_TIM8 FALSE #define STM32_GPT_USE_TIM9 FALSE +#define STM32_GPT_USE_TIM10 FALSE #define STM32_GPT_USE_TIM11 FALSE #define STM32_GPT_USE_TIM12 FALSE +#define STM32_GPT_USE_TIM13 FALSE #define STM32_GPT_USE_TIM14 FALSE -#define STM32_GPT_TIM1_IRQ_PRIORITY 7 -#define STM32_GPT_TIM2_IRQ_PRIORITY 7 -#define STM32_GPT_TIM3_IRQ_PRIORITY 7 -#define STM32_GPT_TIM4_IRQ_PRIORITY 7 -#define STM32_GPT_TIM5_IRQ_PRIORITY 7 -#define STM32_GPT_TIM6_IRQ_PRIORITY 7 -#define STM32_GPT_TIM7_IRQ_PRIORITY 7 -#define STM32_GPT_TIM8_IRQ_PRIORITY 7 -#define STM32_GPT_TIM9_IRQ_PRIORITY 7 -#define STM32_GPT_TIM11_IRQ_PRIORITY 7 -#define STM32_GPT_TIM12_IRQ_PRIORITY 7 -#define STM32_GPT_TIM14_IRQ_PRIORITY 7 /* * I2C driver system settings. @@ -199,13 +211,11 @@ #define STM32_ICU_USE_TIM5 FALSE #define STM32_ICU_USE_TIM8 FALSE #define STM32_ICU_USE_TIM9 FALSE -#define STM32_ICU_TIM1_IRQ_PRIORITY 7 -#define STM32_ICU_TIM2_IRQ_PRIORITY 7 -#define STM32_ICU_TIM3_IRQ_PRIORITY 7 -#define STM32_ICU_TIM4_IRQ_PRIORITY 7 -#define STM32_ICU_TIM5_IRQ_PRIORITY 7 -#define STM32_ICU_TIM8_IRQ_PRIORITY 7 -#define STM32_ICU_TIM9_IRQ_PRIORITY 7 +#define STM32_ICU_USE_TIM10 FALSE +#define STM32_ICU_USE_TIM11 FALSE +#define STM32_ICU_USE_TIM12 FALSE +#define STM32_ICU_USE_TIM13 FALSE +#define STM32_ICU_USE_TIM14 FALSE /* * MAC driver system settings. @@ -221,7 +231,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE @@ -229,13 +238,11 @@ #define STM32_PWM_USE_TIM5 FALSE #define STM32_PWM_USE_TIM8 FALSE #define STM32_PWM_USE_TIM9 FALSE -#define STM32_PWM_TIM1_IRQ_PRIORITY 7 -#define STM32_PWM_TIM2_IRQ_PRIORITY 7 -#define STM32_PWM_TIM3_IRQ_PRIORITY 7 -#define STM32_PWM_TIM4_IRQ_PRIORITY 7 -#define STM32_PWM_TIM5_IRQ_PRIORITY 7 -#define STM32_PWM_TIM8_IRQ_PRIORITY 7 -#define STM32_PWM_TIM9_IRQ_PRIORITY 7 +#define STM32_PWM_USE_TIM10 FALSE +#define STM32_PWM_USE_TIM11 FALSE +#define STM32_PWM_USE_TIM12 FALSE +#define STM32_PWM_USE_TIM13 FALSE +#define STM32_PWM_USE_TIM14 FALSE /* * RTC driver system settings. @@ -265,12 +272,6 @@ #define STM32_SERIAL_USE_UART4 FALSE #define STM32_SERIAL_USE_UART5 FALSE #define STM32_SERIAL_USE_USART6 FALSE -#define STM32_SERIAL_USART1_PRIORITY 12 -#define STM32_SERIAL_USART2_PRIORITY 12 -#define STM32_SERIAL_USART3_PRIORITY 12 -#define STM32_SERIAL_UART4_PRIORITY 12 -#define STM32_SERIAL_UART5_PRIORITY 12 -#define STM32_SERIAL_USART6_PRIORITY 12 /* * SPI driver system settings. @@ -319,12 +320,6 @@ #define STM32_UART_UART5_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) #define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2) #define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) -#define STM32_UART_USART1_IRQ_PRIORITY 12 -#define STM32_UART_USART2_IRQ_PRIORITY 12 -#define STM32_UART_USART3_IRQ_PRIORITY 12 -#define STM32_UART_UART4_IRQ_PRIORITY 12 -#define STM32_UART_UART5_IRQ_PRIORITY 12 -#define STM32_UART_USART6_IRQ_PRIORITY 12 #define STM32_UART_USART1_DMA_PRIORITY 0 #define STM32_UART_USART2_DMA_PRIORITY 0 #define STM32_UART_USART3_DMA_PRIORITY 0 diff --git a/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h index d115028300..fd00280115 100644 --- a/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_G431XB/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -39,6 +39,7 @@ * HAL driver system settings. */ #define STM32_NO_INIT FALSE +#define STM32_CLOCK_DYNAMIC FALSE #define STM32_VOS STM32_VOS_RANGE1 #define STM32_PWR_BOOST TRUE #define STM32_PWR_CR2 (PWR_CR2_PLS_LEV0) @@ -227,7 +228,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE @@ -240,6 +240,13 @@ /* * RTC driver system settings. */ +#define STM32_RTC_PRESA_VALUE 32 +#define STM32_RTC_PRESS_VALUE 1024 +#define STM32_RTC_CR_INIT 0 +#define STM32_TAMP_CR1_INIT 0 +#define STM32_TAMP_CR2_INIT 0 +#define STM32_TAMP_FLTCR_INIT 0 +#define STM32_TAMP_IER_INIT 0 /* * SDC driver system settings. @@ -254,6 +261,15 @@ #define STM32_SERIAL_USE_UART4 FALSE #define STM32_SERIAL_USE_LPUART1 FALSE +/* + * SIO driver system settings. + */ +#define STM32_SIO_USE_USART1 FALSE +#define STM32_SIO_USE_USART2 FALSE +#define STM32_SIO_USE_USART3 FALSE +#define STM32_SIO_USE_UART4 FALSE +#define STM32_SIO_USE_LPUART1 FALSE + /* * SPI driver system settings. */ diff --git a/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/mcuconf.h index 5710e2cb45..d6385da624 100644 --- a/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_G474XE/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -41,6 +41,7 @@ * HAL driver system settings. */ #define STM32_NO_INIT FALSE +#define STM32_CLOCK_DYNAMIC FALSE #define STM32_VOS STM32_VOS_RANGE1 #define STM32_PWR_BOOST TRUE #define STM32_PWR_CR2 (PWR_CR2_PLS_LEV0) @@ -274,7 +275,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 FALSE @@ -289,6 +289,13 @@ /* * RTC driver system settings. */ +#define STM32_RTC_PRESA_VALUE 32 +#define STM32_RTC_PRESS_VALUE 1024 +#define STM32_RTC_CR_INIT 0 +#define STM32_TAMP_CR1_INIT 0 +#define STM32_TAMP_CR2_INIT 0 +#define STM32_TAMP_FLTCR_INIT 0 +#define STM32_TAMP_IER_INIT 0 /* * SDC driver system settings. @@ -304,6 +311,16 @@ #define STM32_SERIAL_USE_UART5 FALSE #define STM32_SERIAL_USE_LPUART1 FALSE +/* + * SIO driver system settings. + */ +#define STM32_SIO_USE_USART1 FALSE +#define STM32_SIO_USE_USART2 FALSE +#define STM32_SIO_USE_USART3 FALSE +#define STM32_SIO_USE_UART4 FALSE +#define STM32_SIO_USE_UART5 FALSE +#define STM32_SIO_USE_LPUART1 FALSE + /* * SPI driver system settings. */ @@ -383,5 +400,6 @@ */ #define STM32_WSPI_USE_QUADSPI1 FALSE #define STM32_WSPI_QUADSPI1_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) +#define STM32_WSPI_QUADSPI1_PRESCALER_VALUE 1 #endif /* MCUCONF_H */ diff --git a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/board.h b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/board.h index 2e37d95fe3..de5f85acdd 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/board.h +++ b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/board.h @@ -18,7 +18,4 @@ #include_next "board.h" #undef STM32L432xx - -// Pretend that we're an L443xx as the ChibiOS definitions for L4x2/L4x3 mistakenly don't enable GPIOH, I2C2, or SPI2. -// Until ChibiOS upstream is fixed, this should be kept at L443, as nothing in QMK currently utilises the crypto peripheral on the L443. -#define STM32L443xx +#define STM32L422xx diff --git a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/config.h index fc9055ccfb..d67de4cfe2 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/config.h +++ b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/config.h @@ -18,8 +18,6 @@ /* It is chip dependent, the correct number can be looked up by checking against ST's application note AN2606. */ -#define PAL_STM32_OSPEED_HIGHEST PAL_STM32_OSPEED_HIGH - #ifndef EARLY_INIT_PERFORM_BOOTLOADER_JUMP # define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE #endif diff --git a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/mcuconf.h index 8ad5a8da21..47f1598b74 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_L412XB/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -32,12 +32,7 @@ #define MCUCONF_H #define STM32L4xx_MCUCONF -#define STM32L412_MCUCONF #define STM32L422_MCUCONF -#define STM32L432_MCUCONF -#define STM32L433_MCUCONF -#define STM32L442_MCUCONF -#define STM32L443_MCUCONF /* * HAL driver system settings. @@ -52,16 +47,13 @@ #define STM32_HSE_ENABLED FALSE #define STM32_LSE_ENABLED FALSE #define STM32_MSIPLL_ENABLED FALSE -#define STM32_ADC_CLOCK_ENABLED TRUE -#define STM32_USB_CLOCK_ENABLED TRUE -#define STM32_SAI1_CLOCK_ENABLED TRUE -#define STM32_SAI2_CLOCK_ENABLED TRUE #define STM32_MSIRANGE STM32_MSIRANGE_4M #define STM32_MSISRANGE STM32_MSISRANGE_4M #define STM32_SW STM32_SW_PLL #define STM32_PLLSRC STM32_PLLSRC_HSI16 #define STM32_PLLM_VALUE 4 #define STM32_PLLN_VALUE 80 +#define STM32_PLLPDIV_VALUE 0 #define STM32_PLLP_VALUE 7 #define STM32_PLLQ_VALUE 4 #define STM32_PLLR_VALUE 4 @@ -73,29 +65,22 @@ #define STM32_MCOPRE STM32_MCOPRE_DIV1 #define STM32_LSCOSEL STM32_LSCOSEL_NOCLOCK #define STM32_PLLSAI1N_VALUE 72 +#define STM32_PLLSAI1PDIV_VALUE 6 #define STM32_PLLSAI1P_VALUE 7 #define STM32_PLLSAI1Q_VALUE 6 #define STM32_PLLSAI1R_VALUE 6 -#define STM32_PLLSAI2N_VALUE 72 -#define STM32_PLLSAI2P_VALUE 7 -#define STM32_PLLSAI2R_VALUE 6 /* * Peripherals clock sources. */ #define STM32_USART1SEL STM32_USART1SEL_SYSCLK #define STM32_USART2SEL STM32_USART2SEL_SYSCLK -#define STM32_USART3SEL STM32_USART3SEL_SYSCLK -#define STM32_UART4SEL STM32_UART4SEL_SYSCLK -#define STM32_UART5SEL STM32_UART5SEL_SYSCLK #define STM32_LPUART1SEL STM32_LPUART1SEL_SYSCLK #define STM32_I2C1SEL STM32_I2C1SEL_SYSCLK -#define STM32_I2C2SEL STM32_I2C2SEL_SYSCLK #define STM32_I2C3SEL STM32_I2C3SEL_SYSCLK #define STM32_LPTIM1SEL STM32_LPTIM1SEL_PCLK1 #define STM32_LPTIM2SEL STM32_LPTIM2SEL_PCLK1 #define STM32_SAI1SEL STM32_SAI1SEL_OFF -#define STM32_SAI2SEL STM32_SAI2SEL_OFF #define STM32_CLK48SEL STM32_CLK48SEL_HSI48 #define STM32_ADCSEL STM32_ADCSEL_SYSCLK #define STM32_SWPMI1SEL STM32_SWPMI1SEL_PCLK1 @@ -127,7 +112,6 @@ #define STM32_IRQ_USART1_PRIORITY 12 #define STM32_IRQ_USART2_PRIORITY 12 -#define STM32_IRQ_USART3_PRIORITY 12 #define STM32_IRQ_LPUART1_PRIORITY 12 /* @@ -137,29 +121,15 @@ #define STM32_ADC_USE_ADC1 FALSE #define STM32_ADC_ADC1_DMA_STREAM STM32_DMA_STREAM_ID(1, 1) #define STM32_ADC_ADC1_DMA_PRIORITY 2 +#define STM32_ADC_USE_ADC2 FALSE +#define STM32_ADC_ADC2_DMA_STREAM STM32_DMA_STREAM_ID(1, 2) +#define STM32_ADC_ADC2_DMA_PRIORITY 2 #define STM32_ADC_ADC12_IRQ_PRIORITY 5 #define STM32_ADC_ADC1_DMA_IRQ_PRIORITY 5 +#define STM32_ADC_ADC2_DMA_IRQ_PRIORITY 5 #define STM32_ADC_ADC123_CLOCK_MODE ADC_CCR_CKMODE_AHB_DIV1 #define STM32_ADC_ADC123_PRESC ADC_CCR_PRESC_DIV2 -/* - * CAN driver system settings. - */ -#define STM32_CAN_USE_CAN1 FALSE -#define STM32_CAN_CAN1_IRQ_PRIORITY 11 - -/* - * DAC driver system settings. - */ -#define STM32_DAC_DUAL_MODE FALSE -#define STM32_DAC_USE_DAC1_CH1 FALSE -#define STM32_DAC_USE_DAC1_CH2 FALSE -#define STM32_DAC_DAC1_CH1_IRQ_PRIORITY 10 -#define STM32_DAC_DAC1_CH2_IRQ_PRIORITY 10 -#define STM32_DAC_DAC1_CH1_DMA_PRIORITY 2 -#define STM32_DAC_DAC1_CH2_DMA_PRIORITY 2 -#define STM32_DAC_DAC1_CH1_DMA_STREAM STM32_DMA_STREAM_ID(2, 4) -#define STM32_DAC_DAC1_CH2_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) /* * GPT driver system settings. @@ -198,7 +168,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM15 FALSE @@ -218,23 +187,22 @@ #define STM32_SERIAL_USE_USART1 FALSE #define STM32_SERIAL_USE_USART2 FALSE #define STM32_SERIAL_USE_LPUART1 FALSE -#define STM32_SERIAL_USART1_PRIORITY 12 -#define STM32_SERIAL_USART2_PRIORITY 12 -#define STM32_SERIAL_LPUART1_PRIORITY 12 + +/* + * SIO driver system settings. + */ +#define STM32_SIO_USE_USART1 FALSE +#define STM32_SIO_USE_USART2 FALSE +#define STM32_SIO_USE_LPUART1 FALSE /* * SPI driver system settings. */ #define STM32_SPI_USE_SPI1 FALSE -#define STM32_SPI_USE_SPI3 FALSE #define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) #define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 4) -#define STM32_SPI_SPI3_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 1) -#define STM32_SPI_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2) #define STM32_SPI_SPI1_DMA_PRIORITY 1 -#define STM32_SPI_SPI3_DMA_PRIORITY 1 #define STM32_SPI_SPI1_IRQ_PRIORITY 10 -#define STM32_SPI_SPI3_IRQ_PRIORITY 10 #define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure") /* diff --git a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/config.h index b1838b30a8..839d031ca4 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/config.h +++ b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/config.h @@ -2,9 +2,6 @@ // SPDX-License-Identifier: GPL-2.0-or-later #pragma once -// Fixup equivalent usages within QMK as the base board definitions only go up to high -#define PAL_STM32_OSPEED_HIGHEST PAL_STM32_OSPEED_HIGH - #ifndef EARLY_INIT_PERFORM_BOOTLOADER_JUMP # define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE #endif diff --git a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h index 707134d49e..be64b04812 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h +++ b/platforms/chibios/boards/GENERIC_STM32_L432XC/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -33,7 +33,6 @@ #define STM32L4xx_MCUCONF #define STM32L432_MCUCONF -#define STM32L433_MCUCONF /* * HAL driver system settings. @@ -183,7 +182,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM15 FALSE @@ -203,9 +201,13 @@ #define STM32_SERIAL_USE_USART1 FALSE #define STM32_SERIAL_USE_USART2 FALSE #define STM32_SERIAL_USE_LPUART1 FALSE -#define STM32_SERIAL_USART1_PRIORITY 12 -#define STM32_SERIAL_USART2_PRIORITY 12 -#define STM32_SERIAL_LPUART1_PRIORITY 12 + +/* + * SIO driver system settings. + */ +#define STM32_SIO_USE_USART1 FALSE +#define STM32_SIO_USE_USART2 FALSE +#define STM32_SIO_USE_LPUART1 FALSE /* * SPI driver system settings. diff --git a/platforms/chibios/boards/GENERIC_STM32_L433XC/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_L433XC/configs/config.h index fc9055ccfb..d67de4cfe2 100644 --- a/platforms/chibios/boards/GENERIC_STM32_L433XC/configs/config.h +++ b/platforms/chibios/boards/GENERIC_STM32_L433XC/configs/config.h @@ -18,8 +18,6 @@ /* It is chip dependent, the correct number can be looked up by checking against ST's application note AN2606. */ -#define PAL_STM32_OSPEED_HIGHEST PAL_STM32_OSPEED_HIGH - #ifndef EARLY_INIT_PERFORM_BOOTLOADER_JUMP # define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE #endif diff --git a/platforms/chibios/boards/QMK_PROTON_C/configs/chconf.h b/platforms/chibios/boards/QMK_PROTON_C/configs/chconf.h index f812332960..cc10304a3f 100644 --- a/platforms/chibios/boards/QMK_PROTON_C/configs/chconf.h +++ b/platforms/chibios/boards/QMK_PROTON_C/configs/chconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,7 +29,27 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_6_1_ +#define _CHIBIOS_RT_CONF_VER_7_0_ + +/*===========================================================================*/ +/** + * @name System settings + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Handling of instances. + * @note If enabled then threads assigned to various instances can + * interact each other using the same synchronization objects. + * If disabled then each OS instance is a separate world, no + * direct interactions are handled by the OS. + */ +#if !defined(CH_CFG_SMP_MODE) +#define CH_CFG_SMP_MODE FALSE +#endif + +/** @} */ /*===========================================================================*/ /** @@ -160,6 +180,16 @@ #define CH_CFG_USE_TM TRUE #endif +/** + * @brief Time Stamps APIs. + * @details If enabled then the time stamps APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_TIMESTAMP) +#define CH_CFG_USE_TIMESTAMP TRUE +#endif + /** * @brief Threads registry APIs. * @details If enabled then the registry APIs are included in the kernel. @@ -631,7 +661,7 @@ * @details User fields added to the end of the @p ch_system_t structure. */ #define CH_CFG_SYSTEM_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ + /* Add system custom fields here.*/ /** * @brief System initialization hook. @@ -639,7 +669,23 @@ * just before interrupts are enabled globally. */ #define CH_CFG_SYSTEM_INIT_HOOK() { \ - /* Add threads initialization code here.*/ \ + /* Add system initialization code here.*/ \ +} + +/** + * @brief OS instance structure extension. + * @details User fields added to the end of the @p os_instance_t structure. + */ +#define CH_CFG_OS_INSTANCE_EXTRA_FIELDS \ + /* Add OS instance custom fields here.*/ + +/** + * @brief OS instance initialization hook. + * + * @param[in] oip pointer to the @p os_instance_t structure + */ +#define CH_CFG_OS_INSTANCE_INIT_HOOK(oip) { \ + /* Add OS instance initialization code here.*/ \ } /** @@ -655,6 +701,8 @@ * * @note It is invoked from within @p _thread_init() and implicitly from all * the threads creation APIs. + * + * @param[in] tp pointer to the @p thread_t structure */ #define CH_CFG_THREAD_INIT_HOOK(tp) { \ /* Add threads initialization code here.*/ \ @@ -663,6 +711,8 @@ /** * @brief Threads finalization hook. * @details User finalization code added to the @p chThdExit() API. + * + * @param[in] tp pointer to the @p thread_t structure */ #define CH_CFG_THREAD_EXIT_HOOK(tp) { \ /* Add threads finalization code here.*/ \ @@ -671,6 +721,9 @@ /** * @brief Context switch hook. * @details This hook is invoked just before switching between threads. + * + * @param[in] ntp thread being switched in + * @param[in] otp thread being switched out */ #define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ /* Context switch code here.*/ \ @@ -745,6 +798,14 @@ /* Trace code here.*/ \ } +/** + * @brief Runtime Faults Collection Unit hook. + * @details This hook is invoked each time new faults are collected and stored. + */ +#define CH_CFG_RUNTIME_FAULTS_HOOK(mask) { \ + /* Faults handling code here.*/ \ +} + /** @} */ /*===========================================================================*/ diff --git a/platforms/chibios/boards/QMK_PROTON_C/configs/halconf.h b/platforms/chibios/boards/QMK_PROTON_C/configs/halconf.h index d7a639a6d0..8367328a04 100644 --- a/platforms/chibios/boards/QMK_PROTON_C/configs/halconf.h +++ b/platforms/chibios/boards/QMK_PROTON_C/configs/halconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_7_1_ +#define _CHIBIOS_HAL_CONF_VER_8_0_ #include @@ -415,6 +415,26 @@ #define SERIAL_BUFFERS_SIZE 128 #endif +/*===========================================================================*/ +/* SIO driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Default bit rate. + * @details Configuration parameter, this is the baud rate selected for the + * default configuration. + */ +#if !defined(SIO_DEFAULT_BITRATE) || defined(__DOXYGEN__) +#define SIO_DEFAULT_BITRATE 38400 +#endif + +/** + * @brief Support for thread synchronization API. + */ +#if !defined(SIO_USE_SYNCHRONIZATION) || defined(__DOXYGEN__) +#define SIO_USE_SYNCHRONIZATION TRUE +#endif + /*===========================================================================*/ /* SERIAL_USB driver related setting. */ /*===========================================================================*/ @@ -451,11 +471,10 @@ #endif /** - * @brief Enables circular transfers APIs. - * @note Disabling this option saves both code and data space. + * @brief Inserts an assertion on function errors before returning. */ -#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__) -#define SPI_USE_CIRCULAR FALSE +#if !defined(SPI_USE_ASSERT_ON_ERROR) || defined(__DOXYGEN__) +#define SPI_USE_ASSERT_ON_ERROR TRUE #endif /** diff --git a/platforms/chibios/boards/QMK_PROTON_C/configs/mcuconf.h b/platforms/chibios/boards/QMK_PROTON_C/configs/mcuconf.h index 4d7b586c08..cab4c29cf6 100644 --- a/platforms/chibios/boards/QMK_PROTON_C/configs/mcuconf.h +++ b/platforms/chibios/boards/QMK_PROTON_C/configs/mcuconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -186,7 +186,6 @@ /* * PWM driver system settings. */ -#define STM32_PWM_USE_ADVANCED FALSE #define STM32_PWM_USE_TIM1 FALSE #define STM32_PWM_USE_TIM2 FALSE #define STM32_PWM_USE_TIM3 TRUE diff --git a/platforms/chibios/boards/common/configs/chconf.h b/platforms/chibios/boards/common/configs/chconf.h index 18ad609ca1..5db836e37c 100644 --- a/platforms/chibios/boards/common/configs/chconf.h +++ b/platforms/chibios/boards/common/configs/chconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,7 +29,27 @@ #define CHCONF_H #define _CHIBIOS_RT_CONF_ -#define _CHIBIOS_RT_CONF_VER_6_1_ +#define _CHIBIOS_RT_CONF_VER_7_0_ + +/*===========================================================================*/ +/** + * @name System settings + * @{ + */ +/*===========================================================================*/ + +/** + * @brief Handling of instances. + * @note If enabled then threads assigned to various instances can + * interact each other using the same synchronization objects. + * If disabled then each OS instance is a separate world, no + * direct interactions are handled by the OS. + */ +#if !defined(CH_CFG_SMP_MODE) +#define CH_CFG_SMP_MODE FALSE +#endif + +/** @} */ /*===========================================================================*/ /** @@ -160,6 +180,16 @@ #define CH_CFG_USE_TM FALSE #endif +/** + * @brief Time Stamps APIs. + * @details If enabled then the time stamps APIs are included in the kernel. + * + * @note The default is @p TRUE. + */ +#if !defined(CH_CFG_USE_TIMESTAMP) +#define CH_CFG_USE_TIMESTAMP TRUE +#endif + /** * @brief Threads registry APIs. * @details If enabled then the registry APIs are included in the kernel. @@ -631,7 +661,7 @@ * @details User fields added to the end of the @p ch_system_t structure. */ #define CH_CFG_SYSTEM_EXTRA_FIELDS \ - /* Add threads custom fields here.*/ + /* Add system custom fields here.*/ /** * @brief System initialization hook. @@ -639,7 +669,23 @@ * just before interrupts are enabled globally. */ #define CH_CFG_SYSTEM_INIT_HOOK() { \ - /* Add threads initialization code here.*/ \ + /* Add system initialization code here.*/ \ +} + +/** + * @brief OS instance structure extension. + * @details User fields added to the end of the @p os_instance_t structure. + */ +#define CH_CFG_OS_INSTANCE_EXTRA_FIELDS \ + /* Add OS instance custom fields here.*/ + +/** + * @brief OS instance initialization hook. + * + * @param[in] oip pointer to the @p os_instance_t structure + */ +#define CH_CFG_OS_INSTANCE_INIT_HOOK(oip) { \ + /* Add OS instance initialization code here.*/ \ } /** @@ -655,6 +701,8 @@ * * @note It is invoked from within @p _thread_init() and implicitly from all * the threads creation APIs. + * + * @param[in] tp pointer to the @p thread_t structure */ #define CH_CFG_THREAD_INIT_HOOK(tp) { \ /* Add threads initialization code here.*/ \ @@ -663,6 +711,8 @@ /** * @brief Threads finalization hook. * @details User finalization code added to the @p chThdExit() API. + * + * @param[in] tp pointer to the @p thread_t structure */ #define CH_CFG_THREAD_EXIT_HOOK(tp) { \ /* Add threads finalization code here.*/ \ @@ -671,6 +721,9 @@ /** * @brief Context switch hook. * @details This hook is invoked just before switching between threads. + * + * @param[in] ntp thread being switched in + * @param[in] otp thread being switched out */ #define CH_CFG_CONTEXT_SWITCH_HOOK(ntp, otp) { \ /* Context switch code here.*/ \ @@ -745,6 +798,14 @@ /* Trace code here.*/ \ } +/** + * @brief Runtime Faults Collection Unit hook. + * @details This hook is invoked each time new faults are collected and stored. + */ +#define CH_CFG_RUNTIME_FAULTS_HOOK(mask) { \ + /* Faults handling code here.*/ \ +} + /** @} */ /*===========================================================================*/ diff --git a/platforms/chibios/boards/common/configs/halconf.h b/platforms/chibios/boards/common/configs/halconf.h index c80f67ee27..1805a77438 100644 --- a/platforms/chibios/boards/common/configs/halconf.h +++ b/platforms/chibios/boards/common/configs/halconf.h @@ -1,5 +1,5 @@ /* - ChibiOS - Copyright (C) 2006..2018 Giovanni Di Sirio + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. @@ -29,7 +29,7 @@ #define HALCONF_H #define _CHIBIOS_HAL_CONF_ -#define _CHIBIOS_HAL_CONF_VER_7_1_ +#define _CHIBIOS_HAL_CONF_VER_8_0_ #include @@ -415,6 +415,26 @@ #define SERIAL_BUFFERS_SIZE 128 #endif +/*===========================================================================*/ +/* SIO driver related settings. */ +/*===========================================================================*/ + +/** + * @brief Default bit rate. + * @details Configuration parameter, this is the baud rate selected for the + * default configuration. + */ +#if !defined(SIO_DEFAULT_BITRATE) || defined(__DOXYGEN__) +#define SIO_DEFAULT_BITRATE 38400 +#endif + +/** + * @brief Support for thread synchronization API. + */ +#if !defined(SIO_USE_SYNCHRONIZATION) || defined(__DOXYGEN__) +#define SIO_USE_SYNCHRONIZATION TRUE +#endif + /*===========================================================================*/ /* SERIAL_USB driver related setting. */ /*===========================================================================*/ @@ -451,11 +471,10 @@ #endif /** - * @brief Enables circular transfers APIs. - * @note Disabling this option saves both code and data space. + * @brief Inserts an assertion on function errors before returning. */ -#if !defined(SPI_USE_CIRCULAR) || defined(__DOXYGEN__) -#define SPI_USE_CIRCULAR FALSE +#if !defined(SPI_USE_ASSERT_ON_ERROR) || defined(__DOXYGEN__) +#define SPI_USE_ASSERT_ON_ERROR TRUE #endif /** diff --git a/platforms/chibios/drivers/ws2812_spi.c b/platforms/chibios/drivers/ws2812_spi.c index 76191db165..01d8148875 100644 --- a/platforms/chibios/drivers/ws2812_spi.c +++ b/platforms/chibios/drivers/ws2812_spi.c @@ -139,7 +139,33 @@ void ws2812_init(void) { #endif // WS2812_SPI_SCK_PIN // TODO: more dynamic baudrate - static const SPIConfig spicfg = {WS2812_SPI_BUFFER_MODE, NULL, PAL_PORT(RGB_DI_PIN), PAL_PAD(RGB_DI_PIN), WS2812_SPI_DIVISOR_CR1_BR_X}; + static const SPIConfig spicfg = { +#ifndef HAL_LLD_SELECT_SPI_V2 +// HAL_SPI_V1 +# if SPI_SUPPORTS_CIRCULAR == TRUE + WS2812_SPI_BUFFER_MODE, +# endif + NULL, // end_cb + PAL_PORT(RGB_DI_PIN), + PAL_PAD(RGB_DI_PIN), + WS2812_SPI_DIVISOR_CR1_BR_X, + 0 +#else + // HAL_SPI_V2 +# if SPI_SUPPORTS_CIRCULAR == TRUE + WS2812_SPI_BUFFER_MODE, +# endif +# if SPI_SUPPORTS_SLAVE_MODE == TRUE + false, +# endif + NULL, // data_cb + NULL, // error_cb + PAL_PORT(RGB_DI_PIN), + PAL_PAD(RGB_DI_PIN), + WS2812_SPI_DIVISOR_CR1_BR_X, + 0 +#endif + }; spiAcquireBus(&WS2812_SPI); /* Acquire ownership of the bus. */ spiStart(&WS2812_SPI, &spicfg); /* Setup transfer parameters. */ diff --git a/platforms/chibios/platform.mk b/platforms/chibios/platform.mk index 6fd1fd83f5..91dd0479bc 100644 --- a/platforms/chibios/platform.mk +++ b/platforms/chibios/platform.mk @@ -39,7 +39,6 @@ ifeq ($(strip $(MCU)), risc-v) STARTUP_MK = $(CHIBIOS_CONTRIB)/os/common/startup/RISCV-ECLIC/compilers/GCC/mk/startup_$(MCU_STARTUP).mk PORT_V = $(CHIBIOS_CONTRIB)/os/common/ports/RISCV-ECLIC/compilers/GCC/mk/port.mk RULESPATH = $(CHIBIOS_CONTRIB)/os/common/startup/RISCV-ECLIC/compilers/GCC - PLATFORM_MK = $(CHIBIOS_CONTRIB)/os/hal/ports/GD/GD32VF103/platform.mk else # ARM Support CHIBIOS_PORT ?= @@ -82,10 +81,15 @@ ifeq ("$(PLATFORM_NAME)","") PLATFORM_NAME = platform endif +# If no MCU port name was specified, use the family instead +ifeq ("$(MCU_PORT_NAME)","") + MCU_PORT_NAME = $(MCU_FAMILY) +endif + ifeq ("$(wildcard $(PLATFORM_MK))","") - PLATFORM_MK = $(CHIBIOS)/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)/$(PLATFORM_NAME).mk + PLATFORM_MK = $(CHIBIOS)/os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES)/$(PLATFORM_NAME).mk ifeq ("$(wildcard $(PLATFORM_MK))","") - PLATFORM_MK = $(CHIBIOS_CONTRIB)/os/hal/ports/$(MCU_FAMILY)/$(MCU_SERIES)/$(PLATFORM_NAME).mk + PLATFORM_MK = $(CHIBIOS_CONTRIB)/os/hal/ports/$(MCU_PORT_NAME)/$(MCU_SERIES)/$(PLATFORM_NAME).mk endif endif diff --git a/platforms/chibios/timer.c b/platforms/chibios/timer.c index e3bdfdcc37..5e01ea6372 100644 --- a/platforms/chibios/timer.c +++ b/platforms/chibios/timer.c @@ -40,7 +40,7 @@ static virtual_timer_t update_timer; # define UPDATE_INTERVAL (((sysinterval_t)1) << (CH_CFG_ST_RESOLUTION - 1)) // VT callback function to keep the overflow bits of the system tick counter updated. -static void update_fn(void *arg) { +static void update_fn(struct ch_virtual_timer *timer, void *arg) { (void)arg; chSysLockFromISR(); get_system_time_ticks(); diff --git a/platforms/chibios/wait.c b/platforms/chibios/wait.c index 56fd6ffcec..88cb5e6d54 100644 --- a/platforms/chibios/wait.c +++ b/platforms/chibios/wait.c @@ -31,7 +31,7 @@ void wait_us(uint16_t duration) { * Only use this timer on the main thread; * other threads need to use their own timer. */ - if (chThdGetSelfX() == &ch.mainthread && duration < (1ULL << (sizeof(gptcnt_t) * 8))) { + if (chThdGetSelfX() == &(currcore->mainthread) && duration < (1ULL << (sizeof(gptcnt_t) * 8))) { gptStart(&WAIT_US_TIMER, &gpt_cfg); gptPolledDelay(&WAIT_US_TIMER, duration); } else { diff --git a/util/uf2conv.py b/util/uf2conv.py index 8677a828c9..efc7263f83 100755 --- a/util/uf2conv.py +++ b/util/uf2conv.py @@ -6,40 +6,13 @@ import re import os import os.path import argparse +import json UF2_MAGIC_START0 = 0x0A324655 # "UF2\n" UF2_MAGIC_START1 = 0x9E5D5157 # Randomly selected UF2_MAGIC_END = 0x0AB16F30 # Ditto -families = { - 'SAMD21': 0x68ed2b88, - 'SAML21': 0x1851780a, - 'SAMD51': 0x55114460, - 'NRF52': 0x1b57745f, - 'STM32F0': 0x647824b6, - 'STM32F1': 0x5ee21072, - 'STM32F2': 0x5d1a0a2e, - 'STM32F3': 0x6b846188, - 'STM32F4': 0x57755a57, - 'STM32F7': 0x53b80f00, - 'STM32G0': 0x300f5633, - 'STM32G4': 0x4c71240a, - 'STM32H7': 0x6db66082, - 'STM32L0': 0x202e3a91, - 'STM32L1': 0x1e1f432d, - 'STM32L4': 0x00ff6919, - 'STM32L5': 0x04240bdf, - 'STM32WB': 0x70d16653, - 'STM32WL': 0x21460ff0, - 'ATMEGA32': 0x16573617, - 'MIMXRT10XX': 0x4FB2D5BD, - 'LPC55': 0x2abc77ec, - 'GD32F350': 0x31D228C6, - 'ESP32S2': 0xbfdd4eee, - 'RP2040': 0xe48bff56 -} - INFO_FILE = "/INFO_UF2.TXT" appstartaddr = 0x2000 @@ -61,8 +34,13 @@ def is_hex(buf): def convert_from_uf2(buf): global appstartaddr + global familyid numblocks = len(buf) // 512 curraddr = None + currfamilyid = None + families_found = {} + prev_flag = None + all_flags_same = True outp = [] for blockno in range(numblocks): ptr = blockno * 512 @@ -78,9 +56,13 @@ def convert_from_uf2(buf): if datalen > 476: assert False, "Invalid UF2 data size at " + ptr newaddr = hd[3] - if curraddr is None: - appstartaddr = newaddr + if (hd[2] & 0x2000) and (currfamilyid == None): + currfamilyid = hd[7] + if curraddr == None or ((hd[2] & 0x2000) and hd[7] != currfamilyid): + currfamilyid = hd[7] curraddr = newaddr + if familyid == 0x0 or familyid == hd[7]: + appstartaddr = newaddr padding = newaddr - curraddr if padding < 0: assert False, "Block out of order at " + ptr @@ -91,8 +73,37 @@ def convert_from_uf2(buf): while padding > 0: padding -= 4 outp += b"\x00\x00\x00\x00" - outp.append(block[32 : 32 + datalen]) + if familyid == 0x0 or ((hd[2] & 0x2000) and familyid == hd[7]): + outp.append(block[32 : 32 + datalen]) curraddr = newaddr + datalen + if hd[2] & 0x2000: + if hd[7] in families_found.keys(): + if families_found[hd[7]] > newaddr: + families_found[hd[7]] = newaddr + else: + families_found[hd[7]] = newaddr + if prev_flag == None: + prev_flag = hd[2] + if prev_flag != hd[2]: + all_flags_same = False + if blockno == (numblocks - 1): + print("--- UF2 File Header Info ---") + families = load_families() + for family_hex in families_found.keys(): + family_short_name = "" + for name, value in families.items(): + if value == family_hex: + family_short_name = name + print("Family ID is {:s}, hex value is 0x{:08x}".format(family_short_name,family_hex)) + print("Target Address is 0x{:08x}".format(families_found[family_hex])) + if all_flags_same: + print("All block flag values consistent, 0x{:04x}".format(hd[2])) + else: + print("Flags were not all the same") + print("----------------------------") + if len(families_found) > 1 and familyid == 0x0: + outp = [] + appstartaddr = 0x0 return b"".join(outp) def convert_to_carray(file_content): @@ -166,12 +177,11 @@ def convert_from_hex_to_uf2(buf): upper = ((rec[4] << 8) | rec[5]) << 16 elif tp == 2: upper = ((rec[4] << 8) | rec[5]) << 4 - assert (upper & 0xffff) == 0 elif tp == 1: break elif tp == 0: - addr = upper | (rec[1] << 8) | rec[2] - if appstartaddr is None: + addr = upper + ((rec[1] << 8) | rec[2]) + if appstartaddr == None: appstartaddr = addr i = 4 while i < len(rec) - 1: @@ -215,7 +225,7 @@ def get_drives(): def has_info(d): try: return os.path.isfile(d + INFO_FILE) - except Exception: + except: return False return list(filter(has_info, drives)) @@ -238,6 +248,22 @@ def write_file(name, buf): print("Wrote %d bytes to %s" % (len(buf), name)) +def load_families(): + # The expectation is that the `uf2families.json` file is in the same + # directory as this script. Make a path that works using `__file__` + # which contains the full path to this script. + filename = "uf2families.json" + pathname = os.path.join(os.path.dirname(os.path.abspath(__file__)), filename) + with open(pathname) as f: + raw_families = json.load(f) + + families = {} + for family in raw_families: + families[family["short_name"]] = int(family["id"], 0) + + return families + + def main(): global appstartaddr, familyid def error(msg): @@ -264,9 +290,13 @@ def main(): help='specify familyID - number or name (default: 0x0)') parser.add_argument('-C' , '--carray', action='store_true', help='convert binary file to a C array, not UF2') + parser.add_argument('-i', '--info', action='store_true', + help='display header information from UF2, do not convert') args = parser.parse_args() appstartaddr = int(args.base, 0) + families = load_families() + if args.family.upper() in families: familyid = families[args.family.upper()] else: @@ -286,9 +316,12 @@ def main(): ext = "uf2" if args.deploy: outbuf = inpbuf - elif from_uf2: + elif from_uf2 and not args.info: outbuf = convert_from_uf2(inpbuf) ext = "bin" + elif from_uf2 and args.info: + outbuf = "" + convert_from_uf2(inpbuf) elif is_hex(inpbuf): outbuf = convert_from_hex_to_uf2(inpbuf.decode("utf-8")) elif args.carray: @@ -296,11 +329,12 @@ def main(): ext = "h" else: outbuf = convert_to_uf2(inpbuf) - print("Converting to %s, output size: %d, start address: 0x%x" % - (ext, len(outbuf), appstartaddr)) + if not args.deploy and not args.info: + print("Converted to %s, output size: %d, start address: 0x%x" % + (ext, len(outbuf), appstartaddr)) if args.convert or ext != "uf2": drives = [] - if args.output is None: + if args.output == None: args.output = "flash." + ext else: drives = get_drives() diff --git a/util/uf2families.json b/util/uf2families.json new file mode 100644 index 0000000000..fafae82a60 --- /dev/null +++ b/util/uf2families.json @@ -0,0 +1,192 @@ +[ + { + "id": "0x16573617", + "short_name": "ATMEGA32", + "description": "Microchip (Atmel) ATmega32" + }, + { + "id": "0x1851780a", + "short_name": "SAML21", + "description": "Microchip (Atmel) SAML21" + }, + { + "id": "0x1b57745f", + "short_name": "NRF52", + "description": "Nordic NRF52" + }, + { + "id": "0x1c5f21b0", + "short_name": "ESP32", + "description": "ESP32" + }, + { + "id": "0x1e1f432d", + "short_name": "STM32L1", + "description": "ST STM32L1xx" + }, + { + "id": "0x202e3a91", + "short_name": "STM32L0", + "description": "ST STM32L0xx" + }, + { + "id": "0x21460ff0", + "short_name": "STM32WL", + "description": "ST STM32WLxx" + }, + { + "id": "0x2abc77ec", + "short_name": "LPC55", + "description": "NXP LPC55xx" + }, + { + "id": "0x300f5633", + "short_name": "STM32G0", + "description": "ST STM32G0xx" + }, + { + "id": "0x31d228c6", + "short_name": "GD32F350", + "description": "GD32F350" + }, + { + "id": "0x04240bdf", + "short_name": "STM32L5", + "description": "ST STM32L5xx" + }, + { + "id": "0x4c71240a", + "short_name": "STM32G4", + "description": "ST STM32G4xx" + }, + { + "id": "0x4fb2d5bd", + "short_name": "MIMXRT10XX", + "description": "NXP i.MX RT10XX" + }, + { + "id": "0x53b80f00", + "short_name": "STM32F7", + "description": "ST STM32F7xx" + }, + { + "id": "0x55114460", + "short_name": "SAMD51", + "description": "Microchip (Atmel) SAMD51" + }, + { + "id": "0x57755a57", + "short_name": "STM32F4", + "description": "ST STM32F401" + }, + { + "id": "0x5a18069b", + "short_name": "FX2", + "description": "Cypress FX2" + }, + { + "id": "0x5d1a0a2e", + "short_name": "STM32F2", + "description": "ST STM32F2xx" + }, + { + "id": "0x5ee21072", + "short_name": "STM32F1", + "description": "ST STM32F103" + }, + { + "id": "0x621e937a", + "short_name": "NRF52833", + "description": "Nordic NRF52833" + }, + { + "id": "0x647824b6", + "short_name": "STM32F0", + "description": "ST STM32F0xx" + }, + { + "id": "0x68ed2b88", + "short_name": "SAMD21", + "description": "Microchip (Atmel) SAMD21" + }, + { + "id": "0x6b846188", + "short_name": "STM32F3", + "description": "ST STM32F3xx" + }, + { + "id": "0x6d0922fa", + "short_name": "STM32F407", + "description": "ST STM32F407" + }, + { + "id": "0x6db66082", + "short_name": "STM32H7", + "description": "ST STM32H7xx" + }, + { + "id": "0x70d16653", + "short_name": "STM32WB", + "description": "ST STM32WBxx" + }, + { + "id": "0x7eab61ed", + "short_name": "ESP8266", + "description": "ESP8266" + }, + { + "id": "0x7f83e793", + "short_name": "KL32L2", + "description": "NXP KL32L2x" + }, + { + "id": "0x8fb060fe", + "short_name": "STM32F407VG", + "description": "ST STM32F407VG" + }, + { + "id": "0xada52840", + "short_name": "NRF52840", + "description": "Nordic NRF52840" + }, + { + "id": "0xbfdd4eee", + "short_name": "ESP32S2", + "description": "ESP32-S2" + }, + { + "id": "0xc47e5767", + "short_name": "ESP32S3", + "description": "ESP32-S3" + }, + { + "id": "0xd42ba06c", + "short_name": "ESP32C3", + "description": "ESP32-C3" + }, + { + "id": "0x2b88d29c", + "short_name": "ESP32C2", + "description": "ESP32-C2" + }, + { + "id": "0x332726f6", + "short_name": "ESP32H2", + "description": "ESP32-H2" + }, + { + "id": "0xe48bff56", + "short_name": "RP2040", + "description": "Raspberry Pi RP2040" + }, + { + "id": "0x00ff6919", + "short_name": "STM32L4", + "description": "ST STM32L4xx" + }, + { + "id": "0x9af03e33", + "short_name": "GD32VF103", + "description": "GigaDevice GD32VF103" + } +] From 75544d91273d1ae9f0255556dc5170478a1a6e49 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 7 Mar 2022 22:22:22 +1100 Subject: [PATCH 027/699] Move Doxygen docs to subdirectory (#16561) --- docs/_summary.md | 16 +- docs/feature_midi.md | 6 +- ...ernals_gpio_control.md => gpio_control.md} | 0 .../defines.md} | 0 .../input_callback_reg.md} | 0 .../midi_device.md} | 0 .../midi_device_setup_process.md} | 0 .../midi_util.md} | 0 .../send_functions.md} | 0 .../sysex_tools.md} | 0 docs/ja/_summary.md | 16 +- ...ernals_gpio_control.md => gpio_control.md} | 4 +- docs/ja/internals_defines.md | 78 ------ docs/ja/internals_input_callback_reg.md | 173 ------------ docs/ja/internals_midi_device.md | 148 ----------- .../ja/internals_midi_device_setup_process.md | 36 --- docs/ja/internals_midi_util.md | 59 ----- docs/ja/internals_send_functions.md | 246 ------------------ docs/ja/internals_sysex_tools.md | 66 ----- docs/ja/proton_c_conversion.md | 2 +- docs/proton_c_conversion.md | 2 +- docs/zh-cn/_summary.md | 16 +- lib/python/qmk/cli/generate/docs.py | 7 +- util/generate_internal_docs.sh | 31 --- 24 files changed, 35 insertions(+), 871 deletions(-) rename docs/{internals_gpio_control.md => gpio_control.md} (100%) rename docs/{internals_defines.md => internals/defines.md} (100%) rename docs/{internals_input_callback_reg.md => internals/input_callback_reg.md} (100%) rename docs/{internals_midi_device.md => internals/midi_device.md} (100%) rename docs/{internals_midi_device_setup_process.md => internals/midi_device_setup_process.md} (100%) rename docs/{internals_midi_util.md => internals/midi_util.md} (100%) rename docs/{internals_send_functions.md => internals/send_functions.md} (100%) rename docs/{internals_sysex_tools.md => internals/sysex_tools.md} (100%) rename docs/ja/{internals_gpio_control.md => gpio_control.md} (96%) delete mode 100644 docs/ja/internals_defines.md delete mode 100644 docs/ja/internals_input_callback_reg.md delete mode 100644 docs/ja/internals_midi_device.md delete mode 100644 docs/ja/internals_midi_device_setup_process.md delete mode 100644 docs/ja/internals_midi_util.md delete mode 100644 docs/ja/internals_send_functions.md delete mode 100644 docs/ja/internals_sysex_tools.md delete mode 100755 util/generate_internal_docs.sh diff --git a/docs/_summary.md b/docs/_summary.md index 74203aa0f8..250a48fe6b 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -147,7 +147,7 @@ * [EEPROM Driver](eeprom_driver.md) * ['serial' Driver](serial_driver.md) * [UART Driver](uart_driver.md) - * [GPIO Controls](internals_gpio_control.md) + * [GPIO Controls](gpio_control.md) * [Keyboard Guidelines](hardware_keyboard_guidelines.md) * Python Development @@ -183,10 +183,10 @@ * [Understanding QMK](understanding_qmk.md) * QMK Internals (In Progress) - * [Defines](internals_defines.md) - * [Input Callback Reg](internals_input_callback_reg.md) - * [Midi Device](internals_midi_device.md) - * [Midi Device Setup Process](internals_midi_device_setup_process.md) - * [Midi Util](internals_midi_util.md) - * [Send Functions](internals_send_functions.md) - * [Sysex Tools](internals_sysex_tools.md) + * [Defines](internals/defines.md) + * [Input Callback Reg](internals/input_callback_reg.md) + * [Midi Device](internals/midi_device.md) + * [Midi Device Setup Process](internals/midi_device_setup_process.md) + * [Midi Util](internals/midi_util.md) + * [Send Functions](internals/send_functions.md) + * [Sysex Tools](internals/sysex_tools.md) diff --git a/docs/feature_midi.md b/docs/feature_midi.md index 3da5c4940a..490bf7cc7d 100644 --- a/docs/feature_midi.md +++ b/docs/feature_midi.md @@ -254,7 +254,7 @@ For the above, the `MI_C` keycode will produce a C3 (note number 48), and so on. diff --git a/docs/internals_gpio_control.md b/docs/gpio_control.md similarity index 100% rename from docs/internals_gpio_control.md rename to docs/gpio_control.md diff --git a/docs/internals_defines.md b/docs/internals/defines.md similarity index 100% rename from docs/internals_defines.md rename to docs/internals/defines.md diff --git a/docs/internals_input_callback_reg.md b/docs/internals/input_callback_reg.md similarity index 100% rename from docs/internals_input_callback_reg.md rename to docs/internals/input_callback_reg.md diff --git a/docs/internals_midi_device.md b/docs/internals/midi_device.md similarity index 100% rename from docs/internals_midi_device.md rename to docs/internals/midi_device.md diff --git a/docs/internals_midi_device_setup_process.md b/docs/internals/midi_device_setup_process.md similarity index 100% rename from docs/internals_midi_device_setup_process.md rename to docs/internals/midi_device_setup_process.md diff --git a/docs/internals_midi_util.md b/docs/internals/midi_util.md similarity index 100% rename from docs/internals_midi_util.md rename to docs/internals/midi_util.md diff --git a/docs/internals_send_functions.md b/docs/internals/send_functions.md similarity index 100% rename from docs/internals_send_functions.md rename to docs/internals/send_functions.md diff --git a/docs/internals_sysex_tools.md b/docs/internals/sysex_tools.md similarity index 100% rename from docs/internals_sysex_tools.md rename to docs/internals/sysex_tools.md diff --git a/docs/ja/_summary.md b/docs/ja/_summary.md index b90480041c..81b5756c27 100644 --- a/docs/ja/_summary.md +++ b/docs/ja/_summary.md @@ -137,7 +137,7 @@ * [EEPROM ドライバ](ja/eeprom_driver.md) * [シリアル ドライバ](ja/serial_driver.md) * [UART ドライバ](ja/uart_driver.md) - * [GPIO 制御](ja/internals_gpio_control.md) + * [GPIO 制御](ja/gpio_control.md) * [キーボード ガイドライン](ja/hardware_keyboard_guidelines.md) * Python 開発 @@ -173,10 +173,10 @@ * [QMK を理解する](ja/understanding_qmk.md) * QMK の内部詳細(作成中) - * [定義](ja/internals_defines.md) - * [入力コールバック登録](ja/internals_input_callback_reg.md) - * [Midi デバイス](ja/internals_midi_device.md) - * [Midi デバイスのセットアップ手順](ja/internals_midi_device_setup_process.md) - * [Midi ユーティリティ](ja/internals_midi_util.md) - * [Midi 送信関数](ja/internals_send_functions.md) - * [Sysex Tools](ja/internals_sysex_tools.md) + * [定義](ja/internals/defines.md) + * [入力コールバック登録](ja/internals/input_callback_reg.md) + * [Midi デバイス](ja/internals/midi_device.md) + * [Midi デバイスのセットアップ手順](ja/internals/midi_device_setup_process.md) + * [Midi ユーティリティ](ja/internals/midi_util.md) + * [Midi 送信関数](ja/internals/send_functions.md) + * [Sysex Tools](ja/internals/sysex_tools.md) diff --git a/docs/ja/internals_gpio_control.md b/docs/ja/gpio_control.md similarity index 96% rename from docs/ja/internals_gpio_control.md rename to docs/ja/gpio_control.md index 60c5367870..7bece3e0c7 100644 --- a/docs/ja/internals_gpio_control.md +++ b/docs/ja/gpio_control.md @@ -1,8 +1,8 @@ # GPIO 制御 :id=gpio-control QMK には、マイクロコントローラに依存しない GPIO 制御抽象レイヤーがあります。これは異なるプラットフォーム間でピン制御に簡単にアクセスできるようにするためのものです。 diff --git a/docs/ja/internals_defines.md b/docs/ja/internals_defines.md deleted file mode 100644 index 512730df75..0000000000 --- a/docs/ja/internals_defines.md +++ /dev/null @@ -1,78 +0,0 @@ -# `defines` グループ {#group__defines} - -## 概要 - -メンバー | 説明 ---------------------------------|--------------------------------------------- -`define `[`SYSEX_BEGIN`](#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79) | -`define `[`SYSEX_END`](#group__defines_1ga753706d1d28e6f96d7caf1973e80feed) | -`define `[`MIDI_STATUSMASK`](#group__defines_1gab78a1c818a5f5dab7a8946543f126c69) | -`define `[`MIDI_CHANMASK`](#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909) | -`define `[`MIDI_CC`](#group__defines_1ga45f116a1daab76b3c930c2cecfaef215) | -`define `[`MIDI_NOTEON`](#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7) | -`define `[`MIDI_NOTEOFF`](#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc) | -`define `[`MIDI_AFTERTOUCH`](#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f) | -`define `[`MIDI_PITCHBEND`](#group__defines_1gabcc799504e8064679bca03f232223af4) | -`define `[`MIDI_PROGCHANGE`](#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42) | -`define `[`MIDI_CHANPRESSURE`](#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe) | -`define `[`MIDI_CLOCK`](#group__defines_1gafa5e4e295aafd15ab7893344599b3b89) | -`define `[`MIDI_TICK`](#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7) | -`define `[`MIDI_START`](#group__defines_1ga8233631c85823aa546f932ad8975caa4) | -`define `[`MIDI_CONTINUE`](#group__defines_1gab24430f0081e27215b0da84dd0ee745c) | -`define `[`MIDI_STOP`](#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62) | -`define `[`MIDI_ACTIVESENSE`](#group__defines_1gacd88ed42dba52bb4b2052c5656362677) | -`define `[`MIDI_RESET`](#group__defines_1ga02947f30ca62dc332fdeb10c5868323b) | -`define `[`MIDI_TC_QUARTERFRAME`](#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31) | -`define `[`MIDI_SONGPOSITION`](#group__defines_1ga412f6ed33a2150051374bee334ee1705) | -`define `[`MIDI_SONGSELECT`](#group__defines_1gafcab254838b028365ae0259729e72c4e) | -`define `[`MIDI_TUNEREQUEST`](#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795) | -`define `[`SYSEX_EDUMANUFID`](#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f) | - -## メンバー - -#### `define `[`SYSEX_BEGIN`](#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79) {#group__defines_1ga1a3c39bb790dda8a368c4247caabcf79} - -#### `define `[`SYSEX_END`](#group__defines_1ga753706d1d28e6f96d7caf1973e80feed) {#group__defines_1ga753706d1d28e6f96d7caf1973e80feed} - -#### `define `[`MIDI_STATUSMASK`](#group__defines_1gab78a1c818a5f5dab7a8946543f126c69) {#group__defines_1gab78a1c818a5f5dab7a8946543f126c69} - -#### `define `[`MIDI_CHANMASK`](#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909) {#group__defines_1ga239edc0a6f8405d3a8f2804f1590b909} - -#### `define `[`MIDI_CC`](#group__defines_1ga45f116a1daab76b3c930c2cecfaef215) {#group__defines_1ga45f116a1daab76b3c930c2cecfaef215} - -#### `define `[`MIDI_NOTEON`](#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7) {#group__defines_1gafd416f27bf3590868c0c1f55c30be4c7} - -#### `define `[`MIDI_NOTEOFF`](#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc) {#group__defines_1gabed24bea2d989fd655e2ef2ad0765adc} - -#### `define `[`MIDI_AFTERTOUCH`](#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f) {#group__defines_1ga3a322d8cfd53576a2e167c1840551b0f} - -#### `define `[`MIDI_PITCHBEND`](#group__defines_1gabcc799504e8064679bca03f232223af4) {#group__defines_1gabcc799504e8064679bca03f232223af4} - -#### `define `[`MIDI_PROGCHANGE`](#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42) {#group__defines_1gaefb3f1595ffbb9db66b46c2c919a3d42} - -#### `define `[`MIDI_CHANPRESSURE`](#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe) {#group__defines_1gaeb3281cc7fcd0daade8ed3d2dfc33dbe} - -#### `define `[`MIDI_CLOCK`](#group__defines_1gafa5e4e295aafd15ab7893344599b3b89) {#group__defines_1gafa5e4e295aafd15ab7893344599b3b89} - -#### `define `[`MIDI_TICK`](#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7) {#group__defines_1ga3b99408ff864613765d4c3c2ceb52aa7} - -#### `define `[`MIDI_START`](#group__defines_1ga8233631c85823aa546f932ad8975caa4) {#group__defines_1ga8233631c85823aa546f932ad8975caa4} - -#### `define `[`MIDI_CONTINUE`](#group__defines_1gab24430f0081e27215b0da84dd0ee745c) {#group__defines_1gab24430f0081e27215b0da84dd0ee745c} - -#### `define `[`MIDI_STOP`](#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62) {#group__defines_1ga3af9271d4b1f0d22904a0b055f48cf62} - -#### `define `[`MIDI_ACTIVESENSE`](#group__defines_1gacd88ed42dba52bb4b2052c5656362677) {#group__defines_1gacd88ed42dba52bb4b2052c5656362677} - -#### `define `[`MIDI_RESET`](#group__defines_1ga02947f30ca62dc332fdeb10c5868323b) {#group__defines_1ga02947f30ca62dc332fdeb10c5868323b} - -#### `define `[`MIDI_TC_QUARTERFRAME`](#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31) {#group__defines_1gaaa072f33590e236d1bfd8f28e833ae31} - -#### `define `[`MIDI_SONGPOSITION`](#group__defines_1ga412f6ed33a2150051374bee334ee1705) {#group__defines_1ga412f6ed33a2150051374bee334ee1705} - -#### `define `[`MIDI_SONGSELECT`](#group__defines_1gafcab254838b028365ae0259729e72c4e) {#group__defines_1gafcab254838b028365ae0259729e72c4e} - -#### `define `[`MIDI_TUNEREQUEST`](#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795) {#group__defines_1ga8100b907b8c0a84e58b1c53dcd9bd795} - -#### `define `[`SYSEX_EDUMANUFID`](#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f) {#group__defines_1ga5ef855ed955b00a2239ca16afbeb164f} - diff --git a/docs/ja/internals_input_callback_reg.md b/docs/ja/internals_input_callback_reg.md deleted file mode 100644 index 864b1d5750..0000000000 --- a/docs/ja/internals_input_callback_reg.md +++ /dev/null @@ -1,173 +0,0 @@ -# group `input_callback_reg` {#group__input__callback__reg} - - - -これらは受信コールバックを登録するために使用する関数です。 - -関数は、適切な midi メッセージが関連するデバイスの入力と一致した場合に呼び出されます。 - -## 概要 - -| メンバー | 説明 | ---------------------------------|--------------------------------------------- -| `public void `[`midi_register_cc_callback`](#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | コントロールチェンジメッセージ受信コールバックを登録する。 | -| `public void `[`midi_register_noteon_callback`](#group__input__callback__reg_1ga3962f276c17618923f1152779552103e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | ノートオン受信コールバックを登録する。 | -| `public void `[`midi_register_noteoff_callback`](#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | ノートオフ受信コールバックを登録する。 | -| `public void `[`midi_register_aftertouch_callback`](#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | アフタータッチ受信コールバックを登録する。 | -| `public void `[`midi_register_pitchbend_callback`](#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | ピッチベンド受信コールバックを登録する。 | -| `public void `[`midi_register_songposition_callback`](#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` | ソングポジション受信コールバックを登録する。 | -| `public void `[`midi_register_progchange_callback`](#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | プログラムチェンジ受信コールバックを登録する。 | -| `public void `[`midi_register_chanpressure_callback`](#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | チャンネルプレッシャー受信コールバックを登録する。 | -| `public void `[`midi_register_songselect_callback`](#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | ソングセレクト受信コールバックを登録する。 | -| `public void `[`midi_register_tc_quarterframe_callback`](#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` | タイムコードクォータフレーム受信コールバックを登録する。 | -| `public void `[`midi_register_realtime_callback`](#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` | リアルタイム受信コールバックを登録する。 | -| `public void `[`midi_register_tunerequest_callback`](#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` | チューンリクエスト受信コールバックを登録する。 | -| `public void `[`midi_register_sysex_callback`](#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_sysex_func_t func)` | システムエクスクルーシブ受信コールバックを登録する。 | -| `public void `[`midi_register_fallthrough_callback`](#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` | フォールスルー受信コールバックを登録する。 | -| `public void `[`midi_register_catchall_callback`](#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` | キャッチオール受信コールバックを登録する。 | - -## メンバー - -#### `public void `[`midi_register_cc_callback`](#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga64ab672abbbe393c9c4a83110c8df718} - -コントロールチェンジメッセージ受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_noteon_callback`](#group__input__callback__reg_1ga3962f276c17618923f1152779552103e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga3962f276c17618923f1152779552103e} - -ノートオン受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_noteoff_callback`](#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gac847b66051bd6d53b762958be0ec4c6d} - -ノートオフ受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_aftertouch_callback`](#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gaa95bc901bd9edff956a667c9a69dd01f} - -アフタータッチ受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_pitchbend_callback`](#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1ga071a28f02ba14f53de219be70ebd9a48} - -ピッチベンド受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_songposition_callback`](#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_three_byte_func_t func)` {#group__input__callback__reg_1gaf2adfd79637f3553d8f26deb1ca22ed6} - -ソングポジション受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_progchange_callback`](#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1gae6ba1a35a4cde9bd15dd42f87401d127} - -プログラムチェンジ受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_chanpressure_callback`](#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1ga39b31f1f4fb93917ce039b958f21b4f5} - -チャンネルプレッシャー受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_songselect_callback`](#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1gaf9aafc76a2dc4b9fdbb4106cbda6ce72} - -ソングセレクト受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_tc_quarterframe_callback`](#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_two_byte_func_t func)` {#group__input__callback__reg_1ga0a119fada2becc628cb15d753b257e6e} - -タイムコードクォータフレーム受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_realtime_callback`](#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` {#group__input__callback__reg_1ga764f440e857b89084b1a07f9da2ff93a} - -リアルタイム受信コールバックを登録する。 - -全てのリアルタイムメッセージ型に対してコールバックが呼ばれます。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_tunerequest_callback`](#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_one_byte_func_t func)` {#group__input__callback__reg_1gae40ff3ce20bda79fef87da24b8321cb1} - -チューンリクエスト受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_sysex_callback`](#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_sysex_func_t func)` {#group__input__callback__reg_1ga63ce9631b025785c1848d0122d4c4c48} - -システムエクスクルーシブ受信コールバックを登録する。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_fallthrough_callback`](#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` {#group__input__callback__reg_1ga7ed189164aa9682862b3181153afbd94} - -フォールスルー受信コールバックを登録する。 - -より具体的なコールバックが見つからない場合にのみ呼ばれます。例えば、ノートオン受信コールバックを登録していないがノートオンメッセージを受け取った場合、フォールスルー受信コールバックが登録されている場合はそれが呼ばれます。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 - -#### `public void `[`midi_register_catchall_callback`](#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t func)` {#group__input__callback__reg_1ga9dbfed568d047a6cd05708f11fe39e99} - -キャッチオール受信コールバックを登録する。 - -登録されている場合は、より具体的なコールバックあるいはフォールスルー受信コールバックが登録されている場合でも、一致する全てのメッセージに対してキャッチオール受信コールバックが呼ばれます。 - -#### パラメータ -* `device` 関連するデバイス - -* `func` 登録するコールバック関数 diff --git a/docs/ja/internals_midi_device.md b/docs/ja/internals_midi_device.md deleted file mode 100644 index 6adc2d5ad9..0000000000 --- a/docs/ja/internals_midi_device.md +++ /dev/null @@ -1,148 +0,0 @@ -# `midi_device` グループ {#group__midi__device} - - - -独自の MIDI デバイスを実装する時に、関数を使います。 - -実際にデバイスを介してバイトを送信するために、送信関数を設定します。このメソッドは、このデバイスで例えば midi_send_cc のような送信関数を呼ぶ時に呼ばれます。 - -midi_device_input を使ってデバイスからの入力データを処理し、それをデバイスに関連付けられたコールバックで渡します。 - -デバイスのプロセス関数の最初に呼び出される関数が必要な場合、midi_device_set_pre_input_process_func を使います。通常、入力をポーリングして midi_device_input に渡します。 - -## 概要 - -メンバー | 説明 ---------------------------------|--------------------------------------------- -`define `[`MIDI_INPUT_QUEUE_LENGTH`](#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8) | -`enum `[`input_state_t`](#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621) | -`public void `[`midi_device_input`](#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t cnt,uint8_t * input)` | 入力バイトを処理します。この関数はバイトを解析し、指定されたデバイスに関連する適切なコールバックを呼びます。この関数は、カスタムデバイスを作成していて、MIDI 入力が必要な場合に使います。 -`public void `[`midi_device_set_send_func`](#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t send_func)` | 出力データバイトの送信に使われるコールバック関数を設定します。これは、カスタムデバイスを作成している場合のみ使われます。ロックを気にすることなく様々な MIDI 送信関数を呼び出すことができるように、コールバック関数で割り込みを無効にすることができます。 -`public void `[`midi_device_set_pre_input_process_func`](#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_no_byte_func_t pre_process_func)` | midi_device_process 呼び出しの最初に呼ばれるコールバックを設定します。これは入力データをポーリングし、midi_device_input 関数を介してデータを送信できます。カスタムデバイスを作成している場合のみ、これを使う可能性があります。 -`struct `[`_midi_device`](docs/api_midi_device.md#struct__midi__device) | この構造体は、MIDI デバイスの入出力関数と処理データを表します。 - -## メンバー - -#### `define `[`MIDI_INPUT_QUEUE_LENGTH`](#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8) {#group__midi__device_1ga4aaa419caebdca2bbdfc1331e79781a8} - -#### `enum `[`input_state_t`](#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621) {#group__midi__device_1gac203e877d3df4275ceb8e7180a61f621} - -値 | 説明 ---------------------------------|--------------------------------------------- -IDLE | -ONE_BYTE_MESSAGE | -TWO_BYTE_MESSAGE | -THREE_BYTE_MESSAGE | -SYSEX_MESSAGE | - -#### `public void `[`midi_device_input`](#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t cnt,uint8_t * input)` {#group__midi__device_1gad8d3db8eb35d9cfa51ef036a0a9d70db} - -入力バイトを処理します。この関数はバイトを解析し、指定されたデバイスに関連する適切なコールバックを呼びます。この関数は、カスタムデバイスを作成していて、MIDI 入力が必要な場合に使います。 - -#### パラメータ -* `device` 入力を関連付ける MIDI デバイス - -* `cnt` 処理中のバイト数 - -* `input` 処理するバイトデータ - -#### `public void `[`midi_device_set_send_func`](#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_var_byte_func_t send_func)` {#group__midi__device_1ga59f5a46bdd4452f186cc73d9e96d4673} - -出力データバイトの送信に使われるコールバック関数を設定します。これは、カスタムデバイスを作成している場合のみ使われます。ロックを気にすることなく様々な MIDI 送信関数を呼び出すことができるように、コールバック関数で割り込みを無効にすることができます。 - -#### パラメータ -* `device` このコールバックを関連付ける MIDI デバイス - -* `send_func` 送信を行うコールバック関数 - -#### `public void `[`midi_device_set_pre_input_process_func`](#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69)`(`[`MidiDevice`](#struct__midi__device)` * device,midi_no_byte_func_t pre_process_func)` {#group__midi__device_1ga4de0841b87c04fc23cb56b6451f33b69} - -midi_device_process 呼び出しの最初に呼ばれるコールバックを設定します。これは入力データをポーリングし、midi_device_input 関数を介してデータを送信できます。カスタムデバイスを作成している場合のみ、これを使う可能性があります。 - -#### パラメータ -* `device` このコールバックを関連付ける MIDI デバイス - -* `midi_no_byte_func_t` 実際のコールバック関数 - -# `_midi_device` 構造体 {#struct__midi__device} - -この構造体は、MIDI デバイスの入出力関数と処理データを表します。 - -デバイスは、実際の物理デバイス [シリアルポート、USB ポート]、または仮想デバイスを表すことができます。この構造体を直接変更する必要はありません。 - -## 概要 - -| メンバー | 説明 ---------------------------------|--------------------------------------------- -`public midi_var_byte_func_t `[`send_func`](docs/api_midi_device.md#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9) | -`public midi_three_byte_func_t `[`input_cc_callback`](docs/api_midi_device.md#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1) | -`public midi_three_byte_func_t `[`input_noteon_callback`](docs/api_midi_device.md#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c) | -`public midi_three_byte_func_t `[`input_noteoff_callback`](docs/api_midi_device.md#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84) | -`public midi_three_byte_func_t `[`input_aftertouch_callback`](docs/api_midi_device.md#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f) | -`public midi_three_byte_func_t `[`input_pitchbend_callback`](docs/api_midi_device.md#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18) | -`public midi_three_byte_func_t `[`input_songposition_callback`](docs/api_midi_device.md#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586) | -`public midi_two_byte_func_t `[`input_progchange_callback`](docs/api_midi_device.md#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da) | -`public midi_two_byte_func_t `[`input_chanpressure_callback`](docs/api_midi_device.md#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7) | -`public midi_two_byte_func_t `[`input_songselect_callback`](docs/api_midi_device.md#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f) | -`public midi_two_byte_func_t `[`input_tc_quarterframe_callback`](docs/api_midi_device.md#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0) | -`public midi_one_byte_func_t `[`input_realtime_callback`](docs/api_midi_device.md#struct__midi__device_1a9448eba4afb7e43650434748db3777be) | -`public midi_one_byte_func_t `[`input_tunerequest_callback`](docs/api_midi_device.md#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d) | -`public midi_sysex_func_t `[`input_sysex_callback`](docs/api_midi_device.md#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2) | -`public midi_var_byte_func_t `[`input_fallthrough_callback`](docs/api_midi_device.md#struct__midi__device_1abb974ec6d734001b4a0e370f292be503) | -`public midi_var_byte_func_t `[`input_catchall_callback`](docs/api_midi_device.md#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8) | -`public midi_no_byte_func_t `[`pre_input_process_callback`](docs/api_midi_device.md#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754) | -`public uint8_t `[`input_buffer`](docs/api_midi_device.md#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a) | -`public input_state_t `[`input_state`](docs/api_midi_device.md#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39) | -`public uint16_t `[`input_count`](docs/api_midi_device.md#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d) | -`public uint8_t `[`input_queue_data`](docs/api_midi_device.md#struct__midi__device_1ada41de021135dc423abedcbb30f366ff) | -`public `[`byteQueue_t`](#structbyte_queue__t)` `[`input_queue`](#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f) | - -## メンバー - -#### `public midi_var_byte_func_t `[`send_func`](docs/api_midi_device.md#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9) {#struct__midi__device_1a25d4c94b4bbccd5b98f1032b469f3ff9} - -#### `public midi_three_byte_func_t `[`input_cc_callback`](docs/api_midi_device.md#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1) {#struct__midi__device_1a6da5236c1bc73877728df92d213a78d1} - -#### `public midi_three_byte_func_t `[`input_noteon_callback`](docs/api_midi_device.md#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c) {#struct__midi__device_1aa10b15cf1a7fb825a5df0d2abbe34a1c} - -#### `public midi_three_byte_func_t `[`input_noteoff_callback`](docs/api_midi_device.md#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84) {#struct__midi__device_1aaf290043078534d3a5a0ea4c840eba84} - -#### `public midi_three_byte_func_t `[`input_aftertouch_callback`](docs/api_midi_device.md#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f) {#struct__midi__device_1acb0b4901c545cec4b28b126f2d8c315f} - -#### `public midi_three_byte_func_t `[`input_pitchbend_callback`](docs/api_midi_device.md#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18) {#struct__midi__device_1a305fea672caeb996f2233bf8cd2bef18} - -#### `public midi_three_byte_func_t `[`input_songposition_callback`](docs/api_midi_device.md#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586) {#struct__midi__device_1a5f3f13638b3fef3fc561ed1bf301d586} - -#### `public midi_two_byte_func_t `[`input_progchange_callback`](docs/api_midi_device.md#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da) {#struct__midi__device_1adaf1da617c9a10a9dcad00ab1959d3da} - -#### `public midi_two_byte_func_t `[`input_chanpressure_callback`](docs/api_midi_device.md#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7) {#struct__midi__device_1ab7ca2925c539915d43974eff604d85f7} - -#### `public midi_two_byte_func_t `[`input_songselect_callback`](docs/api_midi_device.md#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f) {#struct__midi__device_1a89bed8a5a55376120cfc0a62b42f057f} - -#### `public midi_two_byte_func_t `[`input_tc_quarterframe_callback`](docs/api_midi_device.md#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0) {#struct__midi__device_1ad9813e75d22e284f9f65a907d20600f0} - -#### `public midi_one_byte_func_t `[`input_realtime_callback`](docs/api_midi_device.md#struct__midi__device_1a9448eba4afb7e43650434748db3777be) {#struct__midi__device_1a9448eba4afb7e43650434748db3777be} - -#### `public midi_one_byte_func_t `[`input_tunerequest_callback`](docs/api_midi_device.md#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d) {#struct__midi__device_1a0cb8fd53e00cf1d4202d4fa04d038e8d} - -#### `public midi_sysex_func_t `[`input_sysex_callback`](docs/api_midi_device.md#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2) {#struct__midi__device_1afff9a0ce641762aaef24c1e6953ec9a2} - -#### `public midi_var_byte_func_t `[`input_fallthrough_callback`](docs/api_midi_device.md#struct__midi__device_1abb974ec6d734001b4a0e370f292be503) {#struct__midi__device_1abb974ec6d734001b4a0e370f292be503} - -#### `public midi_var_byte_func_t `[`input_catchall_callback`](docs/api_midi_device.md#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8) {#struct__midi__device_1aae0d535129d4fd650edc98eb3f7584f8} - -#### `public midi_no_byte_func_t `[`pre_input_process_callback`](docs/api_midi_device.md#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754) {#struct__midi__device_1aeb0bb8923d66c23d874e177dc4265754} - -#### `public uint8_t `[`input_buffer`](docs/api_midi_device.md#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a) {#struct__midi__device_1a7c5684857d6af4ebc4dc12da27bd6b2a} - -#### `public input_state_t `[`input_state`](docs/api_midi_device.md#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39) {#struct__midi__device_1a69a687d2d1c449ec15a11c07a5722e39} - -#### `public uint16_t `[`input_count`](docs/api_midi_device.md#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d) {#struct__midi__device_1a68dea8e7b6151e89c85c95caa612ee5d} - -#### `public uint8_t `[`input_queue_data`](docs/api_midi_device.md#struct__midi__device_1ada41de021135dc423abedcbb30f366ff) {#struct__midi__device_1ada41de021135dc423abedcbb30f366ff} - -#### `public `[`byteQueue_t`](#structbyte_queue__t)` `[`input_queue`](#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f) {#struct__midi__device_1a49c8538a8a02193c58e28a56eb695d8f} - diff --git a/docs/ja/internals_midi_device_setup_process.md b/docs/ja/internals_midi_device_setup_process.md deleted file mode 100644 index 9806156452..0000000000 --- a/docs/ja/internals_midi_device_setup_process.md +++ /dev/null @@ -1,36 +0,0 @@ -# `midi_device_setup_process` グループ {#group__midi__device__setup__process} - - - -これらは、デバイスを初期化して実行するために使う必要があるメソッドです。 - -## 概要 - -メンバー | 説明 ---------------------------------|--------------------------------------------- -`public void `[`midi_device_init`](#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9)`(`[`MidiDevice`](#struct__midi__device)` * device)` | デバイスを初期化します。 -`public void `[`midi_device_process`](#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 入力データを処理します。 - -## メンバー - -#### `public void `[`midi_device_init`](#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__midi__device__setup__process_1gaf29deddc94ea98a59daa0bde1aefd9d9} - -デバイスを初期化します。 - -問題のデバイスを使う前にこれを呼び出す必要があります。 - -#### パラメータ -* `device` 初期化するデバイス - -#### `public void `[`midi_device_process`](#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__midi__device__setup__process_1gaa3d5993d0e998a1b59bbf5ab9c7b492b} - -入力データを処理します。 - -このメソッドは入力処理を駆動します。入力コールバックが呼び出されることが予想される場合は、このメソッドを頻繁に呼び出す必要があります。 - -#### パラメータ -* `device` 処理するデバイス - diff --git a/docs/ja/internals_midi_util.md b/docs/ja/internals_midi_util.md deleted file mode 100644 index 5ff9870df9..0000000000 --- a/docs/ja/internals_midi_util.md +++ /dev/null @@ -1,59 +0,0 @@ -# `midi_util` グループ {#group__midi__util} - - - -## 概要 - -| メンバー | 説明 ---------------------------------|--------------------------------------------- -| `enum `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e) | 可能なパケット長の値の列挙型。 -| `public bool `[`midi_is_statusbyte`](#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5)`(uint8_t theByte)` | 指定されたバイトがステータスバイトであるかどうかを検査します。 -| `public bool `[`midi_is_realtime`](#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7)`(uint8_t theByte)` | 指定されたバイトがリアルタイムメッセージであるかどうかを検査します。 -| `public `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e)` `[`midi_packet_length`](#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175)`(uint8_t status)` | 指定されたステータスバイトに関連付けられたパケットの長さを調べます。 - -## メンバー - -#### `enum `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e) {#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e} - -| 値 | 説明 ---------------------------------|--------------------------------------------- -UNDEFINED | -ONE | -TWO | -THREE | - -可能なパケット長の値の列挙型。 - -#### `public bool `[`midi_is_statusbyte`](#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5)`(uint8_t theByte)` {#group__midi__util_1ga12e3b42ff9cbb4b4f2bc455fc8743ee5} - -指定されたバイトがステータスバイトであるかどうかを検査します。 - -#### パラメータ -* `theByte` 検査するバイト - -#### 返り値 -指定されたバイトが MIDI ステータスバイトの場合は true - -#### `public bool `[`midi_is_realtime`](#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7)`(uint8_t theByte)` {#group__midi__util_1gad2f52c363e34a8000d80c983c324e2d7} - -指定されたバイトがリアルタイムメッセージであるかどうかを検査します。 - -#### パラメータ -* `theByte` 検査するバイト - -#### 返り値 -リアルタイムメッセージの場合は true、それ以外の場合は false - -#### `public `[`midi_packet_length_t`](#group__midi__util_1gae29ff56aee2b430ffe53933b97e5e79e)` `[`midi_packet_length`](#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175)`(uint8_t status)` {#group__midi__util_1gaa168b43af6ae9de0debce1625e4b8175} - -指定されたステータスバイトに関連付けられたパケットの長さを調べます。 - -#### パラメータ -* `status` ステータスバイト - -#### 返り値 -パケットの長さ。バイトがステータスバイトではない場合、あるいは sysex ステータスバイトの場合は、UNDEFINED を返します。 - diff --git a/docs/ja/internals_send_functions.md b/docs/ja/internals_send_functions.md deleted file mode 100644 index 2747d3997f..0000000000 --- a/docs/ja/internals_send_functions.md +++ /dev/null @@ -1,246 +0,0 @@ -# `send_functions` グループ {#group__send__functions} - - - -これらは、デバイスを介して MIDI データを送信するために使う関数です。 - -## 概要 - -メンバー | 説明 ---------------------------------|--------------------------------------------- -`public void `[`midi_send_cc`](#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t val)` | 指定されたデバイスを介して、コントロールチェンジメッセージを送信します。 -`public void `[`midi_send_noteon`](#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` | 指定されたデバイスを介してノートオンメッセージを送信します。 -`public void `[`midi_send_noteoff`](#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` | 指定されたデバイスを介してノートオフメッセージを送信します。 -`public void `[`midi_send_aftertouch`](#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t note_num,uint8_t amt)` | 指定されたデバイスを介してアフタータッチメッセージを送信します。 -`public void `[`midi_send_pitchbend`](#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,int16_t amt)` | 指定されたデバイスを介してピッチベンドメッセージを送信します。 -`public void `[`midi_send_programchange`](#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num)` | 指定されたデバイスを介してプログラムチェンジメッセージを送信します。 -`public void `[`midi_send_channelpressure`](#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t amt)` | 指定されたデバイスを介してチャンネルプレッシャーメッセージを送信します。 -`public void `[`midi_send_clock`](#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してクロックメッセージを送信します。 -`public void `[`midi_send_tick`](#group__send__functions_1ga2b43c7d433d940c5b907595aac947972)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してティックメッセージを送信します。 -`public void `[`midi_send_start`](#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してスタートメッセージを送信します。 -`public void `[`midi_send_continue`](#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してコンティニューメッセージを送信します。 -`public void `[`midi_send_stop`](#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してストップメッセージを送信します。 -`public void `[`midi_send_activesense`](#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してアクティブセンスメッセージを送信します。 -`public void `[`midi_send_reset`](#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してリセットメッセージを送信します。 -`public void `[`midi_send_tcquarterframe`](#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t time)` | 指定されたデバイスを介してタイムコードクォータフレームメッセージを送信します。 -`public void `[`midi_send_songposition`](#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t pos)` | 指定されたデバイスを介してソングポジションメッセージを送信します。 -`public void `[`midi_send_songselect`](#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t song)` | 指定されたデバイスを介してソングセレクトメッセージを送信します。 -`public void `[`midi_send_tunerequest`](#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656)`(`[`MidiDevice`](#struct__midi__device)` * device)` | 指定されたデバイスを介してチューンリクエストメッセージを送信します。 -`public void `[`midi_send_byte`](#group__send__functions_1ga857e85eb90b288385642d4d991e09881)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t b)` | 指定されたデバイスを介してバイトを送信します。 -`public void `[`midi_send_data`](#group__send__functions_1ga36e2f2e45369d911b76969361679054b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t byte0,uint8_t byte1,uint8_t byte2)` | 最大3バイトのデータを送信します。 -`public void `[`midi_send_array`](#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t * array)` | フォーマットされた MIDI データの配列を送信します。 - -## メンバー - -#### `public void `[`midi_send_cc`](#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t val)` {#group__send__functions_1gaaf884811c92df405ca8fe1a00082f960} - -指定されたデバイスを介して、コントロールチェンジメッセージ(cc)を送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `num` コントロールチェンジナンバー - -* `val` コントロールチェンジナンバーの値 - -#### `public void `[`midi_send_noteon`](#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` {#group__send__functions_1ga467bcf46dbf03ec269ce565b46bc2775} - -指定されたデバイスを介してノートオンメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `num` ノート番号 - -* `vel` ノートベロシティ - -#### `public void `[`midi_send_noteoff`](#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num,uint8_t vel)` {#group__send__functions_1gaedb7d8805425eef5d47d57ddcb4c7a49} - -指定されたデバイスを介してノートオフメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `num` ノート番号 - -* `vel` ノートベロシティ - -#### `public void `[`midi_send_aftertouch`](#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t note_num,uint8_t amt)` {#group__send__functions_1ga0014847571317a0e34b2ef46a6bc584f} - -指定されたデバイスを介してアフタータッチメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `note_num` ノート番号 - -* `amt` アフタータッチ量 - -#### `public void `[`midi_send_pitchbend`](#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,int16_t amt)` {#group__send__functions_1gae5a4a1e71611e7534be80af9ce3d3491} - -指定されたデバイスを介してピッチベンドメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `amt` ベンド量の範囲: -8192..8191、0 はベンドしないことを意味します - -#### `public void `[`midi_send_programchange`](#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t num)` {#group__send__functions_1ga7b15588ef25e5e1ff09c2afc3151ce86} - -指定されたデバイスを介してプログラムチェンジメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `num` 変更先のプログラム - -#### `public void `[`midi_send_channelpressure`](#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t chan,uint8_t amt)` {#group__send__functions_1gaf23e69fdf812e89c0036f51f88ab2e1b} - -指定されたデバイスを介してチャンネルプレッシャーメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `chan` 送信するチャンネル、0-15 - -* `amt` チャンネルプレッシャーの量 - -#### `public void `[`midi_send_clock`](#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga4e1b11a7cdb0875f6e03ce7c79c581aa} - -指定されたデバイスを介してクロックメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_tick`](#group__send__functions_1ga2b43c7d433d940c5b907595aac947972)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga2b43c7d433d940c5b907595aac947972} - -指定されたデバイスを介してティックメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_start`](#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga1569749a8d58ccc56789289d7c7245cc} - -指定されたデバイスを介してスタートメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_continue`](#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1gaed5dc29d754a27372e89ab8bc20ee120} - -指定されたデバイスを介してコンティニューメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_stop`](#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga026e1a620276cb653ac501aa0d12a988} - -指定されたデバイスを介してストップメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_activesense`](#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga9b6e4c6ce4719d2604187b325620db37} - -指定されたデバイスを介してアクティブセンスメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_reset`](#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga3671e39a6d93ca9568fc493001af1b1b} - -指定されたデバイスを介してリセットメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_tcquarterframe`](#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t time)` {#group__send__functions_1ga5b85639910eec280bb744c934d0fd45a} - -指定されたデバイスを介してタイムコードクォータフレームメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `time` このクォータフレームの時間。範囲は、0..16383 - -#### `public void `[`midi_send_songposition`](#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t pos)` {#group__send__functions_1gab1c9eeef3b57a8cd2e6128d18e85eb7f} - -指定されたデバイスを介してソングポジションメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `pos` ソングポジション - -#### `public void `[`midi_send_songselect`](#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t song)` {#group__send__functions_1ga42de7838ba70d949af9a50f9facc3c50} - -指定されたデバイスを介してソングセレクトメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `song` 選択するソング - -#### `public void `[`midi_send_tunerequest`](#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656)`(`[`MidiDevice`](#struct__midi__device)` * device)` {#group__send__functions_1ga8db6c7e04d48e4d2266dd59118ca0656} - -指定されたデバイスを介してチューンリクエストメッセージを送信します。 - -#### パラメータ -* `device` 送信に使うデバイス - -#### `public void `[`midi_send_byte`](#group__send__functions_1ga857e85eb90b288385642d4d991e09881)`(`[`MidiDevice`](#struct__midi__device)` * device,uint8_t b)` {#group__send__functions_1ga857e85eb90b288385642d4d991e09881} - -指定されたデバイスを介してバイトを送信します。 - -これは、指定された MIDI デバイスを介してデータを送信する一般的なメソッドです。これは、この API に実装されていない sysex データまたはメッセージがある場合、それらを送信するのに役立ちます。そのようなものを見つけた場合は、私たちがそれらを追加できるように、作者に連絡してください。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `b` 送信するバイト - -#### `public void `[`midi_send_data`](#group__send__functions_1ga36e2f2e45369d911b76969361679054b)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t byte0,uint8_t byte1,uint8_t byte2)` {#group__send__functions_1ga36e2f2e45369d911b76969361679054b} - -最大3バイトのデータを送信します。 - -これを使って sysex を通過できるように count に4の剰余が適用されます。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `count` 送信するバイト数、4の剰余が適用されます - -* `byte0` 最初のバイト - -* `byte1` 2番目のバイト。cnt % 4 != 2 の場合は無視されます - -* `byte2` 3番目のバイト。cnt % 4 != 3 の場合は無視されます - -#### `public void `[`midi_send_array`](#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead)`(`[`MidiDevice`](#struct__midi__device)` * device,uint16_t count,uint8_t * array)` {#group__send__functions_1ga245243cb1da18d2cea18d4b18d846ead} - -フォーマットされた MIDI データの配列を送信します。 - -sysex に使うことができます。 - -#### パラメータ -* `device` 送信に使うデバイス - -* `count` 送信するバイト数 - -* `array` バイトの配列 - diff --git a/docs/ja/internals_sysex_tools.md b/docs/ja/internals_sysex_tools.md deleted file mode 100644 index 629b4f2445..0000000000 --- a/docs/ja/internals_sysex_tools.md +++ /dev/null @@ -1,66 +0,0 @@ -# `sysex_tools` グループ {#group__sysex__tools} - - - -## 概要 - -| メンバー | 説明 ---------------------------------|--------------------------------------------- -| `public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)` | エンコード後のメッセージの長さを計算します。 -| `public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)` | デコード後のメッセージの長さを計算します。 -| `public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)` | sysex メッセージで安全に送信できるようにデータをエンコードします。 -| `public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)` | エンコードされたデータをデコードします。 - -## メンバー - -#### `public uint16_t `[`sysex_encoded_length`](#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a)`(uint16_t decoded_length)` {#group__sysex__tools_1ga061e5607030412d6e62e2390d8013f0a} - -エンコード後のメッセージの長さを計算します。 - -#### パラメータ -* `decoded_length` エンコードするメッセージの長さのバイト数。 - -#### 返り値 -エンコード後のメッセージの長さのバイト数。 - -#### `public uint16_t `[`sysex_decoded_length`](#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0)`(uint16_t encoded_length)` {#group__sysex__tools_1ga121fc227d3acc1c0ea08c9a5c26fa3b0} - -デコード後のメッセージの長さを計算します。 - -#### パラメータ -* `encoded_length` エンコードされたメッセージの長さのバイト数。 - -#### 返り値 -デコードされた後のメッセージの長さのバイト数。 - -#### `public uint16_t `[`sysex_encode`](#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742)`(uint8_t * encoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1ga54d77f8d32f92a6f329daefa2b314742} - -sysex メッセージで安全に送信できるようにデータをエンコードします。 - -#### パラメータ -* `encoded` 出力データバッファは、少なくとも sysex_encoded_length(length) バイトの長さが必要です。 - -* `source` エンコードされるデータの入力バッファ。 - -* `length` 入力バッファからエンコードするバイト数。 - -#### 返り値 -エンコードされたバイト数。 - -#### `public uint16_t `[`sysex_decode`](#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229)`(uint8_t * decoded,const uint8_t * source,uint16_t length)` {#group__sysex__tools_1gaaad1d9ba2d5eca709a0ab4ba40662229} - -エンコードされたデータをデコードします。 - -#### パラメータ -* `decoded` 出力データバッファは、少なくとも sysex_decoded_length(length) バイトの長さが必要です。 - -* `source` デコードされるデータの入力バッファ。 - -* `length` 入力バッファからデコードするバイト数。 - -#### 返り値 -デコードされたバイト数。 - diff --git a/docs/ja/proton_c_conversion.md b/docs/ja/proton_c_conversion.md index 983aed4ee5..8f0c857cba 100644 --- a/docs/ja/proton_c_conversion.md +++ b/docs/ja/proton_c_conversion.md @@ -27,7 +27,7 @@ QMK で現在サポートされているキーボードが Pro Micro(または #endif ``` -`PORTB/DDRB` などが定義されていないというエラーが発生した場合は、ARM と AVR の両方で機能する [GPIO 制御](ja/internals_gpio_control.md) を使用するようにキーボードのコードを変換する必要があります。これは AVR ビルドにまったく影響を与えません。 +`PORTB/DDRB` などが定義されていないというエラーが発生した場合は、ARM と AVR の両方で機能する [GPIO 制御](ja/gpio_control.md) を使用するようにキーボードのコードを変換する必要があります。これは AVR ビルドにまったく影響を与えません。 Proton C には1つのオンボード LED(C13)しかなく、デフォルトでは TXLED(D5) がそれにマップされています。代わりに RXLED(B0) をそれにマッピングしたい場合は、`config.h` に次のように追加してください。 diff --git a/docs/proton_c_conversion.md b/docs/proton_c_conversion.md index 47511e1b1e..1e1b1e806d 100644 --- a/docs/proton_c_conversion.md +++ b/docs/proton_c_conversion.md @@ -20,7 +20,7 @@ This exposes the `CONVERT_TO_PROTON_C` flag that you can use in your code with ` #endif ``` -If you get errors about `PORTB/DDRB`, etc not being defined, so you'll need to convert the keyboard's code to use the [GPIO Controls](internals_gpio_control.md) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. +If you get errors about `PORTB/DDRB`, etc not being defined, so you'll need to convert the keyboard's code to use the [GPIO Controls](gpio_control.md) that will work for both ARM and AVR. This shouldn't affect the AVR builds at all. The Proton C only has one on-board LED (C13), and by default, the TXLED (D5) is mapped to it. If you want the RXLED (B0) mapped to it instead, add this like to your `config.h`: diff --git a/docs/zh-cn/_summary.md b/docs/zh-cn/_summary.md index 8a710a9ec1..dbad1021fa 100644 --- a/docs/zh-cn/_summary.md +++ b/docs/zh-cn/_summary.md @@ -146,7 +146,7 @@ * [EEPROM驱动](zh-cn/eeprom_driver.md) * [串口驱动](zh-cn/serial_driver.md) * [UART驱动](zh-cn/uart_driver.md) - * [操控GPIO](zh-cn/internals_gpio_control.md) + * [操控GPIO](zh-cn/gpio_control.md) * [键盘开发指引](zh-cn/hardware_keyboard_guidelines.md) * Python开发 @@ -182,12 +182,12 @@ * [了解QMK](zh-cn/understanding_qmk.md) * QMK内部细节 (编辑中) - * [定义](zh-cn/internals_defines.md) - * [输入回调的注册](zh-cn/internals_input_callback_reg.md) - * [Midi设备](zh-cn/internals_midi_device.md) - * [Midi设备驱动流程](zh-cn/internals_midi_device_setup_process.md) - * [Midi辅助功能](zh-cn/internals_midi_util.md) - * [发送函数](zh-cn/internals_send_functions.md) - * [Sysex工具](zh-cn/internals_sysex_tools.md) + * [定义](zh-cn/internals/defines.md) + * [输入回调的注册](zh-cn/internals/input_callback_reg.md) + * [Midi设备](zh-cn/internals/midi_device.md) + * [Midi设备驱动流程](zh-cn/internals/midi_device_setup_process.md) + * [Midi辅助功能](zh-cn/internals/midi_util.md) + * [发送函数](zh-cn/internals/send_functions.md) + * [Sysex工具](zh-cn/internals/sysex_tools.md) diff --git a/lib/python/qmk/cli/generate/docs.py b/lib/python/qmk/cli/generate/docs.py index 74112d834d..eb3099e138 100644 --- a/lib/python/qmk/cli/generate/docs.py +++ b/lib/python/qmk/cli/generate/docs.py @@ -10,6 +10,7 @@ DOCS_PATH = Path('docs/') BUILD_PATH = Path('.build/') BUILD_DOCS_PATH = BUILD_PATH / 'docs' DOXYGEN_PATH = BUILD_PATH / 'doxygen' +MOXYGEN_PATH = BUILD_DOCS_PATH / 'internals' @cli.subcommand('Build QMK documentation.', hidden=False if cli.config.user.developer else True) @@ -34,10 +35,10 @@ def generate_docs(cli): 'stdin': DEVNULL, } - cli.log.info('Generating internal docs...') + cli.log.info('Generating docs...') # Generate internal docs cli.run(['doxygen', 'Doxyfile'], **args) - cli.run(['moxygen', '-q', '-g', '-o', BUILD_DOCS_PATH / 'internals_%s.md', DOXYGEN_PATH / 'xml'], **args) + cli.run(['moxygen', '-q', '-g', '-o', MOXYGEN_PATH / '%s.md', DOXYGEN_PATH / 'xml'], **args) - cli.log.info('Successfully generated internal docs to %s.', BUILD_DOCS_PATH) + cli.log.info('Successfully generated docs to %s.', BUILD_DOCS_PATH) diff --git a/util/generate_internal_docs.sh b/util/generate_internal_docs.sh deleted file mode 100755 index b107a37ad6..0000000000 --- a/util/generate_internal_docs.sh +++ /dev/null @@ -1,31 +0,0 @@ -#!/usr/bin/env bash - -set -x - -if ! doxygen -v 2>&1 > /dev/null; then - echo "doxygen not found! Please install it!" - exit 1 -elif ! moxygen -V 2>&1 > /dev/null; then - echo -n "moxygen not found! Would you like to install it? [y/n] " - read ANSWER - case $ANSWER in - y|Y|yes|YES|Yes) - npm install -g moxygen - ;; - *) - exit 1 - ;; - esac -fi - -if [ ! -e Doxyfile ]; then - echo "Error: You must run this from the top-level qmk_firmware directory!" - exit 1 -fi - -# Generate the doxygen XML files -rm -rf doxygen -doxygen Doxyfile - -# Generate the moxygen Markdown files -moxygen -a -g -o docs/internals_%s.md doxygen/xml From d953aa730e38d94b9218948ddaa0deea667f85f3 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 7 Mar 2022 04:23:15 -0700 Subject: [PATCH 028/699] new lines at eof's (#16558) --- keyboards/qwertykeys/qk65/hotswap/hotswap.h | 3 ++- keyboards/qwertykeys/qk65/solder/solder.h | 3 ++- 2 files changed, 4 insertions(+), 2 deletions(-) diff --git a/keyboards/qwertykeys/qk65/hotswap/hotswap.h b/keyboards/qwertykeys/qk65/hotswap/hotswap.h index 1f61c5ed6b..334ce82277 100644 --- a/keyboards/qwertykeys/qk65/hotswap/hotswap.h +++ b/keyboards/qwertykeys/qk65/hotswap/hotswap.h @@ -30,4 +30,5 @@ along with this program. If not, see . { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213, K214 }, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314 }, \ { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ -} \ No newline at end of file +} + diff --git a/keyboards/qwertykeys/qk65/solder/solder.h b/keyboards/qwertykeys/qk65/solder/solder.h index 5409662229..b796ae1e91 100644 --- a/keyboards/qwertykeys/qk65/solder/solder.h +++ b/keyboards/qwertykeys/qk65/solder/solder.h @@ -46,4 +46,5 @@ along with this program. If not, see . { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \ { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ -} \ No newline at end of file +} + From 05b71936511402d91e345e615d074cf310cb4ece Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 7 Mar 2022 09:43:17 -0700 Subject: [PATCH 029/699] [Keyboard] remove unecessary layers (#16559) --- keyboards/handwired/wakizashi40/config.h | 1 - .../wakizashi40/keymaps/via/keymap.c | 90 +++++-------------- 2 files changed, 20 insertions(+), 71 deletions(-) diff --git a/keyboards/handwired/wakizashi40/config.h b/keyboards/handwired/wakizashi40/config.h index 78f85f2197..e9976616ec 100644 --- a/keyboards/handwired/wakizashi40/config.h +++ b/keyboards/handwired/wakizashi40/config.h @@ -17,4 +17,3 @@ #pragma once #include "config_common.h" -#define DYNAMIC_KEYMAP_LAYER_COUNT 12 diff --git a/keyboards/handwired/wakizashi40/keymaps/via/keymap.c b/keyboards/handwired/wakizashi40/keymaps/via/keymap.c index d456b8b40a..fb9d37ac20 100644 --- a/keyboards/handwired/wakizashi40/keymaps/via/keymap.c +++ b/keyboards/handwired/wakizashi40/keymaps/via/keymap.c @@ -16,77 +16,27 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, 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_ESC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, LT(1, KC_SPC), LT(2, KC_SPC), KC_LALT, KC_MENU, KC_LCTL), - [0] = LAYOUT_all( - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, 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_ESC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, - KC_LCTL, KC_LGUI, KC_LALT, LT(1, KC_SPC), LT(2, KC_SPC), KC_LALT, KC_MENU, KC_LCTL), + [1] = LAYOUT_all( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F5, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + MO(3), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_TRNS, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), - [1] = LAYOUT_all( - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F5, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - MO(11), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_TRNS, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), - - [2] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, - MO(11), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_QUOT, - 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_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), - - [3] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_QUOT, - 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), - - [4] = LAYOUT_all( - 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, 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), - - [5] = LAYOUT_all( - 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, 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), - - [6] = LAYOUT_all( - 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, 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), - - [7] = LAYOUT_all( - 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, 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), - - [8] = LAYOUT_all( - 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, 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), - - [9] = LAYOUT_all( - 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, 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), - - [10] = LAYOUT_all( - 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, 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), - - [11] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) + [2] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, + MO(3), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_QUOT, + 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_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), + [3] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_QUOT, + 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), }; From 2bface8f893f3f13ddb9a3e10c0f362819d09c5c Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Mon, 7 Mar 2022 17:59:06 +0100 Subject: [PATCH 030/699] Add flash target for UF2 bootloaders (#16525) --- docs/flashing.md | 11 +++++++++++ platforms/chibios/flash.mk | 14 ++++++++++++++ util/uf2conv.py | 2 +- 3 files changed, 26 insertions(+), 1 deletion(-) diff --git a/docs/flashing.md b/docs/flashing.md index 83f4bf82ae..ae31f9c621 100644 --- a/docs/flashing.md +++ b/docs/flashing.md @@ -347,3 +347,14 @@ Flashing sequence: 2. Wait for the OS to detect the device 3. Copy the .uf2 file to the new USB disk 4. Wait for the keyboard to become available + +or + +CLI Flashing sequence: + +1. Enter the bootloader using any of the following methods: + * Tap the `RESET` keycode + * Double-tap the `nRST` button on the PCB. +2. Wait for the OS to detect the device +3. Flash via QMK CLI eg. `qmk flash --keyboard handwired/onekey/blackpill_f411_tinyuf2 --keymap default` +4. Wait for the keyboard to become available diff --git a/platforms/chibios/flash.mk b/platforms/chibios/flash.mk index 6ee53172d2..a91ef2cf35 100644 --- a/platforms/chibios/flash.mk +++ b/platforms/chibios/flash.mk @@ -40,6 +40,18 @@ endef dfu-util: $(BUILD_DIR)/$(TARGET).bin cpfirmware sizeafter $(call EXEC_DFU_UTIL) +define EXEC_UF2_UTIL_DEPLOY + if ! $(UF2CONV) --deploy $(BUILD_DIR)/$(TARGET).uf2 2>/dev/null; then \ + printf "$(MSG_BOOTLOADER_NOT_FOUND_QUICK_RETRY)" ;\ + sleep $(BOOTLOADER_RETRY_TIME) ;\ + while ! $(UF2CONV) --deploy $(BUILD_DIR)/$(TARGET).uf2 2>/dev/null; do \ + printf "." ;\ + sleep $(BOOTLOADER_RETRY_TIME) ;\ + done ;\ + printf "\n" ;\ + fi +endef + # TODO: Remove once ARM has a way to configure EECONFIG_HANDEDNESS # within the emulated eeprom via dfu-util or another tool ifneq (,$(filter $(MAKECMDGOALS),dfu-util-split-left)) @@ -90,6 +102,8 @@ ifneq ($(strip $(PROGRAM_CMD)),) $(UNSYNC_OUTPUT_CMD) && $(PROGRAM_CMD) else ifeq ($(strip $(BOOTLOADER)),kiibohd) $(UNSYNC_OUTPUT_CMD) && $(call EXEC_DFU_UTIL) +else ifeq ($(strip $(BOOTLOADER)),tinyuf2) + $(UNSYNC_OUTPUT_CMD) && $(call EXEC_UF2_UTIL_DEPLOY) else ifeq ($(strip $(MCU_FAMILY)),KINETIS) $(UNSYNC_OUTPUT_CMD) && $(call EXEC_TEENSY) else ifeq ($(strip $(MCU_FAMILY)),MIMXRT1062) diff --git a/util/uf2conv.py b/util/uf2conv.py index efc7263f83..fb82fd03ca 100755 --- a/util/uf2conv.py +++ b/util/uf2conv.py @@ -267,7 +267,7 @@ def load_families(): def main(): global appstartaddr, familyid def error(msg): - print(msg) + print(msg, file=sys.stderr) sys.exit(1) parser = argparse.ArgumentParser(description='Convert to UF2 or flash directly.') parser.add_argument('input', metavar='INPUT', type=str, nargs='?', From 2ff646c642152df064da8dcf62ef328585de0197 Mon Sep 17 00:00:00 2001 From: Matthew Bautista Date: Mon, 7 Mar 2022 12:05:41 -0500 Subject: [PATCH 031/699] [Keyboard] LFK78 VIA support and Update (#16502) --- keyboards/lfkeyboards/lfk78/config.h | 4 +- .../lfkeyboards/lfk78/keymaps/via/keymap.c | 72 +++++++++++++++++++ .../lfkeyboards/lfk78/keymaps/via/readme.md | 1 + .../lfkeyboards/lfk78/keymaps/via/rules.mk | 2 + keyboards/lfkeyboards/lfk78/lfk78.c | 4 +- keyboards/lfkeyboards/lfk78/lfk78.h | 2 +- 6 files changed, 80 insertions(+), 5 deletions(-) create mode 100644 keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c create mode 100644 keyboards/lfkeyboards/lfk78/keymaps/via/readme.md create mode 100644 keyboards/lfkeyboards/lfk78/keymaps/via/rules.mk diff --git a/keyboards/lfkeyboards/lfk78/config.h b/keyboards/lfkeyboards/lfk78/config.h index 05ead71c86..fbb02e71ee 100644 --- a/keyboards/lfkeyboards/lfk78/config.h +++ b/keyboards/lfkeyboards/lfk78/config.h @@ -20,8 +20,8 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 +#define VENDOR_ID 0x4C46 // LF +#define PRODUCT_ID 0x3738 // 78 #define DEVICE_VER 0x0001 #define MANUFACTURER LFKeyboards #define PRODUCT LFK78 diff --git a/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c new file mode 100644 index 0000000000..48e183984f --- /dev/null +++ b/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c @@ -0,0 +1,72 @@ +/* Copyright 2021 Matt Bautista (@nayoshi) + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap VANILLA: (Base Layer) Default Layer + * ,---------. ,------------------------------------------------------------. ,---------. + * | F1 | F2 | |Esc~| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backspa| | Ins|PgUp| + * |---------| |------------------------------------------------------------| |---------| + * | F3 | F4 | |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| | Del|PgDn| + * |---------| |------------------------------------------------------------| `---------' + * | F5 | F6 | |CAPS | A| S| D| F| G| H| J| K| L| ;| '| Return | + * |---------| |------------------------------------------------------------| ,----. + * | F7 | F8 | |Shift | Z| X| C| V| B| N| M| ,| .| /|Shift | | Up | + * |---------| |-------------------------------------------------------------------------. + * | F9 | F10| |Ctrl|Win |Alt | Space |Alt |Ctrl|Func | |Lft| Dn |Rig | + * `---------' `------------------------------------------------------' `-------------' + */ + + [0] = LAYOUT( + KC_F1, KC_F2, KC_GESC, 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_INS, KC_PGUP, + KC_F3, KC_F4, 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, KC_DEL, KC_PGDN, + KC_F5, KC_F6, 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_F7, KC_F8, 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, + KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + KC_TRNS, KC_TRNS, KC_GRV, 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_TRNS, KC_HOME, + KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, + KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, 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_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, TG(2), KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT( + 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_INC, BL_TOGG, RGB_TOG, RGB_VAI, + KC_TRNS, KC_TRNS, MU_MOD, 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, RGB_MOD, RGB_VAD, + KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI + ), + [3] = LAYOUT( + 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_INC, BL_TOGG, RGB_TOG, RGB_VAI, + KC_TRNS, KC_TRNS, MU_MOD, 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, RGB_MOD, RGB_VAD, + KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI + ) +}; + +void matrix_init_user(void) { + // This keymap only has a single base layer, so reset the default if needed + if (eeconfig_read_default_layer() > 1) { + eeconfig_update_default_layer(1); + default_layer_set(1); + } +} diff --git a/keyboards/lfkeyboards/lfk78/keymaps/via/readme.md b/keyboards/lfkeyboards/lfk78/keymaps/via/readme.md new file mode 100644 index 0000000000..5ec8e4e34d --- /dev/null +++ b/keyboards/lfkeyboards/lfk78/keymaps/via/readme.md @@ -0,0 +1 @@ +# The via keymap for LFK78 diff --git a/keyboards/lfkeyboards/lfk78/keymaps/via/rules.mk b/keyboards/lfkeyboards/lfk78/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/lfkeyboards/lfk78/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/lfkeyboards/lfk78/lfk78.c b/keyboards/lfkeyboards/lfk78/lfk78.c index 2f8f1b34ef..96fe96f03f 100644 --- a/keyboards/lfkeyboards/lfk78/lfk78.c +++ b/keyboards/lfkeyboards/lfk78/lfk78.c @@ -110,7 +110,7 @@ void matrix_scan_kb(void) { matrix_scan_user(); } -void click(uint16_t freq, uint16_t duration) { +void clicking_notes(uint16_t freq, uint16_t duration) { #ifdef AUDIO_ENABLE if (freq >= 100 && freq <= 20000 && duration < 100) { play_note(freq, 10); @@ -124,7 +124,7 @@ void click(uint16_t freq, uint16_t duration) { bool process_record_kb(uint16_t keycode, keyrecord_t* record) { if (click_toggle && record->event.pressed) { - click(click_hz, click_time); + clicking_notes(click_hz, click_time); } if (keycode == RESET) { diff --git a/keyboards/lfkeyboards/lfk78/lfk78.h b/keyboards/lfkeyboards/lfk78/lfk78.h index ffa4894bbc..d5e1c7b3c7 100644 --- a/keyboards/lfkeyboards/lfk78/lfk78.h +++ b/keyboards/lfkeyboards/lfk78/lfk78.h @@ -30,4 +30,4 @@ extern const Layer_Info layer_info[]; #define CLICK_ENABLED 0 void reset_keyboard_kb(void); -void click(uint16_t freq, uint16_t duration); +void clicking_notes(uint16_t freq, uint16_t duration); From 07ca35decf1a9a998b3e6bb646f7d73901e1c444 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 8 Mar 2022 10:02:28 +1100 Subject: [PATCH 032/699] Convert Wasdat Code custom matrix to SN74x138 driver (#16257) --- keyboards/evyd13/wasdat/matrix.c | 43 ++-- keyboards/evyd13/wasdat_code/config.h | 11 +- keyboards/evyd13/wasdat_code/matrix.c | 330 ++++---------------------- keyboards/evyd13/wasdat_code/rules.mk | 3 +- 4 files changed, 77 insertions(+), 310 deletions(-) diff --git a/keyboards/evyd13/wasdat/matrix.c b/keyboards/evyd13/wasdat/matrix.c index c97dd84694..60a1ea235a 100644 --- a/keyboards/evyd13/wasdat/matrix.c +++ b/keyboards/evyd13/wasdat/matrix.c @@ -24,27 +24,28 @@ along with this program. If not, see . static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; -/* col 0: C7 - * col 1: B6 - * col 2: C6 - * col 3: B4 - * col 4: B5 - * col 5: D7 +/* Columns 6-12 use a 74HC138 3-to-8 demultiplexer. * - * These columns use a 74HC138 3 to 8 bit demultiplexer. - * A2 A1 A0 - * col / pin: PD0 PD1 PD2 - * 6: 1 1 1 - * 7: 1 1 0 - * 8: 1 0 1 - * 9: 1 0 0 - * 10: 0 1 1 - * 11: 0 1 0 - * 12: 0 0 1 + * 0: C7 + * 1: B6 + * 2: C6 + * 3: B4 + * 4: B5 + * 5: D7 * - * col 13: D3 - * col 14: B7 - * col 15: B3 + * A2 A1 A0 + * D0 D1 D2 + * 6: 1 1 1 + * 7: 1 1 0 + * 8: 1 0 1 + * 9: 1 0 0 + * 10: 0 1 1 + * 11: 0 1 0 + * 12: 0 0 1 + * + * 13: D3 + * 14: B7 + * 15: B3 */ static void select_col(uint8_t col) { if (col_pins[col] != NO_PIN) { @@ -117,10 +118,10 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) } void matrix_init_custom(void) { - // initialize key pins - init_pins(); // initialize demultiplexer sn74x138_init(); + // initialize key pins + init_pins(); } bool matrix_scan_custom(matrix_row_t current_matrix[]) { diff --git a/keyboards/evyd13/wasdat_code/config.h b/keyboards/evyd13/wasdat_code/config.h index 6c39403e52..0a7b732010 100644 --- a/keyboards/evyd13/wasdat_code/config.h +++ b/keyboards/evyd13/wasdat_code/config.h @@ -41,22 +41,17 @@ along with this program. If not, see . * */ #define MATRIX_ROW_PINS { E6, C7, C6, B6, B5, B4, D7, D6 } -#define MATRIX_COL_PINS { } +#define MATRIX_COL_PINS { F7, F5, F6, F1, F4, F0, NO_PIN, D5, D3, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN } // Columns 6 and 9-15 controlled by demux #define UNUSED_PINS -/* COL2ROW, ROW2COL*/ -#define DIODE_DIRECTION ROW2COL +#define SN74X138_ADDRESS_PINS { D2, D1, D0 } +#define SN74X138_E3_PIN D4 // For QMK DFU #define QMK_ESC_OUTPUT E6 #define QMK_ESC_INPUT F0 #define QMK_LED B1 -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ -//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 - #define LED_NUM_LOCK_PIN B3 #define LED_CAPS_LOCK_PIN B1 #define LED_SCROLL_LOCK_PIN B2 diff --git a/keyboards/evyd13/wasdat_code/matrix.c b/keyboards/evyd13/wasdat_code/matrix.c index 7844db7ab7..f30ea3355a 100644 --- a/keyboards/evyd13/wasdat_code/matrix.c +++ b/keyboards/evyd13/wasdat_code/matrix.c @@ -14,280 +14,70 @@ 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 . */ + #include #include -#include "wait.h" -#include "util.h" #include "matrix.h" -#include "debounce.h" #include "quantum.h" +#include "sn74x138.h" -#ifdef DIRECT_PINS -static pin_t direct_pins[MATRIX_ROWS][MATRIX_COLS] = DIRECT_PINS; -#elif (DIODE_DIRECTION == ROW2COL) || (DIODE_DIRECTION == COL2ROW) static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -//static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; -#endif +static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; -// matrix code - -#ifdef DIRECT_PINS - -static void init_pins(void) { - for (int row = 0; row < MATRIX_ROWS; row++) { - for (int col = 0; col < MATRIX_COLS; col++) { - pin_t pin = direct_pins[row][col]; - if (pin != NO_PIN) { - setPinInputHigh(pin); - } - } - } -} - -static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) { - matrix_row_t last_row_value = current_matrix[current_row]; - current_matrix[current_row] = 0; - - for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) { - pin_t pin = direct_pins[current_row][col_index]; - if (pin != NO_PIN) { - current_matrix[current_row] |= readPin(pin) ? 0 : (MATRIX_ROW_SHIFTER << col_index); - } - } - - return (last_row_value != current_matrix[current_row]); -} - -#elif (DIODE_DIRECTION == COL2ROW) - -static void select_row(uint8_t row) { - setPinOutput(row_pins[row]); - writePinLow(row_pins[row]); -} - -static void unselect_row(uint8_t row) { setPinInputHigh(row_pins[row]); } - -static void unselect_rows(void) { - for (uint8_t x = 0; x < MATRIX_ROWS; x++) { - setPinInputHigh(row_pins[x]); - } -} - -static void init_pins(void) { - unselect_rows(); - for (uint8_t x = 0; x < MATRIX_COLS; x++) { - setPinInputHigh(col_pins[x]); - } -} - -static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) { - // Store last value of row prior to reading - matrix_row_t last_row_value = current_matrix[current_row]; - - // Clear data in matrix row - current_matrix[current_row] = 0; - - // Select row and wait for row selecton to stabilize - select_row(current_row); - wait_us(30); - - // For each col... - for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) { - - // Select the col pin to read (active low) - uint8_t pin_state = readPin(col_pins[col_index]); - - // Populate the matrix row with the state of the col pin - current_matrix[current_row] |= pin_state ? 0 : (MATRIX_ROW_SHIFTER << col_index); - } - - // Unselect row - unselect_row(current_row); - - return (last_row_value != current_matrix[current_row]); -} - -#elif (DIODE_DIRECTION == ROW2COL) - -/* Cols 0 - 15 - * col 0: F7 - * col 1: F5 - * col 2: F6 - * col 3: F1 - * col 4: F4 - * col 5: F0 - * These columns use a 74HC237D 3 to 8 bit demultiplexer. D4 is the enable pin, must be set high to use it. - * A0 A1 A2 - * col / pin: PD2 PD1 PD0 - * 6: 1 1 1 - * col 7: D3 - * col 8: B7 - * 9: 0 1 1 - * 10: 1 0 1 - * 11: 0 0 1 - * 12: 1 1 0 - * 13: 0 1 0 - * 14: 1 0 0 - * 15: 0 0 0 +/* Columns 6 and 9-15 use a 74HC138 3-to-8 demultiplexer. + * D4 is the enable pin, must be set high to use it. + * + * 0: F7 + * 1: F5 + * 2: F6 + * 3: F1 + * 4: F4 + * 5: F0 + * + * A2 A1 A0 + * D0 D1 D2 + * 6: 1 1 1 + * + * 7: D5 + * 8: D3 + * + * 9: 1 1 0 + * 10: 1 0 1 + * 11: 1 0 0 + * 12: 0 1 1 + * 13: 0 1 0 + * 14: 0 0 1 + * 15: 0 0 0 */ static void select_col(uint8_t col) { - switch (col) { - case 0: - writePinLow(F7); - break; - case 1: - writePinLow(F5); - break; - case 2: - writePinLow(F6); - break; - case 3: - writePinLow(F1); - break; - case 4: - writePinLow(F4); - break; - case 5: - writePinLow(F0); - break; - case 6: - writePinHigh(D4); - writePinHigh(D2); - writePinHigh(D1); - writePinHigh(D0); - break; - case 7: - writePinLow(D5); - break; - case 8: - writePinLow(D3); - break; - case 9: - writePinHigh(D4); - writePinHigh(D1); - writePinHigh(D0); - break; - case 10: - writePinHigh(D4); - writePinHigh(D2); - writePinHigh(D0); - break; - case 11: - writePinHigh(D4); - writePinHigh(D0); - break; - case 12: - writePinHigh(D4); - writePinHigh(D2); - writePinHigh(D1); - break; - case 13: - writePinHigh(D4); - writePinHigh(D1); - break; - case 14: - writePinHigh(D4); - writePinHigh(D2); - break; - case 15: - writePinHigh(D4); - break; + if (col_pins[col] != NO_PIN) { + writePinLow(col_pins[col]); + } else { + sn74x138_set_addr((col == 6) ? 7 : 15 - col); + sn74x138_set_enabled(true); } } static void unselect_col(uint8_t col) { - switch (col) { - case 0: - writePinHigh(F7); - break; - case 1: - writePinHigh(F5); - break; - case 2: - writePinHigh(F6); - break; - case 3: - writePinHigh(F1); - break; - case 4: - writePinHigh(F4); - break; - case 5: - writePinHigh(F0); - break; - case 6: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 7: - writePinHigh(D5); - break; - case 8: - writePinHigh(D3); - break; - case 9: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 10: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 11: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 12: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 13: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 14: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; - case 15: - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); - break; + if (col_pins[col] != NO_PIN) { + setPinOutput(col_pins[col]); + writePinHigh(col_pins[col]); + } else { + sn74x138_set_enabled(false); } } static void unselect_cols(void) { - //Native - writePinHigh(F7); - writePinHigh(F5); - writePinHigh(F6); - writePinHigh(F1); - writePinHigh(F4); - writePinHigh(F0); - writePinHigh(D3); - writePinHigh(D5); + // Native + for (uint8_t x = 0; x < MATRIX_COLS; x++) { + if (col_pins[x] != NO_PIN) { + setPinOutput(col_pins[x]); + writePinHigh(col_pins[x]); + } + } - //Demultiplexer - writePinLow(D4); - writePinLow(D2); - writePinLow(D1); - writePinLow(D0); + // Demultiplexer + sn74x138_set_enabled(false); } static void init_pins(void) { @@ -295,27 +85,14 @@ static void init_pins(void) { for (uint8_t x = 0; x < MATRIX_ROWS; x++) { setPinInputHigh(row_pins[x]); } - setPinOutput(D0); - setPinOutput(D1); - setPinOutput(D2); - setPinOutput(D3); - setPinOutput(F7); - setPinOutput(F5); - setPinOutput(F6); - setPinOutput(F1); - setPinOutput(F4); - setPinOutput(F0); - setPinOutput(D3); - setPinOutput(D5); - setPinOutput(D4); } static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { bool matrix_changed = false; - // Select col and wait for col selecton to stabilize + // Select col and wait for col selection to stabilize select_col(current_col); - wait_us(30); + matrix_io_delay(); // For each row... for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { @@ -343,9 +120,9 @@ static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) return matrix_changed; } -#endif - void matrix_init_custom(void) { + // initialize demultiplexer + sn74x138_init(); // initialize key pins init_pins(); } @@ -353,17 +130,10 @@ void matrix_init_custom(void) { bool matrix_scan_custom(matrix_row_t current_matrix[]) { bool changed = false; -#if defined(DIRECT_PINS) || (DIODE_DIRECTION == COL2ROW) - // Set row, read cols - for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) { - changed |= read_cols_on_row(current_matrix, current_row); - } -#elif (DIODE_DIRECTION == ROW2COL) // Set col, read rows for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { changed |= read_rows_on_col(current_matrix, current_col); } -#endif return changed; } diff --git a/keyboards/evyd13/wasdat_code/rules.mk b/keyboards/evyd13/wasdat_code/rules.mk index 6fd1fce10e..b37dfa459c 100644 --- a/keyboards/evyd13/wasdat_code/rules.mk +++ b/keyboards/evyd13/wasdat_code/rules.mk @@ -18,6 +18,7 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = lite -SRC += matrix.c +VPATH += drivers/gpio +SRC += matrix.c sn74x138.c LAYOUTS = fullsize_ansi fullsize_iso tkl_ansi tkl_iso From 893d86cb896d82eb8c9d16251062dd6afa802533 Mon Sep 17 00:00:00 2001 From: bwisn <56162793+bwisn@users.noreply.github.com> Date: Tue, 8 Mar 2022 02:12:53 +0100 Subject: [PATCH 033/699] Add Anne Pro 2 keyboard (#14385) * [keyboard] Initial support for Anne Pro 2 * [keyboard][AnnePro2] Keymap:update to a reasonable keymap with caps+hjkl => arrow * :( * changed to use HSI * support for annepro2 c18 * keyboard/annepro2: Very stupid matrix scan bug fix. * typo * swap COL14/13 * keyboard/annepro2: startup secondary LED MCU * keyboard/annepro2: typo fix * Add IO Values * Disable Combo feature * Update default keymap to Anne Pro 2 Official Keymap * keyboard/annepro2: keymap layer name changes * keyboard/annepro2 BLE Support * Fix keymap comment FN1 ESC was listed as ~ instead of ` * keyboard/annepro2: Bluetooth path * Keyboard annepro2 bidir led comms (#5) * Added bidirectional shine comms and moved led functionality to new file * Added bidirectional shine comms and moved led functionality to new file * Restore original functionality to existing keymaps using new shine commands * Fix dangling bracketless if statements * PR cleanup * add custom keycodes to switch led profiles * Optimize code * switch to prev profile before turning leds off * Add persistent led support with eeprom (#9) * adding HT32 support to chibios SPI master driver * add support for W25X20CL SPI eeprom * add makefile flag for eeprom feature * add spi support to keyboard startup and config * example keymap using eeprom profile loading * Cleanup to fix C15 eeprom/spi build errors (#11) * Cleanup to fix C15 eeprom/spi build errors * add newline at eof * LED Masking support for Shine Introduce companion update to ledSetMask and ledClearMask. In keymap `codetector` there is example of how to map caps_lock to the caps_lock key light on the keyboard. * [AnnePro2]: update bluetooth connection * Merge the custom keys enums on annepro2.h (#13) * Keyboard annepro2 ble caps lock (#12) * Move matrix_scan_kb out of board.c to annepro2.c * add buffer clear after init and caplock polling * Add support for LED intensity (#15) * Improve logic for switching off and on of LEDs (#16) * Implement animation speed (#17) * Include logic to send solid colors as foreground to shine and add sample profiles (#14) Include the logic to send a solid color from qmk to shine. That solid color will act as a foreground (will override the current profile) until reset (witch will reactivate the current profile). This functionality depends on changes made for shine as well. Include 3 new profiles: default-full-caps -> same as default, but with the logic of using the red foreground color on caps lock. default-layer-indicators -> same as default, but with the logic of red foreground on caps lock, green foreground on FN1 and blue foreground on FN2. thomazmoura -> my own profile as a sample of an over-engineered advanced case scenario. * Implement reactive lighting effects (#18) * Added multiarrow keymap (#19) * Add LED documentation (#26) * add LED documentation * add LED documentation to other default profiles * Implement QMK's IAP default keybind (#29) * Add keymap for going into IAP * switch to default QMK keybind for IAP mode * implement bluetooth IAP mode * Make default config more like Obins stock default (#30) * Add new message type for resetting foreground color (#31) * annepro2(bluetooth): add media keys support (#41) * Asynchronous, robust serial protocol. (#39) * bla personal ap2-c18 keymap. * Bidirectional, asynchronous message-based communication with Shine. - Requires a matching Shine version. - Protocol is resiliant to loosing bytes during communication, chips won't lock waiting for bytes that aren't coming. - Chips resynchronize in event of loosing a byte using a AA0D header. Regressions: - Key masking/locking doesn't work right now. (did it work before?) - Not all user keymaps build against it. * Clang-format + code to ease reducing speed of LED UART. - Did clang-format --style=file -i on multiple files according to coding_conventions_c.md - Added separate serial speed for IAP boot and Led communication, it's possible that reducing this to 9600 helped someone with faulty HW. With this code they can do it with simple replacing of a value. * Main chip can set/clear foreground using a mask mechanism. - Some preparations for selective colouring. * Selective mask works - tested on capslock. - Migrated personal keymaps to new status API. * Clear the foreground colors to show profile when it's modified. - Show example of achieving selective caps-lock painting + foreground painting for layers. - annepro2LedMaskSetRow is implemented, but still requires testing. * Implement the QMK side of led blinking to indicate the command was received. - This stupidly blinks the key when user presses one of the bluetooth commands to let the user know that the command was received and forwarded to the BT chip. - TODO: Row/col key positions are hardcoded and not taken from the keymap. * Reduce memory footprint. Applying code review suggestions. Moved msgId to globals - preparing for transmission without copying payload when no retries are necessary. Added empty readme.md files - required by QMK lint. Co-authored-by: Tomasz bla Fortuna * Let the LED chip settle a bit before waking it from the bootloader. (#42) At least for one person that helps to reliably get the LEDs working without disconnecting/reconnecting the power to the board multiple times. Co-authored-by: Tomasz bla Fortuna * annepro2: rename KEYMAP to LAYOUT, as required by new version of QMK * annepro2: update ChibiOS configuration files * annepro2: fix undefined reference to dprint and timer_read32 * annepro2: update ChibiOS MCU name * update spi driver, fix bad merging with master * annepro2: add readme and info.json * annepro2: make code compatible with QMK coding conventions * tmk_core: temporary fix to allow HT32 based keyboards to work without patched ChibiOS-contrib (AnnePro2) * AnnePro2: removed core changes * AnnePro2: Leave only default keymaps Missing keymaps will be restored in another PR * annepro2: add licence information * annepro2: satisfy qmk lint * annepro2: fix drashna's suggestions * annepro2: fix matrix * annepro2: apply code review suggestions * annepro2: apply remaining code review suggestions * annepro2: update info.json * annepro2: remove include * annepro2: rename keymap to layout * annepro2: fix typing * annepro2: apply suggestions from tzarc's code review Co-authored-by: Nick Brassel * annepro2: more fixes * annepro2: apply suggestions from code review Co-authored-by: Joel Challis * annepro2: rename file * more fixes * Apply suggestions from @tzarc code review Co-authored-by: Nick Brassel * Update keyboards/annepro2/protocol.h Co-authored-by: Nick Brassel * Update keyboards/annepro2/chconf.h Co-authored-by: Nick Brassel * apply CR suggestions * upgrade readme * IAP * update IAP comments, defines * led fix * init fix * annepro2: GPIO cleanup * annepro2: ioline * change waiting time * Start develop for 2022q2 * [Core] Squeeze AVR some more with `-mrelax` and `-mcall-prologues` (#16269) * Rework generate-api CLI command to use .build directory (#16441) * Remove `send_unicode_hex_string()` (#16518) * Change data driven "str" type to represent a quoted string literal (#16516) * Change data driven "str" type to represent a quoted string literal * Update docs * Map data driven `DESCRIPTION` as string literal (#16523) * update bootloader * Revert "Merge pull request #2 from qmk/develop" This reverts commit 9c76065188c3adda98bdaa1f28dad85600e73ee9, reversing changes made to 240745dc05783c612e92bab153da5c46e037d675. * Revert "update bootloader" This reverts commit 240745dc05783c612e92bab153da5c46e037d675. * fix rules.mk * change PROGRAM_CMD Co-authored-by: codetector Co-authored-by: Fagl4 <18francisco18@gmail.com> Co-authored-by: Jakob Gillich Co-authored-by: tech2077 Co-authored-by: jcdeA <31413538+JcdeA@users.noreply.github.com> Co-authored-by: Thomaz Moura <5599621+thomazmoura@users.noreply.github.com> Co-authored-by: Darkhan Co-authored-by: Paco <70448173+packorf@users.noreply.github.com> Co-authored-by: jmarmstrong1207 <32995055+jmarmstrong1207@users.noreply.github.com> Co-authored-by: 1Conan <7620342+1Conan@users.noreply.github.com> Co-authored-by: Tomasz bla Fortuna Co-authored-by: Tomasz bla Fortuna Co-authored-by: Nick Brassel Co-authored-by: Joel Challis Co-authored-by: QMK Bot Co-authored-by: Stefan Kerkmann Co-authored-by: Ryan --- keyboards/annepro2/annepro2.c | 202 +++++++++++ keyboards/annepro2/annepro2.h | 65 ++++ keyboards/annepro2/annepro2_ble.c | 170 +++++++++ keyboards/annepro2/annepro2_ble.h | 27 ++ keyboards/annepro2/ap2_led.c | 134 +++++++ keyboards/annepro2/ap2_led.h | 84 +++++ .../annepro2/boards/ANNEPRO2_C15/board.c | 103 ++++++ .../annepro2/boards/ANNEPRO2_C15/board.h | 39 +++ .../annepro2/boards/ANNEPRO2_C15/board.mk | 5 + .../annepro2/boards/ANNEPRO2_C18/board.c | 103 ++++++ .../annepro2/boards/ANNEPRO2_C18/board.h | 39 +++ .../annepro2/boards/ANNEPRO2_C18/board.mk | 5 + keyboards/annepro2/c15/config.h | 47 +++ keyboards/annepro2/c15/readme.md | 1 + keyboards/annepro2/c15/rules.mk | 37 ++ keyboards/annepro2/c18/config.h | 45 +++ keyboards/annepro2/c18/readme.md | 1 + keyboards/annepro2/c18/rules.mk | 37 ++ keyboards/annepro2/chconf.h | 31 ++ keyboards/annepro2/halconf.h | 28 ++ keyboards/annepro2/info.json | 330 ++++++++++++++++++ .../keymaps/default-full-caps/config.h | 20 ++ .../keymaps/default-full-caps/keymap.c | 120 +++++++ .../keymaps/default-layer-indicators/config.h | 20 ++ .../keymaps/default-layer-indicators/keymap.c | 147 ++++++++ keyboards/annepro2/keymaps/default/config.h | 20 ++ keyboards/annepro2/keymaps/default/keymap.c | 106 ++++++ keyboards/annepro2/ld/HT32F52342_ANNEPRO2.ld | 91 +++++ keyboards/annepro2/matrix.c | 63 ++++ keyboards/annepro2/mcuconf.h | 62 ++++ keyboards/annepro2/protocol.c | 116 ++++++ keyboards/annepro2/protocol.h | 111 ++++++ keyboards/annepro2/readme.md | 50 +++ 33 files changed, 2459 insertions(+) create mode 100644 keyboards/annepro2/annepro2.c create mode 100644 keyboards/annepro2/annepro2.h create mode 100644 keyboards/annepro2/annepro2_ble.c create mode 100644 keyboards/annepro2/annepro2_ble.h create mode 100644 keyboards/annepro2/ap2_led.c create mode 100644 keyboards/annepro2/ap2_led.h create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C15/board.c create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C15/board.h create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C15/board.mk create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C18/board.c create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C18/board.h create mode 100644 keyboards/annepro2/boards/ANNEPRO2_C18/board.mk create mode 100644 keyboards/annepro2/c15/config.h create mode 100644 keyboards/annepro2/c15/readme.md create mode 100644 keyboards/annepro2/c15/rules.mk create mode 100644 keyboards/annepro2/c18/config.h create mode 100644 keyboards/annepro2/c18/readme.md create mode 100644 keyboards/annepro2/c18/rules.mk create mode 100644 keyboards/annepro2/chconf.h create mode 100644 keyboards/annepro2/halconf.h create mode 100644 keyboards/annepro2/info.json create mode 100644 keyboards/annepro2/keymaps/default-full-caps/config.h create mode 100644 keyboards/annepro2/keymaps/default-full-caps/keymap.c create mode 100644 keyboards/annepro2/keymaps/default-layer-indicators/config.h create mode 100644 keyboards/annepro2/keymaps/default-layer-indicators/keymap.c create mode 100644 keyboards/annepro2/keymaps/default/config.h create mode 100644 keyboards/annepro2/keymaps/default/keymap.c create mode 100644 keyboards/annepro2/ld/HT32F52342_ANNEPRO2.ld create mode 100644 keyboards/annepro2/matrix.c create mode 100644 keyboards/annepro2/mcuconf.h create mode 100644 keyboards/annepro2/protocol.c create mode 100644 keyboards/annepro2/protocol.h create mode 100644 keyboards/annepro2/readme.md diff --git a/keyboards/annepro2/annepro2.c b/keyboards/annepro2/annepro2.c new file mode 100644 index 0000000000..37489defff --- /dev/null +++ b/keyboards/annepro2/annepro2.c @@ -0,0 +1,202 @@ +/* Copyright 2021 OpenAnnePro 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 . + */ + +#include "hal.h" +#include "annepro2.h" +#include "annepro2_ble.h" +#include "spi_master.h" +#include "ap2_led.h" +#include "protocol.h" + +#define RAM_MAGIC_LOCATION 0x20001ffc +#define IAP_MAGIC_VALUE 0x0000fab2 + +static const SerialConfig ledUartInitConfig = { + .speed = 115200, +}; + +#ifndef LED_UART_BAUD_RATE +# define LED_UART_BAUD_RATE 115200 +#endif // LED_UART_BAUD_RATE + +static const SerialConfig ledUartRuntimeConfig = { + .speed = LED_UART_BAUD_RATE, +}; + +static const SerialConfig bleUartConfig = { + .speed = 115200, +}; + +static uint8_t ledMcuWakeup[11] = {0x7b, 0x10, 0x43, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x02}; + +ble_capslock_t BLECapsLock = {._dummy = {0}, .caps_lock = false}; + +void bootloader_jump(void) { + // Send msg to shine to boot into IAP + annepro2SetIAP(); + + // wait for shine to boot into IAP + wait_ms(15); + + // Load ble into IAP + annepro2_ble_bootload(); + wait_ms(15); + + // Magic key to set keyboard to IAP + // It’s from reversing original boot loader + // If value is that it stays in boot loader aka IAP + *((uint32_t *)RAM_MAGIC_LOCATION) = IAP_MAGIC_VALUE; + + // Load the main MCU into IAP + __disable_irq(); + NVIC_SystemReset(); +} + +void keyboard_pre_init_kb(void) { + // Start LED UART + sdStart(&SD0, &ledUartInitConfig); + /* Let the LED chip settle a bit before switching the mode. + * That helped at least one person. */ + wait_ms(15); + sdWrite(&SD0, ledMcuWakeup, sizeof(ledMcuWakeup)); + + // wait to receive response from wakeup + wait_ms(15); + + protoInit(&proto, ledCommandCallback); + + // loop to clear out receive buffer from shine wakeup + while (!sdGetWouldBlock(&SD0)) sdGet(&SD0); + + sdStart(&SD0, &ledUartRuntimeConfig); + keyboard_pre_init_user(); +} + +void keyboard_post_init_kb(void) { + // Start BLE UART + sdStart(&SD1, &bleUartConfig); + annepro2_ble_startup(); + + // Give the send uart thread some time to + // send out the queue before we read back + wait_ms(100); + + // loop to clear out receive buffer from ble wakeup + while (!sdGetWouldBlock(&SD1)) sdGet(&SD1); + + annepro2LedGetStatus(); + + keyboard_post_init_user(); +} + +void matrix_scan_kb() { + // if there's stuff on the ble serial buffer + // read it into the capslock struct + while (!sdGetWouldBlock(&SD1)) { + sdReadTimeout(&SD1, (uint8_t *)&BLECapsLock, sizeof(ble_capslock_t), 10); + } + + /* While there's data from LED keyboard sent - read it. */ + while (!sdGetWouldBlock(&SD0)) { + uint8_t byte = sdGet(&SD0); + protoConsume(&proto, byte); + } + + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + if (annepro2LedStatus.matrixEnabled && annepro2LedStatus.isReactive) { + annepro2LedForwardKeypress(record->event.key.row, record->event.key.col); + } + + const annepro2Led_t blue = { + .p.blue = 0xff, + .p.red = 0x00, + .p.green = 0x00, + .p.alpha = 0xff, + }; + + switch (keycode) { + case KC_AP2_BT1: + annepro2_ble_broadcast(0); + /* FIXME: This hardcodes col/row position */ + annepro2LedBlink(0, 1, blue, 8, 50); + return false; + + case KC_AP2_BT2: + annepro2_ble_broadcast(1); + annepro2LedBlink(0, 2, blue, 8, 50); + return false; + + case KC_AP2_BT3: + annepro2_ble_broadcast(2); + annepro2LedBlink(0, 3, blue, 8, 50); + return false; + + case KC_AP2_BT4: + annepro2_ble_broadcast(3); + annepro2LedBlink(0, 4, blue, 8, 50); + return false; + + case KC_AP2_USB: + annepro2_ble_disconnect(); + return false; + + case KC_AP2_BT_UNPAIR: + annepro2_ble_unpair(); + return false; + + case KC_AP_LED_OFF: + annepro2LedDisable(); + break; + + case KC_AP_LED_ON: + if (annepro2LedStatus.matrixEnabled) { + annepro2LedNextProfile(); + } else { + annepro2LedEnable(); + } + annepro2LedResetForegroundColor(); + break; + + case KC_AP_LED_NEXT_PROFILE: + annepro2LedNextProfile(); + annepro2LedResetForegroundColor(); + break; + + case KC_AP_LED_PREV_PROFILE: + annepro2LedPrevProfile(); + annepro2LedResetForegroundColor(); + break; + + case KC_AP_LED_NEXT_INTENSITY: + annepro2LedNextIntensity(); + annepro2LedResetForegroundColor(); + return false; + + case KC_AP_LED_SPEED: + annepro2LedNextAnimationSpeed(); + annepro2LedResetForegroundColor(); + return false; + + default: + break; + } + } + return process_record_user(keycode, record); +} diff --git a/keyboards/annepro2/annepro2.h b/keyboards/annepro2/annepro2.h new file mode 100644 index 0000000000..b08f8c5352 --- /dev/null +++ b/keyboards/annepro2/annepro2.h @@ -0,0 +1,65 @@ +/* + * Copyright (c) 2018 Yaotian Feng + * + * 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 . + */ + +#pragma once +#include "quantum.h" +#include +#include "ap2_led.h" + +typedef struct __attribute__((__packed__)) { + uint8_t _dummy[10]; + bool caps_lock; +} ble_capslock_t; +extern ble_capslock_t BLECapsLock; + +// Matrix keymap +// clang-format off +#define LAYOUT( \ + 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, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ + K40, K42, K43, K46, K49, K4A, K4B, K4C \ +) { \ + /* COL1 COL2 COL3 COL4 COL5 COL6 COL7 COL8 COL9 COL10 COL11 COL12 COL13 COL14*/ \ + /* ROW1 */ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \ + /* ROW2 */ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D }, \ + /* ROW3 */ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, KC_NO}, \ + /* ROW4 */ { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO}, \ + /* ROW5 */ { K40, KC_NO, K42, K43, KC_NO, KC_NO, K46, KC_NO, KC_NO, K49, K4A, K4B, K4C, KC_NO}, \ +} +// clang-format on + +enum AP2KeyCodes { + KC_AP2_BT1 = SAFE_RANGE, + KC_AP2_BT2, + KC_AP2_BT3, + KC_AP2_BT4, + KC_AP2_BT_UNPAIR, + KC_AP2_USB, + KC_AP_LED_ON, + KC_AP_LED_OFF, + KC_AP_LED_NEXT_PROFILE, + KC_AP_LED_PREV_PROFILE, + KC_AP_LED_NEXT_INTENSITY, + KC_AP_LED_SPEED, + AP2_SAFE_RANGE, +}; + +#undef SAFE_RANGE +#define SAFE_RANGE AP2_SAFE_RANGE + diff --git a/keyboards/annepro2/annepro2_ble.c b/keyboards/annepro2/annepro2_ble.c new file mode 100644 index 0000000000..72cbb68016 --- /dev/null +++ b/keyboards/annepro2/annepro2_ble.c @@ -0,0 +1,170 @@ +/* + Copyright (C) 2020 Yaotian Feng, Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#include "annepro2_ble.h" +#include "ch.h" +#include "hal.h" +#include "host.h" +#include "host_driver.h" +#include "report.h" + +/* -------------------- Static Function Prototypes -------------------------- */ +static uint8_t ap2_ble_leds(void); +static void ap2_ble_mouse(report_mouse_t *report); +static void ap2_ble_system(uint16_t data); +static void ap2_ble_consumer(uint16_t data); +static void ap2_ble_keyboard(report_keyboard_t *report); + +static void ap2_ble_swtich_ble_driver(void); + +/* -------------------- Static Local Variables ------------------------------ */ +static host_driver_t ap2_ble_driver = { + ap2_ble_leds, ap2_ble_keyboard, ap2_ble_mouse, ap2_ble_system, ap2_ble_consumer, +}; + +static uint8_t bleMcuWakeup[11] = {0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x01, 0x7d, 0x02, 0x01, 0x02}; + +static uint8_t bleMcuStartBroadcast[11] = { + 0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x00, 0x7d, 0x40, 0x01, 0x00 // Broadcast ID[0-3] +}; + +static uint8_t bleMcuConnect[11] = { + 0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x00, 0x7d, 0x40, 0x04, 0x00 // Connect ID [0-3] +}; + +static uint8_t bleMcuSendReport[10] = { + 0x7b, 0x12, 0x53, 0x00, 0x0A, 0x00, 0x00, 0x7d, 0x10, 0x04, +}; + +static uint8_t bleMcuSendConsumerReport[10] = { + 0x7b, 0x12, 0x53, 0x00, 0x06, 0x00, 0x00, 0x7d, 0x10, 0x08, +}; + +static uint8_t bleMcuUnpair[10] = { + 0x7b, 0x12, 0x53, 0x00, 0x02, 0x00, 0x00, 0x7d, 0x40, 0x05, +}; + +static uint8_t bleMcuBootload[11] = {0x7b, 0x10, 0x51, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x01}; + +static host_driver_t *lastHostDriver = NULL; +#ifdef NKRO_ENABLE +static bool lastNkroStatus = false; +#endif // NKRO_ENABLE + +/* -------------------- Public Function Implementation ---------------------- */ + +void annepro2_ble_bootload(void) { sdWrite(&SD1, bleMcuBootload, sizeof(bleMcuBootload)); } + +void annepro2_ble_startup(void) { sdWrite(&SD1, bleMcuWakeup, sizeof(bleMcuWakeup)); } + +void annepro2_ble_broadcast(uint8_t port) { + if (port > 3) { + port = 3; + } + // sdPut(&SD1, 0x00); + sdWrite(&SD1, bleMcuStartBroadcast, sizeof(bleMcuStartBroadcast)); + sdPut(&SD1, port); + static int lastBroadcast = -1; + if (lastBroadcast == port) { + annepro2_ble_connect(port); + } + lastBroadcast = port; +} + +void annepro2_ble_connect(uint8_t port) { + if (port > 3) { + port = 3; + } + sdWrite(&SD1, bleMcuConnect, sizeof(bleMcuConnect)); + sdPut(&SD1, port); + ap2_ble_swtich_ble_driver(); +} + +void annepro2_ble_disconnect(void) { + /* Skip if the driver is already enabled */ + if (host_get_driver() != &ap2_ble_driver) { + return; + } + + clear_keyboard(); +#ifdef NKRO_ENABLE + keymap_config.nkro = lastNkroStatus; +#endif + host_set_driver(lastHostDriver); +} + +void annepro2_ble_unpair(void) { + // sdPut(&SD1, 0x0); + sdWrite(&SD1, bleMcuUnpair, sizeof(bleMcuUnpair)); +} + +/* ------------------- Static Function Implementation ----------------------- */ +static void ap2_ble_swtich_ble_driver(void) { + if (host_get_driver() == &ap2_ble_driver) { + return; + } + clear_keyboard(); + lastHostDriver = host_get_driver(); +#ifdef NKRO_ENABLE + lastNkroStatus = keymap_config.nkro; +#endif + keymap_config.nkro = false; + host_set_driver(&ap2_ble_driver); +} + +static uint8_t ap2_ble_leds(void) { + return 0; // TODO: Figure out how to obtain LED status +} + +static void ap2_ble_mouse(report_mouse_t *report) {} + +static void ap2_ble_system(uint16_t data) {} + +static inline uint16_t CONSUMER2AP2(uint16_t usage) { + switch (usage) { + case AUDIO_VOL_DOWN: + return 0x04; + case AUDIO_VOL_UP: + return 0x02; + case AUDIO_MUTE: + return 0x01; + case TRANSPORT_PLAY_PAUSE: + return 0x08; + case TRANSPORT_NEXT_TRACK: + return 0x10; + case TRANSPORT_PREV_TRACK: + return 0x20; + default: + return 0x00; + } +} + +static void ap2_ble_consumer(uint16_t data) { + sdPut(&SD1, 0x0); + sdWrite(&SD1, bleMcuSendConsumerReport, sizeof(bleMcuSendConsumerReport)); + sdPut(&SD1, CONSUMER2AP2(data)); + static const uint8_t dummy[3] = {0}; + sdWrite(&SD1, dummy, sizeof(dummy)); +} + +/*! + * @brief Send keyboard HID report for Bluetooth driver + */ +static void ap2_ble_keyboard(report_keyboard_t *report) { + sdPut(&SD1, 0x0); + sdWrite(&SD1, bleMcuSendReport, sizeof(bleMcuSendReport)); + sdWrite(&SD1, &report->raw[0], KEYBOARD_REPORT_SIZE); +} diff --git a/keyboards/annepro2/annepro2_ble.h b/keyboards/annepro2/annepro2_ble.h new file mode 100644 index 0000000000..0cfb68e071 --- /dev/null +++ b/keyboards/annepro2/annepro2_ble.h @@ -0,0 +1,27 @@ +/* + Copyright (C) 2020 Yaotian Feng, Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#pragma once + +#include "annepro2.h" +#include "quantum.h" + +void annepro2_ble_bootload(void); +void annepro2_ble_startup(void); +void annepro2_ble_broadcast(uint8_t port); +void annepro2_ble_connect(uint8_t port); +void annepro2_ble_disconnect(void); +void annepro2_ble_unpair(void); diff --git a/keyboards/annepro2/ap2_led.c b/keyboards/annepro2/ap2_led.c new file mode 100644 index 0000000000..9969fcd02a --- /dev/null +++ b/keyboards/annepro2/ap2_led.c @@ -0,0 +1,134 @@ +/* Copyright 2021 OpenAnnePro 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 . + */ + +#include +#include +#include "hal.h" +#include "annepro2.h" +#include "ap2_led.h" +#include "protocol.h" + +annepro2Led_t ledMask[KEY_COUNT]; +annepro2LedStatus_t annepro2LedStatus; + +void ledCommandCallback(const message_t *msg) { + switch (msg->command) { + case CMD_LED_STATUS: + annepro2LedStatus.amountOfProfiles = msg->payload[0]; + annepro2LedStatus.currentProfile = msg->payload[1]; + annepro2LedStatus.matrixEnabled = msg->payload[2]; + annepro2LedStatus.isReactive = msg->payload[3]; + annepro2LedStatus.ledIntensity = msg->payload[4]; + annepro2LedStatus.errors = msg->payload[5]; + break; + +#ifdef CONSOLE_ENABLE + case CMD_LED_DEBUG: + /* TODO: Don't use printf. */ + printf("LED:"); + for (int i = 0; i < msg->payloadSize; i++) { + printf("%02x ", msg->payload[i]); + } + for (int i = 0; i < msg->payloadSize; i++) { + printf("%c", msg->payload[i]); + } + printf("\n"); + break; +#endif + } +} + +void annepro2SetIAP(void) { protoTx(CMD_LED_IAP, NULL, 0, 3); } + +void annepro2LedDisable(void) { protoTx(CMD_LED_OFF, NULL, 0, 3); } + +void annepro2LedEnable(void) { protoTx(CMD_LED_ON, NULL, 0, 3); } + +void annepro2LedSetProfile(uint8_t prof) { protoTx(CMD_LED_SET_PROFILE, &prof, sizeof(prof), 3); } + +void annepro2LedGetStatus() { protoTx(CMD_LED_GET_STATUS, NULL, 0, 3); } + +void annepro2LedNextProfile() { protoTx(CMD_LED_NEXT_PROFILE, NULL, 0, 3); } + +void annepro2LedNextIntensity() { protoTx(CMD_LED_NEXT_INTENSITY, NULL, 0, 3); } + +void annepro2LedNextAnimationSpeed() { protoTx(CMD_LED_NEXT_ANIMATION_SPEED, NULL, 0, 3); } + +void annepro2LedPrevProfile() { protoTx(CMD_LED_PREV_PROFILE, NULL, 0, 3); } + +void annepro2LedMaskSetKey(uint8_t row, uint8_t col, annepro2Led_t color) { + uint8_t payload[] = {row, col, color.p.blue, color.p.green, color.p.red, color.p.alpha}; + protoTx(CMD_LED_MASK_SET_KEY, payload, sizeof(payload), 1); +} + +/* Push a whole local row to the shine */ +void annepro2LedMaskSetRow(uint8_t row) { + uint8_t payload[NUM_COLUMN * sizeof(annepro2Led_t) + 1]; + payload[0] = row; + memcpy(payload + 1, &ledMask[ROWCOL2IDX(row, 0)], sizeof(*ledMask) * NUM_COLUMN); + protoTx(CMD_LED_MASK_SET_ROW, payload, sizeof(payload), 1); +} + +/* Synchronize all rows */ +void annepro2LedMaskSetAll(void) { + for (int row = 0; row < 5; row++) annepro2LedMaskSetRow(row); +} + +/* Set all keys to a given color */ +void annepro2LedMaskSetMono(const annepro2Led_t color) { protoTx(CMD_LED_MASK_SET_MONO, (uint8_t *)&color, sizeof(color), 1); } + +void annepro2LedBlink(uint8_t row, uint8_t col, annepro2Led_t color, uint8_t count, uint8_t hundredths) { + uint8_t payload[] = {row, col, color.p.blue, color.p.green, color.p.red, color.p.alpha, count, hundredths}; + protoTx(CMD_LED_KEY_BLINK, payload, sizeof(payload), 1); +} + +void annepro2LedSetForegroundColor(uint8_t red, uint8_t green, uint8_t blue) { + annepro2Led_t color = {.p.red = red, .p.green = green, .p.blue = blue, .p.alpha = 0xff}; + annepro2LedMaskSetMono(color); +} + +void annepro2LedResetForegroundColor() { + annepro2Led_t color = { + .p.red = 0, + .p.green = 0, + .p.blue = 0, + .p.alpha = 0, + }; + annepro2LedMaskSetMono(color); +} + +/* + * Currently keypresses are unified with other messages, still with single 1 + * byte payload. Transfer is normally fast enough for that to not be a problem - + * especially with asynchronous message reading. + * + * + * Previous description: + * If enabled, this data is sent to LED MCU on every keypress. + * In order to improve performance, both row and column values + * are packed into a single byte. + * Row range is [0, 4] and requires only 3 bits. + * Column range is [0, 13] and requires 4 bits. + * + * In order to differentiate this command from regular commands, + * the leftmost bit is set to 1 (0b10000000). + * Following it are 3 bits of row and 4 bits of col. + * 1 + 3 + 4 = 8 bits - only a single byte is sent for every keypress. + */ +void annepro2LedForwardKeypress(uint8_t row, uint8_t col) { + const uint8_t payload = row << 4 | col; + protoTx(CMD_LED_KEY_DOWN, &payload, 1, 1); +} diff --git a/keyboards/annepro2/ap2_led.h b/keyboards/annepro2/ap2_led.h new file mode 100644 index 0000000000..23712a2555 --- /dev/null +++ b/keyboards/annepro2/ap2_led.h @@ -0,0 +1,84 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#pragma once + +#include "protocol.h" + +// Struct defining an LED and its RGB color components +// Compatible with Shine firmware. +typedef union { + struct { + /* Little endian ordering to match uint32_t */ + uint8_t blue, green, red; + /* Used in mask; nonzero means - use color from mask. */ + uint8_t alpha; + } p; /* parts */ + /* Parts vector access: 0 - blue, 1 - green, 2 - red */ + uint8_t pv[4]; + /* 0xrgb in mem is b g r a */ + uint32_t rgb; +} annepro2Led_t; + +#define ROWCOL2IDX(row, col) (NUM_COLUMN * (row) + (col)) +#define NUM_COLUMN 14 +#define NUM_ROW 5 +#define KEY_COUNT 70 + +/* Local copy of ledMask, used to override colors on the board */ +extern annepro2Led_t ledMask[KEY_COUNT]; + +/* Handle incoming messages */ +extern void ledCommandCallback(const message_t *msg); + +void annepro2SetIAP(void); +void annepro2LedDisable(void); +void annepro2LedEnable(void); +void annepro2LedSetProfile(uint8_t prof); +void annepro2LedGetStatus(void); +void annepro2LedNextProfile(void); +void annepro2LedPrevProfile(void); +void annepro2LedNextIntensity(void); +void annepro2LedNextAnimationSpeed(void); +void annepro2LedForwardKeypress(uint8_t row, uint8_t col); + +/* Set single key to a given color; alpha controls which is displayed */ +void annepro2LedMaskSetKey(uint8_t row, uint8_t col, annepro2Led_t color); +/* Push a whole local row to the shine */ +void annepro2LedMaskSetRow(uint8_t row); +/* Synchronize all rows */ +void annepro2LedMaskSetAll(void); + +/* Set all keys to a given color */ +void annepro2LedMaskSetMono(annepro2Led_t color); + +/* Blink given key `count` times by masking it with a `color`. Blink takes `hundredths` of a second */ +void annepro2LedBlink(uint8_t row, uint8_t col, annepro2Led_t color, uint8_t count, uint8_t hundredths); + +/* Kept for compatibility, but implemented using masks */ +void annepro2LedSetForegroundColor(uint8_t red, uint8_t green, uint8_t blue); +void annepro2LedResetForegroundColor(void); + +typedef struct { + uint8_t amountOfProfiles; + uint8_t currentProfile; + uint8_t matrixEnabled; + uint8_t isReactive; + uint8_t ledIntensity; + uint8_t errors; +} annepro2LedStatus_t; + +extern annepro2LedStatus_t annepro2LedStatus; diff --git a/keyboards/annepro2/boards/ANNEPRO2_C15/board.c b/keyboards/annepro2/boards/ANNEPRO2_C15/board.c new file mode 100644 index 0000000000..60c1826155 --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C15/board.c @@ -0,0 +1,103 @@ +/* + Copyright (C) 2020 Yaotian Feng, Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#include "hal.h" + +/* ============ Private Defines ===================== */ + +/* ============ Function Prototypes ================== */ + +#define PBIT(PORT, LINE) ((PAL_PORT(LINE) == PORT) ? (1 << PAL_PAD(LINE)) : 0) +#define PAFIO_L(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) < 8)) ? (AF << (PAL_PAD(LINE) << 2)) : 0) +#define PAFIO_H(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) >= 8)) ? (AF << ((PAL_PAD(LINE) - 8) << 2)) : 0) +#define PAFIO(PORT, N, LINE, AF) ((N) ? PAFIO_H(PORT, LINE, AF) : PAFIO_L(PORT, LINE, AF)) + +#define OUT_BITS(PORT) (PBIT(PORT, C2) | PBIT(PORT, C1) | PBIT(PORT, B5) | PBIT(PORT, B4) | PBIT(PORT, C3) | 0) + +#define IN_BITS(PORT) (PBIT(PORT, C4) | PBIT(PORT, C5) | PBIT(PORT, B10) | PBIT(PORT, B11) | PBIT(PORT, C0) | PBIT(PORT, A15) | PBIT(PORT, A8) | PBIT(PORT, A10) | PBIT(PORT, A11) | PBIT(PORT, A12) | PBIT(PORT, A13) | PBIT(PORT, A14) | PBIT(PORT, B2) | PBIT(PORT, B3) | 0) + +// Alternate Functions +#define AF_BITS(PORT, N) (PAFIO(PORT, N, LINE_UART_RX, AFIO_USART) | PAFIO(PORT, N, LINE_UART_TX, AFIO_USART) | PAFIO(PORT, N, LINE_BT_UART_TX, AFIO_USART) | PAFIO(PORT, N, LINE_BT_UART_RX, AFIO_USART) | PAFIO(PORT, N, C2, AFIO_GPIO) | PAFIO(PORT, N, C1, AFIO_GPIO) | PAFIO(PORT, N, B5, AFIO_GPIO) | PAFIO(PORT, N, B4, AFIO_GPIO) | PAFIO(PORT, N, C3, AFIO_GPIO) | PAFIO(PORT, N, C4, AFIO_GPIO) | PAFIO(PORT, N, C5, AFIO_GPIO) | PAFIO(PORT, N, B10, AFIO_GPIO) | PAFIO(PORT, N, B11, AFIO_GPIO) | PAFIO(PORT, N, C0, AFIO_GPIO) | PAFIO(PORT, N, A15, AFIO_GPIO) | PAFIO(PORT, N, A8, AFIO_GPIO) | PAFIO(PORT, N, A10, AFIO_GPIO) | PAFIO(PORT, N, A11, AFIO_GPIO) | PAFIO(PORT, N, A12, AFIO_GPIO) | PAFIO(PORT, N, A13, AFIO_GPIO) | PAFIO(PORT, N, A14, AFIO_GPIO) | PAFIO(PORT, N, B2, AFIO_GPIO) | PAFIO(PORT, N, B3, AFIO_GPIO) | 0) + +/** + * @brief PAL setup. + * @details Digital I/O ports static configuration as defined in @p board.h. + * This variable is used by the HAL when initializing the PAL driver. + */ +const PALConfig pal_default_config = { + // GPIO A + .setup[0] = + { + .DIR = OUT_BITS(IOPORTA), + .INE = IN_BITS(IOPORTA), + .PU = IN_BITS(IOPORTA), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTA, 0), + .CFG[1] = AF_BITS(IOPORTA, 1), + }, + // GPIO B + .setup[1] = + { + .DIR = OUT_BITS(IOPORTB), + .INE = IN_BITS(IOPORTB), + .PU = IN_BITS(IOPORTB), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTB, 0), + .CFG[1] = AF_BITS(IOPORTB, 1), + }, + // GPIO C + .setup[2] = + { + .DIR = OUT_BITS(IOPORTC), + .INE = IN_BITS(IOPORTC), + .PU = IN_BITS(IOPORTC), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTC, 0), + .CFG[1] = AF_BITS(IOPORTC, 1), + }, + // GPIO D + .setup[3] = + { + .DIR = OUT_BITS(IOPORTD), + .INE = IN_BITS(IOPORTD), + .PU = IN_BITS(IOPORTD), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTD, 0), + .CFG[1] = AF_BITS(IOPORTD, 1), + }, + .ESSR[0] = 0x00000000, + .ESSR[1] = 0x00000000, +}; + +void __early_init(void) { ht32_clock_init(); } + +void boardInit(void) {} diff --git a/keyboards/annepro2/boards/ANNEPRO2_C15/board.h b/keyboards/annepro2/boards/ANNEPRO2_C15/board.h new file mode 100644 index 0000000000..0a044ea181 --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C15/board.h @@ -0,0 +1,39 @@ +/* + ChibiOS - Copyright (C) 2020 Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#pragma once +/* + * Setup for Anne Pro 2 board. + */ + +/* + * Board identifier. + */ +#define BOARD_NAME "Anne Pro 2" + +#define HT32F52342 + +#define FLASH_SIZE (0x10000 - 0x4000) // 64kB - 16kB + +#if !defined(_FROM_ASM_) +#ifdef __cplusplus +extern "C" { +#endif +void boardInit(void); +#ifdef __cplusplus +} +#endif +#endif /* _FROM_ASM_ */ \ No newline at end of file diff --git a/keyboards/annepro2/boards/ANNEPRO2_C15/board.mk b/keyboards/annepro2/boards/ANNEPRO2_C15/board.mk new file mode 100644 index 0000000000..f308892e7c --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C15/board.mk @@ -0,0 +1,5 @@ +# List of all the board related files. +BOARDSRC = $(BOARD_PATH)/boards/ANNEPRO2_C15/board.c + +# Required include directories +BOARDINC = $(BOARD_PATH)/boards/ANNEPRO2_C15 diff --git a/keyboards/annepro2/boards/ANNEPRO2_C18/board.c b/keyboards/annepro2/boards/ANNEPRO2_C18/board.c new file mode 100644 index 0000000000..42c03d3d00 --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C18/board.c @@ -0,0 +1,103 @@ +/* + Copyright (C) 2020 Yaotian Feng, Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#include "hal.h" + +/* ============ Private Defines ===================== */ + +/* ============ Function Prototypes ================== */ + +#define PBIT(PORT, LINE) ((PAL_PORT(LINE) == PORT) ? (1 << PAL_PAD(LINE)) : 0) +#define PAFIO_L(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) < 8)) ? (AF << (PAL_PAD(LINE) << 2)) : 0) +#define PAFIO_H(PORT, LINE, AF) (((PAL_PORT(LINE) == PORT) && (PAL_PAD(LINE) >= 8)) ? (AF << ((PAL_PAD(LINE) - 8) << 2)) : 0) +#define PAFIO(PORT, N, LINE, AF) ((N) ? PAFIO_H(PORT, LINE, AF) : PAFIO_L(PORT, LINE, AF)) + +#define OUT_BITS(PORT) (PBIT(PORT, B5) | PBIT(PORT, B4) | PBIT(PORT, B3) | PBIT(PORT, B2) | PBIT(PORT, D1) | 0) + +#define IN_BITS(PORT) (PBIT(PORT, C4) | PBIT(PORT, C5) | PBIT(PORT, D0) | PBIT(PORT, B15) | PBIT(PORT, C11) | PBIT(PORT, A15) | PBIT(PORT, C12) | PBIT(PORT, C13) | PBIT(PORT, A8) | PBIT(PORT, A10) | PBIT(PORT, A11) | PBIT(PORT, A14) | PBIT(PORT, D2) | PBIT(PORT, D3) | 0) + +// Alternate Functions +#define AF_BITS(PORT, N) (PAFIO(PORT, N, LINE_UART_RX, AFIO_USART) | PAFIO(PORT, N, LINE_UART_TX, AFIO_USART) | PAFIO(PORT, N, LINE_BT_UART_TX, AFIO_USART) | PAFIO(PORT, N, LINE_BT_UART_RX, AFIO_USART) | PAFIO(PORT, N, B5, AFIO_GPIO) | PAFIO(PORT, N, B4, AFIO_GPIO) | PAFIO(PORT, N, B3, AFIO_GPIO) | PAFIO(PORT, N, B2, AFIO_GPIO) | PAFIO(PORT, N, D1, AFIO_GPIO) | PAFIO(PORT, N, C4, AFIO_GPIO) | PAFIO(PORT, N, C5, AFIO_GPIO) | PAFIO(PORT, N, D0, AFIO_GPIO) | PAFIO(PORT, N, B15, AFIO_GPIO) | PAFIO(PORT, N, C11, AFIO_GPIO) | PAFIO(PORT, N, A15, AFIO_GPIO) | PAFIO(PORT, N, C12, AFIO_GPIO) | PAFIO(PORT, N, C13, AFIO_GPIO) | PAFIO(PORT, N, A8, AFIO_GPIO) | PAFIO(PORT, N, A10, AFIO_GPIO) | PAFIO(PORT, N, A11, AFIO_GPIO) | PAFIO(PORT, N, A14, AFIO_GPIO) | PAFIO(PORT, N, D2, AFIO_GPIO) | PAFIO(PORT, N, D3, AFIO_GPIO) | 0) + +/** + * @brief PAL setup. + * @details Digital I/O ports static configuration as defined in @p board.h. + * This variable is used by the HAL when initializing the PAL driver. + */ +const PALConfig pal_default_config = { + // GPIO A + .setup[0] = + { + .DIR = OUT_BITS(IOPORTA), + .INE = IN_BITS(IOPORTA), + .PU = IN_BITS(IOPORTA), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTA, 0), + .CFG[1] = AF_BITS(IOPORTA, 1), + }, + // GPIO B + .setup[1] = + { + .DIR = OUT_BITS(IOPORTB), + .INE = IN_BITS(IOPORTB), + .PU = IN_BITS(IOPORTB), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTB, 0), + .CFG[1] = AF_BITS(IOPORTB, 1), + }, + // GPIO C + .setup[2] = + { + .DIR = OUT_BITS(IOPORTC), + .INE = IN_BITS(IOPORTC), + .PU = IN_BITS(IOPORTC), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTC, 0), + .CFG[1] = AF_BITS(IOPORTC, 1), + }, + // GPIO D + .setup[3] = + { + .DIR = OUT_BITS(IOPORTD), + .INE = IN_BITS(IOPORTD), + .PU = IN_BITS(IOPORTD), + .PD = 0x0000, + .OD = 0x0000, + .DRV = 0x0000, + .LOCK = 0x0000, + .OUT = 0x0000, + .CFG[0] = AF_BITS(IOPORTD, 0), + .CFG[1] = AF_BITS(IOPORTD, 1), + }, + .ESSR[0] = 0x00000000, + .ESSR[1] = 0x00000000, +}; + +void __early_init(void) { ht32_clock_init(); } + +void boardInit(void) {} diff --git a/keyboards/annepro2/boards/ANNEPRO2_C18/board.h b/keyboards/annepro2/boards/ANNEPRO2_C18/board.h new file mode 100644 index 0000000000..7345b24231 --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C18/board.h @@ -0,0 +1,39 @@ +/* + ChibiOS - Copyright (C) 2020 Codetector + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#pragma once +/* + * Setup for Anne Pro 2 board. + */ + +/* + * Board identifier. + */ +#define BOARD_NAME "Anne Pro 2" + +#define HT32F52342 + +#define FLASH_SIZE (0x10000 - 0x4000) // 64kB - 16kB + +#if !defined(_FROM_ASM_) +#ifdef __cplusplus +extern "C" { +#endif +void boardInit(void); +#ifdef __cplusplus +} +#endif +#endif /* _FROM_ASM_ */ diff --git a/keyboards/annepro2/boards/ANNEPRO2_C18/board.mk b/keyboards/annepro2/boards/ANNEPRO2_C18/board.mk new file mode 100644 index 0000000000..1b41dede85 --- /dev/null +++ b/keyboards/annepro2/boards/ANNEPRO2_C18/board.mk @@ -0,0 +1,5 @@ +# List of all the board related files. +BOARDSRC = $(BOARD_PATH)/boards/ANNEPRO2_C18/board.c + +# Required include directories +BOARDINC = $(BOARD_PATH)/boards/ANNEPRO2_C18 diff --git a/keyboards/annepro2/c15/config.h b/keyboards/annepro2/c15/config.h new file mode 100644 index 0000000000..f28a6a1b53 --- /dev/null +++ b/keyboards/annepro2/c15/config.h @@ -0,0 +1,47 @@ +/* + * Copyright (c) 2018 Charlie Waters + * + * 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 . + */ + +#pragma once + +#include "pin_defs.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xfeed +#define PRODUCT_ID 0xac15 +#define DEVICE_VER 0x1337 +#define MANUFACTURER Obins +#define PRODUCT Anne Pro 2 QMK +// key matrix size +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 +// layer size: MATRIX_ROWS * MATRIX_COLS * sizeof(uint16_t) = 140 bytes + +#define LINE_UART_TX B0 // Master TX, LED RX +#define LINE_UART_RX B1 // Master RX, LED TX + +#define LINE_BT_UART_TX A4 // Master TX, BLE RX +#define LINE_BT_UART_RX A5 // Master RX, BLE TX + +// outputs (rows are pulled low) +#define MATRIX_ROW_PINS \ + { C2, C1, B5, B4, C3 } + +// inputs (columns are sampled) +// PORTA 12,13 conflict with SWD + +#define MATRIX_COL_PINS \ + { C4, C5, B10, B11, C0, A15, A8, A10, A11, A12, A13, A14, B2, B3 } diff --git a/keyboards/annepro2/c15/readme.md b/keyboards/annepro2/c15/readme.md new file mode 100644 index 0000000000..5fadb73909 --- /dev/null +++ b/keyboards/annepro2/c15/readme.md @@ -0,0 +1 @@ +AnnePro2, ANSI C15 version. diff --git a/keyboards/annepro2/c15/rules.mk b/keyboards/annepro2/c15/rules.mk new file mode 100644 index 0000000000..554ddc28ce --- /dev/null +++ b/keyboards/annepro2/c15/rules.mk @@ -0,0 +1,37 @@ +# Anne Pro 2 +SRC = \ + matrix.c \ + annepro2_ble.c \ + ap2_led.c \ + protocol.c + +# MCU +MCU = cortex-m0plus +ARMV = 6 +USE_FPU = no +MCU_FAMILY = HT32 +MCU_SERIES = HT32F523xx +MCU_LDSCRIPT = HT32F52342_ANNEPRO2 +MCU_STARTUP = ht32f523xx + +BOARD = ANNEPRO2_C15 + +# Options + +# Keys +CUSTOM_MATRIX = lite +NKRO_ENABLE = no +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +KEY_LOCK_ENABLE = no + +# Other featues +BOOTMAGIC_ENABLE = no +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +RAW_ENABLE = no +MIDI_ENABLE = no +VIRTSER_ENABLE = no +COMBO_ENABLE = no +BOOTLOADER = custom +PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin diff --git a/keyboards/annepro2/c18/config.h b/keyboards/annepro2/c18/config.h new file mode 100644 index 0000000000..f610ef76e4 --- /dev/null +++ b/keyboards/annepro2/c18/config.h @@ -0,0 +1,45 @@ +/* + * Copyright (c) 2018 Charlie Waters + * + * 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 . + */ + +#pragma once + +#include "pin_defs.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xfeed +#define PRODUCT_ID 0xac18 +#define DEVICE_VER 0x1337 +#define MANUFACTURER Obins +#define PRODUCT Anne Pro 2(c18)QMK +// key matrix size +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 +// layer size: MATRIX_ROWS * MATRIX_COLS * sizeof(uint16_t) = 140 bytes + +#define LINE_UART_TX B0 +#define LINE_UART_RX B1 + +#define LINE_BT_UART_TX A4 // Master TX, BLE RX +#define LINE_BT_UART_RX A5 // Master RX, BLE TX + +// outputs (rows are pulled low) +#define MATRIX_ROW_PINS \ + { B5, B4, B3, B2, D1 } + +// inputs (columns are sampled) +#define MATRIX_COL_PINS \ + { C4, C5, D0, B15, C11, A15, C12, C13, A8, A10, A11, A14, D2, D3 } diff --git a/keyboards/annepro2/c18/readme.md b/keyboards/annepro2/c18/readme.md new file mode 100644 index 0000000000..f2e2fc45b8 --- /dev/null +++ b/keyboards/annepro2/c18/readme.md @@ -0,0 +1 @@ +AnnePro2, ANSI C18 version. diff --git a/keyboards/annepro2/c18/rules.mk b/keyboards/annepro2/c18/rules.mk new file mode 100644 index 0000000000..b2e16cc35f --- /dev/null +++ b/keyboards/annepro2/c18/rules.mk @@ -0,0 +1,37 @@ +# Anne Pro 2 +SRC = \ + matrix.c \ + annepro2_ble.c \ + ap2_led.c \ + protocol.c + +# MCU +MCU = cortex-m0plus +ARMV = 6 +USE_FPU = no +MCU_FAMILY = HT32 +MCU_SERIES = HT32F523xx +MCU_LDSCRIPT = HT32F52342_ANNEPRO2 +MCU_STARTUP = ht32f523xx + +BOARD = ANNEPRO2_C18 + +# Options + +# Keys +CUSTOM_MATRIX = lite +NKRO_ENABLE = no +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +KEY_LOCK_ENABLE = no + +# Other featues +BOOTMAGIC_ENABLE = yes +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +RAW_ENABLE = no +MIDI_ENABLE = no +VIRTSER_ENABLE = no +COMBO_ENABLE = no +BOOTLOADER = custom +PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin diff --git a/keyboards/annepro2/chconf.h b/keyboards/annepro2/chconf.h new file mode 100644 index 0000000000..51fe38cf27 --- /dev/null +++ b/keyboards/annepro2/chconf.h @@ -0,0 +1,31 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/annepro2/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 1000 + +#define CH_CFG_ST_TIMEDELTA 0 + +#define CH_CFG_TIME_QUANTUM 20 + + +#include_next \ No newline at end of file diff --git a/keyboards/annepro2/halconf.h b/keyboards/annepro2/halconf.h new file mode 100644 index 0000000000..686b91a7fb --- /dev/null +++ b/keyboards/annepro2/halconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/annepro2/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_SERIAL TRUE + +#define SERIAL_USB_BUFFERS_SIZE 256 + +#include_next diff --git a/keyboards/annepro2/info.json b/keyboards/annepro2/info.json new file mode 100644 index 0000000000..8fd515bd10 --- /dev/null +++ b/keyboards/annepro2/info.json @@ -0,0 +1,330 @@ +{ + "keyboard_name": "Anne Pro 2", + "url": "https://openannepro.github.io/", + "maintainer": "community", + "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 + }, + { + "label": "Backspace", + "x": 13, + "y": 0, + "w": 2 + }, + { + "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": 2.75 + }, + { + "label": "Ctrl", + "x": 0, + "y": 4, + "w": 1.25 + }, + { + "label": "Win", + "x": 1.25, + "y": 4, + "w": 1.25 + }, + { + "label": "Alt", + "x": 2.5, + "y": 4, + "w": 1.25 + }, + { + "x": 3.75, + "y": 4, + "w": 6.25 + }, + { + "label": "Alt", + "x": 10, + "y": 4, + "w": 1.25 + }, + { + "label": "Win", + "x": 11.25, + "y": 4, + "w": 1.25 + }, + { + "label": "Menu", + "x": 12.5, + "y": 4, + "w": 1.25 + }, + { + "label": "Ctrl", + "x": 13.75, + "y": 4, + "w": 1.25 + } + ] + } + } +} diff --git a/keyboards/annepro2/keymaps/default-full-caps/config.h b/keyboards/annepro2/keymaps/default-full-caps/config.h new file mode 100644 index 0000000000..413c5d8dc5 --- /dev/null +++ b/keyboards/annepro2/keymaps/default-full-caps/config.h @@ -0,0 +1,20 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#pragma once + +// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK +#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default-full-caps/keymap.c b/keyboards/annepro2/keymaps/default-full-caps/keymap.c new file mode 100644 index 0000000000..8ac9211ac4 --- /dev/null +++ b/keyboards/annepro2/keymaps/default-full-caps/keymap.c @@ -0,0 +1,120 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#include QMK_KEYBOARD_H + +enum anne_pro_layers { + _BASE_LAYER, + _FN1_LAYER, + _FN2_LAYER, +}; + +// clang-format off + +// Key symbols are based on QMK. Use them to remap your keyboard +/* +* Layer _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | +* |-----------------------------------------------------------------------------------------+ +* | Tab | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | +* |-----------------------------------------------------------------------------------------+ +* | Caps | a | s | d | f | g | h | j | k | l | ; | ' | Enter | +* |-----------------------------------------------------------------------------------------+ +* | Shift | z | x | c | v | b | n | m | , | . | / | Shift | +* |-----------------------------------------------------------------------------------------+ +* | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | +* \-----------------------------------------------------------------------------------------/ +* Layer TAP in _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | UP | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | LEFT | DOWN | RIGHT | +* \-----------------------------------------------------------------------------------------/ +*/ + const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE_LAYER] = LAYOUT( /* Base */ + 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_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, + LT(_FN1_LAYER,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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) +), + /* + * Layer _FN1_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift |V-UP |V-DWN|MUTE | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN1_LAYER] = LAYOUT( /* Base */ + KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS +), + /* + * Layer _FN2_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift | z | x | c | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN2_LAYER] = LAYOUT( /* Base */ + KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, + MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + ), +}; + +// clang-format on + +// The function to handle the caps lock logic +bool led_update_user(led_t leds) { + if (leds.caps_lock) { + // Set the leds to red + annepro2LedSetForegroundColor(0xFF, 0x00, 0x00); + } else { + annepro2LedResetForegroundColor(); + } + + return true; +} diff --git a/keyboards/annepro2/keymaps/default-layer-indicators/config.h b/keyboards/annepro2/keymaps/default-layer-indicators/config.h new file mode 100644 index 0000000000..413c5d8dc5 --- /dev/null +++ b/keyboards/annepro2/keymaps/default-layer-indicators/config.h @@ -0,0 +1,20 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#pragma once + +// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK +#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c new file mode 100644 index 0000000000..ac2b421d06 --- /dev/null +++ b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c @@ -0,0 +1,147 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#include QMK_KEYBOARD_H + +enum anne_pro_layers { + _BASE_LAYER, + _FN1_LAYER, + _FN2_LAYER, +}; + +// clang-format off + +// Key symbols are based on QMK. Use them to remap your keyboard +/* +* Layer _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | +* |-----------------------------------------------------------------------------------------+ +* | Tab | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | +* |-----------------------------------------------------------------------------------------+ +* | Caps | a | s | d | f | g | h | j | k | l | ; | ' | Enter | +* |-----------------------------------------------------------------------------------------+ +* | Shift | z | x | c | v | b | n | m | , | . | / | Shift | +* |-----------------------------------------------------------------------------------------+ +* | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | +* \-----------------------------------------------------------------------------------------/ +* Layer TAP in _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | UP | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | LEFT | DOWN | RIGHT | +* \-----------------------------------------------------------------------------------------/ +*/ + const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE_LAYER] = LAYOUT( /* Base */ + 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_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, + LT(_FN1_LAYER,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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) +), + /* + * Layer _FN1_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift |V-UP |V-DWN|MUTE | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN1_LAYER] = LAYOUT( /* Base */ + KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS +), + /* + * Layer _FN2_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift | z | x | c | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN2_LAYER] = LAYOUT( /* Base */ + KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, + MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + ), +}; + +// clang-format on + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _FN1_LAYER: + // Set the leds to green + annepro2LedSetForegroundColor(0x00, 0xFF, 0x00); + break; + case _FN2_LAYER: + // Set the leds to blue + annepro2LedSetForegroundColor(0x00, 0x00, 0xFF); + break; + default: + // Reset back to the current profile + annepro2LedResetForegroundColor(); + break; + } + return state; +} + +// The function to handle the caps lock logic +// It's called after the capslock changes state or after entering layers 1 and 2. +bool led_update_user(led_t leds) { + if (leds.caps_lock) { + // Set the caps-lock to red + const annepro2Led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0xff}; + + annepro2LedMaskSetKey(2, 0, color); + /* NOTE: Instead of colouring the capslock only, you can change the whole + keyboard with annepro2LedSetForegroundColor */ + } else { + // Reset the capslock if there is no layer active + if (!layer_state_is(_FN1_LAYER) && !layer_state_is(_FN2_LAYER)) { + const annepro2Led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0x00}; + annepro2LedMaskSetKey(2, 0, color); + } + } + + return true; +} diff --git a/keyboards/annepro2/keymaps/default/config.h b/keyboards/annepro2/keymaps/default/config.h new file mode 100644 index 0000000000..413c5d8dc5 --- /dev/null +++ b/keyboards/annepro2/keymaps/default/config.h @@ -0,0 +1,20 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#pragma once + +// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK +#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default/keymap.c b/keyboards/annepro2/keymaps/default/keymap.c new file mode 100644 index 0000000000..a984b05830 --- /dev/null +++ b/keyboards/annepro2/keymaps/default/keymap.c @@ -0,0 +1,106 @@ + /* Copyright 2021 OpenAnnePro 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 . + */ + +#include QMK_KEYBOARD_H + +enum anne_pro_layers { + _BASE_LAYER, + _FN1_LAYER, + _FN2_LAYER, +}; + +// clang-format off +// Key symbols are based on QMK. Use them to remap your keyboard +/* +* Layer _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | +* |-----------------------------------------------------------------------------------------+ +* | Tab | q | w | e | r | t | y | u | i | o | p | [ | ] | \ | +* |-----------------------------------------------------------------------------------------+ +* | Caps | a | s | d | f | g | h | j | k | l | ; | ' | Enter | +* |-----------------------------------------------------------------------------------------+ +* | Shift | z | x | c | v | b | n | m | , | . | / | Shift | +* |-----------------------------------------------------------------------------------------+ +* | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | +* \-----------------------------------------------------------------------------------------/ +* Layer TAP in _BASE_LAYER +* ,-----------------------------------------------------------------------------------------. +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | | | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | | | | | | | UP | +* |-----------------------------------------------------------------------------------------+ +* | | | | | | LEFT | DOWN | RIGHT | +* \-----------------------------------------------------------------------------------------/ +*/ + const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE_LAYER] = LAYOUT( /* Base */ + 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_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, + LT(_FN1_LAYER,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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) +), + /* + * Layer _FN1_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift |V-UP |V-DWN|MUTE | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN1_LAYER] = LAYOUT( /* Base */ + KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS +), + /* + * Layer _FN2_LAYER + * ,-----------------------------------------------------------------------------------------. + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | + * |-----------------------------------------------------------------------------------------+ + * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | + * |-----------------------------------------------------------------------------------------+ + * | Esc |LEFT |DOWN |RIGHT| f | g | h | j | k | l | PGUP|PGDN | Enter | + * |-----------------------------------------------------------------------------------------+ + * | Shift | z | x | c | v | b | n | m | , |INSRT| DEL | Shift | + * |-----------------------------------------------------------------------------------------+ + * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | + * \-----------------------------------------------------------------------------------------/ + * + */ + [_FN2_LAYER] = LAYOUT( /* Base */ + KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, + MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + ), +}; +// clang-format on diff --git a/keyboards/annepro2/ld/HT32F52342_ANNEPRO2.ld b/keyboards/annepro2/ld/HT32F52342_ANNEPRO2.ld new file mode 100644 index 0000000000..544400b948 --- /dev/null +++ b/keyboards/annepro2/ld/HT32F52342_ANNEPRO2.ld @@ -0,0 +1,91 @@ +/* + * Copyright (c) 2013-2016 Fabio UJonathan A. Kollaschtzig, http://fabioutzig.com + * (c) 2020 Yaotian Feng (Codetector) + * + * Permission is hereby granted, free of charge, to any person obtaining + * a copy of this software and associated documentation files (the "Software"), + * to deal in the Software without restriction, including without limitation + * the rights to use, copy, modify, merge, publish, distribute, sublicense, + * and/or sell copies of the Software, and to permit persons to whom the + * Software is furnished to do so, subject to the following conditions: + * + * The above copyright notice and this permission notice shall be included in + * all copies or substantial portions of the Software. + * + * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS + * OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, + * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE + * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER + * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE + * SOFTWARE. + */ + +/* + * HT32F52342 w/ Anne Pro 2 bootloader memory setup. + */ +MEMORY { + flash0 : org = 0x00004000, len = 64k - 16k /* firmware */ + flash1 : org = 0x00000000, len = 0 + flash2 : org = 0x00000000, len = 0 + flash3 : org = 0x00000000, len = 0 + flash4 : org = 0x00000000, len = 0 + flash5 : org = 0x00000000, len = 0 + flash6 : org = 0x00000000, len = 0 + flash7 : org = 0x00000000, len = 0 + ram0 : org = 0x20000000, len = 8k - 4 /* RAM */ + ram1 : org = 0x00000000, len = 0 + ram2 : org = 0x00000000, len = 0 + ram3 : org = 0x00000000, len = 0 + ram4 : org = 0x00000000, len = 0 + ram5 : org = 0x00000000, len = 0 + ram6 : org = 0x00000000, len = 0 + ram7 : org = 0x00000000, len = 0 +} + +/* For each data/text section two region are defined, a virtual region + and a load region (_LMA suffix).*/ + +/* Flash region to be used for exception vectors.*/ +REGION_ALIAS("VECTORS_FLASH", flash0); +REGION_ALIAS("VECTORS_FLASH_LMA", flash0); + +/* Flash region to be used for constructors and destructors.*/ +REGION_ALIAS("XTORS_FLASH", flash0); +REGION_ALIAS("XTORS_FLASH_LMA", flash0); + +/* Flash region to be used for code text.*/ +REGION_ALIAS("TEXT_FLASH", flash0); +REGION_ALIAS("TEXT_FLASH_LMA", flash0); + +/* Flash region to be used for read only data.*/ +REGION_ALIAS("RODATA_FLASH", flash0); +REGION_ALIAS("RODATA_FLASH_LMA", flash0); + +/* Flash region to be used for various.*/ +REGION_ALIAS("VARIOUS_FLASH", flash0); +REGION_ALIAS("VARIOUS_FLASH_LMA", flash0); + +/* Flash region to be used for RAM(n) initialization data.*/ +REGION_ALIAS("RAM_INIT_FLASH_LMA", flash0); + +/* RAM region to be used for Main stack. This stack accommodates the processing + of all exceptions and interrupts.*/ +REGION_ALIAS("MAIN_STACK_RAM", ram0); + +/* RAM region to be used for the process stack. This is the stack used by + the main() function.*/ +REGION_ALIAS("PROCESS_STACK_RAM", ram0); + +/* RAM region to be used for data segment.*/ +REGION_ALIAS("DATA_RAM", ram0); +REGION_ALIAS("DATA_RAM_LMA", flash0); + +/* RAM region to be used for BSS segment.*/ +REGION_ALIAS("BSS_RAM", ram0); + +/* RAM region to be used for the default heap.*/ +REGION_ALIAS("HEAP_RAM", ram0); + +/* Generic rules inclusion.*/ +INCLUDE rules.ld diff --git a/keyboards/annepro2/matrix.c b/keyboards/annepro2/matrix.c new file mode 100644 index 0000000000..a1585e4ddf --- /dev/null +++ b/keyboards/annepro2/matrix.c @@ -0,0 +1,63 @@ +/* + * Copyright (c) 2018 Charlie Waters + * + * 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 . + */ + +#include +#include +#include +#include +#include "timer.h" +#include "wait.h" +#include "print.h" +#include "matrix.h" +#include "annepro2.h" + +pin_t row_list[MATRIX_ROWS] = MATRIX_ROW_PINS; +pin_t col_list[MATRIX_COLS] = MATRIX_COL_PINS; + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + bool matrix_has_changed = false; + // cache of input ports for columns + static uint16_t port_cache[4]; + // scan each row + for (int row = 0; row < MATRIX_ROWS; row++) { + palClearLine(row_list[row]); + __NOP(); + __NOP(); + __NOP(); + __NOP(); + // read i/o ports + port_cache[0] = palReadPort(IOPORTA); + port_cache[1] = palReadPort(IOPORTB); + port_cache[2] = palReadPort(IOPORTC); + port_cache[3] = palReadPort(IOPORTD); + palSetLine(row_list[row]); + + // get columns from ports + matrix_row_t data = 0; + for (int col = 0; col < MATRIX_COLS; ++col) { + pin_t line = col_list[col]; + uint16_t port = port_cache[HT32_PAL_IDX(PAL_PORT(line))]; + data |= (((port & (1 << PAL_PAD(line))) ? 0 : 1) << col); + } + + if (current_matrix[row] != data) { + current_matrix[row] = data; + matrix_has_changed = true; + } + } + return matrix_has_changed; +} \ No newline at end of file diff --git a/keyboards/annepro2/mcuconf.h b/keyboards/annepro2/mcuconf.h new file mode 100644 index 0000000000..8265fe6eb9 --- /dev/null +++ b/keyboards/annepro2/mcuconf.h @@ -0,0 +1,62 @@ +/* + ChibiOS - Copyright (C) 2006..2015 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ +#pragma once + +#include "nvic.h" + +#define HT32F52342_MCUCONF + +/* + * HAL driver system settings. + */ + +/* + * Clock configuration. + */ + +// This configuration: +// 8 MHz HSE crystal +// PLL multiplies HSE to 48 MHz core and peripheral clock +// 48 MHz to UART +// 48 MHz to USB + +#define HT32_CK_HSE_FREQUENCY 8000000UL // 8 MHz +#define HT32_CKCU_SW CKCU_GCCR_SW_PLL +#define HT32_PLL_USE_HSE TRUE +#define HT32_PLL_FBDIV 6 // 8 MHz -> 48 MHz +#define HT32_PLL_OTDIV 0 +#define HT32_AHB_PRESCALER 1 // 48 MHz -> 48 MHz +#define HT32_USART_PRESCALER 1 // 48 MHz +#define HT32_USB_PRESCALER 1 // 48 MHz -> 48 MHz +// SysTick uses processor clock at 48MHz +#define HT32_ST_USE_HCLK TRUE + +/* + * Peripheral driver settings + */ + +#define HT32_SERIAL_USE_USART0 TRUE +#define HT32_USART0_IRQ_PRIORITY 6 + +#define HT32_SERIAL_USE_USART1 TRUE +#define HT32_USART1_IRQ_PRIORITY 7 + +/* + * USB driver settings + */ + +#define HT32_USB_USE_USB0 TRUE +#define HT32_USB_USB0_IRQ_PRIORITY 5 diff --git a/keyboards/annepro2/protocol.c b/keyboards/annepro2/protocol.c new file mode 100644 index 0000000000..171ac5c239 --- /dev/null +++ b/keyboards/annepro2/protocol.c @@ -0,0 +1,116 @@ +/* + * (c) 2021 by Tomasz bla Fortuna + * License: GPLv2 + * + * This file is shared with the Shine firmware. Keep it in sync (and in the + * shine's clang formatting). + * + * Implementation of a robust serial protocol which can handle single dropped + * characters during transit without locking. + * + * At 115200, transmitting the shortest message takes 0.043ms, at 9600 - 0.52ms. + * + */ + +#include "protocol.h" +#include "board.h" +#include "ch.h" +#include "hal.h" + +/* UART communication protocol state */ +protocol_t proto; + +void protoInit(protocol_t *proto, void (*callback)(const message_t *)) { + proto->previousId = 0; + proto->callback = callback; + proto->state = STATE_SYNC_1; + proto->errors = 0; +} + +static uint8_t msgId = 0; +void protoTx(uint8_t cmd, const unsigned char *buf, int payloadSize, int retries) { + chDbgCheck(payloadSize <= MAX_PAYLOAD_SIZE); + + const uint8_t header[5] = { + 0x7A, 0x1D, cmd, ++msgId, payloadSize, + }; + + /* We don't implement ACKs, yet some messages should not be lost. */ + for (int i = 0; i < retries; i++) { + sdWrite(&PROTOCOL_SD, header, sizeof(header)); + if (payloadSize) sdWrite(&PROTOCOL_SD, buf, payloadSize); + } +} + +static inline void messageReceived(protocol_t *proto) { + if (proto->buffer.msgId != proto->previousId) { + /* It's not a resend / duplicate */ + proto->callback(&proto->buffer); + proto->previousId = proto->buffer.msgId; + } + proto->state = STATE_SYNC_1; +} + +void protoConsume(protocol_t *proto, uint8_t byte) { + switch (proto->state) { + case STATE_SYNC_1: + if (byte == 0x7A) { + proto->state = STATE_SYNC_2; + } else { + proto->errors++; + } + return; + + case STATE_SYNC_2: + if (byte == 0x1D) { + proto->state = STATE_CMD; + } else { + proto->state = STATE_SYNC_1; + proto->errors++; + } + return; + + case STATE_CMD: + proto->buffer.command = byte; + proto->state = STATE_ID; + return; + + case STATE_ID: + proto->buffer.msgId = byte; + proto->state = STATE_PAYLOAD_SIZE; + return; + + case STATE_PAYLOAD_SIZE: + proto->buffer.payloadSize = byte; + if (proto->buffer.payloadSize > MAX_PAYLOAD_SIZE) { + proto->buffer.payloadSize = MAX_PAYLOAD_SIZE; + proto->errors++; + } + proto->payloadPosition = 0; + if (proto->buffer.payloadSize == 0) { + /* No payload - whole message received */ + messageReceived(proto); + } else { + proto->state = STATE_PAYLOAD; + } + return; + + case STATE_PAYLOAD: + /* NOTE: This could be read with sdReadTimeout probably, but that breaks + * abstraction */ + proto->buffer.payload[proto->payloadPosition] = byte; + proto->payloadPosition++; + if (proto->payloadPosition == proto->buffer.payloadSize) { + /* Payload read - message received */ + messageReceived(proto); + } + return; + } +} + +void protoSilence(protocol_t *proto) { + if (proto->state != STATE_SYNC_1) { + proto->state = STATE_SYNC_1; + proto->errors++; + } +} diff --git a/keyboards/annepro2/protocol.h b/keyboards/annepro2/protocol.h new file mode 100644 index 0000000000..d1a05683c8 --- /dev/null +++ b/keyboards/annepro2/protocol.h @@ -0,0 +1,111 @@ +/* + * (c) 2021 by Tomasz bla Fortuna + * License: GPLv2 + * + * This file is shared with the Shine firmware. Keep it in sync (and in the + * shine's clang formatting). + */ + +#pragma once +#include + +#define PROTOCOL_SD SD0 + +enum { + /* + * Main -> LED + */ + /* Basic config */ + CMD_LED_ON = 0x01, + CMD_LED_OFF = 0x02, + + CMD_LED_SET_PROFILE = 0x03, + CMD_LED_NEXT_PROFILE = 0x04, + CMD_LED_PREV_PROFILE = 0x05, + + CMD_LED_NEXT_INTENSITY = 0x06, + CMD_LED_NEXT_ANIMATION_SPEED = 0x07, + + /* Masks */ + /* Override a key color, eg. capslock */ + CMD_LED_MASK_SET_KEY = 0x10, + /* Override all keys in a row with configurable colors */ + CMD_LED_MASK_SET_ROW = 0x11, + + /* Override all keys with single color (eg. foreground color) */ + CMD_LED_MASK_SET_MONO = 0x12, + + /* Reactive / status */ + CMD_LED_GET_STATUS = 0x20, + CMD_LED_KEY_BLINK = 0x21, + CMD_LED_KEY_DOWN = 0x22, + CMD_LED_KEY_UP = 0x23, /* TODO */ + CMD_LED_IAP = 0x24, + + /* LED -> Main */ + /* Payload with data to send over HID */ + CMD_LED_DEBUG = 0x40, + + /* Number of profiles, current profile, on/off state, + reactive flag, brightness, errors */ + CMD_LED_STATUS = 0x41, +}; + +/* 1 ROW * 14 COLS * 4B (RGBX) = 56 + header prefix. */ +#define MAX_PAYLOAD_SIZE 64 + +/** Enum of the states used for the serial protocol finite-state automaton */ +enum protoState { + /* 2-byte initial start-of-message sync */ + STATE_SYNC_1, + STATE_SYNC_2, + /* Waiting for command byte */ + STATE_CMD, + /* Waiting for ID byte */ + STATE_ID, + /* Waiting for payload size */ + STATE_PAYLOAD_SIZE, + /* Reading payload until payloadPosition == payloadSize */ + STATE_PAYLOAD, +}; + +/* Buffer holding a single message */ +typedef struct { + uint8_t command; + uint8_t msgId; + uint8_t payloadSize; + uint8_t payload[MAX_PAYLOAD_SIZE]; +} message_t; + +/* Internal protocol state */ +typedef struct { + /* Callback to call upon receiving a valid message */ + void (*callback)(const message_t *); + + /* Number of read payload bytes */ + uint8_t payloadPosition; + + /* Current finite-state-automata state */ + enum protoState state; + + uint8_t previousId; + uint8_t errors; + + /* Currently received message */ + message_t buffer; +} protocol_t; + +/* NOTE: This didn't work when defined on stack */ +extern protocol_t proto; + +/* Init state */ +extern void protoInit(protocol_t *proto, void (*callback)(const message_t *)); + +/* Consume one byte and push state forward - might call the callback */ +extern void protoConsume(protocol_t *proto, uint8_t byte); + +/* Prolonged silence - reset state */ +extern void protoSilence(protocol_t *proto); + +/* Transmit message */ +extern void protoTx(uint8_t cmd, const unsigned char *buf, int payloadSize, int retries); diff --git a/keyboards/annepro2/readme.md b/keyboards/annepro2/readme.md new file mode 100644 index 0000000000..e3e0b95be4 --- /dev/null +++ b/keyboards/annepro2/readme.md @@ -0,0 +1,50 @@ +# Anne Pro 2 rev. C15 and C18 QMK firmware + +## Introduction + +This is the QMK firmware repository for the Anne Pro 2 rev. C15 and C18 keyboard. + +## Layouts + +Keyboard has 60% ANSI standard layout. + +## How to compile + +After setting up your build environment, you can compile the Anne Pro 2 C18 default keymap by using: + + make annepro2/c18:default + +If you want to compile the Anne Pro 2 C15 default keymap use: + + make annepro2/c15:default + +## Installing + +### Get AnnePro2 Tools + +If you want the executable instead of compiling it yourself, [download it here](https://ci.codetector.org/job/OpenAnnePro/job/AnnePro2-Tools/job/master/). +Windows and Linux versions are available. Otherwise, follow the steps below: + +0. Install the latest stable `rust` toolchain using [rustup](https://rustup.rs/) +0. Also install [Visual Studio Community edition](https://visualstudio.microsoft.com/downloads/) +including the C/C++ module to prevent errors while compiling +0. Download or Clone the [AnnePro2-Tools](https://github.com/OpenAnnePro/AnnePro2-Tools) project. +0. Compile the tool using +```bash +cargo build --release +``` +0. The compiled tool should be in `./target/release/annepro2_tools` (In later I will refer to this as `annepro2_tools`) + +### Flashing the firmware +0. Put the keyboard into DFU/IAP mode by unplugging the keyboard, then holding ESC while plugging it back in. +0. Run annepro2_tools with the firmware you just built. + +**Please substitute with the correct paths and correct bin file if you chose another keymap profile** +```bash +annepro2_tools annepro2_c15_default.bin +``` + +If the tool can't find the keyboard please double check you have the keyboard in IAP mode. + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file From 59954322025b7f7bea4b7dc08148b5702f08e030 Mon Sep 17 00:00:00 2001 From: FearlessSpiff Date: Tue, 8 Mar 2022 03:17:30 +0100 Subject: [PATCH 034/699] [Keymap] add mouse controls to Mechwilds Mercutio FearlessSpiff (#16566) --- .../mercutio/keymaps/fearless_spiff/config.h | 9 ++++++++ .../mercutio/keymaps/fearless_spiff/keymap.c | 22 +++++++++++++------ .../mercutio/keymaps/fearless_spiff/readme.md | 7 +++++- .../mercutio/keymaps/fearless_spiff/rules.mk | 2 +- 4 files changed, 31 insertions(+), 9 deletions(-) diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/config.h b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/config.h index 9d588ed8c0..f29c91f9e0 100644 --- a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/config.h +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/config.h @@ -17,3 +17,12 @@ #pragma once #define TAPPING_TERM 180 + +#define MK_KINETIC_SPEED +#define MOUSEKEY_DELAY 8 +#define MOUSEKEY_INTERVAL 5 +#define MOUSEKEY_MOVE_DELTA 1 +#define MOUSEKEY_INITIAL_SPEED 3 +#define MOUSEKEY_BASE_SPEED 120 +#define MOUSEKEY_DECELERATED_SPEED 100 +#define MOUSEKEY_ACCELERATED_SPEED 1000 diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/keymap.c b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/keymap.c index ada92103c3..36dcd4816f 100644 --- a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/keymap.c +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/keymap.c @@ -36,7 +36,8 @@ enum layers { QWERT, FN_1, - FN_2 + FN_2, + FN_MOUSE }; enum custom_user_keycodes { @@ -105,26 +106,33 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [QWERT] = LAYOUT_all( + [QWERT] = LAYOUT_all( KC_ENC, TD(TD_TAB_ESC), KC_Q, KC_W, KC_E, KC_R, KC_T, DE_Z, KC_U, KC_I, KC_O, KC_P, KC_BSPC, - MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, DE_PLUS, KC_ENT, + MO(FN_1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, DE_PLUS, KC_ENT, KC_LSFT, DE_LABK, DE_Y, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, - KC_LCTL, KC_LGUI, KC_LALT, LT(2,KC_SPC), LT(2,KC_SPC), LT(2,KC_SPC), KC_RALT, DE_MINS, KC_RCTL ), + KC_LCTL, KC_LGUI, KC_LALT, LT(FN_2,KC_SPC), LT(FN_2,KC_SPC), LT(FN_2,KC_SPC), KC_RALT, DE_MINS, KC_RCTL ), [FN_1] = LAYOUT_all( KC_MUTE, KC_GESC, _______, _______, _______, DE_LCBR, DE_RCBR, _______, DE_UDIA, KC_UP, DE_ODIA, DE_QUES, KC_DEL, _______, DE_ADIA, DE_SS, _______, DE_LPRN, DE_RPRN, _______, KC_LEFT, KC_DOWN, KC_RIGHT, DE_HASH, _______, - _______, DE_CIRC, DE_ACUT, _______, _______, DE_LBRC, DE_RBRC, KC_HOME, KC_END, DE_QUOT, DE_DQUO, DE_EQL, - _______, _______, _______, _______, _______, _______, DE_BSLS, DE_SLSH, DE_TILD ), + _______, _______, DE_CIRC, DE_ACUT, _______, DE_LBRC, DE_RBRC, KC_HOME, KC_END, DE_QUOT, DE_DQUO, DE_EQL, + _______, _______, _______, MO(FN_MOUSE), MO(FN_MOUSE), MO(FN_MOUSE), DE_BSLS, DE_SLSH, DE_TILD ), [FN_2] = LAYOUT_all( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_BSPC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_COMM, KC_DOT, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______ ) + _______, _______, _______, _______, _______, _______, _______, _______, _______ ), + + [FN_MOUSE] = LAYOUT_all( + _______, + _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_BTN3, _______, + _______, _______, _______, _______, KC_ACL0, _______, KC_WH_U, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; #ifdef ENCODER_ENABLE diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/readme.md b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/readme.md index 33240ffbcd..85b3490608 100644 --- a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/readme.md +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/readme.md @@ -9,16 +9,21 @@ Features - Additional encoder functionality - While holding FN_1, page up and down - While holding FN_2, volume up and down + - Mouse controls by holding Caps-Space - Use my templates for your own layout overview at [Keyboard Layout Editor](http://www.keyboard-layout-editor.com) using my gist [here](https://gist.github.com/FearlessSpiff) + - Shout out to [KMonad](https://github.com/kmonad/kmonad) which enabled my laptop keyboard to behave like my Mercutio! QWERT Layer ![image](https://user-images.githubusercontent.com/1927259/148683284-04932e15-a34d-451e-b657-335780033f36.png) FN_1 Layer -![image](https://user-images.githubusercontent.com/1927259/148683299-f2c80403-3f29-4ba8-9fc4-957729f30b05.png) +![image](https://user-images.githubusercontent.com/1927259/157032746-8aa68e1c-27b9-4cf5-88ed-a071d8238f56.png) FN_2 layer ![image](https://user-images.githubusercontent.com/1927259/148683306-364bc59c-b41b-4092-b93b-d7b4fc58567b.png) +FN_MOUSE layer +![image](https://user-images.githubusercontent.com/1927259/157032817-83922578-8932-42bf-a2d2-f785136b4d4e.png) + diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/rules.mk b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/rules.mk index 16f26944e8..fc0ec28153 100644 --- a/keyboards/mechwild/mercutio/keymaps/fearless_spiff/rules.mk +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff/rules.mk @@ -1,7 +1,7 @@ WPM_ENABLE = yes TAP_DANCE_ENABLE = yes VIA_ENABLE = no -MOUSEKEY_ENABLE = no +MOUSEKEY_ENABLE = yes EXTRAKEY_ENABLE = yes # Audio control and System control KEY_LOCK_ENABLE = no CONSOLE_ENABLE = no From 6928bce46185eafde03dc1e0c3fc6a582ad77999 Mon Sep 17 00:00:00 2001 From: yiancar Date: Tue, 8 Mar 2022 02:28:26 +0000 Subject: [PATCH 035/699] [Keyboard] Add Cassini keyboard (#16522) Co-authored-by: Ryan Co-authored-by: yiancar --- keyboards/protozoa/cassini/cassini.c | 21 +++++ keyboards/protozoa/cassini/cassini.h | 34 ++++++++ keyboards/protozoa/cassini/config.h | 80 +++++++++++++++++++ keyboards/protozoa/cassini/info.json | 10 +++ .../protozoa/cassini/keymaps/default/keymap.c | 32 ++++++++ .../cassini/keymaps/default/readme.md | 5 ++ .../protozoa/cassini/keymaps/via/keymap.c | 46 +++++++++++ .../protozoa/cassini/keymaps/via/readme.md | 5 ++ .../protozoa/cassini/keymaps/via/rules.mk | 1 + keyboards/protozoa/cassini/readme.md | 34 ++++++++ keyboards/protozoa/cassini/rules.mk | 26 ++++++ 11 files changed, 294 insertions(+) create mode 100644 keyboards/protozoa/cassini/cassini.c create mode 100644 keyboards/protozoa/cassini/cassini.h create mode 100644 keyboards/protozoa/cassini/config.h create mode 100644 keyboards/protozoa/cassini/info.json create mode 100644 keyboards/protozoa/cassini/keymaps/default/keymap.c create mode 100644 keyboards/protozoa/cassini/keymaps/default/readme.md create mode 100644 keyboards/protozoa/cassini/keymaps/via/keymap.c create mode 100644 keyboards/protozoa/cassini/keymaps/via/readme.md create mode 100644 keyboards/protozoa/cassini/keymaps/via/rules.mk create mode 100644 keyboards/protozoa/cassini/readme.md create mode 100644 keyboards/protozoa/cassini/rules.mk diff --git a/keyboards/protozoa/cassini/cassini.c b/keyboards/protozoa/cassini/cassini.c new file mode 100644 index 0000000000..80eb279bf3 --- /dev/null +++ b/keyboards/protozoa/cassini/cassini.c @@ -0,0 +1,21 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ + #include "cassini.h" + +void led_init_ports(void) { + // Set our LED pins as open drain outputs + palSetLineMode(LED_CAPS_LOCK_PIN, PAL_MODE_OUTPUT_OPENDRAIN); +} diff --git a/keyboards/protozoa/cassini/cassini.h b/keyboards/protozoa/cassini/cassini.h new file mode 100644 index 0000000000..27e91906e9 --- /dev/null +++ b/keyboards/protozoa/cassini/cassini.h @@ -0,0 +1,34 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#pragma once + +#define XXX KC_NO + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2C, \ + 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, K2D, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D \ +) { \ + { 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, K2D }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D } \ +} diff --git a/keyboards/protozoa/cassini/config.h b/keyboards/protozoa/cassini/config.h new file mode 100644 index 0000000000..cdcef1e0ac --- /dev/null +++ b/keyboards/protozoa/cassini/config.h @@ -0,0 +1,80 @@ +/* +Copyright 2022 Yiancar-Designs + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x8968 +#define PRODUCT_ID 0x4341 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Yiancar-Designs +#define PRODUCT Cassini + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +#define MATRIX_ROW_PINS { A2, B9, B8, B5, B4 } +#define MATRIX_COL_PINS { A1, B1, B0, A7, A6, A5, A4, A3, B2, B10, B11, B12, B13, B14 } + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* Ensure we jump to bootloader if the RESET keycode was pressed */ +#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE + +/* Indicator LEDs */ +#define LED_CAPS_LOCK_PIN B6 +#define LED_PIN_ON_STATE 0 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/protozoa/cassini/info.json b/keyboards/protozoa/cassini/info.json new file mode 100644 index 0000000000..be662952e2 --- /dev/null +++ b/keyboards/protozoa/cassini/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Cassini", + "url": "https://yiancar-designs.com", + "maintainer": "Yiancar-Designs", + "layouts": { + "LAYOUT_all": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":12.5, "y":4, "w":1.25}, {"x":13.75, "y":4, "w":1.25}] + } + } +} diff --git a/keyboards/protozoa/cassini/keymaps/default/keymap.c b/keyboards/protozoa/cassini/keymaps/default/keymap.c new file mode 100644 index 0000000000..b631c1f66a --- /dev/null +++ b/keyboards/protozoa/cassini/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( /* Base */ + KC_GESC, 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_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_BSLS, + 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_NUBS, 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_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)), + + [1] = LAYOUT_all( /* FN */ + KC_GRV, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; diff --git a/keyboards/protozoa/cassini/keymaps/default/readme.md b/keyboards/protozoa/cassini/keymaps/default/readme.md new file mode 100644 index 0000000000..b12cdddebd --- /dev/null +++ b/keyboards/protozoa/cassini/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# The default keymap for Cassini. + +![Layer 0](https://i.imgur.com/ETGhLKR.png) + +![Layer 1](https://i.imgur.com/JgUsHhA.png) diff --git a/keyboards/protozoa/cassini/keymaps/via/keymap.c b/keyboards/protozoa/cassini/keymaps/via/keymap.c new file mode 100644 index 0000000000..ebbc577f8d --- /dev/null +++ b/keyboards/protozoa/cassini/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( /* Base */ + KC_GESC, 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_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_BSLS, + 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_NUBS, 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_SPC, KC_RALT, KC_APP, KC_RCTL, MO(1)), + +[1] = LAYOUT_all( /* FN */ + KC_GRV, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[2] = LAYOUT_all( /* Empty for dynamic keymaps */ + 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, 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), + +[3] = LAYOUT_all( /* Empty for dynamic keymaps */ + 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, 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) +}; diff --git a/keyboards/protozoa/cassini/keymaps/via/readme.md b/keyboards/protozoa/cassini/keymaps/via/readme.md new file mode 100644 index 0000000000..d101a027bb --- /dev/null +++ b/keyboards/protozoa/cassini/keymaps/via/readme.md @@ -0,0 +1,5 @@ +# The default keymap for Cassini. VIA support enabled. + +![Layer 0](https://i.imgur.com/ETGhLKR.png) + +![Layer 1](https://i.imgur.com/JgUsHhA.png) \ No newline at end of file diff --git a/keyboards/protozoa/cassini/keymaps/via/rules.mk b/keyboards/protozoa/cassini/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/protozoa/cassini/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/protozoa/cassini/readme.md b/keyboards/protozoa/cassini/readme.md new file mode 100644 index 0000000000..7e719a93d2 --- /dev/null +++ b/keyboards/protozoa/cassini/readme.md @@ -0,0 +1,34 @@ +# Cassini + +This is a standard 60% layout PCB. It supports VIA. + +* Keyboard Maintainer: [Yiancar](http://yiancar-designs.com/) and on [GitHub](https://github.com/yiancar) +* Hardware Supported: A 60% keyboard with STM32F072CB +* Hardware Availability: https://protozoa.studio + +![Cassini](https://i.imgur.com/4vYgmRjh.png) + +## Instructions + +### Build + +Make example for this keyboard (after setting up your build environment): + + make protozoa/cassini:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +### Reset + +- Unplug +- Hold Escape +- Plug In +- Unplug +- Release Escape + +### Flash + +- Unplug +- Hold Escape +- Plug In +- Flash using QMK Toolbox or CLI (`make protozoa/cassini::flash`) diff --git a/keyboards/protozoa/cassini/rules.mk b/keyboards/protozoa/cassini/rules.mk new file mode 100644 index 0000000000..169c45b479 --- /dev/null +++ b/keyboards/protozoa/cassini/rules.mk @@ -0,0 +1,26 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -v FFFF -p FFFF + +# Do not put the microcontroller into power saving mode +# when we get USB suspend event. We want it to keep updating +# backlight effects. +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 8bcac1c8f73ba79a083d69cffaa54a133820de9b Mon Sep 17 00:00:00 2001 From: Steven Karrmann Date: Mon, 7 Mar 2022 21:39:58 -0500 Subject: [PATCH 036/699] [Keyboard] Add Morizon (#16549) Co-authored-by: Drashna Jaelre --- keyboards/morizon/config.h | 46 +++++++++++++ keyboards/morizon/info.json | 77 ++++++++++++++++++++++ keyboards/morizon/keymaps/default/keymap.c | 50 ++++++++++++++ keyboards/morizon/morizon.c | 17 +++++ keyboards/morizon/morizon.h | 48 ++++++++++++++ keyboards/morizon/readme.md | 27 ++++++++ keyboards/morizon/rules.mk | 18 +++++ 7 files changed, 283 insertions(+) create mode 100644 keyboards/morizon/config.h create mode 100644 keyboards/morizon/info.json create mode 100644 keyboards/morizon/keymaps/default/keymap.c create mode 100644 keyboards/morizon/morizon.c create mode 100644 keyboards/morizon/morizon.h create mode 100644 keyboards/morizon/readme.md create mode 100644 keyboards/morizon/rules.mk diff --git a/keyboards/morizon/config.h b/keyboards/morizon/config.h new file mode 100644 index 0000000000..bf9e1b9a35 --- /dev/null +++ b/keyboards/morizon/config.h @@ -0,0 +1,46 @@ +/* +Copyright 2022 Steven Karrmann + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Steven Karrmann +#define PRODUCT Morizon + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 7 + +#define MATRIX_ROW_PINS { D3, D2, D1, D0, D4, C6, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6 } +#define UNUSED_PINS { F4 } + +#define DIODE_DIRECTION COL2ROW + +/* 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/morizon/info.json b/keyboards/morizon/info.json new file mode 100644 index 0000000000..5e22001c79 --- /dev/null +++ b/keyboards/morizon/info.json @@ -0,0 +1,77 @@ +{ + "keyboard_name": "Morizon", + "url": "https://github.com/skarrmann/morizon", + "maintainer": "Steven Karrmann", + "layouts": { + "LAYOUT": { + "layout": [ + { "x": 0, "y": 0 }, + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 5, "y": 0 }, + { "x": 8, "y": 0 }, + { "x": 9, "y": 0 }, + { "x": 10, "y": 0 }, + { "x": 11, "y": 0 }, + { "x": 12, "y": 0 }, + { "x": 13, "y": 0 }, + { "x": 0, "y": 1 }, + { "x": 1, "y": 1 }, + { "x": 2, "y": 1 }, + { "x": 3, "y": 1 }, + { "x": 4, "y": 1 }, + { "x": 5, "y": 1 }, + { "x": 8, "y": 1 }, + { "x": 9, "y": 1 }, + { "x": 10, "y": 1 }, + { "x": 11, "y": 1 }, + { "x": 12, "y": 1 }, + { "x": 13, "y": 1 }, + { "x": 0, "y": 2 }, + { "x": 1, "y": 2 }, + { "x": 2, "y": 2 }, + { "x": 3, "y": 2 }, + { "x": 4, "y": 2 }, + { "x": 5, "y": 2 }, + { "x": 6, "y": 2 }, + { "x": 7, "y": 2 }, + { "x": 8, "y": 2 }, + { "x": 9, "y": 2 }, + { "x": 10, "y": 2 }, + { "x": 11, "y": 2 }, + { "x": 12, "y": 2 }, + { "x": 13, "y": 2 }, + { "x": 0, "y": 3 }, + { "x": 1, "y": 3 }, + { "x": 2, "y": 3 }, + { "x": 3, "y": 3 }, + { "x": 4, "y": 3 }, + { "x": 5, "y": 3 }, + { "x": 6, "y": 3 }, + { "x": 7, "y": 3 }, + { "x": 8, "y": 3 }, + { "x": 9, "y": 3 }, + { "x": 10, "y": 3 }, + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 }, + { "x": 13, "y": 3 }, + { "x": 0, "y": 4 }, + { "x": 1, "y": 4 }, + { "x": 2, "y": 4 }, + { "x": 3, "y": 4 }, + { "x": 4, "y": 4 }, + { "x": 5, "y": 4 }, + { "x": 6, "y": 4 }, + { "x": 7, "y": 4 }, + { "x": 8, "y": 4 }, + { "x": 9, "y": 4 }, + { "x": 10, "y": 4 }, + { "x": 11, "y": 4 }, + { "x": 12, "y": 4 }, + { "x": 13, "y": 4 } + ] + } + } +} diff --git a/keyboards/morizon/keymaps/default/keymap.c b/keyboards/morizon/keymaps/default/keymap.c new file mode 100644 index 0000000000..9b7ce4b291 --- /dev/null +++ b/keyboards/morizon/keymaps/default/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 Steven Karrmann + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _SYMBOL, + _FUNCTION +}; + +#define MO_SYMB MO(_SYMBOL) +#define MO_FUNC MO(_FUNCTION) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_CLCK, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_BSLS, + KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_MINS, + KC_EQL , KC_A , KC_S , KC_D , KC_F , KC_G , KC_LBRC, KC_RBRC, KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , KC_ENT , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_LGUI, KC_APP , KC_DEL , KC_TAB , MO_SYMB, MO_FUNC, KC_SPC , KC_BSPC, KC_APP , KC_RGUI, KC_RALT, KC_RCTL + ), + [_SYMBOL] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_TILD, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_UNDS, + KC_PLUS, KC_EXLM, KC_LPRN, KC_RPRN, KC_DLR , KC_AMPR, _______, _______, KC_PIPE, KC_HASH, KC_LCBR, KC_RCBR, KC_COLN, KC_DQUO, + _______, KC_AT , KC_LBRC, KC_RBRC, KC_BSLS, KC_PERC, _______, _______, KC_CIRC, KC_ASTR, KC_LABK, KC_RABK, KC_QUES, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTION] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_PSCR, KC_SLCK, KC_HOME, KC_PGDN, KC_PGUP, KC_END , _______, + _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_INS , _______, _______, KC_CLCK, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, _______, + _______, KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_PAUS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; \ No newline at end of file diff --git a/keyboards/morizon/morizon.c b/keyboards/morizon/morizon.c new file mode 100644 index 0000000000..1196375cd0 --- /dev/null +++ b/keyboards/morizon/morizon.c @@ -0,0 +1,17 @@ +/* Copyright 2022 Steven Karrmann + * + * 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 . + */ + +#include "morizon.h" diff --git a/keyboards/morizon/morizon.h b/keyboards/morizon/morizon.h new file mode 100644 index 0000000000..a6c84ee502 --- /dev/null +++ b/keyboards/morizon/morizon.h @@ -0,0 +1,48 @@ +/* Copyright 2022 Steven Karrmann + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, \ + k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4a, k4b, k4c, k4d \ +) \ +{ \ + { k00 , k01, k02, k03, k04, k05, KC_NO }, \ + { k10 , k11, k12, k13, k14, k15, KC_NO }, \ + { k20 , k21, k22, k23, k24, k25, k26 }, \ + { k30 , k31, k32, k33, k34, k35, k36 }, \ + { k40 , k41, k42, k43, k44, k45, k46 }, \ + { KC_NO, k06, k07, k08, k09, k0a, k0b }, \ + { KC_NO, k16, k17, k18, k19, k1a, k1b }, \ + { k27 , k28, k29, k2a, k2b, k2c, k2d }, \ + { k37 , k38, k39, k3a, k3b, k3c, k3d }, \ + { k47 , k48, k49, k4a, k4b, k4c, k4d } \ +} diff --git a/keyboards/morizon/readme.md b/keyboards/morizon/readme.md new file mode 100644 index 0000000000..5c95e9788c --- /dev/null +++ b/keyboards/morizon/readme.md @@ -0,0 +1,27 @@ +# Morizon + +![Morizon](https://i.imgur.com/2EEP412h.jpg) + +A simple 66-key (5x14) ortholinear keyboard, powered by an Arduino Pro Micro. The design is based on the [Horizon keyboard](https://github.com/skarrmann/horizon). + +* Keyboard Maintainer: [Steven Karrmann](https://github.com/skarrmann) +* Hardware Supported: Morizon PCBs, Arduino Pro Micro +* Hardware Availability: [Morizon GitHub repository](https://github.com/skarrmann/morizon) + +Make example for this keyboard (after setting up your build environment): + + make morizon:default + +Flashing example for this keyboard: + + make morizon:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the top left key and plug in the keyboard. +* **Physical reset button**: Briefly press the button on the top center of the PCB. +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. diff --git a/keyboards/morizon/rules.mk b/keyboards/morizon/rules.mk new file mode 100644 index 0000000000..9cfcaf1bbc --- /dev/null +++ b/keyboards/morizon/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +COMMAND_ENABLE = no # Commands for debug and configuration +CONSOLE_ENABLE = yes # Console for debug +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From f0d27e22aa8994fd1650680b313b9ae8d03dcb5a Mon Sep 17 00:00:00 2001 From: Umberto Baldi <34278123+umbynos@users.noreply.github.com> Date: Tue, 8 Mar 2022 03:44:49 +0100 Subject: [PATCH 037/699] [Keyboard] Change vendor ID for sick68 keyboard (#16563) --- keyboards/handwired/sick68/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/handwired/sick68/config.h b/keyboards/handwired/sick68/config.h index 65583af18d..2205126cc3 100644 --- a/keyboards/handwired/sick68/config.h +++ b/keyboards/handwired/sick68/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x5E68 #define PRODUCT_ID 0x5F00 #define DEVICE_VER 0x0001 #define MANUFACTURER umbynos From c84d361e9575e91cca8d0faaa6af1b787c467b40 Mon Sep 17 00:00:00 2001 From: Salicylic-acid3 <46864619+Salicylic-acid3@users.noreply.github.com> Date: Tue, 8 Mar 2022 11:45:28 +0900 Subject: [PATCH 038/699] [Keyboard] Change maximum LED brightness for naked48 (#16564) --- .../naked48/keymaps/via_rgb_matrix/config.h | 30 +++++++++++-------- .../salicylic_acid3/naked48/rev1/config.h | 22 +------------- 2 files changed, 18 insertions(+), 34 deletions(-) diff --git a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h index 0920b2bc35..7deffe33ff 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h +++ b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h @@ -28,17 +28,21 @@ #define DRIVER_LED_TOTAL 48 #ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses -// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) -// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended -// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) -// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) -// # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 -# define RGB_MATRIX_HUE_STEP 8 -# define RGB_MATRIX_SAT_STEP 8 -# define RGB_MATRIX_LIMIT_VAL 50 -# define RGB_MATRIX_VAL_STEP 5 -# define RGB_MATRIX_SPD_STEP 10 + #define RGB_MATRIX_KEYPRESSES // reacts to keypresses +// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) +// #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // enable framebuffer effects +// #define RGB_DISABLE_TIMEOUT 0 // number of milliseconds to wait until rgb automatically turns off +// #define RGB_DISABLE_AFTER_TIMEOUT 0 // OBSOLETE: number of ticks to wait until disabling effects + #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended + #define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) + #define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 +// #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Sets the default mode, if none has been set + #define RGB_MATRIX_STARTUP_HUE 0 // Sets the default hue value, if none has been set + #define RGB_MATRIX_STARTUP_SAT 255 // Sets the default saturation value, if none has been set + #define RGB_MATRIX_STARTUP_VAL 50 // Sets the default brightness value, if none has been set + #define RGB_MATRIX_STARTUP_SPD 127 // Sets the default animation speed, if none has been set +// #define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature) +// #define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right. + // If RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR #endif - diff --git a/keyboards/salicylic_acid3/naked48/rev1/config.h b/keyboards/salicylic_acid3/naked48/rev1/config.h index b79384a48a..faeb719019 100644 --- a/keyboards/salicylic_acid3/naked48/rev1/config.h +++ b/keyboards/salicylic_acid3/naked48/rev1/config.h @@ -56,27 +56,7 @@ along with this program. If not, see . #endif #define RGBLIGHT_ANIMATIONS +#define RGBLIGHT_DEFAULT_VAL 50 -#ifndef IOS_DEVICE_ENABLE - #define RGBLIGHT_LIMIT_VAL 180 - #define RGBLIGHT_VAL_STEP 17 -#else - #define RGBLIGHT_LIMIT_VAL 50 - #define RGBLIGHT_VAL_STEP 4 -#endif #define RGBLIGHT_HUE_STEP 10 #define RGBLIGHT_SAT_STEP 17 - -#if defined(RGBLIGHT_ENABLE) && !defined(IOS_DEVICE_ENABLE) -// USB_MAX_POWER_CONSUMPTION value for naked48 keyboard -// 120 RGBoff, OLEDoff -// 120 OLED -// 330 RGB 6 -// 300 RGB 32 -// 310 OLED & RGB 32 - #define USB_MAX_POWER_CONSUMPTION 400 -#else - // fix iPhone and iPad power adapter issue - // iOS device need lessthan 100 - #define USB_MAX_POWER_CONSUMPTION 100 -#endif From 8e888794fa57ba845cf3080d1971d96bccc58521 Mon Sep 17 00:00:00 2001 From: Nabos <9805355+nab-os@users.noreply.github.com> Date: Tue, 8 Mar 2022 03:46:54 +0100 Subject: [PATCH 039/699] [Keymap] Add nabos keymap to dactyl_manuform (5x6) (#16547) Co-authored-by: Nicolas Ballet --- .../5x6/keymaps/nabos/config.h | 21 ++++++ .../5x6/keymaps/nabos/keymap.c | 75 +++++++++++++++++++ 2 files changed, 96 insertions(+) create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/config.h create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/keymap.c diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/config.h new file mode 100644 index 0000000000..2ab0c912a3 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/config.h @@ -0,0 +1,21 @@ +/* +Copyright 2022 Nabos + +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 . +*/ + +#pragma once + +#define EE_HANDS + diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/keymap.c new file mode 100644 index 0000000000..4a83a5e73a --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/nabos/keymap.c @@ -0,0 +1,75 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _FUNCTIONS, + _NUMPAD, + _GAMING +}; + +#define FUNCTIONS MO(_FUNCTIONS) +#define NUMPAD MO(_NUMPAD) +#define GAMING TG(_GAMING) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_5x6( + KC_GESC, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 ,KC_RBRC, + 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_PGUP, KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L ,KC_SCLN,KC_QUOT, + KC_PGDN, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M ,KC_COMM,KC_DOT,KC_SLSH,_______, + KC_LEFT,KC_RIGHT, KC_DOWN,KC_UP , + KC_LSFT,KC_SPC , KC_ENT ,KC_BSPC, + KC_LGUI,KC_LALT, FUNCTIONS,KC_RALT, + KC_DEL ,GAMING , NUMPAD ,KC_RCTL + ), + + [_FUNCTIONS] = LAYOUT_5x6( + KC_F12 , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 ,KC_F10 ,KC_F11 , + _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______ + ), + + [_NUMPAD] = LAYOUT_5x6( + _______,_______,_______,_______,_______,_______, _______,KC_NLCK,_______,_______,KC_MINS,KC_EQL , + _______,_______,_______,_______,_______,_______, _______,KC_KP_7,KC_KP_8,KC_KP_9,_______,_______, + _______,_______,_______,_______,_______,_______, _______,KC_KP_4,KC_KP_5,KC_KP_6,_______,_______, + _______,_______,_______,_______,_______,_______, _______,KC_KP_1,KC_KP_2,KC_KP_3,_______,KC_PSCR, + _______,_______, KC_KP_0,KC_PDOT, + _______,_______, KC_PENT,_______, + _______,_______, _______,_______, + _______,_______, _______,_______ + ), + + [_GAMING] = LAYOUT_5x6( + _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, + KC_T ,KC_TAB , KC_Q , KC_W , KC_E , KC_R , _______,_______,_______,_______,_______,_______, + KC_G ,KC_LSFT, KC_A , KC_S , KC_D , KC_F , _______,_______,_______,_______,_______,_______, + KC_B ,KC_LCTL, KC_Z , KC_X , KC_C , KC_V , _______,_______,_______,_______,_______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______, + _______,_______, _______,_______ + ) +}; + From 8014fb14b6c37636d459f64ebdf9fb4bedd1f7f3 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 8 Mar 2022 10:50:03 +0800 Subject: [PATCH 040/699] Fix in-page links in reference_info_json.md (#16487) --- docs/reference_info_json.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/docs/reference_info_json.md b/docs/reference_info_json.md index 3cc807c179..51576ac83e 100644 --- a/docs/reference_info_json.md +++ b/docs/reference_info_json.md @@ -28,11 +28,11 @@ The `info.json` file is a JSON formatted dictionary with the following keys avai * `layout_aliases` * A dictionary containing layout aliases. The key is the alias and the value is a layout in `layouts` it maps to. * `layouts` - * Physical Layout representations. See the [Layout Format](#layout_format) section for more detail. + * Physical Layout representations. See the [Layout Format](#layout-format) section for more detail. * `matrix_pins` - * Configure the pins corresponding to columns and rows, or direct pins. See the [Matrix Pins](#matrix_pins) section for more detail. + * Configure the pins corresponding to columns and rows, or direct pins. See the [Matrix Pins](#matrix-pins) section for more detail. * `rgblight` - * Configure the [RGB Lighting feature](feature_rgblight.md). See the [RGB Lighting](#rgb_lighting) section for more detail. + * Configure the [RGB Lighting feature](feature_rgblight.md). See the [RGB Lighting](#rgb-lighting) section for more detail. * `usb` * Configure USB VID, PID, and other parameters. See the [USB](#USB) section for more detail. From 869ede8e4afb22a00ecbace4af02a3a18ea9e32d Mon Sep 17 00:00:00 2001 From: Matthew Dias Date: Mon, 7 Mar 2022 21:00:35 -0600 Subject: [PATCH 041/699] [Keyboard] Add parallel 65 (#16445) Co-authored-by: Ryan --- .../parallel/parallel_65/hotswap/config.h | 109 +++++ .../parallel/parallel_65/hotswap/hotswap.c | 17 + .../parallel/parallel_65/hotswap/hotswap.h | 63 +++ .../parallel/parallel_65/hotswap/info.json | 155 ++++++ .../hotswap/keymaps/default/keymap.c | 38 ++ .../hotswap/keymaps/default/readme.md | 1 + .../parallel_65/hotswap/keymaps/via/keymap.c | 54 ++ .../parallel_65/hotswap/keymaps/via/rules.mk | 1 + .../parallel/parallel_65/hotswap/readme.md | 18 + .../parallel/parallel_65/hotswap/rules.mk | 20 + .../parallel/parallel_65/soldered/config.h | 109 +++++ .../parallel/parallel_65/soldered/info.json | 461 ++++++++++++++++++ .../soldered/keymaps/default/keymap.c | 38 ++ .../soldered/keymaps/default/readme.md | 1 + .../parallel_65/soldered/keymaps/via/keymap.c | 54 ++ .../parallel_65/soldered/keymaps/via/rules.mk | 1 + .../parallel/parallel_65/soldered/readme.md | 18 + .../parallel/parallel_65/soldered/rules.mk | 20 + .../parallel/parallel_65/soldered/soldered.c | 17 + .../parallel/parallel_65/soldered/soldered.h | 122 +++++ 20 files changed, 1317 insertions(+) create mode 100644 keyboards/parallel/parallel_65/hotswap/config.h create mode 100644 keyboards/parallel/parallel_65/hotswap/hotswap.c create mode 100644 keyboards/parallel/parallel_65/hotswap/hotswap.h create mode 100644 keyboards/parallel/parallel_65/hotswap/info.json create mode 100644 keyboards/parallel/parallel_65/hotswap/keymaps/default/keymap.c create mode 100644 keyboards/parallel/parallel_65/hotswap/keymaps/default/readme.md create mode 100644 keyboards/parallel/parallel_65/hotswap/keymaps/via/keymap.c create mode 100644 keyboards/parallel/parallel_65/hotswap/keymaps/via/rules.mk create mode 100644 keyboards/parallel/parallel_65/hotswap/readme.md create mode 100644 keyboards/parallel/parallel_65/hotswap/rules.mk create mode 100644 keyboards/parallel/parallel_65/soldered/config.h create mode 100644 keyboards/parallel/parallel_65/soldered/info.json create mode 100644 keyboards/parallel/parallel_65/soldered/keymaps/default/keymap.c create mode 100644 keyboards/parallel/parallel_65/soldered/keymaps/default/readme.md create mode 100644 keyboards/parallel/parallel_65/soldered/keymaps/via/keymap.c create mode 100644 keyboards/parallel/parallel_65/soldered/keymaps/via/rules.mk create mode 100644 keyboards/parallel/parallel_65/soldered/readme.md create mode 100644 keyboards/parallel/parallel_65/soldered/rules.mk create mode 100644 keyboards/parallel/parallel_65/soldered/soldered.c create mode 100644 keyboards/parallel/parallel_65/soldered/soldered.h diff --git a/keyboards/parallel/parallel_65/hotswap/config.h b/keyboards/parallel/parallel_65/hotswap/config.h new file mode 100644 index 0000000000..26734936ed --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/config.h @@ -0,0 +1,109 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x504C +#define PRODUCT_ID 0x5069 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Parallel Limited +#define PRODUCT Parallel 65% Hotswap PCB + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { E6, B7, F7, F4, F5 } +#define MATRIX_COL_PINS { F6, B0, F1, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, D1, D0 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/parallel/parallel_65/hotswap/hotswap.c b/keyboards/parallel/parallel_65/hotswap/hotswap.c new file mode 100644 index 0000000000..4189a8a80c --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/hotswap.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ + +#include "hotswap.h" diff --git a/keyboards/parallel/parallel_65/hotswap/hotswap.h b/keyboards/parallel/parallel_65/hotswap/hotswap.h new file mode 100644 index 0000000000..3da75e2ce3 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/hotswap.h @@ -0,0 +1,63 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │0F │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2F │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │4B │ │4C │4D │4F │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k49, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, XXX, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, XXX, k2D, XXX, k2F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, k49, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, XXX, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, XXX, k2D, XXX, k2F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, k4C, k4D, XXX, k4F } \ +} diff --git a/keyboards/parallel/parallel_65/hotswap/info.json b/keyboards/parallel/parallel_65/hotswap/info.json new file mode 100644 index 0000000000..28b1dda23e --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/info.json @@ -0,0 +1,155 @@ +{ + "keyboard_name": "Parallel 65% Hotswap PCB", + "maintainer": "matthewdias", + "layouts": { + "LAYOUT_65_ansi_blocker": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0, "w": 2 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_ansi_blocker_tsangan": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0, "w":2 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.5 }, + { "x":1.5, "y":4, "w":1 }, + { "x":2.5, "y":4, "w":1.5 }, + { "x":4, "y":4, "w":7 }, + { "x":11, "y":4, "w":1.5 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + } + } +} diff --git a/keyboards/parallel/parallel_65/hotswap/keymaps/default/keymap.c b/keyboards/parallel/parallel_65/hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..8b24dd2ec3 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_65_ansi_blocker( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN] = LAYOUT_65_ansi_blocker( + KC_GRV, 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_PSCR, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_LGUI, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/parallel/parallel_65/hotswap/keymaps/default/readme.md b/keyboards/parallel/parallel_65/hotswap/keymaps/default/readme.md new file mode 100644 index 0000000000..64ddedeed4 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Parallel 65% Hotswap PCB diff --git a/keyboards/parallel/parallel_65/hotswap/keymaps/via/keymap.c b/keyboards/parallel/parallel_65/hotswap/keymaps/via/keymap.c new file mode 100644 index 0000000000..0e4c1b61c4 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _L0, + _L1, + _L2, + _L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_L0] = LAYOUT_65_ansi_blocker( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(_L1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_L1] = LAYOUT_65_ansi_blocker( + KC_GRV, 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_PSCR, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_LGUI, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_L2] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_L3] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/parallel/parallel_65/hotswap/keymaps/via/rules.mk b/keyboards/parallel/parallel_65/hotswap/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/parallel/parallel_65/hotswap/readme.md b/keyboards/parallel/parallel_65/hotswap/readme.md new file mode 100644 index 0000000000..41c2f71179 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/readme.md @@ -0,0 +1,18 @@ +# Parallel 65% Hotswap PCB + +A 65% keyboard + +- Keyboard Maintainer: matthewdias +- Hardware Supported: Parallel 65% Hotswap PCB + +To reset the keyboard into bootloader mode, press the reset switch on the underside. + +Make example for this keyboard (after setting up your build environment): + + make parallel/parallel_65/hotswap:default + +Flashing example for this keyboard: + + make parallel/parallel_65/hotswap:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/parallel/parallel_65/hotswap/rules.mk b/keyboards/parallel/parallel_65/hotswap/rules.mk new file mode 100644 index 0000000000..59fa2e87f8 --- /dev/null +++ b/keyboards/parallel/parallel_65/hotswap/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker diff --git a/keyboards/parallel/parallel_65/soldered/config.h b/keyboards/parallel/parallel_65/soldered/config.h new file mode 100644 index 0000000000..a5eace0be2 --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/config.h @@ -0,0 +1,109 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x504C +#define PRODUCT_ID 0x5068 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Parallel Limited +#define PRODUCT Parallel 65% PCB + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { E6, B7, F7, F4, F5 } +#define MATRIX_COL_PINS { F6, B0, F1, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, D1, D0 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/parallel/parallel_65/soldered/info.json b/keyboards/parallel/parallel_65/soldered/info.json new file mode 100644 index 0000000000..4b0ae27b00 --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/info.json @@ -0,0 +1,461 @@ +{ + "keyboard_name": "Parallel 65% PCB", + "maintainer": "matthewdias", + "layouts": { + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0, "w": 2 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_ansi_blocker_tsangan_split_bs": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.5 }, + { "x":1.5, "y":4, "w":1 }, + { "x":2.5, "y":4, "w":1.5 }, + { "x":4, "y":4, "w":7 }, + { "x":11, "y":4, "w":1.5 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2 }, + { "x":13.75, "y":1, "w":1.25, "h":2 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":1.25 }, + { "x":1.25, "y":3 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0, "w": 2 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2 }, + { "x":13.75, "y":1, "w":1.25, "h":2 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":1.25 }, + { "x":1.25, "y":3 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + }, + "LAYOUT_65_iso_blocker_tsangan_split_bs": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + { "x":15, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":15, "y":1 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2 }, + { "x":13.75, "y":1, "w":1.25, "h":2 }, + { "x":15, "y":2 }, + + { "x":0, "y":3, "w":1.25 }, + { "x":1.25, "y":3 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + { "x":15, "y":3 }, + + { "x":0, "y":4, "w":1.5 }, + { "x":1.5, "y":4, "w":1 }, + { "x":2.5, "y":4, "w":1.5 }, + { "x":4, "y":4, "w":7 }, + { "x":11, "y":4, "w":1.5 }, + { "x":13, "y":4 }, + { "x":14, "y":4 }, + { "x":15, "y":4 } + ] + } + } +} diff --git a/keyboards/parallel/parallel_65/soldered/keymaps/default/keymap.c b/keyboards/parallel/parallel_65/soldered/keymaps/default/keymap.c new file mode 100644 index 0000000000..837e3e5e9a --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_65_ansi_blocker_split_bs( + 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_GRV, KC_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN] = LAYOUT_65_ansi_blocker_split_bs( + KC_GRV, 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_PSCR, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_LGUI, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/parallel/parallel_65/soldered/keymaps/default/readme.md b/keyboards/parallel/parallel_65/soldered/keymaps/default/readme.md new file mode 100644 index 0000000000..149c5a0bf1 --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Parallel 65% PCB diff --git a/keyboards/parallel/parallel_65/soldered/keymaps/via/keymap.c b/keyboards/parallel/parallel_65/soldered/keymaps/via/keymap.c new file mode 100644 index 0000000000..cf8b4cddaf --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _L0, + _L1, + _L2, + _L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_L0] = LAYOUT_65_ansi_blocker_split_bs( + 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_GRV, KC_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(_L1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_L1] = LAYOUT_65_ansi_blocker_split_bs( + KC_GRV, 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_PSCR, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, + KC_TRNS, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, KC_LGUI, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_L2] = LAYOUT_65_ansi_blocker_split_bs( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_L3] = LAYOUT_65_ansi_blocker_split_bs( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/parallel/parallel_65/soldered/keymaps/via/rules.mk b/keyboards/parallel/parallel_65/soldered/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/parallel/parallel_65/soldered/readme.md b/keyboards/parallel/parallel_65/soldered/readme.md new file mode 100644 index 0000000000..e9099321cb --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/readme.md @@ -0,0 +1,18 @@ +# Parallel 65% PCB + +A 65% keyboard + +- Keyboard Maintainer: matthewdias +- Hardware Supported: Parallel 65% PCB + +To reset the keyboard into bootloader mode, press the reset switch on the underside. + +Make example for this keyboard (after setting up your build environment): + + make parallel/parallel_65/soldered:default + +Flashing example for this keyboard: + + make parallel/parallel_65/soldered:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/parallel/parallel_65/soldered/rules.mk b/keyboards/parallel/parallel_65/soldered/rules.mk new file mode 100644 index 0000000000..8a86833620 --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_iso_blocker 65_iso_blocker_split_bs diff --git a/keyboards/parallel/parallel_65/soldered/soldered.c b/keyboards/parallel/parallel_65/soldered/soldered.c new file mode 100644 index 0000000000..a74cd21dea --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/soldered.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ + +#include "soldered.h" diff --git a/keyboards/parallel/parallel_65/soldered/soldered.h b/keyboards/parallel/parallel_65/soldered/soldered.h new file mode 100644 index 0000000000..b2ae9cbaac --- /dev/null +++ b/keyboards/parallel/parallel_65/soldered/soldered.h @@ -0,0 +1,122 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ │0E │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2F │ │2C │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │4B │ │4C │4D │4F │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │40 │41 │42 │46 │4B │ Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ + */ + +#define LAYOUT_65_ansi_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k49, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, XXX, k2D, XXX, k2F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, k49, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_ansi_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k49, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, XXX, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, XXX, k2D, XXX, k2F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, k49, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k2F, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, XXX, k2D, XXX, k2F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k49, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, XXX, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, XXX, k2F }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, k49, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_iso_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k49, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, XXX, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, XXX, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, XXX, k2F }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, k49, XXX, k4B, k4C, k4D, XXX, k4F } \ +} + +#define LAYOUT_65_iso_blocker_tsangan_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1F, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3F, \ + k40, k41, k42, k46, k4B, k4C, k4D, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, XXX, XXX, k1F }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, XXX, k2F }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, XXX, k3F }, \ + { k40, k41, k42, XXX, XXX, XXX, k46, XXX, XXX, XXX, XXX, k4B, k4C, k4D, XXX, k4F } \ +} From b2fdb072e590ea06237dc5407ae1902fc15ce405 Mon Sep 17 00:00:00 2001 From: Uthol <83434905+Uthol@users.noreply.github.com> Date: Mon, 7 Mar 2022 20:01:47 -0700 Subject: [PATCH 042/699] [Keyboard] Uthol (#16393) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/handwired/uthol/config.h | 30 + keyboards/handwired/uthol/info.json | 248 ++++++ .../handwired/uthol/keymaps/default/keymap.c | 34 + .../handwired/uthol/keymaps/numswap/keymap.c | 34 + .../handwired/uthol/keymaps/oled/helix.c | 18 + .../handwired/uthol/keymaps/oled/helix.h | 421 +++++++++ .../handwired/uthol/keymaps/oled/keymap.c | 97 ++ .../handwired/uthol/keymaps/oled/ricardo.c | 840 ++++++++++++++++++ .../handwired/uthol/keymaps/oled/rules.mk | 3 + .../handwired/uthol/keymaps/oled/smiley.c | 98 ++ keyboards/handwired/uthol/keymaps/oled/star.c | 206 +++++ keyboards/handwired/uthol/readme.md | 27 + keyboards/handwired/uthol/rev1/config.h | 29 + keyboards/handwired/uthol/rev1/readme.md | 4 + keyboards/handwired/uthol/rev1/rules.mk | 13 + keyboards/handwired/uthol/rev2/config.h | 35 + keyboards/handwired/uthol/rev2/readme.md | 4 + keyboards/handwired/uthol/rev2/rules.mk | 15 + keyboards/handwired/uthol/rev3/chconf.h | 34 + keyboards/handwired/uthol/rev3/config.h | 69 ++ keyboards/handwired/uthol/rev3/halconf.h | 24 + keyboards/handwired/uthol/rev3/mcuconf.h | 25 + keyboards/handwired/uthol/rev3/readme.md | 4 + keyboards/handwired/uthol/rev3/rev3.c | 20 + keyboards/handwired/uthol/rev3/rules.mk | 19 + keyboards/handwired/uthol/uthol.c | 18 + keyboards/handwired/uthol/uthol.h | 45 + 27 files changed, 2414 insertions(+) create mode 100644 keyboards/handwired/uthol/config.h create mode 100644 keyboards/handwired/uthol/info.json create mode 100644 keyboards/handwired/uthol/keymaps/default/keymap.c create mode 100644 keyboards/handwired/uthol/keymaps/numswap/keymap.c create mode 100644 keyboards/handwired/uthol/keymaps/oled/helix.c create mode 100644 keyboards/handwired/uthol/keymaps/oled/helix.h create mode 100644 keyboards/handwired/uthol/keymaps/oled/keymap.c create mode 100644 keyboards/handwired/uthol/keymaps/oled/ricardo.c create mode 100644 keyboards/handwired/uthol/keymaps/oled/rules.mk create mode 100644 keyboards/handwired/uthol/keymaps/oled/smiley.c create mode 100644 keyboards/handwired/uthol/keymaps/oled/star.c create mode 100644 keyboards/handwired/uthol/readme.md create mode 100644 keyboards/handwired/uthol/rev1/config.h create mode 100644 keyboards/handwired/uthol/rev1/readme.md create mode 100644 keyboards/handwired/uthol/rev1/rules.mk create mode 100644 keyboards/handwired/uthol/rev2/config.h create mode 100644 keyboards/handwired/uthol/rev2/readme.md create mode 100644 keyboards/handwired/uthol/rev2/rules.mk create mode 100644 keyboards/handwired/uthol/rev3/chconf.h create mode 100644 keyboards/handwired/uthol/rev3/config.h create mode 100644 keyboards/handwired/uthol/rev3/halconf.h create mode 100644 keyboards/handwired/uthol/rev3/mcuconf.h create mode 100644 keyboards/handwired/uthol/rev3/readme.md create mode 100644 keyboards/handwired/uthol/rev3/rev3.c create mode 100644 keyboards/handwired/uthol/rev3/rules.mk create mode 100644 keyboards/handwired/uthol/uthol.c create mode 100644 keyboards/handwired/uthol/uthol.h diff --git a/keyboards/handwired/uthol/config.h b/keyboards/handwired/uthol/config.h new file mode 100644 index 0000000000..1e0b533386 --- /dev/null +++ b/keyboards/handwired/uthol/config.h @@ -0,0 +1,30 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define MANUFACTURER Uthol + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 12 + +#define DIODE_DIRECTION COL2ROW diff --git a/keyboards/handwired/uthol/info.json b/keyboards/handwired/uthol/info.json new file mode 100644 index 0000000000..40f99dbade --- /dev/null +++ b/keyboards/handwired/uthol/info.json @@ -0,0 +1,248 @@ +{ + "keyboard_name": "Uthol", + "url": "", + "maintainer": "uthol", + "layouts": { + "LAYOUT_uthol": { + "layout": [ + { + "x": 0, + "y": 0 + }, + { + "x": 1, + "y": 0 + }, + { + "x": 2, + "y": 0 + }, + { + "x": 3, + "y": 0 + }, + { + "x": 4, + "y": 0 + }, + { + "x": 5, + "y": 0 + }, + { + "x": 6, + "y": 0 + }, + { + "x": 7, + "y": 0 + }, + { + "x": 8, + "y": 0 + }, + { + "x": 9, + "y": 0 + }, + { + "x": 10, + "y": 0 + }, + { + "x": 11, + "y": 0 + }, + { + "x": 0, + "y": 1 + }, + { + "x": 1, + "y": 1 + }, + { + "x": 2, + "y": 1 + }, + { + "x": 3, + "y": 1 + }, + { + "x": 4, + "y": 1 + }, + { + "x": 5, + "y": 1 + }, + { + "x": 6, + "y": 1 + }, + { + "x": 7, + "y": 1 + }, + { + "x": 8, + "y": 1 + }, + { + "x": 9, + "y": 1 + }, + { + "x": 10, + "y": 1 + }, + { + "x": 11, + "y": 1 + }, + { + "x": 0, + "y": 2 + }, + { + "x": 1, + "y": 2 + }, + { + "x": 2, + "y": 2 + }, + { + "x": 3, + "y": 2 + }, + { + "x": 4, + "y": 2 + }, + { + "x": 5, + "y": 2 + }, + { + "x": 6, + "y": 2 + }, + { + "x": 7, + "y": 2 + }, + { + "x": 8, + "y": 2 + }, + { + "x": 9, + "y": 2 + }, + { + "x": 10, + "y": 2 + }, + { + "x": 11, + "y": 2 + }, + { + "x": 0, + "y": 3 + }, + { + "x": 1, + "y": 3 + }, + { + "x": 2, + "y": 3 + }, + { + "x": 3, + "y": 3 + }, + { + "x": 4, + "y": 3 + }, + { + "x": 5, + "y": 3 + }, + { + "x": 6, + "y": 3 + }, + { + "x": 7, + "y": 3 + }, + { + "x": 8, + "y": 3 + }, + { + "x": 9, + "y": 3 + }, + { + "x": 10, + "y": 3 + }, + { + "x": 11, + "y": 3 + }, + { + "x": 0, + "y": 4 + }, + { + "x": 1, + "y": 4 + }, + { + "x": 2, + "y": 4 + }, + { + "x": 3, + "y": 4 + }, + { + "x": 4, + "y": 4 + }, + { + "x": 5, + "y": 4, + "w": 2 + }, + { + "x": 7, + "y": 4 + }, + { + "x": 8, + "y": 4 + }, + { + "x": 9, + "y": 4 + }, + { + "x": 10, + "y": 4 + }, + { + "x": 11, + "y": 4 + } + ] + } + } +} diff --git a/keyboards/handwired/uthol/keymaps/default/keymap.c b/keyboards/handwired/uthol/keymaps/default/keymap.c new file mode 100644 index 0000000000..d33f3eb6b6 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum uthol_layers { _QWERTY, _COLEMAK, _LOWER, _RAISE, _SETTINGS }; + +#define QWERTY DF(_QWERTY) +#define COLEMAK DF(_COLEMAK) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define SETTINGS MO(_SETTINGS) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_COLEMAK] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_LOWER] = LAYOUT_uthol(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_MINS, KC_EQL, KC_INS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_RAISE] = LAYOUT_uthol(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_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_SETTINGS] = LAYOUT_uthol(QWERTY, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_PWR, KC_NO, KC_SLCK, KC_NO, KC_NO, KC_PSCR, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUD, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_SAI, RGB_SAI, RGB_MODE_PLAIN, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MODE_REVERSE, RGB_VAD, RGB_VAI, RGB_MODE_FORWARD) +}; diff --git a/keyboards/handwired/uthol/keymaps/numswap/keymap.c b/keyboards/handwired/uthol/keymaps/numswap/keymap.c new file mode 100644 index 0000000000..b571ba8b91 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/numswap/keymap.c @@ -0,0 +1,34 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum uthol_layers { _QWERTY, _COLEMAK, _LOWER, _RAISE, _SETTINGS }; + +#define QWERTY DF(_QWERTY) +#define COLEMAK DF(_COLEMAK) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define SETTINGS MO(_SETTINGS) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_COLEMAK] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_LOWER] = LAYOUT_uthol(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_MINS, KC_EQL, KC_INS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_P0, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_RAISE] = LAYOUT_uthol(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_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_BSLS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_P0, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_SETTINGS] = LAYOUT_uthol(QWERTY, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLCK, KC_NO, KC_NO, KC_PSCR, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_PWR, KC_NO, KC_NO, KC_NLCK, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO) +}; diff --git a/keyboards/handwired/uthol/keymaps/oled/helix.c b/keyboards/handwired/uthol/keymaps/oled/helix.c new file mode 100644 index 0000000000..9661914408 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/helix.c @@ -0,0 +1,18 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include "helix.h" diff --git a/keyboards/handwired/uthol/keymaps/oled/helix.h b/keyboards/handwired/uthol/keymaps/oled/helix.h new file mode 100644 index 0000000000..584f9eae41 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/helix.h @@ -0,0 +1,421 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ +#include "progmem.h" + + static const char PROGMEM animation[][1024] = { + // 'frame_00_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0x7c, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x40, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xcc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x20, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe3, 0xf3, 0xfb, 0xfc, 0x7c, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x1f, 0x3f, 0x3e, 0x7e, 0x7e, 0x3c, 0x7c, 0x78, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x78, 0x78, 0x7e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0xfc, 0xfe, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xff, 0x7f, 0x3f, + 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x08, 0x1c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xdf, 0x1f, 0xbf, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7e, 0x7f, 0xfe, 0xfe, 0xff, 0xfd, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, + 0xff, 0x7f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1e, 0xbe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe8, 0xe0, 0xe0, 0xe1, 0xf3, 0xf3, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3c, 0x18, 0x0c, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xc7, 0xc1, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x21, 0x31, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x08, 0x0d, 0x09, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_01_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0xc1, 0xc3, 0x03, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0xc3, 0xe1, 0xf8, 0xfc, 0x7e, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x03, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x6f, 0x1f, 0x1f, 0x3f, 0x1e, 0x3e, 0x3e, 0x7c, 0x7c, 0x7c, 0x7c, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x78, 0x78, 0x7c, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xff, 0x7f, + 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x98, 0x98, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xde, 0xcf, 0xdf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, + 0xff, 0x1f, 0x0b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf6, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe2, 0xe0, 0xe1, 0xe3, 0xe3, 0xf7, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1c, 0x0d, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x40, 0x80, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0xff, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xf0, 0xfc, 0xff, 0xff, 0xdf, 0xc7, 0xe1, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x01, 0x01, 0x01, 0xc1, 0x81, 0x01, 0x01, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x43, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x06, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_02_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x10, 0x00, 0x40, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf9, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xfb, 0xf9, 0xfc, 0xfe, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x87, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfe, 0x7e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1e, 0x1e, 0x3e, 0x3e, 0x7c, 0x3c, 0x7c, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x7b, 0x7b, 0x7b, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0x7c, 0xbc, 0xf8, 0xf0, 0xf0, 0xf0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xff, + 0x7f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xb0, 0xf8, 0xf0, 0x80, 0x80, 0x80, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7e, 0xff, 0xff, 0xfe, 0xff, 0xfd, 0xff, 0xff, 0xfd, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xef, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0x7f, + 0x0f, 0x05, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xff, 0x3f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x0f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xf1, 0xe3, 0xf3, 0xe7, 0xef, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x0c, 0x04, 0x02, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x20, 0xb0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xf8, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xe7, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x27, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_03_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf9, 0xfb, 0xff, 0xff, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x12, 0x00, 0xc0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xfc, 0xff, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xc7, 0xe3, 0xf0, 0xf8, 0xfc, 0xfe, 0xbf, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfe, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3e, 0x1e, 0x3e, 0x3e, 0x3c, 0x7c, 0x7c, 0x7c, 0x78, 0x78, 0x7d, 0x7e, 0x3e, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc1, 0xc1, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xe0, 0xf0, 0xfc, + 0xfe, 0xff, 0x1f, 0x07, 0x01, 0x00, 0x80, 0x80, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xf7, 0xdb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x8f, 0x8f, 0x8f, 0x8f, 0xcf, 0xcf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x7f, 0x1f, + 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xfe, 0xff, 0x3f, 0x0f, 0x07, 0x07, 0x03, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x77, 0x63, 0xe0, 0xe0, 0xf0, 0xf1, 0xf3, 0xf3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x1f, 0x9f, 0x06, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x48, 0x70, 0x30, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xef, 0xe3, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x41, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_04_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfa, 0xf9, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0x3f, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xf9, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xe1, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xdf, 0x8f, 0x87, 0x83, 0x03, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0x3f, 0x1f, 0x8f, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xcf, 0xe3, 0xf9, 0xf9, 0xff, 0x7f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1e, 0x1e, 0x3e, 0x3e, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe3, 0xe3, 0xc2, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xf8, + 0xf8, 0xff, 0xff, 0x9f, 0x87, 0x81, 0x80, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xfd, 0xff, 0xef, 0xf7, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf3, 0xf3, 0xe3, 0xe3, 0xe3, 0xf7, 0xff, 0xff, 0xff, 0xbf, 0x8f, 0x87, 0x87, 0x87, 0xcf, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0x3f, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0x1f, 0x0d, 0xc9, 0xdb, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0d, 0x00, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xef, 0xf1, 0xf0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x13, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_05_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x78, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf1, 0xf1, 0xf1, 0xf0, 0xf8, 0xf9, 0xff, 0xff, 0xff, 0xcf, 0xc7, 0x83, 0x87, 0x87, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7e, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x7e, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x80, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0x7f, 0x1f, 0x0f, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x0f, 0x1f, 0x1f, 0x1e, 0x1e, 0x3e, 0x3e, 0x3e, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xef, 0xec, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, + 0xf8, 0xfe, 0xff, 0xff, 0x9f, 0x87, 0xc1, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7d, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x7f, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf1, 0xf1, 0xe1, 0xe1, 0xc1, 0xc3, 0xc3, 0xe3, 0xf3, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x87, 0xc7, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x1f, 0x1f, 0x03, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfe, 0xff, 0x7f, 0x1f, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x3f, 0x3f, 0x1f, 0x1f, 0x7f, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xf7, 0xf1, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x8f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_06_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x79, 0xf9, 0x79, 0xf9, 0xf9, 0xf1, 0xfb, 0xfb, 0xff, 0xff, 0xff, 0xef, 0xcf, 0xcf, 0xcf, 0xdf, 0x9f, 0xbf, 0xbf, 0x7f, 0x7f, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1b, 0x0f, 0x03, 0x01, 0x03, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x0f, 0x1f, 0x1f, 0x5f, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xc0, 0xc0, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf8, 0x7c, 0x7e, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf1, 0xf1, 0xf0, 0xc1, 0xc0, 0xc1, 0x81, 0x81, 0x81, 0xc1, 0xe1, 0xf1, 0xff, 0xff, 0x7f, 0x9f, 0x8f, 0xe3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0x0f, 0x13, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x48, 0x60, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0xbf, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xf7, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1e, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_07_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0xfe, 0x3d, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x8f, 0xdf, 0xcf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf0, 0xf8, 0x78, 0x7c, 0x3e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xdf, 0xef, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf1, 0xe1, 0xf0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x01, 0x00, 0x80, 0xc1, 0xe1, 0xf1, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x03, 0x07, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0x0d, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xf3, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7e, 0xff, 0xfb, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_08_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xfe, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xef, 0xe7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x78, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfc, 0xfd, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x8f, 0x9f, 0x9f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3e, 0x7f, 0x3f, 0xcf, 0x87, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xe1, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x80, 0xc0, 0xc0, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, 0x03, 0x01, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0xc1, 0xe3, 0xf3, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_09_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc8, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xcf, 0xc7, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x70, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xfc, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xf0, 0xc0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe1, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0x78, 0x78, 0xf8, + 0xf8, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3e, 0x7e, 0x3f, 0x1f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfb, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc1, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0e, 0x1c, 0x80, 0xc0, 0xe0, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x83, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x7c, 0x7c, 0x7c, 0x7c, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0xfe, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_10_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0x9f, 0x8f, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xfa, 0xfc, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xfd, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc2, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x7c, 0x7c, 0x7c, 0x7c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0x7c, 0x7c, + 0x78, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x78, 0x7d, 0x7d, 0x3e, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xdf, 0x8f, 0x87, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x20, 0xf0, 0x80, 0xc0, 0xe0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0x03, 0x87, 0x8f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x7c, 0x7c, 0x7c, 0xfc, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x27, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_11_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xdc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0x7e, 0x1f, 0x8f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xf7, 0xfe, 0xff, 0xfd, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x01, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0xa0, 0xb0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0x7e, 0x3f, 0x1f, 0x07, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc1, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, + 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf0, 0xf0, 0xf0, 0x78, 0xf8, 0x78, 0x78, 0x7c, 0x3c, 0x3c, 0x3e, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xf7, 0xfb, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xbf, 0x8f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x01, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x07, 0x0f, 0x1f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0xbc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_12_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x77, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfe, 0xf8, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x03, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x05, 0x16, 0x12, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf1, 0xf9, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0x3c, 0x3e, 0x3e, 0x1e, 0x1e, 0x1e, 0x1e, 0x3e, 0x1e, 0xfe, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xf8, 0x78, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x3c, 0x3c, 0x3f, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0xfe, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xdf, 0x8f, 0x87, 0x83, 0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3c, 0x3c, 0x3e, 0x3e, 0x1e, 0x3e, 0x1e, 0x3e, 0x3e, 0x3e, 0x3c, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x5e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_13_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0x7d, 0x3e, 0x1f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1e, 0x1e, 0xc4, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0xc1, 0xe3, 0xf3, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3c, 0x3e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7c, 0x7c, 0x7c, 0x78, 0x78, 0x78, 0x7c, 0x7c, 0x7c, 0x3c, 0x30, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xdf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xbe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xdf, 0xcf, 0xc7, 0x83, 0x81, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb7, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3c, 0x1e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x1e, 0x1e, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x1e, 0x1e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_14_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0x7c, 0x3e, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xde, 0xbe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xc7, 0xf9, 0xfc, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x87, 0xc7, 0xef, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xf7, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xe0, 0xe0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0x1e, 0x1e, 0x1e, 0x1f, 0x0f, 0x0f, 0xcf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x3f, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x1e, 0x0e, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfe, 0x7e, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0x78, 0xf8, 0xf8, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xc7, 0xc3, 0xc1, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xfb, 0xf3, 0xf7, 0xf3, 0xf7, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x1f, 0x0f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1e, 0x1e, 0x1e, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_15_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xff, 0xfd, 0xff, 0xfc, 0xff, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xbf, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc7, 0x8f, 0x8f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x03, 0x83, 0xd0, 0xf0, 0xfc, 0xff, 0x3f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x8f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0xcf, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0x3f, 0x1f, 0x3f, 0x3e, 0x3e, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x1e, 0x3e, 0x1e, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x80, 0x80, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xde, 0x9e, 0xbe, 0x3e, 0x3e, 0x3c, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xe7, 0xe3, 0xc1, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xfd, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf1, 0xf1, 0xe1, 0xf1, 0xe3, 0xe3, 0xf3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_16_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xbc, 0xfc, 0xff, 0xfc, 0xfd, 0xfc, 0xff, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xf0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfd, 0xfb, 0xf9, 0xf1, 0xf9, 0xf9, 0xff, 0xff, 0xbf, 0x8f, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x07, 0x01, 0x00, 0xc0, 0xe0, 0xf8, 0xfc, 0xff, 0x3f, 0x0f, 0x07, 0x01, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0xfe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0xcf, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x8f, 0xef, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x1f, 0x1f, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x41, 0xe1, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xef, 0xff, 0xdf, 0xef, 0xff, 0xff, 0xff, 0xdf, 0xff, 0x7e, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xdf, 0x8f, 0x8f, 0x0f, 0x1f, 0x1f, 0x1e, 0x3e, 0x3e, 0xbe, 0xfc, 0xfc, 0xf8, 0xf8, 0xfe, 0xff, 0xfe, 0xff, 0xf7, 0xe3, 0xe1, 0xe0, 0xc0, 0xc0, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7c, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xe1, 0xe0, 0xe0, 0xe0, 0xe1, 0xe1, 0xe3, 0xf3, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xcf, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_17_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x1c, 0x1c, 0x0c, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xf8, 0xfd, 0xf8, 0xfb, 0xfc, 0xf3, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xf1, 0xf9, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x03, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x83, 0x81, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfc, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0xc0, 0xc0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3e, 0x1e, 0x1f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x07, 0x07, 0x87, 0xcf, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1e, 0x1e, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x33, 0x27, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xdf, 0xff, 0xbf, 0xff, 0x7f, 0xff, 0xef, 0xef, 0xff, 0xfc, 0xf8, 0xf8, 0xf8, 0xfe, 0xfe, 0x9f, 0x8f, 0x8f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3e, 0x9e, 0xfe, 0xfc, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xf3, 0xf1, 0xf0, 0xe0, 0xe0, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x7c, 0x7e, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xef, 0xe7, 0xe3, 0xe1, 0xc0, 0xe0, 0xe0, 0xe0, 0xf1, 0xf1, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x9f, 0xcf, 0x8f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_19_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0xc0, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x71, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf3, 0xf0, 0xf1, 0xf0, 0xf0, 0xf1, 0xfe, 0xf8, 0xfd, 0xd0, 0x86, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf1, 0xf8, 0xe0, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x07, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xe3, 0xe1, 0xc1, 0xc1, 0xc1, 0xc1, 0xc3, 0xc3, 0xc7, 0xf7, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xdf, 0xff, 0xbf, 0xff, 0xff, 0xfb, 0xf8, 0xf0, 0xf0, 0xf0, 0xfc, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xef, 0xc3, 0x03, 0x01, 0x03, 0x03, 0x03, 0x83, 0xc3, 0xf3, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x0f, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xe0, 0xe0, 0xc0, 0xe0, 0xf8, 0xfc, 0x7e, 0x3f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x9f, 0xff, 0xff, 0xfe, 0xfe, 0x7e, 0x3f, 0x7f, 0x7f, 0xfb, 0xf9, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xf3, 0xf0, 0xf8, 0x7c, 0x7c, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x01, 0x00, 0x08, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xfb, 0xfd, 0xee, 0xff, 0xef, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xdf, 0x8f, 0xc7, 0xc3, 0xc1, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0xc7, 0xc1, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xfc, 0x3e, 0x3f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xe7, 0xf7, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x3f, 0x3d, 0x7e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_18_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfd, 0xfd, 0xf9, 0xff, 0xf1, 0xff, 0xf9, 0xfa, 0xf0, 0xeb, 0xe0, 0xe0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xf8, 0xf8, 0xf8, 0xe0, 0xe0, 0xc0, 0xe0, 0x80, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0x7f, 0x1f, 0x0f, 0x07, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc1, 0xc0, 0xc0, 0xc0, 0x80, 0x81, 0xc1, 0xf1, 0xfb, 0xff, 0xff, 0x3f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xfc, 0xf0, 0xf0, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x03, 0x03, 0x07, 0x03, 0x87, 0xe7, 0xf7, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x1f, 0x1f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7d, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xbf, 0xff, 0xf7, 0xff, 0xef, 0x7f, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xf8, 0xfc, 0xfe, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x9f, 0xfe, 0xfe, 0xfe, 0xfc, 0x7f, 0x7f, 0xf7, 0xff, 0xfb, 0xf1, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf8, 0x78, 0x7c, 0x3e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x40, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x08, 0x00, 0x00, 0x80, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xc7, 0xc3, 0xc1, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xc3, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x3e, 0x1f, 0x0f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x9f, 0x8f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_20_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x48, 0x48, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xf8, 0xf8, 0xf4, 0x12, 0xa4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x7c, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x3c, 0x3c, 0x7c, 0x3c, 0xfc, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xe1, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0xcf, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xe3, 0xe1, 0xe1, 0xe1, 0xe3, 0xe3, 0xe3, 0xe7, 0xe7, 0xcf, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfb, 0xff, 0xff, 0xef, 0xff, 0xff, 0xef, 0xff, 0x7f, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x07, 0x01, 0x81, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xc3, 0xc3, 0xfb, 0xfb, 0xff, 0x7f, 0x1f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xef, 0xb7, 0xff, 0xbf, 0xff, 0xef, 0xfe, 0xde, 0xff, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x87, 0xcf, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xf7, 0xff, 0xff, 0xf8, 0x78, 0x7c, 0x3c, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xdf, 0xff, 0xbd, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfe, 0xfe, 0x9f, 0x9f, 0x8f, 0xc7, 0xc3, 0xe1, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf0, 0xf8, 0xfc, 0x7e, 0xbe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x83, 0xc3, 0xe7, 0xf7, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_21_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x16, 0x12, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x70, 0xc8, 0x58, 0x48, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x3c, 0x3c, 0x3c, 0x3c, 0x1c, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0x3e, 0xbe, 0xbe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xe7, 0xc3, 0x83, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xf3, 0xf3, 0xf3, 0xf3, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xe7, 0xf3, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x17, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x81, 0xe1, 0xe1, 0xf1, 0xfb, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0xec, 0xc8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x83, 0x03, 0x07, 0x03, 0x87, 0xcf, 0xef, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf0, 0xf2, 0xfc, 0xfd, 0x7c, 0x78, 0x78, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xf7, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xf9, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xbc, 0xbe, 0x9f, 0x8f, 0xcf, 0xc7, 0xe3, 0xf9, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x00, 0x40, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xd8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x03, 0x83, 0xc7, 0xef, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_22_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x04, 0x0d, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x60, 0x20, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0x3c, 0x3c, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xff, 0xff, 0xfe, 0xbe, 0xff, 0xff, 0xfe, 0xfb, 0xfa, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0x8f, 0x47, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xfc, 0xf0, 0xf0, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xa0, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x7f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x80, 0xc0, 0xe1, 0xf1, 0xfd, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0x3f, 0x1f, 0x07, 0x03, 0x03, 0x01, 0x21, 0x01, 0x01, 0x03, 0x03, 0x83, 0x83, 0xc7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7a, 0x78, 0x78, 0x78, 0x78, 0x78, 0x7c, 0xf8, 0x78, 0x3c, 0x3c, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xf7, 0xff, 0xff, 0xef, 0xff, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0xbe, 0x9e, 0x9f, 0xcf, 0xe7, 0xf3, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x07, 0x00, 0x00, 0x40, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x27, 0x03, 0x07, 0x8f, 0x8f, 0xdf, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_23_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xd0, 0x90, 0x78, 0x7c, 0x3c, 0x3c, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x0f, 0x1f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xff, 0xfe, 0xf1, 0xed, 0xe8, 0xf0, 0xf8, 0xfc, 0xbe, 0xbf, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf9, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xd8, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, + 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf9, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x78, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x20, 0x60, 0x20, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x09, 0x09, 0x01, 0x01, 0x01, 0x01, 0x01, 0x83, 0x83, 0xe3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3d, 0x7c, 0x7c, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xfc, 0x3c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xef, 0xff, 0xff, 0xdf, 0xf7, 0xbf, 0xff, 0xdf, 0x9f, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xef, 0xe3, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0xbe, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x20, 0x70, 0x20, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xe0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x07, 0x0f, 0x0f, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_24_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0x78, 0x3c, 0x3c, 0x1e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xfc, 0xf4, 0xe4, 0xa6, 0xf0, 0xf8, 0xf8, 0xfe, 0xbf, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0x30, 0x00, 0x00, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe4, 0xe0, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, + 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0xc1, 0xf3, 0xf7, 0xff, 0x7f, 0x3f, 0x1f, 0x3f, 0x3f, 0x7e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xbf, 0xdf, 0xef, 0xff, 0x7f, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0xc1, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3e, 0x3e, 0x3e, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0xfc, 0x7c, 0xfe, 0xbc, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xed, 0xff, 0xbf, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xef, 0xe3, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0xbc, 0xbe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x7c, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x0f, 0x1f, 0x3f, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_25_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x84, 0x80, 0x80, 0xe0, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0xe0, 0x90, 0x20, 0xf8, 0xa0, 0xf8, 0xf8, 0x3e, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, + 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x83, 0x87, 0xef, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfc, 0xfe, 0xbe, 0xff, 0xbf, 0xff, 0xbf, 0x7e, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1e, 0x3e, 0x1e, 0x3e, 0x3e, 0x3e, 0x3c, 0x3c, 0x3c, 0x3c, 0x3e, 0x1e, 0x1e, 0x1e, 0x0f, 0x0f, 0x07, 0x07, 0x03, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x15, 0x03, 0x03, 0x03, 0x17, 0x37, 0x7f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xff, 0xff, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xfe, 0xff, 0xed, 0xff, 0xfb, 0xfd, 0x3f, 0xdf, 0xff, 0x3f, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xf7, 0xf1, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x07, 0x0f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0x7c, 0x7c, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfb, 0xbf, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_26_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf8, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x60, 0x70, 0xf0, 0x7c, 0xfe, 0x7f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x06, 0x0e, 0x04, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfb, 0xfd, 0xfd, 0xff, 0xfb, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf2, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x8f, + 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x8f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0xbe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x2f, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x0f, 0x1f, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x0f, 0x0f, 0x0f, 0x07, 0x07, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfd, 0xff, 0xfb, 0xff, 0xff, 0xeb, 0x77, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xf7, 0xf1, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x3f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x07, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0x7c, 0x3c, 0x7c, 0x7c, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x3f, 0x7e, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xef, 0xfb, 0xff, 0xef, 0xff, 0xff, 0xbf, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_27_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf8, 0xfe, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x1e, 0x1f, 0x0f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xe0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x48, 0xe0, 0x70, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x03, 0x03, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x20, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x9f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xef, 0xf7, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xe2, 0xf9, 0xeb, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x7c, 0x7c, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x9f, + 0x8f, 0x87, 0x83, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x0f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xbe, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0x7f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x07, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, + 0x03, 0x03, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0x9f, 0xbf, 0xff, 0xf7, 0xff, 0xf7, 0xff, 0xff, 0xdf, 0xff, 0xf7, 0xbf, 0xff, 0xff, 0xbf, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf8, 0x78, 0x78, 0x78, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1c, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x65, 0x70, 0x30, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfc, 0x7e, 0x3e, 0x3e, 0x7c, 0x7c, 0x78, 0xf8, 0xf8, 0xf7, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xff, 0xfe, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xfc, 0x7c, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_28_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0x3e, 0x1e, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xfc, 0xf8, 0xf0, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfe, 0x7f, 0x1f, 0x0f, 0x03, 0x01, 0x01, 0x00, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x08, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xaf, 0x4f, 0x5f, 0xff, 0x7f, 0x7c, 0x3c, 0x7c, 0x7c, 0x78, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x08, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf8, 0xfc, 0xfe, 0xff, + 0xdf, 0xcf, 0xc7, 0x81, 0x81, 0x81, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf3, 0xf3, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0x7c, 0xbe, 0x7e, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x01, 0x03, 0x83, 0x87, 0x07, 0x0f, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, + 0x07, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfb, 0xe7, 0xff, 0xff, 0xff, 0xbe, 0xef, 0xf7, 0xf7, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0x70, 0x78, 0x7c, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xff, 0x7f, 0x7f, 0x7b, 0x78, 0x78, 0x78, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0x3e, 0x1e, 0x3e, 0x7e, 0x3c, 0xfc, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_29_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x09, 0x10, 0x05, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xf8, 0xf0, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xfe, 0x7f, 0x1f, 0x07, 0x03, 0x81, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xdf, 0xdf, 0x9f, 0xef, 0xff, 0x3f, 0x7f, 0xfe, 0x3f, 0x3f, 0x3e, 0x3e, 0x3c, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf8, 0xfc, 0xfe, + 0xff, 0xff, 0xc7, 0xc3, 0xc3, 0x83, 0x87, 0x87, 0x8f, 0x9f, 0x9f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xfa, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x7f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0x7c, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfe, 0xff, 0x3f, 0x0f, 0x07, 0x01, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0xe3, 0x63, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, + 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfd, 0xf6, 0xef, 0xff, 0xd3, 0xfb, 0x7f, 0xff, 0xff, 0x7f, 0xbf, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xbc, 0xbc, 0x3c, 0x1c, 0x1c, 0x3c, 0x7c, 0x3c, 0x7c, 0xfc, 0xfc, 0xf8, 0xfc, 0xfe, 0x7f, 0x7f, 0x7f, 0x7f, 0x78, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xfe, 0xff, 0x1f, 0x1f, 0x1e, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x38, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_30_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x20, 0x0e, 0x00, 0x26, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0x7f, 0x1f, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xef, 0xc7, 0xc7, 0x87, 0x8f, 0x0f, 0x0f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x1f, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xfd, 0xfc, 0xf8, 0xf8, 0xf8, 0xfe, + 0xff, 0xff, 0xff, 0xe7, 0xe7, 0xcf, 0xcf, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xf2, 0xf6, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0x3f, 0x0f, 0xc3, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x19, 0x19, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x07, 0x07, 0x07, + 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xdf, 0xef, 0xbf, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xbe, 0xbe, 0x1e, 0x1e, 0x3e, 0x1e, 0x1e, 0x1e, 0x3e, 0x3e, 0x3c, 0x3c, 0xbc, 0xfc, 0xfc, 0xfc, 0xff, 0x7f, 0x7f, 0x3f, 0xff, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0xfe, 0xff, 0x7f, 0x1f, 0xdf, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xf7, 0xef, 0xff, 0xff, 0xfd, 0xfe, 0xfb, 0xff, 0xfe, 0xff, 0xff, 0xdf, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7e, 0xfc, 0xfe, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_31_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x00, 0x00, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xfc, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xc0, 0x80, 0xc0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0xe0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x13, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe7, 0xe7, 0xc7, 0x87, 0x83, 0x07, 0x07, 0x07, 0x07, 0x07, 0x87, 0x87, 0xe7, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x1f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x3e, 0x3c, 0xfc, 0xfd, 0xfd, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xbf, 0xff, 0xff, 0xef, 0x81, 0xc8, 0xfc, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xf8, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xfe, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x0f, 0x05, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, + 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xf5, 0xd3, 0xfb, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xfc, 0x7c, 0xf8, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0x3c, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x3e, 0x3e, 0xbe, 0xfe, 0xfc, 0xfc, 0xff, 0x7f, 0x3f, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf7, 0xfc, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xe0, 0xc4, 0xec, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_32_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x08, 0x12, 0x10, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x8e, 0xf4, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0x34, 0x00, 0x20, 0x20, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xef, 0xff, 0xff, 0xef, 0xff, 0xdf, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc7, 0xc3, 0x83, 0x83, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x87, 0x87, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x1f, 0x0f, 0x1f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xde, 0xfc, 0xfe, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0x7f, 0xbf, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd7, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, + 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf5, 0xbb, 0x4b, 0xb5, 0xff, 0x7b, 0xbf, 0xdf, 0xff, 0xfe, 0xfc, 0xfc, 0xf0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3e, 0x1e, 0x1e, 0x1e, 0x1f, 0x1f, 0x0f, 0x0f, 0x1f, 0x0f, 0x1f, 0x1e, 0x1e, 0x1e, 0x9e, 0xbe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf7, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xfe, 0x3e, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_33_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x08, 0x58, 0x08, 0x80, 0x30, 0x00, 0x00, 0x04, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc1, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, + 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xe0, 0xf0, 0xf1, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xef, 0xc7, 0xc7, 0x83, 0x83, 0x03, 0x03, 0x03, 0x01, 0x03, 0x01, 0x03, 0x01, 0x01, 0x01, 0x03, 0x03, 0x83, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0xdf, 0xdf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x17, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfe, 0xff, 0xfd, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xc1, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, + 0x7f, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xfe, 0xfa, 0x7d, 0x7d, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x6f, 0x9f, 0xfe, 0xff, 0x97, 0xff, 0xbf, 0xff, 0x7e, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x9f, 0xdf, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1c, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xfd, 0xff, 0xe7, 0xff, 0xcf, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfb, 0xff, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_34_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe3, 0xf0, 0xe4, 0xf0, 0xf0, 0xf6, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x81, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0xe0, 0xf8, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x8f, 0x0f, 0x0f, 0x8f, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xdf, 0x8f, 0x87, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0xc3, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x0f, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x10, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x7f, 0x0f, 0x9f, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x1f, 0x9f, 0xff, 0xff, 0xff, 0xaf, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xfd, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfb, 0xeb, 0x61, 0x3f, 0x1f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xf3, 0xfd, 0xff, 0xef, 0xff, 0xff, 0x7b, 0x3f, 0xdf, 0xff, 0x7e, 0xfc, 0xfc, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x87, 0x8f, 0x8f, 0x0f, 0x0f, 0x0f, 0x0f, 0x8f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0e, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf9, 0xf9, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_35_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0x68, 0xd8, 0x98, 0xa0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc3, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0x3e, 0x7c, 0x78, 0xf8, 0xf4, 0xe0, 0xf8, 0xf8, 0xfc, 0xfe, 0x1f, 0x9f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x01, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0xf0, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x1f, 0x3f, 0x3f, 0x3f, 0xff, + 0xff, 0xfc, 0xf8, 0xf8, 0xf8, 0xfd, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x83, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3e, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0xff, 0x43, 0x7f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xef, 0xf7, 0xef, 0xbf, 0x5f, 0xff, 0xff, 0xdf, 0x7e, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0x3e, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0xc7, 0xe7, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x8f, 0x8f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x3b, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xfe, 0xff, 0xfb, 0xee, 0xfb, 0xff, 0xe7, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_36_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xe1, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x30, 0x38, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xf8, 0xf8, 0xf0, 0xf0, 0xd0, 0xc0, 0xa0, 0xb8, 0xfc, 0xfc, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x08, 0x1c, 0x21, 0x33, 0x22, 0x21, 0x0c, 0x00, 0xc0, 0xf8, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, + 0xfe, 0xff, 0xfb, 0xc7, 0x87, 0x87, 0xc7, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x81, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0x8f, 0xaf, 0x37, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xdf, 0x6f, 0xef, 0xdf, 0xff, 0xfe, 0xfc, 0xfc, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x77, 0x37, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x05, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xf7, 0xfb, 0xef, 0xff, 0xf7, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x70, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_37_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf6, 0xfc, 0xfe, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf8, 0xe0, 0xe0, 0xc0, 0x82, 0x40, 0x00, 0x60, 0xf8, 0xfc, 0x7e, 0x3e, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x20, 0x60, 0x20, 0xfc, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x7e, 0x7f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf7, 0xcf, 0x4f, 0x37, 0x3f, 0x7f, 0xfe, 0xfe, 0xdf, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf3, 0xf8, 0xfc, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x83, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7d, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x0f, 0x1e, 0x1c, 0x3c, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdf, 0x9f, 0x0f, 0x63, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xfb, 0xff, 0xff, 0xff, 0xef, 0xff, 0x7e, 0xfe, 0xf4, 0xe0, 0xf0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x1f, 0x3f, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xed, 0xfe, 0xff, 0xdf, 0xf7, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_38_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x7c, 0x3c, 0x3c, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf4, 0xfc, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x3f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x3f, 0x3e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, + 0xff, 0xef, 0xff, 0xbf, 0xff, 0x7f, 0x7f, 0xff, 0xfc, 0xf8, 0xf9, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xff, 0x97, 0xeb, 0xdb, 0xd7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x8f, 0x83, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf1, 0xf1, 0xfb, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x63, 0xc0, 0xc3, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xbf, 0x1f, 0xd3, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xdf, 0xff, 0xef, 0xff, 0x7f, 0xfe, 0xfe, 0xfb, 0xf4, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xfc, 0x7e, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x0f, 0x0f, 0x03, 0x03, 0x03, 0x03, 0x03, 0xc3, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xf3, 0xdf, 0xf7, 0xdf, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_39_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x8f, 0xe3, 0xf1, 0xf8, 0xfe, 0x7f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x7c, 0x3c, 0x3c, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xfc, 0xfc, 0xfe, 0x7f, 0xff, 0xff, 0xfb, 0xf8, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xd8, 0xfc, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0e, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x02, 0x00, 0xd8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7d, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, + 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe3, 0xe3, 0xe7, 0xff, 0xcf, 0xef, 0xff, 0x9f, 0x9e, 0xbe, 0xbe, 0xbe, 0xbc, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xc7, 0xc3, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe1, 0xe3, 0xf3, 0xf7, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xf7, 0x3b, 0x17, 0x1f, 0x1f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0x78, 0x7f, 0x98, 0xbf, 0x13, 0xd1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x7f, 0x7f, 0xaf, 0xbf, 0xfe, 0xfd, 0xf9, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x01, 0x01, 0x81, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x03, 0x02, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x40, 0xc0, 0x41, 0x01, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xfb, 0xec, 0xff, 0xdf, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xbf, 0xbf, 0xbf, 0xbc, 0xbc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_40_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x0f, 0x03, 0x83, 0xe1, 0xe8, 0xf8, 0xfc, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x3c, 0x3c, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0xbe, 0xbe, 0xfc, 0xfe, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x78, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0x7c, 0x7e, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xfc, 0xfc, 0xbf, 0x9f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xf2, 0xf8, 0xfe, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x70, 0x70, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0xdf, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xf9, 0xff, 0xff, 0xd7, 0x8f, 0x87, 0x87, 0xc7, 0x87, 0x8f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1e, 0xbe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xfc, 0xff, 0xff, 0xdf, 0xc7, 0xc1, 0xc0, 0xc1, 0xe1, 0xe3, 0xe3, 0xe7, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xaf, 0x27, 0xa5, 0x90, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf4, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x3e, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x01, 0x81, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x00, 0x18, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfc, 0xf3, 0xff, 0xff, 0xe6, 0xbf, 0x7f, 0xff, 0xbf, 0xdf, 0xff, 0xff, 0xfd, 0xfd, 0xf9, 0xf1, 0xf3, 0xf3, 0xf3, 0xff, 0xff, 0xff, 0xbf, 0x9f, 0x9f, 0x9f, 0x1f, 0x3f, 0x3e, 0x3e, 0xbc, 0xbc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_41_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x84, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x4f, 0x07, 0x03, 0x01, 0x81, 0xc0, 0xf0, 0xf8, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x80, 0xd0, 0xe0, 0xe0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x1f, 0x1f, 0x9f, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0x3f, 0x3f, 0x7f, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xbc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0x9f, 0x8f, 0x87, 0x03, 0x01, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0x9f, 0x82, 0xc0, 0xf0, 0xf0, 0xfe, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xfd, 0xff, 0x7f, 0x1f, 0x47, 0x03, 0x87, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x38, 0x70, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe2, 0xe0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xe7, 0xe1, 0xe3, 0xe7, 0xe7, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xfe, 0xfc, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0xff, 0xcb, 0x68, 0x48, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0xef, 0xff, 0x5f, 0xff, 0xff, 0x7e, 0xfc, 0xf8, 0xf0, 0xe0, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0xc0, 0xf0, 0xf0, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x81, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x03, 0x03, 0x01, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x06, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x03, 0x03, 0x0c, 0x08, 0x00, 0x0a, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfe, 0xff, 0xff, 0xfb, 0xff, 0xbe, 0xdb, 0xff, 0xf7, 0xfb, 0xef, 0xbf, 0xff, 0xff, 0xbf, 0xff, 0xf8, 0xf8, 0xf0, 0xe0, 0xe1, 0xe1, 0xe1, 0xf3, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1e, 0xbe, 0x9e, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_42_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x01, 0x80, 0xc0, 0xf0, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, + 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xe0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xdf, 0xc7, 0x83, 0x81, 0x81, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0x07, 0x01, 0x80, 0xc0, 0xc0, 0xe0, 0xf8, 0xfc, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x7f, 0x7f, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xbf, 0xfe, + 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x07, 0x87, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x04, 0x06, 0x06, 0x2c, 0x20, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x32, 0x38, 0x39, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0x80, 0xc2, 0xc3, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xe7, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x4d, 0x54, 0x44, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x78, 0x78, 0x78, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xfd, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x24, 0x4e, 0x00, 0x64, 0x2c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xfb, 0xec, 0xff, 0xdb, 0xe7, 0xfe, 0xdb, 0xff, 0xb7, 0xff, 0xdf, 0xff, 0xbf, 0xff, 0x7f, 0xff, 0xf1, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xf1, 0xfb, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x0f, 0x0f, 0x1f, 0x9f, 0x9f, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_43_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x9f, 0x8f, 0x8f, 0x8f, 0x83, 0x83, 0x81, 0x81, 0x01, 0x01, 0xe1, 0xf1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x02, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x87, 0xcf, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfd, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf6, 0xee, 0xc4, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0x78, 0x78, 0x7c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0xf8, 0x78, 0xf8, 0xf8, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xef, 0xc7, 0xc3, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xff, 0x07, 0x02, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7f, 0xff, 0xdf, 0xc7, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc6, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xf8, + 0xf0, 0xf0, 0xe0, 0xf8, 0xfc, 0xd8, 0xf8, 0xe0, 0xf0, 0xf8, 0xfc, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x83, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x70, 0x20, 0x80, 0x80, 0xd8, 0xf8, 0xe0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xf0, 0xf0, 0xf0, 0xf0, 0xf1, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xfe, 0xfe, 0xf0, 0xe2, 0xf0, 0xfc, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x1d, 0x24, 0x3a, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf0, 0xf0, 0x80, 0x00, 0x00, 0x03, 0x03, 0x83, 0xe0, 0xf0, 0xf8, 0xf8, 0x78, 0x78, 0x78, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xf8, 0xf8, 0xfc, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0xe1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe1, 0xf0, 0xf8, 0xfc, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x70, 0x00, 0x20, 0x60, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xe7, 0xfe, 0xf9, 0x67, 0xfe, 0xfe, 0xff, 0xbf, 0xff, 0x7f, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xe3, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf1, 0xf9, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x0f, 0x8f, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_44_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xcf, 0xcf, 0xdf, 0xfb, 0xdb, 0xc3, 0x83, 0x83, 0x83, 0x83, 0x83, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x07, 0x03, 0x07, 0x07, 0x07, 0x03, 0x07, 0x07, 0x07, 0x87, 0xe7, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfc, 0x78, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc6, 0xc6, 0x80, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0x3c, 0x3c, 0x3e, 0x3e, 0x3e, 0x3e, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x37, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x8e, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf0, + 0xe0, 0xe0, 0xc0, 0x8e, 0x8e, 0x0e, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x81, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x10, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7c, 0x78, 0x78, 0x79, 0xfb, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xec, 0x84, 0x04, 0xcc, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x0f, 0x03, 0x1c, 0x0a, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0xfe, 0xfe, 0xfc, 0xf8, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x71, 0x70, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3c, 0x7c, 0x7c, 0x78, 0x78, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xbf, 0x1f, 0x0f, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc1, 0xe0, 0xe0, 0xf0, 0xf8, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xf9, 0x76, 0xb7, 0xff, 0xe5, 0xff, 0xdb, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xcf, 0x83, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7d, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x87, 0x87, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x04, 0x01, 0x00, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_45_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xfb, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xcf, 0xe7, 0xe7, 0xff, 0xf3, 0xe3, 0xc3, 0xc3, 0xc3, 0xc3, 0xc7, 0xc7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0xc3, 0xe7, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, + 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x87, 0x02, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0x78, 0x7c, 0x3c, 0xbc, 0x9e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x3e, 0x3e, 0x3c, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd3, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe2, 0xf3, 0xff, 0xfe, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x3c, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe0, 0xc0, + 0xc0, 0xc0, 0x83, 0x03, 0x03, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0x7e, 0x3f, 0x1f, 0x0f, 0x87, 0xe1, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x87, 0x87, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x18, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3c, 0x7c, 0x3d, 0x5f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf8, 0xf8, 0x98, 0x0c, 0x1e, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x03, 0x06, 0x07, 0x04, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xfe, 0xfc, 0xf9, 0xe1, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0xe0, 0xe0, 0xf8, 0xf8, 0x7c, 0x3c, 0x3c, 0x3c, 0x7c, 0x7c, 0x7c, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xff, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7e, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xcb, 0xf7, 0xd7, 0xdf, 0xbf, 0xbf, 0xff, 0xfe, 0xbe, 0xfc, 0xf8, 0xf8, 0xe0, 0xfe, 0xff, 0xff, 0xbf, 0x8f, 0x81, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0x7c, 0x7c, 0x3f, 0x1f, 0x0f, 0x07, 0x87, 0xc3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x23, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x10, 0x15, 0x04, 0x1b, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_46_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xe7, 0xe7, 0xe7, 0xf7, 0xe7, 0xe7, 0xe7, 0xe7, 0xe7, 0xef, 0xef, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x41, 0x61, 0xc1, 0x01, 0x01, 0x01, 0x03, 0x81, 0xe3, 0xf3, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0x70, + 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0x80, 0x80, 0x02, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0x7c, 0xfc, 0xfe, 0xfe, 0xde, 0x1e, 0x1f, 0x1f, 0x1f, 0x0f, 0x1f, 0x1e, 0x1e, 0x1e, 0x1e, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf2, 0xf8, 0xfe, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfe, 0x7f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xc7, 0xe1, 0x80, + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xfc, 0x7e, 0x3f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x67, 0x03, 0x47, 0x07, 0x03, 0x03, 0x07, 0x07, 0x07, 0x03, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3e, 0x3f, 0x3f, 0x3f, 0x3f, 0xbf, 0x7f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xf8, 0xbc, 0x1e, 0x1f, 0x3f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x00, 0x01, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfc, 0xfc, 0xfb, 0xe2, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xfc, 0x7c, 0x3e, 0x3e, 0x3e, 0x3e, 0x3c, 0x7c, 0x7c, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x81, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xfa, 0x7c, 0x7e, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x7e, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd7, 0xdf, 0x6d, 0x95, 0xff, 0x7f, 0xff, 0xff, 0x7c, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xe2, 0xfc, 0xff, 0xff, 0xff, 0x87, 0x81, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3e, 0x3f, 0x1f, 0x8f, 0xc7, 0xe3, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x22, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x16, 0x2a, 0x2a, 0x22, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_47_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xef, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x37, 0x03, 0x03, 0x03, 0x03, 0x01, 0x09, 0x0d, 0x0d, 0x00, 0x01, 0x01, 0x03, 0x03, 0x01, 0x01, 0x81, 0xe3, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, + 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x7e, 0x7e, 0x1e, 0x0f, 0x0f, 0x0f, 0x0f, 0x8f, 0xcf, 0x0f, 0x1f, 0x0f, 0x1f, 0x1f, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xfc, 0x7e, 0x7f, 0x3f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xf8, 0xf8, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0x8f, 0x07, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb9, 0xd1, 0x71, 0x01, 0x03, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xfb, 0xfd, 0xfe, 0x3f, 0x3f, 0x7f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xf8, 0xfe, 0xf6, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfc, 0x3e, 0x1e, 0x1e, 0x1e, 0x3e, 0x3e, 0x3e, 0x7c, 0x7c, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x82, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xfc, 0x7c, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x7c, 0x3e, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x7f, 0xdf, 0xff, 0x7f, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0x9f, 0x87, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x7c, 0x3e, 0x1f, 0xcf, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x2c, 0x3a, 0x02, 0x24, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // 'frame_48_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xef, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0xc7, 0xc3, 0x03, 0x01, 0x01, 0x01, 0x01, 0x05, 0x08, 0x00, 0x00, 0x00, 0x02, 0x06, 0x06, 0x00, 0x00, 0x81, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xfc, 0x7c, 0x3c, 0x3e, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x0f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xf9, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7e, 0x3e, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xf8, 0xfe, 0xff, 0x3f, 0x0f, 0x03, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x2f, 0x20, 0x38, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xf1, 0xfb, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfc, 0xfe, 0x3e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x1e, 0x3e, 0x7c, 0x7c, 0xfc, 0xf8, 0xf8, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0x78, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7d, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x7c, 0x3c, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd5, 0xdf, 0xff, 0xbf, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0x8f, 0x83, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3e, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x03, 0x41, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x22, 0x36, 0x22, 0x2c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + // frame_49_delay-0', 128x64px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1c, 0x08, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0xe0, 0x80, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe4, 0xff, 0xfe, 0x7c, 0x3e, 0x1e, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x7c, 0x7c, 0xf8, 0xf8, 0xf8, 0xf6, 0xf6, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x7c, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf0, 0xf0, 0xc0, 0xe0, 0x80, 0xc0, 0xe0, 0xf8, 0xfe, 0x7f, 0x3f, 0x0f, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x0a, 0x09, 0x0d, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc7, 0xe7, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xfd, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x1f, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xf0, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfc, 0x7e, 0x1f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3e, 0x3e, 0x7c, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc1, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf1, 0xf9, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0x7f, 0x7f, 0x3c, 0x38, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xdf, 0xff, 0xff, 0xfc, 0xfc, 0xf0, 0xe0, 0xe0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0xcf, 0xc3, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0x78, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x1a, 0x1e, 0x12, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + +}; diff --git a/keyboards/handwired/uthol/keymaps/oled/keymap.c b/keyboards/handwired/uthol/keymaps/oled/keymap.c new file mode 100644 index 0000000000..3019a1fe85 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/keymap.c @@ -0,0 +1,97 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "helix.h" + +enum uthol_layers { _QWERTY, _COLEMAK, _LOWER, _RAISE, _SETTINGS }; + +#define QWERTY DF(_QWERTY) +#define COLEMAK DF(_COLEMAK) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define SETTINGS MO(_SETTINGS) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_COLEMAK] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), + [_LOWER] = LAYOUT_uthol(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_MINS, KC_EQL, KC_INS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_RAISE] = LAYOUT_uthol(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_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + [_SETTINGS] = LAYOUT_uthol(QWERTY, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_PWR, KC_NO, KC_SLCK, KC_NO, KC_NO, KC_PSCR, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUD, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_SAI, RGB_SAI, RGB_MODE_PLAIN, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MODE_REVERSE, RGB_VAD, RGB_VAI, RGB_MODE_FORWARD) +}; + +#define ANIM_SIZE 1024 // number of bytes in array, minimize for adequate firmware size, max is 1024 +#define ANIM_FRAMES 50 // Number of frames +#define ANIM_FRAME_DURATION 160 // How long each frame lasts in ms + +uint32_t anim_timer = 0; +uint32_t anim_sleep = 0; +uint8_t current_idle_frame = 0; + +static void render_anim(void) { + // assumes 1 frame prep stage + void animation_phase(void) { + current_idle_frame = (current_idle_frame + 1) % ANIM_FRAMES; + oled_write_raw_P(animation[abs((ANIM_FRAMES - 1) - current_idle_frame)], ANIM_SIZE); + } + if (get_current_wpm() != 000) { + oled_on(); + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animation_phase(); + } + anim_sleep = timer_read32(); + } else { + if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { + oled_off(); + } else { + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animation_phase(); + } + } + } +} + +// Used to draw on to the oled screen +bool oled_task_user(void) { + render_anim(); + oled_write_P(PSTR("Layer:"), false); + switch (get_highest_layer(layer_state | default_layer_state)) { + case _QWERTY: + oled_write_P(PSTR("QWERTY\n"), false); + break; + case _LOWER: + oled_write_P(PSTR("Lower\n"), false); + break; + case _RAISE: + oled_write_P(PSTR("Raise\n"), false); + break; + case _COLEMAK: + oled_write_P(PSTR("Colemak\n"), false); + break; + case _SETTINGS: + oled_write_P(PSTR("Settings\n"), false); + break; + default: + oled_write_ln_P(PSTR("Undefined"), false); + } + oled_write_P(PSTR("WPM: "), false); + oled_write(get_u8_str(get_current_wpm(), '0'), false); + + return false; +} diff --git a/keyboards/handwired/uthol/keymaps/oled/ricardo.c b/keyboards/handwired/uthol/keymaps/oled/ricardo.c new file mode 100644 index 0000000000..935ae504c7 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/ricardo.c @@ -0,0 +1,840 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include "progmem.h" + +static const char PROGMEM animation[][1024] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0xc5, 0xf8, 0x28, 0x28, 0x6c, 0xf8, 0xb8, 0x7c, 0x7c, 0xbe, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf4, 0xf0, 0xc0, 0x01, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0x01, 0x01, 0x03, 0x06, 0x26, 0x36, 0x8f, 0xce, 0xc3, 0xf3, 0xfb, 0xff, 0xff, 0xff, 0x37, 0x4f, 0x1b, 0x0b, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc3, 0xef, 0xff, 0xff, 0xcf, 0x80, + 0x02, 0x00, 0x40, 0x20, 0xd0, 0xf0, 0xff, 0xff, 0xff, 0xb6, 0x14, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x20, 0x70, 0x30, 0x30, 0x30, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0xe0, 0xe0, 0xf0, 0xd0, 0xf0, 0xe0, 0xe0, 0xc0, 0xe1, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe1, 0xf5, 0xfe, 0xfe, 0xf8, 0xf8, 0xf8, 0xfc, + 0xfc, 0xfc, 0xfc, 0x70, 0x00, 0x20, 0x20, 0x00, 0x20, 0x80, 0xa0, 0xa0, 0x80, 0x90, 0x00, 0x00, 0x50, 0x80, 0xc0, 0x00, 0xc1, 0x44, 0xc4, 0xfc, 0xf4, 0xf8, 0xf0, 0xd0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3f, 0x7f, 0xff, 0xef, 0x3f, 0xff, 0xff, 0xff, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xee, 0xde, 0xee, 0xff, 0xff, 0xdf, 0xff, 0xef, 0xf7, 0xdb, 0xeb, 0xb1, 0xd1, 0xf1, 0xe1, 0xf1, 0xd1, 0xd9, 0xf5, 0xe5, 0xf9, 0xef, 0xf4, 0xfa, 0xe0, 0xfd, 0xe0, 0xfc, 0xfb, 0xfb, 0xfe, 0xfb, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfd, + 0xfa, 0xfb, 0x00, 0x00, 0x00, 0x01, 0x02, 0x03, 0xe1, 0xf5, 0xfa, 0xfb, 0xfc, 0xfc, 0xe0, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x40, 0x78, 0xf0, 0x60, 0xf8, 0x70, 0xf3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x2e, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x0f, 0x07, 0x3f, 0x7f, 0x7f, 0xfe, 0xfe, 0xfc, 0xfa, + 0xf8, 0xf4, 0xe0, 0xf8, 0xa0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x04, 0x01, 0x01, 0x03, 0x0a, 0x15, 0x0f, 0x2f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0x16, 0x1b, 0xdf, 0x1f, 0x5f, 0xbf, 0x3f, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x07, 0x07, 0x07, 0x0f, 0x1f, 0x0f, 0x0f, 0x1f, 0x1f, 0x7f, 0xfc, 0x78, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x01, 0x0f, 0x03, 0x0b, 0x07, 0x0f, 0x03, 0x3f, 0x3f, 0x3f, 0xff, 0xfd, 0xfd, 0xff, 0xff, 0x9f, 0xff, 0xfc, 0xf6, 0xbc, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0x3c, 0xbc, 0x04, 0x02, 0x58, 0x08, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0xe1, 0xd8, 0x40, 0x18, 0xe0, 0xdc, 0xfc, 0xf8, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xf8, 0xe8, 0xe0, 0x80, 0x01, 0x03, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x04, 0x7e, 0x2c, 0x9f, 0xde, 0xcf, 0xe3, 0xfb, 0xfb, 0xfd, 0x7f, 0xdf, 0xa7, 0x17, 0x0a, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf4, + 0xc0, 0x80, 0x80, 0xa0, 0x00, 0xd8, 0xfd, 0xff, 0xff, 0x58, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x60, 0x38, 0x30, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0x40, 0xf8, 0xf8, 0xfc, 0xf0, 0x20, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfe, 0x7e, 0x3e, 0x1c, 0x80, 0x20, 0x80, 0x00, 0x80, 0x20, 0x80, 0xc0, 0x00, 0xa0, 0x40, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x68, 0xea, 0x78, 0xfc, 0xf8, 0xf0, 0xf0, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x3f, 0x7f, 0x3f, 0x05, 0x3f, 0x7f, 0x7f, 0x01, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xe3, 0xeb, 0xff, 0xe3, 0xe7, 0xdf, 0xff, 0xe7, 0xf3, 0xed, 0xd9, 0xf1, 0xe1, 0xa0, 0xe8, 0xb0, 0x94, 0xd0, 0xa1, 0x6c, 0xd8, 0xd2, 0x6c, 0xd9, 0xf2, 0xf4, 0xfc, 0xea, 0xfb, 0xf6, 0xfb, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xfd, 0xff, 0xfc, 0x21, + 0x5c, 0x10, 0x00, 0x00, 0x00, 0x00, 0x01, 0x21, 0xf9, 0x7e, 0xfe, 0xfe, 0xdc, 0xff, 0xd4, 0xa0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0c, 0x54, 0x68, 0x7c, 0x04, 0xf8, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xbf, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1c, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x05, 0x0f, 0x0f, 0x3f, 0x3f, 0x7f, 0x7e, 0xfe, + 0xfe, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x04, 0x05, 0x0b, 0x0b, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xf9, 0xe1, 0x87, 0x21, 0x8f, 0x67, 0x8f, 0x3f, 0xdf, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x0f, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x05, 0x01, 0x07, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, 0x03, 0x05, 0x01, 0x03, 0x23, 0x0d, 0x9f, 0x5f, 0x9e, 0xfc, 0xdf, 0xf2, 0xdf, 0xcd, 0xff, 0xfc, 0xaa, 0xfc, 0x9e, 0xee, 0xff, 0xff, 0xcf, 0xfe, 0x4e, 0x8a, 0x84, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xdb, 0xd3, 0xc8, 0x40, 0x58, 0xe0, 0xb9, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfa, 0xf4, 0xf0, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x0a, 0x7e, 0x2c, 0x1d, 0x9e, 0xcf, 0xe7, 0xf3, 0xf2, 0xff, 0xb7, 0x9f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x07, 0xff, 0xff, 0xff, 0xfe, 0xfd, + 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xd4, 0xff, 0xff, 0xf9, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0x18, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xf8, 0xf0, 0x90, 0xfc, 0xfe, 0xff, 0xfc, 0x70, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xff, 0x1f, 0xdf, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7e, 0x7c, 0x7c, 0x7c, 0x7c, 0x7e, 0x7e, 0x7e, 0x3f, + 0x7f, 0x3f, 0x1f, 0x4e, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x80, 0x80, 0x80, 0x20, 0x80, 0xc0, 0x00, 0xc0, 0x00, 0x00, 0x34, 0x30, 0x7c, 0x7d, 0xf8, 0x7c, 0x70, 0xa0, 0x70, 0x40, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x0f, 0x01, 0x0f, 0x1f, 0x1f, 0x00, 0x07, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xf8, 0xd8, 0xf1, 0xde, 0xe9, 0xe5, 0xd1, 0xe9, 0xf5, 0xe0, 0xe8, 0xd8, 0x80, 0x61, 0xc0, 0xf0, 0xd8, 0xec, 0x30, 0xd8, 0xb2, 0xb9, 0xb2, 0xe8, 0xd2, 0xf8, 0xe2, 0xf8, 0xfa, 0xfb, 0xfc, 0xfb, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0xff, 0x7b, 0xfa, 0xd0, + 0x19, 0x42, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x7e, 0xd7, 0xff, 0xf7, 0xfe, 0xf0, 0xf4, 0xd0, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x04, 0x4c, 0x9a, 0x7c, 0x7f, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1e, 0x09, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x07, 0x07, 0x17, 0x2f, 0x3f, 0x3f, + 0x3f, 0x7f, 0xfc, 0x7e, 0xfc, 0x7c, 0xfc, 0xf4, 0xf0, 0xe0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x03, 0x09, 0x0f, 0x37, 0x1f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xef, 0xff, 0xff, 0xf8, 0xe1, 0x17, 0x05, 0x07, 0x2f, 0x0f, 0x9f, 0x9f, 0x0f, 0x0f, 0x07, 0x0f, 0x07, 0x03, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xc0, 0x08, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x01, 0x03, 0x01, 0x01, 0x01, 0x9f, 0x9f, 0x6f, 0xef, 0xce, 0xec, 0xfb, 0xa7, 0xb4, 0xbd, 0x7b, 0xb6, 0x95, 0x4f, 0x5f, 0xa7, 0xff, 0xdf, 0x86, 0x84, 0x8a, 0x80, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x72, 0xb0, 0x90, 0x9c, 0x34, 0xec, 0xbf, 0xfc, 0xfd, 0xfe, 0x7f, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0x40, 0x00, 0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x1f, 0x0f, 0x37, 0x77, 0xf3, 0xf9, 0xf9, 0xf8, 0xee, 0x12, 0x0f, 0x0b, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xc0, 0x80, 0x80, 0x81, 0x61, 0x01, 0x01, 0xf1, 0xf8, 0xf8, 0xf8, + 0xf8, 0xf8, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xf2, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x90, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40, 0x80, 0xa0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xfe, 0xfe, 0xfc, 0x06, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfe, 0xfc, 0x2f, 0x0f, 0x27, 0x37, 0x2f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0xbf, 0x3f, 0x3f, 0x3e, 0x3e, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x1f, 0x1f, 0x0f, 0x00, 0xc0, 0x28, 0xc0, 0xf0, 0xe0, 0xd8, 0xc8, 0xe0, 0xd8, 0xe0, 0x50, 0xe8, 0xa0, 0x1a, 0x44, 0x46, 0x06, 0x0f, 0x0f, 0x0f, 0x0f, 0x8f, 0xef, 0xee, 0xf8, 0xfe, 0x78, 0xe8, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x07, 0x00, 0x03, 0x07, 0x07, 0x03, 0x01, 0x83, 0x0f, 0x9f, 0xbf, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xdc, 0xf4, 0xe4, 0xe8, 0xf4, 0xe4, 0xe8, 0xb0, 0xc8, 0x60, 0x70, 0xc0, 0xc0, 0x80, 0xe0, 0x38, 0xd0, 0xf0, 0xfa, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0xaf, 0x62, 0x08, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x0b, 0x0f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7e, 0x7d, 0x7f, 0xfc, 0xfd, 0xf8, 0xfc, 0xf0, 0xfc, 0xf0, 0xe0, 0xc0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x04, 0x49, 0x80, 0xbc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x17, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x03, 0x03, 0x01, 0x01, 0x03, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, 0x06, 0x0f, 0x0f, 0x0f, 0x1f, 0x3f, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0x7e, 0xb9, 0xbf, 0x9f, 0x9f, 0xff, 0xff, 0xff, 0xbf, 0x7d, 0x8e, 0x80, 0x88, 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, + 0xf8, 0xf8, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x06, 0x18, 0x4c, 0x28, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x93, 0x0f, 0x8f, 0xc7, 0xef, 0xdf, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xdf, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xd7, 0xe6, 0x85, 0x46, 0x41, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x0c, 0x0c, 0x04, 0x06, 0x07, 0x07, 0x07, 0x07, 0x0b, 0x1f, 0x3f, 0xff, 0xc2, 0x01, 0x1f, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x9a, 0x84, 0x5c, 0xa4, 0xfc, 0xf6, 0xfc, 0xfc, 0x7f, 0xfe, 0xbf, 0xfe, 0xfc, 0xf8, 0xc0, 0x80, 0x00, 0x06, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x03, 0x07, 0x1f, 0x77, 0xf3, 0xfd, 0xfd, 0xfc, 0xfb, 0x53, 0x07, 0x13, 0x05, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0xc1, 0xc3, 0xc3, 0x01, 0x00, 0xc0, 0xc0, 0xe0, + 0xc0, 0xc0, 0xf0, 0xe0, 0xfe, 0xff, 0xff, 0xfe, 0x70, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x30, 0x18, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0xb0, 0x40, 0x40, 0xe0, 0xe0, 0xc0, 0xe0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf8, 0xfc, 0xfa, 0x44, 0xff, 0xff, 0xff, 0xff, 0x7b, 0xff, 0xf9, 0xf1, 0xf8, 0xf0, 0x3f, 0x1f, 0x1f, 0x8f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, + 0xfc, 0xfc, 0xfc, 0x78, 0xa0, 0xe0, 0xf0, 0xc8, 0xf0, 0xf8, 0xec, 0xf8, 0xf0, 0xf0, 0xfc, 0xf0, 0xf8, 0xe8, 0xfa, 0xde, 0x1f, 0x1f, 0x3f, 0x1f, 0x0f, 0x3f, 0x1f, 0x9f, 0xdf, 0xfe, 0xfc, 0xfe, 0xfc, 0xd0, 0x00, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x02, 0x07, 0x0f, 0x0f, 0x0f, 0x80, 0x0f, 0x1f, 0x3f, 0xff, 0xff, 0xfe, 0xfc, 0xec, 0xe8, 0xf4, 0xf8, 0xfc, 0xc8, 0xf0, 0xc4, 0xf0, 0xb0, 0xc8, 0x20, 0xc8, 0xc0, 0xb4, 0xd2, 0xe8, 0xfd, 0xf0, 0xef, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0x37, 0x5f, 0x01, + 0x10, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x06, 0x0f, 0x07, 0x0f, 0x2f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf0, 0xf4, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x05, 0x93, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x5f, 0x3f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x03, 0x01, 0x03, 0x01, 0x03, 0x01, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x0f, 0x1f, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0xf7, 0x5f, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x79, 0x40, 0xf0, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x40, 0x70, 0x78, 0xf8, 0xd4, 0xfe, 0xfe, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xfe, + 0x0d, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0xb0, 0x18, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x6b, 0x8f, 0x7f, 0x5f, 0xff, 0xbf, 0xff, 0xff, 0xef, 0xff, 0xfc, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbe, 0xee, 0x04, 0xc4, 0x49, 0x08, 0x80, 0xa0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x30, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x7d, 0xf8, 0x80, 0x03, 0x0f, 0x7f, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0xe0, 0xa4, 0x90, 0x10, 0xe8, 0x58, 0x60, 0xf8, 0x3c, 0xfc, 0x7e, 0x7f, 0xfc, 0xe4, 0xf0, 0xc0, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x07, 0x03, 0x13, 0x7b, 0xf3, 0xf1, 0xf9, 0xfc, 0xf5, 0x08, 0x08, 0x0b, 0x0d, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x05, 0x07, 0x00, 0x00, 0x00, 0x80, + 0x80, 0x80, 0x80, 0xb0, 0xfc, 0xfe, 0xfc, 0xf7, 0xb8, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x40, 0x50, 0x70, 0x60, 0x38, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0xc0, 0x80, 0xe0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xc0, 0x60, 0xfc, 0xfe, 0xfc, 0xf0, 0xbe, 0xfe, 0xe7, 0xe3, 0xe0, 0xc0, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf8, 0xf8, 0xf8, 0xf0, 0x80, 0xa0, 0x00, 0xa0, 0xd0, 0xe0, 0xe0, 0xd0, 0xe8, 0xe0, 0xf8, 0xf8, 0xfd, 0xf4, 0xfd, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x7e, 0x7c, 0xfc, 0x7c, 0xf0, 0xf4, 0xd8, 0xf8, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0x3f, 0x00, 0x1f, 0x3f, 0x3f, 0x7f, 0x03, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xfd, 0xd0, 0xe1, 0xe3, 0x93, 0x93, 0xa3, 0xe3, 0x83, 0x63, 0x83, 0x01, 0x41, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0xa1, 0x63, 0xc1, 0xd1, 0xf1, 0xf8, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x37, 0x0b, + 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x20, 0x1e, 0x2f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xec, 0xf4, 0xd8, 0xe0, 0xd0, 0xd0, 0x40, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x0a, 0x00, 0x04, 0xd8, 0xf4, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xff, 0xfc, 0xf0, 0xc2, 0x40, 0x28, 0x9d, 0xff, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x5f, 0x1f, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x07, 0x07, 0x83, 0x83, 0xc3, 0xe1, 0xc0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xe0, 0x83, 0x16, 0x1f, 0x07, 0x7f, 0x2f, 0xdf, 0xbf, 0x97, 0x8b, 0xcf, 0x41, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x06, 0x06, 0x06, 0x06, 0x0f, 0x0f, 0x1f, 0x1f, 0xbf, 0xff, 0xbf, 0x0f, 0x1f, 0xff, 0xff, 0xe3, 0x81, 0x00, 0x00, 0x00, + 0x00, 0x03, 0x03, 0x07, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x03, 0x05, 0x03, 0x07, 0x03, 0x03, 0x1b, 0x27, 0x7f, 0x7f, 0xff, 0x7f, 0xff, 0x7b, 0xff, 0xff, 0xff, 0xfb, 0xea, 0xf8, 0xb6, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x78, 0x3b, 0x05, 0x14, 0x04, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x0c, 0x0c, 0x06, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0xf8, 0xc0, 0x00, 0x07, 0x3f, 0x3f, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, 0x02, 0x01, 0x00, 0x00, 0x60, 0x60, 0xe0, 0xb0, 0xb4, 0xb8, 0xec, 0xf8, 0xf8, 0xf4, 0xf8, 0x7c, 0xf8, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x05, 0x08, 0x0e, 0x20, 0x04, 0x8f, 0x4f, 0x8f, 0x47, 0xf7, 0xf7, 0x77, 0xf1, 0xbf, 0x01, 0x04, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, 0x00, 0x80, 0xe0, 0xf0, 0xf8, 0xf0, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0x60, 0xe0, 0x60, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x87, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x3c, 0x3c, 0x00, 0x01, + 0x01, 0x01, 0x03, 0x01, 0x01, 0x00, 0x00, 0x80, 0x00, 0x40, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0xc8, 0xf4, 0xea, 0xf8, 0xfd, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xf0, 0xf0, 0xea, 0xf8, 0xf4, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x20, 0xa0, 0x40, 0xe0, 0x90, 0x43, 0xf7, 0x03, 0x83, 0x05, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x80, 0xa0, 0xb0, 0xec, 0xf8, 0xfc, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x17, + 0x07, 0x87, 0xc7, 0xc7, 0xcf, 0xe7, 0xef, 0xe7, 0x4f, 0x0f, 0x07, 0xcf, 0xcf, 0xdf, 0xd7, 0xf9, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfe, 0xfc, 0xfc, 0xfd, 0xae, 0xf6, 0xc0, 0xfc, 0xf7, 0xfd, 0xff, 0xff, 0xfe, 0xfd, 0xfd, 0xf4, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x10, 0x00, 0xa7, 0xdc, 0xfb, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x3f, 0x5f, 0x3f, 0x1f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, + 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0xbf, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x0f, 0x82, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0x7c, 0x3c, 0x1d, 0x08, 0x08, 0x1e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x8f, 0xff, 0xff, 0xff, 0xff, 0x63, 0x01, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x3f, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0x00, 0x20, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x3f, 0x7f, 0x3f, 0x0f, 0x07, 0x07, 0x0f, 0x17, 0x0f, 0x0f, 0x2f, 0x03, 0x1b, 0x41, 0x04, 0x0f, 0x0e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x67, 0xe7, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0f, 0x1f, 0x1f, 0x0f, 0x0c, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x17, 0x07, 0x03, 0x07, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x20, 0x20, 0xb0, 0xd8, 0x90, 0x14, 0xd0, 0x10, 0xb8, 0x7c, 0xa0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x10, 0x07, 0x02, 0x00, 0x00, 0x0e, 0x47, 0x47, 0xe7, 0x47, 0x43, 0x03, 0x70, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xc0, 0xc0, 0x52, 0x2b, 0xff, 0xff, 0x7f, 0x3c, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x68, 0xe0, 0xf8, 0xf4, 0xf8, 0xfc, 0xf8, 0xf0, 0xf0, 0xf8, 0xf0, 0x78, 0xf0, 0xb0, 0x20, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xe4, 0xe0, 0xfa, 0xfc, 0xf6, 0x7a, 0x7d, 0x3f, 0x3f, 0xbf, 0xff, 0xef, 0xe0, 0xe0, + 0xf1, 0xe1, 0x00, 0x03, 0x01, 0x81, 0xe1, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x01, 0x40, 0xc0, 0x00, 0x00, 0x15, 0xf0, 0xe1, 0xec, 0xf1, 0xec, 0xc1, 0x15, 0xa2, 0x48, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x07, 0x2f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xf7, 0xcf, 0xff, 0xfe, 0xfe, 0xfe, 0xab, 0x6f, 0x7f, 0x2f, 0xbf, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, + 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xec, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfb, 0xfc, 0xfc, 0xff, 0xfe, 0x17, 0x4c, 0xd4, 0xe1, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfb, 0xf2, 0xf0, 0xe0, 0xb0, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0xfc, 0x3c, 0x10, 0x00, 0x00, 0x0c, 0x0f, 0x7f, 0xff, 0xff, 0xf1, 0x01, 0x1f, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x00, 0x00, 0x01, 0x07, 0x03, 0x07, 0x0b, 0x0f, 0x2f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5b, 0x7e, 0x10, 0x48, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x07, 0x02, 0x3f, 0x7f, 0x7f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x0a, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x07, 0x0f, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0x1f, 0x1f, 0x0c, 0x01, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x03, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x41, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x90, 0x90, 0x90, 0x90, 0xd8, 0x40, 0x94, 0x10, 0x18, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0a, 0x12, 0x0f, 0x03, 0x03, 0x07, 0x04, 0x27, 0xe7, 0xe3, 0x43, 0x43, 0x42, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x0a, 0x72, 0x37, 0x3a, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0xc0, 0xc0, 0x20, 0x60, 0x28, 0x18, 0x14, 0x78, 0x7c, 0x38, 0x1c, 0x18, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x00, 0x20, 0x20, 0x00, 0x12, 0x1c, 0x04, 0x0d, 0x08, 0xf2, 0xf1, 0xf2, 0xf1, 0xf9, 0xf8, 0xf8, 0x80, + 0x00, 0x00, 0x80, 0xf1, 0xfb, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x92, 0x71, 0xec, 0xf0, 0xea, 0xd0, 0x8c, 0xb0, 0xd4, 0x40, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xfb, 0x67, 0x57, 0xff, 0xff, 0xff, 0xfb, 0x9b, 0x1f, 0x17, 0x7f, 0x1f, 0x6f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x80, 0xc0, 0xe0, 0x60, 0xa0, 0xc0, 0xc0, 0xfc, 0xe4, 0xf8, 0x5c, 0xf4, 0xd0, 0xa0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x03, 0x17, 0x03, 0x13, 0x0d, 0x15, 0x24, 0xbd, 0x51, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfe, 0xfe, 0x18, 0x0c, 0x00, 0x02, 0x02, 0x1f, 0x3f, 0xff, 0xff, 0xf8, 0xc0, 0x03, 0x3f, 0xff, 0xff, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x05, 0x03, 0x07, 0x1f, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x01, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0x7f, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0xa7, 0xe5, 0xfa, 0xf5, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc3, 0xc0, 0xc0, 0x40, 0x00, 0x0e, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1f, 0x1f, 0x1e, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x20, 0xe0, 0x4c, 0x70, 0xf8, 0xf0, 0xf8, 0xf4, 0xc8, 0x00, 0x00, 0xc8, 0xd8, 0x98, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x27, 0x0d, 0x05, 0x03, 0x07, 0x03, 0x33, 0x83, 0xe2, 0x6b, 0x7b, 0x61, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x08, 0x10, 0xd8, 0xe2, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x78, 0x78, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xfc, 0xf8, + 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xb0, 0xd8, 0x20, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x15, 0xa0, 0x3b, 0xfc, 0x4d, 0xb0, 0x82, 0x40, 0x12, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xe1, 0xf5, 0xf9, 0xd1, 0x81, 0x01, 0x71, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xfd, 0xe3, 0x87, 0x1f, 0x7f, 0xff, 0xff, 0xf8, 0xe1, 0x82, 0x07, 0x07, 0x15, 0x0f, 0x17, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x3f, 0x1f, 0x3f, + 0x1f, 0x0f, 0x03, 0x06, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x60, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x02, 0x05, 0x04, 0x12, 0x00, 0x08, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xff, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0xff, 0xff, 0xfc, 0xf0, 0xe3, 0x0f, 0x1f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xbc, 0xd8, 0xfe, 0xfe, 0xff, 0xf5, 0xfe, 0x5e, 0x7d, 0xff, 0xce, 0xfd, 0xe0, 0xff, 0xf0, 0xf0, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x60, 0x94, 0xf9, 0xfb, 0xfe, 0xbc, 0x7c, 0xea, 0xe2, 0xc0, 0xa0, 0xa4, 0xec, 0xa4, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x00, 0x09, 0x01, 0x00, 0x08, 0x01, 0x20, 0x79, 0x39, 0x3c, 0x5c, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xf0, 0x80, 0xc0, 0xf8, 0xe0, 0xf1, 0xfc, 0xfd, 0xff, 0xff, 0xfc, 0xfe, 0xfe, 0xfe, 0xf8, 0xf0, 0xe0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x8f, 0x8f, 0xef, 0x3f, 0x9f, 0x1f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x3f, 0x17, 0x3f, 0xbf, 0x3f, 0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1a, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x2c, 0x10, 0x04, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0x7f, 0x0d, 0x01, 0x03, 0x00, 0x01, 0x00, 0x00, 0x01, 0x1f, 0x7f, 0xff, 0xff, 0xfe, 0xf8, 0xc3, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x08, 0x3c, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x1f, 0x3f, 0x3f, 0x1f, 0x0c, 0x11, 0x1b, 0x2f, 0x0f, 0xdf, 0x1a, 0x04, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xd0, 0xc0, 0xd0, 0xfc, 0x00, 0x58, 0x25, 0x2c, 0xfb, 0x2d, 0xea, 0xd6, 0xc5, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x64, 0x7e, 0xbb, 0x7c, 0x7f, 0x9e, 0xef, 0xff, 0xf2, 0xf4, 0xf0, 0xf2, 0x72, 0x76, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0c, 0x03, 0x01, 0x00, 0x0c, 0x0c, 0x1e, 0x3e, 0x3e, 0x1e, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xf1, 0xf2, 0xf2, 0xf9, 0xef, 0xfb, 0xfb, 0xff, 0xff, 0xfe, 0xff, 0xfa, 0x3c, 0xc0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xeb, 0xf7, 0xd7, 0xff, 0xcf, 0x4f, 0x0f, 0x0f, + 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x1f, 0x0f, 0x1f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0c, 0x34, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1a, 0x00, 0x21, 0x44, 0x00, 0x8a, 0x80, 0x60, 0x00, 0x40, 0x00, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xfc, 0xff, 0xff, 0x3f, 0x1f, 0x47, 0x42, 0x00, 0x61, 0x00, 0x20, 0x00, 0x00, 0x05, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xf8, 0xc0, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xf0, 0x40, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x00, 0x0c, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x9e, 0xbf, 0x9d, 0xbb, 0xff, 0x1b, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x80, 0xe0, 0xf0, 0xe8, 0xe8, 0x50, 0xf4, 0x28, 0xff, 0xf4, 0xdd, 0xef, 0xee, 0xd0, 0xc6, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x8a, 0xf3, 0xbf, 0xbe, 0x5f, 0x7f, 0x3f, 0x7f, 0x38, 0x3a, 0x70, 0x39, 0xbd, 0x3b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x01, 0x00, 0x02, 0x05, 0x0b, 0x3f, 0x2f, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfd, 0xff, 0xfc, 0xfa, 0xf8, 0x38, 0x38, 0x38, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x68, 0x04, 0xd0, 0x40, 0x80, 0x20, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xe0, 0xf0, 0xfc, 0xfc, 0xf0, 0xf5, 0xf1, 0x47, 0x03, 0x07, 0x0f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x84, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0b, 0x1b, 0xbc, 0x7e, 0x15, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x06, 0x09, 0x0f, 0x7a, 0x00, 0x2e, 0x24, 0x53, 0x6c, 0xb4, 0x60, 0x70, 0x18, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf1, 0xc7, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x01, 0x08, 0x00, 0x04, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x11, 0x01, 0x50, 0x80, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x40, 0x74, 0xb8, 0x38, 0xbd, 0xfe, 0x7f, 0x7f, 0xdf, 0x3f, 0x1f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xc8, 0x68, 0x68, 0xb2, 0x6c, 0xff, 0xfe, 0xde, 0xde, 0xe7, 0xd8, 0xc7, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x20, 0x88, 0x08, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0xc0, 0x80, 0x80, 0xe2, 0x43, 0x00, 0x86, 0x40, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05, 0x02, 0x02, 0x01, 0x02, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc8, 0xdc, 0xff, 0x7f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7c, 0x78, 0x7c, 0x31, 0xb9, 0x3b, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x02, 0x01, 0x00, 0x06, 0x01, 0x27, 0x4f, 0x1f, 0x1f, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3c, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf8, 0x38, 0x30, 0x10, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x50, 0x60, 0xa0, 0xd0, 0x5a, 0xe4, 0x5a, 0xd4, 0xca, 0x10, 0x44, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf8, 0xfc, 0xf0, 0xf8, 0xf4, 0xe7, 0x03, 0x07, 0x07, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x1f, 0x7e, 0xff, 0xff, 0x7b, 0x0a, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x11, 0x06, 0x64, 0x1b, 0xe0, 0x3b, 0xbe, 0xf5, 0xf8, 0xf6, 0xfd, 0xf4, 0xf0, 0xf9, 0x68, 0x28, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0xa0, 0x38, 0x24, 0x82, 0xd8, 0xf4, 0xe4, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xfc, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x03, 0x0b, 0x05, 0x1c, 0x63, 0x0e, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x40, 0x20, 0xa1, 0xa0, 0x23, 0x87, 0x87, 0x07, 0x07, 0x27, 0x07, 0x03, 0x03, 0x21, 0x60, 0x10, 0x40, 0x74, 0x78, 0xec, 0xf4, 0xd8, 0xcb, 0x7e, 0xe2, 0x0e, 0x18, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x48, 0x70, 0x3c, 0x7e, 0x7c, 0xfe, 0xff, 0xce, 0xde, 0xca, 0xcd, 0x87, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x60, 0x88, 0xa8, 0x94, 0x00, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x88, 0x9e, 0x1e, 0x18, 0x04, 0x00, 0x0a, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x08, 0x00, 0x01, 0x10, 0x05, 0x02, 0x11, 0x09, 0x04, 0x03, 0x04, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0xf8, 0x3b, 0xbc, 0x3c, 0x84, 0x3d, 0xf1, 0xc8, 0xe0, 0xf0, 0x76, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, 0x01, 0x00, 0x00, 0x00, 0x08, 0x04, 0x14, 0x3c, 0x1e, 0x3e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x4e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x40, 0xb0, 0xa0, 0xe0, 0xf8, 0xec, 0xf4, 0xd8, 0xd4, 0xe0, 0x7c, 0x70, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xe8, 0xe0, 0xfc, 0xe0, 0xe8, 0xa0, 0x00, 0x04, 0x0d, 0x0f, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0xfe, 0xfe, 0xfe, 0xfc, 0x78, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x3f, 0x14, 0xbf, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf6, 0x9a, 0xea, 0xa3, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x30, 0x00, 0xa0, 0x20, 0xc4, 0x10, 0x24, 0x10, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, + 0xfe, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x03, 0x07, 0x1f, 0x3f, 0x7f, 0xfc, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x04, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x01, 0x0f, 0x0e, 0x0f, 0x87, 0x0f, 0xcf, 0x5f, 0x07, 0xd7, 0xf7, 0xe1, 0x6f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x18, 0x05, 0x26, 0x02, 0x18, 0x0b, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1e, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x43, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x03, 0x07, 0x0f, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xc0, 0xf0, 0xf0, 0xe4, 0x6c, 0xf8, 0x20, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x60, 0x60, 0x05, 0x13, 0x0f, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x80, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x10, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xe8, 0xf0, 0xfa, 0xf6, 0x70, 0xc9, 0xc0, 0xb0, 0x80, 0xc8, 0xd8, 0xbc, 0x08, 0x00, 0x00, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0b, 0x01, 0x00, 0x02, 0x03, 0x00, 0x39, 0xea, 0x7b, 0x7b, 0x3b, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x10, 0xc0, 0x50, 0xd0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xd4, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc2, 0x40, 0xe4, 0xad, 0xe6, 0xf9, 0xfa, 0xe6, 0xfa, 0xf8, 0xfc, 0xf4, 0xe0, 0xc8, 0xc0, 0x30, 0x80, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xd0, 0x80, 0x20, 0x20, 0x10, 0x48, 0x10, 0x5f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0xfe, 0xfe, 0xff, 0xfe, 0xfd, 0xff, 0x78, 0x0c, 0x1b, 0x00, 0x02, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x56, 0x75, 0x3d, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfe, 0x7b, 0x76, 0x38, 0x08, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x40, 0x80, 0x50, 0xc0, 0xb0, 0x80, 0x40, 0xc8, 0xa0, 0x40, 0x08, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x01, 0x07, 0x3f, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xba, 0x28, 0x20, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x05, 0x07, 0x23, 0x0f, 0xaf, 0x3f, 0x9f, 0xbf, 0x3f, 0x1f, 0x9f, 0xbf, 0x8f, 0xb7, 0x07, 0x00, 0x00, 0x00, 0x00, 0x08, 0x44, 0x2c, 0x7b, 0xda, 0x3d, 0xa0, 0x37, 0xc9, 0x02, 0x08, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x3c, 0x3c, 0x3e, 0x3e, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x3f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x40, 0x80, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x20, 0x37, 0x45, 0x6f, 0x1e, 0x3f, 0x0d, 0x01, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xb8, 0xd0, 0xe4, 0xf8, 0x7e, 0xf2, 0xdc, 0x84, 0x50, 0x90, 0x90, 0xb8, 0xb8, 0x00, 0x00, 0x60, 0x90, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x07, 0x05, 0x01, 0x0b, 0x00, 0x33, 0xf6, 0xe7, 0xf7, 0xf7, 0x9f, 0x17, 0x07, 0x66, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x2c, 0x78, 0xfc, 0xf0, 0x70, 0x68, 0x70, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0xe7, 0x3c, 0x90, 0x80, 0x00, 0x40, 0x80, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x80, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xb2, 0xdd, 0xdd, 0xe9, 0xf7, 0xf6, 0xfa, 0xff, 0xf4, 0xff, 0xf8, 0xfc, 0xe8, 0xf0, 0xc8, 0x40, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xe0, 0xe0, 0xc0, 0xf0, 0x20, 0x20, 0x00, 0x30, 0x6d, 0x6f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x3e, 0x2f, 0x19, 0x06, 0x02, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x56, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf9, 0x1e, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0xa0, 0x60, 0xf0, 0x40, 0xb0, 0x90, 0x62, 0xc0, 0xb0, 0xb0, 0x48, 0x28, 0x14, 0x12, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x02, 0x14, 0xdc, 0xf2, 0x58, 0x05, 0x00, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x05, 0x07, 0x0f, 0x17, 0x1f, 0x1f, 0x9f, 0xbf, 0xff, 0x1f, 0x9f, 0xbf, 0xbf, 0xcf, 0xe7, 0x07, 0x01, 0x00, 0x02, 0x04, 0x40, 0x38, 0xdf, 0xdb, 0x5e, 0xfb, 0x17, 0xf9, 0x7b, 0x26, 0x0d, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3c, 0x3e, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x02, 0xf0, 0x13, 0xbf, 0x3f, 0x1f, 0x3c, 0x0d, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x81, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xa0, 0xb0, 0xfa, 0xfa, 0xfa, 0xfa, 0xa0, 0x08, 0xe0, 0x00, 0x30, 0xf0, 0x70, 0x30, 0x00, 0x80, 0x50, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x39, 0x03, 0x01, 0x03, 0x66, 0x27, 0xe5, 0xe6, 0xe7, 0xf7, 0x37, 0x37, 0x67, 0xc4, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x1a, 0x34, 0x1e, 0x7a, 0x3e, 0x38, 0x10, 0x18, 0x00, 0x00, 0xc0, 0x00, 0x80, 0x20, 0xc0, 0x20, 0x00, + 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0xc9, 0x80, 0x40, 0x00, 0x80, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x30, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xa0, 0x80, 0x40, 0x80, 0x80, 0x40, 0x80, 0x00, 0x40, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xa0, 0xaa, 0xed, 0xf9, 0xf8, 0xff, 0xfe, 0xfd, 0xfe, 0xfe, 0xfc, 0xfa, 0xf8, 0xe2, 0xd0, 0xd0, 0x40, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfa, 0xf4, 0xec, 0xcc, 0x44, 0x08, 0x02, 0x16, 0x03, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x2f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x0f, 0x09, 0x05, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1e, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfe, 0xfe, 0x1e, 0x01, 0x00, 0x80, 0x80, 0x20, 0xc8, 0xa0, 0x00, 0xf8, 0x40, 0xf0, 0xa0, 0xea, 0xa0, 0xb0, 0xea, 0x58, 0x16, 0x32, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x1f, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xa0, 0xbe, 0xf4, 0x32, 0x2a, 0x05, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x05, 0x07, 0x07, 0x8f, 0x1f, 0xbf, 0xbf, 0xdf, 0x5f, 0xbf, 0x9f, 0xff, 0xf7, 0x47, 0x03, 0x00, 0x00, 0x00, 0x6c, 0x24, 0xaf, 0xf2, 0x7d, 0xfd, 0x79, 0x6f, 0x35, 0x4d, 0x06, 0x17, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x40, 0x40, 0x80, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x00, 0xe0, 0x10, 0x51, 0xbb, 0xbf, 0x1f, 0x3f, 0x0f, 0x06, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc2, 0xc0, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x91, 0xf0, 0xfe, 0xfc, 0xfe, 0xfe, 0xfb, 0xc8, 0xe0, 0x20, 0xb0, 0xf4, 0xfc, 0x30, 0x14, 0xfc, 0xe8, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x13, 0x0f, 0x0b, 0x27, 0x47, 0x45, 0xc7, 0x9f, 0xde, 0xff, 0x7f, 0x7b, 0x1e, 0x18, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, 0xa0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x0e, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x50, 0x10, 0x00, 0x00, 0x00, 0x01, 0x05, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x80, 0x44, 0xa4, + 0xaa, 0x94, 0xf0, 0xe8, 0xd0, 0x90, 0xe0, 0xc0, 0x40, 0x40, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x32, 0x20, 0x00, 0x20, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xfc, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0xf0, 0xf8, 0xfc, 0xf8, 0xf8, 0xfa, 0xfc, 0xfc, 0xfd, 0xfc, 0xfd, 0x3a, 0x7a, 0x7d, 0x0c, 0x32, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xb4, 0x7f, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfe, 0xf8, 0xfc, 0xf2, 0x08, 0x00, + 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x80, 0x80, 0xc0, 0xa0, 0xc0, 0xc0, 0xc0, 0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0xe8, 0x12, 0x9c, 0xa0, 0x48, 0x90, 0x01, 0x17, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x1f, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0xc0, 0x69, 0xd4, 0xf7, 0xf8, 0xfd, 0xfc, 0xfd, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0x7e, 0xbf, 0x3f, 0x1f, 0x27, 0x0f, + 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1e, 0x3e, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x04, 0x0b, 0x2f, 0x6d, 0x1f, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x0c, 0xdf, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x00, 0x00, 0x40, 0x09, 0xf5, 0x7f, 0x7f, 0x7f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0b, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0xe0, 0x40, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xd0, 0xf0, 0xe8, 0xe0, 0xf8, 0xe8, 0xe8, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x00, 0x6c, 0xd8, 0xfe, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xbf, 0x43, 0x03, 0x00, 0x80, 0x02, 0x41, 0x00, 0xc0, 0x12, 0x9c, 0x3e, 0x38, 0x79, 0x39, 0x31, 0x60, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0x0a, 0x52, 0x7f, 0x1d, 0x76, 0x11, 0x09, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x8e, 0xf2, 0x10, 0xb0, 0xfc, 0xfc, 0x98, 0x28, 0xfd, 0xfc, 0xfa, 0xf8, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x0f, 0x03, 0x23, 0x6d, 0x77, 0xc6, 0xcf, 0xdb, 0xdf, 0x7f, 0x7f, 0x7f, 0x1f, 0x5a, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x80, 0xe0, 0xe0, 0xe0, 0xf0, 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x07, 0x00, 0x00, 0x0c, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x40, 0x40, 0x30, 0xbc, 0x40, 0xf4, 0x08, 0x50, 0xc0, 0x05, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xa4, + 0xfb, 0xca, 0xf8, 0xf1, 0xfc, 0xfa, 0xee, 0xf8, 0xe8, 0xe4, 0xd0, 0xe0, 0xe0, 0x20, 0x80, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x34, 0x31, 0x10, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7d, 0x1f, 0x1f, 0x1f, 0x0f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0x78, 0x02, + 0x00, 0x80, 0x40, 0x80, 0x00, 0x00, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xd0, 0xd0, 0xe0, 0xa0, 0xe0, 0xf0, 0xc0, 0xe0, 0xe8, 0xd0, 0xf0, 0x30, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0x7f, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xf0, 0xe0, 0xd2, 0xdc, 0xa6, 0x7a, 0x50, 0x00, 0x07, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x07, 0x28, 0x68, 0xd0, 0xfe, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x9f, 0x3f, 0x7f, + 0x4f, 0x2f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x81, 0x01, 0x15, 0x37, 0x7f, 0x3f, 0x1f, 0x0b, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x80, 0xdd, 0xd7, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x1f, 0x8f, 0xc2, 0x10, 0x74, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xbf, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xe0, 0xe0, 0xe0, 0xa0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xfc, 0xfc, 0xfc, 0x7c, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x48, 0xf8, 0xbd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x93, 0x85, 0x51, 0xe4, 0x8b, 0xe5, 0xd6, 0x9f, 0xcf, 0xdf, 0x1f, 0x3f, 0x3c, 0xfd, 0xb9, 0x7d, 0x8b, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x28, 0x1c, 0xf7, 0x3f, 0x7f, 0x4f, 0x1b, 0x09, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xfe, 0xe9, 0xdc, 0xff, 0xff, 0xd8, 0x3e, 0xff, 0x7f, 0xff, 0xff, 0xfe, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0x13, 0x0d, 0x33, 0x7f, 0xf3, 0xeb, 0xef, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0xcf, 0x05, 0x11, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x78, 0x68, 0xfa, 0xf0, 0xf0, 0xf8, 0xfc, 0x78, 0x7c, 0x24, 0x20, 0xa0, 0x40, 0xa0, 0xe0, 0xc0, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x80, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x0f, 0x06, 0x00, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xd0, 0xe8, 0xe8, 0xfc, 0xfa, 0xfc, 0xfe, 0xff, 0xfb, 0xfe, 0xff, 0x7f, 0x0f, 0x05, 0x00, 0x00, 0x80, 0xf0, 0xe8, + 0xf4, 0xfd, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xfc, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf8, 0x40, 0xe0, 0x40, 0x60, 0x00, 0x0d, 0x3f, 0x3f, 0x1e, 0x18, 0x1c, 0x1c, 0x0e, 0x0f, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x1f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xf7, 0x68, 0xe8, 0xe0, 0xb0, 0xf8, 0xf0, 0xe8, 0xe0, 0xf8, 0xf0, 0xfc, 0xf8, 0xf0, 0xf8, 0xfc, 0xf8, 0xf4, 0xfc, 0xe0, 0xf8, 0xf0, 0xf8, 0xf8, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x70, 0xf0, 0xf8, 0xfe, 0xfe, 0xfe, 0xfc, 0xff, 0xfc, 0x2c, 0x07, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x2f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x7f, 0xbf, 0x3f, 0x0f, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xa8, 0xf0, 0x03, 0x4d, 0xbf, 0x7f, 0x7f, 0x3f, 0x1f, 0x0b, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x10, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xed, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xe7, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0x87, 0x47, 0x87, 0x03, 0x07, 0x01, 0x01, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x14, 0x13, 0x59, 0xa4, 0xba, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9e, 0x02, 0x16, 0x05, 0x0c, 0x78, 0xb5, 0x7c, 0x7e, 0xb9, 0xfa, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x3e, 0xfe, 0x78, 0xe0, 0xcc, 0xf2, 0xfe, 0xff, 0xf7, 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x3f, 0x78, 0xfb, 0xdb, 0x9f, 0xdf, 0xff, 0xff, 0xf7, 0xff, 0x79, 0x5b, 0x2f, 0x03, 0x0d, 0x0f, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xd8, 0xf8, 0xf8, 0xf4, 0xfa, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xf6, 0xfc, 0xea, 0x8e, 0xc4, 0x80, 0x80, 0x00, 0x00, 0x0f, 0x1c, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x01, 0x00, 0x00, 0x03, 0x03, 0x07, 0x81, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0x07, 0x03, 0x43, 0xa7, + 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0xf0, 0xf8, 0xe0, 0xe0, 0x84, 0x9e, 0xfc, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x0b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x04, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xf4, 0xf9, 0xf9, 0xe9, 0xf9, 0xfb, 0xf9, 0xf1, 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xf4, 0xf4, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x11, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x07, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0xec, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x17, 0x17, 0x0f, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x84, 0xf0, 0xfc, 0xfd, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x7f, 0x1f, 0x1f, 0x9f, 0x0f, 0xc3, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x40, 0x2c, 0xf0, 0xf8, 0x0d, 0x77, 0x4f, 0x2f, 0x3f, 0x3f, 0x0f, 0x0f, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa4, 0xf4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xfb, 0xff, 0xf9, 0xf8, 0xe0, 0xf0, 0xfd, 0xf9, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x80, 0x40, 0xd0, 0xf6, 0xfe, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfa, 0x6f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xf8, 0x0b, 0xdb, 0xfb, 0xff, 0xff, 0xf7, 0xf7, 0xf3, 0x7f, 0xff, 0x7f, 0xff, 0x7f, 0x3f, 0x1f, 0x0a, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf8, 0xe0, 0xf8, 0xfc, 0xfc, 0xff, 0xfe, 0xfd, 0xff, 0xfe, 0xff, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0x78, 0xb2, 0x6e, 0x5e, 0x9e, 0x7c, 0x78, 0x3c, 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x01, 0x00, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe8, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x3f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfd, 0xf8, 0xf4, 0xf9, 0xf4, 0xe0, 0xf0, 0xc0, 0xa0, 0x80, 0xc8, 0x70, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x7f, 0x2f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf4, 0xfc, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x00, 0x00, 0xa4, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xfb, 0xfb, 0xe7, 0xc7, 0xc7, 0xd7, 0xc7, 0xc7, 0xc7, 0xc3, 0xc1, 0xe0, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7f, 0x3e, 0x3c, 0x08, 0x0c, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x97, 0x7f, 0xff, 0x1f, 0x1f, 0x1f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe8, 0xb4, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf1, 0xfd, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0x3f, 0x1f, 0x0f, 0x01, 0x00, 0x09, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xec, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x13, 0x05, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xd4, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xaf, 0x8f, 0x3f, 0x8f, 0x87, 0x03, 0x83, 0xa5, 0xc0, 0xf2, 0xf0, 0xf8, 0xfc, 0xfc, 0xce, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0xfe, 0xff, 0xf7, 0xe7, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xfc, 0xfd, 0xfd, 0xfd, 0xf9, 0xef, 0x07, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x0c, 0xeb, 0xff, 0xfb, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x01, 0x00, 0x00, 0x30, 0x38, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xd0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xd0, 0xc0, 0xf8, 0xf8, 0x70, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x03, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xfc, 0xf9, 0xf9, 0xf1, 0xe9, 0xe3, 0xe0, 0xc1, 0xc1, 0xc1, 0x80, 0x80, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfe, 0x3e, 0x1e, 0x0a, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xb0, 0xe0, 0xcc, 0xf4, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x03, 0xc3, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, + 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x8f, 0x8f, 0xcf, 0x9f, 0xcf, 0x9f, 0xcf, 0xdf, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf4, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x02, 0x11, 0x57, 0x7f, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfe, 0xff, 0xff, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xa0, 0x60, 0xe0, 0xe0, 0xc0, 0xc0, 0x40, 0xc0, 0xc5, 0x3f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x6f, 0x0f, 0x8b, 0x39, 0x59, 0x40, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x28, 0x00, 0x0c, 0xa8, 0x5c, 0xb0, 0x24, 0xd8, 0x80, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x7f, 0x0f, 0x12, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x88, 0xe4, 0xe1, 0xfc, 0xfa, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x17, 0x87, 0xc7, 0xc3, 0xe1, 0x40, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xf6, 0xf7, 0xf7, 0xf7, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x3f, 0x0d, 0x25, 0x7c, 0x7c, 0x7c, 0x7c, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x60, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0b, 0x07, 0x3f, 0x07, 0x77, 0x07, 0x2f, 0x03, 0x5f, 0x03, 0x03, 0x83, 0xc1, 0xe0, 0xf0, 0x70, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xef, 0xff, 0xf6, 0xc6, 0xe2, 0xc5, 0xc3, 0xc7, 0x87, 0x87, 0x03, 0x07, 0x01, 0x02, 0x00, 0x40, 0xe0, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xa0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0xff, 0x3f, 0x3f, 0x3f, 0x35, 0x3a, 0x00, 0x08, 0x00, 0x08, 0x60, 0x70, 0x60, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xec, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0e, 0x00, 0x08, 0x38, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xf0, + 0xf0, 0xf0, 0xf0, 0xc0, 0xe0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x5f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x1f, 0x0f, 0x0e, 0x1c, 0x3e, 0x3c, 0x38, 0x10, 0x10, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfe, 0xff, 0xff, 0x7f, 0xdf, 0xff, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x50, 0xd9, 0xf4, 0x50, 0xfc, 0x7c, 0xf8, 0xfa, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x02, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40, 0xc8, 0xf0, 0xf8, 0xf4, 0xf4, 0xf4, 0xb0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf4, 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9c, 0xc4, 0xcc, 0xc4, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xc7, 0xdf, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, + 0x80, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0xbf, 0xbf, 0xbf, 0xbf, 0xdf, 0xdf, 0xff, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf4, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xf7, 0xfd, 0xe2, 0xeb, 0x8b, 0xc7, + 0xc7, 0x07, 0x03, 0x01, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xd7, 0xf5, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xfe, 0xfa, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, + 0xbf, 0xbf, 0xbf, 0xbf, 0x3f, 0xbf, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7e, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xe0, 0xf0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0xf0, 0xf0, 0xfa, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x02, 0x18, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfe, 0xfe, 0xff, 0xf4, 0xfc, 0xf0, 0xf8, 0xf0, 0xf1, 0xc1, 0xe1, 0xc1, 0x01, 0x01, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x3e, 0x1c, 0x7e, 0x3c, 0xf8, 0xb8, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x0b, 0x0f, 0xb7, 0x6f, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xf0, 0xe0, 0xc8, 0xe2, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xf4, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0xe6, 0xe4, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5f, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x9f, 0xbf, 0xbf, 0xff, 0xdf, 0xff, 0xff, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xde, 0xec, 0x99, 0xcb, 0xe3, 0xc7, 0x83, 0x02, + 0x00, 0x00, 0x00, 0x80, 0xe8, 0xfa, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0xf8, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x1f, 0x3f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xbf, 0xff, 0xff, 0x1f, 0xbf, 0x3f, 0x3f, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfd, 0xff, 0xfc, 0xfc, 0xf8, 0xf9, 0xf1, 0xe1, 0xd1, 0x80, 0x56, 0x00, 0x98, 0xb8, + 0xb0, 0xd0, 0xd0, 0xe0, 0x00, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0x7c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x3f, 0x3e, 0x7b, 0xfc, 0x7a, 0xea, 0xe9, 0xfd, 0xff, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x1f, 0x3f, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xc0, 0xe0, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x1f, 0x3f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x03, 0x01, 0x01, 0x03, 0x17, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0xf4, 0xf7, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xfa, 0xfa, 0xf0, 0xc4, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xaf, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe8, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x1f, 0x3f, 0x1f, 0x3f, 0x1f, 0x3f, 0xbf, 0xff, 0xdf, 0xdf, 0xdf, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xfe, 0xf1, 0xc1, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x06, 0x0c, 0x18, 0x10, 0x80, 0x40, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xce, 0xfb, 0xf1, 0xbf, 0xc3, 0xc4, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x58, 0xfc, + 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfa, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0xef, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0xef, 0xef, 0xef, 0xff, 0xcf, 0xdf, 0xef, 0x8f, + 0x1f, 0x8f, 0x5f, 0x3f, 0x3f, 0x7e, 0x7e, 0x7c, 0x38, 0x98, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0xc7, 0xcf, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x0f, 0x03, 0x00, 0x00, 0x01, 0x05, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xf2, 0xfb, 0xfb, 0xde, 0xfe, 0xfc, 0xf8, 0xfc, 0xf8, + 0xf8, 0xf8, 0xf8, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3b, 0x9f, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x5c, 0xb4, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xe0, 0xe0, 0xf1, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0x5f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x04, 0x01, 0x01, 0x01, 0x03, 0x07, 0x07, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xec, 0xee, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd7, 0xf7, 0xfa, 0xfa, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x9f, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, + 0xc0, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x0f, 0x1f, 0x7f, 0x3f, 0x3f, 0x3f, 0xdf, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe0, 0xe5, 0xcb, 0xcf, 0x96, 0x8f, 0xa8, 0x80, 0x00, 0x80, 0x00, 0x12, 0xfd, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xec, 0xf4, 0xda, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xe7, 0xdf, 0xa7, 0xef, 0xaf, 0xdf, + 0x9f, 0x9f, 0x3f, 0x3f, 0x0f, 0xae, 0xcc, 0xcc, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x5f, 0xff, 0xdf, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf0, 0xd0, 0xe8, + 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x3f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0xe0, 0x01, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x17, 0x3f, 0x3f, 0x7d, 0x78, 0xfa, 0xf9, 0xf2, 0xf2, 0xf4, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x17, 0x0f, 0x0f, 0x1f, 0x1f, 0xa7, 0x4f, 0x1f, 0xdf, 0x5e, 0xfc, 0xd0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe3, 0xe1, 0x90, 0xb8, 0x38, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xde, 0xdf, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc2, 0xe0, 0xfb, 0xf2, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x87, 0xe3, 0xff, 0xff, 0xff, 0x17, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x0f, 0x1f, 0x3f, 0x7f, 0x7f, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xdf, 0xff, 0xf6, 0xfd, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xc3, 0xe7, 0xf7, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xf8, 0xf8, 0xe1, 0xe6, 0xc7, 0xc6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xfa, 0x81, 0xe0, 0x58, 0x78, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x1f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xfd, 0xfe, 0x7e, 0xfd, 0x7f, 0x7f, 0x3f, 0x5f, 0xcf, 0xef, 0x4f, 0xef, 0xef, 0xef, 0xe7, 0xe3, 0xf3, 0xd7, 0xc3, 0xd3, 0xe1, 0xc1, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xcf, 0xc3, 0xc3, 0x83, + 0x80, 0x80, 0x00, 0x20, 0x80, 0xe0, 0xc0, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0d, 0x06, 0x04, 0x00, 0x06, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x01, 0x07, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0xc0, 0xc0, 0x80, 0xc1, 0x80, 0x80, 0x80, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xff, 0xfc, 0xff, 0xf8, 0xf0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xe0, 0x80, 0x03, 0x03, 0x07, 0x07, 0x1f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xdf, 0xe3, 0xc3, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xe0, 0xc0, 0x82, 0x03, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x3f, 0x1f, 0x3f, 0x7f, 0x7f, 0x7f, 0x2f, 0x3f, 0x7f, 0x3f, 0xdd, 0xf0, 0xe0, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf0, 0xe4, 0xf8, 0xe4, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xfc, 0xfe, 0xef, 0xef, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xc2, 0xf2, 0xf2, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x05, 0x82, 0xe0, 0xff, 0x9f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x03, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x9f, 0xdf, 0xdf, 0xcf, 0xef, 0xe1, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xfc, 0xf8, 0xfc, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xd0, 0xa0, 0x98, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, + 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xe8, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x7e, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0x3f, 0x1d, 0x4f, 0x03, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xfc, 0xf8, 0x84, 0x08, 0x10, 0x01, 0x03, 0x03, 0x01, 0x01, 0x03, 0x01, 0x01, 0x01, 0x81, 0x81, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0xf0, 0xc0, 0x00, 0xc0, 0x50, 0x80, 0x00, 0x40, 0x03, 0x03, 0x83, 0x03, 0x07, 0x03, 0x07, 0x43, 0xff, 0x73, 0x17, 0x17, 0x0f, 0x0f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xbe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xf8, 0xe0, 0x80, 0x01, 0x01, 0x03, 0x07, 0x07, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfd, 0xfc, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x7f, 0x3f, 0xff, 0x2f, 0x3f, 0x3f, 0x5f, 0x3f, 0x7e, 0x7a, 0x30, 0x80, 0x40, 0x68, 0xaf, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xe3, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0xfc, 0xfe, 0xef, 0xef, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xaf, 0x27, 0x80, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x79, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0b, 0x01, 0x80, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, + 0x0f, 0x1f, 0x1f, 0x8f, 0xdf, 0xcb, 0xcf, 0xcf, 0xe1, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x7c, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3e, 0x30, 0x39, 0x14, 0x1c, + 0x18, 0x3c, 0x38, 0x38, 0x38, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xc1, 0xc1, 0xc1, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0xf8, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfb, 0xff, 0xcf, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfd, 0xf5, 0xa1, 0x01, 0x01, 0x01, 0x01, 0x81, 0x80, 0x00, 0x80, 0x40, 0x40, 0xc0, 0xd0, 0xe0, 0x80, 0xe0, 0xd0, 0xf0, 0xe0, 0xc4, 0xf0, 0x9c, 0xc4, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x3f, 0x3f, 0x3f, 0x3f, 0xff, 0x9f, 0xef, 0xbf, 0x3f, 0x5f, 0x3f, 0x0f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0xb5, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xfe, 0xda, 0xfb, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x4f, 0x0f, 0x0f, 0x07, 0x01, 0x03, 0x00, 0x05, 0x07, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x03, 0x03, 0x03, 0x03, 0x27, 0x4f, 0x2f, 0x1f, 0xbf, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x03, 0x05, 0x07, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x47, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x2d, 0x14, 0xed, 0xd0, 0xf0, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x01, 0x6d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x1f, 0x3f, 0x0f, 0x1c, 0x3c, 0x1c, 0x28, 0x70, 0x00, 0x00, 0x00, 0x11, 0xed, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfb, 0xf0, 0xe0, 0xa0, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x36, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x17, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xff, 0xdf, 0xff, 0xff, 0xfe, 0xfc, 0xfd, 0xfd, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0x96, 0x04, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7e, 0x1e, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x23, 0x73, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0a, 0x01, 0x00, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x72, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0b, 0x1f, + 0x17, 0x8f, 0x8b, 0xd7, 0xc9, 0xc7, 0xc7, 0xe0, 0xe1, 0xf0, 0xf8, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1e, 0x1e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xf8, 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3e, 0x1c, 0x00, 0x04, 0x08, 0x08, 0x0c, 0x00, + 0x84, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xa0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xe0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x28, 0xe8, 0xd8, 0xfc, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfd, 0xf9, 0x41, 0x01, 0x02, 0x03, 0x01, 0x01, 0x00, 0xa0, 0xa0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xdf, + 0x7f, 0x1f, 0x0f, 0xa7, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0x7c, 0xb0, 0xe8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x9b, 0xfe, 0xfa, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x97, 0x27, 0x03, 0x0b, 0x07, 0x05, 0x07, 0x0c, 0x02, 0x13, 0x08, 0x0f, 0x24, 0x29, 0x4c, 0x10, 0xfd, 0xed, 0xfc, 0xde, 0xb8, 0xf0, 0xd8, 0xfa, 0xcf, 0xaf, 0xef, 0xbf, 0x1f, 0x0f, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x17, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0x3f, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x1f, 0x1f, 0x1f, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x03, 0x17, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xf9, 0xfd, 0xff, 0xfb, 0xdf, 0xf0, 0xe4, 0xfa, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x0b, 0x0f, 0x05, 0x07, 0x0b, 0x1f, 0x0b, 0x2e, 0x1f, 0x07, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x20, 0x20, 0xc0, 0x94, 0xf0, 0xe4, 0xec, 0xf8, 0xf8, 0xec, 0xfd, 0x2f, 0x3f, + 0x0d, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x17, 0x0f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0x1f, 0x3f, 0x7f, 0x1f, 0xbf, 0xff, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x02, 0x07, 0x04, 0x07, 0x07, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf1, 0xf1, 0xf3, 0xbb, 0x8b, 0x87, 0xe3, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xf6, 0xe6, 0xe6, 0xce, 0xcc, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0x1f, 0xff, 0xdf, 0xff, 0xdf, 0xff, 0xbc, 0x3f, 0xff, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x80, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x38, 0x3c, 0x1c, 0x1e, 0x0e, 0x00, 0x00, 0x13, 0x07, 0x1f, 0x87, 0x87, 0x9f, 0xdf, 0x7f, 0x4f, + 0x1f, 0x0f, 0x8f, 0x07, 0x4b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x83, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0x7e, 0x37, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf4, 0xfc, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0xef, 0xae, 0xce, 0xe4, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0x0d, 0x17, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0xc0, 0xd0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xfe, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xbc, 0xc0, 0x90, 0xe0, 0xe0, 0xe8, 0xe0, 0xe8, 0xe0, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x02, 0x3f, 0x9f, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x0f, 0x0f, 0x07, 0x01, 0x01, 0x01, 0x09, 0x89, 0x89, 0xd9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe8, 0xf4, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc3, 0xc7, 0xe1, 0xc0, 0xe0, 0xe1, 0xe1, 0xe3, 0xe3, 0xe7, 0xcf, 0x9f, 0x1f, 0x1d, 0x1e, 0x1b, 0x19, 0x13, 0x17, 0x1f, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x0f, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, + 0x7f, 0x7f, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x18, 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xfc, 0xfc, 0xf6, 0xfc, 0xf8, 0xc0, 0x00, 0x00, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x80, 0x00, 0x48, 0x37, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x03, 0x01, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x07, 0x03, 0x07, + 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x00, 0x00, 0x07, 0x1f, 0x0f, 0x1f, 0x7f, 0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0x90, 0x00, 0xc0, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xc0, 0xc4, 0xe4, 0xee, 0x34, 0x0f, 0x87, 0xff, 0xff, 0xff, 0xff, 0xed, 0xed, 0xcc, 0xcc, 0xcc, 0x98, 0xf0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0xff, 0x3f, 0xdf, 0xff, 0xaf, 0xff, 0xf9, 0x7f, 0x7f, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xe0, 0xe0, 0x60, 0x30, 0x30, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x5f, 0xcf, 0x8f, 0x06, 0x0f, 0x3f, 0xff, 0xdf, 0x7f, 0x0f, + 0x2f, 0x0f, 0x8f, 0x17, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xe1, 0xf1, 0xf1, 0xf1, 0xf0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0x6a, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xfc, 0xfc, + 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x3f, 0x1c, 0x1c, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xf8, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x1f, 0x7f, 0xff, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdb, 0x7f, 0xff, 0xf5, 0xfc, 0xfd, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, + 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x81, 0x41, 0xc0, 0x30, 0x80, 0xf8, 0xf0, 0xf8, 0xe8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xdc, 0x00, 0x00, 0x00, 0x80, 0x00, 0x90, 0xd0, 0xf4, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x07, 0x83, 0x83, 0x83, 0x83, 0x02, 0x87, 0x89, 0x08, 0x3d, 0x31, 0x43, 0x3b, 0x27, 0x0f, 0x0f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0xbf, 0x4b, 0x81, + 0x60, 0xc0, 0xe8, 0xfc, 0xf0, 0xfe, 0xf3, 0xff, 0xfd, 0xdd, 0xf2, 0xfc, 0xfe, 0xff, 0xf1, 0xff, 0x7f, 0xf7, 0xdd, 0x33, 0x25, 0x01, 0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x40, 0xd0, 0xf0, 0xe8, 0xe8, 0xf8, 0xf8, 0xe0, 0x80, 0x00, 0x02, 0xb0, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x01, 0x3d, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x00, 0x01, 0x05, 0x03, 0x07, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x04, 0x00, 0x0e, 0x07, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xa2, 0x81, 0x87, 0xef, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xea, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x89, 0x99, 0xd9, 0x7b, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xdf, 0xdd, 0xdd, 0xdd, 0xdd, 0x98, 0xb8, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x7c, 0xff, 0x7f, 0xff, 0xf9, 0x7e, 0xf2, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x03, 0x0f, 0xbe, 0x1f, 0x3f, 0x0c, 0x3f, 0xff, 0xff, 0xff, 0x9f, 0x2f, + 0x0f, 0x0f, 0x2f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0x80, 0xc2, 0xe3, 0xe3, 0xe2, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xf8, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0x00, 0x80, 0x90, 0xe8, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0x70, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x78, 0x7c, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x0f, 0x07, 0x81, 0x21, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf0, 0xf4, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x8f, 0x07, 0x07, 0x07, 0x03, 0x41, 0x01, 0x80, 0x80, 0x40, 0xc0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0xc0, 0x80, 0x80, 0xc0, 0x80, 0xe0, 0xe0, 0xf0, 0xe0, 0xc0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xff, 0xfc, 0xfd, 0xfd, 0xf0, 0x00, 0xe8, 0xf8, 0xf8, 0xc8, 0xe6, 0xf8, 0xec, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x17, 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0a, 0x04, 0x05, 0x03, 0x1e, 0x4f, 0x7f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf0, 0x50, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0x90, + 0xf0, 0xec, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe1, 0xeb, 0xf3, 0xd7, 0xd3, 0x85, 0x03, 0x8f, 0x3f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xed, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x05, 0x03, 0x03, 0x00, 0x01, 0x00, 0x05, 0x05, 0x13, 0x1b, 0x17, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x00, 0x00, 0x06, 0x07, 0x1f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x0f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x26, 0x67, 0x67, 0x7f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xfb, 0xfb, 0x99, 0x98, 0x98, 0x98, 0x30, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x30, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe6, 0x74, 0xe2, 0x19, 0xe0, 0xce, 0xff, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1d, 0x3f, 0x39, 0x18, 0x1c, 0x3f, 0x1f, 0x1e, 0x0f, 0x0c, + 0x07, 0x03, 0x07, 0x03, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x20, 0x50, 0x40, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1e, 0x3e, 0x7f, 0xfe, 0xff, 0xd0, 0x08, 0x3c, 0x3c, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x21, 0x11, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xf4, 0xfc, 0xf8, 0xf4, 0xf8, 0xf8, 0xe0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xd0, 0x80, 0xf0, 0xc0, 0xf8, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xe4, 0xe0, 0xd0, 0x80, 0xe0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xb4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0f, 0xdf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, 0x01, 0x01, 0x70, 0xf8, 0xfc, 0xc2, 0xc2, 0xc0, 0xc0, 0xc0, 0xc0, 0xe1, 0xc3, 0xc7, 0x87, 0x0f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xbf, 0x1f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x07, 0x03, 0x03, 0x07, 0x05, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x66, 0x67, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0x7f, 0xbf, 0x3b, 0x3a, 0x9a, 0x98, 0x90, 0x30, 0x70, 0xf0, 0x80, 0x00, 0xc0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x64, 0x60, 0x60, 0x10, 0xa0, 0x8c, 0xff, 0xfe, 0xe7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0x00, 0x01, 0xe3, 0x27, 0x07, 0x0f, 0x1e, 0x3c, 0x78, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x39, 0x39, 0x00, 0x1c, 0x1e, 0x1f, 0x1e, 0x0e, 0x04, 0x02, + 0x00, 0x03, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x5f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x2e, 0x3e, 0x24, 0x20, 0x00, 0x00, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x77, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xe0, 0xe0, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x80, 0xe0, 0xe0, 0xc0, 0xe0, 0xa0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x6f, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x1f, 0x3f, 0x3f, 0xbf, 0x1f, 0x0f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xf4, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfe, 0xfc, 0xf4, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x07, 0x07, 0x01, 0x30, 0x38, 0xfc, 0xff, 0xfc, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf3, 0xe1, 0xc3, 0xff, 0xdf, 0x5f, 0xff, 0xbf, 0xff, 0xcf, 0x4f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x01, 0x03, 0x02, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x44, 0x4c, 0xee, 0x7e, 0x3e, 0x7f, 0xfe, 0x7e, 0x7e, 0x36, 0x32, 0x32, 0x30, 0x30, 0x30, 0x60, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0x40, 0x00, 0x20, 0x88, 0xdc, 0xfe, 0xef, 0xe5, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfd, 0xe8, 0x06, 0x1e, 0x3e, 0x7c, 0x78, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x11, 0x31, 0x01, 0x11, 0x3f, 0x1d, 0x3d, 0x15, 0x0c, 0x03, 0x01, 0x07, + 0x07, 0x0f, 0x02, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x87, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf4, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x70, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xd3, 0xfb, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x8f, 0xef, 0xff, 0xff, 0x3f, 0x1f, 0x03, 0x1f, 0x0f, 0x1f, 0x07, 0x07, 0x0f, 0x0f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfa, 0xfc, 0xf4, 0xf8, 0xe0, 0xf9, 0xfb, 0xfd, 0xff, 0xfe, 0xff, 0xff, 0xfd, 0xff, 0xfd, 0xfe, 0xf8, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x2f, 0x1f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x03, 0x01, 0x1c, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf1, 0xf3, 0xfb, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc7, 0xc3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x98, 0xb8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xd8, 0xc8, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc1, + 0x81, 0x49, 0x81, 0x20, 0xf1, 0xff, 0xbf, 0x93, 0xf8, 0xfc, 0xf4, 0xfc, 0xfc, 0xf8, 0xf5, 0x61, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x1f, 0x3f, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x04, 0x00, 0xe4, 0xe7, 0xef, 0xcf, 0xff, 0xff, 0xff, 0xf7, 0xff, 0x77, 0x0b, 0x03, 0x07, 0x1e, 0x04, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x1d, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xfc, 0xfe, 0x7e, 0x72, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, + 0x23, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf1, 0xf9, 0xe1, 0xf1, 0x81, 0xe0, 0x80, 0x40, 0x20, 0x80, 0xf0, 0xe8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfa, 0xfc, 0xfc, 0xf8, 0xfc, 0xfe, 0xfe, 0xfc, 0xfc, 0xfa, 0xf8, 0xf4, 0xf0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x20, 0x07, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbf, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xb0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x01, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe1, 0xe1, 0xff, 0xc7, 0xaf, 0xcf, 0xff, 0x7f, 0xff, 0xff, 0xf1, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x42, 0x56, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x13, 0xbb, 0xfb, 0x3f, + 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xbb, 0x9b, 0xb9, 0x98, 0x90, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x7f, 0xff, 0x7f, 0xdd, 0xfc, 0xf6, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x09, 0x1e, 0x1e, 0x9f, 0x19, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0xff, 0x5f, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, + 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x0f, 0x0f, 0x8f, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x82, 0xc2, 0xc3, 0xe7, 0xe3, 0xf5, 0xf0, 0xf2, 0xfa, 0xfc, 0xfe, 0xfc, 0xfe, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x67, 0xf3, 0xe1, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, + 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xc0, 0xe8, 0xf8, 0xf0, 0xfe, 0xfe, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x87, 0xdf, 0x9f, 0xdf, 0x9f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0xe0, 0xf0, 0xf8, 0xfa, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x06, 0x1f, 0x1e, 0x1f, 0x6f, 0x7f, 0xef, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xbf, 0x5f, 0x3f, 0xbf, 0x3f, 0xbf, 0x7f, 0xbf, 0x7f, 0x3f, 0x3f, 0x26, 0x00, 0x7a, 0x36, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x40, 0x80, 0xc0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xf6, 0xf0, 0xf4, 0xf6, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xe0, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x87, 0x07, 0x01, 0x01, 0x00, 0x2a, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x48, 0xcc, 0xce, 0xfe, 0xfe, 0xfe, + 0xfe, 0xfe, 0xfe, 0xfe, 0x6c, 0xe8, 0xe8, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x3f, 0xfe, 0xfe, 0xf8, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x10, 0xe0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xfc, 0xfc, 0xe6, 0xe3, 0xd8, 0xfc, 0xff, 0xdf, 0xdf, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xf7, 0x43, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x16, 0x13, 0x7a, 0xfb, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0x3f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, + 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x08, 0x08, 0x0f, 0x0f, 0x97, 0xaf, 0x82, 0xc3, 0xf4, 0xfb, 0xfa, 0xfa, 0x64, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xfa, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x10, 0xc0, 0x20, 0xe0, 0xe8, 0xf8, 0xfc, 0xfe, 0xf8, 0xfe, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x2b, 0x0f, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0e, 0x3e, 0x7f, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0xf7, 0xff, 0xff, 0xff, 0xef, 0xf7, 0xff, 0xef, 0x6f, 0xff, 0x5f, 0xbf, 0x3f, 0x1f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3e, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 0x3f, + 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xe0, 0xf8, 0xf4, 0xf4, 0xf0, 0xf8, 0xe0, 0x00, 0x80, 0x78, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0x20, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, + 0xc0, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x89, 0x1d, 0x3f, 0x0f, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf3, 0xf7, 0xf7, 0xe6, 0xfe, 0xec, 0xdc, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x7f, 0xff, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xf8, 0xfc, 0xfc, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0x1e, 0x58, 0x46, 0x31, 0xfb, 0x7f, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x0f, 0x0b, 0x07, 0x1f, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x9f, 0x0f, 0xe3, 0x91, 0xa0, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xfb, 0xf9, 0xfe, 0xfa, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, + 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x28, 0x00, 0x60, 0xe0, 0xf0, 0xec, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfa, 0xfc, 0xfe, 0xfe, 0xfc, 0xff, 0xc8, 0xdf, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x37, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x30, 0xf0, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0x7f, 0x3f, 0x0c, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfc, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xef, 0xbf, 0xdf, 0xbf, 0x1f, 0x9f, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x3f, 0x3f, 0x1f, 0x1d, 0x3f, 0x1f, 0x7f, 0x7f, 0x7f, 0x3f, + 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x47, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfc, 0xfd, 0xf9, 0xf1, 0x01, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfa, 0xff, 0xfe, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x22, 0x15, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0x80, + 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x78, 0xf8, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x13, 0x13, 0x93, 0xff, 0x1f, 0x1f, 0xdf, 0xff, 0xff, 0xdd, 0xcd, 0xec, 0xce, 0xcc, 0xcc, 0xdc, 0xfc, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0xfe, 0xfc, 0xfc, 0xf0, 0xf8, 0xf0, 0xe0, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x3f, 0x7b, 0xa9, 0xcc, 0x52, 0xf7, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x1c, 0x1e, 0x0d, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x3f, 0x0f, 0x13, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xd0, 0xf0, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0xdf, 0xf3, 0xe3, 0xf1, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf0, 0xf8, 0x30, 0x00, 0x00, 0xc0, 0x60, 0xd0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xec, 0xef, 0xd7, 0xcf, 0x07, 0x07, 0x07, 0x07, 0x03, 0x0b, 0x0f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0xe0, 0xf0, 0xf0, 0xf0, 0xfc, 0xfe, 0xfe, 0x7e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xbf, 0xbf, 0xbf, 0xbf, 0x3f, 0xbf, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x7e, 0x38, 0x22, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x1f, 0x0e, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd1, 0xe1, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf9, 0xf9, 0xf9, 0xfb, 0xf3, 0xe3, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfc, 0xfe, 0xf0, 0x80, 0x00, 0x00, 0x50, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x3e, 0xfe, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x98, 0x99, 0xdb, 0xfb, 0x3f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdd, 0xdd, 0xd8, 0x98, 0x90, 0x30, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfb, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xfc, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfe, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x0e, 0x3e, 0xbe, 0x3f, 0x3b, 0x3b, 0x7f, 0xff, 0x7f, 0xbf, 0x3f, 0x4f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x3e, 0x5e, 0x46, 0x06, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0x70, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xf4, 0xfc, 0xfc, 0xfc, 0xfe, 0xfc, 0xfe, 0xfe, 0xf4, 0xfa, 0xfe, 0xfc, 0x1c, 0x1a, 0x00, 0x01, 0x03, 0x01, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xe3, 0xf1, 0xf0, 0xf0, 0xf9, 0xfc, 0xfc, 0x58, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xe0, 0xe8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfb, 0xff, 0xfd, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0x3f, 0x3f, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0xff, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7e, 0x7c, 0x34, 0x3e, 0x7e, 0x7f, 0x7f, 0x7f, + 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x8f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x83, 0xc3, 0xc0, 0xc0, 0xc1, 0xf3, 0xf3, 0xe7, 0xe3, 0xe7, 0xc7, 0x0e, 0x07, 0x06, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, 0xdf, 0xff, 0xf8, 0xf0, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfc, 0xfe, 0xfe, 0xff, 0xf0, 0x80, 0x80, 0x00, 0xec, 0x71, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x60, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0xfe, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0xcc, 0xe6, 0xe2, 0xf2, 0xfe, 0xff, 0xff, 0x87, 0xef, 0xff, 0xff, 0xff, 0xf7, 0xf6, + 0xe6, 0xe6, 0xe6, 0xac, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x94, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0xff, 0x3f, 0xff, 0xbf, 0xbf, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc7, 0xf7, 0xe3, 0xe3, 0xc5, 0xdf, 0xbf, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x0f, 0x7f, 0x1f, 0x0e, 0x3e, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x0b, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0xbe, 0x0e, 0xa6, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, + 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0x20, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xff, 0x3f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0x7e, 0x3e, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6b, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x3f, 0xbf, 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0x7f, 0x7f, 0x3f, 0x7d, 0x36, 0x34, 0x76, + 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x00, 0x60, 0x61, 0xc3, 0xef, 0x87, 0x07, 0x03, 0x01, 0x00, 0x00, 0xa0, 0xe0, 0xe0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc7, 0x83, 0xc1, 0xc0, 0xc1, 0xc1, 0xe3, 0xe3, 0xe3, 0xe7, 0xc7, 0x0f, 0x07, 0x0f, 0x0f, 0x0e, 0x0d, 0x04, 0x09, 0x02, 0x01, 0x06, 0x00, 0x05, 0x05, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x16, 0x40, 0x00, 0x00, 0x08, 0x00, 0x00, 0x44, 0xe0, 0xf8, 0xf8, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xc0, 0x88, 0x44, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x18, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0x98, 0x98, 0xbc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xb8, 0xb0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x7f, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0xff, 0xe3, 0xf9, 0xf8, 0xfd, 0xfd, 0xff, 0xf7, 0xe3, 0xff, 0xff, + 0xff, 0xff, 0xfb, 0xfb, 0xfb, 0xf9, 0xfb, 0xe2, 0x8c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xf7, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x7f, 0x1f, 0x0f, 0x7f, 0xef, 0xef, 0xef, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xf9, 0xfb, 0xef, 0xef, 0x2f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfe, 0xfe, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0b, 0x1f, 0x1f, 0x07, 0x07, 0x2f, 0x3f, 0x2f, 0x0b, 0x83, 0x80, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x3e, 0x1e, 0x8e, 0xc6, 0xc0, 0xe0, 0xc0, + 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0x83, 0x81, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x5c, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x01, 0x00, 0x00, 0xc0, 0x40, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfd, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x68, + 0xf0, 0x32, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x80, 0xc0, 0xa0, 0xa0, 0xe0, 0xf0, 0xf0, 0xf0, 0xd9, 0xdb, 0xf3, 0x41, 0x01, 0x00, 0x80, 0xc0, 0xe8, 0xf0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x87, 0x81, 0xc3, 0xe0, 0xc1, 0xe1, 0xe3, 0xc3, 0xc7, 0x8f, 0x07, 0x0e, 0x07, 0x0e, 0x0f, 0x0c, 0x1d, 0x06, 0x05, 0x09, 0x0f, 0x0b, 0x06, 0x07, 0x0b, 0x06, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x9f, 0x9f, 0x8f, 0x83, 0x81, 0x84, 0x94, 0x84, 0x00, 0x0e, 0x33, 0x96, 0xf7, 0xf6, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xcc, 0x8b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xaf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x01, 0x01, 0x02, 0x06, 0xee, 0xfc, 0xf8, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x40, 0x60, 0x6c, 0x6e, 0xef, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xee, 0xe8, 0xe8, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xdb, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, + 0xff, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfd, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x07, 0x0f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x1f, 0x2f, 0x47, 0x37, 0x5f, 0xfb, 0xfb, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0x7b, 0x17, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xfc, 0xff, 0xff, 0xc7, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x07, 0x03, 0x8b, 0xa1, 0x8f, 0x87, 0x84, 0xc0, 0xc0, 0xc0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xe0, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0x7c, 0x3c, + 0x1c, 0x80, 0x00, 0xc0, 0x80, 0x80, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xe7, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0e, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x02, 0x80, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0x58, 0x80, 0xa0, 0x20, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdf, 0xdf, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xf0, 0xe0, 0xa0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xa0, 0xe0, 0xe0, 0xc0, 0xe0, 0xf0, 0xe0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe8, 0xfc, 0xf0, 0xfc, 0xf4, 0xfd, 0xfe, 0xf5, 0xe0, 0xd8, 0xc0, 0xec, 0xfa, 0xf4, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x87, 0x83, 0x80, 0x80, 0xc3, 0x83, 0x87, 0x0f, 0x0f, 0x0b, 0x1a, 0x1f, 0x0c, 0x1f, 0x0a, 0x1b, 0x36, 0x17, 0x0f, 0x1f, 0x0f, 0x1f, 0x1f, 0x1d, 0x1d, 0x08, 0x01, 0x00, 0x01, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0xf3, 0xe7, 0xe7, 0xef, 0xff, 0xef, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf1, 0xfb, 0xf3, 0xc3, 0x03, 0x03, 0x8d, 0x77, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x70, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x18, 0x1c, 0x9c, 0xcc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xa0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x5e, 0xee, 0xe7, 0xf3, 0xf3, 0xff, 0xc7, 0xdf, 0xef, 0xff, 0xff, 0xf3, 0xf3, 0xf3, 0xf3, 0xf0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0x2f, 0x47, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x1e, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x09, 0x0f, 0x05, 0x0d, 0x2b, 0x1f, + 0x3f, 0xbf, 0x7f, 0x37, 0xfb, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xef, 0xef, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0xff, 0xff, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0xc0, 0xc0, 0xe0, 0x40, 0x00, 0x24, 0xbe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x1f, 0x7f, 0x7e, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xfc, 0xf9, 0xf9, 0xfd, 0xf8, 0xf8, 0xf0, 0xf8, 0xff, 0xf7, 0xff, 0xff, 0xef, 0xef, 0xff, 0xaf, 0xdf, 0xef, 0xdf, 0xdf, 0xef, 0xc6, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x00, 0x00, 0x00, 0x00, 0x04, 0x34, 0x58, 0x74, 0xdc, 0xb8, 0xb4, 0xe0, 0x10, 0x00, 0x00, 0x10, 0x56, 0xeb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x07, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xf1, 0xf1, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x8f, 0xc3, 0x83, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe1, 0x01, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x03, 0x0f, 0x0f, 0x0f, 0x07, 0x0b, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0x98, 0x98, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xd0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x60, 0x60, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x87, 0xfb, 0xf1, 0xf9, 0xe9, 0xeb, 0xe3, 0xf1, 0xd9, 0xf9, 0xf9, 0xd9, 0xe0, 0x20, 0x70, 0x40, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xcc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xec, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xbf, 0x7f, 0xff, 0x7f, 0xfe, 0xff, 0xfb, 0xfb, 0xff, 0x7f, 0xff, 0x7f, 0xfa, 0x39, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x03, 0x03, 0x73, 0x2b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x84, 0x03, + 0x01, 0x00, 0x00, 0x02, 0x0f, 0x3f, 0x0f, 0xfc, 0x0c, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0x90, 0xe0, 0x00, 0x18, 0x08, 0x28, 0x00, 0x20, 0x0c, 0x1d, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xdc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfa, 0xfe, 0xfe, 0xfd, 0xeb, 0xff, 0xf7, 0xef, 0xff, 0xdf, 0xef, 0x8f, 0xdf, 0x8f, 0xcf, 0xef, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x0f, 0x17, 0x2f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xd8, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0xe3, 0xfb, 0xf1, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xd0, 0xe1, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x47, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x00, 0x02, 0x08, 0x01, 0x00, 0x00, 0x02, 0x07, 0x3f, 0x5f, 0x7f, 0x7f, 0xff, 0x3f, 0x7f, 0x3f, 0x3f, 0x0f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc8, 0xcc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0x68, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0xc7, 0xe9, 0xe8, 0xfc, 0xf0, 0xf0, 0xf9, 0xb9, 0xe8, 0xec, 0xfc, 0xec, 0xa8, 0xb0, 0x90, 0x60, 0xf0, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf1, 0xf3, 0xf7, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xbf, 0xdf, 0x37, 0x1f, 0xfb, 0xfd, 0xfd, 0xff, 0x17, 0x13, 0x1d, 0x39, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x7e, 0x1f, 0x1f, 0x8f, 0xdf, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0x80, 0x01, 0x80, 0x80, 0x00, 0x00, 0x02, 0x07, 0x07, 0x2f, 0x16, 0x1c, 0x25, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xe0, 0x80, 0xc4, 0x84, 0x88, 0x10, 0x18, 0x00, 0x32, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xe0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xf5, 0xf3, 0xff, 0xef, 0xef, 0xdf, 0xdf, 0x9f, 0x9f, 0xdf, 0xcf, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x00, 0x03, 0x0f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf8, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x07, 0x15, 0xf9, 0xfd, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xf8, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7b, 0x01, 0x00, 0x00, 0x02, 0x0a, 0x0a, 0x01, 0x0d, 0x20, 0x08, 0x00, 0x00, 0x6a, 0x0d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x20, 0x30, 0x30, 0x32, 0x73, 0x7f, 0x3f, 0x7f, 0x3f, 0x7e, 0x7e, 0x7c, 0x64, 0x60, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfd, 0xfc, 0xbe, 0xfd, 0xde, 0xdb, 0xfc, 0x7e, 0xfa, 0xfb, 0xff, 0xf7, 0xd6, 0xbc, 0x78, 0xfe, 0xf4, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0x4f, 0x1e, 0x17, 0x1f, 0xef, 0xdf, 0xff, 0xff, 0x7f, 0x15, 0xdd, 0xff, 0x3e, 0x3c, 0x1d, 0x01, 0x05, 0x01, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x84, 0x83, 0xbd, 0xb7, 0x87, 0xbf, 0x03, 0x0f, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf8, 0xfe, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0xe0, 0xe0, 0x60, 0xf0, 0xe0, 0xf0, 0x10, 0x00, 0x00, 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xff, 0xff, 0x65, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x80, 0x40, 0x50, 0x70, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfc, 0xf9, 0xfc, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xea, 0xfb, 0xf7, 0xff, 0xef, 0xff, 0xff, 0xbf, 0xdf, 0xbf, 0xcf, 0xdf, 0xdf, 0x9f, 0xcf, 0xef, 0xe7, 0xef, 0xe7, 0xc0, 0xe2, 0xc0, 0xc4, 0x82, 0x84, 0x84, 0x84, 0x84, 0x80, 0x00, 0x80, 0x80, 0x80, 0x00, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0x80, 0x01, 0x01, 0x01, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x07, 0x5f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x3e, 0x3c, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x1f, 0x3f, 0x3f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x3f, 0x0b, 0x07, 0x05, 0x31, 0x1e, 0xac, 0xfe, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xfc, 0xfc, 0xf8, 0xf8, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x60, 0x30, 0x10, 0x30, 0x10, 0x72, 0x76, 0x7f, 0x7f, 0x7e, 0x7e, 0xfe, 0xfc, 0xec, 0x68, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xfe, 0xfd, 0xff, 0xff, 0xfd, 0x6c, 0xfe, 0xfa, 0xfb, 0xff, 0xf7, 0xf6, 0xfc, 0xfc, 0xfc, 0xfc, 0xe0, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x17, 0x08, 0x0f, 0x06, 0xae, 0xff, 0xff, 0xff, 0x7f, 0x07, 0xff, 0xff, 0x3f, 0x3e, 0x7d, 0x3f, 0x5f, 0x37, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x80, 0x00, 0x00, 0x80, 0x88, 0x85, 0x9d, 0xb7, 0xaf, 0x3f, 0x1b, 0x0b, 0x81, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xef, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xfd, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x83, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x40, 0x40, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xf7, 0xf6, 0xf3, 0xe3, 0xfb, 0xf8, 0xf4, 0xf8, 0xf8, 0xf2, 0xf0, 0xf0, 0xf9, 0xf0, 0xf1, 0xf8, 0xf0, 0xc8, 0xe8, 0xd0, 0xf0, 0xfe, 0xcf, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xbf, 0xff, 0xff, 0xcf, 0xef, 0xc7, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xf7, 0xe7, 0x8f, 0xcf, 0x97, 0xd6, 0x96, 0x8c, 0x00, 0x80, 0x80, 0x80, 0x80, + 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xf2, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xf8, 0xf8, 0xf8, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x07, 0x17, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x7e, 0x7c, 0x38, 0x10, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x0f, 0x06, 0x00, 0x02, 0x17, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x3f, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x60, 0x30, 0x30, 0x10, 0x30, 0x72, 0x76, 0x7f, 0x7e, 0x7e, 0xfe, 0xfc, 0xfc, 0xc8, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfa, 0xfd, 0xbf, 0xdd, 0x5c, 0x6d, 0xfc, 0xea, 0xfa, 0xff, 0xff, 0xf6, 0xbe, 0x7c, 0xfc, 0xe8, 0xe8, 0xc1, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x17, 0x07, 0x01, 0x0e, 0xcf, 0xbf, 0xef, 0xff, 0x7f, 0x17, 0xfd, 0xff, 0x3f, 0x3e, 0x5d, 0xff, 0x3b, 0x7f, 0x7f, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x8d, 0x8d, 0xb9, 0xbf, 0x3f, 0xb7, 0x27, 0xdf, 0x83, 0x81, 0x20, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xf7, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xf8, 0xfc, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x20, 0x38, 0xfc, 0xfa, 0x7c, 0xfe, 0xfe, 0xfc, 0xfd, 0xfa, 0xeb, 0xf1, 0xf1, 0xf1, 0xfc, 0xf9, 0xf8, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf1, 0xf8, 0xf1, 0xd0, 0xf0, 0xf0, 0xe0, 0xd0, 0x9c, 0xbf, 0xff, 0xdf, 0xff, 0xff, 0xbf, 0x7f, 0xbf, 0xbf, 0xff, 0xdf, 0xff, 0xc7, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xcf, 0xaf, 0x97, 0x9f, 0xdf, 0x96, 0x8a, 0x80, 0xc0, 0xc0, 0xc0, 0xf0, + 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xdf, 0x9f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0x7c, 0x78, + 0x18, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x07, 0x00, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x60, 0x20, 0x20, 0x30, 0x30, 0x74, 0x76, 0x7e, 0x7e, 0xfe, 0xfc, 0xfc, 0xf8, 0xd8, 0xd0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x78, 0x7c, 0xfc, 0x9f, 0xf9, 0xdd, 0xf8, 0xfd, 0xd4, 0xf6, 0xfe, 0xfe, 0xec, 0xf9, 0xf9, 0xe8, 0xf8, 0xe1, 0xc1, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x07, 0x0d, 0x13, 0x15, 0xcf, 0xfe, 0x7e, 0xfe, 0x1f, 0xdb, 0xfb, 0xff, 0x7f, 0x7d, 0x7b, 0x7f, 0xff, 0x9f, 0x7f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0c, 0xaf, 0x1b, 0x77, 0x1e, 0x7f, 0x17, 0x03, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xe7, 0xc3, 0xc1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0xc0, 0x80, 0x80, 0x00, 0x00, 0xc0, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xe0, 0xfd, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe1, 0x80, 0x00, 0x01, 0x01, 0x03, 0x03, 0x41, 0xe0, 0xc8, 0xe7, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xf9, 0xfc, 0xfe, 0xf8, 0xfc, 0xfe, 0xfa, 0xf8, 0xf4, 0xf8, 0xf8, 0xf0, 0xf8, 0xe8, 0xf0, 0xf0, 0xf0, 0xa0, 0xc0, 0xc4, 0xff, 0x9f, 0xdf, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x7f, 0xff, 0xff, 0xbf, 0xff, 0xbf, 0xdf, 0xdf, 0x9f, 0x9f, 0xdf, 0x9f, 0xbf, 0xaf, 0x2f, 0xbe, 0x26, 0x2c, 0x04, 0x00, + 0x80, 0x80, 0x80, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1f, 0x9f, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xfa, 0x2b, 0x00, 0x40, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, + 0xf8, 0xf0, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15, 0x58, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x3f, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfe, 0xfe, 0xfe, 0xf8, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x60, 0x60, 0x20, 0x60, 0xe0, 0xec, 0xec, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf9, 0xfc, 0xfe, 0x7e, 0xbe, 0x7e, 0xfe, 0xba, 0xc9, 0xd8, 0xf9, 0xf9, 0xbb, 0xf7, 0xc3, 0xd3, 0x67, 0x82, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x2e, 0x7f, 0x1f, 0x7f, 0xbf, 0x7f, 0x7f, 0xff, 0xfb, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xff, 0xe7, 0xaf, 0xef, 0x6f, 0xbf, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xc0, 0x80, 0x81, 0x00, 0x00, 0x00, 0x4f, 0x6f, 0xd7, 0xdf, 0x67, 0x03, 0x0f, 0x07, 0x07, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xdf, 0x8f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xf2, 0xfe, 0x7e, 0xfe, 0x3e, 0xbe, 0xfe, 0x3c, 0x5c, 0x00, 0x00, 0x00, 0xc4, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xc7, 0xe3, 0xe3, 0xe3, 0xf3, 0xe1, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfc, 0xfc, 0xfe, 0xf8, 0xf8, 0xf4, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xbf, 0x7f, 0x3f, 0x7f, 0x70, 0x78, 0x78, 0x78, + 0x70, 0xe0, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xf9, 0xf9, 0xfb, 0xfb, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, + 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x0f, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x05, 0x07, 0x03, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0d, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x9f, 0x9f, 0x1f, 0xcf, 0x8f, 0x47, 0x86, 0x84, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x40, 0x60, 0x68, 0xec, 0xcc, 0xdc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc2, 0xf1, 0xf9, 0xfd, 0xfc, 0xfe, 0xfe, 0xf4, 0x77, 0xfa, 0xd9, 0xd3, 0xf9, 0xf9, 0xb7, 0xa7, 0xc7, 0x26, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x54, 0xbf, 0x7f, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0x9f, 0xd1, 0x4d, 0x0b, 0x1f, 0x3f, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe8, 0xe8, 0xe0, 0x80, 0x01, 0x02, 0x00, 0x02, 0x42, 0x47, 0x2f, 0xbf, 0x0f, 0x47, 0x03, 0x1c, 0x03, 0x05, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0x7c, 0x3e, 0x1e, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xbf, 0xff, 0xbf, 0xff, 0xbf, 0xff, 0x7f, 0xfe, 0x7e, 0x04, 0x00, 0x90, 0xfc, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf8, 0xf0, 0xd0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x3f, 0xff, 0xe1, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0x4b, 0x48, 0x00, 0xa0, + 0xc0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xfc, 0xf0, 0xf0, 0xe1, 0xe1, 0xe3, 0xc3, 0xc1, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x40, 0x80, 0x00, 0x80, 0x80, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x03, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0f, 0x0f, 0x07, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7e, 0x7f, 0x7e, 0x3f, 0x3f, 0x3d, 0x3d, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0x90, 0x98, 0xb8, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0xe3, 0xe7, 0xfb, 0xf1, 0xfd, 0xfc, 0xe8, 0xfc, 0xfd, 0xe7, 0xa7, 0x27, 0xf3, 0xf7, 0x67, 0xcf, 0x8e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xfe, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x26, 0x17, 0x0f, 0x3e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xd0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xe0, 0xf0, 0xc0, 0x01, 0x07, 0x0a, 0x03, 0x13, 0x43, 0x35, 0xff, 0x1d, 0x3f, 0x1f, 0x0f, 0x01, 0x10, 0x06, 0x07, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xa0, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xdf, 0xdf, 0x3f, 0x7f, + 0x14, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0x81, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0x7f, 0x3f, 0x07, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0xa3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0x07, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x07, 0xe3, 0xfb, 0xf3, 0xf1, 0xf0, 0xf0, 0xe0, 0xe0, 0x00, 0x00, 0x0b, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xf9, 0xfd, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0xc2, 0x84, 0x8e, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0x3f, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x3f, 0x3f, 0xbf, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe0, 0xc0, 0x43, 0x87, 0x67, 0x03, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x90, 0x90, 0xb0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0xe2, 0xe7, 0xf3, 0xfb, 0xe9, 0xf8, 0xf9, 0xf9, 0xa9, 0xcf, 0x67, 0x67, 0xe7, 0xef, 0xcf, 0xdf, 0x1d, 0x09, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0x34, 0x0e, 0x1d, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xd0, 0xb0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf8, 0xf8, 0xe0, 0xc0, 0x80, 0x22, 0x0b, 0x03, 0x0b, 0x07, 0x62, 0x5b, 0x9f, 0x3b, 0x3f, 0x1f, 0x1f, 0x03, 0x04, 0x07, 0x06, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xbf, 0xef, 0xbf, + 0x7f, 0x0a, 0x00, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf8, 0xf9, 0xe1, 0x41, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfc, 0xfe, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x09, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x14, + 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe3, 0xe0, 0xf0, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfa, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x07, 0x0f, 0xc7, 0xf7, 0xf3, 0xfb, 0xf1, 0xf0, 0xe0, 0xe0, 0x40, 0x00, 0x01, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xfb, 0xfb, 0xf9, 0xf1, 0xf1, 0xe0, 0xc0, 0x80, 0x00, 0xc0, 0x00, 0x0c, 0x0c, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x07, 0x0f, 0x07, 0x07, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x7f, 0x3f, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe8, 0x80, 0x83, 0x89, 0xc3, 0xc3, 0xcb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xd0, 0x90, 0x98, 0xb8, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe6, 0xf3, 0xf7, 0xfb, 0xfd, 0xfc, 0xfc, 0xf9, 0xed, 0xe7, 0xa3, 0x27, 0xf3, 0xf7, 0x67, 0xcf, 0x0f, 0x0c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x8a, 0xfe, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0x1a, 0x0b, 0x1e, 0x3e, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, + 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0xd0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xe0, 0xfc, 0xf8, 0xc0, 0x01, 0x27, 0x0d, 0x05, 0x81, 0x42, 0xb5, 0xff, 0x1f, 0x3f, 0x1f, 0x1f, 0x03, 0x12, 0x06, 0x07, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xe0, 0xe0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x7f, + 0x0e, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0x71, 0x01, 0x40, 0x81, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0x7f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0f, 0xb7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x02, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x07, 0xf3, 0xf3, 0xf3, 0xf9, 0xf1, 0xe0, 0xe0, 0xc0, 0x40, 0x00, 0x07, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf8, 0xf9, 0xfb, 0xf9, 0xf8, 0xd8, 0xe0, 0xa0, 0xa0, 0xc0, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x1f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0xff, 0x7f, 0x7f, 0x7f, 0x1f, 0x1f, 0x1f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x34, 0x3f, 0x7f, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe0, 0xc0, 0x85, 0x17, 0xc3, 0xc3, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfc, 0xf0, 0xf0, 0xe0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x40, 0x60, 0xe8, 0xc8, 0xcc, 0xdc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe3, 0xf3, 0xf9, 0xff, 0xfe, 0xfe, 0x7c, 0xfe, 0x78, 0x73, 0xd1, 0xd9, 0xf9, 0xfb, 0xb7, 0xf3, 0xc7, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xce, 0xbf, 0xff, 0x3f, 0x77, 0xdf, 0x7f, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xd9, 0xc9, 0x2f, 0x3f, 0x1f, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xe0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xe0, 0x81, 0x01, 0x02, 0x00, 0x00, 0x03, 0x9b, 0x7f, 0xcf, 0x27, 0x07, 0x02, 0x1e, 0x0d, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0x7c, 0x3e, 0x1e, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfc, 0xfc, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xdf, 0x5f, 0x3f, 0x7f, 0x0e, 0x04, 0x00, 0xc8, 0xf9, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf1, 0xf8, 0xe8, 0xf8, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x9f, 0xdf, 0xe1, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x37, 0x82, 0x40, 0xa0, + 0xe0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x02, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf0, 0xf9, 0xf0, 0xe1, 0xe1, 0xc3, 0xc0, 0xc1, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x80, 0x80, 0x00, 0x40, 0x00, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x01, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x07, 0x07, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0x7d, 0xff, 0x7f, 0x3f, 0x3f, 0x3f, 0x1a, 0x1c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0x60, 0x20, 0x60, 0x64, 0xec, 0xec, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0x70, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf0, 0xf3, 0xfd, 0xfc, 0x7e, 0xfe, 0xfe, 0xba, 0xfa, 0xe9, 0xd9, 0xfd, 0xf9, 0xb9, 0xf3, 0xc3, 0xe3, 0xa7, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa5, 0xbf, 0x5f, 0x7f, 0xff, 0x7d, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xdf, 0xff, 0xff, 0xef, 0xc7, 0x6f, 0xbf, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xc0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0c, 0x7f, 0x7f, 0xaf, 0x23, 0x03, 0x1e, 0x0f, 0x03, 0x01, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xde, 0x8f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfe, 0xfe, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0x78, 0xfc, 0xfe, 0xfe, 0xfe, 0x3c, 0x7e, 0x3e, 0x7c, 0x1c, 0x00, 0x00, 0x80, 0xf0, 0xf7, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xc7, 0xc3, 0xe3, 0xe3, 0xe3, 0xe1, 0xe0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x3f, 0xff, 0x3f, 0x7f, 0x78, 0x70, 0xfc, 0x78, + 0x70, 0xf0, 0x60, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xff, 0xf9, 0xf9, 0xf8, 0xf0, 0xf8, 0xe0, 0xf0, 0xf0, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, + 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x01, 0x07, 0x07, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x1f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xbf, 0xbf, 0x9f, 0x8f, 0x8f, 0x8f, 0xc6, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x60, 0x20, 0x20, 0x60, 0x74, 0xe6, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xb0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf4, 0xf8, 0x7f, 0xba, 0xfe, 0xb7, 0xbd, 0xfd, 0xe4, 0xfc, 0xfc, 0xfe, 0x5d, 0xf3, 0xf1, 0xd1, 0xb1, 0xa1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0x17, 0x3f, 0x15, 0x1f, 0xde, 0x7f, 0xfd, 0xfd, 0xbf, 0xbf, 0xef, 0xff, 0xff, 0xff, 0xf3, 0xff, 0xf7, 0x7f, 0xff, 0x7f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x80, 0x00, 0x00, 0x10, 0x63, 0x3b, 0x2f, 0x77, 0x6d, 0x64, 0x0b, 0x07, 0x00, 0x02, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xe0, 0xf0, 0xfc, 0xfc, 0xfe, 0xff, 0xef, 0xe7, 0xe1, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0xe0, 0xf0, 0xd0, 0xf0, 0x70, 0xf8, 0x78, 0x78, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf4, 0xfc, 0xfd, 0xfe, 0xfd, 0xfe, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe1, 0xc0, 0xc0, 0x80, 0xc1, 0xc1, 0xc1, 0xc0, 0xe0, 0xc8, 0xf2, 0xfc, 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfc, 0xff, 0xfa, 0xfd, 0xfd, 0xfa, 0xf8, 0xfc, 0xf4, 0xf8, 0xfc, 0xf8, 0xe0, 0xe8, 0xf8, 0xed, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xbf, 0xbf, 0xff, 0xbf, 0x3f, 0xbe, 0x7e, 0x3c, 0xfc, 0xd8, 0xf8, + 0x38, 0x30, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x0f, 0x0f, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x3f, 0x0f, 0x00, 0x00, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xfe, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, + 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x3a, 0x0f, 0x7f, 0x3f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x3f, 0x0f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xf3, 0xf1, 0xf1, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x20, 0x00, 0x30, 0xb0, 0x32, 0x76, 0x7e, 0x7e, 0x7e, 0x7e, 0xfc, 0xfc, 0xc8, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xf0, 0xfc, 0x7c, 0x9f, 0xff, 0xcf, 0x78, 0x6c, 0xfa, 0xfa, 0xff, 0xff, 0xf7, 0xfc, 0xfc, 0xf4, 0xf8, 0xe0, 0xe1, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x37, 0x0e, 0x02, 0x27, 0x0f, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0xf9, 0xbf, 0xff, 0x3f, 0x3d, 0x79, 0x7f, 0x7f, 0x7f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x80, 0xc1, 0x8f, 0xbf, 0x9f, 0x3f, 0x2f, 0x9f, 0x07, 0x81, 0xc0, 0xa1, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xf7, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfa, 0xfb, 0xfe, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xe0, 0xc0, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x28, 0x18, 0x38, 0xb8, 0xfe, 0xfe, 0xfc, 0xfe, 0xfe, 0xee, 0xf5, 0xf1, 0xf4, 0xf9, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf0, 0xf1, 0xd8, 0xd0, 0xf0, 0xf0, 0xd0, 0xc0, 0xa0, 0xfc, 0x8e, 0x9f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xbf, 0xff, 0xbf, 0xff, 0xcf, 0xc7, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xcf, 0xdf, 0xaf, 0x9f, 0xd7, 0x96, 0x1e, 0x86, 0x82, 0x80, 0xc0, 0xc0, 0xc8, + 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x9c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xcf, 0xdf, 0x9f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xf0, 0xe0, 0xf8, 0xfe, 0xfa, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0x7c, 0x7c, 0x3c, + 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x13, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x07, 0x00, 0x05, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x60, 0x20, 0x10, 0x10, 0x30, 0xb2, 0x76, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0xfc, 0xec, 0xe8, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xbf, 0xfd, 0xdf, 0x69, 0xfd, 0xee, 0xfb, 0xfb, 0xff, 0xf7, 0xf6, 0xfc, 0xf8, 0xfc, 0xfc, 0xe0, 0xc1, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3d, 0x4b, 0x0a, 0x17, 0x0f, 0xae, 0xfe, 0xff, 0xff, 0x7f, 0x07, 0xff, 0xff, 0xff, 0xbf, 0x3c, 0x6d, 0x9f, 0x1f, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x80, 0x88, 0xb7, 0xcf, 0xbd, 0xbf, 0x3b, 0x8f, 0x8f, 0x82, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd8, 0xfb, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xba, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x83, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x40, 0x00, 0x70, 0x70, 0xf8, 0xfc, 0xfe, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xf6, 0xf7, 0xf2, 0xf1, 0xf1, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xf8, 0xf9, 0xf9, 0xf9, 0xf0, 0xf0, 0xe8, 0xf0, 0xe0, 0xde, 0xff, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0xbf, 0xbf, 0xff, 0xdf, 0xef, 0xc7, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xe7, 0xe7, 0x8f, 0x87, 0x9f, 0x96, 0x96, 0x94, 0x80, 0x80, 0x80, 0xc0, 0x80, + 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xf4, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xf0, 0xfc, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x03, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7c, 0x7c, 0x38, 0x90, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x0f, 0x07, 0x00, 0x01, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0x3f, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x60, 0x70, 0x30, 0x32, 0x32, 0x77, 0x7f, 0x7f, 0x7f, 0x7f, 0x7e, 0x7e, 0x7e, 0x64, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf9, 0xfe, 0xfa, 0xfd, 0xff, 0xfe, 0x7d, 0x7e, 0xfa, 0xfb, 0xff, 0xf7, 0xf6, 0xfc, 0xfe, 0xfc, 0xfc, 0xf4, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x5f, 0xff, 0x0d, 0x2f, 0x1f, 0xee, 0xdf, 0xff, 0xff, 0x7f, 0x1d, 0xfd, 0xff, 0x1e, 0x3c, 0x1f, 0x03, 0x0d, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x9b, 0xb7, 0x9f, 0xaf, 0xbf, 0x1f, 0x0b, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0x7e, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x20, 0x60, 0xe0, 0xe0, 0x60, 0xf0, 0xc0, 0x70, 0x00, 0x00, 0x00, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf0, 0xf0, 0x70, 0x20, 0x00, 0x00, 0x00, 0x60, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xf9, 0xfc, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xdf, 0xdf, 0xdf, 0xcf, 0xef, 0xf7, 0xe7, 0xe3, 0xe7, 0xe0, 0xe2, 0xc2, 0xa6, 0x86, 0xcc, 0xc4, 0x84, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, + 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xa0, 0x01, 0x01, 0x01, 0x80, 0x80, 0xc0, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x07, 0x03, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7e, 0x3e, 0x3c, 0x1c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x7f, 0x3f, 0x7f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x5f, 0x0f, 0x07, 0x01, 0x3a, 0x65, 0x7e, 0xfe, 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xfc, 0xfe, 0xf8, 0xf8, 0xf8, 0xe0, 0xe0, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xd8, 0xc8, 0xdc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xe8, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0xf1, 0xf9, 0xe4, 0xfc, 0x7c, 0xf5, 0xf9, 0xe8, 0xec, 0xfc, 0xec, 0xcc, 0xb4, 0x20, 0x60, 0x60, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf1, 0xf3, 0xf7, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xef, 0x3d, 0x3f, 0x3b, 0xff, 0x7f, 0xfd, 0xff, 0x77, 0x3f, 0xff, 0x3c, 0x39, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x7e, 0x1f, 0x1f, 0xdf, 0x9f, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xc0, 0x86, 0xc4, 0x84, 0x00, 0x80, 0x03, 0x17, 0x07, 0x77, 0x0c, 0x36, 0x16, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xf8, 0xe8, 0xc0, 0xe0, 0x88, 0x88, 0xbc, 0x18, 0x01, 0x3f, 0x3f, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xe0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0xff, 0xf7, 0xff, 0xff, 0xd7, 0xff, 0xff, 0xff, 0xdf, 0x9f, 0xdf, 0xcf, 0xc2, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x00, 0x03, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xd8, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x0f, 0x03, 0x1b, 0xef, 0xfd, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x01, 0x00, 0x00, 0x06, 0x0b, 0x0a, 0x0b, 0x05, 0x18, 0x04, 0x00, 0x04, 0x00, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x2f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0x98, 0x98, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xd0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0x60, 0x60, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x8a, 0xf3, 0xf9, 0xf9, 0xe9, 0xed, 0xe3, 0xf1, 0x99, 0xf9, 0xfd, 0xd8, 0xe8, 0xa0, 0x70, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xce, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xfc, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xdf, 0x5f, 0x37, 0x7f, 0x56, 0xfb, 0xfb, 0x7f, 0xff, 0xef, 0x7d, 0xfa, 0xfb, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x03, 0x03, 0x63, 0x37, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x02, 0x82, + 0x01, 0x00, 0x00, 0x00, 0x07, 0x8f, 0x2f, 0xa9, 0x1e, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xf0, 0xf0, 0x90, 0x80, 0x20, 0x10, 0x10, 0x20, 0x60, 0xc0, 0x05, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xe8, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfa, 0xee, 0xec, 0xfa, 0xfa, 0xff, 0xfb, 0xdf, 0xef, 0xdf, 0x6f, 0xcf, 0xef, 0x8f, 0xdf, 0xcf, 0xcf, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0x80, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x78, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xa8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0xf3, 0xf3, 0xf9, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xd0, 0xe1, 0xcf, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x04, 0x12, 0x00, 0x00, 0x02, 0x04, 0x11, 0x2f, 0x3f, 0x7f, 0x7f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x70, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x18, 0x1c, 0xcc, 0xdc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xa0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x3c, 0xe6, 0xf2, 0xf3, 0xf3, 0xff, 0xe7, 0xd7, 0x77, 0xf7, 0xf7, 0xf7, 0xf3, 0xf3, 0xe3, 0xf2, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xef, 0xb7, 0x17, 0x57, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x1e, 0x1e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x09, 0x0b, 0x07, 0x00, 0x03, 0x0f, 0x1f, + 0xff, 0x37, 0x7b, 0x7b, 0xbf, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xff, 0xff, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xa0, 0x08, 0x64, 0x7f, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfd, 0xfc, 0xfc, 0xfd, 0xfc, 0xf8, 0xfc, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x1f, 0x7f, 0x7e, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xfa, 0xfc, 0xfc, 0xf9, 0xf1, 0xf9, 0xf4, 0xf4, 0xf8, 0xf8, 0xfb, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xcf, 0xff, 0xcf, 0xe5, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xd0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x34, 0x00, 0x00, 0x00, 0x08, 0x20, 0x04, 0x58, 0x34, 0xb0, 0xc8, 0xe8, 0xb4, 0x48, 0x00, 0x00, 0x18, 0xd8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xe1, 0xf1, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x8f, 0x87, 0x83, 0xc1, 0xc0, 0xc0, 0xc0, 0xc0, 0xa1, 0x01, 0x03, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x3f, 0xf3, 0xc3, 0x01, 0x01, 0x81, 0xc3, 0xc3, 0xff, 0xfe, 0xfc, 0xf8, 0xd0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0x30, 0x92, 0x9b, 0x9b, 0xfb, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0xb2, 0x30, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfd, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x27, 0x1f, 0x1f, 0x7f, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xfc, 0xff, 0xff, 0xc7, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc1, 0xc1, 0xc2, 0xc2, 0xc6, 0xea, 0xc9, 0xe1, 0xf0, 0xe0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc0, 0xa0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0x81, 0x01, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x97, 0xaf, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x9f, 0x9f, 0xdf, 0x07, 0xcf, 0x81, 0xc0, 0xe0, 0xf0, 0xf0, 0xe8, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x33, 0xf5, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, + 0xfe, 0xfe, 0xfc, 0xfc, 0x00, 0x00, 0x40, 0xf0, 0xf4, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcf, 0xdf, 0xdf, 0xff, 0xbf, 0x7f, 0x7f, 0xff, 0xfe, 0xf8, 0x34, 0x04, 0x0c, 0x9e, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfd, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x01, 0x00, 0x01, 0x07, 0x06, 0x18, 0x0d, 0x33, 0x08, 0x31, 0x3b, 0x1d, 0x57, 0x7f, 0x5b, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x77, 0x61, 0x44, 0x00, 0x02, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfb, 0xff, 0xf7, 0xf7, 0xf7, 0xff, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0x3f, 0x33, 0x00, 0x06, 0x0b, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0x98, 0xb8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xb0, 0xb0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcb, 0xf3, 0xf9, 0xfc, 0xfd, 0xff, 0xff, 0xeb, 0x63, 0xf7, 0xff, + 0xff, 0xff, 0xfb, 0xf9, 0xfb, 0xfb, 0xfb, 0xf7, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x47, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x3f, 0xdf, 0x2f, 0xff, 0xef, 0xff, 0xef, 0xef, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfb, 0xff, 0xf7, 0x6f, 0x0f, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0xfe, 0xfe, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x2b, 0x1f, 0x07, 0x27, 0x07, 0x3f, 0x0f, 0x1f, 0x83, 0x88, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe8, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0xbe, 0xce, 0xc6, 0xc0, 0xe0, 0xe0, + 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0x83, 0x81, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x7c, 0x7c, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xf0, 0xf0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xf8, + 0x60, 0x56, 0x7e, 0x7f, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xf0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x80, 0xa0, 0xa0, 0xc0, 0xa0, 0xc0, 0xb0, 0xf8, 0xd3, 0xfb, 0xd3, 0xc3, 0x01, 0x80, 0x00, 0xe8, 0xf0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xc7, 0xc1, 0xc1, 0xc1, 0xe0, 0xe1, 0xe3, 0xe3, 0xc7, 0x8f, 0x0f, 0x0e, 0x0f, 0x0f, 0x0e, 0x0f, 0x0f, 0x0e, 0x05, 0x0d, 0x05, 0x0b, 0x0e, 0x0f, 0x0e, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x8f, 0x0f, 0x8f, 0x1f, 0x1f, 0x1f, 0x1f, 0x9f, 0xc3, 0xc1, 0x8a, 0xc6, 0x08, 0x05, 0x00, 0x36, 0x53, 0xf5, 0xfd, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xe2, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x60, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe2, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0xfe, 0xf8, 0xf0, 0xe0, 0xf0, 0xf0, 0xe0, 0xe1, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xc6, 0xe6, 0xe2, 0xf2, 0xf7, 0xfe, 0xff, 0x8f, 0xef, 0xff, 0xff, 0xff, 0xff, 0xf6, + 0xe6, 0xe6, 0xe6, 0x84, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x75, 0x3f, 0x5f, 0xbf, 0xff, 0xbf, 0xbf, 0xdf, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe7, 0xc3, 0xc3, 0xe3, 0x87, 0xff, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0f, 0x2f, 0x3f, 0x1f, 0x1e, 0x9f, 0xff, 0x3f, 0x4f, 0x07, 0x07, 0x09, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0xbe, 0xae, 0xc6, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, + 0xc0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe8, 0xf4, 0xf8, 0xfa, 0xfe, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfc, 0xff, 0xbf, 0x07, 0x07, 0x03, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0x7e, 0x7e, 0x3d, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd0, 0xe8, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x78, 0x34, 0x10, 0x3e, + 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x40, 0xa0, 0xa3, 0xa7, 0xaf, 0xef, 0x07, 0x03, 0x01, 0x00, 0x00, 0xa0, 0xc0, 0xe0, 0xec, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xc7, 0x83, 0xc1, 0xc1, 0xc0, 0xc0, 0xe1, 0xe3, 0xe7, 0xcf, 0xcf, 0x0f, 0x07, 0x0f, 0x0e, 0x09, 0x07, 0x04, 0x09, 0x0e, 0x01, 0x06, 0x03, 0x04, 0x05, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x26, 0x00, 0x00, 0x00, 0x10, 0x08, 0x30, 0xc8, 0xe8, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xe0, 0xc4, 0x32, 0x76, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x3e, 0xfe, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x38, 0xf0, 0xe0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x90, 0x89, 0x99, 0xfb, 0xfb, 0xbf, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdd, 0xdd, 0xdc, 0xd8, 0xb8, 0x70, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf6, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfe, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x04, 0x0c, 0x3e, 0x3e, 0x5f, 0x3b, 0x3b, 0x7f, 0xff, 0xff, 0x7f, 0x1f, 0xbf, 0x0f, 0x07, 0x47, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xd0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xbe, 0xce, 0xc0, 0xa0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0x60, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xfe, 0xfe, 0xfc, 0xfb, 0xff, 0x7c, 0x3e, 0x08, 0x01, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc2, 0xe0, 0xe3, 0xe3, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0x74, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xfe, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0xff, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7a, 0x7e, 0x4d, 0x1d, 0x7f, 0x7f, 0xff, 0x7f, + 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x87, 0x8f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x80, 0x40, 0xd0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x87, 0x83, 0xc0, 0xc1, 0xc0, 0xc1, 0xf3, 0xf3, 0xe7, 0xe7, 0xe7, 0x8f, 0x06, 0x0f, 0x04, 0x0e, 0x04, 0x04, 0x02, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x9f, 0xdf, 0xff, 0xf8, 0xf0, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xf0, 0xe8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfd, 0xfe, 0xff, 0xff, 0xf0, 0xc0, 0x00, 0x00, 0x62, 0xdc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, + 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x3c, 0xfc, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x13, 0x9b, 0xfb, 0x7f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xdd, 0xdd, 0xdd, 0xdd, 0xcc, 0xd8, 0xb8, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0xff, 0xff, 0xfc, 0xfc, 0xfc, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0x7d, 0x3f, 0xbf, 0xfe, 0xdd, 0xf6, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x03, 0x3c, 0x3f, 0x1f, 0x3b, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x0f, 0x0f, 0x3f, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xc6, 0xf4, 0xe2, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x40, 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xf8, 0xf4, 0xfc, 0xfc, 0xfa, 0xf8, 0xfc, 0xfd, 0xf9, 0xff, 0x3b, 0x5d, 0x01, 0x01, 0x01, 0x02, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0xe1, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfc, 0x16, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc0, 0xe0, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0x3f, 0x7f, 0x3f, 0x7f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7c, 0x25, 0x7c, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x82, 0x8f, 0x1f, 0x1f, 0x0f, 0x07, 0x07, 0x01, 0x00, 0x00, 0x40, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd7, 0xc7, 0xc1, 0xe0, 0xc1, 0xe1, 0xf1, 0xf3, 0xf3, 0xf3, 0xe7, 0xe7, 0x87, 0x07, 0x06, 0x06, 0x06, 0x04, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfd, 0xfc, 0xfc, 0xff, 0xfe, 0xf0, 0xc0, 0x00, 0x00, 0x40, 0x7e, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xf0, + 0xc0, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf0, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x09, 0x5d, 0x3f, 0x0f, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xf7, 0xf7, 0xf7, 0xf6, 0xee, 0xfe, 0x9c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x3f, 0xff, 0xfc, 0xf8, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0xf8, 0xfc, 0xfc, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2d, 0x1d, 0x10, 0x76, 0x31, 0xb9, 0xff, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x07, 0x06, 0x07, 0x1f, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0x2f, 0x03, 0x9f, 0x35, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0xe0, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xdd, 0xff, 0xf9, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, + 0xf8, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xa8, 0x00, 0xe0, 0xb0, 0xe0, 0xfc, 0xf8, 0xfc, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xb0, 0xcf, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x37, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb0, 0x70, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0x7f, 0x3f, 0x10, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfa, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xdf, 0xff, 0xdf, 0xdf, 0xdf, 0x9f, 0xbf, 0xdf, 0x9f, 0x3f, 0x5f, 0x3f, 0x5f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x12, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, + 0x7f, 0x7f, 0x3f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x07, 0x8f, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfc, 0xfd, 0xf9, 0xf1, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xc0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xfc, 0xf0, 0xc0, 0x80, 0x00, 0x85, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x48, 0xcc, 0xce, 0xfe, 0xfe, 0xfe, + 0xfe, 0xfe, 0xfe, 0xfe, 0x6c, 0xe8, 0xe8, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x3f, 0xfe, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x90, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xf8, 0xec, 0xf6, 0x73, 0xd0, 0xfc, 0xff, 0xdf, 0xdf, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xf7, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x01, 0x1f, 0x73, 0xfb, 0x7f, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, + 0xf0, 0xf8, 0xf8, 0xf8, 0x70, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x08, 0x08, 0x0f, 0x0f, 0x87, 0x87, 0x81, 0xc0, 0xea, 0xfb, 0xf0, 0xf4, 0x62, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xfd, 0xff, 0xfe, 0xfe, 0xfd, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xf8, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xbc, 0x08, 0x80, 0xc0, 0xa0, 0xe8, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x53, 0x0b, 0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0e, 0x3f, 0x7f, 0x7f, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x01, 0x80, 0xd0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xf7, 0xef, 0xff, 0xf7, 0xcf, 0xff, 0x6f, 0x1f, 0x8f, 0x7f, 0x5f, 0xbf, 0x3f, 0x1f, 0x3f, 0x3f, 0x1f, 0x1f, 0x3f, 0x1f, 0x3e, 0x1f, 0x1b, 0x3f, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, + 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xfa, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x30, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x10, 0x11, 0x9b, 0xfb, 0x7f, + 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0x9b, 0x9f, 0xbb, 0x98, 0xb8, 0xf0, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7b, 0xbf, 0xfd, 0xfd, 0xfd, 0xe8, 0xf6, 0xfe, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x0e, 0x3e, 0x1e, 0x1f, 0x1d, 0x7f, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0x3f, 0x7f, 0xff, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x0f, 0x0f, 0x9f, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc1, 0x80, 0xc2, 0xe7, 0xe3, 0xf3, 0xf1, 0xf4, 0xf0, 0xfc, 0xfe, 0xfc, 0xfc, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xe0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x07, 0xf3, 0xc1, 0xf0, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, + 0xf0, 0xe0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xd0, 0xe0, 0xf8, 0xf8, 0xfe, 0xfc, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0x7e, 0x1f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xc7, 0xdf, 0xbf, 0xbf, 0xdf, 0x0f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0xd0, 0xf0, 0xf0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x07, 0x16, 0x0f, 0x1f, 0x3f, 0x1f, 0x6f, 0xff, 0xef, 0xef, 0xbf, 0xef, 0xff, 0x3f, 0x3f, 0xbf, 0x3f, 0x3f, 0xbf, 0x3f, 0xff, 0xbf, 0x7f, 0x3f, 0x1c, 0x00, 0x7a, 0x3e, 0x3f, 0x7e, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, + 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xfa, 0xe8, 0xfa, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0x01, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x86, 0x01, 0x01, 0x00, 0x00, 0x2a, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x60, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x70, 0x60, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x42, 0x26, 0x36, + 0x1f, 0x87, 0xc7, 0xff, 0xff, 0xef, 0xf7, 0xf3, 0xf3, 0xf3, 0xf3, 0xf3, 0xee, 0x8c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x5f, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x37, 0x9c, 0xdb, 0xdc, 0x7f, 0x7f, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x31, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x07, 0x43, 0x07, 0x4f, 0x7f, 0x7f, 0x3f, 0x7f, 0x0b, 0x03, 0x07, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x07, 0x37, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xa0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe8, 0xe0, 0xf8, 0x8e, 0x0e, 0x0f, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x80, 0xe0, 0xa0, 0xe0, 0xe0, 0xf0, 0xe7, 0xdf, 0xd7, 0xf7, 0xd7, 0x93, 0xe3, 0x83, 0xc0, 0xe0, 0xe0, 0xd8, 0xf0, 0xf8, 0xfe, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0b, 0x16, 0x1b, 0x3c, 0x3f, 0x7f, 0x5e, 0x7f, 0x3e, 0x3f, 0x3f, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x38, 0x5e, 0x6a, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0x7e, 0x7e, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf9, 0xfb, 0xfa, 0xf4, 0xf8, 0xec, 0xf8, 0xfc, 0xf8, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0b, 0x37, 0x06, 0x00, 0x01, 0x00, 0x0f, 0x0f, 0x3f, 0x7f, 0xff, 0x7f, 0xbf, 0x1f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x8f, 0x7f, 0xff, 0x0f, 0x1f, 0x2f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x4c, 0x6e, 0x7e, 0x3e, 0x7f, 0xfe, 0xfe, 0xfe, 0x36, 0x32, 0x32, 0x30, 0x30, 0x30, 0xa0, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x60, 0x40, 0x00, 0x20, 0x08, 0xdc, 0xfe, 0xee, 0xe5, 0xfc, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xd0, 0x06, 0x1e, 0x3e, 0x7c, 0x78, 0x60, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x11, 0x01, 0x09, 0x3f, 0x1d, 0x1d, 0x1d, 0x09, 0x05, 0x00, 0x07, + 0x07, 0x07, 0x06, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x87, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf4, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x70, 0xf0, 0xf0, 0xf6, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xb3, 0xe3, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xcf, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x03, 0x0f, 0x0f, 0x5f, 0x07, 0x07, 0x07, 0x0f, 0x1f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfa, 0xf8, 0xfa, 0xf0, 0xf1, 0xed, 0xfd, 0xff, 0xff, 0xfd, 0xff, 0xfd, 0xfd, 0xfd, 0xfe, 0xfa, 0xe0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0b, 0x3f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x07, 0x03, 0x00, 0x1c, 0x3e, 0xfe, 0xfe, 0xfc, 0xf8, 0xfc, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfc, 0xf0, 0xf3, 0xfb, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf1, 0xe1, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xc7, 0x47, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x66, 0x67, 0x7f, 0x3f, 0x3f, 0xff, 0x7f, 0xff, 0xbb, 0xbb, 0x1a, 0xba, 0x98, 0xb8, 0x30, 0xf0, 0xe0, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x62, 0x50, 0x00, 0xcc, 0xfe, 0xff, 0xe7, 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfc, 0xe0, 0x00, 0x01, 0xf1, 0x07, 0x07, 0x0f, 0x1e, 0x1c, 0x78, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x39, 0x19, 0x08, 0x1c, 0x1f, 0x1f, 0x1e, 0x0e, 0x06, 0x00, + 0x03, 0x05, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x0f, 0x1f, 0x3f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x7f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3a, 0x3c, 0x70, 0x40, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x0f, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf0, 0xc0, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0xd7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xa0, 0x80, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xe0, 0xc0, 0xe0, 0xd0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x27, 0x5f, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x3f, 0xff, 0xbf, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xfa, 0xf9, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfd, 0xff, 0xfd, 0xfa, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x06, 0x03, 0x03, 0x38, 0x38, 0xfc, 0xff, 0xfd, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf1, 0xc7, 0xc3, 0xd7, 0x9f, 0xff, 0x7f, 0xff, 0xff, 0x4f, 0x87, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x8f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x26, 0x26, 0x67, 0x7f, 0x7f, 0x3f, 0x7f, 0xff, 0xff, 0xfb, 0xdb, 0x99, 0x98, 0x98, 0x98, 0xb0, 0xf0, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xe8, 0xf6, 0x62, 0x38, 0x88, 0xce, 0xff, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfe, 0xfe, 0xe8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x09, 0x7e, 0x18, 0x18, 0x1d, 0x3f, 0x1f, 0x1e, 0x0f, 0x04, + 0x03, 0x03, 0x07, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0c, 0x3e, 0x3e, 0xfe, 0xff, 0xe0, 0x00, 0x38, 0x78, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1b, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0xbe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfe, 0xfc, 0xfe, 0xfc, 0xf8, 0xfc, 0xf8, 0xf4, 0xf4, 0xf8, 0xf8, 0xe4, 0xf0, 0xf8, 0xf0, 0xd0, 0xc0, 0xe0, 0xd0, 0xe0, 0xa0, 0xc0, 0xe0, 0xa0, 0xe0, 0xf0, 0xf0, 0xc0, 0xe0, 0xf4, 0xd0, 0xd0, 0xe0, 0xe0, 0xc0, 0x40, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0b, 0x03, 0x01, 0x70, 0xf8, 0xf4, 0xc2, 0xc2, 0xc0, 0xc0, 0xc0, 0xc0, 0xe1, 0xc3, 0xc7, 0x87, 0x0f, 0x1f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0x1f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xc9, 0x99, 0xf9, 0x3f, 0x1f, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xdd, 0xdd, 0xdd, 0x9c, 0x98, 0x18, 0xf0, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x3c, 0x7f, 0xff, 0xff, 0xf9, 0xfc, 0xe2, 0xff, 0xff, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x01, 0x03, 0x0e, 0x1e, 0x9f, 0x7e, 0x0e, 0x3f, 0x7f, 0xdf, 0xff, 0x3f, 0x5f, + 0x1f, 0x1f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x83, 0xc0, 0xc0, 0xe3, 0xe3, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe8, 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0x70, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x78, 0x7c, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x8f, 0x07, 0x01, 0x80, 0x00, 0x00, 0x80, 0xe0, 0xc0, 0xf0, 0xe8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x9f, 0x87, 0x07, 0x07, 0xc3, 0x01, 0x01, 0x00, 0xc0, 0x40, 0x80, + 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x8f, 0xbf, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x20, 0xa0, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xd0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xff, 0xfe, 0xff, 0xfc, 0xf0, 0x48, 0xc8, 0xb0, 0xf2, 0xec, 0xd0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x0d, 0x03, 0x16, 0x0f, 0x6f, 0x5f, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xfa, 0xf8, 0xf8, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, + 0xe0, 0xf8, 0xfa, 0xfe, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x17, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xc1, 0xe1, 0xe3, 0xe7, 0xc7, 0x83, 0x07, 0x07, 0xbf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0xbf, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0x40, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x02, 0x00, 0x02, 0x03, 0x07, 0x01, 0x05, 0x00, 0x00, 0x00, 0x08, 0x0a, 0x02, 0x0b, 0x25, 0x1f, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x1f, 0x0f, 0x00, 0x03, 0x03, 0x07, 0x1f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfb, 0xc7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xdd, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x84, 0x80, 0xc0, 0x64, 0xe4, 0x0c, 0x07, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xef, 0xcc, 0xcc, 0xce, 0xcc, 0xc8, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x10, 0x3f, 0x2e, 0x3f, 0x7f, 0xee, 0xbd, 0xf1, 0x7f, 0x7f, 0xfb, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xf0, 0xe0, 0xe0, 0xe0, 0xf0, 0x30, 0x10, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x0f, 0x9f, 0x8f, 0x06, 0x0f, 0x3f, 0xdf, 0xbf, 0x7f, 0x2f, + 0x0f, 0x17, 0x9f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0xf0, 0xf1, 0xf1, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0x6a, 0x50, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xc0, 0xe0, 0xe8, 0xfc, + 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3e, 0xbe, 0x1c, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xf8, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x1f, 0x7f, 0xff, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x77, 0xff, 0xed, 0xfe, 0xfc, 0xfa, 0xfe, 0xfd, 0xff, 0xff, + 0xfc, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xe0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x70, 0x78, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0x01, 0x81, 0x60, 0x80, 0xa0, 0xa0, 0xf8, 0xf8, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xf0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x9f, 0x07, 0x83, 0x82, 0x01, 0x02, 0x82, 0x80, 0x89, 0x1d, 0x28, 0x19, 0x25, 0x33, 0x0f, 0x57, 0x0f, 0x2f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0x7f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x8f, 0x13, 0x41, + 0x00, 0x30, 0xd0, 0xfc, 0xf2, 0xfc, 0x73, 0xfe, 0xf7, 0xfb, 0xcc, 0xf8, 0xf8, 0xd3, 0x55, 0xff, 0xfb, 0xf7, 0x0b, 0x23, 0x01, 0x21, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x80, 0xd0, 0xd0, 0xe8, 0xd0, 0xf8, 0xf0, 0xe0, 0x40, 0x00, 0x00, 0xf2, 0xf0, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x80, 0x00, 0x9a, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x01, 0x05, 0x03, 0x07, 0x0f, 0x0f, 0x03, 0x0f, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb8, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x00, 0x01, 0x01, 0x0f, 0x3f, 0x7f, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0x61, 0x01, 0x47, 0x79, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe2, 0xe0, 0xf1, 0xf3, 0x3b, 0x9f, 0x83, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xe6, 0xfe, 0xe6, 0xee, 0xc6, 0xcc, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x0f, 0x7f, 0x5f, 0x9f, 0xdf, 0xff, 0xfe, 0x7d, 0x3f, 0xff, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0x70, 0x3c, 0x1e, 0x1e, 0x0e, 0x00, 0x02, 0x17, 0x47, 0x47, 0x8b, 0x07, 0x8f, 0xff, 0xff, 0x1f, + 0x2f, 0x17, 0x47, 0x1f, 0x43, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xcf, 0x83, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0x7f, 0x0f, 0x04, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xd0, 0xe0, 0xf8, 0xfa, 0xfe, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xaf, 0xef, 0xd6, 0xca, 0xe0, 0xc0, 0xc0, 0xc0, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x05, 0x1f, 0x3f, 0x1b, 0x07, 0x0f, 0x0f, 0x03, 0x03, 0x01, 0x01, 0x80, 0xe0, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0x7c, 0xa8, 0x80, 0xe0, 0xe0, 0xe0, 0xe0, 0xe8, 0xf0, 0xe8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x3f, 0x9f, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x01, 0x01, 0x11, 0x91, 0xb9, 0xfd, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x80, 0x40, 0xa0, 0xd0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc3, 0xc3, 0xc1, 0xc0, 0xc0, 0xe1, 0xe1, 0xe3, 0xe3, 0xe7, 0xcf, 0x8e, 0x1f, 0x3a, 0x1d, 0x15, 0x37, 0x2f, 0x07, 0x37, 0x0f, 0x07, 0x0f, 0x17, 0x07, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, + 0x7f, 0xff, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x38, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xfc, 0xf8, 0xfc, 0xf8, 0xf8, 0xc0, 0x00, 0x10, 0xf0, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0x80, 0x00, 0x2d, 0x4c, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x03, 0x01, 0x03, 0x03, 0x03, 0x03, 0x07, 0x03, 0x07, 0x03, + 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x3f, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x3f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7c, 0x00, 0x80, 0xc5, 0xeb, 0xef, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xeb, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf8, 0xdc, 0x89, 0x01, 0xe1, 0xf8, 0xff, 0x7f, 0xff, 0xff, 0xf9, 0xfb, 0xff, 0xf7, 0xf7, 0xf7, 0xfe, 0xff, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xf0, 0xf0, 0xe0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0x7c, + 0x1e, 0x14, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x21, 0xe3, 0xed, 0xde, 0xcf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe1, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x2f, 0x3f, 0x1f, + 0x0f, 0x0f, 0x07, 0x0b, 0x83, 0xc5, 0xc3, 0xc1, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0xe4, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1e, 0x0a, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xe0, 0xe8, 0xe0, + 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0x7c, 0x78, 0x70, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x10, 0x7e, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x05, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x41, 0xc1, 0x80, 0xe0, 0xe0, 0xe0, 0xf0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf1, 0xe7, 0x07, 0x05, 0x07, 0x03, 0x03, 0x01, 0x01, 0x80, 0xc0, 0xf0, 0xe0, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfb, 0xff, 0xfb, 0xfd, 0xff, 0xfc, + 0xff, 0xff, 0xfc, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xdf, 0xff, 0xff, 0x8f, 0x00, 0x00, 0x00, 0x06, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xe0, 0xb0, 0xd0, 0xfc, 0xf8, 0xe0, 0xc0, 0x80, 0x80, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x40, 0xf0, 0xa8, 0xf8, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x8f, 0x87, 0x83, 0x83, 0x81, 0x81, 0x85, 0x87, 0x85, 0x15, 0x2b, 0x2f, 0x51, 0x2b, 0x0f, 0x2f, 0x8f, 0x3f, 0x9f, 0xbf, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xbf, 0x8f, 0xeb, 0xe0, 0xf8, 0xf4, 0xf8, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x80, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0e, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xc0, 0x03, 0x07, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x03, 0x01, 0x03, 0x03, 0x03, 0x01, 0x02, 0x0f, 0x07, 0x1f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x5f, 0x1f, 0x1f, + 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x07, 0x03, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x3f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x3f, 0xbf, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xc8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x98, 0xfc, 0xfe, 0xef, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x26, 0x80, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x79, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x0f, 0x00, 0x81, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, + 0x0f, 0x0f, 0x1f, 0x9f, 0xcf, 0xdf, 0xcf, 0xe7, 0xe3, 0xf1, 0xf8, 0xfc, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x7c, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, 0x7f, 0x3e, 0x2e, 0x18, 0x3c, + 0x3c, 0x3c, 0x38, 0x38, 0x38, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xe0, 0xc1, 0xe1, 0xc1, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xbc, 0xfe, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xfa, 0xff, 0x4f, 0x1f, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xed, 0xf1, 0xc1, 0xa1, 0x00, 0x03, 0x81, 0x81, 0x80, 0x40, 0x00, 0x80, 0xa0, 0xa0, 0xe0, 0xa0, 0xe0, 0xa0, 0xe8, 0xe0, 0xe0, 0xe4, 0x98, 0xec, 0xee, 0xfc, 0xfe, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x5f, 0x3f, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0xb6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa7, 0x57, 0x0f, 0x07, 0x01, 0x03, 0x01, 0x03, 0x07, 0x07, 0x07, 0x07, 0x0f, 0x07, 0x03, 0x03, 0x83, 0x23, 0x1f, 0x9f, 0x0f, 0x3f, 0x9f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf0, 0xf0, 0xc0, 0x80, 0x00, 0x01, 0x01, 0x07, 0x0f, 0x5f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x47, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x39, 0xc7, 0x5a, 0x94, 0xe0, 0xea, 0x20, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x6f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0x1f, 0x3f, 0x0f, 0x1c, 0x3c, 0x7c, 0x38, 0x60, 0x00, 0x01, 0x04, 0x38, 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe2, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x05, 0x00, 0x00, 0x00, 0x00, 0x09, 0x35, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xfc, 0xfe, 0xef, 0xef, 0xff, 0xff, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x77, 0xc2, 0xf3, 0xf6, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x19, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x17, 0x83, 0xe3, 0xff, 0xff, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x07, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0x9f, 0xdf, 0xdf, 0xdf, 0xff, 0xed, 0xf9, 0xfc, 0xfe, 0xff, 0xff, 0x7f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x50, 0xf8, 0xfc, 0xfc, 0xf8, 0xfc, 0xf8, 0xfc, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xe0, 0xca, 0xbe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xa0, 0xc8, 0x80, 0x88, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x78, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7e, + 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, 0xfc, 0xe8, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x5e, 0x3f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0x7f, 0x1d, 0x5f, 0x63, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xf8, 0xfa, 0xc8, 0x74, 0x00, 0x14, 0x01, 0x03, 0x01, 0x03, 0x03, 0x01, 0x03, 0x01, 0x01, 0x81, 0x81, 0xc1, 0xc0, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x0f, 0x0f, 0x1f, 0x17, 0x1f, 0x1f, 0x3f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x07, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x90, 0x20, 0x60, 0x40, 0x40, 0x00, 0x30, 0x40, 0x03, 0x43, 0x43, 0x03, 0x47, 0x83, 0xc3, 0xff, 0xff, 0x1f, 0x0f, 0x9f, 0x07, 0x8f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xf8, 0xe0, 0x80, 0x00, 0x03, 0x03, 0x07, 0x07, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xed, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0x7e, 0x4e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x7f, 0x5f, 0xff, 0xbf, 0x7e, 0x18, 0xe0, 0x56, 0xbc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe7, 0xf2, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xde, 0xdf, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xca, 0xe0, 0xfb, 0xf2, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x21, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0b, 0x97, 0xf1, 0xff, 0xff, 0xff, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x3f, 0x7f, 0x3f, 0x7f, 0x3f, 0x3f, 0xbf, 0xdf, 0xdf, 0xff, 0xdd, 0xe9, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x9f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe1, 0xc3, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf2, 0xc7, 0xc6, 0xce, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0xac, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xd0, 0xe0, 0xc0, 0x7c, 0xf8, 0xe0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0xff, 0xff, 0x7f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xdf, 0xef, 0xcf, 0xcf, 0xef, 0xef, 0xe3, 0xf3, 0xe3, 0xe7, 0xe7, 0xc3, 0xc3, 0xc3, 0xff, 0xff, 0xff, 0xbf, 0xef, 0xcf, 0xc3, 0xc1, 0x03, + 0x80, 0x00, 0x00, 0x40, 0xc0, 0xc0, 0x80, 0x80, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x09, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x00, 0x0d, 0x09, 0x00, 0x06, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x01, 0x07, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfa, 0xfe, 0xfc, 0xf8, 0xd0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xe0, 0x80, 0x01, 0x03, 0x07, 0x07, 0x1f, 0x5f, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xe7, 0xc7, 0xe3, 0xc3, 0x03, 0x03, 0x03, 0x03, 0x07, 0x07, 0x0f, 0x1f, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf0, 0xc0, 0x83, 0x17, 0xff, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x7f, 0x3f, 0x1f, 0x7f, 0x3f, 0x3f, 0x1f, 0x3f, 0xbf, 0x3f, 0xea, 0xf4, 0xf8, 0xf0, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0xec, 0xfe, 0xfe, 0xdf, 0xf8, 0xc0, 0xf0, 0xf0, 0xd0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf4, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xee, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf9, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xc3, 0xe3, 0xf9, 0xfa, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x8f, 0xe7, 0xff, 0xff, 0xff, 0xff, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xe0, 0xc0, 0x80, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xe5, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x05, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc4, 0xee, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe1, 0xe3, 0xc7, 0x87, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xda, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xd8, 0xe0, 0x20, 0xe8, 0xf0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x9f, 0xdf, 0xf7, 0x17, 0xb7, 0xdf, 0xc7, 0x27, 0x87, 0x03, 0x13, 0x83, 0xe7, 0xf7, 0xff, 0xff, 0xff, + 0xff, 0xb7, 0x47, 0x06, 0x00, 0x00, 0xa0, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x81, 0x81, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x07, 0x07, 0x03, 0x07, 0x07, 0x07, 0x06, 0x82, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xf2, 0xff, 0xff, 0xfe, 0xff, 0xfd, 0xfc, 0xfc, 0xfc, 0xec, 0xf0, 0xd0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xe0, 0x80, 0x01, 0x07, 0x07, 0x07, 0x07, 0x1f, 0x5f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0x5f, 0x1f, 0x0e, 0x0e, 0x0e, 0x1e, 0x1c, 0x1c, 0x7c, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xef, 0x07, 0x03, 0x01, 0xef, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x0f, 0x1f, 0x0f, 0x1f, 0x3f, 0x9f, 0x5f, 0xaf, 0x9f, 0x3f, 0xde, 0xf0, 0xf0, 0xe0, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf8, 0xf0, 0xe0, 0x80, 0x80, 0xb0, 0x18, 0x80, 0x80, 0x00, 0x01, 0x01, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xe7, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x81, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x24, 0xf6, 0xf7, 0xff, 0xff, 0xff, 0xfc, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xe1, 0xf9, 0xf1, 0xf0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x9f, 0xc3, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfe, 0xff, 0xff, 0xff, 0xf6, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x17, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6f, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xf9, 0xf1, 0xc1, 0x81, 0x03, 0x03, 0x03, 0x03, 0x07, 0x06, 0x0c, 0x18, 0x00, 0x80, 0x70, 0xe0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xcc, 0xf9, 0xbb, 0xff, 0xc3, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0xd0, 0xfc, + 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xf4, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xfe, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xe0, 0xf0, 0xfa, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x4f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xcf, 0xcf, 0xdf, 0xaf, + 0x1f, 0x5f, 0x1f, 0x3f, 0x7f, 0xfe, 0x7e, 0x7c, 0x18, 0x18, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0xdf, 0xef, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x05, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0x7c, 0xf0, 0xf0, 0xf1, 0xe1, 0xfb, 0xff, 0xfe, 0xdf, 0xfc, 0xfc, 0xfc, 0xf8, + 0xf8, 0xf8, 0xf8, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x3f, 0x7f, 0x7f, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x08, 0x68, 0xf8, 0xf0, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xe0, 0xe3, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xbf, 0xff, 0x1f, 0x3f, 0x1f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0b, 0x0f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xf4, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xd4, 0xe8, 0xe2, 0xe0, 0xd0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x5f, 0xd7, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, + 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x0f, 0x3f, 0x3f, 0x1f, 0x3f, 0x9f, 0x9f, 0xdf, 0xdf, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x9e, 0xf9, 0xef, 0xb3, 0x87, 0x83, 0x80, + 0x00, 0x00, 0x00, 0x80, 0xf0, 0xfa, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfb, 0xfd, 0xf4, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, + 0xff, 0xff, 0x9f, 0xbf, 0x7f, 0xbf, 0x3f, 0x7f, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x04, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, 0xf1, 0xf1, 0xd1, 0xc1, 0xe2, 0x88, 0x40, 0x18, 0x6c, + 0x50, 0xd0, 0x90, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf8, 0xf8, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x5f, 0x3f, 0x3f, 0x3d, 0x7b, 0xfa, 0xfc, 0xee, 0xf8, 0xfb, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0x3c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xc0, 0x70, 0xf1, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x05, 0x01, 0x03, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc4, 0xf6, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xdf, 0xd4, 0xc0, 0xc8, 0xc2, 0xc8, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0xaf, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x0f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, + 0x80, 0x80, 0xc0, 0x80, 0xc0, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xe0, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x1f, 0x3f, 0x1f, 0x3f, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xff, 0xf7, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0x2f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xfc, 0xf8, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xec, 0xe4, 0xe5, 0x83, 0xa7, + 0x87, 0x07, 0x83, 0x00, 0x00, 0x00, 0x40, 0xe8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xd7, 0xf6, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfd, 0xfd, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0xbf, 0xbf, 0xff, 0xff, + 0xff, 0xbf, 0xbf, 0x7f, 0xbf, 0x3f, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0xfe, 0xfe, 0xfc, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xc0, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x0e, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf2, 0xfe, 0xf8, 0xf8, 0xfc, 0xf0, 0xf1, 0xf3, 0xe3, 0x81, 0x80, 0x81, + 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x07, 0x0f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3e, 0x1e, 0x3c, 0x78, 0x7a, 0xf0, 0x50, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x8f, 0x77, 0x8f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x60, 0xc0, 0xf0, 0xe0, 0xf1, 0xf9, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x1f, 0x0f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x0f, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe4, 0xf6, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0e, 0x18, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5f, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x07, 0x0f, 0x37, 0x1f, 0x7f, 0x1f, 0xbf, 0xff, 0xbf, 0xfd, 0xdd, 0xe3, 0xf8, 0xfc, 0xfd, 0xfe, 0x7f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe8, 0xf4, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xef, 0xf7, 0xe2, + 0xe5, 0x81, 0x8b, 0x87, 0x87, 0x07, 0x07, 0x07, 0x01, 0x00, 0x80, 0xa0, 0xf0, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0x8f, 0x23, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0xfe, 0xfe, 0xfa, 0xf5, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, + 0x3f, 0x3f, 0x7f, 0xff, 0x3f, 0xbf, 0x3f, 0xff, 0x3f, 0x06, 0x1b, 0x3e, 0x78, 0x7e, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x38, 0x7c, 0x7e, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfd, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x10, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0xfa, 0xfe, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xc0, 0x81, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xd0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x0f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x05, 0x07, 0x07, 0x0f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3e, 0x1c, 0x1c, 0x18, 0x38, 0x78, 0xf8, 0x40, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf2, 0xef, 0xff, 0xbf, 0xbf, 0x1f, 0x9f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xc0, 0xb0, 0xd8, 0xf8, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x90, 0xe0, 0xc0, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfe, 0xff, 0xf6, 0xe7, 0xff, 0xff, 0xfe, 0xfc, 0xfc, 0xf8, 0xfd, 0xfd, 0xfd, 0xf5, 0x4f, 0x0f, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x08, 0xed, 0xfb, 0xff, 0xfb, 0xff, 0xff, 0xff, 0xf3, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x0f, 0x01, 0x00, 0x00, 0x30, 0x10, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xc0, 0x88, 0xb8, 0xb0, 0x70, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xf0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x03, 0x07, 0x01, 0x03, 0x01, 0x01, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf4, 0xfc, 0xf8, 0xf1, 0xf1, 0xf0, 0xf0, 0xc1, 0xc1, 0xc1, 0x00, 0x41, 0x00, 0x80, 0x40, 0xe0, 0xf8, 0xf8, 0xfd, 0xff, 0xff, 0xfe, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfe, 0x3e, 0x1e, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xc0, 0xd0, 0xe8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x03, 0x83, 0x5b, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xfe, 0xff, 0xf9, 0xff, 0xf7, 0xff, 0xff, 0xcf, 0x8f, 0x8f, 0xcf, 0x9f, 0x9f, 0x8f, 0x9f, 0x8f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf4, 0xfd, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x1f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xfe, 0xfc, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0xf0, 0xf8, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xc0, 0x40, 0xc0, 0x80, 0xc0, 0xc0, 0xc9, 0x5f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x07, 0x03, 0x7b, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x10, 0x00, 0x10, 0x64, 0xd8, 0x14, 0x48, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x3f, 0xbf, 0x1f, 0x07, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xa0, 0xf4, 0xfb, 0xff, 0xff, 0xfd, 0x7f, 0xde, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x83, 0x83, 0xe1, 0xe1, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x02, 0x18, 0xe4, 0xf6, 0xff, 0xff, 0xf7, 0xfe, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0x47, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf0, 0x9b, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf3, 0xff, 0x7f, 0x3f, 0x3f, 0x7f, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0xc0, 0xf8, 0xec, 0xf8, 0xfc, 0xfc, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xfe, 0xfe, 0xfc, 0xfe, 0x7c, 0xf8, 0xf4, 0xf0, 0xdc, 0x76, 0x1c, 0x9c, 0x7c, 0x7c, 0x38, 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf8, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0xbf, 0xbf, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfb, 0xfc, 0xfd, 0xf8, 0xe8, 0xe0, 0xd0, 0x80, 0xc0, 0x40, 0xf8, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0x7f, 0x5f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe8, 0xf8, 0xfe, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x00, 0x00, 0x78, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xe3, 0xe7, 0xe7, 0xef, 0xf7, 0xe7, 0xf7, 0xe7, 0xf1, 0xc1, 0xe0, 0xc0, 0xc0, 0xc0, 0x80, 0xc0, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x0f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0x3e, 0x1c, 0x9c, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xc0, 0xf0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x10, 0xe8, 0xb4, 0xfc, 0xd8, 0xf8, 0xe0, 0xf0, 0xf9, 0xf3, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xff, 0x3f, 0x9f, 0x0f, 0x03, 0x01, 0x1c, 0x07, 0x05, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xfc, 0x5e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x1e, 0x05, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x4f, 0xbf, 0x47, 0x07, 0x83, 0x03, 0xc5, 0xe1, 0xf1, 0xf0, 0xf8, 0xf8, 0xfe, 0xe3, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0xfe, 0xfe, 0xbf, 0xf8, 0xfc, 0xf2, 0xff, 0xff, 0xf7, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x7a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xf8, 0xfb, 0xdf, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xf7, 0x7b, 0x3f, 0x1f, 0x07, 0x2f, 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, 0xfd, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xde, 0xcd, 0xc7, 0xb8, 0x80, 0x00, 0x00, 0x03, 0x0e, 0x14, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xc0, 0xc0, 0x00, 0x01, 0x03, 0x01, 0x02, 0x03, 0x03, 0x03, 0x83, 0x81, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x07, 0x07, 0x57, 0xd7, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xfe, 0xf0, 0xf8, 0xf0, 0xe0, 0xe0, 0xc0, 0xbe, 0x7d, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x1f, 0x07, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x95, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xf8, 0xf1, 0xf1, 0xf3, 0xff, 0xf3, 0xf1, 0xf9, 0xf8, 0xf0, 0xf8, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0x90, 0xe0, 0xf8, 0xf8, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x61, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x60, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x17, 0x0f, 0x0f, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x90, 0xf4, 0xfd, 0xf6, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0xaf, 0x8f, 0x8f, 0xcf, 0x03, 0x01, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x90, 0xd0, 0xcc, 0xf8, 0xe5, 0x1a, 0x7f, 0x57, 0x5f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xec, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xed, 0xf8, 0xe0, 0xf8, 0xfa, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xfc, 0x78, 0x3c, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xfa, 0xe8, 0xdd, 0xff, 0xff, 0xde, 0xee, 0xff, 0xff, 0xff, 0xfe, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x0f, 0x1f, 0x03, 0x2f, 0x3b, 0xe3, 0xe7, 0xcf, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0xef, 0x05, 0x52, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xe0, 0xb8, 0xf0, 0xe0, 0xf8, 0xf0, 0xfc, 0x78, 0x3c, 0x24, 0x20, 0xe0, 0x64, 0xa0, 0xc0, 0xc0, 0x40, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0x00, 0x00, 0x03, 0x07, 0x03, 0x0f, 0x02, 0x00, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0xe0, 0xf0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfc, 0xfe, 0xfc, 0xfe, 0xff, 0x7f, 0x0f, 0x03, 0x00, 0x00, 0xd0, 0xc0, 0xfc, + 0xe9, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfd, 0xfe, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xe0, 0xf0, 0xc0, 0xc0, 0x00, 0x00, 0x1c, 0x3f, 0x3f, 0x1a, 0x1a, 0x1c, 0x1e, 0x0e, 0x0f, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa8, 0xfc, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x1f, 0x1f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x06, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x73, 0xfa, 0xf0, 0xf0, 0xe8, 0xf0, 0xf8, 0xe8, 0xf2, 0xec, 0xf0, 0xf4, 0xfa, 0xf8, 0xf0, 0xf8, 0xf0, 0xf8, 0xf8, 0xfc, 0xf0, 0xf8, 0xf0, 0xf8, 0x1c, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xe0, 0xf8, 0xfc, 0xf0, 0xff, 0xfe, 0xfa, 0xfe, 0x7c, 0x06, 0x07, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x1f, 0x3f, 0x1f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x7f, 0xbf, 0x7f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xf8, 0xf0, 0x42, 0x1a, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x30, 0xc0, 0xe4, 0xe6, 0xf1, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xdf, 0xff, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x3f, 0xbf, 0x4f, 0x07, 0x07, 0x03, 0x07, 0x03, 0x02, 0x00, 0x80, 0x40, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0x7e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x16, 0x1b, 0x61, 0x00, 0xbc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x02, 0x16, 0x04, 0x2f, 0x60, 0xb5, 0x72, 0xfe, 0xf5, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0x2b, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xb1, 0xff, 0xfd, 0xfe, 0xfe, 0xff, 0xff, 0xcc, 0x60, 0x92, 0xb0, 0xfc, 0xfd, 0x10, 0x48, 0xfd, 0x7f, 0xfc, 0xf0, 0xb8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1d, 0x0f, 0x27, 0x11, 0x7f, 0x25, 0xe7, 0xd7, 0x8f, 0xdf, 0x7f, 0x7f, 0x7f, 0x1f, 0x0a, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x08, 0x60, 0x30, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x0f, 0x00, 0x00, 0x0e, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xd0, 0x50, 0xb8, 0xe0, 0xb0, 0xe8, 0xd8, 0x80, 0xe1, 0x2b, 0x01, 0x01, 0x00, 0x00, 0x00, 0x80, 0xa0, 0x9a, + 0xf1, 0xff, 0xf4, 0xfb, 0xe9, 0xfa, 0xfc, 0xf4, 0xd8, 0xf0, 0xd0, 0xc0, 0xa0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x32, 0x10, 0x10, 0x10, 0x08, 0x04, 0x00, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xfe, 0xfe, 0xfe, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xfe, 0x7f, 0x3f, 0x5f, 0x1e, 0x3f, 0x1f, 0x0e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x12, 0x7c, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfa, 0x7a, 0x0a, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x80, 0xc0, 0x80, 0x00, 0xc0, 0xf0, 0xf0, 0xd0, 0xf0, 0xe0, 0xd0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf0, 0x10, 0x08, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0x7f, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xd4, 0xf0, 0xed, 0x64, 0xbe, 0xa0, 0x00, 0x07, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x17, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0xc0, 0xe8, 0xf5, 0xf5, 0xfe, 0xfd, 0xfd, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x7f, 0x2f, + 0x2f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x41, 0x00, 0x15, 0x1f, 0x5f, 0x1f, 0x1f, 0x03, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0xe0, 0xad, 0xf7, 0xef, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0xbf, 0x1f, 0x8f, 0x81, 0x50, 0x90, 0x7d, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x9f, 0x7f, 0x1f, 0x1f, 0x3f, 0x1f, 0x07, 0x03, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0xe0, 0xe0, 0xe0, 0xe0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xe0, 0xf0, 0xf8, 0xf0, 0xfa, 0xfc, 0xfc, 0x7e, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x90, 0x65, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0x3b, 0x81, 0xc5, 0xb9, 0x94, 0xec, 0xc7, 0xdf, 0xcf, 0xdf, 0x9f, 0x3e, 0x3c, 0x7b, 0xbd, 0x79, 0xbd, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, 0x24, 0x0a, 0x28, 0x36, 0xb7, 0xff, 0x3f, 0x3f, 0x17, 0x15, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf0, 0xfe, 0xf2, 0xfe, 0xfe, 0xfe, 0xcc, 0x60, 0x00, 0xb0, 0xf8, 0x7a, 0x30, 0x10, 0xcc, 0xf4, 0xf8, 0xf4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1b, 0x0b, 0x03, 0x13, 0x05, 0xe7, 0x45, 0xd6, 0x9f, 0xfa, 0xff, 0x7f, 0x7f, 0x19, 0x10, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x80, 0xe0, 0x00, 0xe0, 0xc0, 0xc0, 0x80, 0xe0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x07, 0x07, 0x0f, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xa0, 0x80, 0x00, 0x03, 0x03, 0x03, 0x03, 0x01, 0x01, 0x00, 0x80, 0x50, 0x30, 0x98, + 0xe0, 0xb4, 0xf8, 0xf0, 0xb4, 0xf0, 0xd0, 0xf0, 0x80, 0xa0, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x68, 0x30, 0x10, 0x00, 0x00, 0x10, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0xf8, 0xf8, 0xfc, 0xf0, 0xfa, 0xfe, 0xfc, 0xf8, 0xfa, 0xfe, 0x7d, 0x7e, 0x37, 0x5d, 0x2e, 0x37, 0x02, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x40, 0x3c, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfa, 0xec, 0xfd, 0xf6, 0xca, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x80, 0x40, 0x80, 0x80, 0x60, 0x80, 0xa0, 0xe0, 0xc0, 0xc0, 0xe0, 0x40, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xe0, 0x90, 0xc8, 0xa4, 0x78, 0x00, 0x01, 0x1f, 0x3f, 0x3f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x0f, 0x17, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x0f, 0x80, 0x20, 0x68, 0xd0, 0xfe, 0xfa, 0xed, 0xfd, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x3f, 0x1f, 0x0f, 0x0f, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1e, 0x3e, 0x1f, 0x1f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x01, 0x02, 0x03, 0x2b, 0x3f, 0x1f, 0x19, 0x1c, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x42, 0xab, 0xdf, 0xff, 0xff, 0xff, 0xfb, 0xef, 0x7f, 0x3f, 0x3f, 0x1f, 0x00, 0x00, 0x20, 0x24, 0x75, 0xff, 0xbf, 0xff, 0x3f, 0x3f, 0x1f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x07, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x80, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xe8, 0xe8, 0xf8, 0xfc, 0xe0, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x18, 0xf2, 0x7c, 0xf8, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x5f, 0x43, 0x03, 0x81, 0x00, 0x82, 0x51, 0x05, 0x80, 0xdc, 0x11, 0x3a, 0x3c, 0x38, 0x38, 0x30, 0x70, 0x00, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x04, 0x14, 0xb4, 0x3d, 0x07, 0x14, 0x03, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xfa, 0xf8, 0xfc, 0xf2, 0xfe, 0x98, 0x4c, 0xa0, 0x20, 0xb0, 0xf0, 0x60, 0x20, 0x80, 0xb0, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0f, 0x03, 0x03, 0x02, 0xaf, 0xcd, 0xc6, 0xcd, 0xd6, 0x7f, 0x7f, 0x77, 0x57, 0x40, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x07, 0x0f, 0x01, 0x00, 0x04, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x01, 0x0d, 0x1f, 0x1e, 0x1d, 0x1c, 0x06, 0x06, 0x04, 0x00, 0x00, 0xc8, 0x40, 0xb0, 0xd0, + 0x80, 0xe0, 0x60, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf9, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x84, 0x44, 0xac, 0xb4, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0x80, 0xc0, 0xc0, 0x90, 0x80, 0xe0, 0xe0, 0xd0, 0x68, 0xb2, 0xa2, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd0, 0x4c, 0xfc, 0xf9, 0xfd, 0xff, 0xfc, 0xff, 0xff, 0xfe, 0xfe, 0xff, 0xfe, 0xfa, 0xfe, 0xfc, 0xec, 0xf0, 0xe8, 0xa0, 0x80, 0xd0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xfd, 0xfb, 0x3f, 0x00, 0x02, 0x01, 0x02, 0x02, 0x0b, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x80, 0x40, 0x00, 0x00, 0x0f, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x0f, 0x02, 0x03, 0x00, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x05, 0x2f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x0f, 0x02, 0x00, 0x40, 0x00, 0x90, 0xa0, 0xa0, 0xb0, 0xe8, 0xf0, 0xf8, 0xc2, 0xfe, 0xf8, 0xf8, 0xfe, 0x7e, 0x3e, 0x3d, 0x06, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xff, 0x7f, 0x3f, 0x1f, 0x07, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x32, 0x9a, 0xae, 0x6a, 0x93, 0x55, 0x08, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x2b, 0xcf, 0x6f, 0xef, 0xff, 0xc7, 0x8f, 0xff, 0xe7, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x05, 0x14, 0x87, 0xfe, 0xff, 0xbf, 0x3f, 0x3f, 0x3f, 0x7f, 0x3f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x01, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xb0, 0x40, 0x38, 0xa0, 0xe8, 0xfc, 0xfc, 0xff, 0x8f, 0x1f, 0x0f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xe1, 0xe0, 0xe0, 0xc0, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x4c, 0x12, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xd0, 0xf8, 0xf6, 0xf0, 0xf2, 0xcc, 0x80, 0x40, 0x10, 0x90, 0xb8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0d, 0x02, 0x01, 0x00, 0x06, 0x23, 0xe6, 0xe2, 0xf7, 0xf7, 0x07, 0x17, 0x07, 0x46, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x14, 0x30, 0x38, 0x60, 0x68, 0x70, 0x10, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x99, 0x6a, 0xc0, 0x40, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x40, 0x00, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x84, 0xc5, 0xd9, 0xd4, 0xfe, 0xf9, 0xfe, 0xf3, 0xec, 0xf2, 0xf8, 0xf4, 0xf0, 0x40, 0x90, 0x90, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x05, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xd0, 0xf0, 0x80, 0x70, 0x20, 0x00, 0x20, 0x41, 0x2f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x04, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7c, 0x3f, 0x1f, 0x00, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x7d, 0x9d, 0xef, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xa9, 0xfd, 0x3b, 0x04, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x40, 0x80, 0x40, 0x00, 0xd0, 0x50, 0x90, 0xd0, 0x40, 0x48, 0x20, 0x10, 0x00, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x14, 0x44, 0x28, 0x08, 0x10, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x01, 0x0f, 0x17, 0x1f, 0xef, 0x1f, 0x6f, 0x3f, 0x7f, 0x1f, 0x9f, 0x8f, 0xbf, 0xe7, 0x07, 0x00, 0x00, 0x00, 0x00, 0x60, 0x2e, 0xfb, 0x5a, 0xfd, 0x35, 0x61, 0x3e, 0x96, 0x29, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x3c, 0x3c, 0x3e, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x90, 0xb7, 0x25, 0x3f, 0x5e, 0x1d, 0x05, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xb8, 0x60, 0x78, 0x34, 0xf1, 0x88, 0x40, 0xb0, 0x00, 0x88, 0xd8, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x0b, 0x03, 0x01, 0x01, 0x02, 0x03, 0x31, 0x23, 0xfb, 0x73, 0x3b, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x50, 0xd0, 0x60, 0xc0, 0x40, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xd4, 0xbc, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x30, 0xf4, 0x5d, 0xe8, 0xf2, 0xf4, 0xfa, 0xe2, 0xf8, 0xc0, 0xf4, 0xe0, 0xc0, 0xf0, 0x40, 0x00, 0x00, 0x40, 0x00, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xc0, 0xf0, 0x90, 0xa0, 0x20, 0x00, 0x10, 0x08, 0x47, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfa, 0x3b, 0x2d, 0x0a, 0x08, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x5b, 0xef, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfb, 0x75, 0x5c, 0xbc, 0x08, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x80, 0xa0, 0x00, 0xa0, 0x20, 0xa0, 0x40, 0xa8, 0xa0, 0xa0, 0xa8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xfc, 0xfe, 0xff, 0xff, 0x3f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0x01, 0x0f, 0x1f, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x00, 0x52, 0x04, 0x02, 0x00, 0x00, 0x00, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x05, 0x0f, 0x03, 0x17, 0x1f, 0x7f, 0x9f, 0x3f, 0x3f, 0x1f, 0x9f, 0xbf, 0x8f, 0xb7, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0xcc, 0x2a, 0xa4, 0x7a, 0x3e, 0x69, 0x3d, 0x02, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x3c, 0x3e, 0x3e, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x1f, 0x7f, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0xe0, 0x80, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x32, 0xe0, 0x3b, 0x2f, 0x3e, 0x1e, 0x0f, 0x01, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x9a, 0xef, 0x1c, 0xdf, 0x5f, 0x5e, 0x7b, 0x58, 0x52, 0x68, 0x60, 0x7b, 0x73, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0b, 0x0f, 0x5f, 0x1f, 0x1f, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xfe, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0xe0, 0x10, 0x8a, 0xb0, 0x64, 0xd8, 0xd0, 0x28, 0xe2, 0x98, 0xe0, 0x88, 0x00, 0xc0, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xe8, 0xf0, 0xfc, 0xf0, 0xe8, 0xe4, 0x0a, 0x03, 0x07, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xfc, 0xf0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x5e, 0xff, 0xfe, 0xfe, 0x7d, 0x0c, 0x20, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x01, 0x03, 0x5e, 0xd7, 0x2f, 0xfb, 0x5f, 0xfd, 0xff, 0xfd, 0xfe, 0xfb, 0xf5, 0xda, 0xe1, 0x49, 0xe8, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x10, 0x80, 0x30, 0x00, 0xc0, 0x28, 0x20, 0x10, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xfc, 0xff, 0xff, 0xff, 0x3f, + 0x0f, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xfc, 0xc0, 0x03, 0x07, 0x1f, 0x3f, 0x7f, 0x7c, 0x78, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x04, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x01, 0x00, 0xab, 0x23, 0xcf, 0x63, 0x1b, 0x31, 0x3a, 0x39, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x01, 0x04, 0x02, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x8f, 0x87, 0x07, 0x81, 0x00, 0x40, 0x20, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, + 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x50, 0x78, 0xd8, 0xe8, 0xfc, 0xfc, 0xfb, 0x9c, 0xde, 0x0c, 0x92, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x60, 0x81, 0x01, 0x05, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x70, 0x30, 0x61, 0x61, 0x51, 0x03, 0x2a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x20, 0x03, 0x0a, 0x13, 0x5c, 0x04, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xa8, 0xf1, 0x3c, 0x3a, 0x3e, 0x84, 0xf5, 0x71, 0xc4, 0xe0, 0x50, 0xf2, 0xb6, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x14, 0x34, 0x3e, 0x1e, 0x3e, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x98, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1a, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x20, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0x70, 0x30, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x20, 0x48, 0xf0, 0xd8, 0xe0, 0xfa, 0xf8, 0xe0, 0xb8, 0x60, 0x70, 0xc0, 0x20, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xe0, 0xfc, 0xe8, 0xe8, 0xc8, 0xc8, 0x02, 0x0c, 0x0b, 0x0f, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x7f, 0xff, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xfc, 0xff, 0xfe, 0xfc, 0x7c, 0x58, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x17, 0x09, 0x7f, 0x95, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xec, 0xbe, 0xaf, 0xd4, 0xcc, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0xc0, 0x60, 0xa0, 0x20, 0x40, 0x08, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, + 0xfc, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xf0, 0x00, 0x03, 0x07, 0x1f, 0x3f, 0x7e, 0x7c, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x24, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x07, 0x06, 0x0b, 0x0b, 0x47, 0x9f, 0x4f, 0x5f, 0x07, 0x57, 0xff, 0xeb, 0x6f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2c, 0x09, 0x24, 0x0a, 0x19, 0x05, 0x10, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1e, 0x1f, 0x1f, 0x9f, 0x1f, 0x0f, 0x07, 0x43, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x70, 0xd0, 0xf8, 0xf4, 0xf8, 0x78, 0xa8, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x90, 0x80, 0xc5, 0x35, 0x1b, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0x40, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x00, 0x02, 0x08, 0x50, 0x20, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xea, 0xfb, 0x7f, 0x7f, 0x7f, 0x1f, 0x7f, 0x7f, 0x79, 0x38, 0x38, 0xb1, 0xbd, 0x3b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x03, 0x00, 0x04, 0x03, 0x06, 0x0f, 0x1f, 0x1f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xfa, 0xf8, 0x78, 0x38, 0x38, 0x38, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xa0, 0xa0, 0xc0, 0x24, 0xb8, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xe0, 0xf0, 0xf8, 0xfc, 0xfb, 0xfb, 0xf7, 0x57, 0x23, 0x07, 0x0f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x05, 0x5b, 0x3c, 0x7d, 0x00, 0x0d, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x04, 0x10, 0x05, 0x31, 0x84, 0x56, 0x00, 0x3d, 0xa8, 0xec, 0x75, 0xb8, 0xa0, 0x78, 0x48, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc8, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x2f, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xf1, 0x87, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xf8, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x01, 0x06, 0x02, 0x06, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x03, 0x03, 0x11, 0x31, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x30, 0x54, 0x70, 0xdc, 0xf8, 0xbf, 0x7f, 0xff, 0x9f, 0x5f, 0x1f, 0x1f, 0x0f, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xb0, 0xc4, 0xb8, 0xf0, 0x7c, 0xfe, 0xff, 0xce, 0xdf, 0xd3, 0xeb, 0x84, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x50, 0x60, 0x08, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0x00, 0x80, 0x80, 0xc0, 0xe1, 0x80, 0x46, 0x00, 0x88, 0x00, 0x04, 0x01, 0x00, 0x10, 0x80, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x05, 0x0e, 0x01, 0x02, 0x01, 0x01, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0x5e, 0xfa, 0xfe, 0xfc, 0xff, 0xfe, 0xff, 0xff, 0xf1, 0xfc, 0xe0, 0x62, 0xf3, 0x36, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0d, 0x01, 0x08, 0x00, 0x04, 0x1c, 0x28, 0x3e, 0x5c, 0x1e, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xf3, 0xea, 0xfb, 0xee, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xa0, 0x54, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe3, 0xf7, 0xdf, 0xef, 0xcf, 0x0f, 0x8f, 0x0f, + 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0x0f, 0x1f, 0x3f, 0x3f, 0x1f, 0x07, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0a, 0x18, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0a, 0x18, 0x24, 0x0a, 0x11, 0x54, 0x24, 0x80, 0x20, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xf0, 0xfc, 0xff, 0xff, 0x7f, 0x1f, 0x0f, 0xa2, 0x01, 0x01, 0x10, 0x04, 0x20, 0x00, 0x03, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xf8, 0xc0, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xe0, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x01, 0x04, 0x03, 0x00, 0x08, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1f, 0x1f, 0x1f, 0x5f, 0x9e, 0x5f, 0x7f, 0x9f, 0x1d, 0x35, 0x01, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xc0, 0xe0, 0xd0, 0xec, 0x72, 0x24, 0xbe, 0xfd, 0xfe, 0xfe, 0xef, 0xfd, 0xcb, 0xc2, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xa0, 0x80, 0x40, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x28, 0x92, 0xb8, 0xfb, 0xfa, 0x78, 0xfe, 0xdc, 0xe6, 0x62, 0xe8, 0x20, 0x84, 0xee, 0xac, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x05, 0x00, 0x01, 0x01, 0x01, 0x09, 0x11, 0x11, 0x3d, 0x7d, 0x3c, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xf8, 0xf8, 0xfc, 0xfc, 0xfc, 0xfe, 0xfe, 0xc0, 0xe0, 0xe0, 0xc0, 0xd2, 0xe1, 0xf4, 0xff, 0xfe, 0xff, 0xff, 0xfc, 0xff, 0xfe, 0xfc, 0xf8, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0xcf, 0xdf, 0xef, 0x9f, 0x9f, 0x9f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0x2f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x7f, 0x5f, 0x7f, 0xff, 0x3f, 0xbf, 0xff, 0x3f, 0x1f, 0x0b, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x04, 0x01, 0x02, 0x10, 0x04, 0x00, 0x00, 0x00, 0x40, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xf0, 0xff, 0xff, 0xff, 0x7f, 0x0f, 0x04, 0x02, 0x00, 0x01, 0x01, 0x00, 0x05, 0x2f, 0x7f, 0xff, 0xff, 0xfe, 0xf8, 0xc1, 0x07, 0x3f, 0xff, 0xff, 0xff, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x01, 0x08, 0x00, 0x00, 0x10, 0x1c, 0x3e, 0x3f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x1f, 0x1f, 0x3f, 0x1f, 0x1c, 0x01, 0x81, 0x27, 0x37, 0x5f, 0x15, 0x78, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, 0xc0, 0xc0, 0xf8, 0xe4, 0x70, 0x26, 0x28, 0x98, 0x3b, 0xec, 0xfa, 0xd6, 0xed, 0xc0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xea, 0xf0, 0xf8, 0xf8, 0xb8, 0x84, 0xc0, 0x00, 0x80, 0x88, 0x8c, 0xcc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x05, 0x06, 0x01, 0x03, 0x00, 0x03, 0x01, 0x31, 0x33, 0x38, 0x7d, 0x31, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0xe0, 0xf0, 0xf8, 0xf8, 0xf8, 0x80, 0x00, 0x00, 0xc0, 0xc4, 0xc8, 0xe0, 0xfc, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf0, 0xf8, 0xd0, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x0e, 0x1e, 0x1f, 0x3e, 0x3e, 0x3c, 0x7c, 0x7e, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x7f, 0xdf, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3a, 0x39, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x28, 0x9c, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfc, 0xff, 0xf8, 0xf7, 0x14, 0x08, 0x00, 0x0c, 0x07, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xfe, 0xf0, 0xc3, 0x0f, 0x3f, 0xff, 0xff, 0xfe, 0xf0, 0xc0, 0x80, 0x01, 0x02, 0x03, 0x03, 0x07, 0x03, 0x07, 0x03, 0x03, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x05, 0x04, 0x04, 0x00, 0x00, 0x00, 0x70, 0xf8, 0xfc, 0xfe, 0x7f, 0x7f, 0x3f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x3f, 0x7f, 0x7f, 0x7e, 0x3c, 0x19, 0x07, 0x07, 0x07, 0x03, 0x03, 0x08, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0x70, 0x80, 0xf8, 0xf0, 0xe4, 0xf6, 0x88, 0x7a, 0x96, 0x70, 0xed, 0xdb, 0xf4, 0xd1, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0xa0, 0xc0, 0x40, 0x40, 0x00, 0x00, 0x90, 0x10, 0x90, 0x98, 0x90, 0x20, 0x00, 0x70, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x15, 0x03, 0x0a, 0x07, 0x03, 0x04, 0x03, 0x46, 0x66, 0x77, 0x43, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x10, 0x7a, 0x2b, 0x10, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0x20, 0x40, 0x08, 0x38, 0x30, 0x30, 0x38, 0x7c, 0x18, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x20, 0x10, 0x04, 0x20, 0x0c, 0x08, 0x86, 0xe0, 0xf1, 0xf0, 0xf1, 0xf9, 0xf9, 0xf8, 0x80, + 0x00, 0x00, 0x80, 0xf1, 0xfb, 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0xe8, 0xf0, 0xf0, 0xe2, 0xe8, 0x88, 0xa0, 0x10, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x1e, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xfb, 0x62, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x9b, 0x13, 0x3b, 0x1f, 0x07, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xec, 0xa8, 0xd0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x80, 0x80, 0xc0, 0xc0, 0x00, 0xa0, 0xf0, 0xd8, 0xe0, 0xe8, 0x68, 0x30, 0x9c, 0xc0, 0x00, 0x80, 0xc0, 0xc0, 0x80, 0x00, 0x00, 0x03, 0x05, 0x03, 0x0d, 0x26, 0x11, 0x48, 0x01, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xfc, 0xfc, 0x1d, 0x00, 0x02, 0x00, 0x05, 0x0f, 0x7f, 0xff, 0xff, 0xf8, 0x80, 0x07, 0x3f, 0xff, 0xff, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x09, 0x07, 0x0f, 0x1f, 0x1f, 0x2f, 0x3f, 0x1f, 0x3f, 0x3f, 0x1f, 0x0f, 0x1f, 0x07, 0x00, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0x2a, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0x7f, 0x1f, 0x5f, 0x8f, 0xe3, 0xeb, 0xe8, 0xfe, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0xe0, 0xc0, 0xe0, 0xc0, 0xc2, 0xe2, 0xc0, 0x00, 0x00, 0x0e, 0x0f, 0x1f, 0x0f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1f, 0x1f, 0x0e, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x80, 0x80, 0x00, 0x20, 0x30, 0xb0, 0xb0, 0xd0, 0x88, 0x10, 0xc8, 0xb8, 0xd8, 0x28, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x02, 0x0c, 0x00, 0x02, 0x0c, 0xc7, 0xa7, 0xc7, 0x43, 0x03, 0x13, 0x71, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xc1, 0xe0, 0x22, 0x0f, 0xff, 0xff, 0x7f, 0x3a, 0x38, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x80, 0xf0, 0xec, 0xf8, 0xf8, 0xf0, 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0x70, 0xb0, 0x60, 0xa0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xf0, 0xf0, 0xf2, 0xf4, 0xf8, 0x7b, 0x7f, 0x7d, 0x3e, 0x3e, 0xbf, 0xff, 0xe7, 0xe0, 0xe0, + 0xf0, 0xf0, 0xa1, 0x01, 0x01, 0x81, 0xe1, 0xe8, 0xe0, 0xf0, 0xe0, 0xe0, 0xc8, 0x82, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x40, 0xc2, 0x00, 0x00, 0x02, 0x00, 0x8c, 0xf1, 0xed, 0xe0, 0xf6, 0xd1, 0xec, 0x50, 0x64, 0x80, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x0f, 0x3f, 0x1f, 0x3f, 0x0f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xf7, 0xcd, 0xff, 0xff, 0xfe, 0xfa, 0xbf, 0x17, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, + 0xfe, 0xfe, 0xfe, 0xfc, 0xf8, 0xf8, 0xf8, 0xf0, 0xf0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0xfc, 0xf8, 0xfc, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xfe, 0x7e, 0x3e, 0x0b, 0xcc, 0xf2, 0xfc, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf7, 0xf8, 0xf0, 0xe0, 0xe0, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x80, 0xc0, 0xe0, 0xf0, 0xfc, 0xfc, 0x38, 0x10, 0x00, 0x08, 0x00, 0x0f, 0x7f, 0xff, 0xff, 0xf1, 0x01, 0x1f, 0xff, 0xff, 0xff, 0xf0, 0x80, 0x00, 0x00, 0x01, 0x01, 0x07, 0x0f, 0x07, 0x0f, 0x0f, 0x3f, 0x3f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x3f, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x07, 0x0d, 0x3f, 0x7f, 0x7f, 0x07, 0xff, 0xff, 0xff, 0xff, 0xfa, 0x0e, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x03, 0x07, 0x07, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x3f, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0x1f, 0x1f, 0x0c, 0x01, 0x01, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x06, 0x07, 0x00, 0x00, 0x01, 0x60, 0x61, 0xf0, 0x78, 0xb4, 0x94, 0xf8, 0xf4, 0xf8, 0xfc, 0xfc, 0xfc, 0xf8, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x02, 0x04, 0x0e, 0x09, 0x10, 0x16, 0x0f, 0x4f, 0x8f, 0xc7, 0xaf, 0xf7, 0xf7, 0x71, 0x97, 0x19, 0x01, 0x05, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x80, 0xc0, 0xf0, 0xf8, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x80, 0xe0, 0xc0, 0x40, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xe0, 0xcb, 0xf7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7d, 0x34, 0x00, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x80, 0x80, 0xd0, 0xa4, 0xd0, 0xfc, 0xf8, 0xfe, 0xfc, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xf8, 0xe4, 0xf8, 0xf8, 0xf8, 0xf0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x00, 0x00, 0x40, 0x00, 0x00, 0xe0, 0xa0, 0x60, 0xc0, 0x43, 0x33, 0x93, 0x83, 0x87, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0xa0, 0xf0, 0xf8, 0xfc, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x0b, + 0x03, 0xc7, 0xc7, 0xc7, 0xc7, 0xe7, 0xef, 0xef, 0xc7, 0x07, 0x07, 0x8f, 0xc7, 0xeb, 0xf7, 0xd7, 0xa4, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0xe0, 0xf0, 0xf8, 0xfc, 0xfc, 0xf8, 0xf8, 0xf8, 0xfe, 0xfe, 0x7a, 0xb4, 0xf1, 0xe4, 0xfd, 0xff, 0xff, 0xff, 0xfe, 0xf8, 0xff, 0xf0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x12, 0x42, 0xbb, 0xaa, 0xfb, 0xff, 0xfd, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x3f, 0x3f, 0x0f, 0x0f, 0x0f, 0x0f, 0x1f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfe, 0xff, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, + 0xfe, 0xfc, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x9f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x3f, 0x3f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x1f, 0x08, 0x80, 0xc0, 0xc0, 0xe0, 0xf0, 0xf8, 0xf8, 0x7c, 0x3c, 0x1e, 0x10, 0x00, 0x1e, 0x7f, 0xff, 0xff, 0xff, 0xff, 0x0f, 0xff, 0xff, 0xff, 0xff, 0x63, 0x03, 0x01, 0x07, 0x07, 0x07, 0x1f, 0x3f, 0x5f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xfe, 0xe8, 0xa0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x03, 0x01, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x1f, 0x7f, 0x3f, 0x03, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x07, 0x17, 0x33, 0x07, 0x60, 0x00, 0x0c, 0x0f, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x67, 0xe7, 0x07, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0x1f, 0x1f, 0x0d, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0f, 0x07, 0x0f, 0x0f, 0x07, 0x0f, 0x05, 0x03, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x61, 0xf4, 0x20, 0x90, 0x98, 0x7c, 0x40, 0xd8, 0xb8, 0xfc, 0x7c, 0xbe, 0xff, 0xfc, 0xf0, 0xd0, 0xc0, 0x00, 0x00, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x02, 0x07, 0x37, 0xf3, 0xf9, 0xf9, 0xfc, 0x98, 0x06, 0x13, 0x0f, 0x03, 0x1b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x05, 0x06, 0x00, 0x00, 0x00, 0x80, + 0x80, 0x80, 0x80, 0xb0, 0xfc, 0xfe, 0xfd, 0xec, 0xd8, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x20, 0x20, 0x40, 0x00, 0x60, 0x40, 0x78, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x80, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xe0, 0x50, 0xfc, 0xfe, 0xfe, 0xfc, 0xfc, 0xfe, 0xe6, 0xe2, 0xe2, 0xc0, 0x7f, 0x7f, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfc, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf8, 0xf8, 0xf8, 0xf0, 0x40, 0x40, 0xc0, 0x70, 0xc0, 0xf0, 0xd0, 0xe0, 0xc8, 0xf0, 0xe8, 0xf8, 0xf0, 0xfd, 0xf9, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xfe, 0x3e, 0x38, 0xe8, 0xf0, 0xfa, 0xf8, 0xfc, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0x3f, 0x00, 0x1f, 0x3f, 0x3f, 0x3f, 0x07, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xc0, 0x81, 0xf3, 0xe3, 0x43, 0xa3, 0x8b, 0x23, 0xa3, 0x03, 0x41, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x81, 0x43, 0xe1, 0xc3, 0xd1, 0xf1, 0xf0, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0xbf, 0x07, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x10, 0x08, 0x1a, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xe4, 0xf8, 0xe0, 0xe0, 0xc0, 0x90, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x84, 0xf8, 0xf8, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xff, 0xfe, 0xf8, 0xe0, 0x39, 0xc0, 0x5c, 0xbd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x7f, 0x5f, 0x7f, 0x13, 0x0b, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, + 0x03, 0x07, 0x07, 0x87, 0x07, 0x83, 0xc1, 0xc0, 0xe0, 0xe0, 0xf0, 0xf0, 0xe0, 0xa0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x16, 0x5f, 0x7f, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf0, 0xe3, 0x80, 0x07, 0xa3, 0x5f, 0x5f, 0x3f, 0xdf, 0xdf, 0x8f, 0xcf, 0x87, 0x01, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x87, 0x06, 0x06, 0x06, 0x07, 0x0f, 0x0f, 0x1f, 0x3c, 0xbb, 0xff, 0xff, 0x0f, 0x1f, 0xff, 0xff, 0xc1, 0x81, 0x01, 0x00, 0x00, + 0x00, 0x03, 0x03, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x01, 0x07, 0x07, 0x01, 0x07, 0x03, 0xa7, 0xbf, 0x7f, 0x7f, 0x7f, 0x7e, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xba, 0xfe, 0xfd, 0xff, 0xff, 0xff, 0x7d, 0x7d, 0xdd, 0x1d, 0x26, 0x28, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x0c, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x3f, 0xf8, 0x80, 0x00, 0x03, 0x3f, 0x7f, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x94, 0x80, 0x78, 0xf4, 0x74, 0x7c, 0xfe, 0xfc, 0xff, 0x7e, 0x7f, 0xfe, 0xf8, 0xf8, 0xc0, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x03, 0x03, 0x1f, 0x77, 0xf1, 0xfd, 0xfc, 0xfc, 0xf5, 0x2d, 0x0d, 0x05, 0x05, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x81, 0xc3, 0xe3, 0x82, 0x00, 0xc0, 0xc0, 0xe0, + 0xc0, 0xc0, 0xe0, 0xe0, 0xfe, 0xff, 0xff, 0xfc, 0x70, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x18, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xa0, 0xc0, 0xa0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xfc, 0xfc, 0xfc, 0x04, 0xff, 0xff, 0xff, 0xff, 0xda, 0xf7, 0xfd, 0xf0, 0xf8, 0xf0, 0x3f, 0x1f, 0x1f, 0xcf, 0x5f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0x7f, 0x7f, 0x7c, 0xfc, 0xf8, 0xf8, 0xf8, 0xfc, 0xfc, + 0xfc, 0xfc, 0xfc, 0x78, 0x80, 0xd0, 0xe0, 0xd0, 0xe0, 0xd8, 0xe4, 0xf8, 0xf0, 0xf4, 0xc8, 0xf4, 0xf0, 0xd0, 0xfe, 0x5e, 0x1e, 0x0f, 0x1f, 0x1f, 0x0f, 0x1f, 0x2f, 0x9f, 0xbb, 0xf6, 0xfc, 0xfc, 0xf4, 0x5c, 0x90, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x0f, 0x00, 0x07, 0x0f, 0x0f, 0x0f, 0x01, 0x0f, 0x0f, 0x3f, 0xff, 0xff, 0xfe, 0xf0, 0xe0, 0x70, 0xd4, 0xec, 0xa0, 0xb8, 0xec, 0xa0, 0x90, 0x40, 0x80, 0xc0, 0x40, 0x84, 0xc0, 0xa8, 0xdf, 0xf0, 0xad, 0xff, 0xdd, 0xde, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xbf, 0x37, 0xcb, 0x10, + 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0a, 0x03, 0x0e, 0x0b, 0x1f, 0x2f, 0x1e, 0x3f, 0x3f, 0x7f, 0x7c, 0xfe, 0xfc, 0xf8, 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x1a, 0xf4, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfb, 0xef, 0xff, 0xfe, 0xff, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x3f, 0x3f, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x00, 0x03, 0x01, 0x01, 0x03, 0x03, 0x03, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x07, 0x2f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xee, 0x35, 0x3f, 0xbf, 0xbf, 0xff, 0xff, 0xf3, 0xff, 0xd3, 0x58, 0x50, 0x50, 0x50, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0xc0, 0x70, 0x78, 0xf8, 0xf8, 0xee, 0xfe, 0xff, 0xbf, 0x5f, 0x7f, 0xfe, 0xff, + 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x18, 0x50, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x01, 0x01, 0x01, 0x01, 0x03, 0x65, 0x7b, 0x3f, 0x9f, 0x7f, 0x3f, 0xfe, 0xff, 0xff, 0xfb, 0xfe, 0xfa, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xdf, 0xbf, 0xb5, 0x84, 0x04, 0x11, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x3b, 0xf8, 0x80, 0x03, 0x0f, 0x7e, 0xfc, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x71, 0xb0, 0x90, 0x1c, 0x74, 0x6c, 0xfc, 0xfa, 0xfc, 0xbf, 0xff, 0x7e, 0xff, 0xfa, 0xf0, 0xf0, 0x80, 0x00, 0x01, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x05, 0x1f, 0x0f, 0x27, 0xf7, 0xf3, 0xf9, 0xfd, 0xf8, 0xf3, 0x1f, 0x09, 0x0b, 0x03, 0x02, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xc0, 0x00, 0xc0, 0x81, 0x21, 0x01, 0x01, 0xf1, 0xf8, 0xf8, 0xf8, + 0xf8, 0xf0, 0xf0, 0xf0, 0xfe, 0xff, 0xff, 0xfe, 0x92, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0xc0, 0x80, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x78, 0xfe, 0xfe, 0xfe, 0x0f, 0xff, 0xff, 0xff, 0xff, 0xf6, 0xfe, 0xfe, 0xfc, 0xfe, 0xfd, 0x2f, 0x07, 0x27, 0x37, 0x2f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0xbf, 0x3f, 0x1f, 0x3e, 0x3e, 0x3e, 0x3f, 0x3f, 0x3f, 0x3f, + 0x3f, 0x1f, 0x1f, 0x0f, 0x80, 0xd0, 0xd0, 0x28, 0xe8, 0xd0, 0xe0, 0xf0, 0xf8, 0xc8, 0xf8, 0xf0, 0x8c, 0xa0, 0x88, 0x00, 0x8f, 0x06, 0x07, 0x0f, 0x0f, 0x0f, 0x8f, 0xc7, 0xfe, 0xf8, 0xfc, 0x78, 0xd4, 0x80, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x07, 0x00, 0x03, 0x07, 0x87, 0xc3, 0x01, 0x03, 0x8f, 0x9f, 0xbf, 0xff, 0xff, 0xfc, 0xfc, 0xf8, 0xde, 0xe8, 0xfc, 0xd0, 0xe4, 0x70, 0xd8, 0x68, 0x24, 0xd0, 0xa0, 0xa0, 0x80, 0xa0, 0xd0, 0xf0, 0xf0, 0xec, 0xfa, 0xf9, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6d, 0xbf, 0x42, 0x0c, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x02, 0x0a, 0x0b, 0x05, 0x1f, 0x1f, 0x3f, 0x7f, 0xff, 0x7f, 0x7f, 0xfc, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x12, 0x68, 0x9c, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xff, 0xfb, 0xee, 0xfd, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x1f, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x01, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0b, 0x06, 0x07, 0x0f, 0x0f, 0x1f, 0xbf, 0xff, 0x3f, 0xff, 0xff, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x5f, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0x36, 0x9b, 0xdf, 0xdf, 0xff, 0xff, 0xff, 0x9b, 0xac, 0x30, 0x04, 0x00, 0xc8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xf0, 0xf0, 0xf0, 0xf0, 0xf8, + 0xf0, 0xf8, 0xf0, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x00, 0x1c, 0x2e, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x14, 0x4e, 0x8f, 0xbf, 0xc7, 0xdf, 0xef, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xe7, 0xff, 0xff, 0xff, 0xff, 0xff, 0xa7, 0x87, 0x6b, 0x01, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x0c, 0x0c, 0x0c, 0x04, 0x07, 0x07, 0x07, 0x0f, 0x0b, 0x0f, 0x1f, 0xff, 0x81, 0x07, 0x07, 0x7f, 0xf8, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0xc3, 0xd1, 0x50, 0x30, 0x20, 0xfc, 0x38, 0xf8, 0xfc, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xf8, 0xe0, 0xe0, 0x00, 0x00, 0x03, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x0c, 0x2f, 0x3c, 0x97, 0x8e, 0xcf, 0xe3, 0xf3, 0xf9, 0xff, 0x7f, 0x67, 0x3f, 0x03, 0x06, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x3f, 0xff, 0xff, 0xff, 0xfd, + 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xff, 0xfe, 0xf3, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x90, 0xa0, 0x98, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfe, 0xfe, 0x80, 0xdf, 0xff, 0xff, 0xfe, 0x37, 0xfc, 0xfe, 0xfe, 0xfe, 0xfe, 0xff, 0x07, 0x27, 0x67, 0x77, 0x6f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x3f, 0x3f, 0x3f, 0x1f, 0x3f, 0x1f, 0x1f, 0x3f, 0x1f, 0x3f, 0x3f, + 0x1f, 0x1f, 0x0f, 0x07, 0x00, 0x80, 0x20, 0x00, 0x60, 0x80, 0x80, 0x80, 0x80, 0x60, 0x80, 0xc0, 0x00, 0xa0, 0x80, 0x00, 0x19, 0x1a, 0x1f, 0x3d, 0x1e, 0x1c, 0x1c, 0xf8, 0xc0, 0xf0, 0xc0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x07, 0x00, 0x07, 0x07, 0x07, 0x80, 0x03, 0x87, 0x1f, 0x7f, 0xff, 0xff, 0xfc, 0xf4, 0xe8, 0xe8, 0xf4, 0xf8, 0xe8, 0xfa, 0xe0, 0xb8, 0xe0, 0x44, 0x30, 0x90, 0x90, 0xc0, 0xe0, 0x90, 0x68, 0xec, 0x50, 0xe0, 0xd4, 0xb8, 0xe8, 0xf8, 0xa8, 0xea, 0xf9, 0xfc, 0xff, 0xfc, 0xec, 0xfe, 0xfd, 0xff, 0xfd, 0xff, 0x7e, 0xe3, 0x9c, + 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x04, 0x12, 0x3b, 0x5f, 0x33, 0xfd, 0xfb, 0xfe, 0xf8, 0xfa, 0xf8, 0xe0, 0xe0, 0xc0, 0x80, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x02, 0x9a, 0xac, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xef, 0xff, 0xff, 0xef, 0xef, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0x7f, 0x1e, 0x03, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x0f, + 0x1f, 0x1f, 0x0f, 0x1f, 0x3f, 0x1f, 0x1e, 0x3f, 0x1e, 0x38, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x01, 0x0f, 0x17, 0x1f, 0x3f, 0xbf, 0xff, 0x7f, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0xff, 0xff, 0x7f, 0xfd, 0x71, 0x41, 0x09, 0x47, 0x1b, 0x37, 0x9f, 0xcf, 0x8f, 0x07, 0x0f, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x08, 0x18, 0x30, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x02, 0x01, 0x00, 0x03, 0x01, 0x00, 0x20, 0x8f, 0x8f, 0x57, 0x6f, 0xce, 0xf7, 0xe9, 0xea, 0x43, 0xfe, 0xf6, 0x45, 0xdb, 0xa7, 0xd7, 0xe7, 0xdf, 0x7b, 0x87, 0x84, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x80, 0xe0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x81, 0xeb, 0xc1, 0x40, 0x18, 0x60, 0xdc, 0xf4, 0xf8, 0xfc, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xf8, 0xf0, 0xe8, 0x00, 0x01, 0x07, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x06, 0x0c, 0x6f, 0x6d, 0x1f, 0xdf, 0xcf, 0xe3, 0xfb, 0xf1, 0xff, 0x7b, 0xff, 0x3f, 0x0f, 0x28, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x01, 0x0f, 0xff, 0xff, 0xff, 0xfe, 0xf0, + 0xc0, 0x80, 0x80, 0xa0, 0x80, 0x70, 0xfd, 0xff, 0xfb, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x60, 0x38, 0x30, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xe0, 0x40, 0xf8, 0xfc, 0xfc, 0xf0, 0xf8, 0xf0, 0xf0, 0xf0, 0xf0, 0xf1, 0xff, 0x7f, 0x3f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfd, 0xf8, 0xf8, 0xfe, 0xfe, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfe, 0x7e, 0x7e, 0x3c, 0x40, 0x10, 0x00, 0xa0, 0x80, 0x20, 0x40, 0xc0, 0x80, 0x20, 0x80, 0x80, 0x00, 0xa0, 0x80, 0x42, 0x45, 0x7a, 0xe8, 0xfa, 0xfe, 0xf8, 0xe4, 0xf0, 0xc0, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x3f, 0x7f, 0x7f, 0x0f, 0x3f, 0x7f, 0x7f, 0x01, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xf7, 0xeb, 0xff, 0xf3, 0xff, 0xef, 0xf7, 0xef, 0xf7, 0x9b, 0xe7, 0x98, 0xd1, 0xd0, 0xe8, 0xb4, 0xe9, 0xe6, 0xf8, 0xd6, 0xf8, 0xfa, 0xfa, 0xd9, 0xf1, 0xff, 0xf4, 0xf9, 0xfa, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x74, + 0x5b, 0x22, 0x00, 0x00, 0x00, 0x00, 0x60, 0x13, 0xf9, 0xfd, 0xfe, 0xff, 0xee, 0xfc, 0xe6, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x40, 0x78, 0x94, 0xb4, 0x04, 0xf8, 0xfb, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x6e, 0x1b, 0x15, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x03, 0x0f, 0x0f, 0x3f, 0x7f, 0x7f, 0xff, 0xfe, + 0xfe, 0xfc, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0xe0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x03, 0x0c, 0x27, 0x1f, 0x2f, 0x1f, 0x5f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf5, 0xe7, 0xd1, 0x0f, 0x9f, 0x2f, 0x1f, 0xbf, 0x3f, 0x3f, 0x1f, 0x1f, 0x0f, 0x0f, 0x07, 0x03, 0x01, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x05, 0x07, 0x07, 0x0f, 0x1f, 0x0f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x14, 0x40, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x07, 0x03, 0x07, 0x33, 0x07, 0x5f, 0x7f, 0x7e, 0xdf, 0xff, 0xfb, 0xff, 0x9d, 0xf7, 0xf4, 0xfe, 0xfc, 0x9f, 0xde, 0xff, 0xff, 0xfe, 0xbe, 0x1e, 0x44, 0x96, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x81, 0xe3, 0xc0, 0x28, 0x20, 0xf8, 0x4c, 0x74, 0x78, 0x7e, 0xfe, 0x7e, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xe0, 0x00, 0x01, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x00, 0x26, 0x36, 0x8f, 0xcf, 0xc3, 0xe3, 0xfb, 0xf9, 0xff, 0x9d, 0x0f, 0x7b, 0x0d, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0xc7, 0xeb, 0xff, 0xff, 0xcb, 0x82, + 0x00, 0x00, 0x00, 0xa0, 0xc0, 0xc8, 0xff, 0xff, 0xff, 0xb6, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x70, 0x30, 0x30, 0x30, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0xe0, 0xf0, 0xe0, 0xc0, 0xf0, 0xc0, 0xe0, 0xc0, 0xe1, 0xf7, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xfd, 0xf4, 0xf4, 0xfc, 0xfe, 0xfc, 0xf8, 0xfc, 0xf8, 0xfc, + 0xfc, 0xfc, 0x7c, 0x08, 0x00, 0x20, 0x00, 0x20, 0x00, 0xc0, 0x00, 0x40, 0x20, 0x80, 0xc0, 0x80, 0xc0, 0x40, 0x80, 0x41, 0x00, 0x68, 0xce, 0xd4, 0xf8, 0xf8, 0xf8, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x3f, 0xff, 0xff, 0xfb, 0x1f, 0xff, 0xff, 0xff, 0x13, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe4, 0xee, 0xee, 0xde, 0xef, 0xaf, 0xdf, 0xff, 0xff, 0xef, 0xe3, 0xdb, 0xf1, 0xd3, 0xb1, 0xe1, 0xd1, 0xed, 0xa1, 0xdb, 0xa5, 0xf3, 0xf4, 0xec, 0xc8, 0xf0, 0xf8, 0x5a, 0xf4, 0xfd, 0xf5, 0xfc, 0xff, 0xff, 0xfe, 0xff, 0xfd, 0xfd, 0xff, 0xfc, 0xf2, + 0x5e, 0xc0, 0x10, 0x00, 0x00, 0x00, 0x01, 0x83, 0xa3, 0xf5, 0x7c, 0xf5, 0xfc, 0xe2, 0xf4, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0xe0, 0x98, 0x68, 0x50, 0x80, 0x71, 0xe7, 0xdf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x03, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x0f, 0x0f, 0x3f, 0x7f, 0xff, 0xfd, 0xfc, 0xfc, + 0xf8, 0xe0, 0xd0, 0xc0, 0xc0, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x01, 0x01, 0x02, 0x01, 0x00, 0x0f, 0x05, 0x1f, 0x4b, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0xff, 0xff, 0xff, 0xeb, 0xeb, 0x01, 0x07, 0x1f, 0x2f, 0x3f, 0x7f, 0x5f, 0x7f, 0x1f, 0x1f, 0x1f, 0x0f, 0x07, 0x03, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x0f, 0x07, 0x0f, 0x3f, 0x0f, 0x5f, 0xbe, 0x7c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x03, 0x03, 0x03, 0x07, 0x0f, 0x07, 0x07, 0x2f, 0x1f, 0x7f, 0xfd, 0x7f, 0xfb, 0xff, 0xa7, 0xff, 0xff, 0xf3, 0xf8, 0x9c, 0xfe, 0xfe, 0xff, 0xff, 0xfe, 0xfc, 0x7c, 0x9c, 0x94, 0x00, 0x08, 0x24, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} + +}; diff --git a/keyboards/handwired/uthol/keymaps/oled/rules.mk b/keyboards/handwired/uthol/keymaps/oled/rules.mk new file mode 100644 index 0000000000..9bd2ec39f9 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/rules.mk @@ -0,0 +1,3 @@ +OLED_ENABLE = yes +WPM_ENABLE = yes +SRC += helix.c diff --git a/keyboards/handwired/uthol/keymaps/oled/smiley.c b/keyboards/handwired/uthol/keymaps/oled/smiley.c new file mode 100644 index 0000000000..0e80475cf9 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/smiley.c @@ -0,0 +1,98 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include "progmem.h" + +static const char PROGMEM animation[][1024] = {{0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x1f, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0xfe, 0x0e, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, + 0x0e, 0xfe, 0x1e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x03, 0xfa, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfa, 0x03, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x03, 0x07, 0x7c, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x7c, 0x07, 0x03, 0x00, 0x00, 0x00, 0x38, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x40, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1e, 0x3c, 0x38, 0xe0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0x38, 0x3c, 0x1e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x40, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfe, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xfe, 0xfe, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x26, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x0c, 0x0e, 0xfe, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x06, 0xff, 0x0e, 0x04, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfc, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x7c, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0x7c, 0x1f, 0x03, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x18, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x1c, 0x38, 0x30, 0x60, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0x60, 0x30, 0x38, 0x1c, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x18, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x18, 0x04, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x0c, 0x18, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xe0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, + 0x0f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0xfe, 0xfe, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0xff, 0xff, 0x0e, 0x0e, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0xfc, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfc, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x18, 0x18, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1e, 0x3c, 0x70, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0x78, 0x3c, 0x1e, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x18, 0x18, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x10, 0x20, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x07, 0x0e, 0x0e, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x0e, 0x0e, 0x07, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x20, 0x10, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0x18, 0x0c, 0x04, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x02, 0x00, 0x04, 0x0c, 0x18, 0x30, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x10, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfe, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfe, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x10, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x60, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, + 0x1f, 0x0f, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x3e, 0xfe, 0xf2, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x02, 0xf3, 0xff, 0x3f, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x3c, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0x3c, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x08, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0x10, 0x30, 0x70, 0x60, 0xe0, 0xe0, 0xe0, 0xe0, 0xc0, 0xc0, 0xe0, 0xe0, 0xe0, 0xe0, 0x60, 0x70, 0x30, 0x10, 0x18, 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x60, 0x08, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x10, 0x30, 0x20, 0x00, 0x40, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x40, 0x00, 0x20, 0x30, 0x10, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x08, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x01, 0x02, 0x04, 0x08, 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0x20, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xff, 0xff, 0xff, 0xff, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x20, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, + 0x3f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x1f, 0x3f, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x02, 0x1e, 0x7f, 0xe3, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xe1, 0x7f, 0x1e, 0x02, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x04, 0x20, 0x80, 0x00, 0x00, 0x00, 0x01, 0x06, 0x1c, 0x10, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x40, 0x20, 0x10, 0x1c, 0x06, 0x01, 0x00, 0x00, 0x00, 0x80, 0x20, 0x04, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x01, 0x03, 0x03, 0x07, 0x07, 0x06, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x06, 0x07, 0x07, 0x03, 0x03, 0x01, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x02, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x10, 0x00, 0x08, 0x08, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x06, 0x00, 0x00, 0x08, 0x08, 0x00, 0x10, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x20, 0x00, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfc, 0xfe, 0xfe, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfe, 0xfe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x00, 0x20, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, + 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x1f, 0x3f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0xc0, 0x00, 0x00, 0x00, 0x06, 0x1f, 0xe3, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xe1, 0x1f, 0x06, 0x00, 0x00, 0x00, 0xc0, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x04, 0x00, 0x20, 0x40, 0x00, 0x01, 0x03, 0x03, 0x04, 0x18, 0x30, 0x20, 0x60, 0x40, 0x40, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x40, 0x40, 0x60, 0x20, 0x30, 0x18, 0x04, 0x03, 0x03, 0x01, 0x00, 0x40, 0x20, 0x00, 0x04, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x04, 0x08, 0x00, 0x10, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, 0x00, 0x10, 0x00, 0x08, 0x04, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x10, 0x08, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x00, 0x06, 0x06, 0x00, 0x00, 0x00, 0x08, 0x10, 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfe, 0xfc, 0x08, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf8, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x0f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x07, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x02, 0x0e, 0x0f, 0xe1, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe1, 0x0f, + 0x0e, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x08, 0x00, 0x80, 0x80, 0x01, 0x06, 0x0c, 0x18, 0x30, 0x60, 0x40, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xc0, 0x40, 0x60, 0x30, 0x18, 0x0c, 0x06, 0x01, 0x80, 0x80, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x08, 0x10, 0x10, 0x00, 0x60, 0x60, 0x60, 0x00, 0x00, 0x00, 0x00, 0x60, 0x60, 0x60, 0x00, 0x10, 0x10, 0x08, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x40, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x0f, 0x1f, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x00, 0x00, 0x06, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x3f, 0x00, 0x00, + 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x80, 0x00, 0x07, 0x1f, 0x30, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x30, 0x1f, 0x07, 0x00, 0x80, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x03, 0x07, 0x06, 0x04, 0x04, 0x04, 0x04, 0x06, 0x03, 0x03, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfc, 0xfc, 0x80, 0x00, 0x00, 0x00, 0x1c, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x1e, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x00, 0x01, 0x70, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x70, 0x01, 0x00, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x07, 0x18, 0x30, 0x60, 0xe0, 0xc0, 0xc0, 0xe0, 0x60, 0x30, 0x18, 0x07, 0x00, 0x00, 0x00, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0x02, 0x02, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x60, 0xe0, 0x80, 0x00, 0x00, 0x02, 0x02, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xff, 0xfb, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xff, 0x9f, 0x01, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0xe6, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe7, 0x0e, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x3f, 0x1f, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x1f, 0x3f, 0x00, 0x00, 0x0f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x0f, 0x0f, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0x07, 0x07, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x40, 0x00, 0x00, 0x00, 0x03, 0x06, 0x0c, 0x1c, 0x1c, 0x1c, 0x1c, 0x0c, 0x06, 0x03, 0x00, 0x00, 0x00, 0x40, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x18, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xfe, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0xf8, 0xfe, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x18, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xff, 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x07, 0x07, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0xfe, 0x0e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x7e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x3e, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0x60, 0x00, 0x00, 0x03, 0x38, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf8, 0x38, 0x03, 0x00, 0x00, 0x60, 0x70, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x18, 0x80, 0x00, 0x00, 0x03, 0x07, 0x1e, 0x30, 0xe0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xe0, 0x30, 0x1e, 0x07, 0x03, 0x00, 0x00, 0x80, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} + +}; diff --git a/keyboards/handwired/uthol/keymaps/oled/star.c b/keyboards/handwired/uthol/keymaps/oled/star.c new file mode 100644 index 0000000000..a0152be680 --- /dev/null +++ b/keyboards/handwired/uthol/keymaps/oled/star.c @@ -0,0 +1,206 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include "progmem.h" + +static const char PROGMEM animation[][1024] = { + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0xff, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x0c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x78, 0x38, 0x1c, 0x0c, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x20, 0x18, 0xff, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x0e, 0x0c, 0x18, 0xff, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0f, 0x0c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x78, 0x18, 0x1c, 0x0c, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x02, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x20, 0x18, 0xff, 0x0f, 0x03, 0x03, 0x00, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x60, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x06, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x1c, 0x38, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x1c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x1e, 0x1c, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x38, 0x3c, 0x1c, 0x0e, 0x0a, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x70, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0x70, 0x90, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x30, 0x1c, 0xff, 0x0f, 0x07, 0x01, 0x01, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x1c, 0x58, 0xff, 0xf6, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x1c, 0x06, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x19, 0x1b, 0x0e, 0x1e, 0x18, 0x3c, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x78, 0x3c, 0x1c, 0x1e, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x70, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x38, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x30, 0x1c, 0xff, 0x1f, 0x07, 0x03, 0x00, 0x00, 0x01, 0x03, 0x0f, 0xff, 0x3f, 0x30, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x0c, 0x78, 0xff, 0xf8, 0xe0, 0x80, 0x20, 0x20, 0x80, 0xc0, 0xf0, 0xfc, 0xfe, + 0x0c, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x09, 0x0a, 0x1e, 0x3c, 0xbc, 0x3c, 0x78, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xfc, 0xf8, 0x7c, 0x3c, 0x3c, 0x1c, 0x0a, 0x09, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xa0, 0x70, 0x70, 0x38, 0x39, 0x3c, 0x3e, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3f, 0x3c, 0x3c, 0x38, 0x78, 0x70, 0xb0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x20, 0x1e, 0xff, 0x1f, 0x0f, 0x03, 0x01, 0x01, 0x01, 0x07, 0x1f, 0x7f, 0x7f, 0x30, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xc0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfe, 0xfc, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xff, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xf8, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0c, 0x1c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x18, 0x1c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x1f, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x07, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x06, 0x2c, 0xb8, 0xff, 0xfc, 0xe8, 0x80, 0x00, 0x00, 0x80, 0xc8, 0xf8, 0xff, 0xf8, + 0x3c, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x09, 0x1b, 0x3e, 0x1c, 0x3e, 0x38, 0x7c, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x1e, 0x1e, 0x1a, 0x09, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x90, 0xd0, 0x7c, 0x78, 0x78, 0x3c, 0x3e, 0x3f, 0x3f, 0x7f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x7a, 0x70, 0xf8, 0x90, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x38, 0x18, 0xff, 0x3f, 0x07, 0x03, 0x01, 0x00, 0x09, 0x03, 0x2f, 0xff, 0x3f, 0x38, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x04, 0x78, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x1c, 0x06, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0c, 0x1c, 0x1c, 0x3c, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x3c, 0x1c, 0x0f, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x70, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x38, 0x70, 0x70, 0x90, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x50, 0x30, 0x1c, 0xff, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x0f, 0xff, 0x3f, 0x30, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0xff, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0f, 0x0c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x78, 0x38, 0x1c, 0x0c, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x02, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x20, 0x18, 0xff, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x60, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x02, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x06, 0x0c, 0x18, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x1c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x38, 0x38, 0x1c, 0x0e, 0x0a, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0x70, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0x18, 0xff, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x06, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x06, 0x0c, 0x18, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x1c, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x38, 0x38, 0x1c, 0x0e, 0x0a, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x30, 0x18, 0xff, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x30, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x06, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x60, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x01, 0x07, 0x06, 0x0c, 0x38, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x20, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x1c, 0x1c, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x38, 0x38, 0x1c, 0x0c, 0x0a, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x70, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x06, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x20, 0x18, 0xff, 0x0f, 0x07, 0x01, 0x01, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x38, 0x60, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x03, 0x03, 0x06, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x20, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x20, 0x40, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x06, 0x0c, 0x18, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x06, 0x03, 0x01, 0x00, 0x10, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0e, 0x1c, 0x18, 0x38, 0x78, 0xf8, 0xfa, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x1c, 0x0c, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x30, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x04, 0x02, 0x03, 0x01, 0x00, 0x00, 0x08, 0x00, 0x80, 0x80, 0x60, 0x20, 0x18, 0xff, 0x0f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x07, 0xff, 0x3f, 0x20, 0x60, 0xe0, 0x82, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x02, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf8, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x04, 0x58, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x1c, 0x06, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x18, 0x08, 0x09, 0x1b, 0x0c, 0x1c, 0x38, 0x3c, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x7c, 0x3c, 0x1c, 0x0f, 0x0b, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x70, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x38, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x70, 0x30, 0x1e, 0xff, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x01, 0x03, 0x0f, 0xff, 0x3f, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0e, 0x0c, 0x38, 0xff, 0xff, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x0c, 0x0e, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x18, 0x19, 0x1b, 0x1f, 0x1c, 0x1c, 0x3c, 0x78, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x7c, 0x3c, 0x1c, 0x1e, 0x1b, 0x19, 0x18, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x98, 0xd0, 0xf0, 0x30, 0x78, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x78, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x60, 0x30, 0x1e, 0xff, 0x7f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x2f, 0xff, 0x3f, 0x38, 0x60, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x1c, 0xb8, 0xff, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0xfe, 0xfe, + 0x1c, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x09, 0x0a, 0x1e, 0x1e, 0x3c, 0x38, 0x7c, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xfc, 0x78, 0x3a, 0x1c, 0x1e, 0x1a, 0x09, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0xb0, 0xf0, 0x78, 0x78, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0xbf, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x3c, 0x38, 0x78, 0x70, 0x90, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x34, 0x19, 0xff, 0x3f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x07, 0x1f, 0x7f, 0xff, 0x30, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0xfc, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xf8, 0xf8, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x0c, 0x08, 0x18, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x38, 0x38, 0x18, 0x0c, 0x0a, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x30, 0x30, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x30, 0x30, 0x70, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, 0x7f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x03, 0x07, 0x7f, 0x3f, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xe0, 0xc0, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x78, 0xfc, 0xf8, 0xfd, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x78, 0x38, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x07, 0x07, 0x03, 0x01, 0x00, 0x01, 0x03, 0x07, 0x0f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xfc, 0x3c, 0x1e, 0x1e, 0x1e, 0x1e, 0x3c, 0xfc, 0xf8, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x0f, 0x3f, 0x3f, 0x7c, 0x78, 0x78, 0x78, 0x78, 0x7c, 0x3f, 0x3f, 0x1f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x1c, 0x78, 0xff, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xf8, 0xfe, 0xf8, + 0x5c, 0x06, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x09, 0x0a, 0x1e, 0x1e, 0x3c, 0x3c, 0x78, 0xf8, 0xf8, 0xfc, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0x7c, 0x3c, 0x1c, 0x1e, 0x1a, 0x09, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x90, 0xd0, 0x78, 0x78, 0x38, 0x7c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x3c, 0x38, 0x70, 0xf0, 0x90, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x30, 0x1e, 0xff, 0x3f, 0x07, 0x03, 0x01, 0x00, 0x01, 0x07, 0x0f, 0xff, 0x3f, 0x30, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}, + + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x00, 0x00, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x20, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x06, 0x04, 0x38, 0xff, 0xf0, 0xc0, 0x80, 0x00, 0x00, 0x80, 0xc0, 0xe0, 0xff, 0xf8, + 0x1c, 0x06, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x40, 0x20, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x08, 0x08, 0x08, 0x08, 0x08, 0x09, 0x0b, 0x0c, 0x1c, 0x1c, 0x38, 0x78, 0xf8, 0xf8, 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xf8, 0xf8, 0x78, 0x38, 0x3c, 0x1c, 0x0e, 0x0a, 0x09, 0x08, 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10, 0x10, 0x10, 0x90, 0xd0, 0x70, 0x70, 0x38, 0x3c, 0x3e, 0x3f, 0x3f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x3f, 0x3f, 0x3e, 0x3c, 0x38, 0x38, 0x70, 0xf0, 0x90, 0x10, 0x10, 0x10, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x02, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x30, 0x1c, 0xff, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x01, 0x03, 0x0f, 0xff, 0x3f, 0x30, 0x60, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x02, 0x04, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x01, 0x00, 0x00, 0x00, 0x00, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x00, 0x00, 0x00, 0x00, 0x01, 0x02, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00} + +}; diff --git a/keyboards/handwired/uthol/readme.md b/keyboards/handwired/uthol/readme.md new file mode 100644 index 0000000000..c4eb3e51ca --- /dev/null +++ b/keyboards/handwired/uthol/readme.md @@ -0,0 +1,27 @@ +# Uthol + +![Uthol](https://i.imgur.com/weFwdhfh.jpeg) + +A handwired 50% (12x5) ortholinear keyboard made by Uthol + +* Keyboard Maintainer: [Uthol](https://github.com/Uthol) +* Hardware Supported: Pro Micro ATMega32u4, Blackpill STM32F4x1 +* Hardware Availability: [Pro Micro](https://www.sparkfun.com/products/12640), [Blackpill STM32F4x1 ](https://www.aliexpress.com/item/1005001456186625.html) + +Make example for this keyboard (after setting up your build environment): + + make handwired/uthol/rev2:default + +Flashing example for this keyboard: + + make handwired/uthol/rev2:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard +* **Physical reset button**: On the Pro Micro, short the `GND` and `RST` pins. On the Blackpill, press `BOOT0` key and the `RST` key, then release the `RST` key, and release the `BOOT0` key +* **Keycode in layout**: Press the key mapped to `Settings + Backspace` diff --git a/keyboards/handwired/uthol/rev1/config.h b/keyboards/handwired/uthol/rev1/config.h new file mode 100644 index 0000000000..dbda8e90ed --- /dev/null +++ b/keyboards/handwired/uthol/rev1/config.h @@ -0,0 +1,29 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +#define DEVICE_VER 0x0001 +#define PRODUCT_ID 0x67F3 +#define PRODUCT UtholOne + +/* Uthol PCB default pin-out */ +#define MATRIX_ROW_PINS { D1, D0, D4, C6, D7 } +#define MATRIX_COL_PINS { D3, B6, B2, B3, B1, F7, F6, F5, F4, B5, B4, D2 } +#define UNUSED_PINS diff --git a/keyboards/handwired/uthol/rev1/readme.md b/keyboards/handwired/uthol/rev1/readme.md new file mode 100644 index 0000000000..6f5ddfead3 --- /dev/null +++ b/keyboards/handwired/uthol/rev1/readme.md @@ -0,0 +1,4 @@ +Uthol +=== + +Rev 1 - Aluminum diff --git a/keyboards/handwired/uthol/rev1/rules.mk b/keyboards/handwired/uthol/rev1/rules.mk new file mode 100644 index 0000000000..0da1dde9cb --- /dev/null +++ b/keyboards/handwired/uthol/rev1/rules.mk @@ -0,0 +1,13 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes +EXTRAKEY_ENABLE = yes +NKRO_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/handwired/uthol/rev2/config.h b/keyboards/handwired/uthol/rev2/config.h new file mode 100644 index 0000000000..3ef6fc172c --- /dev/null +++ b/keyboards/handwired/uthol/rev2/config.h @@ -0,0 +1,35 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +#define DEVICE_VER 0x0002 +#define PRODUCT_ID 0x67F3 +#define PRODUCT UtholTwo + +/* Uthol PCB default pin-out */ +#define MATRIX_ROW_PINS { B1, F7, F6, F5, F4 } +#define MATRIX_COL_PINS { D3, D2, D1, D0, D4, C6, D7, B5, B4, B6, B2, B3 } +#define UNUSED_PINS + +//RGB Stuff +#define RGB_DI_PIN E6 +#define RGBLED_NUM 39 +#define RGBLIGHT_ANIMATIONS +#define RGBLIGHT_DEFAULT_HUE 201 diff --git a/keyboards/handwired/uthol/rev2/readme.md b/keyboards/handwired/uthol/rev2/readme.md new file mode 100644 index 0000000000..080e02d310 --- /dev/null +++ b/keyboards/handwired/uthol/rev2/readme.md @@ -0,0 +1,4 @@ +Uthol +=== + +Rev 2 - Standard diff --git a/keyboards/handwired/uthol/rev2/rules.mk b/keyboards/handwired/uthol/rev2/rules.mk new file mode 100644 index 0000000000..63476766fd --- /dev/null +++ b/keyboards/handwired/uthol/rev2/rules.mk @@ -0,0 +1,15 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes +EXTRAKEY_ENABLE = yes +NKRO_ENABLE = yes +LTO_ENABLE = yes +RGBLIGHT_ENABLE = yes +RGBLIGHT_DRIVER = WS2812 diff --git a/keyboards/handwired/uthol/rev3/chconf.h b/keyboards/handwired/uthol/rev3/chconf.h new file mode 100644 index 0000000000..e4147c75b1 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/chconf.h @@ -0,0 +1,34 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE + +#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE + +#define CH_CFG_FACTORY_SEMAPHORES TRUE + +#define CH_CFG_FACTORY_MAILBOXES TRUE + +#define CH_CFG_FACTORY_OBJ_FIFOS TRUE + +#define CH_CFG_FACTORY_PIPES TRUE + +#include_next diff --git a/keyboards/handwired/uthol/rev3/config.h b/keyboards/handwired/uthol/rev3/config.h new file mode 100644 index 0000000000..47f079e612 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/config.h @@ -0,0 +1,69 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +#define DEVICE_VER 0x0003 +#define PRODUCT_ID 0x67F3 +#define PRODUCT UtholThree + +/* key matrix size */ +// A11 and A12 dont work. They are reserved for USB. B2 is reserved for BOOT1 +#define MATRIX_COL_PINS \ + { B1, B10, B9, B8, B5, B4, B3, A15, B15, B14, B13, B12 } +#define MATRIX_ROW_PINS \ + { A4, A3, A2, A1, A0 } + +#define UNUSED_PINS + +// Encoder config +#define ENCODERS_PAD_A \ + { C15 } +#define ENCODERS_PAD_B \ + { C14 } +#define ENCODER_RESOLUTION 2 + +// OLED config +#define OLED_DISPLAY_128X64 +#define OLED_DISPLAY_WIDTH 128 +#define OLED_DISPLAY_HEIGHT 64 +#define OLED_UPDATE_INTERVAL 0 +#define OLED_BRIGHTNESS 255 +#define OLED_DISPLAY_ADDRESS 0x3C +#define OLED_RESET -1 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +#define TAPPING_TERM 500 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +// RGB Stuff +#define RGB_DI_PIN B0 +#define RGBLED_NUM 39 +#define RGBLIGHT_ANIMATIONS +#define RGBLIGHT_DEFAULT_HUE 201 diff --git a/keyboards/handwired/uthol/rev3/halconf.h b/keyboards/handwired/uthol/rev3/halconf.h new file mode 100644 index 0000000000..47e02bc102 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/halconf.h @@ -0,0 +1,24 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#define HAL_USE_I2C TRUE + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/handwired/uthol/rev3/mcuconf.h b/keyboards/handwired/uthol/rev3/mcuconf.h new file mode 100644 index 0000000000..24fb0ef3a5 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/mcuconf.h @@ -0,0 +1,25 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +#undef STM32_PWM_USE_TIM5 +#define STM32_PWM_USE_TIM5 TRUE diff --git a/keyboards/handwired/uthol/rev3/readme.md b/keyboards/handwired/uthol/rev3/readme.md new file mode 100644 index 0000000000..6b6897ef44 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/readme.md @@ -0,0 +1,4 @@ +Uthol +=== + +Rev 3 - Blackpill diff --git a/keyboards/handwired/uthol/rev3/rev3.c b/keyboards/handwired/uthol/rev3/rev3.c new file mode 100644 index 0000000000..2ababdfbe8 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/rev3.c @@ -0,0 +1,20 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +void board_init(void) { setPinInputHigh(B9); } diff --git a/keyboards/handwired/uthol/rev3/rules.mk b/keyboards/handwired/uthol/rev3/rules.mk new file mode 100644 index 0000000000..b64e4ec8d1 --- /dev/null +++ b/keyboards/handwired/uthol/rev3/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes +NKRO_ENABLE = yes +KEYBOARD_SHARED_EP = yes +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +WPM_ENABLE = yes +EXTRAKEY_ENABLE = yes +ENCODER_ENABLE = yes +RGBLIGHT_ENABLE = yes +RGBLIGHT_DRIVER = WS2812 diff --git a/keyboards/handwired/uthol/uthol.c b/keyboards/handwired/uthol/uthol.c new file mode 100644 index 0000000000..2b02e899d4 --- /dev/null +++ b/keyboards/handwired/uthol/uthol.c @@ -0,0 +1,18 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#include "uthol.h" diff --git a/keyboards/handwired/uthol/uthol.h b/keyboards/handwired/uthol/uthol.h new file mode 100644 index 0000000000..a774fdb940 --- /dev/null +++ b/keyboards/handwired/uthol/uthol.h @@ -0,0 +1,45 @@ +/* + * Copyright 2022 Uthol + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/************************************************** +** Include headers specific to keyboard revision ** +**************************************************/ +#if defined(KEYBOARD_uthol_rev1) +# include "rev1.h" +#elif defined(KEYBOARD_uthol_rev2) +# include "rev2.h" +#elif defined(KEYBOARD_uthol_rev2) +# include "rev3.h" +#endif + +#define LAYOUT_uthol( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, \ + k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b }, \ + { k40, k41, k42, k43, k44, k45, k45, k47, k48, k49, k4a, k4b } \ +} From ec3df85f08edf2636599edb96f358004ee020c86 Mon Sep 17 00:00:00 2001 From: TerryMathews Date: Mon, 7 Mar 2022 22:39:33 -0500 Subject: [PATCH 043/699] [Keyboard] TKC Portico68 v2 (#15916) Co-authored-by: Ryan --- keyboards/tkc/portico68v2/config.h | 106 +++++++++++++ keyboards/tkc/portico68v2/info.json | 82 ++++++++++ .../tkc/portico68v2/keymaps/default/keymap.c | 35 +++++ .../tkc/portico68v2/keymaps/via/config.h | 19 +++ .../tkc/portico68v2/keymaps/via/keymap.c | 121 +++++++++++++++ .../tkc/portico68v2/keymaps/via/rules.mk | 1 + keyboards/tkc/portico68v2/portico68v2.c | 145 ++++++++++++++++++ keyboards/tkc/portico68v2/portico68v2.h | 36 +++++ keyboards/tkc/portico68v2/readme.md | 21 +++ keyboards/tkc/portico68v2/rules.mk | 21 +++ 10 files changed, 587 insertions(+) create mode 100644 keyboards/tkc/portico68v2/config.h create mode 100644 keyboards/tkc/portico68v2/info.json create mode 100644 keyboards/tkc/portico68v2/keymaps/default/keymap.c create mode 100644 keyboards/tkc/portico68v2/keymaps/via/config.h create mode 100644 keyboards/tkc/portico68v2/keymaps/via/keymap.c create mode 100644 keyboards/tkc/portico68v2/keymaps/via/rules.mk create mode 100644 keyboards/tkc/portico68v2/portico68v2.c create mode 100644 keyboards/tkc/portico68v2/portico68v2.h create mode 100644 keyboards/tkc/portico68v2/readme.md create mode 100644 keyboards/tkc/portico68v2/rules.mk diff --git a/keyboards/tkc/portico68v2/config.h b/keyboards/tkc/portico68v2/config.h new file mode 100644 index 0000000000..af0a162810 --- /dev/null +++ b/keyboards/tkc/portico68v2/config.h @@ -0,0 +1,106 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x544B //TK +#define PRODUCT_ID 0x0012 //Portico68v2 +#define DEVICE_VER 0x0001 +#define MANUFACTURER TKC +#define PRODUCT Portico68v2 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +#define MATRIX_ROW_PINS { B6, C6, C7, F7, D2 } +#define MATRIX_COL_PINS { D3, D5, D4, D6, D7, B4, B5, F6, F5, F4, F1, B0, B1, B2, B3 } + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 3 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +#define DRIVER_ADDR_1 0b0110000 +#define DRIVER_COUNT 1 +#define DRIVER_1_LED_TOTAL 82 +#define DRIVER_LED_TOTAL DRIVER_1_LED_TOTAL +#define DRIVER_INDICATOR_LED_TOTAL 0 +#define RGB_MATRIX_CENTER { 116, 32 } +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 175 +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES +#define RGB_DISABLE_WHEN_USB_SUSPENDED +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + +// #define RGB_MATRIX_LED_PROCESS_LIMIT 5 +// #define RGB_MATRIX_LED_FLUSH_LIMIT 26 diff --git a/keyboards/tkc/portico68v2/info.json b/keyboards/tkc/portico68v2/info.json new file mode 100644 index 0000000000..d3ea7cb264 --- /dev/null +++ b/keyboards/tkc/portico68v2/info.json @@ -0,0 +1,82 @@ +{ + "keyboard_name": "TKC Portico68 v2", + "url": "", + "maintainer": "TerryMathews", + "layouts": { + "LAYOUT_65_ansi_blocker": { + "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}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Home", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"", "x":14, "y":3}, + {"label":"End", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"", "x":13, "y":4}, + {"label":"", "x":14, "y":4}, + {"label":"", "x":15, "y":4} + ] + } + } +} diff --git a/keyboards/tkc/portico68v2/keymaps/default/keymap.c b/keyboards/tkc/portico68v2/keymaps/default/keymap.c new file mode 100644 index 0000000000..d8ecbe1c0a --- /dev/null +++ b/keyboards/tkc/portico68v2/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi_blocker( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi_blocker( + KC_GESC, 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_HOME, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, + KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, + _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; diff --git a/keyboards/tkc/portico68v2/keymaps/via/config.h b/keyboards/tkc/portico68v2/keymaps/via/config.h new file mode 100644 index 0000000000..39b11550cf --- /dev/null +++ b/keyboards/tkc/portico68v2/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#pragma once +#define VIA_CUSTOM_LIGHTING_ENABLE diff --git a/keyboards/tkc/portico68v2/keymaps/via/keymap.c b/keyboards/tkc/portico68v2/keymaps/via/keymap.c new file mode 100644 index 0000000000..b8fd68f625 --- /dev/null +++ b/keyboards/tkc/portico68v2/keymaps/via/keymap.c @@ -0,0 +1,121 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi_blocker( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi_blocker( + KC_GESC, 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_HOME, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, + KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, + _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT + ), + [2] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; + +void via_qmk_rgblight_get_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: { + value_data[0] = rgb_matrix_get_val(); + break; + } + case id_qmk_rgblight_effect: { + value_data[0] = rgb_matrix_get_flags() ? rgb_matrix_get_mode() : 0; + break; + } + case id_qmk_rgblight_effect_speed: { + value_data[0] = rgb_matrix_get_speed(); + break; + } + case id_qmk_rgblight_color: { + value_data[0] = rgb_matrix_get_hue(); + value_data[1] = rgb_matrix_get_sat(); + break; + } + } +} + +void via_qmk_rgblight_set_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: { + rgb_matrix_sethsv_noeeprom(rgblight_get_hue(), rgblight_get_sat(), value_data[0]); + break; + } + case id_qmk_rgblight_effect: { + if (value_data[0] == 0) { + rgb_matrix_set_flags(LED_FLAG_NONE); + } else { + rgb_matrix_mode_noeeprom(value_data[0]); + rgb_matrix_set_flags(LED_FLAG_MODIFIER|LED_FLAG_UNDERGLOW|LED_FLAG_KEYLIGHT); + } + break; + } + case id_qmk_rgblight_effect_speed: { + rgb_matrix_set_speed_noeeprom(value_data[0]); + break; + } + case id_qmk_rgblight_color: { + rgb_matrix_sethsv_noeeprom(value_data[0], value_data[1], rgblight_get_val()); + break; + } + } +} + +void raw_hid_receive_kb(uint8_t *data, uint8_t length) { + uint8_t *command_id = &(data[0]); + uint8_t *command_data = &(data[1]); + switch (*command_id) { + case id_lighting_set_value: + via_qmk_rgblight_set_value(command_data); + break; + case id_lighting_get_value: + via_qmk_rgblight_get_value(command_data); + break; + case id_lighting_save: + eeconfig_update_rgb_matrix(); + break; + default: + // Unhandled message. + *command_id = id_unhandled; + break; + } +} diff --git a/keyboards/tkc/portico68v2/keymaps/via/rules.mk b/keyboards/tkc/portico68v2/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/tkc/portico68v2/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/tkc/portico68v2/portico68v2.c b/keyboards/tkc/portico68v2/portico68v2.c new file mode 100644 index 0000000000..8e98034ca5 --- /dev/null +++ b/keyboards/tkc/portico68v2/portico68v2.c @@ -0,0 +1,145 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#include "portico68v2.h" + +#ifdef RGB_MATRIX_ENABLE +const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { + {0, CS18_SW1, CS17_SW1, CS16_SW1}, /* RGB1 */ + {0, CS18_SW2, CS17_SW2, CS16_SW2}, /* RGB2 */ + {0, CS18_SW3, CS17_SW3, CS16_SW3}, /* RGB3 */ + {0, CS18_SW4, CS17_SW4, CS16_SW4}, /* RGB4 */ + {0, CS18_SW5, CS17_SW5, CS16_SW5}, /* RGB5 */ + {0, CS18_SW6, CS17_SW6, CS16_SW6}, /* RGB6 */ + {0, CS18_SW7, CS17_SW7, CS16_SW7}, /* RGB7 */ + {0, CS18_SW8, CS17_SW8, CS16_SW8}, /* RGB8 */ + {0, CS18_SW9, CS17_SW9, CS16_SW9}, /* RGB9 */ + {0, CS21_SW1, CS20_SW1, CS19_SW1}, /* RGB10 */ + {0, CS21_SW2, CS20_SW2, CS19_SW2}, /* RGB11 */ + {0, CS21_SW3, CS20_SW3, CS19_SW3}, /* RGB12 */ + {0, CS21_SW4, CS20_SW4, CS19_SW4}, /* RGB13 */ + {0, CS21_SW5, CS20_SW5, CS19_SW5}, /* RGB14 */ + {0, CS21_SW6, CS20_SW6, CS19_SW6}, /* RGB15 */ + {0, CS15_SW1, CS14_SW1, CS13_SW1}, /* RGB16 */ + {0, CS15_SW2, CS14_SW2, CS13_SW2}, /* RGB17 */ + {0, CS15_SW3, CS14_SW3, CS13_SW3}, /* RGB18 */ + {0, CS15_SW4, CS14_SW4, CS13_SW4}, /* RGB19 */ + {0, CS15_SW5, CS14_SW5, CS13_SW5}, /* RGB20 */ + {0, CS15_SW6, CS14_SW6, CS13_SW6}, /* RGB21 */ + {0, CS15_SW7, CS14_SW7, CS13_SW7}, /* RGB22 */ + {0, CS15_SW8, CS14_SW8, CS13_SW8}, /* RGB23 */ + {0, CS15_SW9, CS14_SW9, CS13_SW9}, /* RGB24 */ + {0, CS24_SW1, CS23_SW1, CS22_SW1}, /* RGB25 */ + {0, CS24_SW2, CS23_SW2, CS22_SW2}, /* RGB26 */ + {0, CS24_SW3, CS23_SW3, CS22_SW3}, /* RGB27 */ + {0, CS24_SW4, CS23_SW4, CS22_SW4}, /* RGB28 */ + {0, CS24_SW5, CS23_SW5, CS22_SW5}, /* RGB29 */ + {0, CS24_SW6, CS23_SW6, CS22_SW6}, /* RGB30 */ + {0, CS12_SW1, CS11_SW1, CS10_SW1}, /* RGB31 */ + {0, CS12_SW2, CS11_SW2, CS10_SW2}, /* RGB32 */ + {0, CS12_SW3, CS11_SW3, CS10_SW3}, /* RGB33 */ + {0, CS12_SW4, CS11_SW4, CS10_SW4}, /* RGB34 */ + {0, CS12_SW5, CS11_SW5, CS10_SW5}, /* RGB35 */ + {0, CS12_SW6, CS11_SW6, CS10_SW6}, /* RGB36 */ + {0, CS12_SW7, CS11_SW7, CS10_SW7}, /* RGB37 */ + {0, CS12_SW8, CS11_SW8, CS10_SW8}, /* RGB38 */ + {0, CS12_SW9, CS11_SW9, CS10_SW9}, /* RGB39 */ + {0, CS27_SW1, CS26_SW1, CS25_SW1}, /* RGB40 */ + {0, CS27_SW2, CS26_SW2, CS25_SW2}, /* RGB41 */ + {0, CS27_SW3, CS26_SW3, CS25_SW3}, /* RGB42 */ + {0, CS27_SW4, CS26_SW4, CS25_SW4}, /* RGB43 */ + {0, CS27_SW6, CS26_SW6, CS25_SW6}, /* RGB44 */ + {0, CS9_SW1, CS8_SW1, CS7_SW1}, /* RGB45 */ + {0, CS9_SW3, CS8_SW3, CS7_SW3}, /* RGB46 */ + {0, CS9_SW4, CS8_SW4, CS7_SW4}, /* RGB47 */ + {0, CS9_SW5, CS8_SW5, CS7_SW5}, /* RGB48 */ + {0, CS9_SW6, CS8_SW6, CS7_SW6}, /* RGB49 */ + {0, CS9_SW7, CS8_SW7, CS7_SW7}, /* RGB50 */ + {0, CS9_SW8, CS8_SW8, CS7_SW8}, /* RGB51 */ + {0, CS9_SW9, CS8_SW9, CS7_SW9}, /* RGB52 */ + {0, CS30_SW1, CS29_SW1, CS28_SW1}, /* RGB53 */ + {0, CS30_SW2, CS29_SW2, CS28_SW2}, /* RGB54 */ + {0, CS30_SW3, CS29_SW3, CS28_SW3}, /* RGB55 */ + {0, CS30_SW4, CS29_SW4, CS28_SW4}, /* RGB56 */ + {0, CS30_SW5, CS29_SW5, CS28_SW5}, /* RGB57 */ + {0, CS30_SW6, CS29_SW6, CS28_SW6}, /* RGB58 */ + {0, CS6_SW1, CS5_SW1, CS4_SW1}, /* RGB59 */ + {0, CS6_SW2, CS5_SW2, CS4_SW2}, /* RGB60 */ + {0, CS6_SW3, CS5_SW3, CS4_SW3}, /* RGB61 */ + {0, CS6_SW7, CS5_SW7, CS4_SW7}, /* RGB62 */ + {0, CS33_SW2, CS32_SW2, CS31_SW2}, /* RGB63 */ + {0, CS33_SW3, CS32_SW3, CS31_SW3}, /* RGB64 */ + {0, CS33_SW4, CS32_SW4, CS31_SW4}, /* RGB65 */ + {0, CS33_SW5, CS32_SW5, CS31_SW5}, /* RGB66 */ + {0, CS33_SW6, CS32_SW6, CS31_SW6}, /* RGB67 */ + + {0,CS36_SW1,CS35_SW1,CS34_SW1}, /* RGB68 */ + {0,CS36_SW2,CS35_SW2,CS34_SW2}, /* RGB69 */ + {0,CS36_SW3,CS35_SW3,CS34_SW3}, /* RGB70 */ + {0,CS36_SW4,CS35_SW4,CS34_SW4}, /* RGB71 */ + {0,CS36_SW5,CS35_SW5,CS34_SW5}, /* RGB72 */ + {0,CS36_SW6,CS35_SW6,CS34_SW6}, /* RGB73 */ + {0,CS36_SW7,CS35_SW7,CS34_SW7}, /* RGB74 */ + {0,CS36_SW8,CS35_SW8,CS34_SW8}, /* RGB75 */ + {0,CS36_SW9,CS35_SW9,CS34_SW9}, /* RGB76 */ + {0,CS39_SW1,CS38_SW1,CS37_SW1}, /* RGB77 */ + {0,CS39_SW2,CS38_SW2,CS37_SW2}, /* RGB78 */ + {0,CS39_SW3,CS38_SW3,CS37_SW3}, /* RGB79 */ + {0,CS39_SW4,CS38_SW4,CS37_SW4}, /* RGB80 */ + {0,CS39_SW5,CS38_SW5,CS37_SW5}, /* RGB81 */ + {0,CS39_SW6,CS38_SW6,CS37_SW6}, /* RGB82 */ +}; + +led_config_t g_led_config = { + { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, + { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, + { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, NO_LED, 43 }, + { 44, NO_LED, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57 }, + { 58, 59, 60, NO_LED, NO_LED, NO_LED, 61, NO_LED, NO_LED, NO_LED, 62, 63, 64, 65, 66 } + }, { + { 0, 0 }, { 15, 0 }, { 30, 0 }, { 45, 0 }, { 60, 0 }, { 75, 0 }, { 90, 0 }, { 105, 0 }, { 120, 0 }, { 135, 0 }, { 150, 0 }, { 165, 0 }, { 180, 0 }, { 203, 0 }, { 224, 0 }, + { 4, 16 }, { 23, 16 }, { 38, 16 }, { 53, 16 }, { 68, 16 }, { 83, 16 }, { 98, 16 }, { 113, 16 }, { 128, 16 }, { 143, 16 }, { 158, 16 }, { 173, 16 }, { 188, 16 }, { 206, 16 }, { 224, 16 }, + { 6, 32 }, { 26, 32 }, { 41, 32 }, { 56, 32 }, { 71, 32 }, { 86, 32 }, { 101, 32 }, { 116, 32 }, { 131, 32 }, { 146, 32 }, { 161, 32 }, { 176, 32 }, { 201, 32 }, { 224, 32 }, + { 9, 48 }, { 34, 48 }, { 49, 48 }, { 64, 48 }, { 79, 48 }, { 94, 48 }, { 109, 48 }, { 124, 48 }, { 139, 48 }, { 154, 48 }, { 169, 48 }, { 189, 48 }, { 210, 48 }, { 224, 48 }, + { 2, 64 }, { 21, 64 }, { 39, 64 }, { 96, 64 }, { 152, 64 }, { 171, 64 }, { 195, 64 }, { 210, 64 }, { 224, 64 }, + {0,0},{180,0},{224,0},{200,64},{224,64},{224,32},{44,0},{88,0},{136,0},{0,32},{0,64},{24,64},{78,64},{112,64},{146,64} +}, { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, + 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2 + } +}; + +void rgb_matrix_indicators_kb(void) { + if (host_keyboard_led_state().caps_lock) { + for (uint8_t i = 0; i < DRIVER_1_LED_TOTAL; i++) { + rgb_matrix_set_color(i, 0xFF, 0xFF, 0xFF); + } + } + else { + if (rgb_matrix_get_flags() == LED_FLAG_NONE) { + for (uint8_t i = 0; i < DRIVER_1_LED_TOTAL; i++) { + rgb_matrix_set_color(i, 0, 0, 0); + } + } + } +} +#endif diff --git a/keyboards/tkc/portico68v2/portico68v2.h b/keyboards/tkc/portico68v2/portico68v2.h new file mode 100644 index 0000000000..3cbe46d560 --- /dev/null +++ b/keyboards/tkc/portico68v2/portico68v2.h @@ -0,0 +1,36 @@ +/* +Copyright 2022 Terry Mathews + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E,\ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E,\ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E,\ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E,\ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/tkc/portico68v2/readme.md b/keyboards/tkc/portico68v2/readme.md new file mode 100644 index 0000000000..df031fabe8 --- /dev/null +++ b/keyboards/tkc/portico68v2/readme.md @@ -0,0 +1,21 @@ +# TKC Portico68 v2 + +![TKC Portico68](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/tkc/portico/portico-clear_overhead_1024x1024.webp) + +A 65% keyboard kit with per-key and underglow RGB lighting. + +* Keyboard Maintainer: [TerryMathews](https://github.com/TerryMathews) +* Hardware Supported: TKC Portico (ATmega32U4) +* Hardware Availability: [TheKey.Company](https://thekey.company/products/portico-keyboard) + +Reset board into bootloader by holding down Esc key while plugging in USB-C cable. + +Make example for this keyboard (after setting up your build environment): + + make tkc/portico68v2:default + +Flashing example for this keyboard: + + make tkc/portico68v2:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/tkc/portico68v2/rules.mk b/keyboards/tkc/portico68v2/rules.mk new file mode 100644 index 0000000000..f8e7ced981 --- /dev/null +++ b/keyboards/tkc/portico68v2/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +LTO_ENABLE = yes # Compile-time optimizations +RGB_MATRIX_ENABLE = yes # Use RGB matrix +RGB_MATRIX_DRIVER = IS31FL3741 \ No newline at end of file From 86966fce69369fe4f82efcab9540805b26632967 Mon Sep 17 00:00:00 2001 From: Beanaccle <25994266+Beanaccle@users.noreply.github.com> Date: Tue, 8 Mar 2022 12:40:46 +0900 Subject: [PATCH 044/699] [Keyboard] Add KB58 (#15896) Co-authored-by: Drashna Jaelre --- keyboards/kb58/config.h | 154 ++++++++++++++++++++++++ keyboards/kb58/info.json | 73 +++++++++++ keyboards/kb58/kb58.c | 17 +++ keyboards/kb58/kb58.h | 46 +++++++ keyboards/kb58/keymaps/default/keymap.c | 40 ++++++ keyboards/kb58/readme.md | 23 ++++ keyboards/kb58/rules.mk | 20 +++ 7 files changed, 373 insertions(+) create mode 100644 keyboards/kb58/config.h create mode 100644 keyboards/kb58/info.json create mode 100644 keyboards/kb58/kb58.c create mode 100644 keyboards/kb58/kb58.h create mode 100644 keyboards/kb58/keymaps/default/keymap.c create mode 100644 keyboards/kb58/readme.md create mode 100644 keyboards/kb58/rules.mk diff --git a/keyboards/kb58/config.h b/keyboards/kb58/config.h new file mode 100644 index 0000000000..9b8216e75b --- /dev/null +++ b/keyboards/kb58/config.h @@ -0,0 +1,154 @@ +/* +Copyright 2021 beanaccle + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER beanaccle +#define PRODUCT kb58 + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 7 + +/* + * 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 { F4, B6, E6, B4, B5 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, D7, D4, D0 } +#define MATRIX_ROW_PINS_RIGHT { F7, B5, B3, B2, B6 } +#define MATRIX_COL_PINS_RIGHT { F6, B1, E6, D7, C6, D4, D0 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D2 // or D0, D1, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kb58/info.json b/keyboards/kb58/info.json new file mode 100644 index 0000000000..5114eec6ae --- /dev/null +++ b/keyboards/kb58/info.json @@ -0,0 +1,73 @@ +{ + "keyboard_name": "KB58", + "url": "https://github.com/beanaccle/kb58_pico", + "maintainer": "beanaccle", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-", "x":11, "y":0}, + {"label":"=", "x":12, "y":0}, + + {"label":"Tab", "x":0, "y":1}, + {"label":"Q", "x":1, "y":1}, + {"label":"W", "x":2, "y":1}, + {"label":"E", "x":3, "y":1}, + {"label":"R", "x":4, "y":1}, + {"label":"T", "x":5, "y":1}, + {"label":"Y", "x":6, "y":1}, + {"label":"U", "x":7, "y":1}, + {"label":"I", "x":8, "y":1}, + {"label":"O", "x":9, "y":1}, + {"label":"P", "x":10, "y":1}, + {"label":"[", "x":11, "y":1}, + {"label":"]", "x":12, "y":1}, + + {"label":"Control", "x":0, "y":2}, + {"label":"A", "x":1, "y":2}, + {"label":"S", "x":2, "y":2}, + {"label":"D", "x":3, "y":2}, + {"label":"F", "x":4, "y":2}, + {"label":"G", "x":5, "y":2}, + {"label":"H", "x":6, "y":2}, + {"label":"J", "x":7, "y":2}, + {"label":"K", "x":8, "y":2}, + {"label":"L", "x":9, "y":2}, + {"label":";", "x":10, "y":2}, + {"label":"'", "x":11, "y":2}, + {"label":"Enter", "x":12, "y":2}, + + {"label":"Shift", "x":0, "y":3}, + {"label":"Z", "x":1, "y":3}, + {"label":"X", "x":2, "y":3}, + {"label":"C", "x":3, "y":3}, + {"label":"Y", "x":4, "y":3}, + {"label":"B", "x":5, "y":3}, + {"label":"N", "x":6, "y":3}, + {"label":"M", "x":7, "y":3}, + {"label":",", "x":8, "y":3}, + {"label":".", "x":9, "y":3}, + {"label":"/", "x":10, "y":3}, + {"label":"\\", "x":11, "y":3}, + {"label":"Shift", "x":12, "y":3}, + + {"label":"Alt", "x":3, "y":4}, + {"label":"GUI", "x":4, "y":4}, + {"x":5, "y":4}, + {"x":6, "y":4}, + {"label":"Fn", "x":7, "y":4}, + {"label":"Delete", "x":8, "y":4} + ] + } + } +} diff --git a/keyboards/kb58/kb58.c b/keyboards/kb58/kb58.c new file mode 100644 index 0000000000..5d189fa321 --- /dev/null +++ b/keyboards/kb58/kb58.c @@ -0,0 +1,17 @@ +/* Copyright 2021 beanaccle + * + * 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 . + */ + +#include "kb58.h" diff --git a/keyboards/kb58/kb58.h b/keyboards/kb58/kb58.h new file mode 100644 index 0000000000..d936215ae8 --- /dev/null +++ b/keyboards/kb58/kb58.h @@ -0,0 +1,46 @@ +/* Copyright 2021 beanaccle + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, R06, \ + L06, L07, L08, L09, L10, L11, R07, R08, R09, R10, R11, R12, R13, \ + L12, L13, L14, L15, L16, L17, R14, R15, R16, R17, R18, R19, R20, \ + L18, L19, L20, L21, L22, L23, R21, R22, R23, R24, R25, R26, R27, \ + L24, L25, L26, R28, R29, R30 \ +) { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L06, L07, L08, L09, L10, L11 }, \ + { L12, L13, L14, L15, L16, L17 }, \ + { L18, L19, L20, L21, L22, L23 }, \ + { KC_NO, KC_NO, KC_NO, L24, L25, L26 }, \ + { R00, R01, R02, R03, R04, R05, R06 }, \ + { R07, R08, R09, R10, R11, R12, R13 }, \ + { R14, R15, R16, R17, R18, R19, R20 }, \ + { R21, R22, R23, R24, R25, R26, R27 }, \ + { R28, R29, R30, KC_NO, KC_NO, KC_NO, KC_NO } \ +} diff --git a/keyboards/kb58/keymaps/default/keymap.c b/keyboards/kb58/keymaps/default/keymap.c new file mode 100644 index 0000000000..e85c7a23ca --- /dev/null +++ b/keyboards/kb58/keymaps/default/keymap.c @@ -0,0 +1,40 @@ +/* Copyright 2021 beanaccle + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_GRV, 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_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_LCTL, 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_BSLS, KC_RSFT, + KC_LOPT, KC_LGUI, KC_SPC, KC_SPC, MO(_FN), KC_BSPC + ), + [_FN] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_GRV, 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_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, + _______, 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_CAPS, _______, KC_ESC, KC_ESC, _______, KC_DEL + ) +}; diff --git a/keyboards/kb58/readme.md b/keyboards/kb58/readme.md new file mode 100644 index 0000000000..6d02b1787a --- /dev/null +++ b/keyboards/kb58/readme.md @@ -0,0 +1,23 @@ +# KB58 + +![kb58_pico](https://user-images.githubusercontent.com/25994266/146207912-b725e22f-92dc-4a40-9157-c2fddff45ce2.jpg) + +This is 58 keys keyboard. + +* Keyboard Maintainer: [beanaccle](https://github.com/beanaccle) +* Hardware Supported: KB58 +* Hardware Availability: [KB58 Pico](https://github.com/beanaccle/kb58_pico) + +Make example for this keyboard (after setting up your build environment): + + make kb58:default + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/kb58/rules.mk b/keyboards/kb58/rules.mk new file mode 100644 index 0000000000..0854164fb6 --- /dev/null +++ b/keyboards/kb58/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +SPLIT_KEYBOARD = yes # Enables split keyboard support From 249bc3a5c58607d71534cb538a8c76565557849a Mon Sep 17 00:00:00 2001 From: Sergey Vlasov Date: Tue, 8 Mar 2022 06:45:30 +0300 Subject: [PATCH 045/699] [Keyboard] Add Winry315 keyboard (#15894) --- keyboards/winry/winry315/config.h | 138 +++++++++ keyboards/winry/winry315/info.json | 104 +++++++ .../winry/winry315/keymaps/default/keymap.c | 79 ++++++ .../winry/winry315/keymaps/default/readme.md | 1 + .../winry315/keymaps/left_numpad/config.h | 6 + .../winry315/keymaps/left_numpad/keymap.c | 81 ++++++ .../winry315/keymaps/left_numpad/readme.md | 3 + keyboards/winry/winry315/keymaps/via/config.h | 15 + .../winry315/keymaps/via/encoder_actions.c | 85 ++++++ .../winry315/keymaps/via/encoder_actions.h | 21 ++ keyboards/winry/winry315/keymaps/via/keymap.c | 44 +++ keyboards/winry/winry315/keymaps/via/rules.mk | 4 + keyboards/winry/winry315/readme.md | 45 +++ keyboards/winry/winry315/rules.mk | 21 ++ keyboards/winry/winry315/winry315.c | 262 ++++++++++++++++++ keyboards/winry/winry315/winry315.h | 86 ++++++ 16 files changed, 995 insertions(+) create mode 100644 keyboards/winry/winry315/config.h create mode 100644 keyboards/winry/winry315/info.json create mode 100644 keyboards/winry/winry315/keymaps/default/keymap.c create mode 100644 keyboards/winry/winry315/keymaps/default/readme.md create mode 100644 keyboards/winry/winry315/keymaps/left_numpad/config.h create mode 100644 keyboards/winry/winry315/keymaps/left_numpad/keymap.c create mode 100644 keyboards/winry/winry315/keymaps/left_numpad/readme.md create mode 100644 keyboards/winry/winry315/keymaps/via/config.h create mode 100644 keyboards/winry/winry315/keymaps/via/encoder_actions.c create mode 100644 keyboards/winry/winry315/keymaps/via/encoder_actions.h create mode 100644 keyboards/winry/winry315/keymaps/via/keymap.c create mode 100644 keyboards/winry/winry315/keymaps/via/rules.mk create mode 100644 keyboards/winry/winry315/readme.md create mode 100644 keyboards/winry/winry315/rules.mk create mode 100644 keyboards/winry/winry315/winry315.c create mode 100644 keyboards/winry/winry315/winry315.h diff --git a/keyboards/winry/winry315/config.h b/keyboards/winry/winry315/config.h new file mode 100644 index 0000000000..1a9617c1e3 --- /dev/null +++ b/keyboards/winry/winry315/config.h @@ -0,0 +1,138 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +// Key matrix size. +#define MATRIX_ROWS 1 +#define MATRIX_COLS 24 + +// Key pins (including encoder press switches). +// The NO_PIN entries are reserved for encoder rotation mappings. +#define DIRECT_PINS \ + { \ + { F4, C7, D4, D5, D1, F5, C6, D6, D3, D2, F6, B6, D7, B4, B5, B2, D0, E6, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN, NO_PIN } \ + } + +// clang-format off + +// Encoder pins. +// Encoder numbering (assuming the default board orientation with encoders on +// the top side): +// 0 - left +// 1 - center (with a longer shaft and a larger knob) +// 2 - right +#define ENCODERS_PAD_A { F1, B0, B3 } +#define ENCODERS_PAD_B { F0, B1, B7 } +#define ENCODER_RESOLUTION 4 + +// Encoder mappings (used for VIA). +#define ENCODERS 3 +#define ENCODERS_CW_KEY { { 22, 0 }, { 18, 0 }, { 20, 0 } } +#define ENCODERS_CCW_KEY { { 23, 0 }, { 19, 0 }, { 21, 0 } } + +// clang-format on + +// RGB LED parameters. +// This PCB uses a single chain of WS2812-compatible addressable RGB LEDs for +// per-key backlight and underglow. +#define RGB_DI_PIN F7 +#define RGBLED_NUM 27 +#define RGBLIGHT_LIMIT_VAL 150 + +// RGB Lighting configuration. This mode is used by the vendor firmware, and +// can be chosen if the full RGB Matrix support is not desired for some reason. +#ifdef RGBLIGHT_ENABLE +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_SLEEP +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_SNAKE +# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +# define RGBLIGHT_EFFECT_RGB_TEST +# define RGBLIGHT_EFFECT_ALTERNATING +#endif + +// RGB Matrix configuration. +#ifdef RGB_MATRIX_ENABLE +# define DRIVER_LED_TOTAL RGBLED_NUM +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS RGBLIGHT_LIMIT_VAL + +# define RGB_MATRIX_CENTER \ + { 35, 35 } + +# define RGB_DISABLE_WHEN_USB_SUSPENDED + +// This option is required for the TYPING_HEATMAP and DIGITAL_RAIN effects, +// both of which are disabled below, so the common support for those effects is +// disabled too. +# undef RGB_MATRIX_FRAMEBUFFER_EFFECTS + +// This option is required for reactive effects; disabling this option will +// implicitly disable all of them. +# define RGB_MATRIX_KEYPRESSES + +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +// The PIXEL_FRACTAL effect does not work properly when the matrix layout is +// different from the physical layout; it also has problems when underglow +// LEDs are present, or when multiple LEDs are associated with the same key. +# undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL + +// Framebuffer effects; can be enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS +// is defined. Both of these effects currently don't work properly when the +// key matrix does not match the physical layout, so they are disabled. +# undef ENABLE_RGB_MATRIX_TYPING_HEATMAP +# undef ENABLE_RGB_MATRIX_DIGITAL_RAIN + +// Reactive effects; can be enabled only if at least one of +// RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined. +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + +#endif + +// Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed. +#define DEBOUNCE 5 diff --git a/keyboards/winry/winry315/info.json b/keyboards/winry/winry315/info.json new file mode 100644 index 0000000000..6410c6222f --- /dev/null +++ b/keyboards/winry/winry315/info.json @@ -0,0 +1,104 @@ +{ + "manufacturer": "Winry", + "keyboard_name": "Winry315", + "maintainer": "sigprof", + "url": "", + "usb": { + "device_version": "0.0.1", + "pid": "0x0315", + "vid": "0xF1F1" + }, + "layout_aliases": { + "LAYOUT_all": "LAYOUT_top" + }, + "layouts": { + "LAYOUT_top": { + "layout": [ + { "label": "E0", "x": 0.5, "y": 0.25 }, + { "label": "E1", "x": 1.75, "y": 0, "h": 1.5, "w": 1.5 }, + { "label": "E2", "x": 3.5, "y": 0.25 }, + { "label": "0", "x": 0, "y": 1.75 }, + { "label": "1", "x": 1, "y": 1.75 }, + { "label": "2", "x": 2, "y": 1.75 }, + { "label": "3", "x": 3, "y": 1.75 }, + { "label": "4", "x": 4, "y": 1.75 }, + { "label": "5", "x": 0, "y": 2.75 }, + { "label": "6", "x": 1, "y": 2.75 }, + { "label": "7", "x": 2, "y": 2.75 }, + { "label": "8", "x": 3, "y": 2.75 }, + { "label": "9", "x": 4, "y": 2.75 }, + { "label": "10", "x": 0, "y": 3.75 }, + { "label": "11", "x": 1, "y": 3.75 }, + { "label": "12", "x": 2, "y": 3.75 }, + { "label": "13", "x": 3, "y": 3.75 }, + { "label": "14", "x": 4, "y": 3.75 } + ] + }, + "LAYOUT_left": { + "layout": [ + { "label": "E2", "x": 0.25, "y": 0.5 }, + { "label": "4", "x": 1.75, "y": 0 }, + { "label": "9", "x": 2.75, "y": 0 }, + { "label": "14", "x": 3.75, "y": 0 }, + { "label": "3", "x": 1.75, "y": 1 }, + { "label": "8", "x": 2.75, "y": 1 }, + { "label": "13", "x": 3.75, "y": 1 }, + { "label": "E1", "x": 0, "y": 1.75, "h": 1.5, "w": 1.5 }, + { "label": "2", "x": 1.75, "y": 2 }, + { "label": "7", "x": 2.75, "y": 2 }, + { "label": "12", "x": 3.75, "y": 2 }, + { "label": "1", "x": 1.75, "y": 3 }, + { "label": "6", "x": 2.75, "y": 3 }, + { "label": "11", "x": 3.75, "y": 3 }, + { "label": "E0", "x": 0.25, "y": 3.5 }, + { "label": "0", "x": 1.75, "y": 4 }, + { "label": "5", "x": 2.75, "y": 4 }, + { "label": "10", "x": 3.75, "y": 4 } + ] + }, + "LAYOUT_right": { + "layout": [ + { "label": "10", "x": 0, "y": 0 }, + { "label": "5", "x": 1, "y": 0 }, + { "label": "0", "x": 2, "y": 0 }, + { "label": "E0", "x": 3.5, "y": 0.5 }, + { "label": "11", "x": 0, "y": 1 }, + { "label": "6", "x": 1, "y": 1 }, + { "label": "1", "x": 2, "y": 1 }, + { "label": "12", "x": 0, "y": 2 }, + { "label": "7", "x": 1, "y": 2 }, + { "label": "2", "x": 2, "y": 2 }, + { "label": "E1", "x": 3.25, "y": 1.75, "h": 1.5, "w": 1.5 }, + { "label": "13", "x": 0, "y": 3 }, + { "label": "8", "x": 1, "y": 3 }, + { "label": "3", "x": 2, "y": 3 }, + { "label": "14", "x": 0, "y": 4 }, + { "label": "9", "x": 1, "y": 4 }, + { "label": "4", "x": 2, "y": 4 }, + { "label": "E2", "x": 3.5, "y": 3.5 } + ] + }, + "LAYOUT_bottom": { + "layout": [ + { "label": "14", "x": 0, "y": 0 }, + { "label": "13", "x": 1, "y": 0 }, + { "label": "12", "x": 2, "y": 0 }, + { "label": "11", "x": 3, "y": 0 }, + { "label": "10", "x": 4, "y": 0 }, + { "label": "9", "x": 0, "y": 1 }, + { "label": "8", "x": 1, "y": 1 }, + { "label": "7", "x": 2, "y": 1 }, + { "label": "6", "x": 3, "y": 1 }, + { "label": "5", "x": 4, "y": 1 }, + { "label": "4", "x": 0, "y": 2 }, + { "label": "3", "x": 1, "y": 2 }, + { "label": "2", "x": 2, "y": 2 }, + { "label": "1", "x": 3, "y": 2 }, + { "label": "0", "x": 4, "y": 2 }, + { "label": "E2", "x": 0.5, "y": 3.5 }, + { "label": "E1", "x": 1.75, "y": 3.25, "h": 1.5, "w": 1.5 }, + { "label": "E0", "x": 3.5, "y": 3.5 } + ] + } + } +} diff --git a/keyboards/winry/winry315/keymaps/default/keymap.c b/keyboards/winry/winry315/keymaps/default/keymap.c new file mode 100644 index 0000000000..a0bc2706ca --- /dev/null +++ b/keyboards/winry/winry315/keymaps/default/keymap.c @@ -0,0 +1,79 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _RGB, +}; + +// Shorter defines for some QMK keycodes (to keep the keymap aligned) +#define U_LTESC LT(_RGB, KC_ESC) + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // Base + [_BASE] = LAYOUT_top( + KC_HOME, KC_MUTE, KC_MPLY, + KC_1, KC_2, KC_3, KC_4, KC_5, + KC_6, KC_7, KC_8, KC_9, KC_0, + U_LTESC, KC_TAB, KC_SPC, KC_BSPC, KC_ENT + ), + + // RGB configuration + [_RGB] = LAYOUT_top( + RGB_M_P, RGB_M_B, RGB_M_R, + RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, + RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, + KC_TRNS, RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R + ), +}; +// clang-format on + +bool encoder_update_user(uint8_t index, bool clockwise) { + uint8_t layer = get_highest_layer(layer_state | default_layer_state); + + switch (index) { + case 0: + // Left encoder + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + } else { + tap_code(clockwise ? KC_PGDN : KC_PGUP); + } + break; + + case 1: + // Center encoder + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_sat(); + } else { + rgblight_decrease_sat(); + } + } else { + tap_code_delay(clockwise ? KC_VOLU : KC_VOLD, 10); + } + break; + + case 2: + // Right encoder + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + } else { + tap_code_delay(clockwise ? KC_MNXT : KC_MPRV, 10); + } + break; + } + return false; +} diff --git a/keyboards/winry/winry315/keymaps/default/readme.md b/keyboards/winry/winry315/keymaps/default/readme.md new file mode 100644 index 0000000000..685bea5767 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Winry315 diff --git a/keyboards/winry/winry315/keymaps/left_numpad/config.h b/keyboards/winry/winry315/keymaps/left_numpad/config.h new file mode 100644 index 0000000000..acb72b5bb4 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/left_numpad/config.h @@ -0,0 +1,6 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_LEFT diff --git a/keyboards/winry/winry315/keymaps/left_numpad/keymap.c b/keyboards/winry/winry315/keymaps/left_numpad/keymap.c new file mode 100644 index 0000000000..8864b1b45a --- /dev/null +++ b/keyboards/winry/winry315/keymaps/left_numpad/keymap.c @@ -0,0 +1,81 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _RGB, +}; + +// Shorter defines for some QMK keycodes (to keep the keymap aligned) +#define U_LTESC LT(_RGB, KC_ESC) + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_left( + KC_MPLY, U_LTESC, KC_BSPC, KC_PENT, + KC_P7, KC_P8, KC_P9, + KC_MUTE, KC_P4, KC_P5, KC_P6, + KC_P1, KC_P2, KC_P3, + KC_HOME, KC_P0, KC_P0, KC_PDOT + ), + + /* RGB configuration */ + [_RGB] = LAYOUT_left( + RGB_M_R, KC_TRNS, RGB_SPD, RGB_SPI, + RGB_TOG, RGB_HUD, RGB_HUI, + RGB_M_B, RGB_M_P, RGB_SAD, RGB_SAI, + KC_NO, RGB_VAD, RGB_VAI, + RGB_M_P, KC_NLCK, RGB_RMOD,RGB_MOD + ), +}; +// clang-format on + +bool encoder_update_user(uint8_t index, bool clockwise) { + uint8_t layer = get_highest_layer(layer_state | default_layer_state); + + switch (index) { + case 0: + // Bottom encoder (left in the default orientation) + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + } else { + tap_code(clockwise ? KC_PGDN : KC_PGUP); + } + break; + + case 1: + // Center encoder + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_sat(); + } else { + rgblight_decrease_sat(); + } + } else { + tap_code_delay(clockwise ? KC_VOLU : KC_VOLD, 10); + } + break; + + case 2: + // Top encoder (right in the default orientation) + if (layer == _RGB) { + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + } else { + tap_code_delay(clockwise ? KC_MNXT : KC_MPRV, 10); + } + break; + } + return false; +} diff --git a/keyboards/winry/winry315/keymaps/left_numpad/readme.md b/keyboards/winry/winry315/keymaps/left_numpad/readme.md new file mode 100644 index 0000000000..9562c2fc19 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/left_numpad/readme.md @@ -0,0 +1,3 @@ +# The “Left Numpad” keymap for Winry315 + +This is a keymap example for the Winry315 board in the “left” orientation (the board is rotated so that the encoders are on the left side, and the keys are in 5 rows of 3 keys). The `LAYOUT_left` macro is used for this orientation, and `WINRY315_DEFAULT_ORIENTATION` is redefined in `config.h` to change the behavior of RGB Matrix effects. diff --git a/keyboards/winry/winry315/keymaps/via/config.h b/keyboards/winry/winry315/keymaps/via/config.h new file mode 100644 index 0000000000..5fc0e02531 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/via/config.h @@ -0,0 +1,15 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 8 + +// Enable a limited form of RGB Matrix support in VIA (requires redefining the +// effect list in the VIA JSON, which then becomes not 100% compatible with the +// RGBLIGHT firmwares). +#define VIA_QMK_RGBLIGHT_ENABLE + +// Enable the workaround for the speed parameter mismatch between RGBLIGHT and +// RGB Matrix, so that the speed slider in VIA behaves in a more useful way. +#define VIA_CUSTOM_LIGHTING_ENABLE diff --git a/keyboards/winry/winry315/keymaps/via/encoder_actions.c b/keyboards/winry/winry315/keymaps/via/encoder_actions.c new file mode 100644 index 0000000000..96dfe74bca --- /dev/null +++ b/keyboards/winry/winry315/keymaps/via/encoder_actions.c @@ -0,0 +1,85 @@ +/* Copyright 2020 Neil Brian Ramirez + * Copyright 2021 drashna jael're (@drashna) + * Copyright 2022 Sergey Vlasov (@sigprof) + * + * 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 3 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 . + */ + +#include "encoder_actions.h" + +#if defined(VIA_ENABLE) && defined(ENCODER_ENABLE) + +# ifndef ENCODER_TAP_DURATION_MS +# define ENCODER_TAP_DURATION_MS 10 +# endif + +# define ENCODER_STATE_CW 0x01 +# define ENCODER_STATE_CCW 0x02 + +# ifdef ENCODERS +static uint8_t encoder_state[ENCODERS] = {0}; +static uint16_t encoder_timer[ENCODERS] = {0}; +static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY; +static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY; + +static void exec_encoder_action(uint8_t index, bool clockwise, bool pressed) { + // clang-format off + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = pressed, + .time = (timer_read() | 1) + }; + // clang-format on + action_exec(encoder_event); +} +# endif + +void encoder_action_unregister(void) { +# ifdef ENCODERS + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index] && (timer_elapsed(encoder_timer[index]) >= ENCODER_TAP_DURATION_MS)) { + bool clockwise = !!(encoder_state[index] & ENCODER_STATE_CW); + encoder_state[index] = 0; + exec_encoder_action(index, clockwise, false); + } + } +# endif +} + +void encoder_action_register(uint8_t index, bool clockwise) { +# ifdef ENCODERS + if (encoder_state[index]) { + bool was_clockwise = !!(encoder_state[index] & ENCODER_STATE_CW); + encoder_state[index] = 0; + exec_encoder_action(index, was_clockwise, false); + } + encoder_state[index] = clockwise ? ENCODER_STATE_CW : ENCODER_STATE_CCW; + encoder_timer[index] = timer_read(); + exec_encoder_action(index, clockwise, true); +# endif +} + +void matrix_scan_kb(void) { + encoder_action_unregister(); + matrix_scan_user(); +} + +bool encoder_update_kb(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + // don't return user actions, because they are in the keymap + // encoder_update_user(index, clockwise); + return true; +}; + +#endif diff --git a/keyboards/winry/winry315/keymaps/via/encoder_actions.h b/keyboards/winry/winry315/keymaps/via/encoder_actions.h new file mode 100644 index 0000000000..2484af52ae --- /dev/null +++ b/keyboards/winry/winry315/keymaps/via/encoder_actions.h @@ -0,0 +1,21 @@ +/* Copyright 2020 Neil Brian Ramirez + * + * 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 3 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 . + */ + +#include "quantum.h" + +void encoder_action_unregister(void); + +void encoder_action_register(uint8_t index, bool clockwise); diff --git a/keyboards/winry/winry315/keymaps/via/keymap.c b/keyboards/winry/winry315/keymaps/via/keymap.c new file mode 100644 index 0000000000..67598ac337 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/via/keymap.c @@ -0,0 +1,44 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// clang-format off + +#define LAYOUT_via( \ + k17, k15, k16, \ + k23,k22, k19,k18, k21,k20, \ + k00, k01, k02, k03, k04, \ + k05, k06, k07, k08, k09, \ + k10, k11, k12, k13, k14 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k20, k21, k22, k23 } \ +} + +#define U_LTESC LT(1, KC_ESC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_via( + KC_HOME, KC_MUTE, KC_MPLY, + KC_PGUP, KC_PGDN, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, + KC_1, KC_2, KC_3, KC_4, KC_5, + KC_6, KC_7, KC_8, KC_9, KC_0, + U_LTESC, KC_TAB, KC_SPC, KC_BSPC, KC_ENT + ), + [1] = LAYOUT_via( + RGB_M_P, RGB_M_B, RGB_M_R, + RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, + RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, + RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, + KC_TRNS, RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R + ), + [2 ... 7] = LAYOUT_via( + 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 + ), +}; + +// clang-format on diff --git a/keyboards/winry/winry315/keymaps/via/rules.mk b/keyboards/winry/winry315/keymaps/via/rules.mk new file mode 100644 index 0000000000..6098ef3ad8 --- /dev/null +++ b/keyboards/winry/winry315/keymaps/via/rules.mk @@ -0,0 +1,4 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes + +SRC += encoder_actions.c diff --git a/keyboards/winry/winry315/readme.md b/keyboards/winry/winry315/readme.md new file mode 100644 index 0000000000..099e6b42b4 --- /dev/null +++ b/keyboards/winry/winry315/readme.md @@ -0,0 +1,45 @@ +# Winry315 + +![Winry315](https://i.imgur.com/nWE5mbXh.jpeg) + +Winry315 is a macropad with 3 rotary encoders and 15 keys (arranged as 3 rows of 5 keys). + +This board may also be known as “YD3xn15mx”, “YD315” or “YD 3x15m”. Boards sold by the [SpiderIsland shop on AliExpress](https://www.aliexpress.com/store/5241107) may have “DEBROGLIE” on the bottom side of the case. + +More photos can be found [in this Imgur album](https://imgur.com/a/0xf9pju). + +* Keyboard Maintainer: [Sergey Vlasov](https://github.com/sigprof) +* Hardware Supported: Winry315 PCB +* Hardware Availability: [Taobao](https://world.taobao.com/item/657924681898.htm), [AliExpress](https://www.aliexpress.com/item/1005003500083583.html) + +Make example for this keyboard (after setting up your build environment): + + make winry/winry315:default + +Flashing example for this keyboard: + + make winry/winry315:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the top left key (not the encoder) and plug in the keyboard. This apparently also works with the vendor VIA firmware. + * Note that the bootmagic key does not change with the board orientation configured using `WINRY315_DEFAULT_ORIENTATION` — the “top left” key position in the default orientation (encoders on the top side) is always used. +* **Physical reset button**: Briefly press the button on the back of the PCB (the acrylic bottom cover should have a hole to access that button). +* **Keycode in layout**: Press the key mapped to `RESET` if it is available (the default keymap does not have that keycode assigned to any key, but you can use that keycode in your custom keymap if you want to have easier access to the bootloader). + +## Orientation + +Although the normal orientation of this macropad is with the encoders on the “top” side (away from the user), you may prefer using it in a sideways orientation (with the encoders on the left or right side). There are extra layout macros (`LAYOUT_left`, `LAYOUT_right` and even `LAYOUT_bottom` for completeness) which you can use in the keymap; however, just using one of those macros won't change the behavior of RGB Matrix effects. If you want to change the orientation of various RGB Matrix effects too, you can specify the desired orientation in the `config.h` file for your custom keymap by using one of the following defines: + + #define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_TOP + #define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_LEFT + #define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_RIGHT + #define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_BOTTOM + +The VIA firmware changes the orientation for RGB Matrix effects automatically when the “Encoder Side” layout option is changed. + +Note that stems of MX switches are not symmetrical with respect to 90° rotation, so you may have some difficulties when putting the keycaps on switches if you choose one of sideways orientations. diff --git a/keyboards/winry/winry315/rules.mk b/keyboards/winry/winry315/rules.mk new file mode 100644 index 0000000000..c10a9d570a --- /dev/null +++ b/keyboards/winry/winry315/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 diff --git a/keyboards/winry/winry315/winry315.c b/keyboards/winry/winry315/winry315.c new file mode 100644 index 0000000000..c741ffeb74 --- /dev/null +++ b/keyboards/winry/winry315/winry315.c @@ -0,0 +1,262 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "winry315.h" + +#include "via.h" + +#if !defined(WINRY315_DEFAULT_ORIENTATION) +# define WINRY315_DEFAULT_ORIENTATION WINRY315_ORIENTATION_TOP +#endif + +#if !defined(VIA_ENABLE) && defined(ENCODER_ENABLE) +# ifndef MEDIA_KEY_DELAY +# define MEDIA_KEY_DELAY 10 +# endif +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { + return false; + } + if (index == 0) { + // Left encoder (assuming the default "top" orientation) + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } else if (index == 1) { + // Center encoder + if (clockwise) { + tap_code_delay(KC_VOLU, MEDIA_KEY_DELAY); + } else { + tap_code_delay(KC_VOLD, MEDIA_KEY_DELAY); + } + } else if (index == 2) { + // Right encoder + if (clockwise) { + tap_code_delay(KC_MNXT, MEDIA_KEY_DELAY); + } else { + tap_code_delay(KC_MPRV, MEDIA_KEY_DELAY); + } + } + return true; +} +#endif // !defined(VIA_ENABLE) && defined(ENCODER_ENABLE) + +#if defined(RGB_MATRIX_ENABLE) + +// LED mapping (assuming the default "top" orientation): +// 0 - right encoder, top right +// 1 - right encoder, top left +// 2 - center encoder, top right +// 3 - center encoder, top left +// 4 - left encoder, top right +// 5 - left encoder, top left +// 6 - row 0, column 0 +// 7 - row 1, column 0 +// 8 - row 2, column 0 +// 9 - row 2, column 1 +// 10 - row 1, column 1 +// 11 - row 0, column 1 +// 12 - row 0, column 2 +// 13 - row 1, column 2 +// 14 - row 2, column 2 +// 15 - row 2, column 3 +// 16 - row 1, column 3 +// 17 - row 0, column 3 +// 18 - row 0, column 4 +// 19 - row 1, column 4 +// 20 - row 2, column 4 +// 21 - underglow, right bottom +// 22 - underglow, left bottom +// 23 - underglow, left middle +// 24 - underglow, left top +// 25 - underglow, right top +// 26 - underglow, right middle + +# define X_MM_MIN (-42) +# define X_MM_MAX 42 +# define Y_MM_MIN (-40) // actually -35, but adjusted to get height = width +# define Y_MM_MAX 44 // actually 40, but adjusted to get height = width +# define WIDTH_MM (X_MM_MAX - X_MM_MIN) +# define HEIGHT_MM (Y_MM_MAX - Y_MM_MIN) +# define WIDTH_UNITS (35 * 2) // needs to match RGB_MATRIX_CENTER +# define HEIGHT_UNITS (35 * 2) // needs to match RGB_MATRIX_CENTER + +// Convert the LED physical coordinates from millimeters with the origin at the +// PCB center to the form expected by the RGB Matrix code. +# define LED(x_mm, y_mm) \ + { ((x_mm - X_MM_MIN) * WIDTH_UNITS + WIDTH_MM / 2) / WIDTH_MM, ((Y_MM_MAX - y_mm) * HEIGHT_UNITS + HEIGHT_MM / 2) / HEIGHT_MM } + +// clang-format off +static const led_config_t PROGMEM initial_led_config = { + { + { 6, 11, 12, 17, 18, 7, 10, 13, 16, 19, 8, 9, 14, 15, 20, 2, 0, 4, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } + }, + { + LED( 35, 36), + LED( 21, 36), + LED( 8, 34), + LED(-8, 34), + LED(-21, 36), + LED(-35, 36), + LED(-38, 5), + LED(-38, -14), + LED(-38, -33), + LED(-19, -33), + LED(-19, -14), + LED(-19, 5), + LED( 0, 5), + LED( 0, -14), + LED( 0, -33), + LED( 19, -33), + LED( 19, -14), + LED( 19, 5), + LED( 38, 5), + LED( 38, -14), + LED( 38, -33), + LED( 28, -35), + LED(-28, -35), + LED(-37, -9), + LED(-42, 40), + LED( 42, 40), + LED( 37, -9) + }, + { + 1, 1, 1, 1, 1, 1, // encoders (colored as modifiers) + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, // regular keys + 2, 2, 2, 2, 2, 2 // underglow + } +}; +// clang-format on + +led_config_t g_led_config; + +void keyboard_pre_init_kb(void) { + // To be safe against any possible changes to rgb_matrix_init(), + // g_led_config should be initialized before rgb_matrix_init() is called; + // matrix_init_kb() would be too late, so keyboard_pre_init_kb() is used. + memcpy_P(&g_led_config, &initial_led_config, sizeof(g_led_config)); + winry315_set_orientation(WINRY315_DEFAULT_ORIENTATION); + + keyboard_pre_init_user(); +} + +// Encoders have two associated LEDs on this board; supporting more than one +// LED per key requires defining rgb_matrix_map_row_column_to_led_kb() to +// report any extra LEDs. +uint8_t rgb_matrix_map_row_column_to_led_kb(uint8_t row, uint8_t column, uint8_t *led_i) { + if (row == 0) { + switch (column) { + case 15: // center encoder + led_i[0] = 3; + return 1; + + case 16: // right encoder + led_i[0] = 1; + return 1; + + case 17: // left encoder + led_i[0] = 5; + return 1; + } + } + return 0; +} + +# if defined(VIA_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) + +// VIA supports only 4 discrete values for effect speed; map these to some +// useful speed values for RGB Matrix. +enum speed_values { + RGBLIGHT_SPEED_0 = UINT8_MAX / 16, // not 0 to avoid really slow effects + RGBLIGHT_SPEED_1 = UINT8_MAX / 4, + RGBLIGHT_SPEED_2 = UINT8_MAX / 2, // matches the default value + RGBLIGHT_SPEED_3 = UINT8_MAX / 4 * 3, // UINT8_MAX is really fast +}; + +static uint8_t speed_from_rgblight(uint8_t rgblight_speed) { + switch (rgblight_speed) { + case 0: + return RGBLIGHT_SPEED_0; + case 1: + return RGBLIGHT_SPEED_1; + case 2: + default: + return RGBLIGHT_SPEED_2; + case 3: + return RGBLIGHT_SPEED_3; + } +} + +static uint8_t speed_to_rgblight(uint8_t rgb_matrix_speed) { + if (rgb_matrix_speed < ((RGBLIGHT_SPEED_0 + RGBLIGHT_SPEED_1) / 2)) { + return 0; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_1 + RGBLIGHT_SPEED_2) / 2)) { + return 1; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_2 + RGBLIGHT_SPEED_3) / 2)) { + return 2; + } else { + return 3; + } +} + +void raw_hid_receive_kb(uint8_t *data, uint8_t length) { + switch (data[0]) { + case id_lighting_get_value: + if (data[1] == id_qmk_rgblight_effect_speed) { + data[2] = speed_to_rgblight(rgb_matrix_get_speed()); + } + break; + case id_lighting_set_value: + if (data[1] == id_qmk_rgblight_effect_speed) { + rgb_matrix_set_speed_noeeprom(speed_from_rgblight(data[2])); + } + break; + } +} + +# endif // defined(VIA_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) + +#endif // defined(RGB_MATRIX_ENABLE) + +void winry315_set_orientation(uint8_t orientation) { + (void)orientation; +#if defined(RGB_MATRIX_ENABLE) + for (uint8_t i = 0; i < DRIVER_LED_TOTAL; ++i) { + led_point_t * dst_point = &g_led_config.point[i]; + const led_point_t *src_point = &initial_led_config.point[i]; + uint8_t x = pgm_read_byte(&src_point->x); + uint8_t y = pgm_read_byte(&src_point->y); + + switch (orientation) { + case WINRY315_ORIENTATION_TOP: + default: + dst_point->x = x; + dst_point->y = y; + break; + + case WINRY315_ORIENTATION_LEFT: + dst_point->x = y; + dst_point->y = WIDTH_UNITS - x; + break; + + case WINRY315_ORIENTATION_RIGHT: + dst_point->x = HEIGHT_UNITS - y; + dst_point->y = x; + break; + + case WINRY315_ORIENTATION_BOTTOM: + dst_point->x = WIDTH_UNITS - x; + dst_point->y = HEIGHT_UNITS - y; + break; + } + } +#endif // defined(RGB_MATRIX_ENABLE) +} + +#if defined(VIA_ENABLE) +void via_set_layout_options_kb(uint32_t value) { + winry315_set_orientation(value & 0x03); +} +#endif // defined(VIA_ENABLE) diff --git a/keyboards/winry/winry315/winry315.h b/keyboards/winry/winry315/winry315.h new file mode 100644 index 0000000000..4796089003 --- /dev/null +++ b/keyboards/winry/winry315/winry315.h @@ -0,0 +1,86 @@ +// Copyright 2022 Sergey Vlasov (@sigprof) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +// Supported orientations of the board. The enum values must match the layout +// option values used by VIA. +enum winry315_orientation { + WINRY315_ORIENTATION_TOP, // Encoders at the top side (default) + WINRY315_ORIENTATION_LEFT, // Encoders at the left side + WINRY315_ORIENTATION_RIGHT, // Encoders at the right side + WINRY315_ORIENTATION_BOTTOM // Encoders at the bottom side +}; + +// Set the orientation of the board (changes the RGB Matrix effect behavior to +// match the new orientation). +// +// This function is intended to be used in the `via` keymap, where the board +// orientation is configured dynamically using a VIA layout option. If you are +// making a custom keymap for one specific orientation, it is better to set the +// orientation in config.h (e.g., `#define WINRY315_DEFAULT_ORIENTATION +// WINRY315_ORIENTATION_LEFT`) instead of adding custom code that calls this +// function. +void winry315_set_orientation(uint8_t orientation); + +// clang-format off + +// This is a shortcut to help you visually see your layout. +// +// The first section contains all of the arguments representing the physical +// layout of the board and position of the keys. +// +// The second converts the arguments into a two-dimensional array which +// represents the switch matrix. +// +// For this board multiple layouts are defined to make it easier to use the +// board in a sideways orientation; the actual PCB supports only a single +// layout (LAYOUT_top). + +// Default layout: encoders at the top side (WINRY315_ORIENTATION_TOP). +#define LAYOUT_top( \ + k17, k15, k16, \ + k00, k01, k02, k03, k04, \ + k05, k06, k07, k08, k09, \ + k10, k11, k12, k13, k14 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, k16, k17, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ +} + +// Encoders at the left side (WINRY315_ORIENTATION_LEFT). +#define LAYOUT_left( \ + k16, k04, k09, k14, \ + k03, k08, k13, \ + k15, k02, k07, k12, \ + k01, k06, k11, \ + k17, k00, k05, k10 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, k16, k17, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ +} + +// Encoders at the right side (WINRY315_ORIENTATION_RIGHT). +#define LAYOUT_right( \ + k10, k05, k00, k17, \ + k11, k06, k01, \ + k12, k07, k02, k15, \ + k13, k08, k03, \ + k14, k09, k04, k16 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, k16, k17, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ +} + +// Encoders at the bottom side (WINRY315_ORIENTATION_BOTTOM). +#define LAYOUT_bottom( \ + k14, k13, k12, k11, k10, \ + k09, k08, k07, k06, k05, \ + k04, k03, k02, k01, k00, \ + k16, k15, k17 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, k15, k16, k17, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO } \ +} + +#define LAYOUT_all LAYOUT_top + +// clang-format on From eb35f58a6ec9068329a39e3ef8449568e90931e9 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 8 Mar 2022 11:45:54 +0800 Subject: [PATCH 046/699] [Keyboard] Idobao ID87 v2 (#15875) Co-authored-by: Drashna Jaelre --- keyboards/idobao/id87/v2/config.h | 163 ++++++++++++++++++ keyboards/idobao/id87/v2/info.json | 98 +++++++++++ .../idobao/id87/v2/keymaps/default/keymap.c | 35 ++++ .../idobao/id87/v2/keymaps/default/readme.md | 1 + keyboards/idobao/id87/v2/keymaps/via/keymap.c | 50 ++++++ keyboards/idobao/id87/v2/keymaps/via/rules.mk | 2 + keyboards/idobao/id87/v2/readme.md | 27 +++ keyboards/idobao/id87/v2/rules.mk | 22 +++ keyboards/idobao/id87/v2/v2.c | 45 +++++ keyboards/idobao/id87/v2/v2.h | 40 +++++ 10 files changed, 483 insertions(+) create mode 100644 keyboards/idobao/id87/v2/config.h create mode 100644 keyboards/idobao/id87/v2/info.json create mode 100644 keyboards/idobao/id87/v2/keymaps/default/keymap.c create mode 100644 keyboards/idobao/id87/v2/keymaps/default/readme.md create mode 100644 keyboards/idobao/id87/v2/keymaps/via/keymap.c create mode 100644 keyboards/idobao/id87/v2/keymaps/via/rules.mk create mode 100644 keyboards/idobao/id87/v2/readme.md create mode 100644 keyboards/idobao/id87/v2/rules.mk create mode 100644 keyboards/idobao/id87/v2/v2.c create mode 100644 keyboards/idobao/id87/v2/v2.h diff --git a/keyboards/idobao/id87/v2/config.h b/keyboards/idobao/id87/v2/config.h new file mode 100644 index 0000000000..8a2c58aa2d --- /dev/null +++ b/keyboards/idobao/id87/v2/config.h @@ -0,0 +1,163 @@ +// Copyright 2022 peepeetee (@peepeetee) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6964 // "id" +#define PRODUCT_ID 0x0087 +#define DEVICE_VER 0x0002 +#define MANUFACTURER IDOBAO +#define PRODUCT ID87 + +/* key matrix size */ +#define MATRIX_ROWS 11 +#define MATRIX_COLS 9 + +/* + * 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 { E6, B0, B1, B2, B3, B7, F7, F6, F5, F4, F1 } + +#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, D4, D6, D7, B4 } +//#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION ROW2COL + +#define LED_CAPS_LOCK_PIN C7 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +#define RGB_DI_PIN E2 +# define DRIVER_LED_TOTAL 103 /* 16 Bottom 87 top*/ +#ifdef RGB_DI_PIN +# define RGBLED_NUM 103 /* 16 Bottom 87 top*/ +# define RGB_MATRIX_KEYPRESSES // reacts to keypresses +#endif +#ifdef RGB_MATRIX_ENABLE +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // Limit to vendor-recommended value +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +# define RGB_MATRIX_FRAMEBUFFER_EFFECTS +# define RGB_MATRIX_KEYPRESSES +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/idobao/id87/v2/info.json b/keyboards/idobao/id87/v2/info.json new file mode 100644 index 0000000000..e4e252aa64 --- /dev/null +++ b/keyboards/idobao/id87/v2/info.json @@ -0,0 +1,98 @@ +{ + "keyboard_name": "ID87", + "url": "https://www.idobao.net/products/idobao-id87-80-hot-swappable-mechanical-keyboard-kit", + "maintainer": "qmk", + "layouts": { + "LAYOUT_tkl_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":2, "y":0}, + {"label":"F2", "x":3, "y":0}, + {"label":"F3", "x":4, "y":0}, + {"label":"F4", "x":5, "y":0}, + {"label":"F5", "x":6.5, "y":0}, + {"label":"F6", "x":7.5, "y":0}, + {"label":"F7", "x":8.5, "y":0}, + {"label":"F8", "x":9.5, "y":0}, + {"label":"F9", "x":11, "y":0}, + {"label":"F10", "x":12, "y":0}, + {"label":"F11", "x":13, "y":0}, + {"label":"F12", "x":14, "y":0}, + {"label":"PrtSc", "x":15.25, "y":0}, + {"label":"Scroll Lock", "x":16.25, "y":0}, + {"label":"Pause", "x":17.25, "y":0}, + {"label":"~", "x":0, "y":1.5}, + {"label":"1", "x":1, "y":1.5}, + {"label":"2", "x":2, "y":1.5}, + {"label":"3", "x":3, "y":1.5}, + {"label":"4", "x":4, "y":1.5}, + {"label":"5", "x":5, "y":1.5}, + {"label":"6", "x":6, "y":1.5}, + {"label":"7", "x":7, "y":1.5}, + {"label":"8", "x":8, "y":1.5}, + {"label":"9", "x":9, "y":1.5}, + {"label":"0", "x":10, "y":1.5}, + {"label":"-", "x":11, "y":1.5}, + {"label":"=", "x":12, "y":1.5}, + {"label":"Backspace", "x":13, "y":1.5, "w":2}, + {"label":"Insert", "x":15.25, "y":1.5}, + {"label":"Home", "x":16.25, "y":1.5}, + {"label":"PgUp", "x":17.25, "y":1.5}, + {"label":"Tab", "x":0, "y":2.5, "w":1.5}, + {"label":"Q", "x":1.5, "y":2.5}, + {"label":"W", "x":2.5, "y":2.5}, + {"label":"E", "x":3.5, "y":2.5}, + {"label":"R", "x":4.5, "y":2.5}, + {"label":"T", "x":5.5, "y":2.5}, + {"label":"Y", "x":6.5, "y":2.5}, + {"label":"U", "x":7.5, "y":2.5}, + {"label":"I", "x":8.5, "y":2.5}, + {"label":"O", "x":9.5, "y":2.5}, + {"label":"P", "x":10.5, "y":2.5}, + {"label":"[", "x":11.5, "y":2.5}, + {"label":"]", "x":12.5, "y":2.5}, + {"label":"\\", "x":13.5, "y":2.5, "w":1.5}, + {"label":"Delete", "x":15.25, "y":2.5}, + {"label":"End", "x":16.25, "y":2.5}, + {"label":"PgDn", "x":17.25, "y":2.5}, + {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, + {"label":"A", "x":1.75, "y":3.5}, + {"label":"S", "x":2.75, "y":3.5}, + {"label":"D", "x":3.75, "y":3.5}, + {"label":"F", "x":4.75, "y":3.5}, + {"label":"G", "x":5.75, "y":3.5}, + {"label":"H", "x":6.75, "y":3.5}, + {"label":"J", "x":7.75, "y":3.5}, + {"label":"K", "x":8.75, "y":3.5}, + {"label":"L", "x":9.75, "y":3.5}, + {"label":";", "x":10.75, "y":3.5}, + {"label":"'", "x":11.75, "y":3.5}, + {"label":"Enter", "x":12.75, "y":3.5, "w":2.25}, + {"label":"Shift", "x":0, "y":4.5, "w":2.25}, + {"label":"Z", "x":2.25, "y":4.5}, + {"label":"X", "x":3.25, "y":4.5}, + {"label":"C", "x":4.25, "y":4.5}, + {"label":"V", "x":5.25, "y":4.5}, + {"label":"B", "x":6.25, "y":4.5}, + {"label":"N", "x":7.25, "y":4.5}, + {"label":"M", "x":8.25, "y":4.5}, + {"label":",", "x":9.25, "y":4.5}, + {"label":".", "x":10.25, "y":4.5}, + {"label":"/", "x":11.25, "y":4.5}, + {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, + {"label":"Up", "x":16.25, "y":4.5}, + {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5.5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5.5, "w":6.25}, + {"label":"Alt", "x":10, "y":5.5, "w":1.25}, + {"label":"Win", "x":11.25, "y":5.5, "w":1.25}, + {"label":"LT(1, KC_APP)", "x":12.5, "y":5.5, "w":1.25}, + {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25}, + {"label":"Left", "x":15.25, "y":5.5}, + {"label":"Down", "x":16.25, "y":5.5}, + {"label":"Right", "x":17.25, "y":5.5} + ] + } + } +} diff --git a/keyboards/idobao/id87/v2/keymaps/default/keymap.c b/keyboards/idobao/id87/v2/keymaps/default/keymap.c new file mode 100644 index 0000000000..2b07bdb0ec --- /dev/null +++ b/keyboards/idobao/id87/v2/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +/* +Copyright 2020 Tybera +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_tkl_ansi( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_tkl_ansi( + RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, + _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, BL_INC, + _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, RGB_MOD + ), + +}; diff --git a/keyboards/idobao/id87/v2/keymaps/default/readme.md b/keyboards/idobao/id87/v2/keymaps/default/readme.md new file mode 100644 index 0000000000..6054431de4 --- /dev/null +++ b/keyboards/idobao/id87/v2/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for id87 \ No newline at end of file diff --git a/keyboards/idobao/id87/v2/keymaps/via/keymap.c b/keyboards/idobao/id87/v2/keymaps/via/keymap.c new file mode 100644 index 0000000000..534784555c --- /dev/null +++ b/keyboards/idobao/id87/v2/keymaps/via/keymap.c @@ -0,0 +1,50 @@ +/* +Copyright 2020 Tybera +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_tkl_ansi( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_tkl_ansi( + RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, + _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, BL_INC, + _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, RGB_MOD + ), + [2] = LAYOUT_tkl_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_tkl_ansi( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/idobao/id87/v2/keymaps/via/rules.mk b/keyboards/idobao/id87/v2/keymaps/via/rules.mk new file mode 100644 index 0000000000..ca9fed0e6b --- /dev/null +++ b/keyboards/idobao/id87/v2/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +LTO_ENABLE = yes +VIA_ENABLE = yes diff --git a/keyboards/idobao/id87/v2/readme.md b/keyboards/idobao/id87/v2/readme.md new file mode 100644 index 0000000000..06a3f2c08a --- /dev/null +++ b/keyboards/idobao/id87/v2/readme.md @@ -0,0 +1,27 @@ +# ID87 v2 + +![ID87 v2](https://i.imgur.com/woTSycN.jpg) + +A TKL keyboard with hotswap sockets and in switch RGB. + +* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee) +* Hardware Supported: ID87 v2 +* Hardware Availability: [Drop](https://drop.com/buy/idobao-id87-v2-tkl-mechanical-keyboard-kit), [idobao](https://idobao.net/products/idobao-id87-v2-tkl-pcb-mounted-hot-swappable-mechanical-keyboard-kit) + +Make example for this keyboard (after setting up your build environment): + + make idobao/id87/v2:default + +Flashing example for this keyboard: + + make idobao/id87/v2:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/idobao/id87/v2/rules.mk b/keyboards/idobao/id87/v2/rules.mk new file mode 100644 index 0000000000..1d519258e3 --- /dev/null +++ b/keyboards/idobao/id87/v2/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 + +LAYOUTS = tkl_ansi diff --git a/keyboards/idobao/id87/v2/v2.c b/keyboards/idobao/id87/v2/v2.c new file mode 100644 index 0000000000..5bca630ca3 --- /dev/null +++ b/keyboards/idobao/id87/v2/v2.c @@ -0,0 +1,45 @@ +// Copyright 2022 peepeetee (@peepeetee) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "v2.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + // Key Matrix to LED Index + { 102, NO_LED, 101, 100, 99, 98, 97, 96, 95 }, //0 + { 70, 71, 72, 73, 74, 75, 76, 77, 78 }, //1 + { 69, 68, 67, 66, 65, 64, 63, 62, 61 }, //2 + { 40, 41, 42, 43, 44, 45, 46, 47, 48 }, //3 + { 39, NO_LED, 38, 37, 36, 35, 34, 33, 32 }, //4 + { 16, 17, 18, 23, 22, NO_LED, 19, 21, 20 }, //5 + { NO_LED, 87, 88, 90, 91, 92, 89, 93, 94 }, //6 + { 80, 86, 85, 83, NO_LED, 82, 84, 81, 79 }, //7 + { NO_LED, 53, 54, 56, 57, 58, 55, 59, 60 }, //8 + { NO_LED, NO_LED, 27, 52, NO_LED, 51, NO_LED, 50, 49 }, //9 + { NO_LED, 26, 25, NO_LED, 28, 29, 24, 30, 31 } //A +}, { + // LED Index to Physical Position + { 13, 51 },{ 40, 51},{ 73, 51},{ 108, 51},{ 141, 51},{ 174, 51},{ 207, 51}, + { 207, 32}, + { 207, 13},{ 174, 13},{ 141, 13},{ 108, 13},{ 73, 13},{ 40, 13},{ 13, 13}, + { 13, 32}, + +{ 8, 59 }, { 23, 59 }, { 38, 59 }, { 83, 59 }, { 129, 59 }, { 144, 59 }, { 159, 59 }, { 174, 59 }, { 193, 59 }, { 205, 59 }, { 217, 59 }, +{ 205, 49 }, { 165, 49 }, { 142, 49 }, { 130, 49 }, { 118, 49 }, { 106, 49 }, { 94, 49 }, { 82, 49 }, { 70, 49 }, { 58, 49 }, { 46, 49 }, { 34, 49 }, { 14, 49 }, +{ 11, 39 }, { 28, 39 }, { 40, 39 }, { 52, 39 }, { 64, 39 }, { 76, 39 }, { 88, 39 }, { 100, 39 }, { 112, 39 }, { 124, 39 }, { 136, 39 }, { 148, 39 }, { 168, 39 }, +{ 217, 30 }, { 205, 30 }, { 193, 30 }, { 172, 30 }, { 157, 30 }, { 145, 30 }, { 133, 30 }, { 121, 30 }, { 109, 30 }, { 97, 30 }, { 85, 30 }, { 73, 30 }, { 61, 30 }, { 49, 30 }, { 37, 30 }, { 25, 30 }, { 10, 30 }, +{ 7, 20 }, { 19, 20 }, { 31, 20 }, { 43, 20 }, { 55, 20 }, { 67, 20 }, { 79, 20 }, { 91, 20 }, { 103, 20 }, { 115, 20 }, { 127, 20 }, { 139, 20 }, { 151, 20 }, { 169, 20 }, { 193, 20 }, { 205, 20 }, { 217, 20 }, +{ 217, 5 }, { 205, 5 }, { 193, 5 }, { 175, 5 }, { 163, 5 }, { 151, 5 }, { 139, 5 }, { 121, 5 }, { 109, 5 }, { 97, 5 }, { 85, 5 }, { 67, 5 }, { 55, 5 }, { 43, 5 }, { 31, 5 },{ 7, 5 }, +}, { + // LED Index to Flag +2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, + +1,1,1,4,1,1,1,1,1,1,1, +1,1,4,4,4,4,4,4,4,4,4,4,1, +9,4,4,4,4,4,4,4,4,4,4,4,1, +1,1,1,4,4,4,4,4,4,4,4,4,4,4,4,4,1, +4,4,4,4,4,4,4,4,4,4,4,4,4,1,1,1,1, +1,9,1,4,4,4,4,1,1,1,1,4,4,4,4,1 +} }; + +#endif diff --git a/keyboards/idobao/id87/v2/v2.h b/keyboards/idobao/id87/v2/v2.h new file mode 100644 index 0000000000..1a75d95755 --- /dev/null +++ b/keyboards/idobao/id87/v2/v2.h @@ -0,0 +1,40 @@ +/* +Copyright 2020 Tybera +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_tkl_ansi( \ + K00, K02, K03, K04, K05, K06, K07, K08, K68, K67, K65, K64, K63, K66, K62, K61, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K78, K70, K77, K75, K73, K76, K72, K71, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K88, K87, K85, K84, K83, K86, K82, K81, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K98, K97, K95, K93, \ + K40, K42, K43, K44, K45, K46, K47, K48, KA8, KA7, KA5, KA4, K92, \ + K50, K51, K52, K56, K58, K57, K54, K53, KA6, KA2, KA1 \ +) { \ + { K00, KC_NO, K02, K03, K04, K05, K06, K07, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38 }, \ + { K40, KC_NO, K42, K43, K44, K45, K46, K47, K48 }, \ + { K50, K51, K52, K53, K54, KC_NO, K56, K57, K58 }, \ + { KC_NO, K61, K62, K63, K64, K65, K66, K67, K68 }, \ + { K70, K71, K72, K73, KC_NO, K75, K76, K77, K78 }, \ + { KC_NO, K81, K82, K83, K84, K85, K86, K87, K88 }, \ + { KC_NO, KC_NO, K92, K93, KC_NO, K95, KC_NO, K97, K98 }, \ + { KC_NO, KA1, KA2, KC_NO, KA4, KA5, KA6, KA7, KA8 }, \ +} + + From 87c2f97def26e4899d1c48a4428f3026aa914275 Mon Sep 17 00:00:00 2001 From: rookiebwoy <81021475+rookiebwoy@users.noreply.github.com> Date: Tue, 8 Mar 2022 04:59:50 +0100 Subject: [PATCH 047/699] [Keyboard] Add LATE-9 keyboard (#13966) --- keyboards/late9/config.h | 31 +++ keyboards/late9/readme.md | 27 ++ keyboards/late9/rev1/config.h | 38 +++ keyboards/late9/rev1/info.json | 18 ++ keyboards/late9/rev1/keymaps/default/keymap.c | 84 +++++++ .../late9/rev1/keymaps/default/readme.md | 3 + .../late9/rev1/keymaps/multitap/keymap.c | 235 ++++++++++++++++++ .../late9/rev1/keymaps/multitap/readme.md | 3 + .../late9/rev1/keymaps/multitap/rules.mk | 2 + keyboards/late9/rev1/readme.md | 5 + keyboards/late9/rev1/rev1.c | 60 +++++ keyboards/late9/rev1/rev1.h | 59 +++++ keyboards/late9/rev1/rules.mk | 21 ++ keyboards/late9/rules.mk | 1 + 14 files changed, 587 insertions(+) create mode 100644 keyboards/late9/config.h create mode 100644 keyboards/late9/readme.md create mode 100644 keyboards/late9/rev1/config.h create mode 100644 keyboards/late9/rev1/info.json create mode 100644 keyboards/late9/rev1/keymaps/default/keymap.c create mode 100644 keyboards/late9/rev1/keymaps/default/readme.md create mode 100644 keyboards/late9/rev1/keymaps/multitap/keymap.c create mode 100644 keyboards/late9/rev1/keymaps/multitap/readme.md create mode 100644 keyboards/late9/rev1/keymaps/multitap/rules.mk create mode 100644 keyboards/late9/rev1/readme.md create mode 100644 keyboards/late9/rev1/rev1.c create mode 100644 keyboards/late9/rev1/rev1.h create mode 100644 keyboards/late9/rev1/rules.mk create mode 100755 keyboards/late9/rules.mk diff --git a/keyboards/late9/config.h b/keyboards/late9/config.h new file mode 100644 index 0000000000..a4dc07a7c4 --- /dev/null +++ b/keyboards/late9/config.h @@ -0,0 +1,31 @@ +/* +Copyright 2021 rookiebwoy + +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 . +*/ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x3777 +#define MANUFACTURER rookiebwoy +#define PRODUCT LATE-9 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/late9/readme.md b/keyboards/late9/readme.md new file mode 100644 index 0000000000..1d85e788fb --- /dev/null +++ b/keyboards/late9/readme.md @@ -0,0 +1,27 @@ +# LATE-9 + + +The LATE-9 is a multi-tap input keyboard based on mobile phones from the late '90s. LATE-9 is intended as a dev board with 18 buttons and an OLED screen, made by through-hole components only. With this, you can experiment QMK OLED capabilities with very little expense. + +![LATE-9](https://i.imgur.com/QXycTC3h.jpg "LATE-9 first proto") + +See the project repository for gerbers. + +* Keyboard maintainer: [rookiebwoy](https://github.com/rookiebwoy) +* Hardware supported: ProMicro, _Elite-C (not tested)_ +* Project repository: [LATE-9 on github](https://github.com/rookiebwoy/late-9) + +Make example for this keyboard (after setting up your build environment): + + make late9/rev1:default + +Flashing example for this keyboard: + + make late9/rev1:default:flash + + +When asked by the terminal, short with a metal wire the pins on the backside of the board highlighted as `RST` (one is the `RESET` and the other one is `GROUND`) to enter the bootloader and let the OS detects the device. +After installing this firmware you can use Bootmagic to enter the bootloader while plugging in your LATE-9. By default it's the button on the upper-left of the keyboard. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + diff --git a/keyboards/late9/rev1/config.h b/keyboards/late9/rev1/config.h new file mode 100644 index 0000000000..20d1a553cc --- /dev/null +++ b/keyboards/late9/rev1/config.h @@ -0,0 +1,38 @@ +/* +Copyright 2021 rookiebwoy + +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 . +*/ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define DEVICE_VER 0x0010 + +/* Column/Row IO definitions */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 3 +#define MATRIX_ROW_PINS { B4, E6, D7, B3, B2, B6 } +#define MATRIX_COL_PINS { B5, C6, D4 } + +/* Bootmagic - hold down top left button while plugging in to enter bootloader */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + +/* Tap interval for tap dance */ +#define TAPPING_TERM 400 + +/* Oneshot interval */ +#define ONESHOT_TIMEOUT 5000 diff --git a/keyboards/late9/rev1/info.json b/keyboards/late9/rev1/info.json new file mode 100644 index 0000000000..66175c9afa --- /dev/null +++ b/keyboards/late9/rev1/info.json @@ -0,0 +1,18 @@ +{ + "keyboard_name": "LATE-9", + "keyboard_folder": "late9/rev1", + "url": "https://github.com/rookiebwoy/late-9)", + "maintainer": "rookiebwoy", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, + {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, + {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, + {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, + {"x":0, "y":4}, {"x":1, "y":4}, {"x":2, "y":4}, + {"x":0, "y":5}, {"x":1, "y":5}, {"x":2, "y":5} + ] + } + } +} diff --git a/keyboards/late9/rev1/keymaps/default/keymap.c b/keyboards/late9/rev1/keymaps/default/keymap.c new file mode 100644 index 0000000000..bed15eb57e --- /dev/null +++ b/keyboards/late9/rev1/keymaps/default/keymap.c @@ -0,0 +1,84 @@ +/* Copyright 2021 rookiebwoy + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Layers declarations +enum layers { + _BL, + _OL +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap _BL: Base Layer + * ,-----------------------. + * |MO(OP) | ↑ | BSPC | + * | | | | + * |-------|-------|-------| + * | <- | ↓ | -> | + * | | | | + * |-------|-------|-------| + * | 1 | 2 | 3 | + * | | | | + * |-------|-------|-------| + * | 4 | 5 | 6 | + * | | | | + * |-------|-------|-------| + * | 7 | 8 | 9 | + * | | | | + * |-------|-------|-------| + * | 0 | . | = | + * | | | | + * `-----------------------' + */ + [_BL] = LAYOUT( + MO(1), KC_UP, KC_BSPC, + KC_LEFT, KC_DOWN, KC_RIGHT, + KC_P1, KC_P2, KC_P3, + KC_P4, KC_P5, KC_P6, + KC_P7, KC_P8, KC_P9, + KC_P0, KC_PDOT, KC_PEQL + ), + +/* Keymap _OP: Operators Layer + * ,-----------------------. + * |MO(OP) | ↑ | BSPC | + * | | | | + * |-------|-------|-------| + * | <- | ↓ | -> | + * | | | | + * |-------|-------|-------| + * | / | * | - | + * | | | | + * |-------|-------|-------| + * | ( | ) | + | + * | | | | + * |-------|-------|-------| + * | & | % | ^ | + * | | | | + * |-------|-------|-------| + * | | | . | = | + * | | | | + * `-----------------------' + */ + [_OL] = LAYOUT( + MO(1), KC_UP, KC_BSPC, + KC_LEFT, KC_DOWN, KC_RIGHT, + KC_PSLS, KC_PAST, KC_PMNS, + LSFT(KC_9), LSFT(KC_0), KC_PPLS, + LSFT(KC_7), LSFT(KC_5), LSFT(KC_6), + LSFT(KC_BSLS), KC_PDOT, KC_PEQL + ), +}; \ No newline at end of file diff --git a/keyboards/late9/rev1/keymaps/default/readme.md b/keyboards/late9/rev1/keymaps/default/readme.md new file mode 100644 index 0000000000..f78318d7de --- /dev/null +++ b/keyboards/late9/rev1/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# LATE-9 default keymap + +This is a simple 2-layer calculator look-a-like layout. diff --git a/keyboards/late9/rev1/keymaps/multitap/keymap.c b/keyboards/late9/rev1/keymaps/multitap/keymap.c new file mode 100644 index 0000000000..9c32699c42 --- /dev/null +++ b/keyboards/late9/rev1/keymaps/multitap/keymap.c @@ -0,0 +1,235 @@ +/* Copyright 2021 rookiebwoy + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Layers declarations +enum layers { + _BL +}; + +// Tap Dance declarations +enum { + TD_PNCT, + TD_ABC, + TD_DEF, + TD_GHI, + TD_JKL, + TD_MNO, + TD_PQRS, + TD_TUV, + TD_WXYZ, + TD_SPACE, + TD_UPRCS, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* Keymap _BL: Base Layer + * ,-----------------------. + * |ENTER | ↑ | BSPC | + * | | | | + * |-------|-------|-------| + * | <- | ↓ | -> | + * | | | | + * |-------|-------|-------| + * | 1 .,' | 2 | 3 | + * |?!-:;/ | abc | def | + * |-------|-------|-------| + * | 4 | 5 | 6 | + * | ghi | jkl | mno | + * |-------|-------|-------| + * | 7 | 8 | 9 | + * | pqrs | tuv | wxyz | + * |-------|-------|-------| + * | * | 0 | CAPS | + * | | space | | + * `-----------------------' + */ + [_BL] = LAYOUT( + KC_ENT, KC_UP, KC_BSPC, + KC_LEFT, KC_DOWN, KC_RIGHT, + TD(TD_PNCT), TD(TD_ABC), TD(TD_DEF), + TD(TD_GHI), TD(TD_JKL), TD(TD_MNO), + TD(TD_PQRS), TD(TD_TUV), TD(TD_WXYZ), + KC_PAST, TD(TD_SPACE), TD(TD_UPRCS) + ), +}; + +// Tap Dance cycles +void dance_1 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_DOT); + else return tap_code(KC_1); + } else if (state->count == 2) { + tap_code (KC_COMM); + } else if (state->count == 3) { + tap_code(KC_QUOT); + } else if (state->count == 4) { + tap_code16(KC_QUES); + } else if (state->count == 5) { + tap_code16(KC_EXLM); + } else if (state->count == 6) { + tap_code(KC_MINS); + } else if (state->count == 7) { + tap_code16(KC_COLN); + } else if (state->count == 8) { + tap_code(KC_SCLN); + } else if (state->count == 9) { + tap_code(KC_SLSH); + } else { + reset_tap_dance (state); + } +} + +void dance_2 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_A); + else return tap_code(KC_2); + } else if (state->count == 2) { + tap_code (KC_B); + } else if (state->count == 3) { + tap_code(KC_C); + } else { + reset_tap_dance (state); + } +} + +void dance_3 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_D); + else return tap_code(KC_3); + } else if (state->count == 2) { + tap_code (KC_E); + } else if (state->count == 3) { + tap_code(KC_F); + } else { + reset_tap_dance (state); + } +} + +void dance_4 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_G); + else return tap_code(KC_4); + } else if (state->count == 2) { + tap_code (KC_H); + } else if (state->count == 3) { + tap_code(KC_I); + } else { + reset_tap_dance (state); + } +} + +void dance_5 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_J); + else return tap_code(KC_5); + } else if (state->count == 2) { + tap_code (KC_K); + } else if (state->count == 3) { + tap_code(KC_L); + } else { + reset_tap_dance (state); + } +} + +void dance_6 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_M); + else return tap_code(KC_6); + } else if (state->count == 2) { + tap_code (KC_N); + } else if (state->count == 3) { + tap_code(KC_O); + } else { + reset_tap_dance (state); + } +} + +void dance_7 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_P); + else return tap_code(KC_7); + } else if (state->count == 2) { + tap_code (KC_Q); + } else if (state->count == 3) { + tap_code(KC_R); + } else if (state->count == 4) { + tap_code(KC_S); + } else { + reset_tap_dance (state); + } +} + +void dance_8 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_T); + else return tap_code(KC_8); + } else if (state->count == 2) { + tap_code (KC_U); + } else if (state->count == 3) { + tap_code(KC_V); + } else { + reset_tap_dance (state); + } +} + +void dance_9 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_W); + else return tap_code(KC_9); + } else if (state->count == 2) { + tap_code (KC_X); + } else if (state->count == 3) { + tap_code(KC_Y); + } else if (state->count == 4) { + tap_code(KC_Z); + } else { + reset_tap_dance (state); + } +} + +void dance_0 (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return tap_code(KC_SPACE); + else return tap_code(KC_0); + } else { + reset_tap_dance (state); + } +} + +void dance_maiusc (qk_tap_dance_state_t *state, void *user_data) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return set_oneshot_mods(MOD_BIT(KC_LSFT)); + else return tap_code(KC_CAPS); + } else { + reset_tap_dance (state); + } +} + +// Tap Dance actions +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_PNCT] = ACTION_TAP_DANCE_FN (dance_1), + [TD_ABC] = ACTION_TAP_DANCE_FN (dance_2), + [TD_DEF] = ACTION_TAP_DANCE_FN (dance_3), + [TD_GHI] = ACTION_TAP_DANCE_FN (dance_4), + [TD_JKL] = ACTION_TAP_DANCE_FN (dance_5), + [TD_MNO] = ACTION_TAP_DANCE_FN (dance_6), + [TD_PQRS] = ACTION_TAP_DANCE_FN (dance_7), + [TD_TUV] = ACTION_TAP_DANCE_FN (dance_8), + [TD_WXYZ] = ACTION_TAP_DANCE_FN (dance_9), + [TD_SPACE] = ACTION_TAP_DANCE_FN (dance_0), + [TD_UPRCS] = ACTION_TAP_DANCE_FN (dance_maiusc), +}; diff --git a/keyboards/late9/rev1/keymaps/multitap/readme.md b/keyboards/late9/rev1/keymaps/multitap/readme.md new file mode 100644 index 0000000000..2b5136c2b8 --- /dev/null +++ b/keyboards/late9/rev1/keymaps/multitap/readme.md @@ -0,0 +1,3 @@ +# LATE-9 multitap keymap + +This is the intended LATE-9 layout with multitap `ON` and old mobile phone look-a-like layout.. diff --git a/keyboards/late9/rev1/keymaps/multitap/rules.mk b/keyboards/late9/rev1/keymaps/multitap/rules.mk new file mode 100644 index 0000000000..4141c3e7a4 --- /dev/null +++ b/keyboards/late9/rev1/keymaps/multitap/rules.mk @@ -0,0 +1,2 @@ +# Enable Tap Dance feature +TAP_DANCE_ENABLE = yes diff --git a/keyboards/late9/rev1/readme.md b/keyboards/late9/rev1/readme.md new file mode 100644 index 0000000000..d9683222a9 --- /dev/null +++ b/keyboards/late9/rev1/readme.md @@ -0,0 +1,5 @@ +# LATE-9 rev1 + +First (and final untill now) revision of the LATE-9. For in depth look please go to [project repository](https://github.com/rookiebwoy/late-9). + + diff --git a/keyboards/late9/rev1/rev1.c b/keyboards/late9/rev1/rev1.c new file mode 100644 index 0000000000..e79f76cd3b --- /dev/null +++ b/keyboards/late9/rev1/rev1.c @@ -0,0 +1,60 @@ +/* Copyright 2021 rookiebwoy + * + * 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 . + */ +#include "rev1.h" + +// OLED logo +#ifdef OLED_ENABLE +bool oled_task_kb(void) { + if (!oled_task_user()) { return false; } + static const char PROGMEM rb_logo[] = { + // rookiebwoy 128x32px + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf0, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, + 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, + 0xfc, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0xe3, 0xe3, 0xe3, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x1c, + 0x1c, 0x1c, 0xfc, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, + 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x3f, 0x3f, + 0x3f, 0x38, 0x38, 0x38, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x07, 0x07, 0x07, + 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x00, 0x00, 0x00, 0x07, 0x07, 0x07, 0x3f, + 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x3f, 0x3f, + 0x3f, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x3f, 0x3f, 0x3f, 0x38, 0x38, 0x38, + 0x07, 0x07, 0x07, 0x00, 0x00, 0x00, 0x3f, 0x3f, 0x3f, 0x38, 0x38, 0x38, 0x3f, 0x3f, 0x3f, 0x00, + 0x00, 0x00, 0x07, 0x07, 0x07, 0x38, 0x38, 0x38, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x0e, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + oled_write_raw_P(rb_logo, sizeof(rb_logo)); +} + +#endif diff --git a/keyboards/late9/rev1/rev1.h b/keyboards/late9/rev1/rev1.h new file mode 100644 index 0000000000..2e5bb5ec52 --- /dev/null +++ b/keyboards/late9/rev1/rev1.h @@ -0,0 +1,59 @@ +/* Copyright 2021 rookiebwoy + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +/* Matrix layout + * ,--------------. + * | 00 | 01 | 02 | + * |----|----|----| + * | 10 | 11 | 12 | + * |----|----|----| + * | 20 | 21 | 22 | + * |----|----|----| + * | 30 | 31 | 32 | + * |----|----|----| + * | 40 | 41 | 42 | + * |----|----|----| + * | 50 | 51 | 52 | + * `--------------' + */ +#define LAYOUT( \ + k00, k01, k02, \ + k10, k11, k12, \ + k20, k21, k22, \ + k30, k31, k32, \ + k40, k41, k42, \ + k50, k51, k52 \ +) \ +{ \ + {k00, k01, k02}, \ + {k10, k11, k12}, \ + {k20, k21, k22}, \ + {k30, k31, k32}, \ + {k40, k41, k42}, \ + {k50, k51, k52} \ +} diff --git a/keyboards/late9/rev1/rules.mk b/keyboards/late9/rev1/rules.mk new file mode 100644 index 0000000000..26b6991c2f --- /dev/null +++ b/keyboards/late9/rev1/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +OLED_ENABLE = yes +DEBOUNCE_TYPE = sym_eager_pk diff --git a/keyboards/late9/rules.mk b/keyboards/late9/rules.mk new file mode 100755 index 0000000000..51c1b0d2a6 --- /dev/null +++ b/keyboards/late9/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = late9/rev1 From 8f70adc0b6e8c1e7f08f9fd2496385c4053282ee Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Tue, 8 Mar 2022 12:09:54 +0800 Subject: [PATCH 048/699] [Keyboard] Update encoder code for macro3 (#16005) --- keyboards/macro3/config.h | 2 +- keyboards/macro3/keymaps/default/keymap.c | 2 +- keyboards/macro3/macro3.c | 4 ++-- keyboards/macro3/readme.md | 4 ++-- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/macro3/config.h b/keyboards/macro3/config.h index 722cdf319f..7e7b371960 100644 --- a/keyboards/macro3/config.h +++ b/keyboards/macro3/config.h @@ -18,7 +18,7 @@ #define MATRIX_COLS 4 /* key matrix pins */ -#define DIRECT_PINS { \ +#define DIRECT_PINS { \ { D7, C6, D4, D1 }, \ { B1, B4, B5, B3 } \ } diff --git a/keyboards/macro3/keymaps/default/keymap.c b/keyboards/macro3/keymaps/default/keymap.c index 11ebeff023..e866d481df 100644 --- a/keyboards/macro3/keymaps/default/keymap.c +++ b/keyboards/macro3/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( _______, _______, _______, _______, - RESET, _______, _______, _______ + QK_BOOT, _______, _______, _______ ) }; diff --git a/keyboards/macro3/macro3.c b/keyboards/macro3/macro3.c index 90bb982509..0937abfc83 100644 --- a/keyboards/macro3/macro3.c +++ b/keyboards/macro3/macro3.c @@ -10,9 +10,9 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { if (clockwise) { - tap_code(KC_VOLU); + tap_code_delay(KC_VOLU, 10); } else { - tap_code(KC_VOLD); + tap_code_delay(KC_VOLD, 10); } } else if (index == 1) { if (clockwise) { diff --git a/keyboards/macro3/readme.md b/keyboards/macro3/readme.md index 0234741174..40cf927392 100644 --- a/keyboards/macro3/readme.md +++ b/keyboards/macro3/readme.md @@ -6,7 +6,7 @@ Macro3 is a low-profile macro pad with dual encoder support designed by [@davidp ## Keyboard Info -* Keyboard Maintainer: [davidphilipbarr](https://github.com/davidphilipbarr) +* Keyboard Maintainer: [filterpaper](https://github.com/filterpaper), [davidphilipbarr](https://github.com/davidphilipbarr) * Hardware Supported: [Macro3](https://github.com/davidphilipbarr/Macropads/tree/main/macro3) * Hardware Availability: order PCBs with gerber file from the repository @@ -21,6 +21,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to Enter the bootloader in 3 ways: * **Bootmagic reset**: Hold down the top right key and plug in the controller. -* **Keycode in layout**: Press the key mapped to `RESET` if it is configured. +* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is configured. * **Physical reset pins**: Briefly short the RST and GND pins on the microcontroller using tweezers, a paperclip, or any other conductive material. From 0880850b158ca5da4eae28c43849909c01350f0f Mon Sep 17 00:00:00 2001 From: ZiTe Date: Tue, 8 Mar 2022 12:16:35 +0800 Subject: [PATCH 049/699] [Bug] Rename has_mouse_report_changed parameters (#16417) Fixes compilation issues when bluetooth is enabled, due to issues with cpp used by bluetooth code. Co-authored-by: Ryan Co-authored-by: Drashna Jaelre --- docs/feature_pointing_device.md | 6 +++--- docs/ja/feature_pointing_device.md | 4 ++-- quantum/pointing_device.c | 14 +++++++------- quantum/pointing_device.h | 4 ++-- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index 4b39599f8a..23a16b843d 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -245,7 +245,7 @@ The following configuration options are only available when using `SPLIT_POINTIN | `pointing_device_get_report(void)` | Returns the current mouse report (as a `mouse_report_t` data structure). | | `pointing_device_set_report(mouse_report)` | Sets the mouse report to the assigned `mouse_report_t` data structured passed to the function. | | `pointing_device_send(void)` | Sends the current mouse report to the host system. Function can be replaced. | -| `has_mouse_report_changed(old, new)` | Compares the old and new `mouse_report_t` data and returns true only if it has changed. | +| `has_mouse_report_changed(new_report, old_report)` | Compares the old and new `mouse_report_t` data and returns true only if it has changed. | | `pointing_device_adjust_by_defines(mouse_report)` | Applies rotations and invert configurations to a raw mouse report. | @@ -276,14 +276,14 @@ The report_mouse_t (here "mouseReport") has the following properties: To manually manipulate the mouse reports outside of the `pointing_device_task_*` functions, you can use: * `pointing_device_get_report()` - Returns the current report_mouse_t that represents the information sent to the host computer -* `pointing_device_set_report(report_mouse_t newMouseReport)` - Overrides and saves the report_mouse_t to be sent to the host computer +* `pointing_device_set_report(report_mouse_t mouse_report)` - Overrides and saves the report_mouse_t to be sent to the host computer * `pointing_device_send()` - Sends the mouse report to the host and zeroes out the report. When the mouse report is sent, the x, y, v, and h values are set to 0 (this is done in `pointing_device_send()`, which can be overridden to avoid this behavior). This way, button states persist, but movement will only occur once. For further customization, both `pointing_device_init` and `pointing_device_task` can be overridden. Additionally, by default, `pointing_device_send()` will only send a report when the report has actually changed. This prevents it from continuously sending mouse reports, which will keep the host system awake. This behavior can be changed by creating your own `pointing_device_send()` function. -Also, you use the `has_mouse_report_changed(new, old)` function to check to see if the report has changed. +Also, you use the `has_mouse_report_changed(new_report, old_report)` function to check to see if the report has changed. ## Examples diff --git a/docs/ja/feature_pointing_device.md b/docs/ja/feature_pointing_device.md index 69bd86c552..0f472f0ffe 100644 --- a/docs/ja/feature_pointing_device.md +++ b/docs/ja/feature_pointing_device.md @@ -16,7 +16,7 @@ POINTING_DEVICE_ENABLE = yes マウスレポートを操作するために、以下の関数を使うことができます: * `pointing_device_get_report()` - ホストコンピュータに送信された情報を表す現在の report_mouse_t を返します。 -* `pointing_device_set_report(report_mouse_t newMouseReport)` - ホストコンピュータに送信される report_mouse_t を上書き保存します。 +* `pointing_device_set_report(report_mouse_t mouse_report)` - ホストコンピュータに送信される report_mouse_t を上書き保存します。 report_mouse_t (ここでは "mouseReport") が以下のプロパティを持つことを覚えておいてください: @@ -34,7 +34,7 @@ report_mouse_t (ここでは "mouseReport") が以下のプロパティを持つ さらに、デフォルトでは、`pointing_device_send()` はレポートが実際に変更された場合のみレポートを送信します。これにより、マウスレポートが継続的に送信されてホストシステムが起動されたままになることを防ぎます。この動作は、独自の `pointing_device_send()` 関数を作成することで変更できます。 -また、`has_mouse_report_changed(new, old)` 関数を使って、レポートが変更されたかどうかを確認できます。(訳注:独自の `pointing_device_send()` 関数を作成する場合でも、その中で `has_mouse_report_changed(new, old)` 関数でチェックして、デフォルトの `pointing_device_send()` と類似の無駄なレポートの抑制をして、ホストシステムがスリープ状態に入れる余地を残すようにしておくのが良いでしょう。) +また、`has_mouse_report_changed(new_report, old_report)` 関数を使って、レポートが変更されたかどうかを確認できます。(訳注:独自の `pointing_device_send()` 関数を作成する場合でも、その中で `has_mouse_report_changed(new_report, old_report)` 関数でチェックして、デフォルトの `pointing_device_send()` と類似の無駄なレポートの抑制をして、ホストシステムがスリープ状態に入れる余地を残すようにしておくのが良いでしょう。) 以下の例では、カスタムキーを使ってマウスをクリックし垂直および水平方向に127単位スクロールし、リリースされた時にそれを全て元に戻します - なぜならこれは完全に便利な機能だからです。いいですか、以下はひとつの例です: diff --git a/quantum/pointing_device.c b/quantum/pointing_device.c index 9627cab4b8..47a0af45d2 100644 --- a/quantum/pointing_device.c +++ b/quantum/pointing_device.c @@ -73,12 +73,12 @@ extern const pointing_device_driver_t pointing_device_driver; /** * @brief Compares 2 mouse reports for difference and returns result * - * @param[in] new report_mouse_t - * @param[in] old report_mouse_t + * @param[in] new_report report_mouse_t + * @param[in] old_report report_mouse_t * @return bool result */ -__attribute__((weak)) bool has_mouse_report_changed(report_mouse_t new, report_mouse_t old) { - return memcmp(&new, &old, sizeof(new)); +__attribute__((weak)) bool has_mouse_report_changed(report_mouse_t new_report, report_mouse_t old_report) { + return memcmp(&new_report, &old_report, sizeof(new_report)); } /** @@ -292,10 +292,10 @@ report_mouse_t pointing_device_get_report(void) { /** * @brief Sets mouse report used be pointing device task * - * @param[in] new_mouse_report + * @param[in] mouse_report */ -void pointing_device_set_report(report_mouse_t new_mouse_report) { - local_mouse_report = new_mouse_report; +void pointing_device_set_report(report_mouse_t mouse_report) { + local_mouse_report = mouse_report; } /** diff --git a/quantum/pointing_device.h b/quantum/pointing_device.h index 5f3845227a..a6bdbf120c 100644 --- a/quantum/pointing_device.h +++ b/quantum/pointing_device.h @@ -79,8 +79,8 @@ void pointing_device_init(void); void pointing_device_task(void); void pointing_device_send(void); report_mouse_t pointing_device_get_report(void); -void pointing_device_set_report(report_mouse_t newMouseReport); -bool has_mouse_report_changed(report_mouse_t new, report_mouse_t old); +void pointing_device_set_report(report_mouse_t mouse_report); +bool has_mouse_report_changed(report_mouse_t new_report, report_mouse_t old_report); uint16_t pointing_device_get_cpi(void); void pointing_device_set_cpi(uint16_t cpi); From 4493f31f801c0065d62f334d0b986195861fbf87 Mon Sep 17 00:00:00 2001 From: yiancar Date: Tue, 8 Mar 2022 04:18:41 +0000 Subject: [PATCH 050/699] Add HS version of Nebula65b due to different number of per-key-RGB (#16514) Co-authored-by: Drashna Jaelre Co-authored-by: yiancar --- keyboards/spaceholdings/nebula68b/hs/config.h | 19 +++++++++ keyboards/spaceholdings/nebula68b/hs/hs.c | 41 +++++++++++++++++++ keyboards/spaceholdings/nebula68b/hs/rules.mk | 0 keyboards/spaceholdings/nebula68b/nebula68b.c | 2 + 4 files changed, 62 insertions(+) create mode 100755 keyboards/spaceholdings/nebula68b/hs/config.h create mode 100755 keyboards/spaceholdings/nebula68b/hs/hs.c create mode 100644 keyboards/spaceholdings/nebula68b/hs/rules.mk diff --git a/keyboards/spaceholdings/nebula68b/hs/config.h b/keyboards/spaceholdings/nebula68b/hs/config.h new file mode 100755 index 0000000000..ac25a8ef1d --- /dev/null +++ b/keyboards/spaceholdings/nebula68b/hs/config.h @@ -0,0 +1,19 @@ +/* +Copyright 2021 Yiancar + +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 . +*/ + +#undef DRIVER_LED_TOTAL +#define DRIVER_LED_TOTAL 78 diff --git a/keyboards/spaceholdings/nebula68b/hs/hs.c b/keyboards/spaceholdings/nebula68b/hs/hs.c new file mode 100755 index 0000000000..e411f64196 --- /dev/null +++ b/keyboards/spaceholdings/nebula68b/hs/hs.c @@ -0,0 +1,41 @@ +/* Copyright 2021 Yiancar + * + * 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 . + */ + +#include "nebula68b.h" + +#ifdef RGB_MATRIX_ENABLE +// clang-format off +led_config_t g_led_config = { { + { 0, 1, 2, 4, 5, 6, 7, 9, 10, 11, 13, 14, 15, 17, 18 }, + { 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, 24, 23, NO_LED, 21 }, + { 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 22, 49, 19 }, + { 63, NO_LED, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52, 51, 20 }, + { 64, 65, 67, NO_LED, NO_LED, NO_LED, 69, NO_LED, NO_LED, 71, 72, 73, 75, 76, 77 } +}, { + { 6, 10}, { 19, 10}, { 32, 10}, { 39, 11}, { 45, 10}, { 58, 10}, { 71, 10}, { 84, 10}, { 90, 11}, { 97, 10}, {110, 10}, {123, 10}, {130, 11}, {136, 10}, {149, 10}, {162, 10}, + {178, 13}, {182, 10}, {205, 10}, {218, 10}, {218, 23}, {205, 23}, {185, 23}, {169, 23}, {156, 23}, {143, 23}, {130, 23}, {117, 23}, {104, 23}, { 91, 23}, { 78, 23}, + { 65, 23}, { 52, 23}, { 39, 23}, { 26, 23}, { 10, 23}, { 4, 26}, { 17, 29}, { 29, 35}, { 42, 35}, { 55, 35}, { 68, 35}, { 81, 35}, { 94, 35}, {107, 35}, {120, 35}, {133, 35}, + {146, 35}, {159, 35}, {180, 35}, {220, 32}, {205, 48}, {177, 48}, {153, 48}, {140, 48}, {127, 48}, {114, 48}, {101, 48}, { 88, 48}, { 75, 48}, { 62, 48}, { 49, 48}, { 36, 48}, + { 15, 48}, { 8, 61}, { 24, 61}, { 32, 52}, { 41, 61}, { 81, 56}, { 89, 61}, {132, 53}, {138, 61}, {154, 61}, {170, 61}, {179, 53}, {192, 61}, {205, 61}, {218, 61} +}, { + 1, 4, 4, 2, 4, 4, 4, 4, 2, 4, 4, 4, 2, 4, 4, 4, 2, 1, 1, 1, + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 2, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 2, + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 2, 1, 2, 4, 2, 1, 1, 1, 2, 1, 1, 1 +} }; +// clang-format on +#endif diff --git a/keyboards/spaceholdings/nebula68b/hs/rules.mk b/keyboards/spaceholdings/nebula68b/hs/rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/spaceholdings/nebula68b/nebula68b.c b/keyboards/spaceholdings/nebula68b/nebula68b.c index 4842d9be92..4d4f878c6b 100755 --- a/keyboards/spaceholdings/nebula68b/nebula68b.c +++ b/keyboards/spaceholdings/nebula68b/nebula68b.c @@ -17,6 +17,7 @@ #include "nebula68b.h" #include +#ifndef KEYBOARD_spaceholdings_nebula68b_hs #ifdef RGB_MATRIX_ENABLE // clang-format off led_config_t g_led_config = { { @@ -40,6 +41,7 @@ led_config_t g_led_config = { { } }; // clang-format on #endif +#endif #if defined(RGB_MATRIX_ENABLE) && defined(VIA_ENABLE) void raw_hid_receive_kb(uint8_t *data, uint8_t length) { From 996880a1da6960979430a9a5b2a154eee58e1799 Mon Sep 17 00:00:00 2001 From: Ryan Baker <76887060+ryanbaekr@users.noreply.github.com> Date: Mon, 7 Mar 2022 23:19:45 -0500 Subject: [PATCH 051/699] [Keyboard] Add rb69 (#16526) --- keyboards/ryanbaekr/rb69/config.h | 118 ++++++++++++++++++ keyboards/ryanbaekr/rb69/info.json | 10 ++ .../ryanbaekr/rb69/keymaps/default/keymap.c | 34 +++++ .../ryanbaekr/rb69/keymaps/default/readme.md | 1 + keyboards/ryanbaekr/rb69/keymaps/via/keymap.c | 50 ++++++++ keyboards/ryanbaekr/rb69/keymaps/via/rules.mk | 2 + keyboards/ryanbaekr/rb69/rb69.c | 17 +++ keyboards/ryanbaekr/rb69/rb69.h | 35 ++++++ keyboards/ryanbaekr/rb69/readme.md | 15 +++ keyboards/ryanbaekr/rb69/rules.mk | 18 +++ 10 files changed, 300 insertions(+) create mode 100644 keyboards/ryanbaekr/rb69/config.h create mode 100644 keyboards/ryanbaekr/rb69/info.json create mode 100644 keyboards/ryanbaekr/rb69/keymaps/default/keymap.c create mode 100644 keyboards/ryanbaekr/rb69/keymaps/default/readme.md create mode 100644 keyboards/ryanbaekr/rb69/keymaps/via/keymap.c create mode 100644 keyboards/ryanbaekr/rb69/keymaps/via/rules.mk create mode 100644 keyboards/ryanbaekr/rb69/rb69.c create mode 100644 keyboards/ryanbaekr/rb69/rb69.h create mode 100644 keyboards/ryanbaekr/rb69/readme.md create mode 100644 keyboards/ryanbaekr/rb69/rules.mk diff --git a/keyboards/ryanbaekr/rb69/config.h b/keyboards/ryanbaekr/rb69/config.h new file mode 100644 index 0000000000..2112eda1a7 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/config.h @@ -0,0 +1,118 @@ +/* +Copyright 2021 ryanbaekr + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7262 +#define PRODUCT_ID 0x0069 +#define DEVICE_VER 0x0003 +#define MANUFACTURER ryanbaekr +#define PRODUCT rb69 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { D7, C6, D4, D0, D1 } +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, F0, F1, B4, B5, B7, D5, C7, E6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +#define BACKLIGHT_LEVELS 10 + +/* Underglow options */ +#define RGB_DI_PIN B0 +#ifdef RGB_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLED_NUM 14 +#define RGBLED_HUE_STEP 8 +#define RGBLED_SAT_STEP 8 +#define RGBLED_VAL_STEP 8 +#endif + +/* 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/ryanbaekr/rb69/info.json b/keyboards/ryanbaekr/rb69/info.json new file mode 100644 index 0000000000..0377479cf6 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "rb69", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT": { + "layout": [{"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"x":15.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":15.25, "y":3.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":1.5}, {"x":15.25, "y":4.25}, {"x":14, "y":4.5}, {"x":0, "y":5.25, "w":1.5}, {"x":1.5, "y":5.25, "w":1.25}, {"x":2.75, "y":5.25, "w":1.25}, {"x":4, "y":5.25, "w":6.25}, {"x":10.25, "y":5.25, "w":1.25}, {"x":11.5, "y":5.25, "w":1.25}, {"x":13, "y":5.5}, {"x":14, "y":5.5}, {"x":15, "y":5.5}] + } + } +} diff --git a/keyboards/ryanbaekr/rb69/keymaps/default/keymap.c b/keyboards/ryanbaekr/rb69/keymaps/default/keymap.c new file mode 100644 index 0000000000..c3ed407b70 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* Copyright 2021 ryanbaekr + * + * 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 . + */ +#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_GRV, KC_BSLS, KC_HOME, + 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_DEL, KC_END, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, TG(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLCK, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/ryanbaekr/rb69/keymaps/default/readme.md b/keyboards/ryanbaekr/rb69/keymaps/default/readme.md new file mode 100644 index 0000000000..35d623b10e --- /dev/null +++ b/keyboards/ryanbaekr/rb69/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for rb69 diff --git a/keyboards/ryanbaekr/rb69/keymaps/via/keymap.c b/keyboards/ryanbaekr/rb69/keymaps/via/keymap.c new file mode 100644 index 0000000000..eb7ba1aeeb --- /dev/null +++ b/keyboards/ryanbaekr/rb69/keymaps/via/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2021 ryanbaekr + * + * 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 . + */ +#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_GRV, KC_BSLS, KC_HOME, + 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_DEL, KC_END, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, TG(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLCK, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/ryanbaekr/rb69/keymaps/via/rules.mk b/keyboards/ryanbaekr/rb69/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/ryanbaekr/rb69/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/ryanbaekr/rb69/rb69.c b/keyboards/ryanbaekr/rb69/rb69.c new file mode 100644 index 0000000000..68d27ce39a --- /dev/null +++ b/keyboards/ryanbaekr/rb69/rb69.c @@ -0,0 +1,17 @@ +/* Copyright 2021 ryanbaekr + * + * 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 . + */ + +#include "rb69.h" diff --git a/keyboards/ryanbaekr/rb69/rb69.h b/keyboards/ryanbaekr/rb69/rb69.h new file mode 100644 index 0000000000..6ae6e1ac93 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/rb69.h @@ -0,0 +1,35 @@ +/* Copyright 2021 ryanbaekr + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +#define LAYOUT( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2f, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3d, k3e, k3f, \ + k40, k42, k43, k47, k4a, k4c, k4d, k4e, k4f \ +){ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f }, \ + { k10, ___, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f }, \ + { k20, ___, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, ___, k2f }, \ + { ___, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, ___, k3d, k3e, k3f }, \ + { k40, ___, k42, k43, ___, ___, ___, k47, ___, ___, k4a, ___, k4c, k4d, k4e, k4f } \ +} diff --git a/keyboards/ryanbaekr/rb69/readme.md b/keyboards/ryanbaekr/rb69/readme.md new file mode 100644 index 0000000000..d90c973a89 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/readme.md @@ -0,0 +1,15 @@ +# rb69 + +A diy stacked acrylic 65% keyboard. + +* Keyboard Maintainer: [ryanbaekr](https://github.com/ryanbaekr) +* Hardware Supported: rb69 with Elite-C +* Hardware Availability: 2022/03/04 + +Make example for this keyboard (after setting up your build environment): + + make ryanbaekr/rb69:default + +To boot into the bootloader, hold the reset button on the Elite-C on plug in + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/ryanbaekr/rb69/rules.mk b/keyboards/ryanbaekr/rb69/rules.mk new file mode 100644 index 0000000000..ebbb7bc613 --- /dev/null +++ b/keyboards/ryanbaekr/rb69/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 4d2ae22690eec671dc7a45e3adfbab8ee0727fba Mon Sep 17 00:00:00 2001 From: Matthew Dias Date: Mon, 7 Mar 2022 22:23:06 -0600 Subject: [PATCH 052/699] [Keyboard] Add mini winni (#15341) Co-authored-by: Drashna Jaelre Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/winkeys/mini_winni/config.h | 68 +++++++++++++++++++ keyboards/winkeys/mini_winni/info.json | 9 +++ .../mini_winni/keymaps/default/keymap.c | 42 ++++++++++++ .../winkeys/mini_winni/keymaps/via/keymap.c | 42 ++++++++++++ .../winkeys/mini_winni/keymaps/via/rules.mk | 1 + keyboards/winkeys/mini_winni/mini_winni.c | 18 +++++ keyboards/winkeys/mini_winni/mini_winni.h | 27 ++++++++ keyboards/winkeys/mini_winni/readme.md | 22 ++++++ keyboards/winkeys/mini_winni/rules.mk | 18 +++++ 9 files changed, 247 insertions(+) create mode 100644 keyboards/winkeys/mini_winni/config.h create mode 100644 keyboards/winkeys/mini_winni/info.json create mode 100644 keyboards/winkeys/mini_winni/keymaps/default/keymap.c create mode 100644 keyboards/winkeys/mini_winni/keymaps/via/keymap.c create mode 100644 keyboards/winkeys/mini_winni/keymaps/via/rules.mk create mode 100644 keyboards/winkeys/mini_winni/mini_winni.c create mode 100644 keyboards/winkeys/mini_winni/mini_winni.h create mode 100644 keyboards/winkeys/mini_winni/readme.md create mode 100644 keyboards/winkeys/mini_winni/rules.mk diff --git a/keyboards/winkeys/mini_winni/config.h b/keyboards/winkeys/mini_winni/config.h new file mode 100644 index 0000000000..821f5cdc76 --- /dev/null +++ b/keyboards/winkeys/mini_winni/config.h @@ -0,0 +1,68 @@ + +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x574B +#define PRODUCT_ID 0x7770 +#define DEVICE_VER 0x0001 +#define MANUFACTURER WinKeys +#define PRODUCT Mini Winni + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 4 + +/* key matrix pins */ +#define DIRECT_PINS { { F4, F5, B4, D7 }, { F6, F7, B6, B5 } } +#define UNUSED_PINS + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define RGB_DI_PIN E6 +#define RGBLED_NUM 4 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/winkeys/mini_winni/info.json b/keyboards/winkeys/mini_winni/info.json new file mode 100644 index 0000000000..2545073551 --- /dev/null +++ b/keyboards/winkeys/mini_winni/info.json @@ -0,0 +1,9 @@ +{ + "keyboard_name": "Mini Winni", + "maintainer": "Matthew Dias", + "layouts": { + "LAYOUT_all": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}] + } + } +} diff --git a/keyboards/winkeys/mini_winni/keymaps/default/keymap.c b/keyboards/winkeys/mini_winni/keymaps/default/keymap.c new file mode 100644 index 0000000000..5613ca4d89 --- /dev/null +++ b/keyboards/winkeys/mini_winni/keymaps/default/keymap.c @@ -0,0 +1,42 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + KC_F1, KC_F2, KC_F3, KC_F4, + KC_F5, KC_F6, KC_F7, KC_F8 + ), + + [1] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; \ No newline at end of file diff --git a/keyboards/winkeys/mini_winni/keymaps/via/keymap.c b/keyboards/winkeys/mini_winni/keymaps/via/keymap.c new file mode 100644 index 0000000000..5613ca4d89 --- /dev/null +++ b/keyboards/winkeys/mini_winni/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + KC_F1, KC_F2, KC_F3, KC_F4, + KC_F5, KC_F6, KC_F7, KC_F8 + ), + + [1] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; \ No newline at end of file diff --git a/keyboards/winkeys/mini_winni/keymaps/via/rules.mk b/keyboards/winkeys/mini_winni/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/winkeys/mini_winni/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/winkeys/mini_winni/mini_winni.c b/keyboards/winkeys/mini_winni/mini_winni.c new file mode 100644 index 0000000000..35c75c4ad7 --- /dev/null +++ b/keyboards/winkeys/mini_winni/mini_winni.c @@ -0,0 +1,18 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include "mini_winni.h" diff --git a/keyboards/winkeys/mini_winni/mini_winni.h b/keyboards/winkeys/mini_winni/mini_winni.h new file mode 100644 index 0000000000..4d4374761d --- /dev/null +++ b/keyboards/winkeys/mini_winni/mini_winni.h @@ -0,0 +1,27 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "quantum.h" +#define LAYOUT_all( \ + K00, K01, K02, K03, \ + K10, K11, K12, K13 \ +) { \ + { K00, K01, K02, K03 }, \ + { K10, K11, K12, K13 } \ +} diff --git a/keyboards/winkeys/mini_winni/readme.md b/keyboards/winkeys/mini_winni/readme.md new file mode 100644 index 0000000000..e7c43995c0 --- /dev/null +++ b/keyboards/winkeys/mini_winni/readme.md @@ -0,0 +1,22 @@ +# Mini Winni + +A 2x4 Macropad by WinKeys + +- Keyboard Maintainer: [matthewdias](https://github.com/matthewdias) +- Hardware Supported: mini winni PCB + +Make example for this keyboard (after setting up your build environment): + + make winkeys/mini_winni:default + +Flashing example for this keyboard: + + make winkeys/mini_winni:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader: + +- **Physical reset button**: Briefly press the button on the back of the PCB (or short the reset/ground pads, should a tactile button not be installed) diff --git a/keyboards/winkeys/mini_winni/rules.mk b/keyboards/winkeys/mini_winni/rules.mk new file mode 100644 index 0000000000..7b7949afcb --- /dev/null +++ b/keyboards/winkeys/mini_winni/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 403536986d4a4808a02bb0e0a2d0de8ab4551541 Mon Sep 17 00:00:00 2001 From: drewpyun <48503175+drewpyun@users.noreply.github.com> Date: Mon, 7 Mar 2022 23:23:53 -0500 Subject: [PATCH 053/699] [Keyboard] Add Iskar (#16562) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/drewkeys/iskar/config.h | 56 +++ keyboards/drewkeys/iskar/info.json | 383 ++++++++++++++++++ keyboards/drewkeys/iskar/iskar.c | 17 + keyboards/drewkeys/iskar/iskar.h | 155 +++++++ .../drewkeys/iskar/keymaps/default/keymap.c | 33 ++ .../drewkeys/iskar/keymaps/default/readme.md | 1 + keyboards/drewkeys/iskar/readme.md | 24 ++ keyboards/drewkeys/iskar/rules.mk | 19 + 8 files changed, 688 insertions(+) create mode 100644 keyboards/drewkeys/iskar/config.h create mode 100644 keyboards/drewkeys/iskar/info.json create mode 100644 keyboards/drewkeys/iskar/iskar.c create mode 100644 keyboards/drewkeys/iskar/iskar.h create mode 100644 keyboards/drewkeys/iskar/keymaps/default/keymap.c create mode 100644 keyboards/drewkeys/iskar/keymaps/default/readme.md create mode 100644 keyboards/drewkeys/iskar/readme.md create mode 100644 keyboards/drewkeys/iskar/rules.mk diff --git a/keyboards/drewkeys/iskar/config.h b/keyboards/drewkeys/iskar/config.h new file mode 100644 index 0000000000..e20369fde0 --- /dev/null +++ b/keyboards/drewkeys/iskar/config.h @@ -0,0 +1,56 @@ +/* +Copyright 2021 Drewkeys + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xDE43 +#define PRODUCT_ID 0x1284 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Drewkeys +#define PRODUCT Iskar + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + + // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 +#define MATRIX_ROW_PINS { D6, D7, B4, B5, D4 } +#define MATRIX_COL_PINS { B6, C6, C7, F6, F5, F4, F7, F1, F0, E6, B7, D0, D1, D2, D3, D5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION diff --git a/keyboards/drewkeys/iskar/info.json b/keyboards/drewkeys/iskar/info.json new file mode 100644 index 0000000000..0505fece10 --- /dev/null +++ b/keyboards/drewkeys/iskar/info.json @@ -0,0 +1,383 @@ +{ + "keyboard_name": "Iskar", + "url": "https://bitmapstudio.xyz/collections/iskar", + "maintainer": "Drewkeys", + "layouts": { + "LAYOUT": { + "layout": [ + {"label": "Esc 0,0", "x": 0, "y": 0}, + {"label": "1 0,1", "x": 1, "y": 0}, + {"label": "2 0,2", "x": 2, "y": 0}, + {"label": "3 0,3", "x": 3, "y": 0}, + {"label": "4 0,4", "x": 4, "y": 0}, + {"label": "5 0,5", "x": 5, "y": 0}, + {"label": "6 0,6", "x": 6, "y": 0}, + {"label": "7 0,7", "x": 7, "y": 0}, + {"label": "8 0,8", "x": 8, "y": 0}, + {"label": "9 0,9", "x": 9, "y": 0}, + {"label": "0 0,10", "x": 10, "y": 0}, + {"label": "- 0,11", "x": 11, "y": 0}, + {"label": "= 0,12", "x": 12, "y": 0}, + {"label": "bsp extra 0,13", "x": 13, "y": 0}, + {"label": "bsp 0,14", "x": 14, "y": 0}, + {"label": "del 0,15", "x": 15, "y": 0}, + + {"label": "tab 1,0", "x": 0, "y": 1, "w": 1.5}, + {"label": "q 1,2", "x": 1.5, "y": 1}, + {"label": "w 1,3", "x": 2.5, "y": 1}, + {"label": "e 1,4", "x": 3.5, "y": 1}, + {"label": "r 1,5", "x": 4.5, "y": 1}, + {"label": "t 1,6", "x": 5.5, "y": 1}, + {"label": "y 1,7", "x": 6.5, "y": 1}, + {"label": "u 1,8", "x": 7.5, "y": 1}, + {"label": "i 1,9", "x": 8.5, "y": 1}, + {"label": "o 1,10", "x": 9.5, "y": 1}, + {"label": "p 1,11", "x": 10.5, "y": 1}, + {"label": "[ 1,12", "x": 11.5, "y": 1}, + {"label": "] 1,13", "x": 12.5, "y": 1}, + {"label": "| 1,14", "x": 13.5, "y": 1, "w": 1.5}, + {"label": "home 1,15", "x": 15, "y": 1}, + + {"label": "caps 2,0", "x": 0, "y": 2, "w": 1.75}, + {"label": "a 2,2", "x": 1.75, "y": 2}, + {"label": "s 2,3", "x": 2.75, "y": 2}, + {"label": "d 2,4", "x": 3.75, "y": 2}, + {"label": "f 2,5", "x": 4.75, "y": 2}, + {"label": "g 2,6", "x": 5.75, "y": 2}, + {"label": "h 2,7", "x": 6.75, "y": 2}, + {"label": "j 2,8", "x": 7.75, "y": 2}, + {"label": "k 2,9", "x": 8.75, "y": 2}, + {"label": "l 2,10", "x": 9.75, "y": 2}, + {"label": "; 2,11", "x": 10.75, "y": 2}, + {"label": "' 2,12", "x": 11.75, "y": 2}, + {"label": "enter 2,13", "x": 12.75, "y": 2, "w": 2.25}, + {"label": "pg up 2,15", "x": 15, "y": 2}, + + {"label": "shift 3,1", "x": 0, "y": 3, "w": 2.25}, + {"label": "z 3,2", "x": 2.25, "y": 3}, + {"label": "x 3,3", "x": 3.25, "y": 3}, + {"label": "c 3,4", "x": 4.25, "y": 3}, + {"label": "v 3,5", "x": 5.25, "y": 3}, + {"label": "b 3,6", "x": 6.25, "y": 3}, + {"label": "n 3,7", "x": 7.25, "y": 3}, + {"label": "m 3,8", "x": 8.25, "y": 3}, + {"label": ", 3,9", "x": 9.25, "y": 3}, + {"label": ". 3,10", "x": 10.25, "y": 3}, + {"label": "/ 3,11", "x": 11.25, "y": 3}, + {"label": "shift 3,13", "x": 12.25, "y":3, "w": 1.75}, + {"label": "up 3,14", "x": 14, "y": 3}, + {"label": "pg dn 3,15", "x": 15, "y": 3}, + + {"label": "ctrl 4,0", "x": 0, "y": 4, "w": 1.25}, + {"label": "win 4,1", "x": 1.25, "y": 4, "w": 1.25}, + {"label": "alt 4,2", "x": 2.5, "y": 4, "w": 1.25}, + {"label": "spacebar 4,6", "x": 3.75, "y": 4, "w": 6.25}, + {"label": "fn 4,10", "x": 10, "y": 4, "w": 1.25}, + {"label": "ctrl 4,11", "x": 11.25, "y": 4, "w": 1.25}, + {"label": "left 4,13", "x": 13, "y": 4}, + {"label": "down 4,14", "x": 14, "y": 4}, + {"label": "right 4,15", "x": 15, "y": 4} + ] + }, + "LAYOUT_65_ansi": { + "layout": [ + {"label": "Esc 0,0", "x": 0, "y": 0}, + {"label": "1 0,1", "x": 1, "y": 0}, + {"label": "2 0,2", "x": 2, "y": 0}, + {"label": "3 0,3", "x": 3, "y": 0}, + {"label": "4 0,4", "x": 4, "y": 0}, + {"label": "5 0,5", "x": 5, "y": 0}, + {"label": "6 0,6", "x": 6, "y": 0}, + {"label": "7 0,7", "x": 7, "y": 0}, + {"label": "8 0,8", "x": 8, "y": 0}, + {"label": "9 0,9", "x": 9, "y": 0}, + {"label": "0 0,10", "x": 10, "y": 0}, + {"label": "- 0,11", "x": 11, "y": 0}, + {"label": "= 0,12", "x": 12, "y": 0}, + {"label": "bsp 0,14", "x": 13, "y": 0, "w": 2}, + {"label": "del 0,15", "x": 15, "y": 0}, + + {"label": "tab 1,0", "x": 0, "y": 1, "w": 1.5}, + {"label": "q 1,2", "x": 1.5, "y": 1}, + {"label": "w 1,3", "x": 2.5, "y": 1}, + {"label": "e 1,4", "x": 3.5, "y": 1}, + {"label": "r 1,5", "x": 4.5, "y": 1}, + {"label": "t 1,6", "x": 5.5, "y": 1}, + {"label": "y 1,7", "x": 6.5, "y": 1}, + {"label": "u 1,8", "x": 7.5, "y": 1}, + {"label": "i 1,9", "x": 8.5, "y": 1}, + {"label": "o 1,10", "x": 9.5, "y": 1}, + {"label": "p 1,11", "x": 10.5, "y": 1}, + {"label": "[ 1,12", "x": 11.5, "y": 1}, + {"label": "] 1,13", "x": 12.5, "y": 1}, + {"label": "| 1,14", "x": 13.5, "y": 1, "w": 1.5}, + {"label": "home 1,15", "x": 15, "y": 1}, + + {"label": "caps 2,0", "x": 0, "y": 2, "w": 1.75}, + {"label": "a 2,2", "x": 1.75, "y": 2}, + {"label": "s 2,3", "x": 2.75, "y": 2}, + {"label": "d 2,4", "x": 3.75, "y": 2}, + {"label": "f 2,5", "x": 4.75, "y": 2}, + {"label": "g 2,6", "x": 5.75, "y": 2}, + {"label": "h 2,7", "x": 6.75, "y": 2}, + {"label": "j 2,8", "x": 7.75, "y": 2}, + {"label": "k 2,9", "x": 8.75, "y": 2}, + {"label": "l 2,10", "x": 9.75, "y": 2}, + {"label": "; 2,11", "x": 10.75, "y": 2}, + {"label": "' 2,12", "x": 11.75, "y": 2}, + {"label": "enter 2,13", "x": 12.75, "y": 2, "w": 2.25}, + {"label": "pg up 2,15", "x": 15, "y": 2}, + + {"label": "shift 3,1", "x": 0, "y": 3, "w": 2.25}, + {"label": "z 3,2", "x": 2.25, "y": 3}, + {"label": "x 3,3", "x": 3.25, "y": 3}, + {"label": "c 3,4", "x": 4.25, "y": 3}, + {"label": "v 3,5", "x": 5.25, "y": 3}, + {"label": "b 3,6", "x": 6.25, "y": 3}, + {"label": "n 3,7", "x": 7.25, "y": 3}, + {"label": "m 3,8", "x": 8.25, "y": 3}, + {"label": ", 3,9", "x": 9.25, "y": 3}, + {"label": ". 3,10", "x": 10.25, "y": 3}, + {"label": "/ 3,11", "x": 11.25, "y": 3}, + {"label": "shift 3,13", "x": 12.25, "y":3, "w": 1.75}, + {"label": "up 3,14", "x": 14, "y": 3}, + {"label": "pg dn 3,15", "x": 15, "y": 3}, + + {"label": "ctrl 4,0", "x": 0, "y": 4, "w": 1.25}, + {"label": "win 4,1", "x": 1.25, "y": 4, "w": 1.25}, + {"label": "alt 4,2", "x": 2.5, "y": 4, "w": 1.25}, + {"label": "spacebar 4,6", "x": 3.75, "y": 4, "w": 6.25}, + {"label": "fn 4,10", "x": 10, "y": 4, "w": 1.25}, + {"label": "ctrl 4,11", "x": 11.25, "y": 4, "w": 1.25}, + {"label": "left 4,13", "x": 13, "y": 4}, + {"label": "down 4,14", "x": 14, "y": 4}, + {"label": "right 4,15", "x": 15, "y": 4} + ] + }, + "LAYOUT_65_ansi_split_bs": { + "layout": [ + {"label": "Esc 0,0", "x": 0, "y": 0}, + {"label": "1 0,1", "x": 1, "y": 0}, + {"label": "2 0,2", "x": 2, "y": 0}, + {"label": "3 0,3", "x": 3, "y": 0}, + {"label": "4 0,4", "x": 4, "y": 0}, + {"label": "5 0,5", "x": 5, "y": 0}, + {"label": "6 0,6", "x": 6, "y": 0}, + {"label": "7 0,7", "x": 7, "y": 0}, + {"label": "8 0,8", "x": 8, "y": 0}, + {"label": "9 0,9", "x": 9, "y": 0}, + {"label": "0 0,10", "x": 10, "y": 0}, + {"label": "- 0,11", "x": 11, "y": 0}, + {"label": "= 0,12", "x": 12, "y": 0}, + {"label": "bsp extra 0,13", "x": 13, "y": 0}, + {"label": "bsp 0,14", "x": 14, "y": 0}, + {"label": "del 0,15", "x": 15, "y": 0}, + + {"label": "tab 1,0", "x": 0, "y": 1, "w": 1.5}, + {"label": "q 1,2", "x": 1.5, "y": 1}, + {"label": "w 1,3", "x": 2.5, "y": 1}, + {"label": "e 1,4", "x": 3.5, "y": 1}, + {"label": "r 1,5", "x": 4.5, "y": 1}, + {"label": "t 1,6", "x": 5.5, "y": 1}, + {"label": "y 1,7", "x": 6.5, "y": 1}, + {"label": "u 1,8", "x": 7.5, "y": 1}, + {"label": "i 1,9", "x": 8.5, "y": 1}, + {"label": "o 1,10", "x": 9.5, "y": 1}, + {"label": "p 1,11", "x": 10.5, "y": 1}, + {"label": "[ 1,12", "x": 11.5, "y": 1}, + {"label": "] 1,13", "x": 12.5, "y": 1}, + {"label": "| 1,14", "x": 13.5, "y": 1, "w": 1.5}, + {"label": "home 1,15", "x": 15, "y": 1}, + + {"label": "caps 2,0", "x": 0, "y": 2, "w": 1.75}, + {"label": "a 2,2", "x": 1.75, "y": 2}, + {"label": "s 2,3", "x": 2.75, "y": 2}, + {"label": "d 2,4", "x": 3.75, "y": 2}, + {"label": "f 2,5", "x": 4.75, "y": 2}, + {"label": "g 2,6", "x": 5.75, "y": 2}, + {"label": "h 2,7", "x": 6.75, "y": 2}, + {"label": "j 2,8", "x": 7.75, "y": 2}, + {"label": "k 2,9", "x": 8.75, "y": 2}, + {"label": "l 2,10", "x": 9.75, "y": 2}, + {"label": "; 2,11", "x": 10.75, "y": 2}, + {"label": "' 2,12", "x": 11.75, "y": 2}, + {"label": "enter 2,13", "x": 12.75, "y": 2, "w": 2.25}, + {"label": "pg up 2,15", "x": 15, "y": 2}, + + {"label": "shift 3,1", "x": 0, "y": 3, "w": 2.25}, + {"label": "z 3,2", "x": 2.25, "y": 3}, + {"label": "x 3,3", "x": 3.25, "y": 3}, + {"label": "c 3,4", "x": 4.25, "y": 3}, + {"label": "v 3,5", "x": 5.25, "y": 3}, + {"label": "b 3,6", "x": 6.25, "y": 3}, + {"label": "n 3,7", "x": 7.25, "y": 3}, + {"label": "m 3,8", "x": 8.25, "y": 3}, + {"label": ", 3,9", "x": 9.25, "y": 3}, + {"label": ". 3,10", "x": 10.25, "y": 3}, + {"label": "/ 3,11", "x": 11.25, "y": 3}, + {"label": "shift 3,13", "x": 12.25, "y":3, "w": 1.75}, + {"label": "up 3,14", "x": 14, "y": 3}, + {"label": "pg dn 3,15", "x": 15, "y": 3}, + + {"label": "ctrl 4,0", "x": 0, "y": 4, "w": 1.25}, + {"label": "win 4,1", "x": 1.25, "y": 4, "w": 1.25}, + {"label": "alt 4,2", "x": 2.5, "y": 4, "w": 1.25}, + {"label": "spacebar 4,6", "x": 3.75, "y": 4, "w": 6.25}, + {"label": "fn 4,10", "x": 10, "y": 4, "w": 1.25}, + {"label": "ctrl 4,11", "x": 11.25, "y": 4, "w": 1.25}, + {"label": "left 4,13", "x": 13, "y": 4}, + {"label": "down 4,14", "x": 14, "y": 4}, + {"label": "right 4,15", "x": 15, "y": 4} + ] + }, + "LAYOUT_65_tsangan": { + "layout": [ + {"label": "Esc 0,0", "x": 0, "y": 0}, + {"label": "1 0,1", "x": 1, "y": 0}, + {"label": "2 0,2", "x": 2, "y": 0}, + {"label": "3 0,3", "x": 3, "y": 0}, + {"label": "4 0,4", "x": 4, "y": 0}, + {"label": "5 0,5", "x": 5, "y": 0}, + {"label": "6 0,6", "x": 6, "y": 0}, + {"label": "7 0,7", "x": 7, "y": 0}, + {"label": "8 0,8", "x": 8, "y": 0}, + {"label": "9 0,9", "x": 9, "y": 0}, + {"label": "0 0,10", "x": 10, "y": 0}, + {"label": "- 0,11", "x": 11, "y": 0}, + {"label": "= 0,12", "x": 12, "y": 0}, + {"label": "bsp 0,14", "x": 13, "y": 0, "w": 2}, + {"label": "del 0,15", "x": 15, "y": 0}, + + {"label": "tab 1,0", "x": 0, "y": 1, "w": 1.5}, + {"label": "q 1,2", "x": 1.5, "y": 1}, + {"label": "w 1,3", "x": 2.5, "y": 1}, + {"label": "e 1,4", "x": 3.5, "y": 1}, + {"label": "r 1,5", "x": 4.5, "y": 1}, + {"label": "t 1,6", "x": 5.5, "y": 1}, + {"label": "y 1,7", "x": 6.5, "y": 1}, + {"label": "u 1,8", "x": 7.5, "y": 1}, + {"label": "i 1,9", "x": 8.5, "y": 1}, + {"label": "o 1,10", "x": 9.5, "y": 1}, + {"label": "p 1,11", "x": 10.5, "y": 1}, + {"label": "[ 1,12", "x": 11.5, "y": 1}, + {"label": "] 1,13", "x": 12.5, "y": 1}, + {"label": "| 1,14", "x": 13.5, "y": 1, "w": 1.5}, + {"label": "home 1,15", "x": 15, "y": 1}, + + {"label": "caps 2,0", "x": 0, "y": 2, "w": 1.75}, + {"label": "a 2,2", "x": 1.75, "y": 2}, + {"label": "s 2,3", "x": 2.75, "y": 2}, + {"label": "d 2,4", "x": 3.75, "y": 2}, + {"label": "f 2,5", "x": 4.75, "y": 2}, + {"label": "g 2,6", "x": 5.75, "y": 2}, + {"label": "h 2,7", "x": 6.75, "y": 2}, + {"label": "j 2,8", "x": 7.75, "y": 2}, + {"label": "k 2,9", "x": 8.75, "y": 2}, + {"label": "l 2,10", "x": 9.75, "y": 2}, + {"label": "; 2,11", "x": 10.75, "y": 2}, + {"label": "' 2,12", "x": 11.75, "y": 2}, + {"label": "enter 2,13", "x": 12.75, "y": 2, "w": 2.25}, + {"label": "pg up 2,15", "x": 15, "y": 2}, + + {"label": "shift 3,1", "x": 0, "y": 3, "w": 2.25}, + {"label": "z 3,2", "x": 2.25, "y": 3}, + {"label": "x 3,3", "x": 3.25, "y": 3}, + {"label": "c 3,4", "x": 4.25, "y": 3}, + {"label": "v 3,5", "x": 5.25, "y": 3}, + {"label": "b 3,6", "x": 6.25, "y": 3}, + {"label": "n 3,7", "x": 7.25, "y": 3}, + {"label": "m 3,8", "x": 8.25, "y": 3}, + {"label": ", 3,9", "x": 9.25, "y": 3}, + {"label": ". 3,10", "x": 10.25, "y": 3}, + {"label": "/ 3,11", "x": 11.25, "y": 3}, + {"label": "shift 3,13", "x": 12.25, "y":3, "w": 1.75}, + {"label": "up 3,14", "x": 14, "y": 3}, + {"label": "pg dn 3,15", "x": 15, "y": 3}, + + {"label": "ctrl 4,0", "x": 0, "y": 4, "w": 1.5}, + {"label": "win 4,1", "x": 1.5, "y": 4}, + {"label": "alt 4,2", "x": 2.5, "y": 4, "w": 1.5}, + {"label": "spacebar 4,6", "x": 4, "y": 4, "w": 7}, + {"label": "ctrl 4,11", "x": 11, "y": 4, "w": 1.5}, + {"label": "left 4,13", "x": 13, "y": 4}, + {"label": "down 4,14", "x": 14, "y": 4}, + {"label": "right 4,15", "x": 15, "y": 4} + ] + }, + "LAYOUT_65_tsangan_split_bs": { + "layout": [ + {"label": "Esc 0,0", "x": 0, "y": 0}, + {"label": "1 0,1", "x": 1, "y": 0}, + {"label": "2 0,2", "x": 2, "y": 0}, + {"label": "3 0,3", "x": 3, "y": 0}, + {"label": "4 0,4", "x": 4, "y": 0}, + {"label": "5 0,5", "x": 5, "y": 0}, + {"label": "6 0,6", "x": 6, "y": 0}, + {"label": "7 0,7", "x": 7, "y": 0}, + {"label": "8 0,8", "x": 8, "y": 0}, + {"label": "9 0,9", "x": 9, "y": 0}, + {"label": "0 0,10", "x": 10, "y": 0}, + {"label": "- 0,11", "x": 11, "y": 0}, + {"label": "= 0,12", "x": 12, "y": 0}, + {"label": "bsp extra 0,13", "x": 13, "y": 0}, + {"label": "bsp 0,14", "x": 14, "y": 0}, + {"label": "del 0,15", "x": 15, "y": 0}, + + {"label": "tab 1,0", "x": 0, "y": 1, "w": 1.5}, + {"label": "q 1,2", "x": 1.5, "y": 1}, + {"label": "w 1,3", "x": 2.5, "y": 1}, + {"label": "e 1,4", "x": 3.5, "y": 1}, + {"label": "r 1,5", "x": 4.5, "y": 1}, + {"label": "t 1,6", "x": 5.5, "y": 1}, + {"label": "y 1,7", "x": 6.5, "y": 1}, + {"label": "u 1,8", "x": 7.5, "y": 1}, + {"label": "i 1,9", "x": 8.5, "y": 1}, + {"label": "o 1,10", "x": 9.5, "y": 1}, + {"label": "p 1,11", "x": 10.5, "y": 1}, + {"label": "[ 1,12", "x": 11.5, "y": 1}, + {"label": "] 1,13", "x": 12.5, "y": 1}, + {"label": "| 1,14", "x": 13.5, "y": 1, "w": 1.5}, + {"label": "home 1,15", "x": 15, "y": 1}, + + {"label": "caps 2,0", "x": 0, "y": 2, "w": 1.75}, + {"label": "a 2,2", "x": 1.75, "y": 2}, + {"label": "s 2,3", "x": 2.75, "y": 2}, + {"label": "d 2,4", "x": 3.75, "y": 2}, + {"label": "f 2,5", "x": 4.75, "y": 2}, + {"label": "g 2,6", "x": 5.75, "y": 2}, + {"label": "h 2,7", "x": 6.75, "y": 2}, + {"label": "j 2,8", "x": 7.75, "y": 2}, + {"label": "k 2,9", "x": 8.75, "y": 2}, + {"label": "l 2,10", "x": 9.75, "y": 2}, + {"label": "; 2,11", "x": 10.75, "y": 2}, + {"label": "' 2,12", "x": 11.75, "y": 2}, + {"label": "enter 2,13", "x": 12.75, "y": 2, "w": 2.25}, + {"label": "pg up 2,15", "x": 15, "y": 2}, + + {"label": "shift 3,1", "x": 0, "y": 3, "w": 2.25}, + {"label": "z 3,2", "x": 2.25, "y": 3}, + {"label": "x 3,3", "x": 3.25, "y": 3}, + {"label": "c 3,4", "x": 4.25, "y": 3}, + {"label": "v 3,5", "x": 5.25, "y": 3}, + {"label": "b 3,6", "x": 6.25, "y": 3}, + {"label": "n 3,7", "x": 7.25, "y": 3}, + {"label": "m 3,8", "x": 8.25, "y": 3}, + {"label": ", 3,9", "x": 9.25, "y": 3}, + {"label": ". 3,10", "x": 10.25, "y": 3}, + {"label": "/ 3,11", "x": 11.25, "y": 3}, + {"label": "shift 3,13", "x": 12.25, "y":3, "w": 1.75}, + {"label": "up 3,14", "x": 14, "y": 3}, + {"label": "pg dn 3,15", "x": 15, "y": 3}, + + {"label": "ctrl 4,0", "x": 0, "y": 4, "w": 1.5}, + {"label": "win 4,1", "x": 1.5, "y": 4}, + {"label": "alt 4,2", "x": 2.5, "y": 4, "w": 1.5}, + {"label": "spacebar 4,6", "x": 4, "y": 4, "w": 7}, + {"label": "ctrl 4,11", "x": 11, "y": 4, "w": 1.5}, + {"label": "left 4,13", "x": 13, "y": 4}, + {"label": "down 4,14", "x": 14, "y": 4}, + {"label": "right 4,15", "x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/drewkeys/iskar/iskar.c b/keyboards/drewkeys/iskar/iskar.c new file mode 100644 index 0000000000..32ea7aa2e4 --- /dev/null +++ b/keyboards/drewkeys/iskar/iskar.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Drewkeys + * + * 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 . + */ + +#include "iskar.h" diff --git a/keyboards/drewkeys/iskar/iskar.h b/keyboards/drewkeys/iskar/iskar.h new file mode 100644 index 0000000000..0ad2601d33 --- /dev/null +++ b/keyboards/drewkeys/iskar/iskar.h @@ -0,0 +1,155 @@ +/* Copyright 2021 Drewkeys + * + * 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 . + */ + +#pragma once + +#include "quantum.h" +// Corresponding changes to the layout names and/or definitions must also be made to info.json + +/* Standard arrangement / LAYOUT + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │0f │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │1f │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │2f │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤───┤ + * │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │3f │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┬┴───┬┴┬───┼───┤───┤ + * │40 │41 │43 │ 46 │4a │4b │▓│4d │4e │4f │ + * └────┴────┴────┴────────────────────────┴────┴────┴ ┴───┴───┘───┘ +*/ +#define LAYOUT( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3D, k3E, k3F, \ + k40, k41, k42, k46, k4A, k4B, k4D, k4E, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, KC_NO, k2F }, \ + { KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, KC_NO, k3D, k3E, k3F }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4A, k4B, KC_NO, k4D, k4E, k4F } \ +} + +/* Standard arrangement / 65 ANSI + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0e │0f │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │1f │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │2f │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤───┤ + * │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │3f │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┬┴───┬┴┬───┼───┤───┤ + * │40 │41 │43 │ 46 │4a │4b │ │4d │4e │4f │ + * └────┴────┴────┴────────────────────────┴────┴────┴ ┴───┴───┘───┘ +*/ +#define LAYOUT_65_ansi( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3D, k3E, k3F, \ + k40, k41, k42, k46, k4A, k4B, k4D, k4E, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, KC_NO, k0E, k0F }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, KC_NO, k2F }, \ + { KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, KC_NO, k3D, k3E, k3F }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4A, k4B, KC_NO, k4D, k4E, k4F } \ +} + +/* Standard arrangement / 65 ANSI SPLIT + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │0f │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │1f │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │2f │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤───┤ + * │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │3f │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┬┴───┬┴┬───┼───┤───┤ + * │40 │41 │43 │ 46 │4a │4b │ │4d │4e │4f │ + * └────┴────┴────┴────────────────────────┴────┴────┴ ┴───┴───┘───┘ +*/ +#define LAYOUT_65_ansi_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3D, k3E, k3F, \ + k40, k41, k42, k46, k4A, k4B, k4D, k4E, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, KC_NO, k2F }, \ + { KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, KC_NO, k3D, k3E, k3F }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4A, k4B, KC_NO, k4D, k4E, k4F } \ +} + +/* Standard arrangement / 65 TSANGAN + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0e │0f │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │1f │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │2f │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤───┤ + * │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │3f │ + * ├─────┬─┴─┬──┴─┬─┴───┴───┴───┴───┴───┴───┴───┬┴───┬┴┬───┼───┤───┤ + * │40 │41 │43 │ 46 │4b │ │4d │4e │4f │ + * └─────┴───┴────┴─────────────────────────────┴────┴ ┴───┴───┘───┘ +*/ +#define LAYOUT_65_tsangan( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k0F, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3D, k3E, k3F, \ + k40, k41, k42, k46, k4B, k4D, k4E, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, KC_NO, k0E, k0F }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, KC_NO, k2F }, \ + { KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, KC_NO, k3D, k3E, k3F }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, KC_NO, k4B, KC_NO, k4D, k4E, k4F } \ +} + +/* Standard arrangement / 65 TSANGAN SPLIT + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │0f │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤───┤ + * │10 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │1f │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │2f │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤───┤ + * │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3d │3e │3f │ + * ├─────┬─┴─┬──┴─┬─┴───┴───┴───┴───┴───┴───┴───┬┴───┬┴┬───┼───┤───┤ + * │40 │41 │43 │ 46 │4b │ │4d │4e │4f │ + * └─────┴───┴────┴─────────────────────────────┴────┴ ┴───┴───┘───┘ +*/ +#define LAYOUT_65_tsangan_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F, \ + k10, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F, \ + k20, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2F, \ + k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3D, k3E, k3F, \ + k40, k41, k42, k46, k4B, k4D, k4E, k4F \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ + { k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ + { k20, KC_NO, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, KC_NO, k2F }, \ + { KC_NO, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, KC_NO, k3D, k3E, k3F }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, KC_NO, k4B, KC_NO, k4D, k4E, k4F } \ +} diff --git a/keyboards/drewkeys/iskar/keymaps/default/keymap.c b/keyboards/drewkeys/iskar/keymaps/default/keymap.c new file mode 100644 index 0000000000..d97403dfd5 --- /dev/null +++ b/keyboards/drewkeys/iskar/keymaps/default/keymap.c @@ -0,0 +1,33 @@ +/* Copyright 2021 Drewkeys + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT( + QK_GESC, 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_DEL, KC_BSPC, KC_HOME, + 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, KC_INS, + 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_PGUP, + 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, KC_PGDN, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT + ), + LAYOUT( + KC_GRAVE, 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, + 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 + ) +}; diff --git a/keyboards/drewkeys/iskar/keymaps/default/readme.md b/keyboards/drewkeys/iskar/keymaps/default/readme.md new file mode 100644 index 0000000000..d7cffe7242 --- /dev/null +++ b/keyboards/drewkeys/iskar/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for iskar -- ansi and split back space diff --git a/keyboards/drewkeys/iskar/readme.md b/keyboards/drewkeys/iskar/readme.md new file mode 100644 index 0000000000..152ec5e47e --- /dev/null +++ b/keyboards/drewkeys/iskar/readme.md @@ -0,0 +1,24 @@ +# Iskar + +![Iskar](https://i.imgur.com/qBh0gA2.png) + +![Layouts supported](https://i.imgur.com/SB2G7mL.png) +Note: No split backspace for hotswap vers. + +65% PCB for Bitmap studio's Iskar + +* Keyboard Maintainer: [Drewkeys](https://github.com/drewpyun) +* Hardware Supported: Made specifically for Iskar, 65% hotswap supported +* Hardware Availability: https://bitmapstudio.xyz/collections/iskar + +Make example for this keyboard (after setting up your build environment): + + make drewkkeys/iskar:default + +Flashing example for this keyboard: + + make drewkeys/iskar:default:flash + +Resetting Board: Press the button on the PCB next to the logo to soft reset the board to reflash (bootloader mode). + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/drewkeys/iskar/rules.mk b/keyboards/drewkeys/iskar/rules.mk new file mode 100644 index 0000000000..9591f732c4 --- /dev/null +++ b/keyboards/drewkeys/iskar/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +LTO_ENABLE = yes From 89a515913fdfb3abc3d7c511c1cacdd664d079b4 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 8 Mar 2022 16:30:37 +1100 Subject: [PATCH 054/699] Oddball: set default pointing device driver (#16574) --- keyboards/oddball/keymaps/default/rules.mk | 1 - keyboards/oddball/readme.md | 2 +- keyboards/oddball/rules.mk | 1 + 3 files changed, 2 insertions(+), 2 deletions(-) delete mode 100644 keyboards/oddball/keymaps/default/rules.mk diff --git a/keyboards/oddball/keymaps/default/rules.mk b/keyboards/oddball/keymaps/default/rules.mk deleted file mode 100644 index 84de35aeb1..0000000000 --- a/keyboards/oddball/keymaps/default/rules.mk +++ /dev/null @@ -1 +0,0 @@ -POINTING_DEVICE_DRIVER = adns9800 diff --git a/keyboards/oddball/readme.md b/keyboards/oddball/readme.md index f797fc34e8..573fd7cc5c 100644 --- a/keyboards/oddball/readme.md +++ b/keyboards/oddball/readme.md @@ -3,7 +3,7 @@ A split keyboard with trackball support. * Keyboard Maintainer: [Alexander Tulloh](https://github.com/atulloh) -* Hardware Supported: Oddball PCB and plates, and using an [ADNS9800](https://www.tindie.com/products/jkicklighter/adns-9800-laser-motion-sensor/) or a [PMW3360](https://www.tindie.com/products/jkicklighter/pmw3360-motion-sensor/) breakout board for mouse +* Hardware Supported: Oddball PCB and plates, and using an [ADNS9800](https://www.tindie.com/products/jkicklighter/adns-9800-laser-motion-sensor/) (default) or a [PMW3360](https://www.tindie.com/products/jkicklighter/pmw3360-motion-sensor/) breakout board for mouse * Hardware Availability: [atulloh.github.io/oddball](https://atulloh.github.io/oddball) Make examples for this keyboard (after setting up your build environment): diff --git a/keyboards/oddball/rules.mk b/keyboards/oddball/rules.mk index b096a922c5..4698218128 100644 --- a/keyboards/oddball/rules.mk +++ b/keyboards/oddball/rules.mk @@ -16,5 +16,6 @@ AUDIO_ENABLE = no # Audio output SPLIT_KEYBOARD = yes POINTING_DEVICE_ENABLE = yes +POINTING_DEVICE_DRIVER = adns9800 DEFAULT_FOLDER = oddball/v1 From fe8b7619d30f9571da386b4eff9103a5d6ca48d4 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 7 Mar 2022 22:48:56 -0700 Subject: [PATCH 055/699] [Keyboard] Fix late9/rev1 (#16576) --- keyboards/late9/rev1/rev1.c | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/late9/rev1/rev1.c b/keyboards/late9/rev1/rev1.c index e79f76cd3b..ffba137189 100644 --- a/keyboards/late9/rev1/rev1.c +++ b/keyboards/late9/rev1/rev1.c @@ -55,6 +55,7 @@ bool oled_task_kb(void) { 0x00, 0x00, 0x00, 0x00, 0x00, 0x0e, 0x0e, 0x0e, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00 }; oled_write_raw_P(rb_logo, sizeof(rb_logo)); + return false; } #endif From 2f6751e48a37699cfd999e0afd8731ca3962611c Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 8 Mar 2022 16:58:05 +1100 Subject: [PATCH 056/699] Asymmetric encoders, encoder tests. (#16068) --- builddefs/build_test.mk | 2 + builddefs/testlist.mk | 1 + docs/feature_encoders.md | 13 ++ keyboards/draculad/config.h | 3 +- keyboards/sofle/keyhive/config.h | 11 +- keyboards/viktus/sp_mini/config.h | 4 +- quantum/encoder.c | 122 +++++++++------ quantum/encoder.h | 28 +++- quantum/encoder/tests/config_mock.h | 22 +++ .../tests/config_mock_split_left_eq_right.h | 26 ++++ .../tests/config_mock_split_left_gt_right.h | 26 ++++ .../tests/config_mock_split_left_lt_right.h | 26 ++++ .../encoder/tests/config_mock_split_no_left.h | 26 ++++ .../tests/config_mock_split_no_right.h | 26 ++++ quantum/encoder/tests/encoder_tests.cpp | 36 ++--- .../encoder_tests_split_left_eq_right.cpp | 135 +++++++++++++++++ .../encoder_tests_split_left_gt_right.cpp | 139 ++++++++++++++++++ .../encoder_tests_split_left_lt_right.cpp | 139 ++++++++++++++++++ ...it.cpp => encoder_tests_split_no_left.cpp} | 80 ++++------ .../tests/encoder_tests_split_no_right.cpp | 118 +++++++++++++++ quantum/encoder/tests/mock.h | 6 - quantum/encoder/tests/mock_split.h | 16 +- quantum/encoder/tests/rules.mk | 53 ++++++- quantum/encoder/tests/testlist.mk | 6 +- quantum/split_common/transactions.c | 4 +- quantum/split_common/transport.h | 3 +- quantum/util.h | 8 + 27 files changed, 931 insertions(+), 148 deletions(-) create mode 100644 quantum/encoder/tests/config_mock.h create mode 100644 quantum/encoder/tests/config_mock_split_left_eq_right.h create mode 100644 quantum/encoder/tests/config_mock_split_left_gt_right.h create mode 100644 quantum/encoder/tests/config_mock_split_left_lt_right.h create mode 100644 quantum/encoder/tests/config_mock_split_no_left.h create mode 100644 quantum/encoder/tests/config_mock_split_no_right.h create mode 100644 quantum/encoder/tests/encoder_tests_split_left_eq_right.cpp create mode 100644 quantum/encoder/tests/encoder_tests_split_left_gt_right.cpp create mode 100644 quantum/encoder/tests/encoder_tests_split_left_lt_right.cpp rename quantum/encoder/tests/{encoder_tests_split.cpp => encoder_tests_split_no_left.cpp} (66%) create mode 100644 quantum/encoder/tests/encoder_tests_split_no_right.cpp diff --git a/builddefs/build_test.mk b/builddefs/build_test.mk index 7226004aab..5ad33b19c5 100644 --- a/builddefs/build_test.mk +++ b/builddefs/build_test.mk @@ -4,6 +4,8 @@ endif .DEFAULT_GOAL := all +OPT = g + include paths.mk include $(BUILDDEFS_PATH)/message.mk diff --git a/builddefs/testlist.mk b/builddefs/testlist.mk index 86da5668ac..b8d22bce80 100644 --- a/builddefs/testlist.mk +++ b/builddefs/testlist.mk @@ -2,6 +2,7 @@ TEST_LIST = $(sort $(patsubst %/test.mk,%, $(shell find $(ROOT_DIR)tests -type f FULL_TESTS := $(notdir $(TEST_LIST)) include $(QUANTUM_PATH)/debounce/tests/testlist.mk +include $(QUANTUM_PATH)/encoder/tests/testlist.mk include $(QUANTUM_PATH)/sequencer/tests/testlist.mk include $(PLATFORM_PATH)/test/testlist.mk diff --git a/docs/feature_encoders.md b/docs/feature_encoders.md index 6a1a3750a6..f71c7e7325 100644 --- a/docs/feature_encoders.md +++ b/docs/feature_encoders.md @@ -54,6 +54,19 @@ If you are using different pinouts for the encoders on each half of a split keyb #define ENCODER_RESOLUTIONS_RIGHT { 2, 4 } ``` +If the `_RIGHT` definitions aren't specified in your `config.h`, then the non-`_RIGHT` versions will be applied to both sides of the split. + +Additionally, if one side does not have an encoder, you can specify `{}` for the pins/resolution -- for example, a split keyboard with only a right-side encoder: + +```c +#define ENCODERS_PAD_A { } +#define ENCODERS_PAD_B { } +#define ENCODER_RESOLUTIONS { } +#define ENCODERS_PAD_A_RIGHT { B12 } +#define ENCODERS_PAD_B_RIGHT { B13 } +#define ENCODER_RESOLUTIONS_RIGHT { 4 } +``` + ## Callbacks The callback functions can be inserted into your `.c`: diff --git a/keyboards/draculad/config.h b/keyboards/draculad/config.h index abcdc76b4b..3060f801c6 100644 --- a/keyboards/draculad/config.h +++ b/keyboards/draculad/config.h @@ -61,7 +61,8 @@ along with this program. If not, see . #define ENCODERS_PAD_A {B2 , B4} #define ENCODERS_PAD_B {B6 , B5} -#define ENCODER_RESOLUTIONS { 4, 4, 4, 1} +#define ENCODER_RESOLUTIONS { 4, 4 } +#define ENCODER_RESOLUTIONS_RIGHT { 4, 1 } #define UNUSED_PINS #define EE_HANDS diff --git a/keyboards/sofle/keyhive/config.h b/keyboards/sofle/keyhive/config.h index c934754e65..93048f3cd1 100755 --- a/keyboards/sofle/keyhive/config.h +++ b/keyboards/sofle/keyhive/config.h @@ -42,11 +42,12 @@ #define DEBOUNCE 5 // Encoder support -#define ENCODERS_PAD_A { F5 } -#define ENCODERS_PAD_B { F4 } -#define ENCODERS_PAD_A_RIGHT { F4 } -#define ENCODERS_PAD_B_RIGHT { F5 } -#define ENCODER_RESOLUTIONS { 4, 2 } // Left encoder seems to have double-output issue but right does not. +#define ENCODERS_PAD_A { F5 } +#define ENCODERS_PAD_B { F4 } +#define ENCODERS_PAD_A_RIGHT { F4 } +#define ENCODERS_PAD_B_RIGHT { F5 } +#define ENCODER_RESOLUTIONS { 4 } +#define ENCODER_RESOLUTIONS_RIGHT { 2 } // Left encoder seems to have double-output issue but right does not. #define TAP_CODE_DELAY 10 diff --git a/keyboards/viktus/sp_mini/config.h b/keyboards/viktus/sp_mini/config.h index 06b8c2f51a..ec13a240c2 100644 --- a/keyboards/viktus/sp_mini/config.h +++ b/keyboards/viktus/sp_mini/config.h @@ -35,7 +35,7 @@ along with this program. If not, see . // wiring of each half #define MATRIX_ROW_PINS { F0, B5, B4, D7, D6 } -#define MATRIX_COL_PINS { B6, C6, C7, D4, D2, D3, D5 } // no B7 on left hand +#define MATRIX_COL_PINS { B6, C6, C7, D4, D2, D3, D5, NO_PIN } // no B7 on left hand #define MATRIX_ROW_PINS_RIGHT { F0, B5, B4, D7, D6 } #define MATRIX_COL_PINS_RIGHT { B6, C6, C7, D4, D2, D3, D5, B7 } @@ -78,7 +78,7 @@ along with this program. If not, see . //#define ENCODERS_PAD_A_RIGHT {F4} //#define ENCODERS_PAD_B_RIGHT {F1} -#define ENCODER_RESOLUTIONS { 8, 8 } +#define ENCODER_RESOLUTIONS { 8 } /* * Feature disable options diff --git a/quantum/encoder.c b/quantum/encoder.c index 438c7d8564..0a3d6f577c 100644 --- a/quantum/encoder.c +++ b/quantum/encoder.c @@ -31,11 +31,13 @@ # error "No encoder pads defined by ENCODERS_PAD_A and ENCODERS_PAD_B" #endif -#define NUMBER_OF_ENCODERS (sizeof(encoders_pad_a) / sizeof(pin_t)) -static pin_t encoders_pad_a[] = ENCODERS_PAD_A; -static pin_t encoders_pad_b[] = ENCODERS_PAD_B; +extern volatile bool isLeftHand; + +static pin_t encoders_pad_a[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_A; +static pin_t encoders_pad_b[NUM_ENCODERS_MAX_PER_SIDE] = ENCODERS_PAD_B; + #ifdef ENCODER_RESOLUTIONS -static uint8_t encoder_resolutions[] = ENCODER_RESOLUTIONS; +static uint8_t encoder_resolutions[NUM_ENCODERS] = ENCODER_RESOLUTIONS; #endif #ifndef ENCODER_DIRECTION_FLIP @@ -47,18 +49,20 @@ static uint8_t encoder_resolutions[] = ENCODER_RESOLUTIONS; #endif static int8_t encoder_LUT[] = {0, -1, 1, 0, 1, 0, 0, -1, -1, 0, 0, 1, 0, 1, -1, 0}; -static uint8_t encoder_state[NUMBER_OF_ENCODERS] = {0}; -static int8_t encoder_pulses[NUMBER_OF_ENCODERS] = {0}; +static uint8_t encoder_state[NUM_ENCODERS] = {0}; +static int8_t encoder_pulses[NUM_ENCODERS] = {0}; +// encoder counts +static uint8_t thisCount; #ifdef SPLIT_KEYBOARD -// right half encoders come over as second set of encoders -static uint8_t encoder_value[NUMBER_OF_ENCODERS * 2] = {0}; -// row offsets for each hand +// encoder offsets for each hand static uint8_t thisHand, thatHand; -#else -static uint8_t encoder_value[NUMBER_OF_ENCODERS] = {0}; +// encoder counts for each hand +static uint8_t thatCount; #endif +static uint8_t encoder_value[NUM_ENCODERS] = {0}; + __attribute__((weak)) void encoder_wait_pullup_charge(void) { wait_us(100); } @@ -72,36 +76,63 @@ __attribute__((weak)) bool encoder_update_kb(uint8_t index, bool clockwise) { } void encoder_init(void) { -#if defined(SPLIT_KEYBOARD) && defined(ENCODERS_PAD_A_RIGHT) && defined(ENCODERS_PAD_B_RIGHT) - if (!isLeftHand) { - const pin_t encoders_pad_a_right[] = ENCODERS_PAD_A_RIGHT; - const pin_t encoders_pad_b_right[] = ENCODERS_PAD_B_RIGHT; -# if defined(ENCODER_RESOLUTIONS_RIGHT) - const uint8_t encoder_resolutions_right[] = ENCODER_RESOLUTIONS_RIGHT; -# endif - for (uint8_t i = 0; i < NUMBER_OF_ENCODERS; i++) { - encoders_pad_a[i] = encoders_pad_a_right[i]; - encoders_pad_b[i] = encoders_pad_b_right[i]; -# if defined(ENCODER_RESOLUTIONS_RIGHT) - encoder_resolutions[i] = encoder_resolutions_right[i]; -# endif - } +#ifdef SPLIT_KEYBOARD + thisHand = isLeftHand ? 0 : NUM_ENCODERS_LEFT; + thatHand = NUM_ENCODERS_LEFT - thisHand; + thisCount = isLeftHand ? NUM_ENCODERS_LEFT : NUM_ENCODERS_RIGHT; + thatCount = isLeftHand ? NUM_ENCODERS_RIGHT : NUM_ENCODERS_LEFT; +#else // SPLIT_KEYBOARD + thisCount = NUM_ENCODERS; +#endif + +#ifdef ENCODER_TESTS + // Annoying that we have to clear out values during initialisation here, but + // because all the arrays are static locals, rerunning tests in the same + // executable doesn't reset any of these. Kinda crappy having test-only code + // here, but it's the simplest solution. + memset(encoder_value, 0, sizeof(encoder_value)); + memset(encoder_state, 0, sizeof(encoder_state)); + memset(encoder_pulses, 0, sizeof(encoder_pulses)); + static const pin_t encoders_pad_a_left[] = ENCODERS_PAD_A; + static const pin_t encoders_pad_b_left[] = ENCODERS_PAD_B; + for (uint8_t i = 0; i < thisCount; i++) { + encoders_pad_a[i] = encoders_pad_a_left[i]; + encoders_pad_b[i] = encoders_pad_b_left[i]; } #endif - for (int i = 0; i < NUMBER_OF_ENCODERS; i++) { +#if defined(SPLIT_KEYBOARD) && defined(ENCODERS_PAD_A_RIGHT) && defined(ENCODERS_PAD_B_RIGHT) + // Re-initialise the pads if it's the right-hand side + if (!isLeftHand) { + static const pin_t encoders_pad_a_right[] = ENCODERS_PAD_A_RIGHT; + static const pin_t encoders_pad_b_right[] = ENCODERS_PAD_B_RIGHT; + for (uint8_t i = 0; i < thisCount; i++) { + encoders_pad_a[i] = encoders_pad_a_right[i]; + encoders_pad_b[i] = encoders_pad_b_right[i]; + } + } +#endif // defined(SPLIT_KEYBOARD) && defined(ENCODERS_PAD_A_RIGHT) && defined(ENCODERS_PAD_B_RIGHT) + + // Encoder resolutions is handled purely master-side, so concatenate the two arrays +#if defined(SPLIT_KEYBOARD) && defined(ENCODER_RESOLUTIONS) +# if defined(ENCODER_RESOLUTIONS_RIGHT) + static const uint8_t encoder_resolutions_right[NUM_ENCODERS_RIGHT] = ENCODER_RESOLUTIONS_RIGHT; +# else // defined(ENCODER_RESOLUTIONS_RIGHT) + static const uint8_t encoder_resolutions_right[NUM_ENCODERS_RIGHT] = ENCODER_RESOLUTIONS; +# endif // defined(ENCODER_RESOLUTIONS_RIGHT) + for (uint8_t i = 0; i < NUM_ENCODERS_RIGHT; i++) { + encoder_resolutions[NUM_ENCODERS_LEFT + i] = encoder_resolutions_right[i]; + } +#endif // defined(SPLIT_KEYBOARD) && defined(ENCODER_RESOLUTIONS) + + for (uint8_t i = 0; i < thisCount; i++) { setPinInputHigh(encoders_pad_a[i]); setPinInputHigh(encoders_pad_b[i]); } encoder_wait_pullup_charge(); - for (int i = 0; i < NUMBER_OF_ENCODERS; i++) { + for (uint8_t i = 0; i < thisCount; i++) { encoder_state[i] = (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1); } - -#ifdef SPLIT_KEYBOARD - thisHand = isLeftHand ? 0 : NUMBER_OF_ENCODERS; - thatHand = NUMBER_OF_ENCODERS - thisHand; -#endif } static bool encoder_update(uint8_t index, uint8_t state) { @@ -109,9 +140,9 @@ static bool encoder_update(uint8_t index, uint8_t state) { uint8_t i = index; #ifdef ENCODER_RESOLUTIONS - uint8_t resolution = encoder_resolutions[i]; + const uint8_t resolution = encoder_resolutions[i]; #else - uint8_t resolution = ENCODER_RESOLUTION; + const uint8_t resolution = ENCODER_RESOLUTION; #endif #ifdef SPLIT_KEYBOARD @@ -139,10 +170,13 @@ static bool encoder_update(uint8_t index, uint8_t state) { bool encoder_read(void) { bool changed = false; - for (uint8_t i = 0; i < NUMBER_OF_ENCODERS; i++) { - encoder_state[i] <<= 2; - encoder_state[i] |= (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1); - changed |= encoder_update(i, encoder_state[i]); + for (uint8_t i = 0; i < thisCount; i++) { + uint8_t new_status = (readPin(encoders_pad_a[i]) << 0) | (readPin(encoders_pad_b[i]) << 1); + if ((encoder_state[i] & 0x3) != new_status) { + encoder_state[i] <<= 2; + encoder_state[i] |= new_status; + changed |= encoder_update(i, encoder_state[i]); + } } return changed; } @@ -150,15 +184,15 @@ bool encoder_read(void) { #ifdef SPLIT_KEYBOARD void last_encoder_activity_trigger(void); -void encoder_state_raw(uint8_t* slave_state) { - memcpy(slave_state, &encoder_value[thisHand], sizeof(uint8_t) * NUMBER_OF_ENCODERS); +void encoder_state_raw(uint8_t *slave_state) { + memcpy(slave_state, &encoder_value[thisHand], sizeof(uint8_t) * thisCount); } -void encoder_update_raw(uint8_t* slave_state) { +void encoder_update_raw(uint8_t *slave_state) { bool changed = false; - for (uint8_t i = 0; i < NUMBER_OF_ENCODERS; i++) { - uint8_t index = i + thatHand; - int8_t delta = slave_state[i] - encoder_value[index]; + for (uint8_t i = 0; i < thatCount; i++) { // Note inverted logic -- we want the opposite side + const uint8_t index = i + thatHand; + int8_t delta = slave_state[i] - encoder_value[index]; while (delta > 0) { delta--; encoder_value[index]++; diff --git a/quantum/encoder.h b/quantum/encoder.h index 25dc77721d..dd6db14629 100644 --- a/quantum/encoder.h +++ b/quantum/encoder.h @@ -18,6 +18,7 @@ #pragma once #include "quantum.h" +#include "util.h" void encoder_init(void); bool encoder_read(void); @@ -26,6 +27,31 @@ bool encoder_update_kb(uint8_t index, bool clockwise); bool encoder_update_user(uint8_t index, bool clockwise); #ifdef SPLIT_KEYBOARD + void encoder_state_raw(uint8_t* slave_state); void encoder_update_raw(uint8_t* slave_state); -#endif + +# if defined(ENCODERS_PAD_A_RIGHT) +# define NUM_ENCODERS_LEFT (sizeof(((pin_t[])ENCODERS_PAD_A)) / sizeof(pin_t)) +# define NUM_ENCODERS_RIGHT (sizeof(((pin_t[])ENCODERS_PAD_A_RIGHT)) / sizeof(pin_t)) +# else +# define NUM_ENCODERS_LEFT (sizeof(((pin_t[])ENCODERS_PAD_A)) / sizeof(pin_t)) +# define NUM_ENCODERS_RIGHT NUM_ENCODERS_LEFT +# endif +# define NUM_ENCODERS (NUM_ENCODERS_LEFT + NUM_ENCODERS_RIGHT) + +#else // SPLIT_KEYBOARD + +# define NUM_ENCODERS (sizeof(((pin_t[])ENCODERS_PAD_A)) / sizeof(pin_t)) +# define NUM_ENCODERS_LEFT NUM_ENCODERS +# define NUM_ENCODERS_RIGHT 0 + +#endif // SPLIT_KEYBOARD + +#ifndef NUM_ENCODERS +# define NUM_ENCODERS 0 +# define NUM_ENCODERS_LEFT 0 +# define NUM_ENCODERS_RIGHT 0 +#endif // NUM_ENCODERS + +#define NUM_ENCODERS_MAX_PER_SIDE MAX(NUM_ENCODERS_LEFT, NUM_ENCODERS_RIGHT) diff --git a/quantum/encoder/tests/config_mock.h b/quantum/encoder/tests/config_mock.h new file mode 100644 index 0000000000..703dcaf103 --- /dev/null +++ b/quantum/encoder/tests/config_mock.h @@ -0,0 +1,22 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + { 0 } +#define ENCODERS_PAD_B \ + { 1 } + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/config_mock_split_left_eq_right.h b/quantum/encoder/tests/config_mock_split_left_eq_right.h new file mode 100644 index 0000000000..c80ac4d519 --- /dev/null +++ b/quantum/encoder/tests/config_mock_split_left_eq_right.h @@ -0,0 +1,26 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + { 0, 2 } +#define ENCODERS_PAD_B \ + { 1, 3 } +#define ENCODERS_PAD_A_RIGHT \ + { 4, 6 } +#define ENCODERS_PAD_B_RIGHT \ + { 5, 7 } + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock_split.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/config_mock_split_left_gt_right.h b/quantum/encoder/tests/config_mock_split_left_gt_right.h new file mode 100644 index 0000000000..91d5f3d605 --- /dev/null +++ b/quantum/encoder/tests/config_mock_split_left_gt_right.h @@ -0,0 +1,26 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + { 0, 2, 4 } +#define ENCODERS_PAD_B \ + { 1, 3, 5 } +#define ENCODERS_PAD_A_RIGHT \ + { 6, 8 } +#define ENCODERS_PAD_B_RIGHT \ + { 7, 9 } + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock_split.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/config_mock_split_left_lt_right.h b/quantum/encoder/tests/config_mock_split_left_lt_right.h new file mode 100644 index 0000000000..4108a184a6 --- /dev/null +++ b/quantum/encoder/tests/config_mock_split_left_lt_right.h @@ -0,0 +1,26 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + { 0, 2 } +#define ENCODERS_PAD_B \ + { 1, 3 } +#define ENCODERS_PAD_A_RIGHT \ + { 4, 6, 8 } +#define ENCODERS_PAD_B_RIGHT \ + { 5, 7, 9 } + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock_split.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/config_mock_split_no_left.h b/quantum/encoder/tests/config_mock_split_no_left.h new file mode 100644 index 0000000000..9db7fa7e41 --- /dev/null +++ b/quantum/encoder/tests/config_mock_split_no_left.h @@ -0,0 +1,26 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + {} +#define ENCODERS_PAD_B \ + {} +#define ENCODERS_PAD_A_RIGHT \ + { 0, 2 } +#define ENCODERS_PAD_B_RIGHT \ + { 1, 3 } + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock_split.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/config_mock_split_no_right.h b/quantum/encoder/tests/config_mock_split_no_right.h new file mode 100644 index 0000000000..14f18015e6 --- /dev/null +++ b/quantum/encoder/tests/config_mock_split_no_right.h @@ -0,0 +1,26 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Here, "pins" from 0 to 31 are allowed. */ +#define ENCODERS_PAD_A \ + { 0, 2 } +#define ENCODERS_PAD_B \ + { 1, 3 } +#define ENCODERS_PAD_A_RIGHT \ + {} +#define ENCODERS_PAD_B_RIGHT \ + {} + +#ifdef __cplusplus +extern "C" { +#endif + +#include "mock_split.h" + +#ifdef __cplusplus +}; +#endif diff --git a/quantum/encoder/tests/encoder_tests.cpp b/quantum/encoder/tests/encoder_tests.cpp index 1888fdab8d..b7c18aeec0 100644 --- a/quantum/encoder/tests/encoder_tests.cpp +++ b/quantum/encoder/tests/encoder_tests.cpp @@ -30,12 +30,12 @@ struct update { bool clockwise; }; -uint8_t uidx = 0; +uint8_t updates_array_idx = 0; update updates[32]; bool encoder_update_kb(uint8_t index, bool clockwise) { - updates[uidx % 32] = {index, clockwise}; - uidx++; + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; return true; } @@ -47,15 +47,15 @@ bool setAndRead(pin_t pin, bool val) { class EncoderTest : public ::testing::Test {}; TEST_F(EncoderTest, TestInit) { - uidx = 0; + updates_array_idx = 0; encoder_init(); EXPECT_EQ(pinIsInputHigh[0], true); EXPECT_EQ(pinIsInputHigh[1], true); - EXPECT_EQ(uidx, 0); + EXPECT_EQ(updates_array_idx, 0); } TEST_F(EncoderTest, TestOneClockwise) { - uidx = 0; + updates_array_idx = 0; encoder_init(); // send 4 pulses. with resolution 4, that's one step and we should get 1 update. setAndRead(0, false); @@ -63,26 +63,26 @@ TEST_F(EncoderTest, TestOneClockwise) { setAndRead(0, true); setAndRead(1, true); - EXPECT_EQ(uidx, 1); + EXPECT_EQ(updates_array_idx, 1); EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, true); } TEST_F(EncoderTest, TestOneCounterClockwise) { - uidx = 0; + updates_array_idx = 0; encoder_init(); setAndRead(1, false); setAndRead(0, false); setAndRead(1, true); setAndRead(0, true); - EXPECT_EQ(uidx, 1); + EXPECT_EQ(updates_array_idx, 1); EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, false); } TEST_F(EncoderTest, TestTwoClockwiseOneCC) { - uidx = 0; + updates_array_idx = 0; encoder_init(); setAndRead(0, false); setAndRead(1, false); @@ -97,7 +97,7 @@ TEST_F(EncoderTest, TestTwoClockwiseOneCC) { setAndRead(1, true); setAndRead(0, true); - EXPECT_EQ(uidx, 3); + EXPECT_EQ(updates_array_idx, 3); EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, true); EXPECT_EQ(updates[1].index, 0); @@ -107,38 +107,38 @@ TEST_F(EncoderTest, TestTwoClockwiseOneCC) { } TEST_F(EncoderTest, TestNoEarly) { - uidx = 0; + updates_array_idx = 0; encoder_init(); // send 3 pulses. with resolution 4, that's not enough for a step. setAndRead(0, false); setAndRead(1, false); setAndRead(0, true); - EXPECT_EQ(uidx, 0); + EXPECT_EQ(updates_array_idx, 0); // now send last pulse setAndRead(1, true); - EXPECT_EQ(uidx, 1); + EXPECT_EQ(updates_array_idx, 1); EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, true); } TEST_F(EncoderTest, TestHalfway) { - uidx = 0; + updates_array_idx = 0; encoder_init(); // go halfway setAndRead(0, false); setAndRead(1, false); - EXPECT_EQ(uidx, 0); + EXPECT_EQ(updates_array_idx, 0); // back off setAndRead(1, true); setAndRead(0, true); - EXPECT_EQ(uidx, 0); + EXPECT_EQ(updates_array_idx, 0); // go all the way setAndRead(0, false); setAndRead(1, false); setAndRead(0, true); setAndRead(1, true); // should result in 1 update - EXPECT_EQ(uidx, 1); + EXPECT_EQ(updates_array_idx, 1); EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, true); } diff --git a/quantum/encoder/tests/encoder_tests_split_left_eq_right.cpp b/quantum/encoder/tests/encoder_tests_split_left_eq_right.cpp new file mode 100644 index 0000000000..916e47b185 --- /dev/null +++ b/quantum/encoder/tests/encoder_tests_split_left_eq_right.cpp @@ -0,0 +1,135 @@ +/* Copyright 2021 Balz Guenat + * + * 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 . + */ + +#include "gtest/gtest.h" +#include "gmock/gmock.h" +#include +#include +#include + +extern "C" { +#include "encoder.h" +#include "encoder/tests/mock_split.h" +} + +struct update { + int8_t index; + bool clockwise; +}; + +uint8_t updates_array_idx = 0; +update updates[32]; + +bool isLeftHand; + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!isLeftHand) { + // this method has no effect on slave half + printf("ignoring update on right hand (%d,%s)\n", index, clockwise ? "CW" : "CC"); + return true; + } + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; + return true; +} + +bool setAndRead(pin_t pin, bool val) { + setPin(pin, val); + return encoder_read(); +} + +class EncoderSplitTestLeftEqRight : public ::testing::Test { + protected: + void SetUp() override { + updates_array_idx = 0; + for (int i = 0; i < 32; i++) { + pinIsInputHigh[i] = 0; + pins[i] = 0; + } + } +}; + +TEST_F(EncoderSplitTestLeftEqRight, TestInitLeft) { + isLeftHand = true; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], true); + EXPECT_EQ(pinIsInputHigh[1], true); + EXPECT_EQ(pinIsInputHigh[2], true); + EXPECT_EQ(pinIsInputHigh[3], true); + EXPECT_EQ(pinIsInputHigh[4], false); + EXPECT_EQ(pinIsInputHigh[5], false); + EXPECT_EQ(pinIsInputHigh[6], false); + EXPECT_EQ(pinIsInputHigh[7], false); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftEqRight, TestInitRight) { + isLeftHand = false; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], false); + EXPECT_EQ(pinIsInputHigh[1], false); + EXPECT_EQ(pinIsInputHigh[2], false); + EXPECT_EQ(pinIsInputHigh[3], false); + EXPECT_EQ(pinIsInputHigh[4], true); + EXPECT_EQ(pinIsInputHigh[5], true); + EXPECT_EQ(pinIsInputHigh[6], true); + EXPECT_EQ(pinIsInputHigh[7], true); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftEqRight, TestOneClockwiseLeft) { + isLeftHand = true; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(0, false); + setAndRead(1, false); + setAndRead(0, true); + setAndRead(1, true); + + EXPECT_EQ(updates_array_idx, 1); // one update received + EXPECT_EQ(updates[0].index, 0); + EXPECT_EQ(updates[0].clockwise, true); +} + +TEST_F(EncoderSplitTestLeftEqRight, TestOneClockwiseRightSent) { + isLeftHand = false; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(6, false); + setAndRead(7, false); + setAndRead(6, true); + setAndRead(7, true); + + uint8_t slave_state[32] = {0}; + encoder_state_raw(slave_state); + + EXPECT_EQ(slave_state[0], 0); + EXPECT_EQ(slave_state[1], 0xFF); +} + +TEST_F(EncoderSplitTestLeftEqRight, TestMultipleEncodersRightReceived) { + isLeftHand = true; + encoder_init(); + + uint8_t slave_state[32] = {1, 0xFF}; // First right encoder is CCW, Second right encoder CW + encoder_update_raw(slave_state); + + EXPECT_EQ(updates_array_idx, 2); // two updates received, one for each changed item on the right side + EXPECT_EQ(updates[0].index, 2); + EXPECT_EQ(updates[0].clockwise, false); + EXPECT_EQ(updates[1].index, 3); + EXPECT_EQ(updates[1].clockwise, true); +} diff --git a/quantum/encoder/tests/encoder_tests_split_left_gt_right.cpp b/quantum/encoder/tests/encoder_tests_split_left_gt_right.cpp new file mode 100644 index 0000000000..7b64bb2981 --- /dev/null +++ b/quantum/encoder/tests/encoder_tests_split_left_gt_right.cpp @@ -0,0 +1,139 @@ +/* Copyright 2021 Balz Guenat + * + * 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 . + */ + +#include "gtest/gtest.h" +#include "gmock/gmock.h" +#include +#include +#include + +extern "C" { +#include "encoder.h" +#include "encoder/tests/mock_split.h" +} + +struct update { + int8_t index; + bool clockwise; +}; + +uint8_t updates_array_idx = 0; +update updates[32]; + +bool isLeftHand; + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!isLeftHand) { + // this method has no effect on slave half + printf("ignoring update on right hand (%d,%s)\n", index, clockwise ? "CW" : "CC"); + return true; + } + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; + return true; +} + +bool setAndRead(pin_t pin, bool val) { + setPin(pin, val); + return encoder_read(); +} + +class EncoderSplitTestLeftGreaterThanRight : public ::testing::Test { + protected: + void SetUp() override { + updates_array_idx = 0; + for (int i = 0; i < 32; i++) { + pinIsInputHigh[i] = 0; + pins[i] = 0; + } + } +}; + +TEST_F(EncoderSplitTestLeftGreaterThanRight, TestInitLeft) { + isLeftHand = true; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], true); + EXPECT_EQ(pinIsInputHigh[1], true); + EXPECT_EQ(pinIsInputHigh[2], true); + EXPECT_EQ(pinIsInputHigh[3], true); + EXPECT_EQ(pinIsInputHigh[4], true); + EXPECT_EQ(pinIsInputHigh[5], true); + EXPECT_EQ(pinIsInputHigh[6], false); + EXPECT_EQ(pinIsInputHigh[7], false); + EXPECT_EQ(pinIsInputHigh[8], false); + EXPECT_EQ(pinIsInputHigh[9], false); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftGreaterThanRight, TestInitRight) { + isLeftHand = false; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], false); + EXPECT_EQ(pinIsInputHigh[1], false); + EXPECT_EQ(pinIsInputHigh[2], false); + EXPECT_EQ(pinIsInputHigh[3], false); + EXPECT_EQ(pinIsInputHigh[4], false); + EXPECT_EQ(pinIsInputHigh[5], false); + EXPECT_EQ(pinIsInputHigh[6], true); + EXPECT_EQ(pinIsInputHigh[7], true); + EXPECT_EQ(pinIsInputHigh[8], true); + EXPECT_EQ(pinIsInputHigh[9], true); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftGreaterThanRight, TestOneClockwiseLeft) { + isLeftHand = true; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(0, false); + setAndRead(1, false); + setAndRead(0, true); + setAndRead(1, true); + + EXPECT_EQ(updates_array_idx, 1); // one update received + EXPECT_EQ(updates[0].index, 0); + EXPECT_EQ(updates[0].clockwise, true); +} + +TEST_F(EncoderSplitTestLeftGreaterThanRight, TestOneClockwiseRightSent) { + isLeftHand = false; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(6, false); + setAndRead(7, false); + setAndRead(6, true); + setAndRead(7, true); + + uint8_t slave_state[32] = {0}; + encoder_state_raw(slave_state); + + EXPECT_EQ(slave_state[0], 0xFF); + EXPECT_EQ(slave_state[1], 0); +} + +TEST_F(EncoderSplitTestLeftGreaterThanRight, TestMultipleEncodersRightReceived) { + isLeftHand = true; + encoder_init(); + + uint8_t slave_state[32] = {1, 0xFF}; // First right encoder is CCW, Second right encoder no change, third right encoder CW + encoder_update_raw(slave_state); + + EXPECT_EQ(updates_array_idx, 2); // two updates received, one for each changed item on the right side + EXPECT_EQ(updates[0].index, 3); + EXPECT_EQ(updates[0].clockwise, false); + EXPECT_EQ(updates[1].index, 4); + EXPECT_EQ(updates[1].clockwise, true); +} diff --git a/quantum/encoder/tests/encoder_tests_split_left_lt_right.cpp b/quantum/encoder/tests/encoder_tests_split_left_lt_right.cpp new file mode 100644 index 0000000000..a6519c5762 --- /dev/null +++ b/quantum/encoder/tests/encoder_tests_split_left_lt_right.cpp @@ -0,0 +1,139 @@ +/* Copyright 2021 Balz Guenat + * + * 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 . + */ + +#include "gtest/gtest.h" +#include "gmock/gmock.h" +#include +#include +#include + +extern "C" { +#include "encoder.h" +#include "encoder/tests/mock_split.h" +} + +struct update { + int8_t index; + bool clockwise; +}; + +uint8_t updates_array_idx = 0; +update updates[32]; + +bool isLeftHand; + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!isLeftHand) { + // this method has no effect on slave half + printf("ignoring update on right hand (%d,%s)\n", index, clockwise ? "CW" : "CC"); + return true; + } + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; + return true; +} + +bool setAndRead(pin_t pin, bool val) { + setPin(pin, val); + return encoder_read(); +} + +class EncoderSplitTestLeftLessThanRight : public ::testing::Test { + protected: + void SetUp() override { + updates_array_idx = 0; + for (int i = 0; i < 32; i++) { + pinIsInputHigh[i] = 0; + pins[i] = 0; + } + } +}; + +TEST_F(EncoderSplitTestLeftLessThanRight, TestInitLeft) { + isLeftHand = true; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], true); + EXPECT_EQ(pinIsInputHigh[1], true); + EXPECT_EQ(pinIsInputHigh[2], true); + EXPECT_EQ(pinIsInputHigh[3], true); + EXPECT_EQ(pinIsInputHigh[4], false); + EXPECT_EQ(pinIsInputHigh[5], false); + EXPECT_EQ(pinIsInputHigh[6], false); + EXPECT_EQ(pinIsInputHigh[7], false); + EXPECT_EQ(pinIsInputHigh[8], false); + EXPECT_EQ(pinIsInputHigh[9], false); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftLessThanRight, TestInitRight) { + isLeftHand = false; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], false); + EXPECT_EQ(pinIsInputHigh[1], false); + EXPECT_EQ(pinIsInputHigh[2], false); + EXPECT_EQ(pinIsInputHigh[3], false); + EXPECT_EQ(pinIsInputHigh[4], true); + EXPECT_EQ(pinIsInputHigh[5], true); + EXPECT_EQ(pinIsInputHigh[6], true); + EXPECT_EQ(pinIsInputHigh[7], true); + EXPECT_EQ(pinIsInputHigh[8], true); + EXPECT_EQ(pinIsInputHigh[9], true); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestLeftLessThanRight, TestOneClockwiseLeft) { + isLeftHand = true; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(0, false); + setAndRead(1, false); + setAndRead(0, true); + setAndRead(1, true); + + EXPECT_EQ(updates_array_idx, 1); // one update received + EXPECT_EQ(updates[0].index, 0); + EXPECT_EQ(updates[0].clockwise, true); +} + +TEST_F(EncoderSplitTestLeftLessThanRight, TestOneClockwiseRightSent) { + isLeftHand = false; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(6, false); + setAndRead(7, false); + setAndRead(6, true); + setAndRead(7, true); + + uint8_t slave_state[32] = {0}; + encoder_state_raw(slave_state); + + EXPECT_EQ(slave_state[0], 0); + EXPECT_EQ(slave_state[1], 0xFF); +} + +TEST_F(EncoderSplitTestLeftLessThanRight, TestMultipleEncodersRightReceived) { + isLeftHand = true; + encoder_init(); + + uint8_t slave_state[32] = {1, 0, 0xFF}; // First right encoder is CCW, Second right encoder no change, third right encoder CW + encoder_update_raw(slave_state); + + EXPECT_EQ(updates_array_idx, 2); // two updates received, one for each changed item on the right side + EXPECT_EQ(updates[0].index, 2); + EXPECT_EQ(updates[0].clockwise, false); + EXPECT_EQ(updates[1].index, 4); + EXPECT_EQ(updates[1].clockwise, true); +} diff --git a/quantum/encoder/tests/encoder_tests_split.cpp b/quantum/encoder/tests/encoder_tests_split_no_left.cpp similarity index 66% rename from quantum/encoder/tests/encoder_tests_split.cpp rename to quantum/encoder/tests/encoder_tests_split_no_left.cpp index 25e52c83f9..b6b2d7e2d1 100644 --- a/quantum/encoder/tests/encoder_tests_split.cpp +++ b/quantum/encoder/tests/encoder_tests_split_no_left.cpp @@ -30,7 +30,7 @@ struct update { bool clockwise; }; -uint8_t uidx = 0; +uint8_t updates_array_idx = 0; update updates[32]; bool isLeftHand; @@ -41,8 +41,8 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { printf("ignoring update on right hand (%d,%s)\n", index, clockwise ? "CW" : "CC"); return true; } - updates[uidx % 32] = {index, clockwise}; - uidx++; + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; return true; } @@ -51,10 +51,10 @@ bool setAndRead(pin_t pin, bool val) { return encoder_read(); } -class EncoderTest : public ::testing::Test { +class EncoderSplitTestNoLeft : public ::testing::Test { protected: void SetUp() override { - uidx = 0; + updates_array_idx = 0; for (int i = 0; i < 32; i++) { pinIsInputHigh[i] = 0; pins[i] = 0; @@ -62,27 +62,27 @@ class EncoderTest : public ::testing::Test { } }; -TEST_F(EncoderTest, TestInitLeft) { +TEST_F(EncoderSplitTestNoLeft, TestInitLeft) { isLeftHand = true; encoder_init(); - EXPECT_EQ(pinIsInputHigh[0], true); - EXPECT_EQ(pinIsInputHigh[1], true); - EXPECT_EQ(pinIsInputHigh[2], false); - EXPECT_EQ(pinIsInputHigh[3], false); - EXPECT_EQ(uidx, 0); -} - -TEST_F(EncoderTest, TestInitRight) { - isLeftHand = false; - encoder_init(); EXPECT_EQ(pinIsInputHigh[0], false); EXPECT_EQ(pinIsInputHigh[1], false); - EXPECT_EQ(pinIsInputHigh[2], true); - EXPECT_EQ(pinIsInputHigh[3], true); - EXPECT_EQ(uidx, 0); + EXPECT_EQ(pinIsInputHigh[2], false); + EXPECT_EQ(pinIsInputHigh[3], false); + EXPECT_EQ(updates_array_idx, 0); // no updates received } -TEST_F(EncoderTest, TestOneClockwiseLeft) { +TEST_F(EncoderSplitTestNoLeft, TestInitRight) { + isLeftHand = false; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], true); + EXPECT_EQ(pinIsInputHigh[1], true); + EXPECT_EQ(pinIsInputHigh[2], true); + EXPECT_EQ(pinIsInputHigh[3], true); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestNoLeft, TestOneClockwiseLeft) { isLeftHand = true; encoder_init(); // send 4 pulses. with resolution 4, that's one step and we should get 1 update. @@ -91,12 +91,10 @@ TEST_F(EncoderTest, TestOneClockwiseLeft) { setAndRead(0, true); setAndRead(1, true); - EXPECT_EQ(uidx, 1); - EXPECT_EQ(updates[0].index, 0); - EXPECT_EQ(updates[0].clockwise, true); + EXPECT_EQ(updates_array_idx, 0); // no updates received } -TEST_F(EncoderTest, TestOneClockwiseRightSent) { +TEST_F(EncoderSplitTestNoLeft, TestOneClockwiseRightSent) { isLeftHand = false; encoder_init(); // send 4 pulses. with resolution 4, that's one step and we should get 1 update. @@ -105,39 +103,23 @@ TEST_F(EncoderTest, TestOneClockwiseRightSent) { setAndRead(2, true); setAndRead(3, true); - uint8_t slave_state[2] = {0}; + uint8_t slave_state[32] = {0}; encoder_state_raw(slave_state); - EXPECT_EQ((int8_t)slave_state[0], -1); + EXPECT_EQ(slave_state[0], 0); + EXPECT_EQ(slave_state[1], 0xFF); } -/* this test will not work after the previous test. - * this is due to encoder_value[1] already being set to -1 when simulating the right half. - * When we now receive this update acting as the left half, there is no change. - * This is hard to mock, as the static values inside encoder.c normally exist twice, once on each half, - * but here, they only exist once. - */ - -// TEST_F(EncoderTest, TestOneClockwiseRightReceived) { -// isLeftHand = true; -// encoder_init(); - -// uint8_t slave_state[2] = {255, 0}; -// encoder_update_raw(slave_state); - -// EXPECT_EQ(uidx, 1); -// EXPECT_EQ(updates[0].index, 1); -// EXPECT_EQ(updates[0].clockwise, true); -// } - -TEST_F(EncoderTest, TestOneCounterClockwiseRightReceived) { +TEST_F(EncoderSplitTestNoLeft, TestMultipleEncodersRightReceived) { isLeftHand = true; encoder_init(); - uint8_t slave_state[2] = {0, 0}; + uint8_t slave_state[32] = {1, 0xFF}; // First right encoder is CCW, Second right encoder no change, third right encoder CW encoder_update_raw(slave_state); - EXPECT_EQ(uidx, 1); - EXPECT_EQ(updates[0].index, 1); + EXPECT_EQ(updates_array_idx, 2); // two updates received, one for each changed item on the right side + EXPECT_EQ(updates[0].index, 0); EXPECT_EQ(updates[0].clockwise, false); + EXPECT_EQ(updates[1].index, 1); + EXPECT_EQ(updates[1].clockwise, true); } diff --git a/quantum/encoder/tests/encoder_tests_split_no_right.cpp b/quantum/encoder/tests/encoder_tests_split_no_right.cpp new file mode 100644 index 0000000000..fa0a7c18a8 --- /dev/null +++ b/quantum/encoder/tests/encoder_tests_split_no_right.cpp @@ -0,0 +1,118 @@ +/* Copyright 2021 Balz Guenat + * + * 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 . + */ + +#include "gtest/gtest.h" +#include "gmock/gmock.h" +#include +#include +#include + +extern "C" { +#include "encoder.h" +#include "encoder/tests/mock_split.h" +} + +struct update { + int8_t index; + bool clockwise; +}; + +uint8_t updates_array_idx = 0; +update updates[32]; + +bool isLeftHand; + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!isLeftHand) { + // this method has no effect on slave half + printf("ignoring update on right hand (%d,%s)\n", index, clockwise ? "CW" : "CC"); + return true; + } + updates[updates_array_idx % 32] = {index, clockwise}; + updates_array_idx++; + return true; +} + +bool setAndRead(pin_t pin, bool val) { + setPin(pin, val); + return encoder_read(); +} + +class EncoderSplitTestNoRight : public ::testing::Test { + protected: + void SetUp() override { + updates_array_idx = 0; + for (int i = 0; i < 32; i++) { + pinIsInputHigh[i] = 0; + pins[i] = 0; + } + } +}; + +TEST_F(EncoderSplitTestNoRight, TestInitLeft) { + isLeftHand = true; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], true); + EXPECT_EQ(pinIsInputHigh[1], true); + EXPECT_EQ(pinIsInputHigh[2], true); + EXPECT_EQ(pinIsInputHigh[3], true); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestNoRight, TestInitRight) { + isLeftHand = false; + encoder_init(); + EXPECT_EQ(pinIsInputHigh[0], false); + EXPECT_EQ(pinIsInputHigh[1], false); + EXPECT_EQ(pinIsInputHigh[2], false); + EXPECT_EQ(pinIsInputHigh[3], false); + EXPECT_EQ(updates_array_idx, 0); // no updates received +} + +TEST_F(EncoderSplitTestNoRight, TestOneClockwiseLeft) { + isLeftHand = true; + encoder_init(); + // send 4 pulses. with resolution 4, that's one step and we should get 1 update. + setAndRead(0, false); + setAndRead(1, false); + setAndRead(0, true); + setAndRead(1, true); + + EXPECT_EQ(updates_array_idx, 1); // one updates received + EXPECT_EQ(updates[0].index, 0); + EXPECT_EQ(updates[0].clockwise, true); +} + +TEST_F(EncoderSplitTestNoRight, TestOneClockwiseRightSent) { + isLeftHand = false; + encoder_init(); + + uint8_t slave_state[32] = {0xAA, 0xAA}; + encoder_state_raw(slave_state); + + EXPECT_EQ(slave_state[0], 0xAA); + EXPECT_EQ(slave_state[1], 0xAA); +} + +TEST_F(EncoderSplitTestNoRight, TestMultipleEncodersRightReceived) { + isLeftHand = true; + encoder_init(); + + uint8_t slave_state[32] = {1, 0xFF}; // These values would trigger updates if there were encoders on the other side + encoder_update_raw(slave_state); + + EXPECT_EQ(updates_array_idx, 0); // no updates received -- no right-hand encoders +} diff --git a/quantum/encoder/tests/mock.h b/quantum/encoder/tests/mock.h index dbc25a0846..80c336b5ef 100644 --- a/quantum/encoder/tests/mock.h +++ b/quantum/encoder/tests/mock.h @@ -19,12 +19,6 @@ #include #include -/* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ - { 0 } -#define ENCODERS_PAD_B \ - { 1 } - typedef uint8_t pin_t; extern bool pins[]; diff --git a/quantum/encoder/tests/mock_split.h b/quantum/encoder/tests/mock_split.h index 0ae62652f9..2fc12f1830 100644 --- a/quantum/encoder/tests/mock_split.h +++ b/quantum/encoder/tests/mock_split.h @@ -20,20 +20,10 @@ #include #define SPLIT_KEYBOARD -/* Here, "pins" from 0 to 31 are allowed. */ -#define ENCODERS_PAD_A \ - { 0 } -#define ENCODERS_PAD_B \ - { 1 } -#define ENCODERS_PAD_A_RIGHT \ - { 2 } -#define ENCODERS_PAD_B_RIGHT \ - { 3 } - typedef uint8_t pin_t; -extern bool isLeftHand; -void encoder_state_raw(uint8_t* slave_state); -void encoder_update_raw(uint8_t* slave_state); + +void encoder_state_raw(uint8_t* slave_state); +void encoder_update_raw(uint8_t* slave_state); extern bool pins[]; extern bool pinIsInputHigh[]; diff --git a/quantum/encoder/tests/rules.mk b/quantum/encoder/tests/rules.mk index b826ce3aed..6a2611952c 100644 --- a/quantum/encoder/tests/rules.mk +++ b/quantum/encoder/tests/rules.mk @@ -1,13 +1,58 @@ -encoder_DEFS := -DENCODER_MOCK_SINGLE +encoder_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SINGLE +encoder_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock.h encoder_SRC := \ + platforms/test/timer.c \ $(QUANTUM_PATH)/encoder/tests/mock.c \ $(QUANTUM_PATH)/encoder/tests/encoder_tests.cpp \ $(QUANTUM_PATH)/encoder.c -encoder_split_DEFS := -DENCODER_MOCK_SPLIT +encoder_split_left_eq_right_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SPLIT +encoder_split_left_eq_right_INC := $(QUANTUM_PATH)/split_common +encoder_split_left_eq_right_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock_split_left_eq_right.h -encoder_split_SRC := \ +encoder_split_left_eq_right_SRC := \ + platforms/test/timer.c \ $(QUANTUM_PATH)/encoder/tests/mock_split.c \ - $(QUANTUM_PATH)/encoder/tests/encoder_tests_split.cpp \ + $(QUANTUM_PATH)/encoder/tests/encoder_tests_split_left_eq_right.cpp \ + $(QUANTUM_PATH)/encoder.c + +encoder_split_left_gt_right_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SPLIT +encoder_split_left_gt_right_INC := $(QUANTUM_PATH)/split_common +encoder_split_left_gt_right_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock_split_left_gt_right.h + +encoder_split_left_gt_right_SRC := \ + platforms/test/timer.c \ + $(QUANTUM_PATH)/encoder/tests/mock_split.c \ + $(QUANTUM_PATH)/encoder/tests/encoder_tests_split_left_gt_right.cpp \ + $(QUANTUM_PATH)/encoder.c + +encoder_split_left_lt_right_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SPLIT +encoder_split_left_lt_right_INC := $(QUANTUM_PATH)/split_common +encoder_split_left_lt_right_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock_split_left_lt_right.h + +encoder_split_left_lt_right_SRC := \ + platforms/test/timer.c \ + $(QUANTUM_PATH)/encoder/tests/mock_split.c \ + $(QUANTUM_PATH)/encoder/tests/encoder_tests_split_left_lt_right.cpp \ + $(QUANTUM_PATH)/encoder.c + +encoder_split_no_left_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SPLIT +encoder_split_no_left_INC := $(QUANTUM_PATH)/split_common +encoder_split_no_left_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock_split_no_left.h + +encoder_split_no_left_SRC := \ + platforms/test/timer.c \ + $(QUANTUM_PATH)/encoder/tests/mock_split.c \ + $(QUANTUM_PATH)/encoder/tests/encoder_tests_split_no_left.cpp \ + $(QUANTUM_PATH)/encoder.c + +encoder_split_no_right_DEFS := -DENCODER_TESTS -DENCODER_ENABLE -DENCODER_MOCK_SPLIT +encoder_split_no_right_INC := $(QUANTUM_PATH)/split_common +encoder_split_no_right_CONFIG := $(QUANTUM_PATH)/encoder/tests/config_mock_split_no_right.h + +encoder_split_no_right_SRC := \ + platforms/test/timer.c \ + $(QUANTUM_PATH)/encoder/tests/mock_split.c \ + $(QUANTUM_PATH)/encoder/tests/encoder_tests_split_no_right.cpp \ $(QUANTUM_PATH)/encoder.c diff --git a/quantum/encoder/tests/testlist.mk b/quantum/encoder/tests/testlist.mk index 1be9f4a054..6b2fd84d96 100644 --- a/quantum/encoder/tests/testlist.mk +++ b/quantum/encoder/tests/testlist.mk @@ -1,3 +1,7 @@ TEST_LIST += \ encoder \ - encoder_split + encoder_split_left_eq_right \ + encoder_split_left_gt_right \ + encoder_split_left_lt_right \ + encoder_split_no_left \ + encoder_split_no_right diff --git a/quantum/split_common/transactions.c b/quantum/split_common/transactions.c index cffbccaeee..105bf918cb 100644 --- a/quantum/split_common/transactions.c +++ b/quantum/split_common/transactions.c @@ -180,7 +180,7 @@ static void master_matrix_handlers_slave(matrix_row_t master_matrix[], matrix_ro static bool encoder_handlers_master(matrix_row_t master_matrix[], matrix_row_t slave_matrix[]) { static uint32_t last_update = 0; - uint8_t temp_state[NUMBER_OF_ENCODERS]; + uint8_t temp_state[NUM_ENCODERS_MAX_PER_SIDE]; bool okay = read_if_checksum_mismatch(GET_ENCODERS_CHECKSUM, GET_ENCODERS_DATA, &last_update, temp_state, split_shmem->encoders.state, sizeof(temp_state)); if (okay) encoder_update_raw(temp_state); @@ -188,7 +188,7 @@ static bool encoder_handlers_master(matrix_row_t master_matrix[], matrix_row_t s } static void encoder_handlers_slave(matrix_row_t master_matrix[], matrix_row_t slave_matrix[]) { - uint8_t encoder_state[NUMBER_OF_ENCODERS]; + uint8_t encoder_state[NUM_ENCODERS_MAX_PER_SIDE]; encoder_state_raw(encoder_state); // Always prepare the encoder state for read. memcpy(split_shmem->encoders.state, encoder_state, sizeof(encoder_state)); diff --git a/quantum/split_common/transport.h b/quantum/split_common/transport.h index 26bd136728..e62679990a 100644 --- a/quantum/split_common/transport.h +++ b/quantum/split_common/transport.h @@ -42,7 +42,6 @@ bool transport_execute_transaction(int8_t id, const void *initiator2target_buf, #ifdef ENCODER_ENABLE # include "encoder.h" -# define NUMBER_OF_ENCODERS (sizeof((pin_t[])ENCODERS_PAD_A) / sizeof(pin_t)) #endif // ENCODER_ENABLE #ifdef BACKLIGHT_ENABLE @@ -67,7 +66,7 @@ typedef struct _split_master_matrix_sync_t { #ifdef ENCODER_ENABLE typedef struct _split_slave_encoder_sync_t { uint8_t checksum; - uint8_t state[NUMBER_OF_ENCODERS]; + uint8_t state[NUM_ENCODERS_MAX_PER_SIDE]; } split_slave_encoder_sync_t; #endif // ENCODER_ENABLE diff --git a/quantum/util.h b/quantum/util.h index bef3b9abe3..ab96ce4bde 100644 --- a/quantum/util.h +++ b/quantum/util.h @@ -24,3 +24,11 @@ along with this program. If not, see . // convert to string #define STR(s) XSTR(s) #define XSTR(s) #s + +#if !defined(MIN) +# define MIN(x, y) (((x) < (y)) ? (x) : (y)) +#endif + +#if !defined(MAX) +# define MAX(x, y) (((x) > (y)) ? (x) : (y)) +#endif From d92994be71d1f9a6e353d218f17de43f4dcf4017 Mon Sep 17 00:00:00 2001 From: Callum Hart Date: Tue, 8 Mar 2022 16:47:57 +0000 Subject: [PATCH 057/699] [Keyboard] Add Novus 60% keyboard (#16473) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/cutie_club/novus/config.h | 56 ++++ keyboards/cutie_club/novus/info.json | 277 ++++++++++++++++++ .../cutie_club/novus/keymaps/default/keymap.c | 33 +++ .../cutie_club/novus/keymaps/via/keymap.c | 47 +++ .../cutie_club/novus/keymaps/via/rules.mk | 1 + keyboards/cutie_club/novus/novus.c | 17 ++ keyboards/cutie_club/novus/novus.h | 33 +++ keyboards/cutie_club/novus/readme.md | 26 ++ keyboards/cutie_club/novus/rules.mk | 18 ++ 9 files changed, 508 insertions(+) create mode 100644 keyboards/cutie_club/novus/config.h create mode 100644 keyboards/cutie_club/novus/info.json create mode 100644 keyboards/cutie_club/novus/keymaps/default/keymap.c create mode 100644 keyboards/cutie_club/novus/keymaps/via/keymap.c create mode 100644 keyboards/cutie_club/novus/keymaps/via/rules.mk create mode 100644 keyboards/cutie_club/novus/novus.c create mode 100644 keyboards/cutie_club/novus/novus.h create mode 100644 keyboards/cutie_club/novus/readme.md create mode 100644 keyboards/cutie_club/novus/rules.mk diff --git a/keyboards/cutie_club/novus/config.h b/keyboards/cutie_club/novus/config.h new file mode 100644 index 0000000000..842ec901d0 --- /dev/null +++ b/keyboards/cutie_club/novus/config.h @@ -0,0 +1,56 @@ +/* +Copyright 2022 Cutie Club + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFB9C +#define PRODUCT_ID 0x3F42 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Cutie Club +#define PRODUCT Novus + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { F0, F1, F4, F5, F6 } +#define MATRIX_COL_PINS { B6, C6, C7, B2, B3, D0, D1, D2, D3, D7, B4, B5, D5, D4, D6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 diff --git a/keyboards/cutie_club/novus/info.json b/keyboards/cutie_club/novus/info.json new file mode 100644 index 0000000000..cae4e25c89 --- /dev/null +++ b/keyboards/cutie_club/novus/info.json @@ -0,0 +1,277 @@ +{ + "keyboard_name": "Novus", + "url": "", + "maintainer": "Cutie Club", + "layouts": { + "LAYOUT_all": { + "layout": [ + { + "x": 0, + "y": 0 + }, + { + "x": 1, + "y": 0 + }, + { + "x": 2, + "y": 0 + }, + { + "x": 3, + "y": 0 + }, + { + "x": 4, + "y": 0 + }, + { + "x": 5, + "y": 0 + }, + { + "x": 6, + "y": 0 + }, + { + "x": 7, + "y": 0 + }, + { + "x": 8, + "y": 0 + }, + { + "x": 9, + "y": 0 + }, + { + "x": 10, + "y": 0 + }, + { + "x": 11, + "y": 0 + }, + { + "x": 12, + "y": 0 + }, + { + "x": 13, + "y": 0 + }, + { + "x": 14, + "y": 0 + }, + { + "x": 0, + "y": 1, + "w": 1.5 + }, + { + "x": 1.5, + "y": 1 + }, + { + "x": 2.5, + "y": 1 + }, + { + "x": 3.5, + "y": 1 + }, + { + "x": 4.5, + "y": 1 + }, + { + "x": 5.5, + "y": 1 + }, + { + "x": 6.5, + "y": 1 + }, + { + "x": 7.5, + "y": 1 + }, + { + "x": 8.5, + "y": 1 + }, + { + "x": 9.5, + "y": 1 + }, + { + "x": 10.5, + "y": 1 + }, + { + "x": 11.5, + "y": 1 + }, + { + "x": 12.5, + "y": 1 + }, + { + "x": 13.5, + "y": 1, + "w": 1.5 + }, + { + "x": 0, + "y": 2, + "w": 1.75 + }, + { + "x": 1.75, + "y": 2 + }, + { + "x": 2.75, + "y": 2 + }, + { + "x": 3.75, + "y": 2 + }, + { + "x": 4.75, + "y": 2 + }, + { + "x": 5.75, + "y": 2 + }, + { + "x": 6.75, + "y": 2 + }, + { + "x": 7.75, + "y": 2 + }, + { + "x": 8.75, + "y": 2 + }, + { + "x": 9.75, + "y": 2 + }, + { + "x": 10.75, + "y": 2 + }, + { + "x": 11.75, + "y": 2 + }, + { + "x": 12.75, + "y": 2, + "w": 2.25 + }, + { + "x": 0, + "y": 3, + "w": 2.25 + }, + { + "x": 2.25, + "y": 3 + }, + { + "x": 3.25, + "y": 3 + }, + { + "x": 4.25, + "y": 3 + }, + { + "x": 5.25, + "y": 3 + }, + { + "x": 6.25, + "y": 3 + }, + { + "x": 7.25, + "y": 3 + }, + { + "x": 8.25, + "y": 3 + }, + { + "x": 9.25, + "y": 3 + }, + { + "x": 10.25, + "y": 3 + }, + { + "x": 11.25, + "y": 3 + }, + { + "x": 12.25, + "y": 3, + "w": 1.75 + }, + { + "x": 14, + "y": 3 + }, + { + "x": 0, + "y": 4, + "w": 1.25 + }, + { + "x": 1.25, + "y": 4, + "w": 1.25 + }, + { + "x": 2.5, + "y": 4, + "w": 1.25 + }, + { + "x": 3.75, + "y": 4, + "w": 6.25 + }, + { + "x": 10, + "y": 4, + "w": 1.25 + }, + { + "x": 11.25, + "y": 4, + "w": 1.25 + }, + { + "x": 12.5, + "y": 4, + "w": 1.25 + }, + { + "x": 13.75, + "y": 4, + "w": 1.25 + } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/cutie_club/novus/keymaps/default/keymap.c b/keyboards/cutie_club/novus/keymaps/default/keymap.c new file mode 100644 index 0000000000..feeb27de8c --- /dev/null +++ b/keyboards/cutie_club/novus/keymaps/default/keymap.c @@ -0,0 +1,33 @@ +/* Copyright 2022 Cutie Club + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, 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, + 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL + ), + [1] = LAYOUT_all( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/cutie_club/novus/keymaps/via/keymap.c b/keyboards/cutie_club/novus/keymaps/via/keymap.c new file mode 100644 index 0000000000..24e55dc1cf --- /dev/null +++ b/keyboards/cutie_club/novus/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Cutie Club + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, 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, + 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL + ), + [1] = LAYOUT_all( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/cutie_club/novus/keymaps/via/rules.mk b/keyboards/cutie_club/novus/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/cutie_club/novus/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/cutie_club/novus/novus.c b/keyboards/cutie_club/novus/novus.c new file mode 100644 index 0000000000..2fe5fbfc8f --- /dev/null +++ b/keyboards/cutie_club/novus/novus.c @@ -0,0 +1,17 @@ +/* Copyright 2022 Cutie Club + * + * 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 . + */ + +#include "novus.h" diff --git a/keyboards/cutie_club/novus/novus.h b/keyboards/cutie_club/novus/novus.h new file mode 100644 index 0000000000..31ed6a8ac6 --- /dev/null +++ b/keyboards/cutie_club/novus/novus.h @@ -0,0 +1,33 @@ +/* Copyright 2022 Cutie Club + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14, \ + k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, \ + k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, \ + k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, \ + k04_00, k04_01, k04_02, k04_05, k04_09, k04_10, k04_11, k04_12 \ +) { \ + { k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14 }, \ + { k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, KC_NO }, \ + { k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, KC_NO, KC_NO }, \ + { k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, KC_NO, KC_NO }, \ + { k04_00, k04_01, k04_02, KC_NO, KC_NO, k04_05, KC_NO, KC_NO, KC_NO, k04_09, k04_10, k04_11, k04_12, KC_NO, KC_NO } \ +} diff --git a/keyboards/cutie_club/novus/readme.md b/keyboards/cutie_club/novus/readme.md new file mode 100644 index 0000000000..94e284e33e --- /dev/null +++ b/keyboards/cutie_club/novus/readme.md @@ -0,0 +1,26 @@ +# Novus + +![Novus](https://i.imgur.com/kuCDFb0h.png) + +Novus 60% Keyboard + +* Keyboard Maintainer: [Cutie Club](https://github.com/cutie-club) +* Hardware Supported: Atmega32u4 based pcb for Novus keyboard +* Hardware Availability: https://mechsandco.com/products/gb-novus60-keyboard + +Make example for this keyboard (after setting up your build environment): + + make cutie_club/novus:default + +Flashing example for this keyboard: + + make cutie_club/novus:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Using the default keymaps you can enter the bootloader in 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the top left key) and plug in the keyboard +* **Physical reset button**: Press the button on the back of the PCB \ No newline at end of file diff --git a/keyboards/cutie_club/novus/rules.mk b/keyboards/cutie_club/novus/rules.mk new file mode 100644 index 0000000000..1275531ef6 --- /dev/null +++ b/keyboards/cutie_club/novus/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 40d6766576da5f9116bb16fb73c0742f4e4ce3b8 Mon Sep 17 00:00:00 2001 From: JX <572673807@qq.com> Date: Wed, 9 Mar 2022 01:03:05 +0800 Subject: [PATCH 058/699] [Keyboard] Add Y&R Studio zhou65 keyboard (#14192) Co-authored-by: Drashna Jaelre Co-authored-by: Nick Brassel Co-authored-by: Ryan --- keyboards/yandrstudio/zhou65/config.h | 38 +++++++++ keyboards/yandrstudio/zhou65/f401/board.h | 21 +++++ keyboards/yandrstudio/zhou65/f401/config.h | 33 ++++++++ keyboards/yandrstudio/zhou65/f401/halconf.h | 33 ++++++++ keyboards/yandrstudio/zhou65/f401/mcuconf.h | 81 +++++++++++++++++++ keyboards/yandrstudio/zhou65/f401/rules.mk | 6 ++ keyboards/yandrstudio/zhou65/info.json | 10 +++ .../zhou65/keymaps/default/keymap.c | 32 ++++++++ .../yandrstudio/zhou65/keymaps/via/keymap.c | 32 ++++++++ .../yandrstudio/zhou65/keymaps/via/rules.mk | 1 + keyboards/yandrstudio/zhou65/readme.md | 22 +++++ keyboards/yandrstudio/zhou65/rules.mk | 12 +++ keyboards/yandrstudio/zhou65/zhou65.c | 17 ++++ keyboards/yandrstudio/zhou65/zhou65.h | 32 ++++++++ 14 files changed, 370 insertions(+) create mode 100644 keyboards/yandrstudio/zhou65/config.h create mode 100644 keyboards/yandrstudio/zhou65/f401/board.h create mode 100644 keyboards/yandrstudio/zhou65/f401/config.h create mode 100644 keyboards/yandrstudio/zhou65/f401/halconf.h create mode 100644 keyboards/yandrstudio/zhou65/f401/mcuconf.h create mode 100644 keyboards/yandrstudio/zhou65/f401/rules.mk create mode 100644 keyboards/yandrstudio/zhou65/info.json create mode 100644 keyboards/yandrstudio/zhou65/keymaps/default/keymap.c create mode 100644 keyboards/yandrstudio/zhou65/keymaps/via/keymap.c create mode 100644 keyboards/yandrstudio/zhou65/keymaps/via/rules.mk create mode 100644 keyboards/yandrstudio/zhou65/readme.md create mode 100644 keyboards/yandrstudio/zhou65/rules.mk create mode 100644 keyboards/yandrstudio/zhou65/zhou65.c create mode 100644 keyboards/yandrstudio/zhou65/zhou65.h diff --git a/keyboards/yandrstudio/zhou65/config.h b/keyboards/yandrstudio/zhou65/config.h new file mode 100644 index 0000000000..7dbbd037ec --- /dev/null +++ b/keyboards/yandrstudio/zhou65/config.h @@ -0,0 +1,38 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xAA96 +#define PRODUCT_ID 0xAAAD +#define DEVICE_VER 0x0001 +#define MANUFACTURER ZHOU_Y&R +#define PRODUCT zhou65 + +/* enable the nkro when using the VIA. */ +#define FORCE_NKRO + +/* fix VIA RGB_light */ +#define VIA_HAS_BROKEN_KEYCODES + + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define USB_POLLING_INTERVAL_MS 1 +#define QMK_KEYS_PER_SCAN 4 diff --git a/keyboards/yandrstudio/zhou65/f401/board.h b/keyboards/yandrstudio/zhou65/f401/board.h new file mode 100644 index 0000000000..80dd97ed57 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/f401/board.h @@ -0,0 +1,21 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#include_next "board.h" + +#undef STM32_HSECLK +#define STM32_HSECLK 8000000 diff --git a/keyboards/yandrstudio/zhou65/f401/config.h b/keyboards/yandrstudio/zhou65/f401/config.h new file mode 100644 index 0000000000..d5214b75d0 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/f401/config.h @@ -0,0 +1,33 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { A2, A1, B8, B7, C15 } +#define MATRIX_COL_PINS { B9, B6, B5, B4, B3, B1, B0, A7, A6, A5, A4, A3, A8, B15, B14 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +#define LED_CAPS_LOCK_PIN A15 +#define LED_PIN_ON_STATE 0 + diff --git a/keyboards/yandrstudio/zhou65/f401/halconf.h b/keyboards/yandrstudio/zhou65/f401/halconf.h new file mode 100644 index 0000000000..cf7665e3f7 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/f401/halconf.h @@ -0,0 +1,33 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + + +#pragma once +#include_next + + +#undef SERIAL_USB_BUFFERS_SIZE +#define SERIAL_USB_BUFFERS_SIZE 256 + +#undef SERIAL_BUFFERS_SIZE +#define SERIAL_BUFFERS_SIZE 128 + +#undef SPI_USE_WAIT +#define SPI_USE_WAIT TRUE + +#undef SPI_SELECT_MODE +#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD + diff --git a/keyboards/yandrstudio/zhou65/f401/mcuconf.h b/keyboards/yandrstudio/zhou65/f401/mcuconf.h new file mode 100644 index 0000000000..435455d3a9 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/f401/mcuconf.h @@ -0,0 +1,81 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_NO_INIT +#undef STM32_HSI_ENABLED +#undef STM32_LSI_ENABLED +#undef STM32_HSE_ENABLED +#undef STM32_LSE_ENABLED +#undef STM32_CLOCK48_REQUIRED +#undef STM32_SW +#undef STM32_PLLSRC +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE +#undef STM32_HPRE +#undef STM32_PPRE1 +#undef STM32_PPRE2 +#undef STM32_RTCSEL +#undef STM32_RTCPRE_VALUE +#undef STM32_MCO1SEL +#undef STM32_MCO1PRE +#undef STM32_MCO2SEL +#undef STM32_MCO2PRE +#undef STM32_I2SSRC +#undef STM32_PLLI2SN_VALUE +#undef STM32_PLLI2SR_VALUE +#undef STM32_PVD_ENABLE +#undef STM32_PLS +#undef STM32_BKPRAM_ENABLE + +#define STM32_NO_INIT FALSE +#define STM32_HSI_ENABLED TRUE +#define STM32_LSI_ENABLED TRUE +#define STM32_HSE_ENABLED TRUE +#define STM32_LSE_ENABLED FALSE +#define STM32_CLOCK48_REQUIRED TRUE +#define STM32_SW STM32_SW_PLL +#define STM32_PLLSRC STM32_PLLSRC_HSE +#define STM32_PLLM_VALUE 8 +#define STM32_PLLN_VALUE 192 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 4 +// AHB prescaler value. +#define STM32_HPRE STM32_HPRE_DIV1 +//APB1 prescaler value. +#define STM32_PPRE1 STM32_PPRE1_DIV4 +//APB2 prescaler value. +#define STM32_PPRE2 STM32_PPRE2_DIV2 +#define STM32_RTCSEL STM32_RTCSEL_LSI +#define STM32_RTCPRE_VALUE 8 +#define STM32_MCO1SEL STM32_MCO1SEL_HSI +#define STM32_MCO1PRE STM32_MCO1PRE_DIV1 +#define STM32_MCO2SEL STM32_MCO2SEL_SYSCLK +#define STM32_MCO2PRE STM32_MCO2PRE_DIV5 +#define STM32_I2SSRC STM32_I2SSRC_CKIN +#define STM32_PLLI2SN_VALUE 192 +#define STM32_PLLI2SR_VALUE 5 +#define STM32_PVD_ENABLE FALSE +#define STM32_PLS STM32_PLS_LEV0 +#define STM32_BKPRAM_ENABLE FALSE + + + diff --git a/keyboards/yandrstudio/zhou65/f401/rules.mk b/keyboards/yandrstudio/zhou65/f401/rules.mk new file mode 100644 index 0000000000..3e060b4195 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/f401/rules.mk @@ -0,0 +1,6 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + diff --git a/keyboards/yandrstudio/zhou65/info.json b/keyboards/yandrstudio/zhou65/info.json new file mode 100644 index 0000000000..640fb7ad68 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "zhou65", + "url": "https://github.com/Oh-My-Mechanical-Keyboard ", + "maintainer": "Jason Ren (biu)", + "layouts": { + "LAYOUT": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"0,10", "x":10, "y":0}, {"label":"0,11", "x":11, "y":0}, {"label":"0,12", "x":12, "y":0}, {"label":"0,13", "x":13, "y":0, "w":2}, {"label":"0,14", "x":15, "y":0}, {"label":"1,0", "x":0, "y":1, "w":1.5}, {"label":"1,1", "x":1.5, "y":1}, {"label":"1,2", "x":2.5, "y":1}, {"label":"1,3", "x":3.5, "y":1}, {"label":"1,4", "x":4.5, "y":1}, {"label":"1,5", "x":5.5, "y":1}, {"label":"1,6", "x":6.5, "y":1}, {"label":"1,7", "x":7.5, "y":1}, {"label":"1,8", "x":8.5, "y":1}, {"label":"1,9", "x":9.5, "y":1}, {"label":"1,10", "x":10.5, "y":1}, {"label":"1,11", "x":11.5, "y":1}, {"label":"1,12", "x":12.5, "y":1}, {"label":"1,13", "x":13.5, "y":1, "w":1.5}, {"label":"1,14", "x":15, "y":1}, {"label":"2,0", "x":0, "y":2, "w":1.75}, {"label":"2,1", "x":1.75, "y":2}, {"label":"2,2", "x":2.75, "y":2}, {"label":"2,3", "x":3.75, "y":2}, {"label":"2,4", "x":4.75, "y":2}, {"label":"2,5", "x":5.75, "y":2}, {"label":"2,6", "x":6.75, "y":2}, {"label":"2,7", "x":7.75, "y":2}, {"label":"2,8", "x":8.75, "y":2}, {"label":"2,9", "x":9.75, "y":2}, {"label":"2,10", "x":10.75, "y":2}, {"label":"2,11", "x":11.75, "y":2}, {"label":"2,13", "x":12.75, "y":2, "w":2.25}, {"label":"2,14", "x":15, "y":2}, {"label":"3,0", "x":0, "y":3, "w":2.25}, {"label":"3,1", "x":2.25, "y":3}, {"label":"3,2", "x":3.25, "y":3}, {"label":"3,3", "x":4.25, "y":3}, {"label":"3,4", "x":5.25, "y":3}, {"label":"3,5", "x":6.25, "y":3}, {"label":"3,6", "x":7.25, "y":3}, {"label":"3,7", "x":8.25, "y":3}, {"label":"3,8", "x":9.25, "y":3}, {"label":"3,9", "x":10.25, "y":3}, {"label":"3,10", "x":11.25, "y":3}, {"label":"3,12", "x":12.25, "y":3, "w":1.75}, {"label":"3,13", "x":14, "y":3}, {"label":"3,14", "x":15, "y":3}, {"label":"4,0", "x":0, "y":4, "w":1.25}, {"label":"4,1", "x":1.25, "y":4, "w":1.25}, {"label":"4,2", "x":2.5, "y":4, "w":1.25}, {"label":"4,5", "x":3.75, "y":4, "w":6.25}, {"label":"4,9", "x":10, "y":4, "w":1.25}, {"label":"4,10", "x":11.25, "y":4, "w":1.25}, {"label":"4,12", "x":13, "y":4}, {"label":"4,13", "x":14, "y":4}, {"label":"4,14", "x":15, "y":4}] + } + } +} \ No newline at end of file diff --git a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c new file mode 100644 index 0000000000..b06ae7e70b --- /dev/null +++ b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + 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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), + + LAYOUT( + KC_GRV, 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, RESET, 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), +}; diff --git a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c new file mode 100644 index 0000000000..b06ae7e70b --- /dev/null +++ b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + 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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), + + LAYOUT( + KC_GRV, 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, RESET, 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), +}; diff --git a/keyboards/yandrstudio/zhou65/keymaps/via/rules.mk b/keyboards/yandrstudio/zhou65/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/yandrstudio/zhou65/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/yandrstudio/zhou65/readme.md b/keyboards/yandrstudio/zhou65/readme.md new file mode 100644 index 0000000000..84c889f5ab --- /dev/null +++ b/keyboards/yandrstudio/zhou65/readme.md @@ -0,0 +1,22 @@ +# zhou65 version 1.0 + +A 65% keys keyboard with rgb (keys). +This keyboard use 8mhz HSE and STM32F401 as MCU. + +- Keyboard Maintainer: https://github.com/jiaxin96 +- Hardware Supported: zhou65 +- Hardware Availability: https://github.com/Oh-My-Mechanical-Keyboard + +Make example for this keyboard (after setting up your build environment): + + make yandrstudio/zhou65/f401:default + +See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key which is Escape in this keyboard) and plug in the keyboard +* **Physical reset pins**: Short circuit the `bt0` and `vcc` pins on the back of the PCB and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. diff --git a/keyboards/yandrstudio/zhou65/rules.mk b/keyboards/yandrstudio/zhou65/rules.mk new file mode 100644 index 0000000000..b851d0ab39 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/rules.mk @@ -0,0 +1,12 @@ +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/yandrstudio/zhou65/zhou65.c b/keyboards/yandrstudio/zhou65/zhou65.c new file mode 100644 index 0000000000..e527550c9d --- /dev/null +++ b/keyboards/yandrstudio/zhou65/zhou65.c @@ -0,0 +1,17 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ + +#include "zhou65.h" diff --git a/keyboards/yandrstudio/zhou65/zhou65.h b/keyboards/yandrstudio/zhou65/zhou65.h new file mode 100644 index 0000000000..2f22710f46 --- /dev/null +++ b/keyboards/yandrstudio/zhou65/zhou65.h @@ -0,0 +1,32 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT(\ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014,\ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114,\ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214,\ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K312, K313, K314,\ + K400, K401, K402, K405, K409, K410, K412, K413, K414\ +) {\ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 },\ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 },\ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213, K214 },\ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, KC_NO, K312, K313, K314 },\ + { K400, K401, K402, KC_NO, KC_NO, K405, KC_NO, KC_NO, KC_NO, K409, K410, KC_NO, K412, K413, K414 }\ +} From 65eb0f939fb35de66e6772ca358311f2c12344f6 Mon Sep 17 00:00:00 2001 From: drewpyun <48503175+drewpyun@users.noreply.github.com> Date: Tue, 8 Mar 2022 13:56:48 -0500 Subject: [PATCH 059/699] [keymap] Add via support for Iskar (#16575) * iskar initial commit * testing * added info.json to iskar * Updated read.me * updated info.json removed unnessary keymap folders, fixed rules.mk, added second layer to default layout, added vendor/product id, tested and compiled * Update readme.md * Update readme.md * updated info.json, formatted files according to PR checklist * Update keyboards/drewkeys/iskar/rules.mk Co-authored-by: Drashna Jaelre * Update keyboards/drewkeys/iskar/readme.md Co-authored-by: Ryan * added keymaps onto iskar.h that was referenced in info.json * changed filename to lowercase to match guidelines * initial commit of VIA files * edited via keymap Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/drewkeys/iskar/keymaps/via/keymap.c | 47 +++++++++++++++++++ .../drewkeys/iskar/keymaps/via/readme.md | 1 + keyboards/drewkeys/iskar/keymaps/via/rules.mk | 2 + 3 files changed, 50 insertions(+) create mode 100644 keyboards/drewkeys/iskar/keymaps/via/keymap.c create mode 100644 keyboards/drewkeys/iskar/keymaps/via/readme.md create mode 100644 keyboards/drewkeys/iskar/keymaps/via/rules.mk diff --git a/keyboards/drewkeys/iskar/keymaps/via/keymap.c b/keyboards/drewkeys/iskar/keymaps/via/keymap.c new file mode 100644 index 0000000000..ba77cb4077 --- /dev/null +++ b/keyboards/drewkeys/iskar/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2021 Drewkeys + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] LAYOUT( + QK_GESC, 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_DEL, KC_BSPC, KC_HOME, + 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, KC_INS, + 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_PGUP, + 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, KC_PGDN, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] LAYOUT( + KC_GRAVE, 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, RESET, 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, 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 + ), + [2] LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/drewkeys/iskar/keymaps/via/readme.md b/keyboards/drewkeys/iskar/keymaps/via/readme.md new file mode 100644 index 0000000000..9b6e8c67b5 --- /dev/null +++ b/keyboards/drewkeys/iskar/keymaps/via/readme.md @@ -0,0 +1 @@ +# The default keymap for iskar for via diff --git a/keyboards/drewkeys/iskar/keymaps/via/rules.mk b/keyboards/drewkeys/iskar/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/drewkeys/iskar/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From b593cfccbde7b4fa7feb0e756eb601f7717bed98 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 9 Mar 2022 07:45:47 +1100 Subject: [PATCH 060/699] `qmk info`: Nicer rendering of big-ass enter (#16541) * `qmk info`: Nicer rendering of big-ass enter * Formatting... --- lib/python/qmk/keyboard.py | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/lib/python/qmk/keyboard.py b/lib/python/qmk/keyboard.py index 0530c4acc5..7cd0a1d5a7 100644 --- a/lib/python/qmk/keyboard.py +++ b/lib/python/qmk/keyboard.py @@ -178,6 +178,8 @@ def render_layout(layout_data, render_ascii, key_labels=None): if x >= 0.25 and w == 1.25 and h == 2: render_key_isoenter(textpad, x, y, w, h, label, style) + elif w == 2.25 and h == 2: + render_key_baenter(textpad, x, y, w, h, label, style) else: render_key_rect(textpad, x, y, w, h, label, style) @@ -259,4 +261,36 @@ def render_key_isoenter(textpad, x, y, w, h, label, style): textpad[y + 2][x - 1:x + w] = crn_line textpad[y + 3][x:x + w] = mid_line textpad[y + 4][x:x + w] = mid_line - textpad[y + h - 1][x:x + w] = bot_line + textpad[y + 5][x:x + w] = bot_line + + +def render_key_baenter(textpad, x, y, w, h, label, style): + box_chars = BOX_DRAWING_CHARACTERS[style] + x = ceil(x * 4) + y = ceil(y * 3) + w = ceil(w * 4) + h = ceil(h * 3) + + label_len = w - 2 + label_leftover = label_len - len(label) + + if len(label) > label_len: + label = label[:label_len] + + label_blank = ' ' * (label_len-3) # noqa: yapf insists there be no whitespace around - and * + label_border_top = box_chars['h'] * (label_len-3) # noqa + label_border_bottom = box_chars['h'] * label_len + label_middle = label + ' '*label_leftover # noqa + + top_line = array('u', box_chars['tl'] + label_border_top + box_chars['tr']) + mid_line = array('u', box_chars['v'] + label_blank + box_chars['v']) + crn_line = array('u', box_chars['tl'] + box_chars['h'] + box_chars['h'] + box_chars['br'] + label_blank + box_chars['v']) + lab_line = array('u', box_chars['v'] + label_middle + box_chars['v']) + bot_line = array('u', box_chars['bl'] + label_border_bottom + box_chars['br']) + + textpad[y][x + 3:x + w] = top_line + textpad[y + 1][x + 3:x + w] = mid_line + textpad[y + 2][x + 3:x + w] = mid_line + textpad[y + 3][x:x + w] = crn_line + textpad[y + 4][x:x + w] = lab_line + textpad[y + 5][x:x + w] = bot_line From d38696a4937525d34445bf23863f99675ec2f54c Mon Sep 17 00:00:00 2001 From: Jason Barnachea Date: Tue, 8 Mar 2022 13:24:06 -0800 Subject: [PATCH 061/699] [Keyboard] Add Rama Works M4-A (#16570) * Initial commit Add Rama Works M4-A keyboard. * Update default keymap.c * Update keyboards/machine_industries/m4_a/config.h Co-authored-by: Ryan Co-authored-by: Ryan --- keyboards/machine_industries/m4_a/config.h | 138 ++++++++++++++++++ keyboards/machine_industries/m4_a/info.json | 15 ++ .../m4_a/keymaps/default/keymap.c | 17 +++ keyboards/machine_industries/m4_a/m4_a.c | 4 + keyboards/machine_industries/m4_a/m4_a.h | 22 +++ keyboards/machine_industries/m4_a/readme.md | 27 ++++ keyboards/machine_industries/m4_a/rules.mk | 18 +++ 7 files changed, 241 insertions(+) create mode 100644 keyboards/machine_industries/m4_a/config.h create mode 100644 keyboards/machine_industries/m4_a/info.json create mode 100644 keyboards/machine_industries/m4_a/keymaps/default/keymap.c create mode 100644 keyboards/machine_industries/m4_a/m4_a.c create mode 100644 keyboards/machine_industries/m4_a/m4_a.h create mode 100644 keyboards/machine_industries/m4_a/readme.md create mode 100644 keyboards/machine_industries/m4_a/rules.mk diff --git a/keyboards/machine_industries/m4_a/config.h b/keyboards/machine_industries/m4_a/config.h new file mode 100644 index 0000000000..1ba3f4f715 --- /dev/null +++ b/keyboards/machine_industries/m4_a/config.h @@ -0,0 +1,138 @@ +// Copyright 2022 naut +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5241 // "RA" +#define PRODUCT_ID 0x004A // 4-A +#define DEVICE_VER 0x0001 +#define MANUFACTURER RAMA WORKS +#define PRODUCT M4-A + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 2 + +/* + * 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 { C7, C6 } +#define MATRIX_COL_PINS { F6, F7 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/machine_industries/m4_a/info.json b/keyboards/machine_industries/m4_a/info.json new file mode 100644 index 0000000000..4a2f03e741 --- /dev/null +++ b/keyboards/machine_industries/m4_a/info.json @@ -0,0 +1,15 @@ +{ + "keyboard_name": "Rama Works M4-A", + "url": "http://rama.works", + "maintainer": "naut", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0, "h":2}, + {"x":0, "y":1, "w":2} + ] + } + } +} diff --git a/keyboards/machine_industries/m4_a/keymaps/default/keymap.c b/keyboards/machine_industries/m4_a/keymaps/default/keymap.c new file mode 100644 index 0000000000..f5c02a185b --- /dev/null +++ b/keyboards/machine_industries/m4_a/keymaps/default/keymap.c @@ -0,0 +1,17 @@ +// Copyright 2022 naut +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT( + KC_1, KC_2, KC_3, + KC_0 + ) +}; diff --git a/keyboards/machine_industries/m4_a/m4_a.c b/keyboards/machine_industries/m4_a/m4_a.c new file mode 100644 index 0000000000..a1598688a8 --- /dev/null +++ b/keyboards/machine_industries/m4_a/m4_a.c @@ -0,0 +1,4 @@ +// Copyright 2022 naut +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "m4_a.h" diff --git a/keyboards/machine_industries/m4_a/m4_a.h b/keyboards/machine_industries/m4_a/m4_a.h new file mode 100644 index 0000000000..13d3010991 --- /dev/null +++ b/keyboards/machine_industries/m4_a/m4_a.h @@ -0,0 +1,22 @@ +// Copyright 2022 naut +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT( \ + k00, k01, k11, \ + k10 \ +) { \ + { k00, k01 }, \ + { k10, k11 } \ +} diff --git a/keyboards/machine_industries/m4_a/readme.md b/keyboards/machine_industries/m4_a/readme.md new file mode 100644 index 0000000000..37c16639d1 --- /dev/null +++ b/keyboards/machine_industries/m4_a/readme.md @@ -0,0 +1,27 @@ +# Rama Works x Machine Industries M4-A + +![Rama Works x Machine Industries M4-A](https://images.squarespace-cdn.com/content/v1/563c788ae4b099120ae219e2/1479361502907-WL2VUR210J6RFD84WH2E/image-asset.jpeg?format=1500w) + +A tiny 4-key macropad designed by Rama Works. + +* Keyboard Maintainer: [naut](https://github.com/nautxx) +* Hardware Supported: Rama Works x Machine Industries M4-A PCB +* Hardware Availability: [Rama Works Store](https://ramaworks.store/) + +Make example for this keyboard (after setting up your build environment): + + make machine_industries/m4_a:default + +Flashing example for this keyboard: + + make machine_industries/m4_a:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/machine_industries/m4_a/rules.mk b/keyboards/machine_industries/m4_a/rules.mk new file mode 100644 index 0000000000..1275531ef6 --- /dev/null +++ b/keyboards/machine_industries/m4_a/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 3347b63d83d019219770f55627f3d5136806bb5c Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 9 Mar 2022 09:07:02 +1100 Subject: [PATCH 062/699] handwired/misterdeck refactor (#16572) * handwired/misterdeck refactor * Forgot to remove this --- keyboards/handwired/misterdeck/config.h | 57 ++++++------------- keyboards/handwired/misterdeck/info.json | 31 ++++++++++ .../misterdeck/keymaps/default/config.h | 3 +- .../misterdeck/keymaps/default/keymap.c | 13 +++-- .../misterdeck/keymaps/default/rules.mk | 1 + .../misterdeck/keymaps/nobuttons/config.h | 31 +++++----- .../misterdeck/keymaps/nobuttons/keymap.c | 13 +++-- .../misterdeck/keymaps/nobuttons/rules.mk | 1 + keyboards/handwired/misterdeck/misterdeck.c | 3 +- keyboards/handwired/misterdeck/misterdeck.h | 11 ++-- keyboards/handwired/misterdeck/readme.md | 2 +- keyboards/handwired/misterdeck/rules.mk | 3 - 12 files changed, 89 insertions(+), 80 deletions(-) create mode 100644 keyboards/handwired/misterdeck/keymaps/default/rules.mk create mode 100644 keyboards/handwired/misterdeck/keymaps/nobuttons/rules.mk diff --git a/keyboards/handwired/misterdeck/config.h b/keyboards/handwired/misterdeck/config.h index 3aaef79d0a..085142d2d5 100644 --- a/keyboards/handwired/misterdeck/config.h +++ b/keyboards/handwired/misterdeck/config.h @@ -1,45 +1,20 @@ /* -Copyright 2021 Chris Broekema (broekema@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 . -*/ - + * Copyright 2021 Chris Broekema (broekema@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 . + */ #pragma once -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xBEEF -#define PRODUCT_ID 0x6969 -#define DEVICE_VER 0x0001 -#define MANUFACTURER QMK - -/* key matrix size */ -#define MATRIX_ROWS 3 -#define MATRIX_COLS 4 - -#define MATRIX_ROW_PINS { D1, D0, D4 } -#define MATRIX_COL_PINS { D7, E6, B4, B5 } - -/* COL2ROW, ROW2COL */ -#define DIODE_DIRECTION ROW2COL - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - -//#define JOYSTICK_AXES_COUNT 4 -//#define JOYSTICK_BUTTON_COUNT 8 +#include "config_common.h" diff --git a/keyboards/handwired/misterdeck/info.json b/keyboards/handwired/misterdeck/info.json index 84c3863107..20d74d8e3c 100644 --- a/keyboards/handwired/misterdeck/info.json +++ b/keyboards/handwired/misterdeck/info.json @@ -1,5 +1,36 @@ { "keyboard_name": "MisteRdeck", + "manufacturer": "broekema", "url": "https://www.thingiverse.com/thing:4627779", "maintainer": "broekema", + "usb": { + "vid": "0xBEEF", + "pid": "0x6969", + "device_version": "0.0.1" + }, + "diode_direction": "ROW2COL", + "matrix_pins": { + "cols": ["D7", "E6", "B4", "B5"], + "rows": ["D1", "D0", "D4"] + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + + {"x": 0, "y": 1}, + {"x": 1, "y": 1}, + {"x": 2, "y": 1}, + {"x": 3, "y": 1}, + + {"x": 0, "y": 2}, + {"x": 1, "y": 2}, + {"x": 2, "y": 2}, + {"x": 3, "y": 2} + ] + } + } } diff --git a/keyboards/handwired/misterdeck/keymaps/default/config.h b/keyboards/handwired/misterdeck/keymaps/default/config.h index c21c29910b..92157a0938 100644 --- a/keyboards/handwired/misterdeck/keymaps/default/config.h +++ b/keyboards/handwired/misterdeck/keymaps/default/config.h @@ -1,4 +1,5 @@ -/* Copyright 2021 Chris Broekema (broekema@gmail.com) +/* + * Copyright 2021 Chris Broekema (broekema@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 diff --git a/keyboards/handwired/misterdeck/keymaps/default/keymap.c b/keyboards/handwired/misterdeck/keymaps/default/keymap.c index a6b6ee467e..217d25551c 100644 --- a/keyboards/handwired/misterdeck/keymaps/default/keymap.c +++ b/keyboards/handwired/misterdeck/keymaps/default/keymap.c @@ -15,20 +15,21 @@ */ #include QMK_KEYBOARD_H + #include "joystick.h" -enum layers { +enum layer_names { NORMAL_LAYER = 0 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [NORMAL_LAYER] = LAYOUT( C(S(KC_F1)), C(S(KC_F2)), C(S(KC_F3)), C(S(KC_F4)), - C(S(KC_F5)), C(S(KC_F6)), C(S(KC_F7)), C(S(KC_F8)), - JS_BUTTON0, JS_BUTTON1, JS_BUTTON2, JS_BUTTON3 ), + [NORMAL_LAYER] = LAYOUT( + C(S(KC_F1)), C(S(KC_F2)), C(S(KC_F3)), C(S(KC_F4)), + C(S(KC_F5)), C(S(KC_F6)), C(S(KC_F7)), C(S(KC_F8)), + JS_BUTTON0, JS_BUTTON1, JS_BUTTON2, JS_BUTTON3 + ) }; - - joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = { [0] = JOYSTICK_AXIS_IN(F4, 0, 512, 1023), [1] = JOYSTICK_AXIS_IN(F5, 0, 512, 1023), diff --git a/keyboards/handwired/misterdeck/keymaps/default/rules.mk b/keyboards/handwired/misterdeck/keymaps/default/rules.mk new file mode 100644 index 0000000000..9e44c470f2 --- /dev/null +++ b/keyboards/handwired/misterdeck/keymaps/default/rules.mk @@ -0,0 +1 @@ +JOYSTICK_ENABLE = yes diff --git a/keyboards/handwired/misterdeck/keymaps/nobuttons/config.h b/keyboards/handwired/misterdeck/keymaps/nobuttons/config.h index bd150139c1..f609bf2962 100644 --- a/keyboards/handwired/misterdeck/keymaps/nobuttons/config.h +++ b/keyboards/handwired/misterdeck/keymaps/nobuttons/config.h @@ -1,20 +1,19 @@ /* -Copyright 2021 Chris Broekema (broekema@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 . -*/ - + * Copyright 2021 Chris Broekema (broekema@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 . + */ #pragma once diff --git a/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c b/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c index fbeb636cf2..d4c52be35d 100644 --- a/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c +++ b/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c @@ -15,20 +15,21 @@ */ #include QMK_KEYBOARD_H + #include "joystick.h" -enum layers { +enum layer_names { NORMAL_LAYER = 0 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [NORMAL_LAYER] = LAYOUT( C(S(KC_F1)), C(S(KC_F2)), C(S(KC_F3)), C(S(KC_F4)), - C(S(KC_F5)), C(S(KC_F6)), C(S(KC_F7)), C(S(KC_F8)), - C(S(KC_F9)), C(S(KC_F10)), C(S(KC_F11)), C(S(KC_F12))), + [NORMAL_LAYER] = LAYOUT( + C(S(KC_F1)), C(S(KC_F2)), C(S(KC_F3)), C(S(KC_F4)), + C(S(KC_F5)), C(S(KC_F6)), C(S(KC_F7)), C(S(KC_F8)), + C(S(KC_F9)), C(S(KC_F10)), C(S(KC_F11)), C(S(KC_F12)) + ), }; - - joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = { [0] = JOYSTICK_AXIS_IN(F4, 0, 512, 1023), [1] = JOYSTICK_AXIS_IN(F5, 0, 512, 1023), diff --git a/keyboards/handwired/misterdeck/keymaps/nobuttons/rules.mk b/keyboards/handwired/misterdeck/keymaps/nobuttons/rules.mk new file mode 100644 index 0000000000..9e44c470f2 --- /dev/null +++ b/keyboards/handwired/misterdeck/keymaps/nobuttons/rules.mk @@ -0,0 +1 @@ +JOYSTICK_ENABLE = yes diff --git a/keyboards/handwired/misterdeck/misterdeck.c b/keyboards/handwired/misterdeck/misterdeck.c index a096e9ce95..ee9cc93b3a 100644 --- a/keyboards/handwired/misterdeck/misterdeck.c +++ b/keyboards/handwired/misterdeck/misterdeck.c @@ -1,4 +1,5 @@ -/* Copyright 2021 Chris Broekema (broekema@gmail.com) +/* + * Copyright 2021 Chris Broekema (broekema@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 diff --git a/keyboards/handwired/misterdeck/misterdeck.h b/keyboards/handwired/misterdeck/misterdeck.h index a86ca2c2c9..324ccb755f 100644 --- a/keyboards/handwired/misterdeck/misterdeck.h +++ b/keyboards/handwired/misterdeck/misterdeck.h @@ -1,4 +1,5 @@ -/* Copyright 2021 Chris Broekema (broekema@gmail.com) +/* + * Copyright 2021 Chris Broekema (broekema@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 @@ -19,11 +20,11 @@ #include "quantum.h" #define LAYOUT( \ - k00, k01, k02, k03, \ - k10, k11, k12, k13, \ - k20, k21, k22, k23 \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23 \ ) { \ { k00, k01, k02, k03 }, \ { k10, k11, k12, k13 }, \ - { k20, k21, k22, k23 } \ + { k20, k21, k22, k23 } \ } diff --git a/keyboards/handwired/misterdeck/readme.md b/keyboards/handwired/misterdeck/readme.md index b9d472319a..dd592e646a 100644 --- a/keyboards/handwired/misterdeck/readme.md +++ b/keyboards/handwired/misterdeck/readme.md @@ -18,4 +18,4 @@ Flashing example for this keyboard: Connect a momentary switch to RST and GND, hit twice in succession to reset the board into bootloader mode. -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/handwired/misterdeck/rules.mk b/keyboards/handwired/misterdeck/rules.mk index c19a30931a..7479d0121f 100644 --- a/keyboards/handwired/misterdeck/rules.mk +++ b/keyboards/handwired/misterdeck/rules.mk @@ -16,6 +16,3 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output - -# use joystick feature for sliders -JOYSTICK_ENABLE = yes From 022e1fdac86c38136d6f818aec15d34b1ab92be5 Mon Sep 17 00:00:00 2001 From: Danny Date: Tue, 8 Mar 2022 17:08:02 -0500 Subject: [PATCH 063/699] Add Big Switch Seat (#16524) * Add Big Switch Seat * Update keyboards/keebio/bigswitchseat/rules.mk Co-authored-by: Drashna Jaelre * Update keyboards/keebio/bigswitchseat/rules.mk Co-authored-by: Ryan Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- .../keebio/bigswitchseat/bigswitchseat.c | 4 + .../keebio/bigswitchseat/bigswitchseat.h | 12 +++ keyboards/keebio/bigswitchseat/config.h | 86 +++++++++++++++++++ keyboards/keebio/bigswitchseat/info.json | 10 +++ .../bigswitchseat/keymaps/default/keymap.c | 27 ++++++ .../bigswitchseat/keymaps/default/rules.mk | 1 + .../keebio/bigswitchseat/keymaps/via/keymap.c | 27 ++++++ .../keebio/bigswitchseat/keymaps/via/rules.mk | 2 + keyboards/keebio/bigswitchseat/readme.md | 25 ++++++ keyboards/keebio/bigswitchseat/rules.mk | 18 ++++ 10 files changed, 212 insertions(+) create mode 100644 keyboards/keebio/bigswitchseat/bigswitchseat.c create mode 100644 keyboards/keebio/bigswitchseat/bigswitchseat.h create mode 100644 keyboards/keebio/bigswitchseat/config.h create mode 100644 keyboards/keebio/bigswitchseat/info.json create mode 100644 keyboards/keebio/bigswitchseat/keymaps/default/keymap.c create mode 100644 keyboards/keebio/bigswitchseat/keymaps/default/rules.mk create mode 100644 keyboards/keebio/bigswitchseat/keymaps/via/keymap.c create mode 100644 keyboards/keebio/bigswitchseat/keymaps/via/rules.mk create mode 100644 keyboards/keebio/bigswitchseat/readme.md create mode 100644 keyboards/keebio/bigswitchseat/rules.mk diff --git a/keyboards/keebio/bigswitchseat/bigswitchseat.c b/keyboards/keebio/bigswitchseat/bigswitchseat.c new file mode 100644 index 0000000000..a322fdad62 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/bigswitchseat.c @@ -0,0 +1,4 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "bigswitchseat.h" diff --git a/keyboards/keebio/bigswitchseat/bigswitchseat.h b/keyboards/keebio/bigswitchseat/bigswitchseat.h new file mode 100644 index 0000000000..3f66c6bc3b --- /dev/null +++ b/keyboards/keebio/bigswitchseat/bigswitchseat.h @@ -0,0 +1,12 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + k00 \ +) { \ + { k00 } \ +} diff --git a/keyboards/keebio/bigswitchseat/config.h b/keyboards/keebio/bigswitchseat/config.h new file mode 100644 index 0000000000..f5558ca279 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/config.h @@ -0,0 +1,86 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xCB10 +#define PRODUCT_ID 0x1011 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Keebio +#define PRODUCT Big Switch Seat + +/* key matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* + * Keyboard Matrix Assignments + */ + +#define MATRIX_ROW_PINS { E6 } +#define MATRIX_COL_PINS { F0 } +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keebio/bigswitchseat/info.json b/keyboards/keebio/bigswitchseat/info.json new file mode 100644 index 0000000000..10328da26f --- /dev/null +++ b/keyboards/keebio/bigswitchseat/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Big Switch Seat", + "url": "https://robotcandy.company/", + "maintainer": "nooges", + "layouts": { + "LAYOUT": { + "layout": [{"x": 0, "y": 0, "w": 4, "h": 4}] + } + } +} diff --git a/keyboards/keebio/bigswitchseat/keymaps/default/keymap.c b/keyboards/keebio/bigswitchseat/keymaps/default/keymap.c new file mode 100644 index 0000000000..6d4378b995 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _MAIN, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_MAIN] = LAYOUT( + KC_A + ), + [_FN1] = LAYOUT( + _______ + ), + [_FN2] = LAYOUT( + _______ + ), + [_FN3] = LAYOUT( + _______ + ) +}; diff --git a/keyboards/keebio/bigswitchseat/keymaps/default/rules.mk b/keyboards/keebio/bigswitchseat/keymaps/default/rules.mk new file mode 100644 index 0000000000..4da205a168 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/keymaps/default/rules.mk @@ -0,0 +1 @@ +LTO_ENABLE = yes diff --git a/keyboards/keebio/bigswitchseat/keymaps/via/keymap.c b/keyboards/keebio/bigswitchseat/keymaps/via/keymap.c new file mode 100644 index 0000000000..6d4378b995 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/keymaps/via/keymap.c @@ -0,0 +1,27 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _MAIN, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_MAIN] = LAYOUT( + KC_A + ), + [_FN1] = LAYOUT( + _______ + ), + [_FN2] = LAYOUT( + _______ + ), + [_FN3] = LAYOUT( + _______ + ) +}; diff --git a/keyboards/keebio/bigswitchseat/keymaps/via/rules.mk b/keyboards/keebio/bigswitchseat/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/keebio/bigswitchseat/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/keebio/bigswitchseat/readme.md b/keyboards/keebio/bigswitchseat/readme.md new file mode 100644 index 0000000000..43e62d4e53 --- /dev/null +++ b/keyboards/keebio/bigswitchseat/readme.md @@ -0,0 +1,25 @@ +# Big Switch Seat + +PCB for the Big Switch. + +* Keyboard Maintainer: [Keebio](https://github.com/nooges) +* Hardware Supported: Big Switch Seat PCB +* Hardware Availability: [Robot Candy Company](https://robotcandy.company/) + +Make example for this keyboard (after setting up your build environment): + + make keebio/bigswitchseat:default + +Flashing example for this keyboard: + + make keebio/bigswitchseat:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/keebio/bigswitchseat/rules.mk b/keyboards/keebio/bigswitchseat/rules.mk new file mode 100644 index 0000000000..d6d12ae0db --- /dev/null +++ b/keyboards/keebio/bigswitchseat/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 5244b13173e3df8f12f6e7338533c262e3acf88f Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Tue, 8 Mar 2022 17:37:40 -0700 Subject: [PATCH 064/699] Fix yandrstudio/zhou65 (#16589) * initial cleanup and hotfix for rgb.... * remove /f401 --- .../yandrstudio/zhou65/{f401 => }/board.h | 0 keyboards/yandrstudio/zhou65/config.h | 19 ++++++--- keyboards/yandrstudio/zhou65/f401/config.h | 33 ---------------- keyboards/yandrstudio/zhou65/f401/halconf.h | 33 ---------------- keyboards/yandrstudio/zhou65/f401/rules.mk | 6 --- .../zhou65/keymaps/default/keymap.c | 24 ++++++------ .../yandrstudio/zhou65/keymaps/via/keymap.c | 39 +++++++++++++------ .../yandrstudio/zhou65/{f401 => }/mcuconf.h | 3 -- keyboards/yandrstudio/zhou65/readme.md | 2 +- keyboards/yandrstudio/zhou65/rules.mk | 8 +++- 10 files changed, 61 insertions(+), 106 deletions(-) rename keyboards/yandrstudio/zhou65/{f401 => }/board.h (100%) delete mode 100644 keyboards/yandrstudio/zhou65/f401/config.h delete mode 100644 keyboards/yandrstudio/zhou65/f401/halconf.h delete mode 100644 keyboards/yandrstudio/zhou65/f401/rules.mk rename keyboards/yandrstudio/zhou65/{f401 => }/mcuconf.h (99%) diff --git a/keyboards/yandrstudio/zhou65/f401/board.h b/keyboards/yandrstudio/zhou65/board.h similarity index 100% rename from keyboards/yandrstudio/zhou65/f401/board.h rename to keyboards/yandrstudio/zhou65/board.h diff --git a/keyboards/yandrstudio/zhou65/config.h b/keyboards/yandrstudio/zhou65/config.h index 7dbbd037ec..f4d8199e13 100644 --- a/keyboards/yandrstudio/zhou65/config.h +++ b/keyboards/yandrstudio/zhou65/config.h @@ -24,15 +24,24 @@ #define MANUFACTURER ZHOU_Y&R #define PRODUCT zhou65 +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { A2, A1, B8, B7, C15 } +#define MATRIX_COL_PINS { B9, B6, B5, B4, B3, B1, B0, A7, A6, A5, A4, A3, A8, B15, B14 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +#define LED_CAPS_LOCK_PIN A15 +#define LED_PIN_ON_STATE 0 + /* enable the nkro when using the VIA. */ #define FORCE_NKRO -/* fix VIA RGB_light */ -#define VIA_HAS_BROKEN_KEYCODES - - /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 -#define USB_POLLING_INTERVAL_MS 1 #define QMK_KEYS_PER_SCAN 4 diff --git a/keyboards/yandrstudio/zhou65/f401/config.h b/keyboards/yandrstudio/zhou65/f401/config.h deleted file mode 100644 index d5214b75d0..0000000000 --- a/keyboards/yandrstudio/zhou65/f401/config.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2021 JasonRen(biu) - * - * 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 . - */ -#pragma once - -#include "config_common.h" - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 15 - -/* key matrix pins */ -#define MATRIX_ROW_PINS { A2, A1, B8, B7, C15 } -#define MATRIX_COL_PINS { B9, B6, B5, B4, B3, B1, B0, A7, A6, A5, A4, A3, A8, B15, B14 } - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION ROW2COL - -#define LED_CAPS_LOCK_PIN A15 -#define LED_PIN_ON_STATE 0 - diff --git a/keyboards/yandrstudio/zhou65/f401/halconf.h b/keyboards/yandrstudio/zhou65/f401/halconf.h deleted file mode 100644 index cf7665e3f7..0000000000 --- a/keyboards/yandrstudio/zhou65/f401/halconf.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - - -#pragma once -#include_next - - -#undef SERIAL_USB_BUFFERS_SIZE -#define SERIAL_USB_BUFFERS_SIZE 256 - -#undef SERIAL_BUFFERS_SIZE -#define SERIAL_BUFFERS_SIZE 128 - -#undef SPI_USE_WAIT -#define SPI_USE_WAIT TRUE - -#undef SPI_SELECT_MODE -#define SPI_SELECT_MODE SPI_SELECT_MODE_PAD - diff --git a/keyboards/yandrstudio/zhou65/f401/rules.mk b/keyboards/yandrstudio/zhou65/f401/rules.mk deleted file mode 100644 index 3e060b4195..0000000000 --- a/keyboards/yandrstudio/zhou65/f401/rules.mk +++ /dev/null @@ -1,6 +0,0 @@ -# MCU name -MCU = STM32F401 - -# Bootloader selection -BOOTLOADER = stm32-dfu - diff --git a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c index b06ae7e70b..bf15ded873 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c @@ -16,17 +16,17 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - 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_BSPC, KC_HOME, - 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, KC_PGUP, - 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_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), + [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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - LAYOUT( - KC_GRV, 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, RESET, 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), + [1] = LAYOUT( + KC_GRV, 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, RESET, 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), }; diff --git a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c index b06ae7e70b..2a13c6d4ac 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c @@ -16,17 +16,32 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - 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_BSPC, KC_HOME, - 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, KC_PGUP, - 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_PGDN, - 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), + [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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT( + KC_GRV, 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, RESET, 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), + + [2] = LAYOUT( + KC_GRV, 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, RESET, 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), + + [3] = LAYOUT( + KC_GRV, 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, RESET, 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), - LAYOUT( - KC_GRV, 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, RESET, 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), }; diff --git a/keyboards/yandrstudio/zhou65/f401/mcuconf.h b/keyboards/yandrstudio/zhou65/mcuconf.h similarity index 99% rename from keyboards/yandrstudio/zhou65/f401/mcuconf.h rename to keyboards/yandrstudio/zhou65/mcuconf.h index 435455d3a9..85376734f4 100644 --- a/keyboards/yandrstudio/zhou65/f401/mcuconf.h +++ b/keyboards/yandrstudio/zhou65/mcuconf.h @@ -76,6 +76,3 @@ #define STM32_PVD_ENABLE FALSE #define STM32_PLS STM32_PLS_LEV0 #define STM32_BKPRAM_ENABLE FALSE - - - diff --git a/keyboards/yandrstudio/zhou65/readme.md b/keyboards/yandrstudio/zhou65/readme.md index 84c889f5ab..bcbc59c1b1 100644 --- a/keyboards/yandrstudio/zhou65/readme.md +++ b/keyboards/yandrstudio/zhou65/readme.md @@ -9,7 +9,7 @@ This keyboard use 8mhz HSE and STM32F401 as MCU. Make example for this keyboard (after setting up your build environment): - make yandrstudio/zhou65/f401:default + make yandrstudio/zhou65:default See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/yandrstudio/zhou65/rules.mk b/keyboards/yandrstudio/zhou65/rules.mk index b851d0ab39..35a39a549a 100644 --- a/keyboards/yandrstudio/zhou65/rules.mk +++ b/keyboards/yandrstudio/zhou65/rules.mk @@ -1,3 +1,9 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + # Build Options # change yes to no to disable # @@ -8,5 +14,5 @@ CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output From ed169a6b3003cb9102a70e86ccd01d21d4794538 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 9 Mar 2022 01:24:59 +0000 Subject: [PATCH 065/699] Correct order of takashicompany/dogtag info.json (#16591) --- keyboards/takashicompany/dogtag/info.json | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/keyboards/takashicompany/dogtag/info.json b/keyboards/takashicompany/dogtag/info.json index 64079408a8..72bd5eb136 100644 --- a/keyboards/takashicompany/dogtag/info.json +++ b/keyboards/takashicompany/dogtag/info.json @@ -53,6 +53,14 @@ "x": 3, "y": 1 }, + { + "x": 4, + "y": 2 + }, + { + "x": 7, + "y": 2 + }, { "x": 8, "y": 1 @@ -69,14 +77,6 @@ "x": 11, "y": 1 }, - { - "x": 4, - "y": 2 - }, - { - "x": 7, - "y": 2 - }, { "x": 3.5, "y": 3.25 From c5c5d37e0894031d68c5d9c3960b7fa6ae8e37ff Mon Sep 17 00:00:00 2001 From: Salicylic-acid3 <46864619+Salicylic-acid3@users.noreply.github.com> Date: Wed, 9 Mar 2022 10:34:37 +0900 Subject: [PATCH 066/699] [Keymap] Added RGB_Matrix effect mode for naked48/j73gl (#16578) --- .../j73gl/keymaps/via_rgb_matrix/config.h | 74 ++++++++++++++++--- .../naked48/keymaps/via_rgb_matrix/config.h | 45 +++++++++++ 2 files changed, 107 insertions(+), 12 deletions(-) diff --git a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h index d2e1d20893..ef0643ce94 100644 --- a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h +++ b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/config.h @@ -28,16 +28,66 @@ #define DRIVER_LED_TOTAL 73 #ifdef RGB_MATRIX_ENABLE -# define RGB_MATRIX_KEYPRESSES // reacts to keypresses -// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) -// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects -// # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended -// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) -// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) -// # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 -# define RGB_MATRIX_HUE_STEP 8 -# define RGB_MATRIX_SAT_STEP 8 -# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 -# define RGB_MATRIX_VAL_STEP 5 -# define RGB_MATRIX_SPD_STEP 10 + #define RGB_MATRIX_KEYPRESSES // reacts to keypresses +// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) +// #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // enable framebuffer effects +// #define RGB_DISABLE_TIMEOUT 0 // number of milliseconds to wait until rgb automatically turns off +// #define RGB_DISABLE_AFTER_TIMEOUT 0 // OBSOLETE: number of ticks to wait until disabling effects + #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended + #define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) + #define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 +// #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT // Sets the default mode, if none has been set + #define RGB_MATRIX_STARTUP_HUE 0 // Sets the default hue value, if none has been set + #define RGB_MATRIX_STARTUP_SAT 255 // Sets the default saturation value, if none has been set + #define RGB_MATRIX_STARTUP_VAL 50 // Sets the default brightness value, if none has been set + #define RGB_MATRIX_STARTUP_SPD 127 // Sets the default animation speed, if none has been set +// #define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature) +// #define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right. + // If RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR + + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_HUE_BREATHING + #define ENABLE_RGB_MATRIX_HUE_PENDULUM + #define ENABLE_RGB_MATRIX_HUE_WAVE + #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL + #define ENABLE_RGB_MATRIX_PIXEL_FLOW + #define ENABLE_RGB_MATRIX_PIXEL_RAIN + #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #endif diff --git a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h index 7deffe33ff..7eabf9e831 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h +++ b/keyboards/salicylic_acid3/naked48/keymaps/via_rgb_matrix/config.h @@ -45,4 +45,49 @@ // #define RGB_MATRIX_DISABLE_KEYCODES // disables control of rgb matrix by keycodes (must use code functions to control the feature) // #define RGB_MATRIX_SPLIT { X, Y } // (Optional) For split keyboards, the number of LEDs connected on each half. X = left, Y = Right. // If RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is enabled, you also will want to enable SPLIT_TRANSPORT_MIRROR + + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + // #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON +// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +// #define ENABLE_RGB_MATRIX_HUE_BREATHING +// #define ENABLE_RGB_MATRIX_HUE_PENDULUM +// #define ENABLE_RGB_MATRIX_HUE_WAVE + #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL + #define ENABLE_RGB_MATRIX_PIXEL_FLOW + #define ENABLE_RGB_MATRIX_PIXEL_RAIN + #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + #endif From 6ab5a7d048358f261d7068c56ef73dd3da4319aa Mon Sep 17 00:00:00 2001 From: jpe230 Date: Tue, 8 Mar 2022 19:35:33 -0600 Subject: [PATCH 067/699] [Keymap] Personal keymap for crkbd (#16546) --- keyboards/crkbd/keymaps/jpe230/config.h | 24 ++ keyboards/crkbd/keymaps/jpe230/keymap.c | 399 +++++++++++++++++++++++ keyboards/crkbd/keymaps/jpe230/readme.md | 15 + keyboards/crkbd/keymaps/jpe230/rules.mk | 6 + 4 files changed, 444 insertions(+) create mode 100644 keyboards/crkbd/keymaps/jpe230/config.h create mode 100644 keyboards/crkbd/keymaps/jpe230/keymap.c create mode 100644 keyboards/crkbd/keymaps/jpe230/readme.md create mode 100644 keyboards/crkbd/keymaps/jpe230/rules.mk diff --git a/keyboards/crkbd/keymaps/jpe230/config.h b/keyboards/crkbd/keymaps/jpe230/config.h new file mode 100644 index 0000000000..3680f7c480 --- /dev/null +++ b/keyboards/crkbd/keymaps/jpe230/config.h @@ -0,0 +1,24 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2022 Jose Pablo Ramirez + +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 . +*/ + +#pragma once + +#define SPLIT_WPM_ENABLE diff --git a/keyboards/crkbd/keymaps/jpe230/keymap.c b/keyboards/crkbd/keymaps/jpe230/keymap.c new file mode 100644 index 0000000000..65cb6f73f7 --- /dev/null +++ b/keyboards/crkbd/keymaps/jpe230/keymap.c @@ -0,0 +1,399 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> +Copyright 2022 Jose Pablo Ramirez + +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 . +*/ + +#include QMK_KEYBOARD_H + +#ifdef VIA_ENABLE + #define USER_START USER00 +#else + #define USER_START SAFE_RANGE +#endif + +// Keycode to toggle Sarcasm Mode +enum custom_keycodes { + KC_SCASM = USER_START +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_split_3x6_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ESC, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, MO(1), KC_ENT, KC_SPC, MO(2), KC_RALT + //`--------------------------' `--------------------------' + + ), + + [1] = LAYOUT_split_3x6_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_CAPS, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN,KC_RIGHT, _______, _______, _______, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, _______, _______, _______, MO(3), KC_RALT + //`--------------------------' `--------------------------' + ), + + [2] = LAYOUT_split_3x6_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_CAPS, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TILD, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, MO(3), _______, TG(3), _______, KC_RALT + //`--------------------------' `--------------------------' + ), + + [3] = LAYOUT_split_3x6_3( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_MUTE, KC_WBAK, KC_WFWD, KC_F7, KC_F8, KC_F9, _______, KC_7, KC_8, KC_9, _______, RESET, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_VOLU, _______, KC_MNXT, KC_F6, KC_F5, KC_F6, _______, KC_6, KC_5, KC_4, _______, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_VOLD, KC_MPRV, KC_MNXT, KC_F1, KC_F2, KC_F3, _______, KC_1, KC_2, KC_3, _______, _______, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, _______,KC_SCASM, TG(3), _______, KC_RALT + //`--------------------------' `--------------------------' + ) +}; + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return rotation; +} + +#define L_BASE 0 +#define L_LOWER 2 +#define L_RAISE 4 +#define L_ADJUST 8 + +void oled_render_layer_state(void) { + oled_write_P(PSTR("Layer: "), false); + switch (layer_state) { + case L_BASE: + oled_write_ln_P(PSTR("Default"), false); + break; + case L_LOWER: + oled_write_ln_P(PSTR("Lower"), false); + break; + case L_RAISE: + oled_write_ln_P(PSTR("Raise"), false); + break; + case L_ADJUST: + case L_ADJUST|L_LOWER: + case L_ADJUST|L_RAISE: + case L_ADJUST|L_LOWER|L_RAISE: + oled_write_ln_P(PSTR("Adjust"), false); + break; + } +} + + +static char logged_char = ' '; +static uint8_t logged_row = 0, logged_col = 0; +static uint16_t logged_keycode = 0; + +const char code_to_name[60] = { + ' ', ' ', ' ', ' ', 'a', 'b', 'c', 'd', 'e', 'f', + 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', + 'q', 'r', 's', 't', 'u', 'v', 'w', 'x', 'y', 'z', + '1', '2', '3', '4', '5', '6', '7', '8', '9', '0', + 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', + '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; + +void set_keylog(uint16_t keycode, keyrecord_t *record) { + if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || + (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { keycode = keycode & 0xFF; } + if (keycode < 60) { + logged_char = code_to_name[keycode]; + } + + // update keylog + logged_row = record->event.key.row; + logged_col = record->event.key.col; + logged_keycode = keycode; +} + +void oled_render_keylog(void) { + oled_write(get_u8_str(logged_row, '0'), false); + oled_write_P(PSTR(":"), false); + oled_write(get_u8_str(logged_col, '0'), false); + oled_write_P(PSTR(", "), false); + oled_write(get_u16_str(logged_keycode, ' '), false); + oled_write_P(PSTR(" : "), false); + oled_write((const char *)&logged_char, false); +} + +void render_bootmagic_status(bool status) { + /* Show Ctrl-Gui Swap options */ + static const char PROGMEM logo[][2][3] = { + {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}}, + {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}}, + }; + if (status) { + oled_write_ln_P(logo[0][0], false); + oled_write_ln_P(logo[0][1], false); + } else { + oled_write_ln_P(logo[1][0], false); + oled_write_ln_P(logo[1][1], false); + } +} + +// frame 0, 128x32px +const char PROGMEM cat_frame_0 [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0x80, 0xc0, 0xc0, + 0x60, 0x60, 0x60, 0x60, 0x40, 0x40, 0xc0, 0xc0, 0xc0, 0x70, 0x38, 0x18, 0xec, 0x3c, 0x02, 0x02, + 0x7a, 0x7a, 0xf2, 0xf2, 0x06, 0x04, 0x04, 0x0c, 0x0e, 0x0a, 0x1f, 0xfd, 0xf9, 0x39, 0x0f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0xff, 0xff, 0x03, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xfc, 0xff, 0x01, 0x08, 0x3c, 0x00, + 0x00, 0x18, 0x08, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x83, 0x7e, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf8, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x60, 0xf0, 0xff, 0xff, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x00, 0x87, 0x83, 0xc0, 0x80, 0x88, + 0x1e, 0x1e, 0x0f, 0x00, 0x80, 0x80, 0x80, 0x40, 0x40, 0xc0, 0xe0, 0xfe, 0x87, 0xbe, 0xf0, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, + 0x12, 0x34, 0x34, 0x34, 0x34, 0x1e, 0x0e, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +// frame 1, 128x32px +const char PROGMEM cat_frame_1 [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0x60, + 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x20, 0x60, 0x60, 0xe0, 0xf0, 0x90, + 0x18, 0x08, 0x08, 0x88, 0x88, 0x98, 0x10, 0x10, 0x30, 0x30, 0x70, 0xf8, 0x08, 0x88, 0xf8, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0xff, 0xff, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0x04, 0x06, 0x07, 0x03, 0x01, + 0xc0, 0x00, 0x00, 0x87, 0x87, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0xf0, 0x00, + 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xf8, 0xff, 0xff, 0xc0, 0x80, + 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x10, 0x30, 0xf0, 0xe0, 0x00, + 0x01, 0x00, 0x60, 0xf0, 0xf0, 0x78, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xfc, 0xc7, 0x00, + 0x00, 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x03, 0x02, 0x06, + 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x04, 0x06, 0x02, 0x02, 0x07, 0x07, 0x07, 0x04, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; +// frame 2, 128x32px +const char PROGMEM cat_frame_2 [] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0x60, 0x30, + 0x38, 0x18, 0x18, 0x18, 0x18, 0x30, 0x30, 0x30, 0x78, 0x48, 0x78, 0xc0, 0x80, 0xc0, 0x40, 0x40, + 0x40, 0x40, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0x03, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x20, 0xf0, 0x80, 0x80, 0x60, 0x18, 0x00, 0x00, 0x00, 0x01, 0x00, 0x1c, 0x3c, + 0x7c, 0x38, 0x00, 0x00, 0x00, 0x01, 0x01, 0x07, 0x06, 0x3c, 0xff, 0xc3, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xe0, 0xe0, 0xf0, 0xf0, 0xf0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x70, 0xff, 0xff, 0xf0, 0x80, 0x00, + 0x00, 0x80, 0x80, 0x80, 0x00, 0x01, 0x00, 0x1e, 0x7f, 0xc0, 0x00, 0x00, 0x0c, 0x00, 0x00, 0x0c, + 0x8c, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0x7f, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x03, 0x03, 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, + 0x01, 0x01, 0x00, 0x01, 0x01, 0x0f, 0x18, 0x10, 0x18, 0x0f, 0x0e, 0x18, 0x10, 0x30, 0x27, 0x2f, + 0x2f, 0x27, 0x20, 0x30, 0x10, 0x10, 0x10, 0x30, 0x3c, 0x2d, 0x27, 0x3c, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 +}; + +const char* cat_frames[3] = { + cat_frame_0, + cat_frame_1, + cat_frame_2 +}; + +#define FRAME_SIZE 528 + +static int current_frame = 0; +static uint32_t frame_timer = 0; +static uint32_t anim_sleep = 0; +static uint8_t anim_speed = 120; + +void oled_render_logo(void) { + + if(get_current_wpm() != 000) { + oled_on(); + int8_t wpm_speed = (int8_t)(get_current_wpm() / 2); + if(wpm_speed < 100) + { + anim_speed = 120 - wpm_speed; + } + if(timer_elapsed32(frame_timer) > anim_speed) { + frame_timer = timer_read32(); // resets timer + current_frame = (current_frame + 1) % 3; + } + oled_write_raw_P(cat_frames[current_frame], FRAME_SIZE); + anim_sleep = timer_read32(); + } else { + anim_speed = 150; + if(timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { + oled_off(); + } else { + if(timer_elapsed32(frame_timer) > anim_speed) { + frame_timer = timer_read32(); // resets timer + current_frame = (current_frame + 1) % 3; + } + oled_write_raw_P(cat_frames[current_frame], FRAME_SIZE); + } + } +} + +bool oled_task_user(void) { + if (is_keyboard_master()) { + oled_render_layer_state(); + oled_render_keylog(); + } else { + oled_render_logo(); + } + return false; +} + +#endif // OLED_ENABLE + +// saRcASm MOde +bool tog_sarcasm = false; +bool uppercase = false; +uint8_t prev_upper = 0; +uint8_t prev_lower = 0; + +bool process_record_sarcasm(uint16_t keycode, keyrecord_t *record) { + if (keycode == KC_ENTER && record->event.pressed) { + uppercase = false; + return true; + } + + if (uppercase == false && record->event.pressed) { // Dont start with an uppercase letter on new line + uppercase = true; + return true; + } + + if((KC_A <= keycode) && (keycode <= KC_Z)) { + if ( record->event.pressed ) { + bool press = rand() % 2; + + if (prev_upper > 2) { // if more than 3 lower's in a row print upper + prev_upper = 0; + press = false; + } else if (prev_lower > 2) { // if more than 3 upper's in a row print lower + prev_lower = 0; + press = true; + } + if (press) { + prev_upper++; + tap_code16(S(keycode)); + clear_mods(); + } else { + prev_lower++; + tap_code16(keycode); + } + } + return false; + } + + return true; +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + +#ifdef OLED_ENABLE + if (record->event.pressed) { + set_keylog(keycode, record); + } +#endif + + switch (keycode) { + case KC_SCASM: + if (record->event.pressed) { + tog_sarcasm = !tog_sarcasm; + + if (tog_sarcasm) + dprint("Enabling saRCaSm ModE\n"); + else + dprint("Disabling saRCaSm ModE\n"); + + uppercase = false; + prev_upper = 0; + prev_lower = 0; + } + return false; + } + + if (tog_sarcasm) { + return process_record_sarcasm(keycode, record); + } + + return true; +} diff --git a/keyboards/crkbd/keymaps/jpe230/readme.md b/keyboards/crkbd/keymaps/jpe230/readme.md new file mode 100644 index 0000000000..31bbc4ebd1 --- /dev/null +++ b/keyboards/crkbd/keymaps/jpe230/readme.md @@ -0,0 +1,15 @@ +# Jpe230's CRKBD Layout + +## Layers +The four layers: +- BASE Layer: QWERTY +- LOWER Layer: Numbers + Arrows +- RAISE Layer: Symbols +- ADJUST Layer: Numpad + Media Keys + Fn keys + +## OLED +-Master: Renders layer state + keylog +-Slave : Renders an animation of a cat that varies its animation speed based on the current WPM + +## Flashing +Flash using `qmk compile -kb crkbd -km jpe230` for Pro Micro diff --git a/keyboards/crkbd/keymaps/jpe230/rules.mk b/keyboards/crkbd/keymaps/jpe230/rules.mk new file mode 100644 index 0000000000..27a25ddeb3 --- /dev/null +++ b/keyboards/crkbd/keymaps/jpe230/rules.mk @@ -0,0 +1,6 @@ +MOUSEKEY_ENABLE = yes +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +LTO_ENABLE = yes +WPM_ENABLE = yes +VIA_ENABLE = yes From dc67fd9b87b0e86cea8d176d8b9bbce3e8a8676d Mon Sep 17 00:00:00 2001 From: jpe230 Date: Tue, 8 Mar 2022 23:49:29 -0600 Subject: [PATCH 068/699] Various improvements for the AnnePro2 (#16579) --- keyboards/annepro2/annepro2.c | 92 ++++++++++------ keyboards/annepro2/annepro2.h | 6 +- keyboards/annepro2/annepro2_ble.c | 34 +++--- keyboards/annepro2/ap2_led.c | 79 +++++++------- keyboards/annepro2/ap2_led.h | 93 ++++++++-------- keyboards/annepro2/c15/config.h | 1 + keyboards/annepro2/c15/rules.mk | 5 +- keyboards/annepro2/c18/config.h | 1 + keyboards/annepro2/c18/rules.mk | 5 +- keyboards/annepro2/config_led.c | 43 ++++++++ keyboards/annepro2/config_led.h | 72 +++++++++++++ keyboards/annepro2/info.json | 2 +- .../keymaps/default-full-caps/keymap.c | 84 +++++++-------- .../keymaps/default-layer-indicators/keymap.c | 102 +++++++++--------- keyboards/annepro2/keymaps/default/keymap.c | 80 +++++++------- keyboards/annepro2/keymaps/default/rules.mk | 3 + keyboards/annepro2/protocol.c | 40 +++---- keyboards/annepro2/protocol.h | 22 ++-- keyboards/annepro2/rgb_driver.c | 66 ++++++++++++ 19 files changed, 526 insertions(+), 304 deletions(-) create mode 100644 keyboards/annepro2/config_led.c create mode 100644 keyboards/annepro2/config_led.h create mode 100644 keyboards/annepro2/keymaps/default/rules.mk create mode 100644 keyboards/annepro2/rgb_driver.c diff --git a/keyboards/annepro2/annepro2.c b/keyboards/annepro2/annepro2.c index 37489defff..8767265315 100644 --- a/keyboards/annepro2/annepro2.c +++ b/keyboards/annepro2/annepro2.c @@ -24,7 +24,7 @@ #define RAM_MAGIC_LOCATION 0x20001ffc #define IAP_MAGIC_VALUE 0x0000fab2 -static const SerialConfig ledUartInitConfig = { +static const SerialConfig led_uart_init_config = { .speed = 115200, }; @@ -32,21 +32,25 @@ static const SerialConfig ledUartInitConfig = { # define LED_UART_BAUD_RATE 115200 #endif // LED_UART_BAUD_RATE -static const SerialConfig ledUartRuntimeConfig = { +static const SerialConfig led_uart_runtine_config = { .speed = LED_UART_BAUD_RATE, }; -static const SerialConfig bleUartConfig = { +static const SerialConfig ble_uart_config = { .speed = 115200, }; -static uint8_t ledMcuWakeup[11] = {0x7b, 0x10, 0x43, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x02}; +static uint8_t led_mcu_wakeup[11] = {0x7b, 0x10, 0x43, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x02}; -ble_capslock_t BLECapsLock = {._dummy = {0}, .caps_lock = false}; +ble_capslock_t ble_capslock = {._dummy = {0}, .caps_lock = false}; + +#ifdef RGB_MATRIX_ENABLE +static uint8_t current_rgb_row = 0; +#endif void bootloader_jump(void) { // Send msg to shine to boot into IAP - annepro2SetIAP(); + ap2_set_IAP(); // wait for shine to boot into IAP wait_ms(15); @@ -67,27 +71,27 @@ void bootloader_jump(void) { void keyboard_pre_init_kb(void) { // Start LED UART - sdStart(&SD0, &ledUartInitConfig); + sdStart(&SD0, &led_uart_init_config); /* Let the LED chip settle a bit before switching the mode. * That helped at least one person. */ wait_ms(15); - sdWrite(&SD0, ledMcuWakeup, sizeof(ledMcuWakeup)); + sdWrite(&SD0, led_mcu_wakeup, sizeof(led_mcu_wakeup)); // wait to receive response from wakeup wait_ms(15); - protoInit(&proto, ledCommandCallback); + proto_init(&proto, led_command_callback); // loop to clear out receive buffer from shine wakeup while (!sdGetWouldBlock(&SD0)) sdGet(&SD0); - sdStart(&SD0, &ledUartRuntimeConfig); + sdStart(&SD0, &led_uart_runtine_config); keyboard_pre_init_user(); } void keyboard_post_init_kb(void) { // Start BLE UART - sdStart(&SD1, &bleUartConfig); + sdStart(&SD1, &ble_uart_config); annepro2_ble_startup(); // Give the send uart thread some time to @@ -97,7 +101,11 @@ void keyboard_post_init_kb(void) { // loop to clear out receive buffer from ble wakeup while (!sdGetWouldBlock(&SD1)) sdGet(&SD1); - annepro2LedGetStatus(); + ap2_led_get_status(); + + #ifdef RGB_MATRIX_ENABLE + ap2_led_enable(); + #endif keyboard_post_init_user(); } @@ -106,25 +114,35 @@ void matrix_scan_kb() { // if there's stuff on the ble serial buffer // read it into the capslock struct while (!sdGetWouldBlock(&SD1)) { - sdReadTimeout(&SD1, (uint8_t *)&BLECapsLock, sizeof(ble_capslock_t), 10); + sdReadTimeout(&SD1, (uint8_t *)&ble_capslock, sizeof(ble_capslock_t), 10); } /* While there's data from LED keyboard sent - read it. */ while (!sdGetWouldBlock(&SD0)) { uint8_t byte = sdGet(&SD0); - protoConsume(&proto, byte); + proto_consume(&proto, byte); } + #ifdef RGB_MATRIX_ENABLE + /* If there's data ready to be sent to LED MCU - send it. */ + if(rgb_row_changed[current_rgb_row]) + { + rgb_row_changed[current_rgb_row] = 0; + ap2_led_mask_set_row(current_rgb_row); + } + current_rgb_row = (current_rgb_row + 1) % NUM_ROW; + #endif + matrix_scan_user(); } bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { - if (annepro2LedStatus.matrixEnabled && annepro2LedStatus.isReactive) { - annepro2LedForwardKeypress(record->event.key.row, record->event.key.col); + if (ap2_led_status.matrix_enabled && ap2_led_status.is_reactive) { + ap2_led_forward_keypress(record->event.key.row, record->event.key.col); } - const annepro2Led_t blue = { + const ap2_led_t blue = { .p.blue = 0xff, .p.red = 0x00, .p.green = 0x00, @@ -135,22 +153,22 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { case KC_AP2_BT1: annepro2_ble_broadcast(0); /* FIXME: This hardcodes col/row position */ - annepro2LedBlink(0, 1, blue, 8, 50); + ap2_led_blink(0, 1, blue, 8, 50); return false; case KC_AP2_BT2: annepro2_ble_broadcast(1); - annepro2LedBlink(0, 2, blue, 8, 50); + ap2_led_blink(0, 2, blue, 8, 50); return false; case KC_AP2_BT3: annepro2_ble_broadcast(2); - annepro2LedBlink(0, 3, blue, 8, 50); + ap2_led_blink(0, 3, blue, 8, 50); return false; case KC_AP2_BT4: annepro2_ble_broadcast(3); - annepro2LedBlink(0, 4, blue, 8, 50); + ap2_led_blink(0, 4, blue, 8, 50); return false; case KC_AP2_USB: @@ -162,37 +180,43 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { return false; case KC_AP_LED_OFF: - annepro2LedDisable(); + ap2_led_disable(); break; case KC_AP_LED_ON: - if (annepro2LedStatus.matrixEnabled) { - annepro2LedNextProfile(); + if (ap2_led_status.matrix_enabled) { + ap2_led_next_profile(); } else { - annepro2LedEnable(); + ap2_led_enable(); } - annepro2LedResetForegroundColor(); + ap2_led_reset_foreground_color(); break; case KC_AP_LED_NEXT_PROFILE: - annepro2LedNextProfile(); - annepro2LedResetForegroundColor(); + ap2_led_next_profile(); + ap2_led_reset_foreground_color(); break; case KC_AP_LED_PREV_PROFILE: - annepro2LedPrevProfile(); - annepro2LedResetForegroundColor(); + ap2_led_prev_profile(); + ap2_led_reset_foreground_color(); break; case KC_AP_LED_NEXT_INTENSITY: - annepro2LedNextIntensity(); - annepro2LedResetForegroundColor(); + ap2_led_next_intensity(); + ap2_led_reset_foreground_color(); return false; case KC_AP_LED_SPEED: - annepro2LedNextAnimationSpeed(); - annepro2LedResetForegroundColor(); + ap2_led_next_animation_speed(); + ap2_led_reset_foreground_color(); return false; + #ifdef RGB_MATRIX_ENABLE + case RGB_TOG: + if(rgb_matrix_is_enabled()) ap2_led_disable(); + else ap2_led_enable(); + return true; + #endif default: break; diff --git a/keyboards/annepro2/annepro2.h b/keyboards/annepro2/annepro2.h index b08f8c5352..1b5933f577 100644 --- a/keyboards/annepro2/annepro2.h +++ b/keyboards/annepro2/annepro2.h @@ -24,16 +24,16 @@ typedef struct __attribute__((__packed__)) { uint8_t _dummy[10]; bool caps_lock; } ble_capslock_t; -extern ble_capslock_t BLECapsLock; +extern ble_capslock_t ble_capslock; // Matrix keymap // clang-format off -#define LAYOUT( \ +#define LAYOUT_60_ansi( \ 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, \ K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, \ - K40, K42, K43, K46, K49, K4A, K4B, K4C \ + K40, K42, K43, K46, K49, K4A, K4B, K4C \ ) { \ /* COL1 COL2 COL3 COL4 COL5 COL6 COL7 COL8 COL9 COL10 COL11 COL12 COL13 COL14*/ \ /* ROW1 */ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D }, \ diff --git a/keyboards/annepro2/annepro2_ble.c b/keyboards/annepro2/annepro2_ble.c index 72cbb68016..0336d6a76c 100644 --- a/keyboards/annepro2/annepro2_ble.c +++ b/keyboards/annepro2/annepro2_ble.c @@ -35,47 +35,47 @@ static host_driver_t ap2_ble_driver = { ap2_ble_leds, ap2_ble_keyboard, ap2_ble_mouse, ap2_ble_system, ap2_ble_consumer, }; -static uint8_t bleMcuWakeup[11] = {0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x01, 0x7d, 0x02, 0x01, 0x02}; +static uint8_t ble_mcu_wakeup[11] = {0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x01, 0x7d, 0x02, 0x01, 0x02}; -static uint8_t bleMcuStartBroadcast[11] = { +static uint8_t ble_mcu_start_broadcast[11] = { 0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x00, 0x7d, 0x40, 0x01, 0x00 // Broadcast ID[0-3] }; -static uint8_t bleMcuConnect[11] = { +static uint8_t ble_mcu_connect[11] = { 0x7b, 0x12, 0x53, 0x00, 0x03, 0x00, 0x00, 0x7d, 0x40, 0x04, 0x00 // Connect ID [0-3] }; -static uint8_t bleMcuSendReport[10] = { +static uint8_t ble_mcu_send_report[10] = { 0x7b, 0x12, 0x53, 0x00, 0x0A, 0x00, 0x00, 0x7d, 0x10, 0x04, }; -static uint8_t bleMcuSendConsumerReport[10] = { +static uint8_t ble_mcu_send_consumer_report[10] = { 0x7b, 0x12, 0x53, 0x00, 0x06, 0x00, 0x00, 0x7d, 0x10, 0x08, }; -static uint8_t bleMcuUnpair[10] = { +static uint8_t ble_mcu_unpair[10] = { 0x7b, 0x12, 0x53, 0x00, 0x02, 0x00, 0x00, 0x7d, 0x40, 0x05, }; -static uint8_t bleMcuBootload[11] = {0x7b, 0x10, 0x51, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x01}; +static uint8_t ble_mcu_bootload[11] = {0x7b, 0x10, 0x51, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x01}; -static host_driver_t *lastHostDriver = NULL; +static host_driver_t *last_host_driver = NULL; #ifdef NKRO_ENABLE static bool lastNkroStatus = false; #endif // NKRO_ENABLE /* -------------------- Public Function Implementation ---------------------- */ -void annepro2_ble_bootload(void) { sdWrite(&SD1, bleMcuBootload, sizeof(bleMcuBootload)); } +void annepro2_ble_bootload(void) { sdWrite(&SD1, ble_mcu_bootload, sizeof(ble_mcu_bootload)); } -void annepro2_ble_startup(void) { sdWrite(&SD1, bleMcuWakeup, sizeof(bleMcuWakeup)); } +void annepro2_ble_startup(void) { sdWrite(&SD1, ble_mcu_wakeup, sizeof(ble_mcu_wakeup)); } void annepro2_ble_broadcast(uint8_t port) { if (port > 3) { port = 3; } // sdPut(&SD1, 0x00); - sdWrite(&SD1, bleMcuStartBroadcast, sizeof(bleMcuStartBroadcast)); + sdWrite(&SD1, ble_mcu_start_broadcast, sizeof(ble_mcu_start_broadcast)); sdPut(&SD1, port); static int lastBroadcast = -1; if (lastBroadcast == port) { @@ -88,7 +88,7 @@ void annepro2_ble_connect(uint8_t port) { if (port > 3) { port = 3; } - sdWrite(&SD1, bleMcuConnect, sizeof(bleMcuConnect)); + sdWrite(&SD1, ble_mcu_connect, sizeof(ble_mcu_connect)); sdPut(&SD1, port); ap2_ble_swtich_ble_driver(); } @@ -103,12 +103,12 @@ void annepro2_ble_disconnect(void) { #ifdef NKRO_ENABLE keymap_config.nkro = lastNkroStatus; #endif - host_set_driver(lastHostDriver); + host_set_driver(last_host_driver); } void annepro2_ble_unpair(void) { // sdPut(&SD1, 0x0); - sdWrite(&SD1, bleMcuUnpair, sizeof(bleMcuUnpair)); + sdWrite(&SD1, ble_mcu_unpair, sizeof(ble_mcu_unpair)); } /* ------------------- Static Function Implementation ----------------------- */ @@ -117,7 +117,7 @@ static void ap2_ble_swtich_ble_driver(void) { return; } clear_keyboard(); - lastHostDriver = host_get_driver(); + last_host_driver = host_get_driver(); #ifdef NKRO_ENABLE lastNkroStatus = keymap_config.nkro; #endif @@ -154,7 +154,7 @@ static inline uint16_t CONSUMER2AP2(uint16_t usage) { static void ap2_ble_consumer(uint16_t data) { sdPut(&SD1, 0x0); - sdWrite(&SD1, bleMcuSendConsumerReport, sizeof(bleMcuSendConsumerReport)); + sdWrite(&SD1, ble_mcu_send_consumer_report, sizeof(ble_mcu_send_consumer_report)); sdPut(&SD1, CONSUMER2AP2(data)); static const uint8_t dummy[3] = {0}; sdWrite(&SD1, dummy, sizeof(dummy)); @@ -165,6 +165,6 @@ static void ap2_ble_consumer(uint16_t data) { */ static void ap2_ble_keyboard(report_keyboard_t *report) { sdPut(&SD1, 0x0); - sdWrite(&SD1, bleMcuSendReport, sizeof(bleMcuSendReport)); + sdWrite(&SD1, ble_mcu_send_report, sizeof(ble_mcu_send_report)); sdWrite(&SD1, &report->raw[0], KEYBOARD_REPORT_SIZE); } diff --git a/keyboards/annepro2/ap2_led.c b/keyboards/annepro2/ap2_led.c index 9969fcd02a..73b21f6eb1 100644 --- a/keyboards/annepro2/ap2_led.c +++ b/keyboards/annepro2/ap2_led.c @@ -21,28 +21,29 @@ #include "ap2_led.h" #include "protocol.h" -annepro2Led_t ledMask[KEY_COUNT]; -annepro2LedStatus_t annepro2LedStatus; +ap2_led_t led_mask[KEY_COUNT]; +ap2_led_status_t ap2_led_status; +uint8_t rgb_row_changed[NUM_ROW]; -void ledCommandCallback(const message_t *msg) { +void led_command_callback(const message_t *msg) { switch (msg->command) { case CMD_LED_STATUS: - annepro2LedStatus.amountOfProfiles = msg->payload[0]; - annepro2LedStatus.currentProfile = msg->payload[1]; - annepro2LedStatus.matrixEnabled = msg->payload[2]; - annepro2LedStatus.isReactive = msg->payload[3]; - annepro2LedStatus.ledIntensity = msg->payload[4]; - annepro2LedStatus.errors = msg->payload[5]; + ap2_led_status.amount_of_profiles = msg->payload[0]; + ap2_led_status.current_profile = msg->payload[1]; + ap2_led_status.matrix_enabled = msg->payload[2]; + ap2_led_status.is_reactive = msg->payload[3]; + ap2_led_status.led_intensity = msg->payload[4]; + ap2_led_status.errors = msg->payload[5]; break; #ifdef CONSOLE_ENABLE case CMD_LED_DEBUG: /* TODO: Don't use printf. */ printf("LED:"); - for (int i = 0; i < msg->payloadSize; i++) { + for (int i = 0; i < msg->payload_size; i++) { printf("%02x ", msg->payload[i]); } - for (int i = 0; i < msg->payloadSize; i++) { + for (int i = 0; i < msg->payload_size; i++) { printf("%c", msg->payload[i]); } printf("\n"); @@ -51,63 +52,63 @@ void ledCommandCallback(const message_t *msg) { } } -void annepro2SetIAP(void) { protoTx(CMD_LED_IAP, NULL, 0, 3); } +void ap2_set_IAP(void) { proto_tx(CMD_LED_IAP, NULL, 0, 3); } -void annepro2LedDisable(void) { protoTx(CMD_LED_OFF, NULL, 0, 3); } +void ap2_led_disable(void) { proto_tx(CMD_LED_OFF, NULL, 0, 3); } -void annepro2LedEnable(void) { protoTx(CMD_LED_ON, NULL, 0, 3); } +void ap2_led_enable(void) { proto_tx(CMD_LED_ON, NULL, 0, 3); } -void annepro2LedSetProfile(uint8_t prof) { protoTx(CMD_LED_SET_PROFILE, &prof, sizeof(prof), 3); } +void ap2_led_set_profile(uint8_t prof) { proto_tx(CMD_LED_SET_PROFILE, &prof, sizeof(prof), 3); } -void annepro2LedGetStatus() { protoTx(CMD_LED_GET_STATUS, NULL, 0, 3); } +void ap2_led_get_status() { proto_tx(CMD_LED_GET_STATUS, NULL, 0, 3); } -void annepro2LedNextProfile() { protoTx(CMD_LED_NEXT_PROFILE, NULL, 0, 3); } +void ap2_led_next_profile() { proto_tx(CMD_LED_NEXT_PROFILE, NULL, 0, 3); } -void annepro2LedNextIntensity() { protoTx(CMD_LED_NEXT_INTENSITY, NULL, 0, 3); } +void ap2_led_next_intensity() { proto_tx(CMD_LED_NEXT_INTENSITY, NULL, 0, 3); } -void annepro2LedNextAnimationSpeed() { protoTx(CMD_LED_NEXT_ANIMATION_SPEED, NULL, 0, 3); } +void ap2_led_next_animation_speed() { proto_tx(CMD_LED_NEXT_ANIMATION_SPEED, NULL, 0, 3); } -void annepro2LedPrevProfile() { protoTx(CMD_LED_PREV_PROFILE, NULL, 0, 3); } +void ap2_led_prev_profile() { proto_tx(CMD_LED_PREV_PROFILE, NULL, 0, 3); } -void annepro2LedMaskSetKey(uint8_t row, uint8_t col, annepro2Led_t color) { +void ap2_led_mask_set_key(uint8_t row, uint8_t col, ap2_led_t color) { uint8_t payload[] = {row, col, color.p.blue, color.p.green, color.p.red, color.p.alpha}; - protoTx(CMD_LED_MASK_SET_KEY, payload, sizeof(payload), 1); + proto_tx(CMD_LED_MASK_SET_KEY, payload, sizeof(payload), 1); } /* Push a whole local row to the shine */ -void annepro2LedMaskSetRow(uint8_t row) { - uint8_t payload[NUM_COLUMN * sizeof(annepro2Led_t) + 1]; +void ap2_led_mask_set_row(uint8_t row) { + uint8_t payload[NUM_COLUMN * sizeof(ap2_led_t) + 1]; payload[0] = row; - memcpy(payload + 1, &ledMask[ROWCOL2IDX(row, 0)], sizeof(*ledMask) * NUM_COLUMN); - protoTx(CMD_LED_MASK_SET_ROW, payload, sizeof(payload), 1); + memcpy(payload + 1, &led_mask[ROWCOL2IDX(row, 0)], sizeof(*led_mask) * NUM_COLUMN); + proto_tx(CMD_LED_MASK_SET_ROW, payload, sizeof(payload), 1); } /* Synchronize all rows */ -void annepro2LedMaskSetAll(void) { - for (int row = 0; row < 5; row++) annepro2LedMaskSetRow(row); +void ap2_led_mask_set_all(void) { + for (int row = 0; row < 5; row++) ap2_led_mask_set_row(row); } /* Set all keys to a given color */ -void annepro2LedMaskSetMono(const annepro2Led_t color) { protoTx(CMD_LED_MASK_SET_MONO, (uint8_t *)&color, sizeof(color), 1); } +void ap2_led_mask_set_mono(const ap2_led_t color) { proto_tx(CMD_LED_MASK_SET_MONO, (uint8_t *)&color, sizeof(color), 1); } -void annepro2LedBlink(uint8_t row, uint8_t col, annepro2Led_t color, uint8_t count, uint8_t hundredths) { +void ap2_led_blink(uint8_t row, uint8_t col, ap2_led_t color, uint8_t count, uint8_t hundredths) { uint8_t payload[] = {row, col, color.p.blue, color.p.green, color.p.red, color.p.alpha, count, hundredths}; - protoTx(CMD_LED_KEY_BLINK, payload, sizeof(payload), 1); + proto_tx(CMD_LED_KEY_BLINK, payload, sizeof(payload), 1); } -void annepro2LedSetForegroundColor(uint8_t red, uint8_t green, uint8_t blue) { - annepro2Led_t color = {.p.red = red, .p.green = green, .p.blue = blue, .p.alpha = 0xff}; - annepro2LedMaskSetMono(color); +void ap2_led_set_foreground_color(uint8_t red, uint8_t green, uint8_t blue) { + ap2_led_t color = {.p.red = red, .p.green = green, .p.blue = blue, .p.alpha = 0xff}; + ap2_led_mask_set_mono(color); } -void annepro2LedResetForegroundColor() { - annepro2Led_t color = { +void ap2_led_reset_foreground_color() { + ap2_led_t color = { .p.red = 0, .p.green = 0, .p.blue = 0, .p.alpha = 0, }; - annepro2LedMaskSetMono(color); + ap2_led_mask_set_mono(color); } /* @@ -128,7 +129,7 @@ void annepro2LedResetForegroundColor() { * Following it are 3 bits of row and 4 bits of col. * 1 + 3 + 4 = 8 bits - only a single byte is sent for every keypress. */ -void annepro2LedForwardKeypress(uint8_t row, uint8_t col) { +void ap2_led_forward_keypress(uint8_t row, uint8_t col) { const uint8_t payload = row << 4 | col; - protoTx(CMD_LED_KEY_DOWN, &payload, 1, 1); + proto_tx(CMD_LED_KEY_DOWN, &payload, 1, 1); } diff --git a/keyboards/annepro2/ap2_led.h b/keyboards/annepro2/ap2_led.h index 23712a2555..b68589d204 100644 --- a/keyboards/annepro2/ap2_led.h +++ b/keyboards/annepro2/ap2_led.h @@ -1,18 +1,18 @@ /* Copyright 2021 OpenAnnePro 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 . - */ + * + * 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 . + */ #pragma once @@ -31,54 +31,63 @@ typedef union { uint8_t pv[4]; /* 0xrgb in mem is b g r a */ uint32_t rgb; -} annepro2Led_t; +} ap2_led_t; #define ROWCOL2IDX(row, col) (NUM_COLUMN * (row) + (col)) #define NUM_COLUMN 14 #define NUM_ROW 5 #define KEY_COUNT 70 -/* Local copy of ledMask, used to override colors on the board */ -extern annepro2Led_t ledMask[KEY_COUNT]; +/* Local copy of led_mask, used to override colors on the board */ +extern ap2_led_t led_mask[KEY_COUNT]; +extern uint8_t rgb_row_changed[NUM_ROW]; /* Handle incoming messages */ -extern void ledCommandCallback(const message_t *msg); +extern void led_command_callback(const message_t *msg); -void annepro2SetIAP(void); -void annepro2LedDisable(void); -void annepro2LedEnable(void); -void annepro2LedSetProfile(uint8_t prof); -void annepro2LedGetStatus(void); -void annepro2LedNextProfile(void); -void annepro2LedPrevProfile(void); -void annepro2LedNextIntensity(void); -void annepro2LedNextAnimationSpeed(void); -void annepro2LedForwardKeypress(uint8_t row, uint8_t col); +void ap2_set_IAP(void); +void ap2_led_disable(void); +void ap2_led_enable(void); +void ap2_led_set_profile(uint8_t prof); +void ap2_led_get_status(void); +void ap2_led_next_profile(void); +void ap2_led_prev_profile(void); +void ap2_led_next_intensity(void); +void ap2_led_next_animation_speed(void); +void ap2_led_forward_keypress(uint8_t row, uint8_t col); /* Set single key to a given color; alpha controls which is displayed */ -void annepro2LedMaskSetKey(uint8_t row, uint8_t col, annepro2Led_t color); +void ap2_led_mask_set_key(uint8_t row, uint8_t col, ap2_led_t color); /* Push a whole local row to the shine */ -void annepro2LedMaskSetRow(uint8_t row); +void ap2_led_mask_set_row(uint8_t row); /* Synchronize all rows */ -void annepro2LedMaskSetAll(void); +void ap2_led_mask_set_all(void); /* Set all keys to a given color */ -void annepro2LedMaskSetMono(annepro2Led_t color); +void ap2_led_mask_set_mono(ap2_led_t color); /* Blink given key `count` times by masking it with a `color`. Blink takes `hundredths` of a second */ -void annepro2LedBlink(uint8_t row, uint8_t col, annepro2Led_t color, uint8_t count, uint8_t hundredths); +void ap2_led_blink(uint8_t row, uint8_t col, ap2_led_t color, uint8_t count, uint8_t hundredths); /* Kept for compatibility, but implemented using masks */ -void annepro2LedSetForegroundColor(uint8_t red, uint8_t green, uint8_t blue); -void annepro2LedResetForegroundColor(void); +void ap2_led_set_foreground_color(uint8_t red, uint8_t green, uint8_t blue); +void ap2_led_reset_foreground_color(void); typedef struct { - uint8_t amountOfProfiles; - uint8_t currentProfile; - uint8_t matrixEnabled; - uint8_t isReactive; - uint8_t ledIntensity; + uint8_t amount_of_profiles; + uint8_t current_profile; + uint8_t matrix_enabled; + uint8_t is_reactive; + uint8_t led_intensity; uint8_t errors; -} annepro2LedStatus_t; +} ap2_led_status_t; -extern annepro2LedStatus_t annepro2LedStatus; +extern ap2_led_status_t ap2_led_status; + +#ifdef RGB_MATRIX_ENABLE +/* RGB driver functions */ +void init(void); +void flush(void); +void set_color(int index, uint8_t r, uint8_t g, uint8_t b); +void set_color_all(uint8_t r, uint8_t g, uint8_t b); +#endif diff --git a/keyboards/annepro2/c15/config.h b/keyboards/annepro2/c15/config.h index f28a6a1b53..012b412dc9 100644 --- a/keyboards/annepro2/c15/config.h +++ b/keyboards/annepro2/c15/config.h @@ -18,6 +18,7 @@ #pragma once #include "pin_defs.h" +#include "config_led.h" /* USB Device descriptor parameter */ #define VENDOR_ID 0xfeed diff --git a/keyboards/annepro2/c15/rules.mk b/keyboards/annepro2/c15/rules.mk index 554ddc28ce..5cef8b8a87 100644 --- a/keyboards/annepro2/c15/rules.mk +++ b/keyboards/annepro2/c15/rules.mk @@ -3,7 +3,9 @@ SRC = \ matrix.c \ annepro2_ble.c \ ap2_led.c \ - protocol.c + protocol.c \ + rgb_driver.c \ + config_led.c # MCU MCU = cortex-m0plus @@ -24,6 +26,7 @@ NKRO_ENABLE = no MOUSEKEY_ENABLE = no EXTRAKEY_ENABLE = yes KEY_LOCK_ENABLE = no +LAYOUTS = 60_ansi # Other featues BOOTMAGIC_ENABLE = no diff --git a/keyboards/annepro2/c18/config.h b/keyboards/annepro2/c18/config.h index f610ef76e4..5887333f2e 100644 --- a/keyboards/annepro2/c18/config.h +++ b/keyboards/annepro2/c18/config.h @@ -18,6 +18,7 @@ #pragma once #include "pin_defs.h" +#include "config_led.h" /* USB Device descriptor parameter */ #define VENDOR_ID 0xfeed diff --git a/keyboards/annepro2/c18/rules.mk b/keyboards/annepro2/c18/rules.mk index b2e16cc35f..afc248dafa 100644 --- a/keyboards/annepro2/c18/rules.mk +++ b/keyboards/annepro2/c18/rules.mk @@ -3,7 +3,9 @@ SRC = \ matrix.c \ annepro2_ble.c \ ap2_led.c \ - protocol.c + protocol.c \ + rgb_driver.c \ + config_led.c # MCU MCU = cortex-m0plus @@ -24,6 +26,7 @@ NKRO_ENABLE = no MOUSEKEY_ENABLE = no EXTRAKEY_ENABLE = yes KEY_LOCK_ENABLE = no +LAYOUTS = 60_ansi # Other featues BOOTMAGIC_ENABLE = yes diff --git a/keyboards/annepro2/config_led.c b/keyboards/annepro2/config_led.c new file mode 100644 index 0000000000..efa68dff3d --- /dev/null +++ b/keyboards/annepro2/config_led.c @@ -0,0 +1,43 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#ifdef RGB_MATRIX_ENABLE + +#include "rgb_matrix.h" +#include "config_led.h" + +#define NA NO_LED + +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, + { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 }, + { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, NA }, + { 41, NA, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, NA }, + { 53, NA, 54, 55, NA, NA, 56, NA, NA, 57, 58, 59, 60, NA } +}, { + { 0 , 0 }, { 16, 0 }, { 32, 0 }, { 48, 0 }, { 65, 0 }, { 81, 0 }, { 97 , 0 }, { 113, 0 }, { 129, 0 }, { 145, 0 }, { 161, 0 }, { 178, 0 }, { 194, 0 }, { 218, 0 }, + { 4 , 16 }, { 24, 16 }, { 40, 16 }, { 57, 16 }, { 73, 16 }, { 89, 16 }, { 105, 16 }, { 121, 16 }, { 137, 16 }, { 153, 16 }, { 170, 16 }, { 186, 16 }, { 202, 16 }, { 222, 16 }, + { 6 , 32 }, { 28, 32 }, { 44, 32 }, { 61, 32 }, { 77, 32 }, { 93, 32 }, { 109, 32 }, { 125, 32 }, { 141, 32 }, { 157, 32 }, { 174, 32 }, { 190, 32 }, { 216, 32 }, + { 10, 48 }, { 36, 48 }, { 52, 48 }, { 69, 48 }, { 85, 48 }, { 101, 48 }, { 117, 48 }, { 133, 48 }, { 149, 48 }, { 165, 48 }, { 182, 48 }, { 212, 48 }, + { 2 , 64 }, { 22, 64 }, { 42, 64 }, { 103, 64 }, { 163, 64 }, { 184, 64 }, { 204, 64 }, { 224, 64 }, +}, { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 1, 4, 1, 1, 1, 1, +} }; +#endif diff --git a/keyboards/annepro2/config_led.h b/keyboards/annepro2/config_led.h new file mode 100644 index 0000000000..19a1dd4baa --- /dev/null +++ b/keyboards/annepro2/config_led.h @@ -0,0 +1,72 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#pragma once + +#ifdef RGB_MATRIX_ENABLE + +#define DRIVER_LED_TOTAL 61 + +/* Limit animations to 62.5 FPS to avoid tearing. (1/.016 = 62.5 FPS). */ +#define RGB_MATRIX_LED_FLUSH_LIMIT 16 + +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES +#define ENABLE_RGB_MATRIX_ALPHAS_MODS +#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_BAND_SAT +#define ENABLE_RGB_MATRIX_BAND_VAL +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#define ENABLE_RGB_MATRIX_DUAL_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +#define ENABLE_RGB_MATRIX_RAINDROPS +#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#define ENABLE_RGB_MATRIX_HUE_BREATHING +#define ENABLE_RGB_MATRIX_HUE_PENDULUM +#define ENABLE_RGB_MATRIX_HUE_WAVE +#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +#define ENABLE_RGB_MATRIX_PIXEL_FLOW +#define ENABLE_RGB_MATRIX_PIXEL_RAIN +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_DIGITAL_RAIN +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +#define ENABLE_RGB_MATRIX_SPLASH +#define ENABLE_RGB_MATRIX_MULTISPLASH +#define ENABLE_RGB_MATRIX_SOLID_SPLASH +#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + +#endif diff --git a/keyboards/annepro2/info.json b/keyboards/annepro2/info.json index 8fd515bd10..8d6c85b5d1 100644 --- a/keyboards/annepro2/info.json +++ b/keyboards/annepro2/info.json @@ -3,7 +3,7 @@ "url": "https://openannepro.github.io/", "maintainer": "community", "layouts": { - "LAYOUT": { + "LAYOUT_60_ansi": { "layout": [ { "label": "~", diff --git a/keyboards/annepro2/keymaps/default-full-caps/keymap.c b/keyboards/annepro2/keymaps/default-full-caps/keymap.c index 8ac9211ac4..c87447d311 100644 --- a/keyboards/annepro2/keymaps/default-full-caps/keymap.c +++ b/keyboards/annepro2/keymaps/default-full-caps/keymap.c @@ -1,32 +1,31 @@ /* Copyright 2021 OpenAnnePro 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 . - */ + * + * 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 . + */ #include QMK_KEYBOARD_H enum anne_pro_layers { - _BASE_LAYER, - _FN1_LAYER, - _FN2_LAYER, + BASE, + FN1, + FN2, }; // clang-format off - // Key symbols are based on QMK. Use them to remap your keyboard /* -* Layer _BASE_LAYER +* Layer BASE * ,-----------------------------------------------------------------------------------------. * | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | * |-----------------------------------------------------------------------------------------+ @@ -38,7 +37,7 @@ enum anne_pro_layers { * |-----------------------------------------------------------------------------------------+ * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | * \-----------------------------------------------------------------------------------------/ -* Layer TAP in _BASE_LAYER +* Layer TAP in BASE * ,-----------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------+ @@ -52,15 +51,15 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ */ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE_LAYER] = LAYOUT( /* Base */ - 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_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, - LT(_FN1_LAYER,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, RSFT_T(KC_UP), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) + [BASE] = LAYOUT_60_ansi( /* Base */ + 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_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, + LT(FN1, 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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(FN1, KC_LEFT), LT(FN2, KC_DOWN), RCTL_T(KC_RGHT) ), /* - * Layer _FN1_LAYER + * Layer FN1 * ,-----------------------------------------------------------------------------------------. * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | * |-----------------------------------------------------------------------------------------+ @@ -74,15 +73,15 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN1_LAYER] = LAYOUT( /* Base */ - KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS + [FN1] = LAYOUT_60_ansi( /* FN1 */ + KC_GRV, 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_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, MO(FN2), _______ ), /* - * Layer _FN2_LAYER + * Layer FN2 * ,-----------------------------------------------------------------------------------------. * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | * |-----------------------------------------------------------------------------------------+ @@ -96,24 +95,23 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN2_LAYER] = LAYOUT( /* Base */ - KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, - MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + [FN2] = LAYOUT_60_ansi( /* FN2 */ + _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, _______, KC_AP_LED_OFF, KC_AP_LED_ON, _______, _______, _______, _______, + MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, MO(FN1), MO(FN2), _______ ), }; - // clang-format on // The function to handle the caps lock logic bool led_update_user(led_t leds) { if (leds.caps_lock) { // Set the leds to red - annepro2LedSetForegroundColor(0xFF, 0x00, 0x00); + ap2_led_set_foreground_color(0xFF, 0x00, 0x00); } else { - annepro2LedResetForegroundColor(); + ap2_led_reset_foreground_color(); } return true; diff --git a/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c index ac2b421d06..405769466a 100644 --- a/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c +++ b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c @@ -1,32 +1,31 @@ /* Copyright 2021 OpenAnnePro 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 . - */ + * + * 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 . + */ #include QMK_KEYBOARD_H enum anne_pro_layers { - _BASE_LAYER, - _FN1_LAYER, - _FN2_LAYER, + BASE, + FN1, + FN2, }; // clang-format off - // Key symbols are based on QMK. Use them to remap your keyboard /* -* Layer _BASE_LAYER +* Layer BASE * ,-----------------------------------------------------------------------------------------. * | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | * |-----------------------------------------------------------------------------------------+ @@ -38,7 +37,7 @@ enum anne_pro_layers { * |-----------------------------------------------------------------------------------------+ * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | * \-----------------------------------------------------------------------------------------/ -* Layer TAP in _BASE_LAYER +* Layer TAP in BASE * ,-----------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------+ @@ -52,15 +51,15 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ */ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE_LAYER] = LAYOUT( /* Base */ - 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_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, - LT(_FN1_LAYER,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, RSFT_T(KC_UP), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) + [BASE] = LAYOUT_60_ansi( /* Base */ + 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_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, + LT(FN1, 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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(FN1, KC_LEFT), LT(FN2, KC_DOWN), RCTL_T(KC_RGHT) ), /* - * Layer _FN1_LAYER + * Layer FN1 * ,-----------------------------------------------------------------------------------------. * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | * |-----------------------------------------------------------------------------------------+ @@ -74,15 +73,15 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN1_LAYER] = LAYOUT( /* Base */ - KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS + [FN1] = LAYOUT_60_ansi( /* FN1 */ + KC_GRV, 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_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, MO(FN2), _______ ), /* - * Layer _FN2_LAYER + * Layer FN2 * ,-----------------------------------------------------------------------------------------. * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | * |-----------------------------------------------------------------------------------------+ @@ -96,30 +95,29 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN2_LAYER] = LAYOUT( /* Base */ - KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, - MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + [FN2] = LAYOUT_60_ansi( /* FN2 */ + _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, _______, KC_AP_LED_OFF, KC_AP_LED_ON, _______, _______, _______, _______, + MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, MO(FN1), MO(FN2), _______ ), }; - // clang-format on layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { - case _FN1_LAYER: + case FN1: // Set the leds to green - annepro2LedSetForegroundColor(0x00, 0xFF, 0x00); + ap2_led_set_foreground_color(0x00, 0xFF, 0x00); break; - case _FN2_LAYER: + case FN2: // Set the leds to blue - annepro2LedSetForegroundColor(0x00, 0x00, 0xFF); + ap2_led_set_foreground_color(0x00, 0x00, 0xFF); break; default: // Reset back to the current profile - annepro2LedResetForegroundColor(); + ap2_led_reset_foreground_color(); break; } return state; @@ -130,16 +128,16 @@ layer_state_t layer_state_set_user(layer_state_t state) { bool led_update_user(led_t leds) { if (leds.caps_lock) { // Set the caps-lock to red - const annepro2Led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0xff}; + const ap2_led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0xff}; - annepro2LedMaskSetKey(2, 0, color); + ap2_led_mask_set_key(2, 0, color); /* NOTE: Instead of colouring the capslock only, you can change the whole - keyboard with annepro2LedSetForegroundColor */ + keyboard with ap2_led_set_foreground_color */ } else { // Reset the capslock if there is no layer active - if (!layer_state_is(_FN1_LAYER) && !layer_state_is(_FN2_LAYER)) { - const annepro2Led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0x00}; - annepro2LedMaskSetKey(2, 0, color); + if (!layer_state_is(FN1) && !layer_state_is(FN2)) { + const ap2_led_t color = {.p.red = 0xff, .p.green = 0x00, .p.blue = 0x00, .p.alpha = 0x00}; + ap2_led_mask_set_key(2, 0, color); } } diff --git a/keyboards/annepro2/keymaps/default/keymap.c b/keyboards/annepro2/keymaps/default/keymap.c index a984b05830..8f5b639bb8 100644 --- a/keyboards/annepro2/keymaps/default/keymap.c +++ b/keyboards/annepro2/keymaps/default/keymap.c @@ -1,31 +1,31 @@ /* Copyright 2021 OpenAnnePro 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 . - */ + * + * 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 . + */ #include QMK_KEYBOARD_H enum anne_pro_layers { - _BASE_LAYER, - _FN1_LAYER, - _FN2_LAYER, + BASE, + FN1, + FN2, }; // clang-format off // Key symbols are based on QMK. Use them to remap your keyboard /* -* Layer _BASE_LAYER +* Layer BASE * ,-----------------------------------------------------------------------------------------. * | esc | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | Bksp | * |-----------------------------------------------------------------------------------------+ @@ -37,7 +37,7 @@ enum anne_pro_layers { * |-----------------------------------------------------------------------------------------+ * | Ctrl | L1 | Alt | space | Alt | FN1 | FN2 | Ctrl | * \-----------------------------------------------------------------------------------------/ -* Layer TAP in _BASE_LAYER +* Layer TAP in BASE * ,-----------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | * |-----------------------------------------------------------------------------------------+ @@ -51,15 +51,15 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ */ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE_LAYER] = LAYOUT( /* Base */ - 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_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, - LT(_FN1_LAYER,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, RSFT_T(KC_UP), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_FN1_LAYER,KC_LEFT), LT(_FN2_LAYER,KC_DOWN), RCTL_T(KC_RGHT) + [BASE] = LAYOUT_60_ansi( /* Base */ + 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_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, + LT(FN1, 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, RSFT_T(KC_UP), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(FN1, KC_LEFT), LT(FN2, KC_DOWN), RCTL_T(KC_RGHT) ), /* - * Layer _FN1_LAYER + * Layer FN1 * ,-----------------------------------------------------------------------------------------. * | ` | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE | * |-----------------------------------------------------------------------------------------+ @@ -73,17 +73,17 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN1_LAYER] = LAYOUT( /* Base */ - KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN2_LAYER), KC_TRNS + [FN1] = LAYOUT_60_ansi( /* FN1 */ + KC_GRV, 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_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, KC_VOLU, KC_VOLD, KC_MUTE, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, MO(FN2), _______ ), /* - * Layer _FN2_LAYER + * Layer FN2 * ,-----------------------------------------------------------------------------------------. - * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | HUE | SAT | BRI | SPD | MOD | TOG | Bksp | * |-----------------------------------------------------------------------------------------+ * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | * |-----------------------------------------------------------------------------------------+ @@ -95,12 +95,12 @@ enum anne_pro_layers { * \-----------------------------------------------------------------------------------------/ * */ - [_FN2_LAYER] = LAYOUT( /* Base */ - KC_TRNS, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, KC_TRNS, KC_TRNS, KC_TRNS, KC_AP_LED_OFF, KC_AP_LED_ON, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, KC_TRNS, KC_TRNS, - MO(_FN2_LAYER), KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_HOME, KC_END, KC_TRNS, - KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_PGDN, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_FN1_LAYER), MO(_FN2_LAYER), KC_TRNS + [FN2] = LAYOUT_60_ansi( /* FN2 */ + _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_MOD, RGB_TOG, _______, + MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, MO(FN1), MO(FN2), _______ ), }; // clang-format on diff --git a/keyboards/annepro2/keymaps/default/rules.mk b/keyboards/annepro2/keymaps/default/rules.mk new file mode 100644 index 0000000000..ca1110b835 --- /dev/null +++ b/keyboards/annepro2/keymaps/default/rules.mk @@ -0,0 +1,3 @@ +# Custom RGB matrix handling +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = custom diff --git a/keyboards/annepro2/protocol.c b/keyboards/annepro2/protocol.c index 171ac5c239..ff30658cd7 100644 --- a/keyboards/annepro2/protocol.c +++ b/keyboards/annepro2/protocol.c @@ -20,38 +20,38 @@ /* UART communication protocol state */ protocol_t proto; -void protoInit(protocol_t *proto, void (*callback)(const message_t *)) { - proto->previousId = 0; +void proto_init(protocol_t *proto, void (*callback)(const message_t *)) { + proto->previous_id = 0; proto->callback = callback; proto->state = STATE_SYNC_1; proto->errors = 0; } -static uint8_t msgId = 0; -void protoTx(uint8_t cmd, const unsigned char *buf, int payloadSize, int retries) { - chDbgCheck(payloadSize <= MAX_PAYLOAD_SIZE); +static uint8_t msg_id = 0; +void proto_tx(uint8_t cmd, const unsigned char *buf, int payload_size, int retries) { + chDbgCheck(payload_size <= MAX_PAYLOAD_SIZE); const uint8_t header[5] = { - 0x7A, 0x1D, cmd, ++msgId, payloadSize, + 0x7A, 0x1D, cmd, ++msg_id, payload_size, }; /* We don't implement ACKs, yet some messages should not be lost. */ for (int i = 0; i < retries; i++) { sdWrite(&PROTOCOL_SD, header, sizeof(header)); - if (payloadSize) sdWrite(&PROTOCOL_SD, buf, payloadSize); + if (payload_size) sdWrite(&PROTOCOL_SD, buf, payload_size); } } static inline void messageReceived(protocol_t *proto) { - if (proto->buffer.msgId != proto->previousId) { + if (proto->buffer.msg_id != proto->previous_id) { /* It's not a resend / duplicate */ proto->callback(&proto->buffer); - proto->previousId = proto->buffer.msgId; + proto->previous_id = proto->buffer.msg_id; } proto->state = STATE_SYNC_1; } -void protoConsume(protocol_t *proto, uint8_t byte) { +void proto_consume(protocol_t *proto, uint8_t byte) { switch (proto->state) { case STATE_SYNC_1: if (byte == 0x7A) { @@ -76,18 +76,18 @@ void protoConsume(protocol_t *proto, uint8_t byte) { return; case STATE_ID: - proto->buffer.msgId = byte; + proto->buffer.msg_id = byte; proto->state = STATE_PAYLOAD_SIZE; return; case STATE_PAYLOAD_SIZE: - proto->buffer.payloadSize = byte; - if (proto->buffer.payloadSize > MAX_PAYLOAD_SIZE) { - proto->buffer.payloadSize = MAX_PAYLOAD_SIZE; + proto->buffer.payload_size = byte; + if (proto->buffer.payload_size > MAX_PAYLOAD_SIZE) { + proto->buffer.payload_size = MAX_PAYLOAD_SIZE; proto->errors++; } - proto->payloadPosition = 0; - if (proto->buffer.payloadSize == 0) { + proto->payload_position = 0; + if (proto->buffer.payload_size == 0) { /* No payload - whole message received */ messageReceived(proto); } else { @@ -98,9 +98,9 @@ void protoConsume(protocol_t *proto, uint8_t byte) { case STATE_PAYLOAD: /* NOTE: This could be read with sdReadTimeout probably, but that breaks * abstraction */ - proto->buffer.payload[proto->payloadPosition] = byte; - proto->payloadPosition++; - if (proto->payloadPosition == proto->buffer.payloadSize) { + proto->buffer.payload[proto->payload_position] = byte; + proto->payload_position++; + if (proto->payload_position == proto->buffer.payload_size) { /* Payload read - message received */ messageReceived(proto); } @@ -108,7 +108,7 @@ void protoConsume(protocol_t *proto, uint8_t byte) { } } -void protoSilence(protocol_t *proto) { +void proto_silence(protocol_t *proto) { if (proto->state != STATE_SYNC_1) { proto->state = STATE_SYNC_1; proto->errors++; diff --git a/keyboards/annepro2/protocol.h b/keyboards/annepro2/protocol.h index d1a05683c8..208fcd806c 100644 --- a/keyboards/annepro2/protocol.h +++ b/keyboards/annepro2/protocol.h @@ -55,7 +55,7 @@ enum { #define MAX_PAYLOAD_SIZE 64 /** Enum of the states used for the serial protocol finite-state automaton */ -enum protoState { +enum proto_state { /* 2-byte initial start-of-message sync */ STATE_SYNC_1, STATE_SYNC_2, @@ -65,15 +65,15 @@ enum protoState { STATE_ID, /* Waiting for payload size */ STATE_PAYLOAD_SIZE, - /* Reading payload until payloadPosition == payloadSize */ + /* Reading payload until payload_position == payload_size */ STATE_PAYLOAD, }; /* Buffer holding a single message */ typedef struct { uint8_t command; - uint8_t msgId; - uint8_t payloadSize; + uint8_t msg_id; + uint8_t payload_size; uint8_t payload[MAX_PAYLOAD_SIZE]; } message_t; @@ -83,12 +83,12 @@ typedef struct { void (*callback)(const message_t *); /* Number of read payload bytes */ - uint8_t payloadPosition; + uint8_t payload_position; /* Current finite-state-automata state */ - enum protoState state; + enum proto_state state; - uint8_t previousId; + uint8_t previous_id; uint8_t errors; /* Currently received message */ @@ -99,13 +99,13 @@ typedef struct { extern protocol_t proto; /* Init state */ -extern void protoInit(protocol_t *proto, void (*callback)(const message_t *)); +extern void proto_init(protocol_t *proto, void (*callback)(const message_t *)); /* Consume one byte and push state forward - might call the callback */ -extern void protoConsume(protocol_t *proto, uint8_t byte); +extern void proto_consume(protocol_t *proto, uint8_t byte); /* Prolonged silence - reset state */ -extern void protoSilence(protocol_t *proto); +extern void proto_silence(protocol_t *proto); /* Transmit message */ -extern void protoTx(uint8_t cmd, const unsigned char *buf, int payloadSize, int retries); +extern void proto_tx(uint8_t cmd, const unsigned char *buf, int payload_size, int retries); diff --git a/keyboards/annepro2/rgb_driver.c b/keyboards/annepro2/rgb_driver.c new file mode 100644 index 0000000000..240a5f4e5b --- /dev/null +++ b/keyboards/annepro2/rgb_driver.c @@ -0,0 +1,66 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#ifdef RGB_MATRIX_ENABLE + +#include "rgb_matrix.h" +#include "ap2_led.h" + +uint8_t led_pos[DRIVER_LED_TOTAL]; + +void init(void) { + unsigned int i = 0; + for (unsigned int y = 0; y < NUM_ROW; y++) { + for (unsigned int x = 0; x < NUM_COLUMN; x++) { + if (g_led_config.matrix_co[y][x] != NO_LED) { + led_pos[g_led_config.matrix_co[y][x]] = i; + } + i++; + } + } +} + +void flush(void) {} + +void set_color(int index, uint8_t r, uint8_t g, uint8_t b) { + if (r != led_mask[led_pos[index]].p.red || + g != led_mask[led_pos[index]].p.green || + b != led_mask[led_pos[index]].p.blue) + { + led_mask[led_pos[index]] = (ap2_led_t){ + .p.blue = b, + .p.red = r, + .p.green = g, + .p.alpha = 0xff, + }; + int row = led_pos[index] / NUM_COLUMN; + rgb_row_changed[row] = 1; + } +} + +void set_color_all(uint8_t r, uint8_t g, uint8_t b) { + for (int i=0; i Date: Wed, 9 Mar 2022 19:29:00 +1100 Subject: [PATCH 069/699] Add support for encoder mapping. (#13286) --- builddefs/generic_features.mk | 1 + builddefs/show_options.mk | 1 + docs/feature_encoders.md | 23 ++++++++- docs/feature_swap_hands.md | 13 +++++ keyboards/hnahkb/vn66/rules.mk | 1 + lib/python/qmk/cli/pytest.py | 3 +- quantum/action.c | 65 +++++++++++++++++++----- quantum/action_layer.c | 67 +++++++++++++++++++------ quantum/dynamic_keymap.c | 50 ++++++++++++++++-- quantum/dynamic_keymap.h | 6 ++- quantum/encoder.c | 30 +++++++++++ quantum/encoder.h | 6 +++ quantum/keyboard.h | 36 ++++++++++--- quantum/keymap.h | 6 +++ quantum/keymap_common.c | 13 ++++- quantum/process_keycode/process_combo.c | 11 +--- 16 files changed, 279 insertions(+), 53 deletions(-) diff --git a/builddefs/generic_features.mk b/builddefs/generic_features.mk index e4151eb217..53d4e16fd4 100644 --- a/builddefs/generic_features.mk +++ b/builddefs/generic_features.mk @@ -25,6 +25,7 @@ GENERIC_FEATURES = \ DYNAMIC_KEYMAP \ DYNAMIC_MACRO \ ENCODER \ + ENCODER_MAP \ GRAVE_ESC \ HAPTIC \ KEY_LOCK \ diff --git a/builddefs/show_options.mk b/builddefs/show_options.mk index 2820332d56..b30399a56c 100644 --- a/builddefs/show_options.mk +++ b/builddefs/show_options.mk @@ -57,6 +57,7 @@ OTHER_OPTION_NAMES = \ HELIX ZINC \ AUTOLOG_ENABLE \ DEBUG_ENABLE \ + ENCODER_MAP_ENABLE \ ENCODER_ENABLE_CUSTOM \ GERMAN_ENABLE \ HAPTIC_ENABLE \ diff --git a/docs/feature_encoders.md b/docs/feature_encoders.md index f71c7e7325..a3d56fd5ef 100644 --- a/docs/feature_encoders.md +++ b/docs/feature_encoders.md @@ -67,9 +67,30 @@ Additionally, if one side does not have an encoder, you can specify `{}` for the #define ENCODER_RESOLUTIONS_RIGHT { 4 } ``` +## Encoder map + +Encoder mapping may be added to your `keymap.c`, which replicates the normal keyswitch layer handling functionality, but with encoders. Add this to your `rules.mk`: + +```make +ENCODER_MAP_ENABLE = yes +``` + +Your `keymap.c` will then need an encoder mapping defined (for four layers and two encoders): + +```c +#if defined(ENCODER_MAP_ENABLE) +const uint16_t PROGMEM encoder_map[][NUM_ENCODERS][2] = { + [_BASE] = { ENCODER_CCW_CW(KC_MS_WH_UP, KC_MS_WH_DOWN), ENCODER_CCW_CW(KC_VOLD, KC_VOLU) }, + [_LOWER] = { ENCODER_CCW_CW(RGB_HUD, RGB_HUI), ENCODER_CCW_CW(RGB_SAD, RGB_SAI) }, + [_RAISE] = { ENCODER_CCW_CW(RGB_VAD, RGB_VAI), ENCODER_CCW_CW(RGB_SPD, RGB_SPI) }, + [_ADJUST] = { ENCODER_CCW_CW(RGB_RMOD, RGB_MOD), ENCODER_CCW_CW(KC_RIGHT, KC_LEFT) }, +}; +#endif +``` + ## Callbacks -The callback functions can be inserted into your `.c`: +When not using `ENCODER_MAP_ENABLE = yes`, the callback functions can be inserted into your `.c`: ```c bool encoder_update_kb(uint8_t index, bool clockwise) { diff --git a/docs/feature_swap_hands.md b/docs/feature_swap_hands.md index 654108ae70..6768020f12 100644 --- a/docs/feature_swap_hands.md +++ b/docs/feature_swap_hands.md @@ -31,3 +31,16 @@ Note that the array indices are reversed same as the matrix and the values are o |`SH_OS` |One shot swap hands: toggles while pressed or until next key press. | `SH_TT` swap-hands tap-toggle key is similar to [layer tap-toggle](feature_layers.md?id=switching-and-toggling-layers). Tapping repeatedly (5 taps by default) will toggle swap-hands on or off, like `SH_TG`. Tap-toggle count can be changed by defining a value for `TAPPING_TOGGLE`. + +## Encoder Mapping + +When using an encoder mapping, it's also able to handle swapping encoders between sides, too. + +Encoder indexes are defined as left-to-right, and the extent of the array needs to match the number of encoders on the keyboard. + +As an example, if a split keyboard has a single encoder per side, you can swap the order by using the following code in your keymap: +```c +#if defined(SWAP_HANDS_ENABLE) && defined(ENCODER_MAP_ENABLE) +const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS] = { 1, 0 }; +#endif +``` diff --git a/keyboards/hnahkb/vn66/rules.mk b/keyboards/hnahkb/vn66/rules.mk index f1c1ec985e..542b79b4d8 100644 --- a/keyboards/hnahkb/vn66/rules.mk +++ b/keyboards/hnahkb/vn66/rules.mk @@ -17,5 +17,6 @@ BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output ENCODER_ENABLE = yes +LTO_ENABLE = yes LAYOUTS = 66_ansi 66_iso diff --git a/lib/python/qmk/cli/pytest.py b/lib/python/qmk/cli/pytest.py index b7b17f0e9d..5c9c173caa 100644 --- a/lib/python/qmk/cli/pytest.py +++ b/lib/python/qmk/cli/pytest.py @@ -12,8 +12,7 @@ from milc import cli def pytest(cli): """Run several linting/testing commands. """ - nose2 = cli.run(['nose2', '-v', '-t' - 'lib/python', *cli.args.test], capture_output=False, stdin=DEVNULL) + nose2 = cli.run(['nose2', '-v', '-t', 'lib/python', *cli.args.test], capture_output=False, stdin=DEVNULL) flake8 = cli.run(['flake8', 'lib/python'], capture_output=False, stdin=DEVNULL) return flake8.returncode | nose2.returncode diff --git a/quantum/action.c b/quantum/action.c index 3efed443a3..487218777e 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -14,9 +14,11 @@ 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 . */ +#include #include "host.h" #include "keycode.h" #include "keyboard.h" +#include "keymap.h" #include "mousekey.h" #include "programmable_button.h" #include "command.h" @@ -89,6 +91,7 @@ void action_exec(keyevent_t event) { } #ifdef SWAP_HANDS_ENABLE + // Swap hands handles both keys and encoders, if ENCODER_MAP_ENABLE is defined. if (!IS_NOEVENT(event)) { process_hand_swap(&event); } @@ -136,27 +139,65 @@ void action_exec(keyevent_t event) { } #ifdef SWAP_HANDS_ENABLE +extern const keypos_t PROGMEM hand_swap_config[MATRIX_ROWS][MATRIX_COLS]; +# ifdef ENCODER_MAP_ENABLE +extern const uint8_t PROGMEM encoder_hand_swap_config[NUM_ENCODERS]; +# endif // ENCODER_MAP_ENABLE + bool swap_hands = false; bool swap_held = false; +bool should_swap_hands(size_t index, uint8_t *swap_state, bool pressed) { + size_t array_index = index / (CHAR_BIT); + size_t bit_index = index % (CHAR_BIT); + uint8_t bit_val = 1 << bit_index; + bool do_swap = pressed ? swap_hands : swap_state[array_index] & bit_val; + return do_swap; +} + +void set_swap_hands_state(size_t index, uint8_t *swap_state, bool on) { + size_t array_index = index / (CHAR_BIT); + size_t bit_index = index % (CHAR_BIT); + uint8_t bit_val = 1 << bit_index; + if (on) { + swap_state[array_index] |= bit_val; + } else { + swap_state[array_index] &= ~bit_val; + } +} + /** \brief Process Hand Swap * * FIXME: Needs documentation. */ void process_hand_swap(keyevent_t *event) { - static swap_state_row_t swap_state[MATRIX_ROWS]; - - keypos_t pos = event->key; - swap_state_row_t col_bit = (swap_state_row_t)1 << pos.col; - bool do_swap = event->pressed ? swap_hands : swap_state[pos.row] & (col_bit); - - if (do_swap) { - event->key.row = pgm_read_byte(&hand_swap_config[pos.row][pos.col].row); - event->key.col = pgm_read_byte(&hand_swap_config[pos.row][pos.col].col); - swap_state[pos.row] |= col_bit; - } else { - swap_state[pos.row] &= ~(col_bit); + keypos_t pos = event->key; + if (pos.row < MATRIX_ROWS && pos.col < MATRIX_COLS) { + static uint8_t matrix_swap_state[((MATRIX_ROWS * MATRIX_COLS) + (CHAR_BIT)-1) / (CHAR_BIT)]; + size_t index = (size_t)(pos.row * MATRIX_COLS) + pos.col; + bool do_swap = should_swap_hands(index, matrix_swap_state, event->pressed); + if (do_swap) { + event->key.row = pgm_read_byte(&hand_swap_config[pos.row][pos.col].row); + event->key.col = pgm_read_byte(&hand_swap_config[pos.row][pos.col].col); + set_swap_hands_state(index, matrix_swap_state, true); + } else { + set_swap_hands_state(index, matrix_swap_state, false); + } } +# ifdef ENCODER_MAP_ENABLE + else if (pos.row == KEYLOC_ENCODER_CW || pos.row == KEYLOC_ENCODER_CCW) { + static uint8_t encoder_swap_state[((NUM_ENCODERS) + (CHAR_BIT)-1) / (CHAR_BIT)]; + size_t index = pos.col; + bool do_swap = should_swap_hands(index, encoder_swap_state, event->pressed); + if (do_swap) { + event->key.row = pos.row; + event->key.col = pgm_read_byte(&encoder_hand_swap_config[pos.col]); + set_swap_hands_state(index, encoder_swap_state, true); + } else { + set_swap_hands_state(index, encoder_swap_state, false); + } + } +# endif // ENCODER_MAP_ENABLE } #endif diff --git a/quantum/action_layer.c b/quantum/action_layer.c index e20eedee40..4d2921354b 100644 --- a/quantum/action_layer.c +++ b/quantum/action_layer.c @@ -1,5 +1,7 @@ +#include #include #include "keyboard.h" +#include "keymap.h" #include "action.h" #include "util.h" #include "action_layer.h" @@ -223,19 +225,20 @@ void layer_debug(void) { /** \brief source layer cache */ -uint8_t source_layers_cache[(MATRIX_ROWS * MATRIX_COLS + 7) / 8][MAX_LAYER_BITS] = {{0}}; +uint8_t source_layers_cache[((MATRIX_ROWS * MATRIX_COLS) + (CHAR_BIT)-1) / (CHAR_BIT)][MAX_LAYER_BITS] = {{0}}; +# ifdef ENCODER_MAP_ENABLE +uint8_t encoder_source_layers_cache[(NUM_ENCODERS + (CHAR_BIT)-1) / (CHAR_BIT)][MAX_LAYER_BITS] = {{0}}; +# endif // ENCODER_MAP_ENABLE -/** \brief update source layers cache +/** \brief update source layers cache impl * - * Updates the cached keys when changing layers + * Updates the supplied cache when changing layers */ -void update_source_layers_cache(keypos_t key, uint8_t layer) { - const uint8_t key_number = key.col + (key.row * MATRIX_COLS); - const uint8_t storage_row = key_number / 8; - const uint8_t storage_bit = key_number % 8; - +void update_source_layers_cache_impl(uint8_t layer, uint16_t entry_number, uint8_t cache[][MAX_LAYER_BITS]) { + const uint16_t storage_idx = entry_number / (CHAR_BIT); + const uint8_t storage_bit = entry_number % (CHAR_BIT); for (uint8_t bit_number = 0; bit_number < MAX_LAYER_BITS; bit_number++) { - source_layers_cache[storage_row][bit_number] ^= (-((layer & (1U << bit_number)) != 0) ^ source_layers_cache[storage_row][bit_number]) & (1U << storage_bit); + cache[storage_idx][bit_number] ^= (-((layer & (1U << bit_number)) != 0) ^ cache[storage_idx][bit_number]) & (1U << storage_bit); } } @@ -243,18 +246,52 @@ void update_source_layers_cache(keypos_t key, uint8_t layer) { * * reads the cached keys stored when the layer was changed */ -uint8_t read_source_layers_cache(keypos_t key) { - const uint8_t key_number = key.col + (key.row * MATRIX_COLS); - const uint8_t storage_row = key_number / 8; - const uint8_t storage_bit = key_number % 8; - uint8_t layer = 0; +uint8_t read_source_layers_cache_impl(uint16_t entry_number, uint8_t cache[][MAX_LAYER_BITS]) { + const uint16_t storage_idx = entry_number / (CHAR_BIT); + const uint8_t storage_bit = entry_number % (CHAR_BIT); + uint8_t layer = 0; for (uint8_t bit_number = 0; bit_number < MAX_LAYER_BITS; bit_number++) { - layer |= ((source_layers_cache[storage_row][bit_number] & (1U << storage_bit)) != 0) << bit_number; + layer |= ((cache[storage_idx][bit_number] & (1U << storage_bit)) != 0) << bit_number; } return layer; } + +/** \brief update encoder source layers cache + * + * Updates the cached encoders when changing layers + */ +void update_source_layers_cache(keypos_t key, uint8_t layer) { + if (key.row < MATRIX_ROWS && key.col < MATRIX_COLS) { + const uint16_t entry_number = (uint16_t)(key.row * MATRIX_COLS) + key.col; + update_source_layers_cache_impl(layer, entry_number, source_layers_cache); + } +# ifdef ENCODER_MAP_ENABLE + else if (key.row == KEYLOC_ENCODER_CW || key.row == KEYLOC_ENCODER_CCW) { + const uint16_t entry_number = key.col; + update_source_layers_cache_impl(layer, entry_number, encoder_source_layers_cache); + } +# endif // ENCODER_MAP_ENABLE +} + +/** \brief read source layers cache + * + * reads the cached keys stored when the layer was changed + */ +uint8_t read_source_layers_cache(keypos_t key) { + if (key.row < MATRIX_ROWS && key.col < MATRIX_COLS) { + const uint16_t entry_number = (uint16_t)(key.row * MATRIX_COLS) + key.col; + return read_source_layers_cache_impl(entry_number, source_layers_cache); + } +# ifdef ENCODER_MAP_ENABLE + else if (key.row == KEYLOC_ENCODER_CW || key.row == KEYLOC_ENCODER_CCW) { + const uint16_t entry_number = key.col; + return read_source_layers_cache_impl(entry_number, encoder_source_layers_cache); + } +# endif // ENCODER_MAP_ENABLE + return 0; +} #endif /** \brief Store or get action (FIXME: Needs better summary) diff --git a/quantum/dynamic_keymap.c b/quantum/dynamic_keymap.c index f070375ff3..c0859ca35f 100644 --- a/quantum/dynamic_keymap.c +++ b/quantum/dynamic_keymap.c @@ -58,9 +58,14 @@ # endif #endif -// Dynamic macro starts after dynamic keymaps +// Dynamic encoders starts after dynamic keymaps +#ifndef DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR +# define DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2)) +#endif + +// Dynamic macro starts after dynamic encoders #ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2)) +# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2)) #endif // Sanity check that dynamic keymaps fit in available EEPROM @@ -89,6 +94,7 @@ void *dynamic_keymap_key_to_eeprom_address(uint8_t layer, uint8_t row, uint8_t c } uint16_t dynamic_keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t column) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return KC_NO; void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); // Big endian, so we can read/write EEPROM directly from host if we want uint16_t keycode = eeprom_read_byte(address) << 8; @@ -97,12 +103,36 @@ uint16_t dynamic_keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t column) } void dynamic_keymap_set_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || row >= MATRIX_ROWS || column >= MATRIX_COLS) return; void *address = dynamic_keymap_key_to_eeprom_address(layer, row, column); // Big endian, so we can read/write EEPROM directly from host if we want eeprom_update_byte(address, (uint8_t)(keycode >> 8)); eeprom_update_byte(address + 1, (uint8_t)(keycode & 0xFF)); } +#ifdef ENCODER_MAP_ENABLE +void *dynamic_keymap_encoder_to_eeprom_address(uint8_t layer, uint8_t encoder_id) { + return ((void *)DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) + (layer * NUM_ENCODERS * 2 * 2) + (encoder_id * 2 * 2); +} + +uint16_t dynamic_keymap_get_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return KC_NO; + void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); + // Big endian, so we can read/write EEPROM directly from host if we want + uint16_t keycode = ((uint16_t)eeprom_read_byte(address + (clockwise ? 0 : 2))) << 8; + keycode |= eeprom_read_byte(address + (clockwise ? 0 : 2) + 1); + return keycode; +} + +void dynamic_keymap_set_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise, uint16_t keycode) { + if (layer >= DYNAMIC_KEYMAP_LAYER_COUNT || encoder_id >= NUM_ENCODERS) return; + void *address = dynamic_keymap_encoder_to_eeprom_address(layer, encoder_id); + // Big endian, so we can read/write EEPROM directly from host if we want + eeprom_update_byte(address + (clockwise ? 0 : 2), (uint8_t)(keycode >> 8)); + eeprom_update_byte(address + (clockwise ? 0 : 2) + 1, (uint8_t)(keycode & 0xFF)); +} +#endif // ENCODER_MAP_ENABLE + void dynamic_keymap_reset(void) { // Reset the keymaps in EEPROM to what is in flash. // All keyboards using dynamic keymaps should define a layout @@ -113,6 +143,12 @@ void dynamic_keymap_reset(void) { dynamic_keymap_set_keycode(layer, row, column, pgm_read_word(&keymaps[layer][row][column])); } } +#ifdef ENCODER_MAP_ENABLE + for (int encoder = 0; encoder < NUM_ENCODERS; encoder++) { + dynamic_keymap_set_encoder(layer, encoder, true, pgm_read_word(&encoder_map[layer][encoder][0])); + dynamic_keymap_set_encoder(layer, encoder, false, pgm_read_word(&encoder_map[layer][encoder][1])); + } +#endif // ENCODER_MAP_ENABLE } } @@ -148,9 +184,15 @@ void dynamic_keymap_set_buffer(uint16_t offset, uint16_t size, uint8_t *data) { uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key) { if (layer < DYNAMIC_KEYMAP_LAYER_COUNT && key.row < MATRIX_ROWS && key.col < MATRIX_COLS) { return dynamic_keymap_get_keycode(layer, key.row, key.col); - } else { - return KC_NO; } +#ifdef ENCODER_MAP_ENABLE + else if (layer < DYNAMIC_KEYMAP_LAYER_COUNT && key.row == KEYLOC_ENCODER_CW && key.col < NUM_ENCODERS) { + return dynamic_keymap_get_encoder(layer, key.col, true); + } else if (layer < DYNAMIC_KEYMAP_LAYER_COUNT && key.row == KEYLOC_ENCODER_CCW && key.col < NUM_ENCODERS) { + return dynamic_keymap_get_encoder(layer, key.col, false); + } +#endif // ENCODER_MAP_ENABLE + return KC_NO; } uint8_t dynamic_keymap_macro_get_count(void) { diff --git a/quantum/dynamic_keymap.h b/quantum/dynamic_keymap.h index 55676172b6..459b48d07a 100644 --- a/quantum/dynamic_keymap.h +++ b/quantum/dynamic_keymap.h @@ -22,7 +22,11 @@ uint8_t dynamic_keymap_get_layer_count(void); void * dynamic_keymap_key_to_eeprom_address(uint8_t layer, uint8_t row, uint8_t column); uint16_t dynamic_keymap_get_keycode(uint8_t layer, uint8_t row, uint8_t column); void dynamic_keymap_set_keycode(uint8_t layer, uint8_t row, uint8_t column, uint16_t keycode); -void dynamic_keymap_reset(void); +#ifdef ENCODER_MAP_ENABLE +uint16_t dynamic_keymap_get_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise); +void dynamic_keymap_set_encoder(uint8_t layer, uint8_t encoder_id, bool clockwise, uint16_t keycode); +#endif // ENCODER_MAP_ENABLE +void dynamic_keymap_reset(void); // These get/set the keycodes as stored in the EEPROM buffer // Data is big-endian 16-bit values (the keycodes) // Order is by layer/row/column diff --git a/quantum/encoder.c b/quantum/encoder.c index 0a3d6f577c..105bed0147 100644 --- a/quantum/encoder.c +++ b/quantum/encoder.c @@ -23,6 +23,10 @@ // for memcpy #include +#ifndef ENCODER_MAP_KEY_DELAY +# define ENCODER_MAP_KEY_DELAY 2 +#endif + #if !defined(ENCODER_RESOLUTIONS) && !defined(ENCODER_RESOLUTION) # define ENCODER_RESOLUTION 4 #endif @@ -135,6 +139,16 @@ void encoder_init(void) { } } +#ifdef ENCODER_MAP_ENABLE +static void encoder_exec_mapping(uint8_t index, bool clockwise) { + // The delays below cater for Windows and its wonderful requirements. + action_exec(clockwise ? ENCODER_CW_EVENT(index, true) : ENCODER_CCW_EVENT(index, true)); + wait_ms(ENCODER_MAP_KEY_DELAY); + action_exec(clockwise ? ENCODER_CW_EVENT(index, false) : ENCODER_CCW_EVENT(index, false)); + wait_ms(ENCODER_MAP_KEY_DELAY); +} +#endif // ENCODER_MAP_ENABLE + static bool encoder_update(uint8_t index, uint8_t state) { bool changed = false; uint8_t i = index; @@ -152,12 +166,20 @@ static bool encoder_update(uint8_t index, uint8_t state) { if (encoder_pulses[i] >= resolution) { encoder_value[index]++; changed = true; +#ifdef ENCODER_MAP_ENABLE + encoder_exec_mapping(index, ENCODER_COUNTER_CLOCKWISE); +#else // ENCODER_MAP_ENABLE encoder_update_kb(index, ENCODER_COUNTER_CLOCKWISE); +#endif // ENCODER_MAP_ENABLE } if (encoder_pulses[i] <= -resolution) { // direction is arbitrary here, but this clockwise encoder_value[index]--; changed = true; +#ifdef ENCODER_MAP_ENABLE + encoder_exec_mapping(index, ENCODER_CLOCKWISE); +#else // ENCODER_MAP_ENABLE encoder_update_kb(index, ENCODER_CLOCKWISE); +#endif // ENCODER_MAP_ENABLE } encoder_pulses[i] %= resolution; #ifdef ENCODER_DEFAULT_POS @@ -197,13 +219,21 @@ void encoder_update_raw(uint8_t *slave_state) { delta--; encoder_value[index]++; changed = true; +# ifdef ENCODER_MAP_ENABLE + encoder_exec_mapping(index, ENCODER_COUNTER_CLOCKWISE); +# else // ENCODER_MAP_ENABLE encoder_update_kb(index, ENCODER_COUNTER_CLOCKWISE); +# endif // ENCODER_MAP_ENABLE } while (delta < 0) { delta++; encoder_value[index]--; changed = true; +# ifdef ENCODER_MAP_ENABLE + encoder_exec_mapping(index, ENCODER_CLOCKWISE); +# else // ENCODER_MAP_ENABLE encoder_update_kb(index, ENCODER_CLOCKWISE); +# endif // ENCODER_MAP_ENABLE } } diff --git a/quantum/encoder.h b/quantum/encoder.h index dd6db14629..82f95b4931 100644 --- a/quantum/encoder.h +++ b/quantum/encoder.h @@ -55,3 +55,9 @@ void encoder_update_raw(uint8_t* slave_state); #endif // NUM_ENCODERS #define NUM_ENCODERS_MAX_PER_SIDE MAX(NUM_ENCODERS_LEFT, NUM_ENCODERS_RIGHT) + +#ifdef ENCODER_MAP_ENABLE +# define ENCODER_CCW_CW(ccw, cw) \ + { (cw), (ccw) } +extern const uint16_t encoder_map[][NUM_ENCODERS][2]; +#endif // ENCODER_MAP_ENABLE diff --git a/quantum/keyboard.h b/quantum/keyboard.h index e122b38264..62661596c1 100644 --- a/quantum/keyboard.h +++ b/quantum/keyboard.h @@ -40,25 +40,47 @@ typedef struct { /* equivalent test of keypos_t */ #define KEYEQ(keya, keyb) ((keya).row == (keyb).row && (keya).col == (keyb).col) +/* special keypos_t entries */ +#define KEYLOC_TICK 255 +#define KEYLOC_COMBO 254 +#define KEYLOC_ENCODER_CW 253 +#define KEYLOC_ENCODER_CCW 252 + /* Rules for No Event: * 1) (time == 0) to handle (keyevent_t){} as empty event * 2) Matrix(255, 255) to make TICK event available */ static inline bool IS_NOEVENT(keyevent_t event) { - return event.time == 0 || (event.key.row == 255 && event.key.col == 255); + return event.time == 0 || (event.key.row == KEYLOC_TICK && event.key.col == KEYLOC_TICK); +} +static inline bool IS_KEYEVENT(keyevent_t event) { + return event.key.row < MATRIX_ROWS && event.key.col < MATRIX_COLS; +} +static inline bool IS_COMBOEVENT(keyevent_t event) { + return event.key.row == KEYLOC_COMBO; +} +static inline bool IS_ENCODEREVENT(keyevent_t event) { + return event.key.row == KEYLOC_ENCODER_CW || event.key.row == KEYLOC_ENCODER_CCW; } static inline bool IS_PRESSED(keyevent_t event) { - return (!IS_NOEVENT(event) && event.pressed); + return !IS_NOEVENT(event) && event.pressed; } static inline bool IS_RELEASED(keyevent_t event) { - return (!IS_NOEVENT(event) && !event.pressed); + return !IS_NOEVENT(event) && !event.pressed; } +/* Common keyevent object factory */ +#define MAKE_KEYPOS(row_num, col_num) ((keypos_t){.row = (row_num), .col = (col_num)}) +#define MAKE_KEYEVENT(row_num, col_num, press) ((keyevent_t){.key = MAKE_KEYPOS((row_num), (col_num)), .pressed = (press), .time = (timer_read() | 1)}) + /* Tick event */ -#define TICK \ - (keyevent_t) { \ - .key = (keypos_t){.row = 255, .col = 255}, .pressed = false, .time = (timer_read() | 1) \ - } +#define TICK MAKE_KEYEVENT(KEYLOC_TICK, KEYLOC_TICK, false) + +#ifdef ENCODER_MAP_ENABLE +/* Encoder events */ +# define ENCODER_CW_EVENT(enc_id, press) MAKE_KEYEVENT(KEYLOC_ENCODER_CW, (enc_id), (press)) +# define ENCODER_CCW_EVENT(enc_id, press) MAKE_KEYEVENT(KEYLOC_ENCODER_CCW, (enc_id), (press)) +#endif // ENCODER_MAP_ENABLE /* it runs once at early stage of startup before keyboard_init. */ void keyboard_setup(void); diff --git a/quantum/keymap.h b/quantum/keymap.h index 2ee2e1b576..d64b271efb 100644 --- a/quantum/keymap.h +++ b/quantum/keymap.h @@ -32,6 +32,7 @@ along with this program. If not, see . // #include "print.h" #include "debug.h" #include "keycode_config.h" +#include "gpio.h" // for pin_t // ChibiOS uses RESET in its FlagStatus enumeration // Therefore define it as QK_BOOTLOADER here, to avoid name collision @@ -49,3 +50,8 @@ along with this program. If not, see . uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key); extern const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS]; + +#ifdef ENCODER_MAP_ENABLE +// Ensure we have a forward declaration for the encoder map +# include "encoder.h" +#endif diff --git a/quantum/keymap_common.c b/quantum/keymap_common.c index a91b2a0b36..c1940f0fd3 100644 --- a/quantum/keymap_common.c +++ b/quantum/keymap_common.c @@ -148,6 +148,15 @@ action_t action_for_keycode(uint16_t keycode) { // translates key to keycode __attribute__((weak)) uint16_t keymap_key_to_keycode(uint8_t layer, keypos_t key) { - // Read entire word (16bits) - return pgm_read_word(&keymaps[(layer)][(key.row)][(key.col)]); + if (key.row < MATRIX_ROWS && key.col < MATRIX_COLS) { + return pgm_read_word(&keymaps[layer][key.row][key.col]); + } +#ifdef ENCODER_MAP_ENABLE + else if (key.row == KEYLOC_ENCODER_CW && key.col < NUM_ENCODERS) { + return pgm_read_word(&encoder_map[layer][key.col][0]); + } else if (key.row == KEYLOC_ENCODER_CCW && key.col < NUM_ENCODERS) { + return pgm_read_word(&encoder_map[layer][key.col][1]); + } +#endif // ENCODER_MAP_ENABLE + return KC_NO; } diff --git a/quantum/process_keycode/process_combo.c b/quantum/process_keycode/process_combo.c index efaf8fe0e9..d5a649adb3 100644 --- a/quantum/process_keycode/process_combo.c +++ b/quantum/process_keycode/process_combo.c @@ -88,8 +88,6 @@ static queued_combo_t combo_buffer[COMBO_BUFFER_LENGTH]; #define INCREMENT_MOD(i) i = (i + 1) % COMBO_BUFFER_LENGTH -#define COMBO_KEY_POS ((keypos_t){.col = 254, .row = 254}) - #ifndef EXTRA_SHORT_COMBOS /* flags are their own elements in combo_t struct. */ # define COMBO_ACTIVE(combo) (combo->active) @@ -140,12 +138,7 @@ static queued_combo_t combo_buffer[COMBO_BUFFER_LENGTH]; static inline void release_combo(uint16_t combo_index, combo_t *combo) { if (combo->keycode) { keyrecord_t record = { - .event = - { - .key = COMBO_KEY_POS, - .time = timer_read() | 1, - .pressed = false, - }, + .event = MAKE_KEYEVENT(KEYLOC_COMBO, KEYLOC_COMBO, false), .keycode = combo->keycode, }; #ifndef NO_ACTION_TAPPING @@ -325,7 +318,7 @@ void apply_combo(uint16_t combo_index, combo_t *combo) { if (ALL_COMBO_KEYS_ARE_DOWN(state, key_count)) { // this in the end executes the combo when the key_buffer is dumped. record->keycode = combo->keycode; - record->event.key = COMBO_KEY_POS; + record->event.key = MAKE_KEYPOS(KEYLOC_COMBO, KEYLOC_COMBO); qrecord->combo_index = combo_index; ACTIVATE_COMBO(combo); From 5d67c4d90895bf5a14b4557107b2899551dea934 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 9 Mar 2022 21:06:33 +1100 Subject: [PATCH 070/699] Fix missing definition for non-encoder case. (#16593) --- quantum/dynamic_keymap.c | 25 +++++++++++++++++-------- 1 file changed, 17 insertions(+), 8 deletions(-) diff --git a/quantum/dynamic_keymap.c b/quantum/dynamic_keymap.c index c0859ca35f..fc1c55784d 100644 --- a/quantum/dynamic_keymap.c +++ b/quantum/dynamic_keymap.c @@ -21,6 +21,12 @@ #include "dynamic_keymap.h" #include "via.h" // for default VIA_EEPROM_ADDR_END +#ifdef ENCODER_ENABLE +# include "encoder.h" +#else +# define NUM_ENCODERS 0 +#endif + #ifndef DYNAMIC_KEYMAP_LAYER_COUNT # define DYNAMIC_KEYMAP_LAYER_COUNT 4 #endif @@ -63,20 +69,23 @@ # define DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR (DYNAMIC_KEYMAP_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * MATRIX_ROWS * MATRIX_COLS * 2)) #endif -// Dynamic macro starts after dynamic encoders -#ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR -# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2)) -#endif +// Dynamic macro starts after dynamic encoders, but only when using ENCODER_MAP +#ifdef ENCODER_MAP_ENABLE +# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR + (DYNAMIC_KEYMAP_LAYER_COUNT * NUM_ENCODERS * 2 * 2)) +# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +#else // ENCODER_MAP_ENABLE +# ifndef DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +# define DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR (DYNAMIC_KEYMAP_ENCODER_EEPROM_ADDR) +# endif // DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR +#endif // ENCODER_MAP_ENABLE // Sanity check that dynamic keymaps fit in available EEPROM // If there's not 100 bytes available for macros, then something is wrong. // The keyboard should override DYNAMIC_KEYMAP_LAYER_COUNT to reduce it, // or DYNAMIC_KEYMAP_EEPROM_MAX_ADDR to increase it, *only if* the microcontroller has // more than the default. -#if DYNAMIC_KEYMAP_EEPROM_MAX_ADDR - DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR < 100 -# pragma message STR(DYNAMIC_KEYMAP_EEPROM_MAX_ADDR - DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR) " < 100" -# error Dynamic keymaps are configured to use more EEPROM than is available. -#endif +_Static_assert((DYNAMIC_KEYMAP_EEPROM_MAX_ADDR) - (DYNAMIC_KEYMAP_MACRO_EEPROM_ADDR) >= 100, "Dynamic keymaps are configured to use more EEPROM than is available."); // Dynamic macros are stored after the keymaps and use what is available // up to and including DYNAMIC_KEYMAP_EEPROM_MAX_ADDR. From 77180a6649bbf9f54a515acafe1cbe688f51a519 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 10 Mar 2022 04:09:38 +1100 Subject: [PATCH 071/699] Fixup builds. (#16596) --- keyboards/horrortroll/handwired_k552/rules.mk | 1 + keyboards/tkc/portico68v2/config.h | 4 ++-- quantum/action.c | 13 +++++++------ 3 files changed, 10 insertions(+), 8 deletions(-) diff --git a/keyboards/horrortroll/handwired_k552/rules.mk b/keyboards/horrortroll/handwired_k552/rules.mk index 5df510cd44..f29c92f64c 100644 --- a/keyboards/horrortroll/handwired_k552/rules.mk +++ b/keyboards/horrortroll/handwired_k552/rules.mk @@ -20,6 +20,7 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output NO_USB_STARTUP_CHECK = yes +LTO_ENABLE = yes # RGB Matrix enabled RGB_MATRIX_ENABLE = yes diff --git a/keyboards/tkc/portico68v2/config.h b/keyboards/tkc/portico68v2/config.h index af0a162810..b33fa85330 100644 --- a/keyboards/tkc/portico68v2/config.h +++ b/keyboards/tkc/portico68v2/config.h @@ -83,8 +83,8 @@ along with this program. If not, see . # define ENABLE_RGB_MATRIX_HUE_PENDULUM # define ENABLE_RGB_MATRIX_HUE_WAVE # define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +//# define ENABLE_RGB_MATRIX_PIXEL_FLOW +//# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined # define ENABLE_RGB_MATRIX_TYPING_HEATMAP # define ENABLE_RGB_MATRIX_DIGITAL_RAIN diff --git a/quantum/action.c b/quantum/action.c index 487218777e..60301fa606 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -15,6 +15,13 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ #include + +#ifdef DEBUG_ACTION +# include "debug.h" +#else +# include "nodebug.h" +#endif + #include "host.h" #include "keycode.h" #include "keyboard.h" @@ -34,12 +41,6 @@ along with this program. If not, see . # include "backlight.h" #endif -#ifdef DEBUG_ACTION -# include "debug.h" -#else -# include "nodebug.h" -#endif - #ifdef POINTING_DEVICE_ENABLE # include "pointing_device.h" #endif From edd1f33013084a79cffcfafafe7c2cbd381d6979 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Thu, 10 Mar 2022 05:43:12 +1100 Subject: [PATCH 072/699] Missed some erroneous prints. (#16597) --- quantum/action_layer.c | 11 ++++++----- quantum/action_tapping.c | 11 ++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/quantum/action_layer.c b/quantum/action_layer.c index 4d2921354b..473e0e948d 100644 --- a/quantum/action_layer.c +++ b/quantum/action_layer.c @@ -1,10 +1,5 @@ #include #include -#include "keyboard.h" -#include "keymap.h" -#include "action.h" -#include "util.h" -#include "action_layer.h" #ifdef DEBUG_ACTION # include "debug.h" @@ -12,6 +7,12 @@ # include "nodebug.h" #endif +#include "keyboard.h" +#include "keymap.h" +#include "action.h" +#include "util.h" +#include "action_layer.h" + /** \brief Default Layer State */ layer_state_t default_layer_state = 0; diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c index 6f8b4f8c56..e436619428 100644 --- a/quantum/action_tapping.c +++ b/quantum/action_tapping.c @@ -1,10 +1,5 @@ #include #include -#include "action.h" -#include "action_layer.h" -#include "action_tapping.h" -#include "keycode.h" -#include "timer.h" #ifdef DEBUG_ACTION # include "debug.h" @@ -12,6 +7,12 @@ # include "nodebug.h" #endif +#include "action.h" +#include "action_layer.h" +#include "action_tapping.h" +#include "keycode.h" +#include "timer.h" + #ifndef NO_ACTION_TAPPING # define IS_TAPPING() !IS_NOEVENT(tapping_key.event) From db16271a728268995d8ec93d0d2a26658867bc28 Mon Sep 17 00:00:00 2001 From: Tony Grosinger Date: Wed, 9 Mar 2022 13:47:57 -0800 Subject: [PATCH 073/699] Add Gergoplex keymap for tgrosinger (#15148) * Add Gergoplex keymap for tgrosinger * Add improved shortcuts for PopOS * Add license --- .../gergoplex/keymaps/tgrosinger/combos.def | 11 + .../keymaps/tgrosinger/gergoplex.def | 17 ++ .../gergoplex/keymaps/tgrosinger/keymap.c | 286 ++++++++++++++++++ .../gergoplex/keymaps/tgrosinger/readme.md | 12 + .../gergoplex/keymaps/tgrosinger/rules.mk | 17 ++ 5 files changed, 343 insertions(+) create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/combos.def create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/gergoplex.def create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/keymap.c create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/readme.md create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/combos.def b/keyboards/gboards/gergoplex/keymaps/tgrosinger/combos.def new file mode 100644 index 0000000000..ef953d53f5 --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/combos.def @@ -0,0 +1,11 @@ +// List any combo dictionaries you want loaded to your device below! + +// QMK wide includes +//#include "combos/germ-vim-helpers.def" +//#include "combos/germ-mouse-keys.def" + +// User includes +#include "gergoplex.def" + +// Word completion +// #include "combos/eng-combos.def" diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/gergoplex.def b/keyboards/gboards/gergoplex/keymaps/tgrosinger/gergoplex.def new file mode 100644 index 0000000000..c7a93ed294 --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/gergoplex.def @@ -0,0 +1,17 @@ +// Gergoplex specfic combos + +COMB(qwGrav, KC_GRV, KC_W, KC_Q) +COMB(wsEsc, KC_ESC, KC_W, KC_S) +COMB(sdBackspace, KC_BSPC, KC_S, KC_D) +COMB(dfTab, KC_TAB, KC_D, KC_F) +COMB(cvEnter, KC_ENT, KC_C, KC_V) + +COMB(ioMinus, KC_MINS, KC_I, KC_O) +COMB(opBackslash, KC_BSLS, KC_O, KC_P) +COMB(hjLess, KC_LT, KC_H, KC_J) +COMB(klGreat, KC_GT, KC_K, KC_L) +COMB(jkColon, KC_COLN, KC_J, KC_K) +COMB(mcUnder, KC_UNDS, KC_M, KC_COMM) +COMB(nmQuote, KC_QUOT, KC_N, KC_M) + +SUBS(pasta, "I'd just like to interject for a moment.", KC_H, KC_J, KC_K, KC_L) diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/keymap.c b/keyboards/gboards/gergoplex/keymaps/tgrosinger/keymap.c new file mode 100644 index 0000000000..74c0899fdb --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/keymap.c @@ -0,0 +1,286 @@ +/* Copyright 2022 Tony Grosinger + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "g/keymap_combo.h" + +enum { + _ALPHA, // Default + _SYMB, // Symbols + _NUMB, // Numbers + _ARROWS, // Arrows and OS + _TMUX, // TMUX Nav layer + _POPOS, // Gnome Shell, aka PopOS +}; + + +// Macros +enum custom_keycodes { + TMUX_NEW = SAFE_RANGE, + TMUX_ZOOM, + TMUX_SCROLL, + TMUX_PN_LT, + TMUX_PN_UP, + TMUX_PN_DN, + TMUX_PN_RT, + TMUX_WN_LT, + TMUX_WN_RT, + TMUX_SP_VT, + TMUX_SP_HZ, + VIM_CLIP_CP, + VIM_CLIP_PST, + VIM_MACRO, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case TMUX_NEW: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("c"); + } + break; + case TMUX_ZOOM: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("z"); + } + break; + case TMUX_SCROLL: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("["); + } + break; + case TMUX_PN_LT: + if (record->event.pressed) { + tap_code16(C(KC_B)); + tap_code(KC_LEFT); + } + break; + case TMUX_PN_DN: + if (record->event.pressed) { + tap_code16(C(KC_B)); + tap_code(KC_DOWN); + } + break; + case TMUX_PN_UP: + if (record->event.pressed) { + tap_code16(C(KC_B)); + tap_code(KC_UP); + } + break; + case TMUX_PN_RT: + if (record->event.pressed) { + tap_code16(C(KC_B)); + tap_code(KC_RIGHT); + } + break; + case TMUX_WN_LT: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("p"); + } + break; + case TMUX_WN_RT: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("n"); + } + break; + case TMUX_SP_VT: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("%"); + } + break; + case TMUX_SP_HZ: + if (record->event.pressed) { + tap_code16(C(KC_B)); + SEND_STRING("\""); + } + break; + case VIM_CLIP_CP: + if (record->event.pressed) { + tap_code16(S(KC_QUOTE)); + tap_code16(S(KC_EQUAL)); + tap_code(KC_Y); + } + break; + case VIM_CLIP_PST: + if (record->event.pressed) { + tap_code16(S(KC_QUOTE)); + tap_code16(S(KC_EQUAL)); + tap_code(KC_P); + } + break; + case VIM_MACRO: + if (record->event.pressed) { + tap_code16(S(KC_2)); + tap_code(KC_Q); + } + break; + /* + case LAYRMOD: + // Act as a mod key if held, or toggle a layer if tapped + // replace KC_LCTL with desired mod, and _TARGET with desired layer name / number + if (record->event.pressed) { + uint8_t key_timer = timer_read(); + register_mods(MOD_BIT(KC_LCTL)); + } else { + unregister_mods(MOD_BIT(KC_LCTL)); + if (timer_elapsed(key_timer) < 200) { + layer_invert(_TARGET); + } + } + return false; + break; + */ + } + return true; +} + +/* Combos + * + * ,-----------------------------. ,-----------------------------. + * | ` | | | | | | MINS | BSLH | + * |-----+----ESC----+-----+-----| |-----+-----+-----+-----------| + * | | BSPC TAB | | | LES COLN GRT | | + * |-----+-----+-----+--RMB+-LMB-| |-----+-----+-----+-----------| + * | | | ENT | | | QUO UNDR | | | + * `-----+-----+-----+-----+-----' `-----------------------------' + * .-------------------------. .-------------------. + * | | | | | | | | + * '-------------------------' '-------------------' + */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap 0: Default layer + * ,------------------------------. ,----------------------------------. + * | Q | W | E | R | T | | Y | U | I | O | P | + * |------+-----+-----+-----+-----| |-----+-----+-----+-------+--------| + * |CTRL/A| S | D | F | G | | H | J | K | L | CTRL/; | + * |------+-----+-----+-----+-----| |-----+-----+-----+-------+--------| + * |SHFT/Z|ALT/X| C | V | B | | N | M | < | ALT/> | SHFT/? | + * `------+-----+-----+------+----' `----------------------------------' + * .-----------------. .----------------------. + * | |GUI |SPC(NUM)| |SPC(SYM)|TMUX | PopOS | + * '-----------------' '----------------------' + */ + [_ALPHA] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + MT(MOD_LCTL, KC_A),KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MT(MOD_LCTL, KC_SCLN), + MT(MOD_LSFT, KC_Z),MT(MOD_LALT, KC_X), KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, MT(MOD_LALT, KC_DOT), MT(MOD_RSFT, KC_SLSH), + + KC_NO, KC_LGUI, LT(_NUMB, KC_SPC), // Left + LT(_SYMB, KC_SPC), MO(_TMUX), MO(_POPOS) // Right + ), + + /* Keymap 1: Symbols layer + * ,------------------------------. ,-------------------------------. + * | ! | @ | # | $ | % | | ^ | & | * | + | = | + * |------+-----+-----+-----+-----| |-----+-----+-----+-----+-------| + * | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | + * |------+-----+-----+-----+-----| |-----+-----+-----+-----+-------| + * | | | | | | | | | | F11 | F12 | + * `------+-----+-----+-----+-----' `-------------------------------' + * .-----------------. .-----------------. + * | | DEL | MO3 | | HLD | SPC | | + * '-----------------' '-----------------' + */ + [_SYMB] = LAYOUT_split_3x5_3( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_PLUS, KC_EQL, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_F11, KC_F12, + KC_NO, KC_DEL, MO(_ARROWS), KC_TRNS, KC_SPC, KC_NO + ), + + /* Keymap 2: Number layer + * ,------------------------------. ,-------------------------------. + * | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | + * |------+-----+-----+-----+-----| |-----+-----+-----+-----+-------| + * | CTRL | | ( | ) | | | | 4 | 7 | 6 | | + * |------+-----+-----+-----+-----| |-----+-----+-----+-----+-------| + * | SHFT | | [ | ] | | | | 1 | 2 | 3 | . | + * `------+-----+-----+-----+-----' `-------------------------------' + * .-----------------. .-----------------. + * | | | HLD | | MO3 | 0 | | + * '-----------------' '-----------------' + */ + [_NUMB] = LAYOUT_split_3x5_3( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_LCTL, KC_NO, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_4, KC_5, KC_6, KC_NO, + KC_LSFT, KC_NO, KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_1, KC_2, KC_3, KC_DOT, + KC_NO,KC_NO,KC_TRNS, MO(_ARROWS),KC_0,KC_NO + ), + + /* Keymap 3: Arrows and OS + * ,------------------------------. ,------------------------------------. + * | | | | | | | | | | | | + * |------+-----+-----+-----+-----| |-------+-------+------+-------+-----| + * | CTRL |HOME | PUP | | | | LEFT | DOWN | UP | RIGHT | | + * |------+-----+-----+-----+-----| |-------+-------+------+-------+-----| + * | SHFT |END | PDN | | | | | | | | | + * `------+-----+-----+-----+-----' `------------------------------------' + * .-----------------. .-----------------. + * | | | HLD | | HLD | | | + * '-----------------' '-----------------' + */ + [_ARROWS] = LAYOUT_split_3x5_3( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_LCTL, KC_HOME, KC_PGUP, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, + KC_LSFT, KC_END, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO,KC_NO,KC_TRNS, KC_TRNS,KC_NO,KC_NO + ), + + /* Keymap 4: Tmux navigation layer + * ,----------------------------------. ,---------------------------------------. + * | Vi Mcr | | | | SP VT | | Vi Ynk| | | | Vi PT | + * |--------+-----+-----+-----+-------| |-------+-------+-------+-------+-------| + * | | SCRL| | | | | PN LT | PN DN | PN UP | PN RT | SP HZ | + * |--------+-----+-----+-----+-------| |-------+-------+-------+-------+-------| + * | ZOOM | KILL| NEW | | | | W LT | | | W RT | | + * `--------+-----+-----+-----+-------' `---------------------------------------' + * .-----------------. .-----------------. + * | | | | | | HLD | | + * '-----------------' '-----------------' + */ + [_TMUX] = LAYOUT_split_3x5_3( + VIM_MACRO, KC_NO, KC_NO, KC_NO, TMUX_SP_VT, VIM_CLIP_CP, KC_NO, KC_NO, KC_NO, VIM_CLIP_PST, + KC_NO, TMUX_SCROLL, KC_NO, KC_NO, KC_NO, TMUX_PN_LT, TMUX_PN_DN, TMUX_PN_UP, TMUX_PN_RT, TMUX_SP_HZ, + TMUX_ZOOM, KC_NO, TMUX_NEW, KC_NO, KC_NO, TMUX_WN_LT, KC_NO, KC_NO, TMUX_WN_RT, KC_NO, + KC_NO,KC_NO,KC_NO, KC_NO,KC_TRNS,KC_NO + ), + + /* Keymap 5: Gnome Shell (PopOS) + * ,------------------------------. ,--------------------------------------. + * | | | | | | | MV-DWN| D-DWN | D-UP | MV-UP | Flip | + * |------+-----+-----+-----+-----| |-------+-------+-------+-------+------| + * | | | | | | | W-L | W-DWN | W-UP | W-R | | + * |------+-----+-----+-----+-----| |-------+-------+-------+-------+------| + * | | | | | | | Scrns | Apps | Close | | | + * `------+-----+-----+-----+-----' `--------------------------------------' + * .-----------------. .-----------------. + * | | | | | | | HLD | + * '-----------------' '-----------------' + */ + [_POPOS] = LAYOUT_split_3x5_3( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, SGUI(KC_J), LCTL(LGUI(KC_J)), LCTL(LGUI(KC_K)), SGUI(KC_K), LGUI(KC_O), + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LGUI(KC_H), LGUI(KC_J), LGUI(KC_K), LGUI(KC_L), KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, LGUI(KC_D), LGUI(KC_A), LGUI(KC_Q), KC_NO, KC_NO, + KC_NO,KC_NO,KC_NO, KC_NO,KC_NO,KC_TRNS + ), +}; diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/readme.md b/keyboards/gboards/gergoplex/keymaps/tgrosinger/readme.md new file mode 100644 index 0000000000..0a53aa1cbf --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/readme.md @@ -0,0 +1,12 @@ +# GergoPlex + +This keymap I created for the GergoPlex with a focus on: + +- Keeping keys close to their normal locations when possible (number/symbol rows) +- Work well for vim, tmux, and Ubuntu default desktop shortcuts +- Work okay for OSx shortcuts + +## Firmware Building + + util/docker_build.sh gboards/gergoplex:tgrosinger + util/docker_build.sh gboards/gergoplex:tgrosinger:flash diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk b/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk new file mode 100644 index 0000000000..e882b8008d --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk @@ -0,0 +1,17 @@ +#---------------------------------------------------------------------------- +# make gboards/gergoplex:default:flash +# Make sure you have dfu-programmer installed! +#---------------------------------------------------------------------------- + +#Debug options +VERBOSE = no +DEBUG_MATRIX_SCAN_RATE = no +DEBUG_MATRIX = no +CONSOLE_ENABLE = no + +#Combos! +VPATH += keyboards/gboards/ + +ifeq ($(strip $(DEBUG_MATRIX)), yes) + OPT_DEFS += -DDEBUG_MATRIX +endif From caeb213400e7f612598af10354306fd4d3ee0adf Mon Sep 17 00:00:00 2001 From: Hansol Kim Date: Thu, 10 Mar 2022 07:04:41 +0900 Subject: [PATCH 074/699] Add macOS-friendly keymap for GMMK Pro (ANSI) (#14333) * Add macOS keymap for GMMK Pro (ANSI) * Change macOS keymap directory name to lowercase * Add toggleable layer with alternative keymap for function row * Update readme --- .../gmmk/pro/ansi/keymaps/macos/config.h | 80 ++++ .../gmmk/pro/ansi/keymaps/macos/keymap.c | 448 ++++++++++++++++++ .../gmmk/pro/ansi/keymaps/macos/readme.md | 85 ++++ .../gmmk/pro/ansi/keymaps/macos/rules.mk | 4 + 4 files changed, 617 insertions(+) create mode 100644 keyboards/gmmk/pro/ansi/keymaps/macos/config.h create mode 100644 keyboards/gmmk/pro/ansi/keymaps/macos/keymap.c create mode 100644 keyboards/gmmk/pro/ansi/keymaps/macos/readme.md create mode 100644 keyboards/gmmk/pro/ansi/keymaps/macos/rules.mk diff --git a/keyboards/gmmk/pro/ansi/keymaps/macos/config.h b/keyboards/gmmk/pro/ansi/keymaps/macos/config.h new file mode 100644 index 0000000000..799c5d9593 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/macos/config.h @@ -0,0 +1,80 @@ +/* Copyright 2021 zvuc + * + * 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 . + */ + +#pragma once + +// At the time of this, there are 41 effects! That may be a bit too many to cycle through - keeping what I believe is the best. +#ifdef RGB_MATRIX_ENABLE + #define RGB_DISABLE_TIMEOUT 1200000 // 20 minutes (20 * 60 * 1000ms) + +// #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR + +// Below added per: https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgb_matrix#suspended-state-id-suspended-state + #define RGB_DISABLE_WHEN_USB_SUSPENDED + +// Effects + #define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap, Rain + #define RGB_MATRIX_KEYPRESSES // REACTIVE, SPLASH modes + + // Disable effects you don't like. + // Soon, you'll have to explicitly enable effects you want: https://github.com/qmk/qmk_firmware/pull/13758 + // #define DISABLE_RGB_MATRIX_SOLID_COLOR, // Static single hue, no speed support + // #define DISABLE_RGB_MATRIX_ALPHAS_MODS, // Static dual hue, speed is hue for secondary hue + // #define DISABLE_RGB_MATRIX_GRADIENT_UP_DOWN, // Static gradient top to bottom, speed controls how much gradient changes + // #define DISABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT, // Static gradient left to right, speed controls how much gradient changes + // #define DISABLE_RGB_MATRIX_BREATHING, // Single hue brightness cycling animation + // #define DISABLE_RGB_MATRIX_BAND_SAT, // Single hue band fading saturation scrolling left to right + // #define DISABLE_RGB_MATRIX_BAND_VAL, // Single hue band fading brightness scrolling left to right + // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_SAT, // Single hue 3 blade spinning pinwheel fades saturation + // #define DISABLE_RGB_MATRIX_BAND_PINWHEEL_VAL, // Single hue 3 blade spinning pinwheel fades brightness + // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_SAT, // Single hue spinning spiral fades saturation + // #define DISABLE_RGB_MATRIX_BAND_SPIRAL_VAL, // Single hue spinning spiral fades brightness + // #define DISABLE_RGB_MATRIX_CYCLE_ALL, // Full keyboard solid hue cycling through full gradient + // #define DISABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT, // Full gradient scrolling left to right + // #define DISABLE_RGB_MATRIX_CYCLE_UP_DOWN, // Full gradient scrolling top to bottom + // #define DISABLE_RGB_MATRIX_CYCLE_OUT_IN, // Full gradient scrolling out to in + // #define DISABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL, // Full dual gradients scrolling out to in + // #define DISABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON, // Full gradent Chevron shapped scrolling left to right + // #define DISABLE_RGB_MATRIX_CYCLE_PINWHEEL, // Full gradient spinning pinwheel around center of keyboard + // #define DISABLE_RGB_MATRIX_CYCLE_SPIRAL, // Full gradient spinning spiral around center of keyboard + // #define DISABLE_RGB_MATRIX_DUAL_BEACON, // Full gradient spinning around center of keyboard + // #define DISABLE_RGB_MATRIX_RAINBOW_BEACON, // Full tighter gradient spinning around center of keyboard + // #define DISABLE_RGB_MATRIX_RAINBOW_PINWHEELS, // Full dual gradients spinning two halfs of keyboard + // #define DISABLE_RGB_MATRIX_RAINDROPS, // Randomly changes a single key's hue + // #define DISABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS, // Randomly changes a single key's hue and saturation + // #define DISABLE_RGB_MATRIX_HUE_BREATHING, // Hue shifts up a slight ammount at the same time, then shifts back + // #define DISABLE_RGB_MATRIX_HUE_PENDULUM, // Hue shifts up a slight ammount in a wave to the right, then back to the left + // #define DISABLE_RGB_MATRIX_HUE_WAVE, // Hue shifts up a slight ammount and then back down in a wave to the right + + // Framebuffer effects + // #define DISABLE_RGB_MATRIX_TYPING_HEATMAP, // How hot is your WPM! + // #define DISABLE_RGB_MATRIX_DIGITAL_RAIN, // That famous computer simulation + + // Reactive effects + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE, // Pulses keys hit to hue & value then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE, // Static single hue, pulses keys hit to shifted hue then fades to current hue + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out + // #define DISABLE_RGB_MATRIX_SPLASH, // Full gradient & value pulse away from a single key hit then fades value out + // #define DISABLE_RGB_MATRIX_MULTISPLASH, // Full gradient & value pulse away from multiple key hits then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_SPLASH, // Hue & value pulse away from a single key hit then fades value out + // #define DISABLE_RGB_MATRIX_SOLID_MULTISPLASH, // Hue & value pulse away from multiple key hits then fades value out + +#endif diff --git a/keyboards/gmmk/pro/ansi/keymaps/macos/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/macos/keymap.c new file mode 100644 index 0000000000..1f8c47306a --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/macos/keymap.c @@ -0,0 +1,448 @@ +/* Copyright 2021 Glorious, LLC + + GMMK Pro Standard keymap for macOS + by zvuc + + with code snippets from + Andre Brait , stickandgum + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum my_keycodes { + KC_MSCTRL = SAFE_RANGE, + KC_LNPD, + LED_TLDE, + LED_1, + LED_2, + LED_3, + LED_4, + LED_5, + LED_6, + LED_7, + LED_8, + LED_9, + LED_0, + LED_MINS, + LED_EQL +}; + +#ifdef RGB_MATRIX_ENABLE + #ifndef RGB_CONFIRMATION_BLINKING_TIME + #define RGB_CONFIRMATION_BLINKING_TIME 2000 // 2 seconds + #endif +#endif // RGB_MATRIX_ENABLE + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Eject Rotary(Mute) +// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del +// Tab Q W E R T Y U I O P [ ] \ PgUp +// Caps A S D F G H J K L ; " Enter PgDn +// Sh_L Z X C V B N M , . ? Sh_R Up F13 +// Ct_L Opt_L Cmd_L SPACE Cmd_R Opt_R FN Left Down Right + + + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB + // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI + // if that's your preference. + // + // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and + // it'll be back to normal when you plug it back in. + // + // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). + // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. + // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. + [0] = LAYOUT( + KC_ESC, KC_BRID, KC_BRIU, KC_MSCTRL, KC_LNPD, RGB_VAD, RGB_VAI, KC_F7, KC_F8, KC_MRWD, KC_MPLY, KC_MFFD, KC_F12, KC_EJCT, KC_MUTE, + KC_GRV, 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_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_BSLS, KC_PGUP, + 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_PGDN, + 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, KC_F13, + KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, KC_ROPT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_TOG, + LED_TLDE, LED_1, LED_2, LED_3, LED_4, LED_5, LED_6, LED_7, LED_8, LED_9, LED_0, LED_MINS, LED_EQL, _______, KC_PSCR, + _______, RGB_HUI, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_HUD, RGB_VAD, RGB_SAD, TG(2), _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, + _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI + ), + + // This is an alternative togglable layer to change default function row to standard F keys + [2] = LAYOUT( + _______, 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_F24, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + +}; +// clang-format on + +#ifdef ENCODER_ENABLE + bool encoder_update_user(uint8_t index, bool clockwise) { + // https://beta.docs.qmk.fm/using-qmk/simple-keycodes/feature_advanced_keycodes#alt-escape-for-alt-tab-id-alt-escape-for-alt-tab + if (get_mods() & MOD_MASK_CTRL) { // If CTRL is held + uint8_t mod_state = get_mods(); // Store all modifiers that are held + unregister_mods(MOD_MASK_CTRL); // Immediately unregister the CRTL key (don't send CTRL-PgDn) - del_mods doesn't work here (not immediate) + if (clockwise) { + rgblight_increase_hue(); + } else { + rgblight_decrease_hue(); + } + set_mods(mod_state); // Add back in the CTRL key - so ctrl-key will work if ctrl was never released after paging. + } else if (get_mods() & MOD_MASK_ALT) { + uint8_t mod_state = get_mods(); + unregister_mods(MOD_MASK_ALT); + if (clockwise) { + rgblight_increase_sat(); + } else { + rgblight_decrease_sat(); + } + set_mods(mod_state); + } else if (get_mods() & MOD_MASK_GUI) { + uint8_t mod_state = get_mods(); + unregister_mods(MOD_MASK_GUI); + if (clockwise) { + rgblight_increase_val(); + } else { + rgblight_decrease_val(); + } + set_mods(mod_state); + } else if (get_mods() & MOD_MASK_SHIFT) { + uint8_t mod_state = get_mods(); + unregister_mods(MOD_MASK_SHIFT); + if (clockwise) { + rgblight_increase_speed(); + } else { + rgblight_decrease_speed(); + } + set_mods(mod_state); + } else if (clockwise) { // All else volume. + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + return true; + } +#endif //ENCODER_ENABLE + +#ifdef RGB_MATRIX_ENABLE + + // Called on powerup and is the last _init that is run. + void keyboard_post_init_user(void) { + + int mods[35] = {0,2,3,4,5,11,17,33,49,55,65,95,97,79,94,85,93,96,90,69,92,67,76,80,91,75,86,68,77,81,92,28,34,39,44}; + int j; + + /* output each array element's value */ + for (j = 0; j < 35; j++ ) { + g_led_config.flags[mods[j]] = LED_FLAG_MODIFIER; + } + + if (!rgb_matrix_is_enabled()) { + rgb_matrix_enable(); + #ifdef CONSOLE_ENABLE + uprintf("ERROR! RGB Matrix Enabled and wrote to EEPROM! -How was the RGB Matrix Disabled?"); + #endif + } + } + + /* Renaming those to make the purpose on this keymap clearer */ + #define LED_FLAG_CAPS LED_FLAG_NONE + #define LED_FLAG_EFFECTS LED_FLAG_INDICATOR + + static void set_rgb_caps_leds(void); + + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + static uint16_t effect_started_time = 0; + static uint8_t r_effect = 0x0, g_effect = 0x0, b_effect = 0x0; + static void start_effects(void); + + /* The higher this is, the slower the blinking will be */ + #ifndef TIME_SELECTED_BIT + #define TIME_SELECTED_BIT 8 + #endif + #if TIME_SELECTED_BIT < 0 || TIME_SELECTED_BIT >= 16 + #error "TIME_SELECTED_BIT must be a positive integer smaller than 16" + #endif + #define effect_red() r_effect = 0xFF, g_effect = 0x0, b_effect = 0x0 + #define effect_green() r_effect = 0x0, g_effect = 0xFF, b_effect = 0x0 + #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 + + bool led_update_user(led_t led_state) { + if (led_state.caps_lock) { + if (!rgb_matrix_is_enabled()) { + /* Turn ON the RGB Matrix for CAPS LOCK */ + rgb_matrix_set_flags(LED_FLAG_CAPS); + rgb_matrix_enable(); + } + } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { + /* RGB Matrix was only ON because of CAPS LOCK. Turn it OFF. */ + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_disable(); + } + return true; + } + + bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + // https://github.com/qmk/qmk_firmware/issues/10111 + case KC_MSCTRL: + if (record->event.pressed) { + host_consumer_send(0x29F); + } else { + host_consumer_send(0); + } + return false; /* Skip all further processing of this key */ + + case KC_LNPD: + if (record->event.pressed) { + host_consumer_send(0x2A0); + } else { + host_consumer_send(0); + } + return false; /* Skip all further processing of this key */ + + #ifdef NKRO_ENABLE + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + case NK_TOGG: + if (record->event.pressed) { + if (keymap_config.nkro) { + /* Turning NKRO OFF */ + effect_red(); + } else { + /* Turning NKRO ON */ + effect_green(); + } + start_effects(); + } + break; + #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 + #endif // NKRO_ENABLE + + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + case TG(2): + if (record->event.pressed) { + if (IS_LAYER_OFF(2)) { + effect_red(); + } else { + effect_green(); + } + start_effects(); + } + break; + #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 + + /* LED quick preset keys assignments */ + case LED_TLDE: + rgb_matrix_mode(RGB_MATRIX_SOLID_COLOR); // Can use RGB_M_P built-in keycode instead. + break; + case LED_1: + rgb_matrix_mode(RGB_MATRIX_ALPHAS_MODS); + break; + case LED_2: + rgb_matrix_mode(RGB_MATRIX_GRADIENT_UP_DOWN); + break; + case LED_3: + rgb_matrix_mode(RGB_MATRIX_JELLYBEAN_RAINDROPS); + break; + case LED_4: + rgb_matrix_mode(RGB_MATRIX_BAND_SAT); + break; + case LED_5: + rgb_matrix_mode(RGB_MATRIX_BAND_VAL); + break; + case LED_6: + rgb_matrix_mode(RGB_MATRIX_BAND_SPIRAL_VAL); + break; + case LED_7: + rgb_matrix_mode(RGB_MATRIX_CYCLE_LEFT_RIGHT); // Can use RGB_M_R built-in keycode instead. + break; + case LED_8: + rgb_matrix_mode(RGB_MATRIX_CYCLE_PINWHEEL); // Can use RGB_M_SW built-in keycode instead. + break; + case LED_9: + rgb_matrix_mode(RGB_MATRIX_BREATHING); // Can use RGB_M_B built-in keycode instead. + break; + + #ifdef RGB_MATRIX_KEYPRESSES // Reactive effects require RGB_MATRIX_KEYPRESSES in config.h + case LED_0: + rgb_matrix_mode(RGB_MATRIX_SOLID_REACTIVE_WIDE); + break; + #endif //RGB_MATRIX_KEYPRESSES + + #ifdef RGB_MATRIX_FRAMEBUFFER_EFFECTS // Heatmap and Rain require #define RGB_MATRIX_FRAMEBUFFER_EFFECTS in config.h + case LED_MINS: + rgb_matrix_mode(RGB_MATRIX_DIGITAL_RAIN); + break; + case LED_EQL: + rgb_matrix_mode(RGB_MATRIX_TYPING_HEATMAP); + break; + #endif //RGB_MATRIX_FRAMEBUFFER_EFFECTS + + + // case RGB_MOD: + // case RGB_RMOD: + // case RGB_HUI: + // case RGB_HUD: + // case RGB_SAI: + // case RGB_SAD: + // case RGB_VAI: + // case RGB_VAD: + // case RGB_SPI: + case RGB_SPD: + if (record->event.pressed) { + if (rgb_matrix_get_flags() != LED_FLAG_ALL) { + /* Ignore changes to RGB settings while only it's supposed to be OFF */ + return false; + } + } + break; + + case RGB_TOG: + // if (record->event.pressed) { + // if (rgb_matrix_get_flags() == LED_FLAG_ALL) { + // rgb_matrix_set_flags(LED_FLAG_NONE); + // rgb_matrix_set_color_all(0, 0, 0); + // } else { + // rgb_matrix_set_flags(LED_FLAG_ALL); + // } + // } + // return false; + if (record->event.pressed) { + if (rgb_matrix_is_enabled()) { + switch (rgb_matrix_get_flags()) { + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + case LED_FLAG_EFFECTS: + #endif + case LED_FLAG_CAPS: + /* Turned ON because of EFFECTS or CAPS, is actually OFF */ + /* Change to LED_FLAG_ALL to signal it's really ON */ + rgb_matrix_set_flags(LED_FLAG_ALL); + /* Will be re-enabled by the processing of the toggle */ + rgb_matrix_disable_noeeprom(); + break; + case LED_FLAG_ALL: + /* Is actually ON */ + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + if (effect_started_time > 0) { + /* Signal EFFECTS */ + rgb_matrix_set_flags(LED_FLAG_EFFECTS); + /* Will be re-enabled by the processing of the toggle */ + rgb_matrix_disable_noeeprom(); + } else + #endif + if (host_keyboard_led_state().caps_lock) { + /* Signal CAPS */ + rgb_matrix_set_flags(LED_FLAG_CAPS); + /* Will be re-enabled by the processing of the toggle */ + rgb_matrix_disable_noeeprom(); + } + break; + } + } + } + break; + + } + return true; + } + + + void rgb_matrix_indicators_user() { + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + if (effect_started_time > 0) { + /* Render blinking EFFECTS */ + uint16_t deltaTime = sync_timer_elapsed(effect_started_time); + if (deltaTime <= RGB_CONFIRMATION_BLINKING_TIME) { + uint8_t led_state = ((~deltaTime) >> TIME_SELECTED_BIT) & 0x01; + uint8_t val_r = led_state * r_effect; + uint8_t val_g = led_state * g_effect; + uint8_t val_b = led_state * b_effect; + rgb_matrix_set_color_all(val_r, val_g, val_b); + if (host_keyboard_led_state().caps_lock) { + set_rgb_caps_leds(); + } + return; + } else { + /* EFFECTS duration is finished */ + effect_started_time = 0; + if (rgb_matrix_get_flags() == LED_FLAG_EFFECTS) { + /* It was turned ON because of EFFECTS */ + if (host_keyboard_led_state().caps_lock) { + /* CAPS is still ON. Demote to CAPS */ + rgb_matrix_set_flags(LED_FLAG_CAPS); + } else { + /* There is nothing else keeping RGB enabled. Reset flags and turn if off. */ + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_disable_noeeprom(); + } + } + } + } + #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 + if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { + rgb_matrix_set_color_all(0x0, 0x0, 0x0); + } + if (host_keyboard_led_state().caps_lock) { + set_rgb_caps_leds(); + } + } + + #if RGB_CONFIRMATION_BLINKING_TIME > 0 + static void start_effects() { + effect_started_time = sync_timer_read(); + if (!rgb_matrix_is_enabled()) { + /* Turn it ON, signal the cause (EFFECTS) */ + rgb_matrix_set_flags(LED_FLAG_EFFECTS); + rgb_matrix_enable_noeeprom(); + } else if (rgb_matrix_get_flags() == LED_FLAG_CAPS) { + /* It's already ON, promote the cause from CAPS to EFFECTS */ + rgb_matrix_set_flags(LED_FLAG_EFFECTS); + } + } + #endif // RGB_CONFIRMATION_BLINKING_TIME > 0 + + static void set_rgb_caps_leds() { + rgb_matrix_set_color(67, 0xFF, 0x0, 0x0); // Left side LED 1 + rgb_matrix_set_color(68, 0xFF, 0x0, 0x0); // Right side LED 1 + rgb_matrix_set_color(70, 0xFF, 0x0, 0x0); // Left side LED 2 + rgb_matrix_set_color(71, 0xFF, 0x0, 0x0); // Right side LED 2 + rgb_matrix_set_color(73, 0xFF, 0x0, 0x0); // Left side LED 3 + rgb_matrix_set_color(74, 0xFF, 0x0, 0x0); // Right side LED 3 + rgb_matrix_set_color(76, 0xFF, 0x0, 0x0); // Left side LED 4 + rgb_matrix_set_color(77, 0xFF, 0x0, 0x0); // Right side LED 4 + rgb_matrix_set_color(80, 0xFF, 0x0, 0x0); // Left side LED 5 + rgb_matrix_set_color(81, 0xFF, 0x0, 0x0); // Right side LED 5 + rgb_matrix_set_color(83, 0xFF, 0x0, 0x0); // Left side LED 6 + rgb_matrix_set_color(84, 0xFF, 0x0, 0x0); // Right side LED 6 + rgb_matrix_set_color(87, 0xFF, 0x0, 0x0); // Left side LED 7 + rgb_matrix_set_color(88, 0xFF, 0x0, 0x0); // Right side LED 7 + rgb_matrix_set_color(91, 0xFF, 0x0, 0x0); // Left side LED 8 + rgb_matrix_set_color(92, 0xFF, 0x0, 0x0); // Right side LED 8 + rgb_matrix_set_color(3, 0xFF, 0x0, 0x0); // CAPS LED + } + +#endif // RGB_MATRIX_ENABLE diff --git a/keyboards/gmmk/pro/ansi/keymaps/macos/readme.md b/keyboards/gmmk/pro/ansi/keymaps/macos/readme.md new file mode 100644 index 0000000000..8024e77cc1 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/macos/readme.md @@ -0,0 +1,85 @@ +# GMMK Pro Standard Layout for macOS by zvuc + +As you may know, Glorious does not (yet) provide their Glorious Core software for macOS; so with stock firmware, there aren't any ways to customize layouts on the hardware level unless you turn to software-based override solutions such as [Karabiner Elements](https://karabiner-elements.pqrs.org/). This is my attempt to try to create the most macOS-like experience on the GMMK Pro, taking close notes from Apple's Magic Keyboard, also referencing code from other community keymaps. + +## Keymap +Layer 0 +Layer0 + +Layer 1 (Hold Fn) +Layer1 + +Layer 2 (Togglable alternative function row layout by pressing Fn+F) +Layer2 + + +## Notable differences from stock key layout for Windows: +- Delete key placed right next to backspace (under rotary encoder) +- F13 key for the bottommost row (Assign it to a shortcut you like in macOS preferences! [For example: "Emoji & Symbols" to bring up the emoji input popup instantly](https://user-images.githubusercontent.com/2870726/132237211-7e13c156-96a8-4a91-b215-28d310228feb.png)) +- Eject key for the last key in function row: Needed for macOS native global "Sleep" hotkey (Eject) + +## Notable Features +- VIA support +- Rotary Encoder support (Defaults to stock behavior Volume Up/Down) +- Standard order for macOS modifier keys: + * Left: ⌃ Control⌥ Option⌘ Command + * Right: ⌘ Command⌥ OptionFn +- Apple Magic Keyboard-like Function Row Mode (Toggle with Fn+F) + * F1: Decrease display brightness + * F2: Increase display brightness + * F3: Mission Control + * F4: Launchpad + * F5: Decrease keyboard backlight brightness + * F6: Increase keyboard backlight brightness + * F7: (none) + * F8: (none) + * F9: Media Rewind + * F10: Media Play/Pause + * F11: Media Fast Forward + * F12: (none) + +> #### NOTE +> - Media key mappings follow Apple Magic Keyboard except F8 thru F12, where keys have been shifted by one to the right. It's because I wanted to get over the awkward gap between F8 and F9 that the GMMK Pro has—and also because we don't need dedicated keys for volume control when we have the more convenient rotary knob. +> - To access standard F1 - F12 keys, press the Function keys while holding Fn. +> - If you're planning to use Karabiner Elements, use the standard Function row mode (F1 - F12) because Karabiner Elements always overrides function keys even if you want to just use simple or complex modifications, and it doesn't catch custom keys like Mission Control, Launchpad or Eject. (Eject is mapped as F24 so you can replace it with 'Eject' within Karabiner.) + +## RGB Lighting +- Retains Glorious stock firmware key mappings for control + * FnUp / FnDown: Cycle presets + * FnLeft / FnRight: Adjust speed + * FnW / FnS: Adjust brightness +- Quickly switch to popular presets: + * Fn` : Solid color (no animation) + * Fn1 : Solid duotone (no animation) - ShiftKnob to change secondary color. + * Fn2 : Vertical gradient - ShiftKnob to change secondary color. + * Fn3 : "Jellybean Raindrops" + * Fn4 : Horizontal wipe with white backlight + * Fn5 : Horizontal wipe + * Fn6 : Single color pinwheel + * Fn7 : Horizontal rainbow + * Fn8 : Rainbow pinwheel + * Fn9 : Breathing + * Fn0 : Reactive (light up on keypress) + * Fn- : "Digital Rain" + * Fn= : "Heatmap" +- RGB turns off after 20 minutes of inactivity +- RGB turns off when USB is suspended / enters sleep +- Caps Lock toggle indicator (Caps Lock key and side lights will turn red) +- Easy RGB control using Rotary Encoder + - Control+Rotate Knob: Adjust hue + - Option+Rotate Knob: Adjust saturation + - Command+Rotate Knob: Adjust brightness + +> All latest QMK effects [(41 as of now)](https://beta.docs.qmk.fm/using-qmk/hardware-features/lighting/feature_rgb_matrix#rgb-matrix-effects-id-rgb-matrix-effects) are enabled by default and will apply in order when cycling through using FnUp / FnDown. You can disable specific effects by uncommenting (remove the `//` at the beginning of line) respective lines (ex: `#define DISABLE_RGB_MATRIX_BREATHING`) in `qmk_firmware/keyboards/gmmk/pro/ansi/keymaps/zvuc/config.h` then recompiling the firmware. + +## Other Features +- 1000hz polling rate +- Short DEBOUNCE time (5 ms) +- Per-key debounce algorithm (`sym_defer_pk`) +- NKRO toggle (Fn+N) + +## Warning regarding VIA support +When observing this keyboard firmware in VIA, some custom-implemented keys such as Mission Control/Launchpad and RGB preset shortcuts appear as keycodes such as `0x5d62`. **These must not be modified!** There is no way to get their default functionality back unless you re-flash the firmware through QMK Toolbox. + +## Download pre-compiled firmware binary file +[Download BIN file from here](https://github.com/zvuc/qmk_firmware/releases/tag/zvuc-1.0.1) diff --git a/keyboards/gmmk/pro/ansi/keymaps/macos/rules.mk b/keyboards/gmmk/pro/ansi/keymaps/macos/rules.mk new file mode 100644 index 0000000000..e9073d44a0 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/macos/rules.mk @@ -0,0 +1,4 @@ +# Enable additional features. + +DEBOUNCE_TYPE = sym_defer_pk +VIA_ENABLE = yes From 708b3f91928d578a1f9babaf27490c80f1b7a918 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Wed, 9 Mar 2022 20:46:30 -0700 Subject: [PATCH 075/699] [Keyboard] Size reduction for kbdfans/kbd67/mkiirgb_iso (#16601) --- keyboards/kbdfans/kbd67/mkiirgb_iso/config.h | 7 +------ keyboards/kbdfans/kbd67/mkiirgb_iso/rules.mk | 1 + 2 files changed, 2 insertions(+), 6 deletions(-) diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h index 8806624e24..42f5af8c25 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h @@ -42,9 +42,7 @@ #define USB_SUSPEND_WAKEUP_DELAY 5000 #define RGB_DI_PIN C7 -#define RGBLED_NUM 68 -#define DRIVER_LED_TOTAL RGBLED_NUM -#define RGBLIGHT_ANIMATIONS +#define DRIVER_LED_TOTAL 68 #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_KEYPRESSES // reacts to keypresses @@ -85,9 +83,6 @@ # define ENABLE_RGB_MATRIX_HUE_BREATHING # define ENABLE_RGB_MATRIX_HUE_PENDULUM # define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined # define ENABLE_RGB_MATRIX_TYPING_HEATMAP // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/rules.mk b/keyboards/kbdfans/kbd67/mkiirgb_iso/rules.mk index 7e5b22ef73..14509a1872 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/rules.mk +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/rules.mk @@ -3,6 +3,7 @@ MCU = atmega32u4 # Bootloader selection BOOTLOADER = lufa-ms +BOOTLOADER_SIZE = 6144 # Build Options # change yes to no to disable From 8bcb77cb9ac19cbd140ea7bb07e0231eec65282d Mon Sep 17 00:00:00 2001 From: maherma-adg Date: Thu, 10 Mar 2022 04:56:42 +0100 Subject: [PATCH 076/699] Personalizacion del teclado de AdG (#15738) * Personalizacion del teclado de AdG Update layout description fix symbol layer * fix doc Colemak * explicitly define enabled animations * Change keymap folder name --- .../kyria/keymaps/maherma-adg/config.h | 41 ++ .../kyria/keymaps/maherma-adg/keymap.c | 420 ++++++++++++++++++ .../kyria/keymaps/maherma-adg/readme.md | 17 + .../kyria/keymaps/maherma-adg/rules.mk | 5 + 4 files changed, 483 insertions(+) create mode 100644 keyboards/splitkb/kyria/keymaps/maherma-adg/config.h create mode 100644 keyboards/splitkb/kyria/keymaps/maherma-adg/keymap.c create mode 100644 keyboards/splitkb/kyria/keymaps/maherma-adg/readme.md create mode 100644 keyboards/splitkb/kyria/keymaps/maherma-adg/rules.mk diff --git a/keyboards/splitkb/kyria/keymaps/maherma-adg/config.h b/keyboards/splitkb/kyria/keymaps/maherma-adg/config.h new file mode 100644 index 0000000000..1a4c64ed13 --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/maherma-adg/config.h @@ -0,0 +1,41 @@ +/* Copyright 2019 Thomas Baart + * + * 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 . + */ + +#pragma once + +#ifdef RGBLIGHT_ENABLE +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 150 +#endif + +// Lets you roll mod-tap keys +#define IGNORE_MOD_TAP_INTERRUPT + +// If you are using an Elite C rev3 on the slave side, uncomment the lines below: +// #define SPLIT_USB_DETECT +// #define NO_USB_STARTUP_CHECK diff --git a/keyboards/splitkb/kyria/keymaps/maherma-adg/keymap.c b/keyboards/splitkb/kyria/keymaps/maherma-adg/keymap.c new file mode 100644 index 0000000000..240bc6edf5 --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/maherma-adg/keymap.c @@ -0,0 +1,420 @@ +/* Copyright 2019 Thomas Baart + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "keymap_spanish.h" + +enum layers { + _QWERTY = 0, + _DVORAK, + _COLEMAK_DH, + _NAV, + _SYM, + _FUNCTION, + _ADJUST, + _NUMPAD, + _MOUSE +}; + + +// Aliases for readability +#define QWERTY DF(_QWERTY) +#define COLEMAK DF(_COLEMAK_DH) +#define DVORAK DF(_DVORAK) + +#define NUMPAD DF(_NUMPAD) +#define MOUSE DF(_MOUSE) +#define DNAV DF(_NAV) + +#define SYM MO(_SYM) +#define NAV MO(_NAV) +#define FKEYS MO(_FUNCTION) +#define ADJUST MO(_ADJUST) + +#define CTL_ESC MT(MOD_LCTL, KC_ESC) +#define CTL_QUOT MT(MOD_RCTL, KC_QUOTE) +#define CTL_MINS MT(MOD_RCTL, KC_MINUS) +#define ALT_ENT MT(MOD_LALT, KC_ENT) +#define LGUI_ENT MT(MOD_LGUI, KC_ENT) +#define LALT_SUP MT(MOD_LALT, KC_DEL) +#define RGUI_TAB MT(MOD_RGUI, KC_TAB) +#define RALT_BS MT(MOD_RALT, KC_BSPC) +#define LSFT_LPR MT(MOD_LSFT, ES_LPRN) +#define RSFT_RPR MT(MOD_RSFT, ES_RPRN) + +#define NAV_ESC LT(NAV, KC_ESC) +#define SYM_SPC LT(SYM, KC_SPC) +#define NAV_SPC LT(NAV, KC_SPC) +#define SYM_ENT LT(SYM, KC_ENT) + +#define OSX_TILD ALGR(KC_SCLN) + +// Note: LAlt/Enter (ALT_ENT) is not the same thing as the keyboard shortcut Alt+Enter. +// The notation `mod/tap` denotes a key that activates the modifier `mod` when held down, and +// produces the key `tap` when tapped (i.e. pressed and released). + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* + * Base Layer: QWERTY + * + * ,-------------------------------------------. ,-------------------------------------------. + * | Tab | Q | W | E | R | T | | Y | U | I | O | P | Bksp | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * |Ctrl/Esc| A | S | D | F | G | | H | J | K | L | Ñ |Ctrl/´ ¨| + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * |LShift/(| Z | X | C | V | B | `^[ |CapsLk| |F-keys| +*] | N | M | , ; | . : | - _ |RShift/)| + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * |Adjust| LAlt/| LGUI/| Sym/ | Nav/ | | Sym/ | Nav/ | RGUI/| RAlt/| Menu | + * | | Supr | Enter| Space| Esc | | Enter| Space| Tab | Bksp | | + * `----------------------------------' `----------------------------------' + */ + [_QWERTY] = LAYOUT( + KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y, KC_U , KC_I , KC_O , KC_P , KC_BSPC, + CTL_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_SCLN, CTL_QUOT, + LSFT_LPR , KC_Z , KC_X , KC_C , KC_V , KC_B , ES_GRV , KC_CAPS, FKEYS , ES_PLUS , KC_N , KC_M, KC_COMM , KC_DOT , KC_SLSH, RSFT_RPR, + ADJUST , LALT_SUP, LGUI_ENT, SYM_SPC , NAV_ESC, SYM_ENT, NAV_SPC , RGUI_TAB, RALT_BS, KC_APP + ), + +/* + * Base Layer: Dvorak + * + * ,-------------------------------------------. ,-------------------------------------------. + * | Tab | ´ ¨ | , ; | . : | P | Y | | F | G | C | R | L | Bksp | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * |Ctrl/Esc| A | O | E | U | I | | D | H | T | N | S |Ctrl/' ?| + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * |LShift/(| Ñ | Q | J | K | X | `^[ |CapsLk| |F-keys| +*] | B | M | W | V | Z |RShift/)| + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * |Adjust| LAlt/| LGUI/| Sym/ | Nav/ | | Sym/ | Nav/ | RGUI/| RAlt/| Menu | + * | | Supr | Enter| Space| Esc | | Enter| Space| Tab | Bksp | | + * `----------------------------------' `----------------------------------' + */ + [_DVORAK] = LAYOUT( + KC_TAB ,KC_QUOTE,KC_COMM, KC_DOT, KC_P , KC_Y , KC_F, KC_G , KC_C , KC_R , KC_L , KC_BSPC, + CTL_ESC , KC_A , KC_O , KC_E , KC_U , KC_I , KC_D, KC_H , KC_T , KC_N , KC_S , CTL_MINS, + LSFT_LPR ,KC_SCLN, KC_Q , KC_J , KC_K , KC_X , ES_GRV, KC_CAPS, FKEYS , ES_PLUS, KC_B, KC_M , KC_W , KC_V , KC_Z , RSFT_RPR, + ADJUST , LALT_SUP, LGUI_ENT, SYM_SPC , NAV_ESC, SYM_ENT, NAV_SPC , RGUI_TAB, RALT_BS, KC_APP + ), + +/* + * Base Layer: Colemak DH + * + * ,-------------------------------------------. ,-------------------------------------------. + * | Tab | Q | W | F | P | B | | J | L | U | Y | Ñ | Bksp | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * |Ctrl/Esc| A | R | S | T | G | | M | N | E | I | O |Ctrl/´ ¨| + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * |LShift/(| Z | X | C | D | V | `^[ |CapsLk| |F-keys| +*] | K | H | , ; | . : | - _ |RShift/)| + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * |Adjust| LAlt/| LGUI/| Sym/ | Nav/ | | Sym/ | Nav/ | RGUI/| RAlt/| Menu | + * | | Supr | Enter| Space| Esc | | Enter| Space| Tab | Bksp | | + * `----------------------------------' `----------------------------------' + */ + [_COLEMAK_DH] = LAYOUT( + KC_TAB , KC_Q , KC_W , KC_F , KC_P , KC_B , KC_J, KC_L , KC_U , KC_Y , KC_SCLN , KC_BSPC, + CTL_ESC , KC_A , KC_R , KC_S , KC_T , KC_G , KC_M, KC_N , KC_E , KC_I , KC_O , CTL_QUOT, + LSFT_LPR , KC_Z , KC_X , KC_C , KC_D , KC_V , ES_GRV, KC_CAPS, FKEYS , ES_PLUS , KC_K , KC_H , KC_COMM , KC_DOT , KC_SLSH, RSFT_RPR, + ADJUST , LALT_SUP, LGUI_ENT, SYM_SPC , NAV_ESC, SYM_ENT, NAV_SPC , RGUI_TAB , RALT_BS , KC_APP + ), + +/* + * Nav Layer: Media, navigation + * + * ,-------------------------------------------. ,-------------------------------------------. + * | | | | | | | | PgUp | Home | ↑ | End | VolUp| Delete | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | | Shift| Ctrl | Alt | GUI | | | PgDn | ← | ↓ | → | VolDn| Insert | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | | | | | | | |ScLck | | | | Pause|M Prev|M Play|M Next|VolMut| PrtSc | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * | | | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_NAV] = LAYOUT( + _______, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_VOLU, KC_DEL, + _______, KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_VOLD, KC_INS, + _______, _______, _______, _______, _______, _______, _______, KC_SLCK, _______, _______,KC_PAUSE, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_PSCR, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + * Sym Layer: Numbers and symbols + * + * ,-------------------------------------------. ,-------------------------------------------. + * | º | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | ª | ! | " | · | $ | % | | & | / | ( | ) | = | ? | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | \ | | | @ | # | ~ | € | ¬ | | | | | ¡ | < | > | { | } | ¿ | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * | | | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_SYM] = LAYOUT( + KC_NUBS, KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , ES_QUOT, + S(KC_NUBS) , ES_EXLM, ES_DQUO , ES_BULT, ES_DLR, ES_PERC, ES_AMPR, ES_SLSH, ES_LPRN, ES_RPRN, ES_EQL, ES_QUES, + A(KC_NUBS), ES_PIPE, ES_AT, ES_HASH , OSX_TILD, A(KC_E), ES_NOT, _______, S(ES_CCED), ES_CCED, ES_IEXL, KC_GRAVE, S(KC_GRAVE), ES_LCBR, ES_RCBR, ES_IQUE, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + * Sym Layer: Numbers and symbols + * + * ,-------------------------------------------. ,-------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | ' | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | ~ | ! | @ | · | $ | % | | & | / | ( | ) | = | ¿ | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | | | \ | : | ; | - | [ | { | | | | } | ] | _ | , | . | / | ? | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * | | | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ +// [_SYM] = LAYOUT( +// C(KC_GRV), KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , KC_EQL , +// OSX_TILD , KC_EXLM, KC_AT , KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PLUS, +// ES_PIPE , A(KC_NUHS) , ES_COLN, ES_SCLN, ES_MINS, ES_LBRC, ES_LCBR, _______, _______, ES_RCBR, ES_RBRC, ES_UNDS, ES_COMM, ES_DOT, ES_SLSH, ES_QUOT, +// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +// ), + +/* + * Function Layer: Function keys + * + * ,-------------------------------------------. ,-------------------------------------------. + * | | F9 | F10 | F11 | F12 | | | | | | | | | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | | F5 | F6 | F7 | F8 | | | | GUI | Alt | Ctrl | Shift| | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | | F1 | F2 | F3 | F4 | | | | | | | | | | | | | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * | | | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_FUNCTION] = LAYOUT( + _______, KC_F9 , KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, + _______, KC_F5 , KC_F6 , KC_F7 , KC_F8 , _______, _______, KC_RGUI, KC_RALT, KC_RCTL, KC_RSFT, _______, + _______, KC_F1 , KC_F2 , KC_F3 , KC_F4 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + * Adjust Layer: Default layer settings, RGB + * + * ,-------------------------------------------. ,-------------------------------------------. + * | NumPad | | |QWERTY| | | | | | | | | RESET | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | Mouse | | |Dvorak| | | | TOG | SAI | HUI | VAI | MOD | DEBUG | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * |Nav Perm| | |Colmak| | | | | | | | | SAD | HUD | VAD | RMOD | EEP_RST| + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * | | | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_ADJUST] = LAYOUT( + NUMPAD , _______, _______, QWERTY , _______, _______, _______, _______, _______, _______, _______, RESET , + MOUSE , _______, _______, DVORAK , _______, _______, RGB_TOG, RGB_SAI, RGB_HUI, RGB_VAI, RGB_MOD, DEBUG , + DNAV , _______, _______, COLEMAK, _______, _______,_______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, RGB_RMOD, EEPROM_RESET, + _______, _______, _______,_______, _______, _______, _______, _______, _______, _______ + ), + +/* + * Layer NumPad + * + * ,-------------------------------------------. ,-------------------------------------------. + * | | | | | | | | | | | | | | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | | | | | | | | | | | | | | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | | | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * |Adjust| | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_NUMPAD] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + ADJUST , _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* + * Layer Mouse + * + * ,-------------------------------------------. ,-------------------------------------------. + * | | | | | | | | |MS LCL| MS ↑ |MS RCL| Whl ↑| | + * |--------+------+------+------+------+------| |------+------+------+------+------+--------| + * | | Shift| Ctrl | Alt | GUI | | | | MS ← | MS ↓ | MS → | Whl ↓| | + * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| + * | | | | | | | | | | | | | | | | | | + * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' + * |Adjust| | | | | | | | | | | + * | | | | | | | | | | | | + * `----------------------------------' `----------------------------------' + */ + [_MOUSE] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_WH_U, _______, + _______, KC_LSFT, KC_LCTL, KC_LALT, KC_LGUI, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + ADJUST , _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +/* +// * Layer template +// * +// * ,-------------------------------------------. ,-------------------------------------------. +// * | | | | | | | | | | | | | | +// * |--------+------+------+------+------+------| |------+------+------+------+------+--------| +// * | | | | | | | | | | | | | | +// * |--------+------+------+------+------+------+-------------. ,-------------+------+------+------+------+------+--------| +// * | | | | | | | | | | | | | | | | | | +// * `----------------------+------+------+------+------+------| |------+------+------+------+------+----------------------' +// * | | | | | | | | | | | | +// * | | | | | | | | | | | | +// * `----------------------------------' `----------------------------------' +// */ +// [_LAYERINDEX] = LAYOUT( +// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +// ), +}; + +/* The default OLED and rotary encoder code can be found at the bottom of qmk_firmware/keyboards/splitkb/kyria/rev1/rev1.c + * These default settings can be overriden by your own settings in your keymap.c + * For your convenience, here's a copy of those settings so that you can uncomment them if you wish to apply your own modifications. + * DO NOT edit the rev1.c file; instead override the weakly defined default functions by your own. + */ + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; } + +bool oled_task_user(void) { + if (is_keyboard_master()) { + // QMK Logo and version information + // clang-format off + static const char PROGMEM qmk_logo[] = { + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4,0}; + // clang-format on + + oled_write_P(qmk_logo, false); + oled_write_P(PSTR("Kyria AdG v0.1\n\n"), false); + + // Host Keyboard Layer Status + oled_write_P(PSTR("Layer: "), false); + switch (get_highest_layer(layer_state|default_layer_state)) { + case _QWERTY: + oled_write_P(PSTR("QWERTY\n"), false); + break; + case _DVORAK: + oled_write_P(PSTR("Dvorak\n"), false); + break; + case _COLEMAK_DH: + oled_write_P(PSTR("Colemak-DH\n"), false); + break; + case _NAV: + oled_write_P(PSTR("Nav\n"), false); + break; + case _SYM: + oled_write_P(PSTR("Sym\n"), false); + break; + case _FUNCTION: + oled_write_P(PSTR("Function\n"), false); + break; + case _ADJUST: + oled_write_P(PSTR("Adjust\n"), false); + break; + case _NUMPAD: + oled_write_P(PSTR("NumPad\n"), false); + break; + case _MOUSE: + oled_write_P(PSTR("Mouse\n"), false); + break; + default: + oled_write_P(PSTR("Undefined\n"), false); + } + + // Write host Keyboard LED Status to OLEDs + led_t led_usb_state = host_keyboard_led_state(); + oled_write_P(led_usb_state.num_lock ? PSTR("NUMLCK ") : PSTR(" "), false); + oled_write_P(led_usb_state.caps_lock ? PSTR("CAPLCK ") : PSTR(" "), false); + oled_write_P(led_usb_state.scroll_lock ? PSTR("SCRLCK ") : PSTR(" "), false); + } else { + // clang-format off + static const char PROGMEM kyria_logo[] = { + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,128,128,192,224,240,112,120, 56, 60, 28, 30, 14, 14, 14, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 7, 14, 14, 14, 30, 28, 60, 56,120,112,240,224,192,128,128, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0,192,224,240,124, 62, 31, 15, 7, 3, 1,128,192,224,240,120, 56, 60, 28, 30, 14, 14, 7, 7,135,231,127, 31,255,255, 31,127,231,135, 7, 7, 14, 14, 30, 28, 60, 56,120,240,224,192,128, 1, 3, 7, 15, 31, 62,124,240,224,192, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0,240,252,255, 31, 7, 1, 0, 0,192,240,252,254,255,247,243,177,176, 48, 48, 48, 48, 48, 48, 48,120,254,135, 1, 0, 0,255,255, 0, 0, 1,135,254,120, 48, 48, 48, 48, 48, 48, 48,176,177,243,247,255,254,252,240,192, 0, 0, 1, 7, 31,255,252,240, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,254,255,255, 1, 1, 7, 30,120,225,129,131,131,134,134,140,140,152,152,177,183,254,248,224,255,255,224,248,254,183,177,152,152,140,140,134,134,131,131,129,225,120, 30, 7, 1, 1,255,255,254, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0,255,255, 0, 0,192,192, 48, 48, 0, 0,240,240, 0, 0, 0, 0, 0, 0,240,240, 0, 0,240,240,192,192, 48, 48, 48, 48,192,192, 0, 0, 48, 48,243,243, 0, 0, 0, 0, 0, 0, 48, 48, 48, 48, 48, 48,192,192, 0, 0, 0, 0, 0, + 0, 0, 0,255,255,255, 0, 0, 0, 0, 0,127,255,255,128,128,224,120, 30,135,129,193,193, 97, 97, 49, 49, 25, 25,141,237,127, 31, 7,255,255, 7, 31,127,237,141, 25, 25, 49, 49, 97, 97,193,193,129,135, 30,120,224,128,128,255,255,127, 0, 0, 0, 0, 0,255,255,255, 0, 0, 0, 0, 63, 63, 3, 3, 12, 12, 48, 48, 0, 0, 0, 0, 51, 51, 51, 51, 51, 51, 15, 15, 0, 0, 63, 63, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 48, 48, 63, 63, 48, 48, 0, 0, 12, 12, 51, 51, 51, 51, 51, 51, 63, 63, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 15, 63,255,248,224,128, 0, 0, 3, 15, 63,127,255,239,207,141, 13, 12, 12, 12, 12, 12, 12, 12, 30,127,225,128, 0, 0,255,255, 0, 0,128,225,127, 30, 12, 12, 12, 12, 12, 12, 12, 13,141,207,239,255,127, 63, 15, 3, 0, 0,128,224,248,255, 63, 15, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 3, 7, 15, 62,124,248,240,224,192,128, 1, 3, 7, 15, 30, 28, 60, 56,120,112,112,224,224,225,231,254,248,255,255,248,254,231,225,224,224,112,112,120, 56, 60, 28, 30, 15, 7, 3, 1,128,192,224,240,248,124, 62, 15, 7, 3, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 3, 7, 15, 14, 30, 28, 60, 56,120,112,112,112,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,224,112,112,112,120, 56, 60, 28, 30, 14, 15, 7, 3, 1, 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 + }; + // clang-format on + oled_write_raw_P(kyria_logo, sizeof(kyria_logo)); + } + return false; +} +#endif + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + + if (index == 0) { + // Volume control + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (index == 1) { + // Page up/Page down + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return false; +} +#endif + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LSFT_LPR: + if (record->tap.count && record->event.pressed) { + tap_code16(ES_LPRN); // Send KC_DQUO on tap + return false; // Return false to ignore further processing of key + } + break; + case RSFT_RPR: + if (record->tap.count && record->event.pressed) { + tap_code16(ES_RPRN); // Send KC_DQUO on tap + return false; // Return false to ignore further processing of key + } + break; + } + return true; +} \ No newline at end of file diff --git a/keyboards/splitkb/kyria/keymaps/maherma-adg/readme.md b/keyboards/splitkb/kyria/keymaps/maherma-adg/readme.md new file mode 100644 index 0000000000..bf54275d2b --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/maherma-adg/readme.md @@ -0,0 +1,17 @@ +# Kyria's Keymap adapted to Spanish MacOS (WIP) + + + +The default keymap contains 7 layers which allows it to include all keys found on spanish Apple keyboard plus media keys. +Hardware features of the Kyria such as OLEDs and underglow are also supported. + +The five different layers are the following: +1. Base layer (QWERTY, Colemak-DH or Dvorak) +2. Navigation layer +3. Symbols/Numbers layer +4. Function layer +5. Adjust layer +6. Numpad layer +7. Mouse layer + +Look into keymap.c to view mappings diff --git a/keyboards/splitkb/kyria/keymaps/maherma-adg/rules.mk b/keyboards/splitkb/kyria/keymaps/maherma-adg/rules.mk new file mode 100644 index 0000000000..f37eabe3d5 --- /dev/null +++ b/keyboards/splitkb/kyria/keymaps/maherma-adg/rules.mk @@ -0,0 +1,5 @@ +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 # Enables the use of OLED displays +ENCODER_ENABLE = no # Enables the use of one or more encoders +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +MOUSEKEY_ENABLE = yes # Enable mouse movements \ No newline at end of file From 9d0153dc70d0ebc8314946209778b61a88d7d716 Mon Sep 17 00:00:00 2001 From: Takeshi Nishio Date: Thu, 10 Mar 2022 13:14:53 +0900 Subject: [PATCH 077/699] [keyboard]Add v1 to jones keyboard (#14405) * Change for latest information. * Update from v03_1 to v1. * Add v1 files. * Remove finished todo comment. * Fix COLUMN number, from "a" to "9". * Formatting * Update keyboards/jones/v1/rules.mk * Add license header. https://github.com/qmk/qmk_firmware/pull/14405#discussion_r710752035 * Implement better way to handle keycode for encoder. Use "action_exec" instead of "tap_code16" https://github.com/qmk/qmk_firmware/pull/14405#discussion_r710752924 * Move External EEPROM config to keyboard level * Move the lest of DYNAMIC_KEYMAP config to keyboard level https://github.com/qmk/qmk_firmware/pull/14405#discussion_r711668094 * Move the rest of DYNAMIC_KEYMAP config to keyboard level https://github.com/qmk/qmk_firmware/pull/14405#discussion_r711668094 * Update keyboards/jones/v1/rules.mk * Update keyboards/jones/v1/rules.mk * Update keyboards/jones/v1/rules.mk --- keyboards/jones/readme.md | 19 +- keyboards/jones/rules.mk | 2 +- keyboards/jones/v1/config.h | 83 +++++++ keyboards/jones/v1/info.json | 17 ++ keyboards/jones/v1/keymaps/default/keymap.c | 64 ++++++ keyboards/jones/v1/keymaps/default/readme.md | 10 + keyboards/jones/v1/keymaps/via/config.h | 34 +++ keyboards/jones/v1/keymaps/via/keymap.c | 225 +++++++++++++++++++ keyboards/jones/v1/keymaps/via/readme.md | 35 +++ keyboards/jones/v1/keymaps/via/rules.mk | 2 + keyboards/jones/v1/readme.md | 23 ++ keyboards/jones/v1/rules.mk | 24 ++ keyboards/jones/v1/v1.c | 28 +++ keyboards/jones/v1/v1.h | 57 +++++ 14 files changed, 612 insertions(+), 11 deletions(-) create mode 100644 keyboards/jones/v1/config.h create mode 100644 keyboards/jones/v1/info.json create mode 100644 keyboards/jones/v1/keymaps/default/keymap.c create mode 100644 keyboards/jones/v1/keymaps/default/readme.md create mode 100644 keyboards/jones/v1/keymaps/via/config.h create mode 100644 keyboards/jones/v1/keymaps/via/keymap.c create mode 100644 keyboards/jones/v1/keymaps/via/readme.md create mode 100644 keyboards/jones/v1/keymaps/via/rules.mk create mode 100644 keyboards/jones/v1/readme.md create mode 100644 keyboards/jones/v1/rules.mk create mode 100644 keyboards/jones/v1/v1.c create mode 100644 keyboards/jones/v1/v1.h diff --git a/keyboards/jones/readme.md b/keyboards/jones/readme.md index 180c12e18a..43500d0a1d 100644 --- a/keyboards/jones/readme.md +++ b/keyboards/jones/readme.md @@ -1,23 +1,22 @@ # Jones -![Jones, ANSI style](https://github.com/jpskenn/Jones/raw/master/assets/IMG_2204.jpeg) +![Jones, "Wide" layout](https://raw.githubusercontent.com/jpskenn/Jones/master/assets/_DSF0714.jpeg) -![Jones, JP style](https://github.com/jpskenn/Jones/raw/master/assets/DSC_7189.jpeg) - -A 60% keyboard combined with Ortho-Linear and Row-staggered. It has gapless R2-R3 row. -GH60 case compatible PCB and keyplate. +A symmetrical 60% keyboard combined with Ortho-Linear and Row-staggered. It has gapless Row 2 - Row 3. +GH60 case compatible PCB and keyplate. +[More info](https://github.com/jpskenn/Jones) * Keyboard Maintainer: [jpskenn](https://github.com/jpskenn) -* Hardware Supported: Jones PCB, Keyplate -* Hardware Availability: [GitHub](https://github.com/jpskenn/Jones), [BOOTH](https://jpskenn.booth.pm) +* Hardware Supported: PCB, Key plate, Bottom plate +* Hardware Availability: [GitHub](https://github.com/jpskenn/Jones), [BOOTH](https://jpskenn.booth.pm), [Yushakobo](https://yushakobo.jp) Make example for this keyboard (after setting up your build environment): - make jones/v03_1:default_ansi - + make jones/v1:default + Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)): - make jones/v03_1:default_ansi:flash + make jones/v1:default:flash To reset the keyboard into bootloader mode, press the reset switch on the underside. diff --git a/keyboards/jones/rules.mk b/keyboards/jones/rules.mk index 6b49430357..9f0da2abec 100644 --- a/keyboards/jones/rules.mk +++ b/keyboards/jones/rules.mk @@ -1 +1 @@ -DEFAULT_FOLDER = jones/v03_1 +DEFAULT_FOLDER = jones/v1 diff --git a/keyboards/jones/v1/config.h b/keyboards/jones/v1/config.h new file mode 100644 index 0000000000..1f8acc6eb6 --- /dev/null +++ b/keyboards/jones/v1/config.h @@ -0,0 +1,83 @@ +/* +Copyright 2021 Takeshi Nishio + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xB9DD +#define PRODUCT_ID 0x175A +#define DEVICE_VER 0x0100 +#define MANUFACTURER jpskenn +#define PRODUCT Jones + +/* key matrix size */ +// Same number for Round-Robin matrix. +#define MATRIX_ROWS 10 +#define MATRIX_COLS 10 + +// Same pins for Round-Robin matrix. +#define MATRIX_ROW_PINS { B3, B2, E6, D6, D4, B0, B1, B7, B4, D7 } +#define MATRIX_COL_PINS { B3, B2, E6, D6, D4, B0, B1, B7, B4, D7 } + +#define DIODE_DIRECTION COL2ROW + +/* Rotary Encoder */ +#define ENCODERS_PAD_A { F5, D2 } +#define ENCODERS_PAD_B { F4, D3 } +#define ENCODER_RESOLUTION 4 //the default & suggested is 4 + +/* Audio */ +#ifdef AUDIO_ENABLE + #define AUDIO_PIN C6 + #define AUDIO_CLICKY + #define MUSIC_MAP +#endif + +/* RGBLIGHT */ +#define RGB_DI_PIN F1 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 4 // Left(2) + Right(2) + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + /*== Lighting Layers ==*/ + #define RGBLIGHT_LAYERS + #define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF // Overriding RGB Lighting on/off status +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION + +/* Bootmagic Lite trigger key. Left-Top of the layout. */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 9 + +/* External EEPROM */ +// Use 24LC64 EEPROM +#define EEPROM_I2C_24LC64 +// Set MAX_ADDR to specify actual EEPROM size. +// If it's not set, EEPROM size will be set ATmega32u4's 1023. +#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191 +// How many layers to use with VIA / Remap. +#define DYNAMIC_KEYMAP_LAYER_COUNT 6 // default:4 diff --git a/keyboards/jones/v1/info.json b/keyboards/jones/v1/info.json new file mode 100644 index 0000000000..6aba4fd74b --- /dev/null +++ b/keyboards/jones/v1/info.json @@ -0,0 +1,17 @@ +{ + "keyboard_name": "Jones", + "url": "https://github.com/jpskenn/Jones", + "maintainer": "jpskenn", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":2.5, "y":0}, {"x":3.5, "y":0}, {"x":4.5, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.5, "y":0}, {"x":10.5, "y":0}, {"x":11.5, "y":0}, {"x":12.5, "y":0}, {"x":13.5, "y":0}, {"x":14.5, "y":0}, + {"x":0.5, "y":1, "w":1.5}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1, "w":1.5}, + {"x":0.5, "y":2, "w":1.5}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2, "w":1.5}, + {"x":0.5, "y":3}, {"x":1.5, "y":3}, {"x":2.5, "y":3}, {"x":3.5, "y":3}, {"x":4.5, "y":3}, {"x":5.5, "y":3}, {"x":6.5, "y":3}, {"x":7.5, "y":3}, {"x":8.5, "y":3}, {"x":9.5, "y":3}, {"x":10.5, "y":3}, {"x":11.5, "y":3}, {"x":12.5, "y":3}, {"x":13.5, "y":3}, {"x":14.5, "y":3}, + {"x":0.5, "y":4}, {"x":1.5, "y":4}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":1.25}, {"x":5, "y":4, "w":1.5}, {"x":6.5, "y":4}, {"x":7.5, "y":4}, {"x":8.5, "y":4}, {"x":9.5, "y":4, "w":1.5}, {"x":11, "y":4, "w":1.25}, {"x":12.25, "y":4, "w":1.25}, {"x":13.5, "y":4}, {"x":14.5, "y":4}, + {"x":0, "y":5}, {"x":1, "y":5}, {"x":14, "y":5}, {"x":15, "y":5} + ] + } + } +} diff --git a/keyboards/jones/v1/keymaps/default/keymap.c b/keyboards/jones/v1/keymaps/default/keymap.c new file mode 100644 index 0000000000..d1f952de66 --- /dev/null +++ b/keyboards/jones/v1/keymaps/default/keymap.c @@ -0,0 +1,64 @@ +/* Copyright 2021 Takeshi Nishio + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_number { + _BASE = 0, + _LOWER, + _RAISE, + _ADJUST, +}; + +// Key Macro +#define SP_LOW LT(_LOWER, KC_SPC) +#define SP_RAI LT(_RAISE, KC_SPC) +#define SP_ADJ LT(_ADJUST, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_GRV, KC_BSLS, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_LBRC, KC_RBRC, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_SCLN, KC_QUOT, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_ENT, + KC_LSFT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LEFT, KC_RGHT, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH, + KC_MUTE, KC_LANG2, KC_LGUI, KC_LALT, SP_LOW, SP_RAI, KC_BSPC, SP_RAI,KC_RALT, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, + KC_VOLD, KC_VOLU, KC_VOLD, KC_VOLU + ), + [_LOWER] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_ESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, KC_TILD, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, _______, _______, _______, _______, _______, _______, SP_ADJ,_______, _______, _______, _______, _______, + _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_QUOT, + _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_F11, KC_F12, + _______, _______, _______, _______, SP_ADJ, _______, _______, _______,_______, _______, _______, KC_DOWN, KC_UP, + _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT( + _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, RGB_RMOD, _______, + _______, AU_TOG, CK_TOGG, MU_TOG, MU_MOD, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, RGB_MOD, _______, + KC_CAPS, KC_CAPS, CK_RST, CK_DOWN, CK_UP, MUV_DE, MUV_IN, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, + _______, _______, _______, _______ + ) +}; diff --git a/keyboards/jones/v1/keymaps/default/readme.md b/keyboards/jones/v1/keymaps/default/readme.md new file mode 100644 index 0000000000..453d9e858c --- /dev/null +++ b/keyboards/jones/v1/keymaps/default/readme.md @@ -0,0 +1,10 @@ +# Defalut keymap for Jones + +Simple keymap. + +## Layers + +- Base +- Lower +- Raise +- Adjust diff --git a/keyboards/jones/v1/keymaps/via/config.h b/keyboards/jones/v1/keymaps/via/config.h new file mode 100644 index 0000000000..5d24e1f91a --- /dev/null +++ b/keyboards/jones/v1/keymaps/via/config.h @@ -0,0 +1,34 @@ +/* +Copyright 2021 Takeshi Nishio + +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 . +*/ + +#pragma once + +//------------------------------------------------------------------------------ +// Rotary Encoder +//------------------------------------------------------------------------------ +// Encoder triggers specific key matrix position, +// when turn knob clockwise or counterclockwise. +// This is handy to assign key codes by VIA. + +// Number of endoder +#define ENCODERS 2 + +// Mappings of encoder rotation to key position in key matrix. +// First encoder, Left side : k85, k86 +// Second encoder, Right side : k95, k96 +#define ENCODERS_CW_KEY { { 6, 8 }, { 6, 9 } } +#define ENCODERS_CCW_KEY { { 5, 8 }, { 5, 9 } } diff --git a/keyboards/jones/v1/keymaps/via/keymap.c b/keyboards/jones/v1/keymaps/via/keymap.c new file mode 100644 index 0000000000..7cd1434bbc --- /dev/null +++ b/keyboards/jones/v1/keymaps/via/keymap.c @@ -0,0 +1,225 @@ +/* Copyright 2021 Takeshi Nishio + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "keymap_jp.h" + +// Defines names for use in layer keycodes and the keymap +enum layer_number { + _BASE1 = 0, + _BASE2, + _BASE3, + _LOWER, + _RAISE, + _ADJUST, +}; + +// Key Macro +#define SP_LOW LT(_LOWER, KC_SPC) +#define SP_RAI LT(_RAISE, KC_SPC) +#define SP_ADJ LT(_ADJUST, KC_SPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE1] = LAYOUT( + KC_ESC, JP_1, JP_2, JP_3, JP_4, JP_5, JP_CIRC, JP_YEN, JP_6, JP_7, JP_8, JP_9, JP_0, JP_MINS, KC_BSPC, + KC_TAB, JP_Q, JP_W, JP_E, JP_R, JP_T, JP_AT, JP_LBRC, JP_Y, JP_U, JP_I, JP_O, JP_P, KC_BSPC, + KC_LCTL, JP_A, JP_S, JP_D, JP_F, JP_G, JP_COLN, JP_RBRC, JP_H, JP_J, JP_K, JP_L, JP_SCLN, KC_ENT, + KC_LSFT, KC_LSFT, JP_Z, JP_X, JP_C, JP_V, JP_B, JP_SLSH, JP_BSLS, JP_N, JP_M, JP_COMM, JP_DOT, KC_DOWN, KC_UP, + KC_MUTE, KC_LGUI, KC_LALT, JP_MHEN, SP_LOW, SP_RAI, KC_BSPC, SP_RAI,SP_RAI, JP_HENK, JP_KANA, KC_LEFT, KC_RGHT, + KC_VOLD, KC_VOLU, KC_VOLD, KC_VOLU + ), + [_BASE2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSLS, KC_PAST, KC_PMNS, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PPLS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______,_______, KC_P0, KC_PDOT, _______, _______, + _______, _______, _______, _______ + ), + [_BASE3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, + _______, _______, _______, _______ + ), + [_LOWER] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + _______, JP_EXLM, JP_DQUO, JP_HASH, JP_DLR, JP_PERC, JP_TILD, JP_PIPE, JP_AMPR, JP_QUOT, JP_LPRN, JP_RPRN, JP_EQL, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, SP_ADJ, _______, SP_ADJ,SP_ADJ, _______, _______, _______, _______, + _______, _______, _______, _______ + ), + [_RAISE] = LAYOUT( + KC_GRV, 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_ESC, JP_1, JP_2, JP_3, JP_4, JP_5, JP_CIRC, JP_YEN, JP_6, JP_7, JP_8, JP_9, JP_0, KC_DEL, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, + _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, + _______, _______, _______, _______, SP_ADJ, _______, _______, _______,_______, _______, _______, KC_DOWN, KC_UP, + _______, _______, _______, _______ + ), + [_ADJUST] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + _______, DF(_BASE1),DF(_BASE2),DF(_BASE3),_______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, RGB_RMOD, _______, + _______, AU_TOG, CK_TOGG, MU_TOG, MU_MOD, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, RGB_MOD, _______, + KC_CAPS, KC_CAPS, CK_RST, CK_DOWN, CK_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, + _______, _______, _______, _______ + ), +}; + + +//------------------------------------------------------------------------------ +// RGB Light settings +//------------------------------------------------------------------------------ +#ifdef RGBLIGHT_LAYERS + +// Indicator LED settings +#define JONES_LED_INDICATOR_INDEX 0 // where to start indicator +#define JONES_LED_INDICATOR_COUNT 4 // how many leds used for indicator +#define JONES_LED_INDICATOR_CHANGE_COUNT 1 // how meny leds to change for temporally layer +#define JONES_LED_DIMMER_LEVEL 200 // brightness dimmer + +// for Default layer (= Base layer) +const rgblight_segment_t PROGMEM my_base1_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_COUNT, HSV_WHITE - JONES_LED_DIMMER_LEVEL} +); + +const rgblight_segment_t PROGMEM my_base2_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_COUNT, HSV_BLUE - JONES_LED_DIMMER_LEVEL} +); + +const rgblight_segment_t PROGMEM my_base3_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_COUNT, HSV_YELLOW - JONES_LED_DIMMER_LEVEL} +); + +// for temporal layer +const rgblight_segment_t PROGMEM my_caps_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX + 1 , 1, HSV_MAGENTA - JONES_LED_DIMMER_LEVEL}, + {JONES_LED_INDICATOR_INDEX + 1 + 2 , 1, HSV_MAGENTA - JONES_LED_DIMMER_LEVEL} +); + +const rgblight_segment_t PROGMEM my_lower_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_CHANGE_COUNT, HSV_GREEN - JONES_LED_DIMMER_LEVEL}, + {JONES_LED_INDICATOR_INDEX + 2, JONES_LED_INDICATOR_CHANGE_COUNT, HSV_GREEN - JONES_LED_DIMMER_LEVEL} +); + +const rgblight_segment_t PROGMEM my_raise_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_CHANGE_COUNT, HSV_CYAN - JONES_LED_DIMMER_LEVEL}, + {JONES_LED_INDICATOR_INDEX + 2, JONES_LED_INDICATOR_CHANGE_COUNT, HSV_CYAN - JONES_LED_DIMMER_LEVEL} +); + +const rgblight_segment_t PROGMEM my_adjust_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {JONES_LED_INDICATOR_INDEX , JONES_LED_INDICATOR_CHANGE_COUNT, HSV_RED - JONES_LED_DIMMER_LEVEL}, + {JONES_LED_INDICATOR_INDEX + 2, JONES_LED_INDICATOR_CHANGE_COUNT, HSV_RED - JONES_LED_DIMMER_LEVEL} +); + +// Define the array of layers. Later layers take precedence +const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_base1_layer, + my_base2_layer, + my_base3_layer, + my_caps_layer, + my_lower_layer, + my_raise_layer, + my_adjust_layer +); + +// Enabling and disabling lighting layers +layer_state_t layer_state_set_user(layer_state_t state) { + rgblight_set_layer_state(4, layer_state_cmp(state, _LOWER)); + rgblight_set_layer_state(5, layer_state_cmp(state, _RAISE)); + rgblight_set_layer_state(6, layer_state_cmp(state, _ADJUST)); + + return state; +} + +// Enabling and disabling lighting layers for default layer +layer_state_t default_layer_state_set_user(layer_state_t state) { + rgblight_set_layer_state(0, layer_state_cmp(state, _BASE1)); + rgblight_set_layer_state(1, layer_state_cmp(state, _BASE2)); + rgblight_set_layer_state(2, layer_state_cmp(state, _BASE3)); + + return state; +} + +bool led_update_user(led_t led_state) { + rgblight_set_layer_state(3, IS_HOST_LED_ON(USB_LED_CAPS_LOCK)); + + return true; +} +#endif + + +//------------------------------------------------------------------------------ +// Rotary Encoder +//------------------------------------------------------------------------------ +static uint8_t encoder_state[ENCODERS] = {0}; +static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY; +static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY; + +void encoder_action_unregister(void) { + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index]) { + keyevent_t encoder_event = (keyevent_t) { + .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index], + .pressed = false, + .time = (timer_read() | 1) + }; + encoder_state[index] = 0; + action_exec(encoder_event); + } + } +} + +void encoder_action_register(uint8_t index, bool clockwise) { + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = true, + .time = (timer_read() | 1) + }; + encoder_state[index] = (clockwise ^ 1) | (clockwise << 1); + action_exec(encoder_event); +} + +void matrix_scan_kb(void) { + encoder_action_unregister(); + matrix_scan_user(); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + return true; +}; + + +//------------------------------------------------------------------------------ +// Keyboard Initialization +//------------------------------------------------------------------------------ +void keyboard_post_init_user(void) { +debug_enable=true; +#ifdef RGB_DI_PIN + #ifdef RGBLIGHT_LAYERS + // Enable the LED layers. + rgblight_layers = my_rgb_layers; + + // prevent RGB light overrides layer indicator. + layer_state_set(default_layer_state); + #endif +#endif + +} diff --git a/keyboards/jones/v1/keymaps/via/readme.md b/keyboards/jones/v1/keymaps/via/readme.md new file mode 100644 index 0000000000..95da48228c --- /dev/null +++ b/keyboards/jones/v1/keymaps/via/readme.md @@ -0,0 +1,35 @@ +# Keymap for Jones with VIA support + +VIA supported basic keymap with external EEPROM. + +## Layout + +Japanese style "Wide" layout. + +## Layers + +- Base #1 +- Base #2 +- Base #3 +- Lower +- Raise +- Adjust + +## External EEPROM + +I2C connected external EEPROM. + +## LED lighting + +4 LEDsfor layer indicator. +2 for Left side and 2 for Right side. + +## Rotary encoder + +Supports up to 2 rotary encoders. +Left bottom and Right bottom. + +## Audio + +Supports monophonic audio. +"Music Mode" and "Audio Click" are enabled. diff --git a/keyboards/jones/v1/keymaps/via/rules.mk b/keyboards/jones/v1/keymaps/via/rules.mk new file mode 100644 index 0000000000..e1d2dc0582 --- /dev/null +++ b/keyboards/jones/v1/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +# Use VIA +VIA_ENABLE = yes diff --git a/keyboards/jones/v1/readme.md b/keyboards/jones/v1/readme.md new file mode 100644 index 0000000000..43500d0a1d --- /dev/null +++ b/keyboards/jones/v1/readme.md @@ -0,0 +1,23 @@ +# Jones + +![Jones, "Wide" layout](https://raw.githubusercontent.com/jpskenn/Jones/master/assets/_DSF0714.jpeg) + +A symmetrical 60% keyboard combined with Ortho-Linear and Row-staggered. It has gapless Row 2 - Row 3. +GH60 case compatible PCB and keyplate. +[More info](https://github.com/jpskenn/Jones) + +* Keyboard Maintainer: [jpskenn](https://github.com/jpskenn) +* Hardware Supported: PCB, Key plate, Bottom plate +* Hardware Availability: [GitHub](https://github.com/jpskenn/Jones), [BOOTH](https://jpskenn.booth.pm), [Yushakobo](https://yushakobo.jp) + +Make example for this keyboard (after setting up your build environment): + + make jones/v1:default + +Flashing example for this keyboard ([using the command line](https://docs.qmk.fm/#/newbs_flashing?id=flash-your-keyboard-from-the-command-line)): + + make jones/v1:default:flash + +To reset the keyboard into bootloader mode, press the reset switch on the underside. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/jones/v1/rules.mk b/keyboards/jones/v1/rules.mk new file mode 100644 index 0000000000..56d629cfe9 --- /dev/null +++ b/keyboards/jones/v1/rules.mk @@ -0,0 +1,24 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = yes # Audio output +ENCODER_ENABLE = yes # Rotary Encoder + +# Use I2C connected External EEPROM +EEPROM_DRIVER = i2c + +LTO_ENABLE = yes diff --git a/keyboards/jones/v1/v1.c b/keyboards/jones/v1/v1.c new file mode 100644 index 0000000000..292a1fbabe --- /dev/null +++ b/keyboards/jones/v1/v1.c @@ -0,0 +1,28 @@ +/* Copyright 2021 Takeshi Nishio + * + * 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 . + */ + +#include "v1.h" + +#if defined(AUDIO_ENABLE) && defined(MUSIC_MAP) +const uint8_t music_map[MATRIX_ROWS][MATRIX_COLS] = LAYOUT( + 0, 24, 25, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, + 0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 0, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, + 0, 0, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, + 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, + 0, 0, 0, 0 +); +#endif diff --git a/keyboards/jones/v1/v1.h b/keyboards/jones/v1/v1.h new file mode 100644 index 0000000000..e37c34accc --- /dev/null +++ b/keyboards/jones/v1/v1.h @@ -0,0 +1,57 @@ +/* Copyright 2021 Takeshi Nishio + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* +FULL 10x10 ROUND-ROBIN MATRIX for Reference + +{ KC_NO, k01, k02, k03, k04, k05, k06, k07, k08, k09 }, \ +{ k10, KC_NO, k12, k13, k14, k15, k16, k17, k18, k19 }, \ +{ k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29 }, \ +{ k30, k31, k32, KC_NO, k34, k35, k36, k37, k38, k39 }, \ +{ k40, k41, k42, k43, KC_NO, k45, k46, k47, k48, k49 }, \ +{ k50, k51, k52, k53, k54, KC_NO, k56, k57, k58, k59 }, \ +{ k60, k61, k62, k63, k64, k65, KC_NO, k67, k68, k69 }, \ +{ k70, k71, k72, k73, k74, k75, k76, KC_NO, k78, k79 }, \ +{ k80, k81, k82, k83, k84, k85, k86, k87, KC_NO, k89 }, \ +{ k90, k91, k92, k93, k94, k95, k96, k97, k98, KC_NO } \ + +*/ + +/* Keys on 6th row are used with rotary encoder. */ +#define LAYOUT( \ + k09, k59, k08, k54, k04, k50, k56, k06, k05, k52, k02, k53, k07, k51, k01, \ + k19, k69, k18, k64, k14, k60, k10, k16, k15, k62, k12, k63, k17, k61, \ + k29, k79, k28, k74, k24, k70, k20, k26, k25, k72, k23, k73, k27, k71, \ + k39, k89, k38, k84, k34, k80, k30, k36, k35, k82, k32, k83, k37, k81, k31, \ + k49, k98, k48, k94, k90, k46, k45, k92, k42, k93, k47, k91, k41, \ + k85, k86, k95, k96 \ +) \ +{ \ + { KC_NO, k01, k02, KC_NO, k04, k05, k06, k07, k08, k09, }, \ + { k10, KC_NO, k12, KC_NO, k14, k15, k16, k17, k18, k19, }, \ + { k20, KC_NO, KC_NO, k23, k24, k25, k26, k27, k28, k29, }, \ + { k30, k31, k32, KC_NO, k34, k35, k36, k37, k38, k39, }, \ + { KC_NO, k41, k42, KC_NO, KC_NO, k45, k46, k47, k48, k49, }, \ + { k50, k51, k52, k53, k54, KC_NO, k56, KC_NO, KC_NO, k59, }, \ + { k60, k61, k62, k63, k64, KC_NO, KC_NO, KC_NO, KC_NO, k69, }, \ + { k70, k71, k72, k73, k74, KC_NO, KC_NO, KC_NO, KC_NO, k79, }, \ + { k80, k81, k82, k83, k84, k85, k86, KC_NO, KC_NO, k89, }, \ + { k90, k91, k92, k93, k94, k95, k96, KC_NO, k98, KC_NO } \ +} From dc8db6551d2d11534920d1d723d06a99c1b93071 Mon Sep 17 00:00:00 2001 From: Hao Xiang Liew <62730710+haoxiangliew@users.noreply.github.com> Date: Thu, 10 Mar 2022 02:35:54 -0500 Subject: [PATCH 078/699] [KEYBOARD] keyboardio/atreus: VIA support (#16604) --- .../keyboardio/atreus/keymaps/via/keymap.c | 53 +++++++++++++++++++ .../keyboardio/atreus/keymaps/via/rules.mk | 2 + 2 files changed, 55 insertions(+) create mode 100644 keyboards/keyboardio/atreus/keymaps/via/keymap.c create mode 100644 keyboards/keyboardio/atreus/keymaps/via/rules.mk diff --git a/keyboards/keyboardio/atreus/keymaps/via/keymap.c b/keyboards/keyboardio/atreus/keymaps/via/keymap.c new file mode 100644 index 0000000000..c649ec1c65 --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/via/keymap.c @@ -0,0 +1,53 @@ +// Copyright (C) 2022, Hao Xiang Liew + +// 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 3 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 . + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( /* Qwerty */ + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P , + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN , + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_BSLS, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH , + KC_ESC, KC_TAB, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_MINS, KC_QUOT, KC_ENT ), + + /* + * ! @ up { } || pgup 7 8 9 * + * # left down right $ || pgdn 4 5 6 + + * [ ] ( ) & || ` 1 2 3 \ + * lower insert super shift bksp ctrl || alt space fn . 0 = + */ + [1] = LAYOUT( /* [> RAISE <] */ + KC_EXLM, KC_AT, KC_UP, KC_DLR, KC_PERC, KC_PGUP, KC_7, KC_8, KC_9, KC_BSPC, + KC_LPRN, KC_LEFT, KC_DOWN, KC_RGHT, KC_RPRN, KC_PGDN, KC_4, KC_5, KC_6, KC_BSLS, + KC_LBRC, KC_RBRC, KC_HASH, KC_LCBR, KC_RCBR, KC_CIRC, KC_AMPR,KC_ASTR, KC_1, KC_2, KC_3, KC_PLUS, + TG(2), KC_INS, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT,KC_SPC, KC_TRNS, KC_DOT, KC_0, KC_EQL ), + /* + * insert home up end pgup || up F7 F8 F9 F10 + * del left down right pgdn || down F4 F5 F6 F11 + * volup reset || F1 F2 F3 F12 + * voldn super shift bksp ctrl || alt space L0 prtsc scroll pause + */ + [2] = LAYOUT( /* [> LOWER <] */ + KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , + KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , + KC_NO, KC_VOLU, KC_NO, KC_NO, RESET, KC_TRNS, KC_TRNS, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , + TO(0), KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(0), KC_PSCR, KC_SLCK, KC_PAUS ), + + [3] = LAYOUT( /* blank */ + 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 , + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) +}; diff --git a/keyboards/keyboardio/atreus/keymaps/via/rules.mk b/keyboards/keyboardio/atreus/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/keyboardio/atreus/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From bd70f5261cbb7fd4700bf9876da94c9661dadf63 Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 10 Mar 2022 23:18:07 +1100 Subject: [PATCH 079/699] Remove `matrix_key_count()` (#16603) * Remove `matrix_key_count()` * Remove `matrix_bitpop()` --- keyboards/40percentclub/ut47/matrix.c | 9 --------- keyboards/amj96/matrix.c | 9 --------- keyboards/bpiphany/hid_liber/matrix.c | 12 ------------ keyboards/bpiphany/kitten_paw/matrix.c | 8 -------- keyboards/bpiphany/pegasushoof/2013/matrix.c | 9 --------- keyboards/bpiphany/pegasushoof/2015/matrix.c | 9 --------- keyboards/bpiphany/tiger_lily/matrix.c | 7 ------- keyboards/bpiphany/unloved_bastard/matrix.c | 7 ------- keyboards/converter/ibm_terminal/matrix.c | 1 - keyboards/converter/palm_usb/matrix.c | 9 --------- keyboards/converter/sun_usb/matrix.c | 9 --------- keyboards/converter/usb_usb/custom_matrix.cpp | 12 ------------ keyboards/dc01/arrow/matrix.c | 16 +--------------- keyboards/dc01/left/matrix.c | 14 -------------- keyboards/dc01/numpad/matrix.c | 16 +--------------- keyboards/dc01/right/matrix.c | 16 +--------------- keyboards/dichotomy/matrix.c | 12 ------------ keyboards/duck/jetfire/matrix.c | 11 +---------- keyboards/gboards/ergotaco/matrix.c | 9 --------- keyboards/gboards/georgi/matrix.c | 9 --------- keyboards/gboards/gergo/matrix.c | 8 -------- keyboards/gboards/gergoplex/matrix.c | 7 ------- keyboards/handwired/dactyl/matrix.c | 9 --------- keyboards/handwired/frenchdev/matrix.c | 9 --------- keyboards/handwired/owlet60/matrix.c | 12 ------------ keyboards/handwired/promethium/matrix.c | 13 ------------- keyboards/handwired/pterodactyl/matrix.c | 9 --------- keyboards/helix/rev2/custom/matrix.c | 9 --------- keyboards/hhkb/ansi/matrix.c | 8 -------- keyboards/hhkb/jp/matrix.c | 8 -------- keyboards/honeycomb/matrix.c | 12 ------------ keyboards/hotdox/matrix.c | 9 --------- keyboards/kakunpc/angel64/alpha/matrix.c | 12 ------------ keyboards/kakunpc/angel64/rev1/matrix.c | 12 ------------ keyboards/kakunpc/thedogkeyboard/matrix.c | 12 ------------ keyboards/kinesis/alvicstep/matrix.c | 9 --------- keyboards/kmac/matrix.c | 11 ----------- keyboards/kmini/matrix.c | 9 --------- keyboards/ktec/ergodone/matrix.c | 9 --------- keyboards/moon/matrix.c | 11 ----------- keyboards/nek_type_a/matrix.c | 14 -------------- keyboards/redscarf_iiplus/verb/matrix.c | 13 ------------- keyboards/redscarf_iiplus/verc/matrix.c | 13 ------------- keyboards/redscarf_iiplus/verd/matrix.c | 13 ------------- keyboards/sirius/unigo66/custom_matrix.cpp | 12 ------------ keyboards/sixkeyboard/matrix.c | 10 ---------- keyboards/sx60/matrix.c | 12 ------------ keyboards/woodkeys/meira/matrix.c | 13 ------------- keyboards/ymdk/sp64/matrix.c | 9 --------- keyboards/yosino58/rev1/matrix.c | 9 --------- quantum/matrix_common.c | 11 ----------- 51 files changed, 4 insertions(+), 527 deletions(-) diff --git a/keyboards/40percentclub/ut47/matrix.c b/keyboards/40percentclub/ut47/matrix.c index 89537592c5..97922e2dbe 100644 --- a/keyboards/40percentclub/ut47/matrix.c +++ b/keyboards/40percentclub/ut47/matrix.c @@ -118,15 +118,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - /* Column pin configuration * col: 0 1 2 3 4 5 6 7 8 9 10 11 * pin: D7 E6 B4 B5 B6 B2 B3 B1 F7 F6 F5 F4 diff --git a/keyboards/amj96/matrix.c b/keyboards/amj96/matrix.c index ffd66d120f..2999c6241b 100644 --- a/keyboards/amj96/matrix.c +++ b/keyboards/amj96/matrix.c @@ -130,15 +130,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - /* Column pin configuration * col: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 * pin: F7 F6 F5 F4 F1 F0 E6 D7 D6 D5 D1 D0 B7 B6 B0 C7 diff --git a/keyboards/bpiphany/hid_liber/matrix.c b/keyboards/bpiphany/hid_liber/matrix.c index da73c616d7..90e8a327b5 100755 --- a/keyboards/bpiphany/hid_liber/matrix.c +++ b/keyboards/bpiphany/hid_liber/matrix.c @@ -245,15 +245,3 @@ void matrix_print(void) print("\n"); } } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - for (uint8_t j = 0; j < MATRIX_COLS; j++) { - if (matrix_is_on(i, j)) - count++; - } - } - return count; -} diff --git a/keyboards/bpiphany/kitten_paw/matrix.c b/keyboards/bpiphany/kitten_paw/matrix.c index 56114858f1..6548040c7c 100644 --- a/keyboards/bpiphany/kitten_paw/matrix.c +++ b/keyboards/bpiphany/kitten_paw/matrix.c @@ -132,14 +132,6 @@ void matrix_print(void) { } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop32(matrix[i]); - } - return count; -} - static uint8_t read_rows(void) { return (PINC&(1<<7) ? 0 : (1<<0)) | diff --git a/keyboards/bpiphany/pegasushoof/2013/matrix.c b/keyboards/bpiphany/pegasushoof/2013/matrix.c index 09244982d9..a55cba7afd 100644 --- a/keyboards/bpiphany/pegasushoof/2013/matrix.c +++ b/keyboards/bpiphany/pegasushoof/2013/matrix.c @@ -132,15 +132,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static matrix_row_t read_cols(void) { return diff --git a/keyboards/bpiphany/pegasushoof/2015/matrix.c b/keyboards/bpiphany/pegasushoof/2015/matrix.c index b05869feda..2b142f9fc8 100644 --- a/keyboards/bpiphany/pegasushoof/2015/matrix.c +++ b/keyboards/bpiphany/pegasushoof/2015/matrix.c @@ -111,15 +111,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < matrix_rows(); i++) { - count += bitpop16(matrix_get_row(i)); - } - return count; -} - static matrix_row_t read_cols(void) { return diff --git a/keyboards/bpiphany/tiger_lily/matrix.c b/keyboards/bpiphany/tiger_lily/matrix.c index 47a92268c8..abf6f3f42b 100644 --- a/keyboards/bpiphany/tiger_lily/matrix.c +++ b/keyboards/bpiphany/tiger_lily/matrix.c @@ -146,10 +146,3 @@ void matrix_print(void) { } #endif } - -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t row = 0; row < MATRIX_ROWS; row++) - count += bitpop32(matrix[row]); - return count; -} diff --git a/keyboards/bpiphany/unloved_bastard/matrix.c b/keyboards/bpiphany/unloved_bastard/matrix.c index 328d9015c2..98cdf22f48 100644 --- a/keyboards/bpiphany/unloved_bastard/matrix.c +++ b/keyboards/bpiphany/unloved_bastard/matrix.c @@ -147,10 +147,3 @@ void matrix_print(void) { } #endif } - -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t row = 0; row < MATRIX_ROWS; row++) - count += bitpop32(matrix[row]); - return count; -} diff --git a/keyboards/converter/ibm_terminal/matrix.c b/keyboards/converter/ibm_terminal/matrix.c index caa0a38051..3d6736a0cc 100644 --- a/keyboards/converter/ibm_terminal/matrix.c +++ b/keyboards/converter/ibm_terminal/matrix.c @@ -27,7 +27,6 @@ along with this program. If not, see . #define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) #define print_matrix_header() print("\nr/c 01234567\n") -#define matrix_bitpop(i) bitpop(matrix[i]) #define ROW_SHIFTER ((uint8_t)1) diff --git a/keyboards/converter/palm_usb/matrix.c b/keyboards/converter/palm_usb/matrix.c index 010fd56c79..28d4b87d83 100644 --- a/keyboards/converter/palm_usb/matrix.c +++ b/keyboards/converter/palm_usb/matrix.c @@ -379,12 +379,3 @@ void matrix_print(void) print("\n"); } } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop(matrix[i]); - } - return count; -} diff --git a/keyboards/converter/sun_usb/matrix.c b/keyboards/converter/sun_usb/matrix.c index e28d165d52..35ec391024 100644 --- a/keyboards/converter/sun_usb/matrix.c +++ b/keyboards/converter/sun_usb/matrix.c @@ -179,12 +179,3 @@ void matrix_print(void) print("\n"); } } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop(matrix[i]); - } - return count; -} diff --git a/keyboards/converter/usb_usb/custom_matrix.cpp b/keyboards/converter/usb_usb/custom_matrix.cpp index 265fb2c68d..00b5bc5053 100644 --- a/keyboards/converter/usb_usb/custom_matrix.cpp +++ b/keyboards/converter/usb_usb/custom_matrix.cpp @@ -225,18 +225,6 @@ extern "C" return row_bits; } - uint8_t matrix_key_count(void) { - uint8_t count = 0; - - count += bitpop(local_keyboard_report.mods); - for (uint8_t i = 0; i < KEYBOARD_REPORT_KEYS; i++) { - if (IS_ANY(local_keyboard_report.keys[i])) { - count++; - } - } - return count; - } - void matrix_print(void) { print("\nr/c 0123456789ABCDEF\n"); for (uint8_t row = 0; row < matrix_rows(); row++) { diff --git a/keyboards/dc01/arrow/matrix.c b/keyboards/dc01/arrow/matrix.c index b69e147914..e7c3bec2b5 100644 --- a/keyboards/dc01/arrow/matrix.c +++ b/keyboards/dc01/arrow/matrix.c @@ -48,17 +48,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -234,17 +231,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) @@ -388,4 +374,4 @@ static void unselect_cols(void) void matrix_setup(void){ i2c_slave_init(SLAVE_I2C_ADDRESS); //setup address of slave i2c sei(); //enable interupts -} \ No newline at end of file +} diff --git a/keyboards/dc01/left/matrix.c b/keyboards/dc01/left/matrix.c index 3eeb2586bc..8b8f89a081 100644 --- a/keyboards/dc01/left/matrix.c +++ b/keyboards/dc01/left/matrix.c @@ -52,17 +52,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -259,17 +256,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) diff --git a/keyboards/dc01/numpad/matrix.c b/keyboards/dc01/numpad/matrix.c index e8e2a1b14a..1dc90a6b84 100644 --- a/keyboards/dc01/numpad/matrix.c +++ b/keyboards/dc01/numpad/matrix.c @@ -48,17 +48,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -234,17 +231,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) @@ -388,4 +374,4 @@ static void unselect_cols(void) void matrix_setup(void){ i2c_slave_init(SLAVE_I2C_ADDRESS); //setup address of slave i2c sei(); //enable interupts -} \ No newline at end of file +} diff --git a/keyboards/dc01/right/matrix.c b/keyboards/dc01/right/matrix.c index 2509bd7d4c..f21dec1d2b 100644 --- a/keyboards/dc01/right/matrix.c +++ b/keyboards/dc01/right/matrix.c @@ -49,17 +49,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -235,17 +232,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) @@ -389,4 +375,4 @@ static void unselect_cols(void) void matrix_setup(void){ i2c_slave_init(SLAVE_I2C_ADDRESS); //setup address of slave i2c sei(); //enable interupts -} \ No newline at end of file +} diff --git a/keyboards/dichotomy/matrix.c b/keyboards/dichotomy/matrix.c index 806b66d498..dc90e7501e 100755 --- a/keyboards/dichotomy/matrix.c +++ b/keyboards/dichotomy/matrix.c @@ -34,17 +34,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -215,12 +212,3 @@ void matrix_print(void) print("\n"); } } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} diff --git a/keyboards/duck/jetfire/matrix.c b/keyboards/duck/jetfire/matrix.c index 729fa6dd14..2b64885842 100644 --- a/keyboards/duck/jetfire/matrix.c +++ b/keyboards/duck/jetfire/matrix.c @@ -136,15 +136,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop32(matrix[i]); - } - return count; -} - static void init_ports(void) { // Rows are inputs (inputs are 0) @@ -268,4 +259,4 @@ static void select_col(uint8_t col) PORTB |= 0b00000001; break; } -} \ No newline at end of file +} diff --git a/keyboards/gboards/ergotaco/matrix.c b/keyboards/gboards/ergotaco/matrix.c index 16300a7e4f..7e5d675218 100644 --- a/keyboards/gboards/ergotaco/matrix.c +++ b/keyboards/gboards/ergotaco/matrix.c @@ -221,15 +221,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - // Remember this means ROWS static void init_cols(void) { diff --git a/keyboards/gboards/georgi/matrix.c b/keyboards/gboards/georgi/matrix.c index 7d635ad8d7..24bb2d7acf 100644 --- a/keyboards/gboards/georgi/matrix.c +++ b/keyboards/gboards/georgi/matrix.c @@ -242,15 +242,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - // Remember this means ROWS static void init_cols(void) { diff --git a/keyboards/gboards/gergo/matrix.c b/keyboards/gboards/gergo/matrix.c index 443e97132b..3898246e30 100644 --- a/keyboards/gboards/gergo/matrix.c +++ b/keyboards/gboards/gergo/matrix.c @@ -286,14 +286,6 @@ void matrix_print(void) { } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - // Remember this means ROWS static void init_cols(void) { // init on mcp23018 diff --git a/keyboards/gboards/gergoplex/matrix.c b/keyboards/gboards/gergoplex/matrix.c index a075b85725..d5b046fe40 100644 --- a/keyboards/gboards/gergoplex/matrix.c +++ b/keyboards/gboards/gergoplex/matrix.c @@ -164,13 +164,6 @@ void matrix_print(void) { print("\n"); } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} // Remember this means ROWS static void init_cols(void) { diff --git a/keyboards/handwired/dactyl/matrix.c b/keyboards/handwired/dactyl/matrix.c index a70e8c5aca..5869b43c1b 100644 --- a/keyboards/handwired/dactyl/matrix.c +++ b/keyboards/handwired/dactyl/matrix.c @@ -307,15 +307,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) { diff --git a/keyboards/handwired/frenchdev/matrix.c b/keyboards/handwired/frenchdev/matrix.c index a043f78538..6dec9c6a74 100644 --- a/keyboards/handwired/frenchdev/matrix.c +++ b/keyboards/handwired/frenchdev/matrix.c @@ -196,15 +196,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - /* Column pin configuration * * Teensy diff --git a/keyboards/handwired/owlet60/matrix.c b/keyboards/handwired/owlet60/matrix.c index 211273d1fa..3b68c08b45 100644 --- a/keyboards/handwired/owlet60/matrix.c +++ b/keyboards/handwired/owlet60/matrix.c @@ -33,17 +33,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -130,15 +127,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - // uses standard row code static void select_row(uint8_t row) { diff --git a/keyboards/handwired/promethium/matrix.c b/keyboards/handwired/promethium/matrix.c index 90dbce14a9..3b03ab8893 100644 --- a/keyboards/handwired/promethium/matrix.c +++ b/keyboards/handwired/promethium/matrix.c @@ -43,17 +43,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -178,16 +175,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - #define ROW_MASK 0b11100000 static const uint8_t row_bit[MATRIX_ROWS] = { diff --git a/keyboards/handwired/pterodactyl/matrix.c b/keyboards/handwired/pterodactyl/matrix.c index d0f74802a0..9d81a64bb4 100644 --- a/keyboards/handwired/pterodactyl/matrix.c +++ b/keyboards/handwired/pterodactyl/matrix.c @@ -308,15 +308,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) { diff --git a/keyboards/helix/rev2/custom/matrix.c b/keyboards/helix/rev2/custom/matrix.c index 699c15358b..5221d7fd4e 100644 --- a/keyboards/helix/rev2/custom/matrix.c +++ b/keyboards/helix/rev2/custom/matrix.c @@ -309,15 +309,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static void init_cols(void) { for(int x = 0; x < MATRIX_COLS; x++) { diff --git a/keyboards/hhkb/ansi/matrix.c b/keyboards/hhkb/ansi/matrix.c index 5dde74cce9..8b0e4606bc 100644 --- a/keyboards/hhkb/ansi/matrix.c +++ b/keyboards/hhkb/ansi/matrix.c @@ -189,14 +189,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) { - count += bitpop16(matrix_get_row(r)); - } - return count; -} - void matrix_power_up(void) { KEY_POWER_ON(); } diff --git a/keyboards/hhkb/jp/matrix.c b/keyboards/hhkb/jp/matrix.c index 81db77fca7..9d04d62849 100644 --- a/keyboards/hhkb/jp/matrix.c +++ b/keyboards/hhkb/jp/matrix.c @@ -190,14 +190,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (int8_t r = MATRIX_ROWS - 1; r >= 0; --r) { - count += bitpop16(matrix_get_row(r)); - } - return count; -} - void matrix_power_up(void) { KEY_POWER_ON(); } diff --git a/keyboards/honeycomb/matrix.c b/keyboards/honeycomb/matrix.c index fe1e4ce8ff..9a87ca9a2e 100755 --- a/keyboards/honeycomb/matrix.c +++ b/keyboards/honeycomb/matrix.c @@ -35,17 +35,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -191,12 +188,3 @@ void matrix_print(void) print("\n"); } } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} diff --git a/keyboards/hotdox/matrix.c b/keyboards/hotdox/matrix.c index 5d0b0f6dd5..0da5a3e3a2 100644 --- a/keyboards/hotdox/matrix.c +++ b/keyboards/hotdox/matrix.c @@ -160,15 +160,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static void init_cols(void) { // Pro Micro diff --git a/keyboards/kakunpc/angel64/alpha/matrix.c b/keyboards/kakunpc/angel64/alpha/matrix.c index 2851859cf2..8ca9841e48 100644 --- a/keyboards/kakunpc/angel64/alpha/matrix.c +++ b/keyboards/kakunpc/angel64/alpha/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -119,15 +116,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - static void select_row(uint8_t row) { setPinOutput(row_pins[row]); diff --git a/keyboards/kakunpc/angel64/rev1/matrix.c b/keyboards/kakunpc/angel64/rev1/matrix.c index 2851859cf2..8ca9841e48 100644 --- a/keyboards/kakunpc/angel64/rev1/matrix.c +++ b/keyboards/kakunpc/angel64/rev1/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -119,15 +116,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - static void select_row(uint8_t row) { setPinOutput(row_pins[row]); diff --git a/keyboards/kakunpc/thedogkeyboard/matrix.c b/keyboards/kakunpc/thedogkeyboard/matrix.c index 2851859cf2..8ca9841e48 100644 --- a/keyboards/kakunpc/thedogkeyboard/matrix.c +++ b/keyboards/kakunpc/thedogkeyboard/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -119,15 +116,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - static void select_row(uint8_t row) { setPinOutput(row_pins[row]); diff --git a/keyboards/kinesis/alvicstep/matrix.c b/keyboards/kinesis/alvicstep/matrix.c index 9c05374510..5636418849 100644 --- a/keyboards/kinesis/alvicstep/matrix.c +++ b/keyboards/kinesis/alvicstep/matrix.c @@ -158,15 +158,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static matrix_row_t read_row(uint8_t row) { _delay_us(30); // without this wait read unstable value. diff --git a/keyboards/kmac/matrix.c b/keyboards/kmac/matrix.c index 3d5a3081d1..2052a9be71 100644 --- a/keyboards/kmac/matrix.c +++ b/keyboards/kmac/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -79,14 +76,6 @@ void matrix_print(void) { } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - /* Columns 0 - 15 * These columns uses two 74HC237D 3 to 8 bit demultiplexers. * col / pin: PB6 PC6 PC7 PF1 PF0 diff --git a/keyboards/kmini/matrix.c b/keyboards/kmini/matrix.c index eee19054ea..f3e60eb869 100755 --- a/keyboards/kmini/matrix.c +++ b/keyboards/kmini/matrix.c @@ -132,15 +132,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop32(matrix[i]); - } - return count; -} - static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { bool matrix_changed = false; diff --git a/keyboards/ktec/ergodone/matrix.c b/keyboards/ktec/ergodone/matrix.c index 3973ff3484..529974532a 100644 --- a/keyboards/ktec/ergodone/matrix.c +++ b/keyboards/ktec/ergodone/matrix.c @@ -158,15 +158,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - /* Column pin configuration * * Pro Micro: 6 5 4 3 2 1 0 diff --git a/keyboards/moon/matrix.c b/keyboards/moon/matrix.c index 0615b60ad3..977338b2f6 100644 --- a/keyboards/moon/matrix.c +++ b/keyboards/moon/matrix.c @@ -76,17 +76,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -125,14 +122,6 @@ void matrix_print(void) { } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - static void init_i2c(void) { pca9555_init(IC1); pca9555_init(IC2); diff --git a/keyboards/nek_type_a/matrix.c b/keyboards/nek_type_a/matrix.c index b396be9911..2989af5108 100644 --- a/keyboards/nek_type_a/matrix.c +++ b/keyboards/nek_type_a/matrix.c @@ -50,17 +50,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -234,17 +231,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - - #if (DIODE_DIRECTION == COL2ROW) static void init_cols(void) diff --git a/keyboards/redscarf_iiplus/verb/matrix.c b/keyboards/redscarf_iiplus/verb/matrix.c index 88ecb586b3..930d246434 100755 --- a/keyboards/redscarf_iiplus/verb/matrix.c +++ b/keyboards/redscarf_iiplus/verb/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -123,16 +120,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - #ifdef DIRECT_PINS static void init_pins(void) { diff --git a/keyboards/redscarf_iiplus/verc/matrix.c b/keyboards/redscarf_iiplus/verc/matrix.c index 88ecb586b3..930d246434 100755 --- a/keyboards/redscarf_iiplus/verc/matrix.c +++ b/keyboards/redscarf_iiplus/verc/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -123,16 +120,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - #ifdef DIRECT_PINS static void init_pins(void) { diff --git a/keyboards/redscarf_iiplus/verd/matrix.c b/keyboards/redscarf_iiplus/verd/matrix.c index d9dbb3c0a3..b703932229 100644 --- a/keyboards/redscarf_iiplus/verd/matrix.c +++ b/keyboards/redscarf_iiplus/verd/matrix.c @@ -27,17 +27,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -123,16 +120,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - - #ifdef DIRECT_PINS static void init_pins(void) { diff --git a/keyboards/sirius/unigo66/custom_matrix.cpp b/keyboards/sirius/unigo66/custom_matrix.cpp index 955ce189a8..72e120400f 100644 --- a/keyboards/sirius/unigo66/custom_matrix.cpp +++ b/keyboards/sirius/unigo66/custom_matrix.cpp @@ -205,18 +205,6 @@ extern "C" return row_bits; } - uint8_t matrix_key_count(void) { - uint8_t count = 0; - - count += bitpop(local_keyboard_report.mods); - for (uint8_t i = 0; i < KEYBOARD_REPORT_KEYS; i++) { - if (IS_ANY(local_keyboard_report.keys[i])) { - count++; - } - } - return count; - } - void matrix_print(void) { print("\nr/c 0123456789ABCDEF\n"); for (uint8_t row = 0; row < matrix_rows(); row++) { diff --git a/keyboards/sixkeyboard/matrix.c b/keyboards/sixkeyboard/matrix.c index a6b28f3a12..36ae05fb42 100644 --- a/keyboards/sixkeyboard/matrix.c +++ b/keyboards/sixkeyboard/matrix.c @@ -129,13 +129,3 @@ matrix_row_t matrix_get_row(uint8_t row) void matrix_print(void) { } - -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - diff --git a/keyboards/sx60/matrix.c b/keyboards/sx60/matrix.c index 231e1c8836..94d581f574 100644 --- a/keyboards/sx60/matrix.c +++ b/keyboards/sx60/matrix.c @@ -42,17 +42,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -201,15 +198,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - static void init_cols(void) { for(uint8_t x = 0; x < ATMEGA_COLS; x++) { diff --git a/keyboards/woodkeys/meira/matrix.c b/keyboards/woodkeys/meira/matrix.c index 8e8e9485b4..4fdc354237 100644 --- a/keyboards/woodkeys/meira/matrix.c +++ b/keyboards/woodkeys/meira/matrix.c @@ -45,17 +45,14 @@ along with this program. If not, see . #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop(matrix[i]) # define ROW_SHIFTER ((uint8_t)1) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop16(matrix[i]) # define ROW_SHIFTER ((uint16_t)1) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(i) bitpop32(matrix[i]) # define ROW_SHIFTER ((uint32_t)1) #endif @@ -183,16 +180,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - - static void init_rows(void) { for(uint8_t x = 0; x < MATRIX_ROWS; x++) { diff --git a/keyboards/ymdk/sp64/matrix.c b/keyboards/ymdk/sp64/matrix.c index 9a6e37bcdc..69276c7b3c 100644 --- a/keyboards/ymdk/sp64/matrix.c +++ b/keyboards/ymdk/sp64/matrix.c @@ -154,15 +154,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static void matrix_select_row(uint8_t row) { #ifdef RIGHT_HALF diff --git a/keyboards/yosino58/rev1/matrix.c b/keyboards/yosino58/rev1/matrix.c index e2be7113bf..802ce00cc6 100644 --- a/keyboards/yosino58/rev1/matrix.c +++ b/keyboards/yosino58/rev1/matrix.c @@ -311,15 +311,6 @@ void matrix_print(void) } } -uint8_t matrix_key_count(void) -{ - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += bitpop16(matrix[i]); - } - return count; -} - static void init_cols(void) { for(int x = 0; x < MATRIX_COLS; x++) { diff --git a/quantum/matrix_common.c b/quantum/matrix_common.c index 1497ceae71..2cf8484347 100644 --- a/quantum/matrix_common.c +++ b/quantum/matrix_common.c @@ -72,15 +72,12 @@ inline matrix_row_t matrix_get_row(uint8_t row) { #if (MATRIX_COLS <= 8) # define print_matrix_header() print("\nr/c 01234567\n") # define print_matrix_row(row) print_bin_reverse8(matrix_get_row(row)) -# define matrix_bitpop(row) bitpop(matrix_get_row(row)) #elif (MATRIX_COLS <= 16) # define print_matrix_header() print("\nr/c 0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse16(matrix_get_row(row)) -# define matrix_bitpop(row) bitpop16(matrix_get_row(row)) #elif (MATRIX_COLS <= 32) # define print_matrix_header() print("\nr/c 0123456789ABCDEF0123456789ABCDEF\n") # define print_matrix_row(row) print_bin_reverse32(matrix_get_row(row)) -# define matrix_bitpop(row) bitpop32(matrix_get_row(row)) #endif void matrix_print(void) { @@ -94,14 +91,6 @@ void matrix_print(void) { } } -uint8_t matrix_key_count(void) { - uint8_t count = 0; - for (uint8_t i = 0; i < MATRIX_ROWS; i++) { - count += matrix_bitpop(i); - } - return count; -} - #ifdef SPLIT_KEYBOARD bool matrix_post_scan(void) { bool changed = false; From 265b96a12ca1580e0cb8c3b5bac3687f005e4f30 Mon Sep 17 00:00:00 2001 From: makenova Date: Thu, 10 Mar 2022 12:10:05 -0700 Subject: [PATCH 080/699] [Keyboard] Add omega4 (#16464) --- keyboards/makenova/omega/omega4/config.h | 26 ++++++++ keyboards/makenova/omega/omega4/info.json | 37 +++++++++++ .../omega/omega4/keymaps/default/config.h | 12 ++++ .../omega/omega4/keymaps/default/keymap.c | 64 ++++++++++++++++++ .../omega/omega4/keymaps/default/readme.md | 1 + .../omega/omega4/keymaps/default/rules.mk | 1 + .../omega4/keymaps/default_10u_bar/config.h | 12 ++++ .../omega4/keymaps/default_10u_bar/keymap.c | 65 +++++++++++++++++++ .../omega4/keymaps/default_10u_bar/readme.md | 1 + .../omega4/keymaps/default_10u_bar/rules.mk | 1 + .../omega4/keymaps/default_6u_bar/config.h | 12 ++++ .../omega4/keymaps/default_6u_bar/keymap.c | 64 ++++++++++++++++++ .../omega4/keymaps/default_6u_bar/readme.md | 1 + .../omega4/keymaps/default_6u_bar/rules.mk | 1 + keyboards/makenova/omega/omega4/omega4.c | 4 ++ keyboards/makenova/omega/omega4/omega4.h | 51 +++++++++++++++ keyboards/makenova/omega/omega4/readme.md | 23 +++++++ keyboards/makenova/omega/omega4/rules.mk | 18 +++++ 18 files changed, 394 insertions(+) create mode 100644 keyboards/makenova/omega/omega4/config.h create mode 100644 keyboards/makenova/omega/omega4/info.json create mode 100644 keyboards/makenova/omega/omega4/keymaps/default/config.h create mode 100644 keyboards/makenova/omega/omega4/keymaps/default/keymap.c create mode 100644 keyboards/makenova/omega/omega4/keymaps/default/readme.md create mode 100644 keyboards/makenova/omega/omega4/keymaps/default/rules.mk create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_10u_bar/config.h create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_10u_bar/readme.md create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_10u_bar/rules.mk create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_6u_bar/config.h create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_6u_bar/readme.md create mode 100644 keyboards/makenova/omega/omega4/keymaps/default_6u_bar/rules.mk create mode 100644 keyboards/makenova/omega/omega4/omega4.c create mode 100644 keyboards/makenova/omega/omega4/omega4.h create mode 100644 keyboards/makenova/omega/omega4/readme.md create mode 100644 keyboards/makenova/omega/omega4/rules.mk diff --git a/keyboards/makenova/omega/omega4/config.h b/keyboards/makenova/omega/omega4/config.h new file mode 100644 index 0000000000..acd482324d --- /dev/null +++ b/keyboards/makenova/omega/omega4/config.h @@ -0,0 +1,26 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +// #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/makenova/omega/omega4/info.json b/keyboards/makenova/omega/omega4/info.json new file mode 100644 index 0000000000..5e9bf22595 --- /dev/null +++ b/keyboards/makenova/omega/omega4/info.json @@ -0,0 +1,37 @@ +{ + "manufacturer": "makenova", + "keyboard_name": "omega4", + "maintainer": "makenova", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": ["D4", "F4", "B5", "F5", "F6", "B6", "B2", "B3", "B1", "F7"], + "rows": ["C6", "D7", "E6", "B4"] + }, + "processor": "atmega32u4", + "url": "https://github.com/makenova/omega", + "usb": { + "device_version": "1.0.0", + "pid": "0x0000", + "vid": "0xFEED" + }, + "layouts": { + "LAYOUT": { + "layout": [{"label":"Q", "x":0, "y":0}, {"label":"W", "x":1, "y":0}, {"label":"E", "x":2, "y":0}, {"label":"R", "x":3, "y":0}, {"label":"T", "x":4, "y":0}, {"label":"Y", "x":5, "y":0}, {"label":"U", "x":6, "y":0}, {"label":"I", "x":7, "y":0}, {"label":"O", "x":8, "y":0}, {"label":"P", "x":9, "y":0}, {"label":"A", "x":0.25, "y":1}, {"label":"S", "x":1.25, "y":1}, {"label":"D", "x":2.25, "y":1}, {"label":"F", "x":3.25, "y":1}, {"label":"G", "x":4.25, "y":1}, {"label":"H", "x":5.25, "y":1}, {"label":"J", "x":6.25, "y":1}, {"label":"K", "x":7.25, "y":1}, {"label":"L", "x":8.25, "y":1}, {"label":":", "x":9.25, "y":1}, {"label":"Z", "x":0.5, "y":2}, {"label":"X", "x":1.5, "y":2}, {"label":"C", "x":2.5, "y":2}, {"label":"V", "x":3.5, "y":2}, {"label":"", "x":4.5, "y":2}, {"label":"", "x":5.5, "y":2}, {"label":"B", "x":6.5, "y":2}, {"label":"N", "x":7.5, "y":2}, {"label":"M", "x":8.5, "y":2}, {"label":"<", "x":9.5, "y":2}, {"label":"", "x":0.75, "y":3}, {"label":"", "x":1.75, "y":3}, {"label":"Space", "x":2.75, "y":3, "w":6}, {"label":"", "x":8.75, "y":3}, {"label":"", "x":9.75, "y":3}] + }, + "LAYOUT_6u_bar": { + "layout": [{"label":"Q", "x":0, "y":0}, {"label":"W", "x":1, "y":0}, {"label":"E", "x":2, "y":0}, {"label":"R", "x":3, "y":0}, {"label":"T", "x":4, "y":0}, {"label":"Y", "x":5, "y":0}, {"label":"U", "x":6, "y":0}, {"label":"I", "x":7, "y":0}, {"label":"O", "x":8, "y":0}, {"label":"P", "x":9, "y":0}, {"label":"A", "x":0.25, "y":1}, {"label":"S", "x":1.25, "y":1}, {"label":"D", "x":2.25, "y":1}, {"label":"F", "x":3.25, "y":1}, {"label":"G", "x":4.25, "y":1}, {"label":"H", "x":5.25, "y":1}, {"label":"J", "x":6.25, "y":1}, {"label":"K", "x":7.25, "y":1}, {"label":"L", "x":8.25, "y":1}, {"label":":", "x":9.25, "y":1}, {"label":"Z", "x":0.5, "y":2}, {"label":"X", "x":1.5, "y":2}, {"label":"C", "x":2.5, "y":2}, {"label":"V", "x":3.5, "y":2}, {"label":"", "x":4.5, "y":2}, {"label":"", "x":5.5, "y":2}, {"label":"B", "x":6.5, "y":2}, {"label":"N", "x":7.5, "y":2}, {"label":"M", "x":8.5, "y":2}, {"label":"<", "x":9.5, "y":2}, {"label":"", "x":0.75, "y":3}, {"label":"Space", "x":1.75, "y":3, "w":8}, {"label":"", "x":9.75, "y":3}] + }, + "LAYOUT_10u_bar": { + "layout": [{"label":"Q", "x":0, "y":0}, {"label":"W", "x":1, "y":0}, {"label":"E", "x":2, "y":0}, {"label":"R", "x":3, "y":0}, {"label":"T", "x":4, "y":0}, {"label":"Y", "x":5, "y":0}, {"label":"U", "x":6, "y":0}, {"label":"I", "x":7, "y":0}, {"label":"O", "x":8, "y":0}, {"label":"P", "x":9, "y":0}, {"label":"A", "x":0.25, "y":1}, {"label":"S", "x":1.25, "y":1}, {"label":"D", "x":2.25, "y":1}, {"label":"F", "x":3.25, "y":1}, {"label":"G", "x":4.25, "y":1}, {"label":"H", "x":5.25, "y":1}, {"label":"J", "x":6.25, "y":1}, {"label":"K", "x":7.25, "y":1}, {"label":"L", "x":8.25, "y":1}, {"label":":", "x":9.25, "y":1}, {"label":"Z", "x":0.5, "y":2}, {"label":"X", "x":1.5, "y":2}, {"label":"C", "x":2.5, "y":2}, {"label":"V", "x":3.5, "y":2}, {"label":"", "x":4.5, "y":2}, {"label":"", "x":5.5, "y":2}, {"label":"B", "x":6.5, "y":2}, {"label":"N", "x":7.5, "y":2}, {"label":"M", "x":8.5, "y":2}, {"label":"<", "x":9.5, "y":2}, {"label":"Space", "x":0.75, "y":3, "w":10}] + } + } +} \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default/config.h b/keyboards/makenova/omega/omega4/keymaps/default/config.h new file mode 100644 index 0000000000..1d2dd05351 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default/config.h @@ -0,0 +1,12 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef COMBO_ENABLE +# define COMBO_COUNT 4 +# define COMBO_TERM 50 +#endif + +#define TAPPING_TERM 150 +#define IGNORE_MOD_TAP_INTERRUPT \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default/keymap.c new file mode 100644 index 0000000000..26c5ada806 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default/keymap.c @@ -0,0 +1,64 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// ctrl +#define CTRL_S LCTL_T(KC_S) +#define CTRL_L RCTL_T(KC_L) +// alt +#define ALT_D LALT_T(KC_D) +#define ALT_K RALT_T(KC_K) +//gui +#define GUI_F LGUI_T(KC_F) +#define GUI_J RGUI_T(KC_J) +// shift +#define SFT_A LSFT_T(KC_A) +#define SFT_SCLN RSFT_T(KC_SCLN) +// layers +#define OS_SFT OSM(MOD_RSFT) +#define OS_3 OSL(3) +#define OS_4 OSL(4) +#define LT1_SPC LT(1,KC_SPC) +#define LT2_ESC LT(2,KC_ESC) + +#ifdef COMBO_ENABLE +const uint16_t PROGMEM combo_bspc[] = {GUI_J, ALT_K, COMBO_END}; +const uint16_t PROGMEM combo_ent[] = {ALT_D, GUI_F, COMBO_END}; +const uint16_t PROGMEM combo_tab[] = {KC_C, KC_V, COMBO_END}; +const uint16_t PROGMEM combo_del[] = {KC_M, KC_COMM, COMBO_END}; + +combo_t key_combos[COMBO_COUNT] = { + COMBO(combo_bspc,KC_BSPC), // 1 + COMBO(combo_ent,KC_ENT), // 2 + COMBO(combo_tab,KC_TAB), // 3 + COMBO(combo_del,KC_DEL), // 4 +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + SFT_A, CTRL_S, ALT_D, GUI_F, KC_G, KC_H, GUI_J, ALT_K, CTRL_L, SFT_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + OS_4, LT2_ESC, LT1_SPC, OS_3, OS_SFT + ), + LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_QUOT, + KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_MINS, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + LAYOUT( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_DQUO, + KC_TILDE, KC_LCBR, KC_RCBR, KC_TRNS, KC_TRNS, KC_TRNS, KC_PIPE, KC_UNDS, KC_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + LAYOUT( + 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, + RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default/readme.md b/keyboards/makenova/omega/omega4/keymaps/default/readme.md new file mode 100644 index 0000000000..9e5e5aeb1e --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for omega4 diff --git a/keyboards/makenova/omega/omega4/keymaps/default/rules.mk b/keyboards/makenova/omega/omega4/keymaps/default/rules.mk new file mode 100644 index 0000000000..ab1e438182 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes diff --git a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/config.h b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/config.h new file mode 100644 index 0000000000..1d2dd05351 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/config.h @@ -0,0 +1,12 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef COMBO_ENABLE +# define COMBO_COUNT 4 +# define COMBO_TERM 50 +#endif + +#define TAPPING_TERM 150 +#define IGNORE_MOD_TAP_INTERRUPT \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c new file mode 100644 index 0000000000..b60275d3ab --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c @@ -0,0 +1,65 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// ctrl +#define CTRL_S LCTL_T(KC_S) +#define CTRL_L RCTL_T(KC_L) +// alt +#define ALT_D LALT_T(KC_D) +#define ALT_K RALT_T(KC_K) +//gui +#define GUI_F LGUI_T(KC_F) +#define GUI_J RGUI_T(KC_J) +// shift +#define SFT_A LSFT_T(KC_A) +#define SFT_SCLN RSFT_T(KC_SCLN) +// layers +#define OS_SFT OSM(MOD_RSFT) +#define OS_3 OSL(3) +#define OS_4 OSL(4) +#define LT1_SPC LT(1,KC_SPC) +#define LT2_Z LT(2,KC_Z) +#define LT3_SLSH LT(3,KC_SLSH) + +#ifdef COMBO_ENABLE +const uint16_t PROGMEM combo_bspc[] = {GUI_J, ALT_K, COMBO_END}; +const uint16_t PROGMEM combo_ent[] = {ALT_D, GUI_F, COMBO_END}; +const uint16_t PROGMEM combo_tab[] = {KC_C, KC_V, COMBO_END}; +const uint16_t PROGMEM combo_del[] = {KC_M, KC_COMM, COMBO_END}; + +combo_t key_combos[COMBO_COUNT] = { + COMBO(combo_bspc,KC_BSPC), // 1 + COMBO(combo_ent,KC_ENT), // 2 + COMBO(combo_tab,KC_TAB), // 3 + COMBO(combo_del,KC_DEL), // 4 +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_10u_bar( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + SFT_A, CTRL_S, ALT_D, GUI_F, KC_G, KC_H, GUI_J, ALT_K, CTRL_L, SFT_SCLN, + LT2_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LT3_SLSH, + LT1_SPC + ), + LAYOUT_10u_bar( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_QUOT, + KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_MINS, KC_EQL, KC_TRNS, + KC_TRNS + ), + LAYOUT_10u_bar( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_DQUO, + KC_TRNS, KC_LCBR, KC_RCBR, KC_TRNS, KC_TRNS, KC_TRNS, KC_PIPE, KC_UNDS, KC_PLUS, KC_TILDE, + KC_TRNS + ), + LAYOUT_10u_bar( + 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, + RESET + ) +}; \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/readme.md b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/readme.md new file mode 100644 index 0000000000..3089385415 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/readme.md @@ -0,0 +1 @@ +# The default keymap for 10u spacebar omega4 diff --git a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/rules.mk b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/rules.mk new file mode 100644 index 0000000000..ab1e438182 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes diff --git a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/config.h b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/config.h new file mode 100644 index 0000000000..1d2dd05351 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/config.h @@ -0,0 +1,12 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef COMBO_ENABLE +# define COMBO_COUNT 4 +# define COMBO_TERM 50 +#endif + +#define TAPPING_TERM 150 +#define IGNORE_MOD_TAP_INTERRUPT \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c new file mode 100644 index 0000000000..477582613c --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c @@ -0,0 +1,64 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// ctrl +#define CTRL_S LCTL_T(KC_S) +#define CTRL_L RCTL_T(KC_L) +// alt +#define ALT_D LALT_T(KC_D) +#define ALT_K RALT_T(KC_K) +//gui +#define GUI_F LGUI_T(KC_F) +#define GUI_J RGUI_T(KC_J) +// shift +#define SFT_A LSFT_T(KC_A) +#define SFT_SCLN RSFT_T(KC_SCLN) +// layers +#define OS_SFT OSM(MOD_RSFT) +#define OS_3 OSL(3) +#define OS_4 OSL(4) +#define LT1_SPC LT(1,KC_SPC) +#define LT2_ESC LT(2,KC_ESC) + +#ifdef COMBO_ENABLE +const uint16_t PROGMEM combo_bspc[] = {GUI_J, ALT_K, COMBO_END}; +const uint16_t PROGMEM combo_ent[] = {ALT_D, GUI_F, COMBO_END}; +const uint16_t PROGMEM combo_tab[] = {KC_C, KC_V, COMBO_END}; +const uint16_t PROGMEM combo_del[] = {KC_M, KC_COMM, COMBO_END}; + +combo_t key_combos[COMBO_COUNT] = { + COMBO(combo_bspc,KC_BSPC), // 1 + COMBO(combo_ent,KC_ENT), // 2 + COMBO(combo_tab,KC_TAB), // 3 + COMBO(combo_del,KC_DEL), // 4 +}; +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_6u_bar( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + SFT_A, CTRL_S, ALT_D, GUI_F, KC_G, KC_H, GUI_J, ALT_K, CTRL_L, SFT_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + LT2_ESC, LT1_SPC, OS_3 + ), + LAYOUT_6u_bar( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_QUOT, + KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_MINS, KC_EQL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + LAYOUT_6u_bar( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_DQUO, + KC_TILDE, KC_LCBR, KC_RCBR, KC_TRNS, KC_TRNS, KC_TRNS, KC_PIPE, KC_UNDS, KC_PLUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + LAYOUT_6u_bar( + 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, + RESET, KC_TRNS, KC_TRNS + ) +}; \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/readme.md b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/readme.md new file mode 100644 index 0000000000..31f6b4c019 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/readme.md @@ -0,0 +1 @@ +# The default keymap for 6u spacebar omega4 diff --git a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/rules.mk b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/rules.mk new file mode 100644 index 0000000000..ab1e438182 --- /dev/null +++ b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes diff --git a/keyboards/makenova/omega/omega4/omega4.c b/keyboards/makenova/omega/omega4/omega4.c new file mode 100644 index 0000000000..b64ae638bd --- /dev/null +++ b/keyboards/makenova/omega/omega4/omega4.c @@ -0,0 +1,4 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "omega4.h" diff --git a/keyboards/makenova/omega/omega4/omega4.h b/keyboards/makenova/omega/omega4/omega4.h new file mode 100644 index 0000000000..754b58ee35 --- /dev/null +++ b/keyboards/makenova/omega/omega4/omega4.h @@ -0,0 +1,51 @@ +// Copyright 2022 makenova (@makenova) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K35, K38, K39 \ +){ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, KC_NO, KC_NO, KC_NO, K35, KC_NO, KC_NO, K38, K39 } \ +} + +#define LAYOUT_6u_bar( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K35, K39 \ +){ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, KC_NO, KC_NO, KC_NO, KC_NO, K35, KC_NO, KC_NO, KC_NO, K39 } \ +} + +#define LAYOUT_10u_bar( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K35 \ +){ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K35, KC_NO, KC_NO, KC_NO, KC_NO } \ +} diff --git a/keyboards/makenova/omega/omega4/readme.md b/keyboards/makenova/omega/omega4/readme.md new file mode 100644 index 0000000000..0b4db785d5 --- /dev/null +++ b/keyboards/makenova/omega/omega4/readme.md @@ -0,0 +1,23 @@ +# omega4 + +![omega4](https://i.imgur.com/tV4iCoD.png) + +uniform stagger 4 row board. + +- Keyboard Maintainer: [makenova](https://github.com/makenova) +- Hardware Supported: [omega4](https://github.com/makenova/omega) +- Hardware Availability: https://www.cbkbd.com/product/omega4-keyboard-kit + +Make example for this keyboard (after setting up your build environment): + + qmk compile -kb makenova/omega/omega4 -km default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +- **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +- **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/makenova/omega/omega4/rules.mk b/keyboards/makenova/omega/omega4/rules.mk new file mode 100644 index 0000000000..515ca5621f --- /dev/null +++ b/keyboards/makenova/omega/omega4/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 61a8a60dfb5af399f84321fbf82e974aab0a5968 Mon Sep 17 00:00:00 2001 From: kopibeng <52724926+kopibeng@users.noreply.github.com> Date: Fri, 11 Mar 2022 03:10:34 +0800 Subject: [PATCH 081/699] [Keyboard] Add MNK65 (#16400) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Joel Challis --- keyboards/kopibeng/mnk65/config.h | 60 +++++++++++++ keyboards/kopibeng/mnk65/info.json | 84 +++++++++++++++++++ .../kopibeng/mnk65/keymaps/default/keymap.c | 39 +++++++++ keyboards/kopibeng/mnk65/keymaps/via/keymap.c | 57 +++++++++++++ keyboards/kopibeng/mnk65/keymaps/via/rules.mk | 1 + keyboards/kopibeng/mnk65/mnk65.c | 17 ++++ keyboards/kopibeng/mnk65/mnk65.h | 55 ++++++++++++ keyboards/kopibeng/mnk65/readme.md | 21 +++++ keyboards/kopibeng/mnk65/rules.mk | 18 ++++ 9 files changed, 352 insertions(+) create mode 100644 keyboards/kopibeng/mnk65/config.h create mode 100644 keyboards/kopibeng/mnk65/info.json create mode 100644 keyboards/kopibeng/mnk65/keymaps/default/keymap.c create mode 100644 keyboards/kopibeng/mnk65/keymaps/via/keymap.c create mode 100644 keyboards/kopibeng/mnk65/keymaps/via/rules.mk create mode 100644 keyboards/kopibeng/mnk65/mnk65.c create mode 100644 keyboards/kopibeng/mnk65/mnk65.h create mode 100644 keyboards/kopibeng/mnk65/readme.md create mode 100644 keyboards/kopibeng/mnk65/rules.mk diff --git a/keyboards/kopibeng/mnk65/config.h b/keyboards/kopibeng/mnk65/config.h new file mode 100644 index 0000000000..6059de6ab1 --- /dev/null +++ b/keyboards/kopibeng/mnk65/config.h @@ -0,0 +1,60 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B50 // 'KP' kopibeng +#define PRODUCT_ID 0x0651 +#define DEVICE_VER 0x0001 +#define MANUFACTURER kopibeng +#define PRODUCT MNK65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { F0, F1, F4, B7, B3 } +#define MATRIX_COL_PINS { D0, D2, D3, D5, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6, F5 } +#define UNUSED_PINS + +#define LED_CAPS_LOCK_PIN D1 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 diff --git a/keyboards/kopibeng/mnk65/info.json b/keyboards/kopibeng/mnk65/info.json new file mode 100644 index 0000000000..e0bd2f7859 --- /dev/null +++ b/keyboards/kopibeng/mnk65/info.json @@ -0,0 +1,84 @@ +{ + "keyboard_name": "MNK65", + "maintainer": "kopibeng", + "url": "https://monokei.co/", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "0,0", "x": 0, "y": 0 }, + { "label": "0,1", "x": 1, "y": 0 }, + { "label": "0,2", "x": 2, "y": 0 }, + { "label": "0,3", "x": 3, "y": 0 }, + { "label": "0,4", "x": 4, "y": 0 }, + { "label": "0,5", "x": 5, "y": 0 }, + { "label": "0,6", "x": 6, "y": 0 }, + { "label": "0,7", "x": 7, "y": 0 }, + { "label": "0,8", "x": 8, "y": 0 }, + { "label": "0,9", "x": 9, "y": 0 }, + { "label": "0,10", "x": 10, "y": 0 }, + { "label": "0,11", "x": 11, "y": 0 }, + { "label": "0,12", "x": 12, "y": 0 }, + { "label": "1,13", "x": 13, "y": 0 }, + { "label": "0,13", "x": 14, "y": 0 }, + { "label": "0,14", "x": 15, "y": 0 }, + + { "label": "1,0", "w": 1.5, "x": 0, "y": 1 }, + { "label": "1,1", "x": 1.5, "y": 1 }, + { "label": "1,2", "x": 2.5, "y": 1 }, + { "label": "1,3", "x": 3.5, "y": 1 }, + { "label": "1,4", "x": 4.5, "y": 1 }, + { "label": "1,5", "x": 5.5, "y": 1 }, + { "label": "1,6", "x": 6.5, "y": 1 }, + { "label": "1,7", "x": 7.5, "y": 1 }, + { "label": "1,8", "x": 8.5, "y": 1 }, + { "label": "1,9", "x": 9.5, "y": 1 }, + { "label": "1,10", "x": 10.5, "y": 1 }, + { "label": "1,11", "x": 11.5, "y": 1 }, + { "label": "2,12", "x": 12.5, "y": 1 }, + { "label": "1,12", "w": 1.5, "x": 13.5, "y": 1 }, + { "label": "1,14", "x": 15, "y": 1 }, + + { "label": "2,0", "w": 1.75, "x": 0, "y": 2 }, + { "label": "2,1", "x": 1.75, "y": 2 }, + { "label": "2,2", "x": 2.75, "y": 2 }, + { "label": "2,3", "x": 3.75, "y": 2 }, + { "label": "2,4", "x": 4.75, "y": 2 }, + { "label": "2,5", "x": 5.75, "y": 2 }, + { "label": "2,6", "x": 6.75, "y": 2 }, + { "label": "2,7", "x": 7.75, "y": 2 }, + { "label": "2,8", "x": 8.75, "y": 2 }, + { "label": "2,9", "x": 9.75, "y": 2 }, + { "label": "2,10", "x": 10.75, "y": 2 }, + { "label": "2,11", "x": 11.75, "y": 2 }, + { "label": "2,13", "w": 2.25, "x": 12.75, "y": 2 }, + { "label": "2,14", "x": 15, "y": 2 }, + + { "label": "3,0", "w": 1.25, "x": 0, "y": 3 }, + { "label": "3,1", "x": 1.25, "y": 3 }, + { "label": "3,2", "x": 2.25, "y": 3 }, + { "label": "3,3", "x": 3.25, "y": 3 }, + { "label": "3,4", "x": 4.25, "y": 3 }, + { "label": "3,5", "x": 5.25, "y": 3 }, + { "label": "3,6", "x": 6.25, "y": 3 }, + { "label": "3,7", "x": 7.25, "y": 3 }, + { "label": "3,8", "x": 8.25, "y": 3 }, + { "label": "3,9", "x": 9.25, "y": 3 }, + { "label": "3,10", "x": 10.25, "y": 3 }, + { "label": "3,11", "x": 11.25, "y": 3 }, + { "label": "3,12", "w": 1.75, "x": 12.25, "y": 3 }, + { "label": "3,13", "x": 14, "y": 3 }, + { "label": "3,14", "x": 15, "y": 3 }, + + { "label": "4,0", "w": 1.25, "x": 0, "y": 4 }, + { "label": "4,1", "w": 1.25, "x": 1.25, "y": 4 }, + { "label": "4,2", "w": 1.25, "x": 2.5, "y": 4 }, + { "label": "4,6", "w": 6.25, "x": 3.75, "y": 4 }, + { "label": "4,10", "w": 1.25, "x": 10, "y": 4 }, + { "label": "4,11", "w": 1.25, "x": 11.25, "y": 4 }, + { "label": "4,12", "x": 13, "y": 4 }, + { "label": "4,13", "x": 14, "y": 4 }, + { "label": "4,14", "x": 15, "y": 4 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/kopibeng/mnk65/keymaps/default/keymap.c b/keyboards/kopibeng/mnk65/keymaps/default/keymap.c new file mode 100644 index 0000000000..f588475516 --- /dev/null +++ b/keyboards/kopibeng/mnk65/keymaps/default/keymap.c @@ -0,0 +1,39 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, + 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, 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 + ), +}; + diff --git a/keyboards/kopibeng/mnk65/keymaps/via/keymap.c b/keyboards/kopibeng/mnk65/keymaps/via/keymap.c new file mode 100644 index 0000000000..ea2fcff18c --- /dev/null +++ b/keyboards/kopibeng/mnk65/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, + 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, 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 + ), + + // Fn2 Layer + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + // Fn3 Layer + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), +}; + diff --git a/keyboards/kopibeng/mnk65/keymaps/via/rules.mk b/keyboards/kopibeng/mnk65/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/kopibeng/mnk65/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/kopibeng/mnk65/mnk65.c b/keyboards/kopibeng/mnk65/mnk65.c new file mode 100644 index 0000000000..2ae4eec194 --- /dev/null +++ b/keyboards/kopibeng/mnk65/mnk65.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include "mnk65.h" \ No newline at end of file diff --git a/keyboards/kopibeng/mnk65/mnk65.h b/keyboards/kopibeng/mnk65/mnk65.h new file mode 100644 index 0000000000..60a92f1a65 --- /dev/null +++ b/keyboards/kopibeng/mnk65/mnk65.h @@ -0,0 +1,55 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +/* + * + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │1D │0D │0E │ │0D │ Full Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │2C │1C │1E │ │2D │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌─┴─┐ │ ISO + * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2E │ │1C │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴───┘ + * │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │4A │4B │ │4C │4D │4E │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │40 │41 │42 │46 │4B │ 7u Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ + * + */ + +// LAYOUT_all: +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K2C, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \ + {K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E}, \ + {K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E}, \ + {K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E}, \ + {K40, K41, K42, ___, ___, ___, K46, ___, ___, ___, K4A, K4B, K4C, K4D, K4E} \ +} diff --git a/keyboards/kopibeng/mnk65/readme.md b/keyboards/kopibeng/mnk65/readme.md new file mode 100644 index 0000000000..80e256e617 --- /dev/null +++ b/keyboards/kopibeng/mnk65/readme.md @@ -0,0 +1,21 @@ +# MNK65 + +![MNK65](https://i.imgur.com/5BzAgPgl.png) + +A QMK-powered, VIA-enabled 65% PCB with support for ANSI/ISO layouts, split Backspace and 6.25U/7U bottom row. + +* Keyboard Maintainer: kopibeng +* Hardware Supported: MONOKEI - Hiro +* Hardware Availability: https://monokei.co/ + +Make example for this keyboard (after setting up your build environment): + + make kopibeng/mnk65:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +* Physical reset button: Press the RESET switch on top side of PCB. +* Bootmagic reset: Unplug keyboard, hold down ESC key and plug in the keyboard. +* Keycode reset: Press the RESET keycode (default: MO(1) + Home keys) in layout if available. diff --git a/keyboards/kopibeng/mnk65/rules.mk b/keyboards/kopibeng/mnk65/rules.mk new file mode 100644 index 0000000000..73ac281e0b --- /dev/null +++ b/keyboards/kopibeng/mnk65/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 98da119293b7f231694119b51afc709b3d817ea2 Mon Sep 17 00:00:00 2001 From: Era James <51322608+era1112@users.noreply.github.com> Date: Thu, 10 Mar 2022 23:07:37 +0300 Subject: [PATCH 082/699] era1112 keymap for preonic (#16064) Added the keymap I have been using as a daily driver for the last month. * good firmware 26 jan, best clicky mode stability so far * modified to reflect master branch coding style * further modified to reflect master branch coding style * improving clicky stability, tuned down clicky delay duration * changed name of keymap folder to use lowercase letters --- keyboards/preonic/keymaps/era1112/config.h | 60 ++++ keyboards/preonic/keymaps/era1112/keymap.c | 365 ++++++++++++++++++++ keyboards/preonic/keymaps/era1112/readme.md | 8 + keyboards/preonic/keymaps/era1112/rules.mk | 26 ++ 4 files changed, 459 insertions(+) create mode 100644 keyboards/preonic/keymaps/era1112/config.h create mode 100644 keyboards/preonic/keymaps/era1112/keymap.c create mode 100644 keyboards/preonic/keymaps/era1112/readme.md create mode 100644 keyboards/preonic/keymaps/era1112/rules.mk diff --git a/keyboards/preonic/keymaps/era1112/config.h b/keyboards/preonic/keymaps/era1112/config.h new file mode 100644 index 0000000000..86cc6135e5 --- /dev/null +++ b/keyboards/preonic/keymaps/era1112/config.h @@ -0,0 +1,60 @@ +// Copyright 2022 Era James(@Era1112) +// SPDX - License - Identifier: GPL - 2.0 - or -later + +#pragma once + + +//----------- Default statements -----------// +//------------------------------------------// +#define MUSIC_MASK (keycode < 0xFF) + +/* + * MIDI options + */ + +/* 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 2 + + +//----------- Added statements -------------// +//------------------------------------------// +#define TAPPING_TERM 200 // For tapdances + +// Commented to see if it helps stalls on clicky mode #define DYNAMIC_MACRO_NO_NESTING // Improve dynamic macro stability +#ifdef AUDIO_ENABLE + #define AUDIO_INIT_DELAY // to make startup audio work + #define STARTUP_SONG SONG(PREONIC_SOUND) + #define AUDIO_CLICKY // enable clicky mode + + // Clicky mode parameters + #define AUDIO_CLICKY_FREQ_MIN 65.0f // Default 65 + #define AUDIO_CLICKY_FREQ_DEFAULT 800.0f // Default 440 + #define AUDIO_CLICKY_FREQ_MAX 1500.0f // Defaul 1500 + #define AUDIO_CLICKY_FREQ_RANDOMNESS 1.0f // Default 0.05 + #define AUDIO_CLICKY_DELAY_DURATION 0.1f // Default 1 +#endif //AUDIO_ENABLE + +#define RGBLIGHT_SLEEP // RGB lights turn off when host sleeps + +// Firmware minimization + +// Commented to see if it helps stalls on clicky mode +// #define NO_ACTION_ONESHOT +// #undef LOCKING_SUPPORT_ENABLE +// #undef LOCKING_RESYNC_ENABLE +// #define NO_MUSIC_MODE +// #define LAYER_STATE_8BIT // Limits keymap to 8 layers +// #undef RGBLIGHT_ANIMATIONS // Removes rgb animations diff --git a/keyboards/preonic/keymaps/era1112/keymap.c b/keyboards/preonic/keymaps/era1112/keymap.c new file mode 100644 index 0000000000..4031f998db --- /dev/null +++ b/keyboards/preonic/keymaps/era1112/keymap.c @@ -0,0 +1,365 @@ +// Copyright 2022 Era James(@Era1112) +// SPDX - License - Identifier: GPL - 2.0 - or -later + +#include QMK_KEYBOARD_H // Default statement + +#define HSV_RETRO_CONSOLE 36, 150, 255 //HSV_YELLOW = 43, 255, 255 + + +//----------- RGB Default Settings -----------// +//--------------------------------------------// +#ifdef RGBLIGHT_ENABLE + +void keyboard_post_init_user(void) { + rgblight_enable_noeeprom(); // Enables RGB, without saving settings + rgblight_sethsv_noeeprom(HSV_RETRO_CONSOLE); + rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); +} + +#endif // RGBLIGHT_ENABLE + +//----------- Layer names -----------// +//-----------------------------------// +enum preonic_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST, +}; + + +//----------- Sounds -----------// +//------------------------------// +#ifdef AUDIO_ENABLE + + float capslockToggleSound[][2] = SONG(STARTUP_SOUND); + float dynamicBufferRecordSound[][2] = SONG(STARTUP_SOUND); + float dynamicBufferFullSound[][2] = SONG(GOODBYE_SOUND); + +#endif // AUDIO_ENABLE + + +//----------- Called when dynamic buffer full -----------// +//-------------------------------------------------------// +void backlight_toggle(void) { +#ifdef AUDIO_ENABLE + + PLAY_SONG(dynamicBufferFullSound); + +#endif // AUDIO_ENABLE +} + + +//----------- Tapdance prelims -----------// +//----------------------------------------// +typedef enum { + TD_NONE, + TD_UNKNOWN, + TD_1_TAP, + TD_1_HOLD, + TD_2_TAP, + TD_2_HOLD, +} td_state_t; + +typedef struct { + bool is_press_action; + td_state_t state; +} td_tap_t; + +td_state_t cur_dance(qk_tap_dance_state_t* state); + +/* Return an integer that corresponds to what kind of tap dance should be executed. + * + * How to figure out tap dance state: interrupted and pressed. + * + * Interrupted: If the state of a dance dance is "interrupted", that means that another key has been hit + * under the tapping term. This is typically indicitive that you are trying to "tap" the key. + * + * Pressed: Whether or not the key is still being pressed. If this value is true, that means the tapping term + * has ended, but the key is still being pressed down. This generally means the key is being "held". + * + * One thing that is currenlty not possible with qmk software in regards to tap dance is to mimic the "permissive hold" + * feature. In general, advanced tap dances do not work well if they are used with commonly typed letters. + * For example "A". Tap dances are best used on non-letter keys that are not hit while typing letters. + * + * Good places to put an advanced tap dance: + * z,q,x,j,k,v,b, any function key, home/end, comma, semi-colon + * + * Criteria for "good placement" of a tap dance key: + * Not a key that is hit frequently in a sentence + * Not a key that is used frequently to double tap, for example 'tab' is often double tapped in a terminal, or + * in a web form. So 'tab' would be a poor choice for a tap dance. + * Letters used in common words as a double. For example 'p' in 'pepper'. If a tap dance function existed on the + * letter 'p', the word 'pepper' would be quite frustating to type. + * + * For the third point, there does exist the 'TD_DOUBLE_SINGLE_TAP', however this is not fully tested + * + */ +td_state_t cur_dance(qk_tap_dance_state_t* state) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) { + return TD_1_TAP; + // Key has not been interrupted, but the key is still held. Means you want to send a 'HOLD'. + } else { + return TD_1_HOLD; + } + } else if (state->count == 2) { + // TD_DOUBLE_SINGLE_TAP is to distinguish between typing "pepper", and actually wanting a double tap + // action when hitting 'pp'. Suggested use case for this return value is when you want to send two + // keystrokes of the key, and not the 'double tap' action/macro. + if (state->pressed) return TD_2_HOLD; + else return TD_2_TAP; + } else { + return TD_UNKNOWN; + } +} + + +//----------- 2tap capslock --------------// +//----------------------------------------// +void twoCapsLock_finished(qk_tap_dance_state_t* state, void* user_data); +void twoCapsLock_reset(qk_tap_dance_state_t* state, void* user_data); + +static td_tap_t twoCapsLock_tap_state = { + .is_press_action = true, + .state = TD_NONE +}; + +void twoCapsLock_finished(qk_tap_dance_state_t* state, void* user_data) { + twoCapsLock_tap_state.state = cur_dance(state); + switch (twoCapsLock_tap_state.state) { + case TD_NONE: register_code(KC_LSFT); break; + case TD_UNKNOWN: register_code(KC_LSFT); break; + case TD_1_TAP: register_code(KC_LSFT); break; + case TD_1_HOLD: register_code(KC_LSFT); break; + case TD_2_TAP: + register_code(KC_CAPS); +#ifdef AUDIO_ENABLE + PLAY_SONG(capslockToggleSound); +#endif // AUDIO_ENABLE + break; + case TD_2_HOLD: register_code(KC_LSFT); break; + } +} + +void twoCapsLock_reset(qk_tap_dance_state_t* state, void* user_data) { + switch (twoCapsLock_tap_state.state) { + case TD_UNKNOWN: unregister_code(KC_LSFT); break; + case TD_NONE: unregister_code(KC_LSFT); break; + case TD_1_TAP: unregister_code(KC_LSFT); break; + case TD_1_HOLD: unregister_code(KC_LSFT); break; + case TD_2_TAP: + unregister_code(KC_CAPS); +#ifdef AUDIO_ENABLE + PLAY_SONG(capslockToggleSound); +#endif // AUDIO_ENABLE + break; + case TD_2_HOLD: unregister_code(KC_LSFT); break; + } + twoCapsLock_tap_state.state = TD_NONE; +} + + +//----------- Rotary Encoder --------------// +//----------------------------------------// +bool encoder_update_user(uint8_t index, bool clockwise) { + if (layer_state_is(_QWERTY)) { + if (clockwise) { + tap_code(KC_WH_U); + } else { + tap_code(KC_WH_D); + } + } + else if (layer_state_is(_LOWER)) { + if (clockwise) { + tap_code16(S(KC_F3)); + } else { + tap_code(KC_F3); + } + } else if (layer_state_is(_RAISE)) { + if (clockwise) { + tap_code16(C(KC_Z)); + } else { + tap_code16(C(KC_Y)); + } + } + return false; +} + +//----------- Custom keycodes ------------// +//----------------------------------------// +enum { + TD_2_CAPSLOCK +}; + +enum custom_keycodes { + CU_BLNKON = SAFE_RANGE, + CU_BLNKOFF, + CU_RGBON, + CU_RGBOFF, + ENC_MODE +}; + +static bool blinky = false; // Track blinky behavior on/off for keycode + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_2_CAPSLOCK] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, twoCapsLock_finished, twoCapsLock_reset) +}; + + +//----------- Intercepts and overrides ------------// +//-------------------------------------=-----------// +bool process_record_user(uint16_t keycode, keyrecord_t* record) { + switch (keycode) { + // Turn RGB LEDs off + case CU_RGBOFF: + + // If pressed + if (record->event.pressed) { + rgblight_sethsv_noeeprom(HSV_OFF); + return true; + + // If released + } else { + return true; + } + + // Turn RGB LEDs on + case CU_RGBON: + + // If pressed + if (record->event.pressed) { + rgblight_sethsv_noeeprom(HSV_RETRO_CONSOLE); + return true; + + // If released + } else { + return true; + } + + // Turn blinky LEDs off + case CU_BLNKOFF: + + // If pressed + if (record->event.pressed) { + blinky = false; + return true; + + // If released + } else { + return true; + } + + // Turn blinky LEDs on + case CU_BLNKON: + + // If pressed + if (record->event.pressed) { + blinky = true; + return true; + + // If released + } else { + return true; + } + + // Sound when Dynamic recording started + case DYN_REC_START1: + + // If pressed + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(dynamicBufferRecordSound); + #endif // AUDIO_ENABLE + return true; // Let QMK send the press/release events + + // If released + } else { + return true; // Let QMK send the press/release events + } + + // Sound when Dynamic recording stopped + case DYN_REC_STOP: + + // If pressed + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(dynamicBufferFullSound); + #endif // AUDIO_ENABLE + return true; // Let QMK send the enter press/release events + + // If released + } else { + return true; // Let QMK send the press/release events + } + + // Encoder Click + case ENC_MODE: + if (record->event.pressed) { + if (layer_state_is(_QWERTY)) { + tap_code(KC_BTN1); + return false; + } else if (layer_state_is(_LOWER)) { + return false; + } else if (layer_state_is(_RAISE)) { + return false; + } + } + + + // Adds blinks if blinky is on + default: + if (blinky == true) { + rgblight_toggle(); + } + + return true; // Process all other keycodes normally + + } +} + + +//----------- Keymap ------------// +//-------------------------------// +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // main layer + [_QWERTY] = LAYOUT_ortho_5x12 ( + // (Non-disabled top row), uncomment and replace if you want preonic-style instead of planck-style + // KC_MINS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, TD(TD_2_CAPSLOCK), + ENC_MODE, KC_LCTL, KC_LGUI, KC_LALT, MO(_LOWER), KC_SPC, KC_SPC, MO(_RAISE), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + // lower key + [_LOWER] = LAYOUT_ortho_5x12 ( + DYN_MACRO_PLAY1, DYN_REC_START1, DYN_REC_STOP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + KC_BSPC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_QUOT, KC_GRV, KC_LCBR, KC_RCBR, KC_TRNS, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_TRNS, KC_BSLS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_ADJUST), KC_HOME, KC_PGDN, KC_PGUP, KC_END + ), + + // raise key + [_RAISE] = LAYOUT_ortho_5x12 ( + DYN_MACRO_PLAY1, DYN_REC_START1, DYN_REC_STOP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_DQUO, KC_TILD, KC_LBRC, KC_RBRC, KC_TRNS, + KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_UNDS, KC_PLUS , KC_TRNS, KC_PIPE, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(_ADJUST), KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_F24 + ), + + // hardware adjust layer, raise+lower + [_ADJUST] = LAYOUT_ortho_5x12 ( + AU_ON, AU_OFF, CK_ON, CK_OFF, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + + CU_RGBON, CU_RGBOFF, CU_BLNKON, CU_BLNKOFF, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + ) + +}; diff --git a/keyboards/preonic/keymaps/era1112/readme.md b/keyboards/preonic/keymaps/era1112/readme.md new file mode 100644 index 0000000000..76775b85aa --- /dev/null +++ b/keyboards/preonic/keymaps/era1112/readme.md @@ -0,0 +1,8 @@ +A preonic keymap that includes: +- doubletap tapdance for caps lock +- rotary encoder +- macro record/playback +- light on/off +- sound on/off +- blink-on-keypress w/ on/off keystroke +- beep-on-keypress w/ on/off keystroke (this has stability issues when typing fast, still trying to remediate) \ No newline at end of file diff --git a/keyboards/preonic/keymaps/era1112/rules.mk b/keyboards/preonic/keymaps/era1112/rules.mk new file mode 100644 index 0000000000..4e83382dad --- /dev/null +++ b/keyboards/preonic/keymaps/era1112/rules.mk @@ -0,0 +1,26 @@ +## Copyright 2022 Era James (@Era1112) +## SPDX-License-Identifier: GPL-2.0-or-later + +# DEFAULT STATEMENTS +# ================== + +SRC += muse.c + + +# ADDED STATEMENTS +# ================ + +AUDIO_ENABLE = yes # Audio output on +TAP_DANCE_ENABLE = yes # For double-tap tapdances +DYNAMIC_MACRO_ENABLE = yes # For dynamuic macros +RGBLIGHT_ENABLE = yes # For RGB lighting functions +ENCODER_ENABLE = yes # For Rotary encoders + + +# Firmware minimization +# Commented to see if it helps stalls on clicky mode +CONSOLE_ENABLE = no +#LTO_ENABLE = yes +SPACE_CADET_ENABLE = no +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no From fc7a41fdceaf2fe6a42497c25f4fcfc9597cf638 Mon Sep 17 00:00:00 2001 From: Liashenko Volodymyr Date: Thu, 10 Mar 2022 22:21:55 +0200 Subject: [PATCH 083/699] [Keyboard] lily58/glow_enc (#16101) Add rgb-light and encoder for lily58 mod * add support for lily58 encoders (one per size) and rgb-light. The pcb and details here https://github.com/orvisevans/Lily58-Glow-Enc * add support for lily58 encoders (one per size) and rgb-light. The pcb and details here https://github.com/orvisevans/Lily58-Glow-Enc * Update keyboards/lily58/glowEnc/config.h * add GPL License to growEnc.h * rename folder according to requirement to lower case --- keyboards/lily58/glow_enc/config.h | 55 +++++++++++++++++++++++ keyboards/lily58/glow_enc/glow_enc.c | 16 +++++++ keyboards/lily58/glow_enc/glow_enc.h | 66 ++++++++++++++++++++++++++++ keyboards/lily58/glow_enc/info.json | 16 +++++++ keyboards/lily58/glow_enc/rules.mk | 8 ++++ keyboards/lily58/lily58.h | 2 + 6 files changed, 163 insertions(+) create mode 100644 keyboards/lily58/glow_enc/config.h create mode 100644 keyboards/lily58/glow_enc/glow_enc.c create mode 100644 keyboards/lily58/glow_enc/glow_enc.h create mode 100644 keyboards/lily58/glow_enc/info.json create mode 100644 keyboards/lily58/glow_enc/rules.mk diff --git a/keyboards/lily58/glow_enc/config.h b/keyboards/lily58/glow_enc/config.h new file mode 100644 index 0000000000..5e51acea25 --- /dev/null +++ b/keyboards/lily58/glow_enc/config.h @@ -0,0 +1,55 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2017 F_YUUCHI +Copyright 2020 Ben Roesner (keycapsss.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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFC51 +#define PRODUCT_ID 0x0059 +#define DEVICE_VER 0x0100 +#define MANUFACTURER ORVISEVANS+ +#define PRODUCT Lily58GlowEnc + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 10 +#define MATRIX_COLS 6 + +// wiring of each half +#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define SOFT_SERIAL_PIN D2 + +#define RGB_DI_PIN F4 + +#define RGBLED_NUM 72 // Number of LEDs + +#define RGBLED_SPLIT { 36, 36 } +#define RGBLIGHT_SPLIT +#define RGBLIGHT_LIMIT_VAL 120 + +#define ENCODERS_PAD_A { F5 } +#define ENCODERS_PAD_B { D4 } +#define ENCODERS_PAD_A_RIGHT { D4 } +#define ENCODERS_PAD_B_RIGHT { F5 } diff --git a/keyboards/lily58/glow_enc/glow_enc.c b/keyboards/lily58/glow_enc/glow_enc.c new file mode 100644 index 0000000000..57a0df93db --- /dev/null +++ b/keyboards/lily58/glow_enc/glow_enc.c @@ -0,0 +1,16 @@ +/* +Copyright 2020 Ben Roesner (keycapsss.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 . +*/ + +#include "lily58.h" + diff --git a/keyboards/lily58/glow_enc/glow_enc.h b/keyboards/lily58/glow_enc/glow_enc.h new file mode 100644 index 0000000000..f9cc1c26b8 --- /dev/null +++ b/keyboards/lily58/glow_enc/glow_enc.h @@ -0,0 +1,66 @@ +/* Copyright 2022 Liashenko Volodymyr (@LVladymyr) + * + * 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 . +*/ + +#pragma once + +#include "lily58.h" + +#include "quantum.h" + + +#ifndef FLIP_HALF +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ + L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ + L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ + L30, L31, L32, L33, L34, L35, L45, R40, R30, R31, R32, R33, R34, R35, \ + L41, L42, L43, L44, R41, R42, R43, R44 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { KC_NO, L41, L42, L43, L44, L45 }, \ + { R05, R04, R03, R02, R01, R00 }, \ + { R15, R14, R13, R12, R11, R10 }, \ + { R25, R24, R23, R22, R21, R20 }, \ + { R35, R34, R33, R32, R31, R30 }, \ + { KC_NO, R44, R43, R42, R41, R40 } \ + } +#else +// Keymap with right side flipped +// (TRRS jack on both halves are to the right) +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R00, R01, R02, R03, R04, R05, \ + L10, L11, L12, L13, L14, L15, R10, R11, R12, R13, R14, R15, \ + L20, L21, L22, L23, L24, L25, R20, R21, R22, R23, R24, R25, \ + L30, L31, L32, L33, L34, L35, L45, R30, R31, R32, R33, R34, R35, R45, \ + L41, L42, L43, L44, R41, R42, R43, R44 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { KC_NO, L41, L42, L43, L44, L45 }, \ + { R00, R01, R02, R03, R04, R05 }, \ + { R10, R11, R12, R13, R14, R15 }, \ + { R20, R21, R22, R23, R24, R25 }, \ + { R30, R31, R32, R33, R34, R35 }, \ + { KC_NO, R41, R42, R43, R44, R45 } \ + } +#endif diff --git a/keyboards/lily58/glow_enc/info.json b/keyboards/lily58/glow_enc/info.json new file mode 100644 index 0000000000..503cdaae12 --- /dev/null +++ b/keyboards/lily58/glow_enc/info.json @@ -0,0 +1,16 @@ +{ + "keyboard_name": "Lily58", + "url": "https://keycapsss.com", + "maintainer": "BenRoe", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0.5}, {"x":1, "y":0.375}, {"x":2, "y":0.125}, {"x":3, "y":0}, {"x":4, "y":0.125}, {"x":5, "y":0.25}, {"x":10.5, "y":0.25}, {"x":11.5, "y":0.125}, {"x":12.5, "y":0}, {"x":13.5, "y":0.125}, {"x":14.5, "y":0.375}, {"x":15.5, "y":0.5}, + {"x":0, "y":1.5}, {"x":1, "y":1.375}, {"x":2, "y":1.125}, {"x":3, "y":1}, {"x":4, "y":1.125}, {"x":5, "y":1.25}, {"x":10.5, "y":1.25}, {"x":11.5, "y":1.125}, {"x":12.5, "y":1}, {"x":13.5, "y":1.125}, {"x":14.5, "y":1.375}, {"x":15.5, "y":1.5}, + {"x":0, "y":2.5}, {"x":1, "y":2.375}, {"x":2, "y":2.125}, {"x":3, "y":2}, {"x":4, "y":2.125}, {"x":5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.125}, {"x":12.5, "y":2}, {"x":13.5, "y":2.125}, {"x":14.5, "y":2.375}, {"x":15.5, "y":2.5}, + {"x":0, "y":3.5}, {"x":1, "y":3.375}, {"x":2, "y":3.125}, {"x":3, "y":3}, {"x":4, "y":3.125}, {"x":5, "y":3.25}, {"x":6, "y":2.75}, {"x":9.5, "y":2.75}, {"x":10.5, "y":3.25}, {"x":11.5, "y":3.125}, {"x":12.5, "y":3}, {"x":13.5, "y":3.125}, {"x":14.5, "y":3.375}, {"x":15.5, "y":3.5}, + {"x":2.5, "y":4.125}, {"x":3.5, "y":4.15}, {"x":4.5, "y":4.25}, {"x":6, "y":4.25, "h":1.5}, {"x":9.5, "y":4.25, "h":1.5}, {"x":11, "y":4.25}, {"x":12, "y":4.15}, {"x":13, "y":4.15} + ] + } + } +} diff --git a/keyboards/lily58/glow_enc/rules.mk b/keyboards/lily58/glow_enc/rules.mk new file mode 100644 index 0000000000..3d80190eb2 --- /dev/null +++ b/keyboards/lily58/glow_enc/rules.mk @@ -0,0 +1,8 @@ +ENCODER_ENABLE = yes # ENables the use of one or more encoders +RGBLIGHT_ENABLE = yes # Enable keyboard RGB light +LTO_ENABLE = yes # significantly reduce the compiled size, but disable the legacy TMK Macros and Functions features +BOOTMAGIC_ENABLE = no +RGB_MATRIX_ENABLE = no # Per key rgb leds + +# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE +SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend \ No newline at end of file diff --git a/keyboards/lily58/lily58.h b/keyboards/lily58/lily58.h index 4f6f262bbc..c082030032 100644 --- a/keyboards/lily58/lily58.h +++ b/keyboards/lily58/lily58.h @@ -4,4 +4,6 @@ #include "rev1.h" #elif KEYBOARD_lily58_light #include "light.h" +#elif KEYBOARD_lily58_glow_enc + #include "glow_enc.h" #endif From b33fdc299c7ae702582969ef66d73fcc5806bcbb Mon Sep 17 00:00:00 2001 From: Christian Hofstede <4440939+chofstede@users.noreply.github.com> Date: Thu, 10 Mar 2022 21:41:30 +0100 Subject: [PATCH 084/699] add chofstede keymap for gmmk/pro/iso (#16045) Add new keymap for GMMK with some additional mappings and led indicator for caps lock * add chofstede keymap * fix formatting * fix formatting * add readme * Update keyboards/gmmk/pro/iso/keymaps/chofstede/keymap.c --- .../gmmk/pro/iso/keymaps/chofstede/keymap.c | 106 ++++++++++++++++++ .../gmmk/pro/iso/keymaps/chofstede/readme.md | 8 ++ 2 files changed, 114 insertions(+) create mode 100644 keyboards/gmmk/pro/iso/keymaps/chofstede/keymap.c create mode 100644 keyboards/gmmk/pro/iso/keymaps/chofstede/readme.md diff --git a/keyboards/gmmk/pro/iso/keymaps/chofstede/keymap.c b/keyboards/gmmk/pro/iso/keymaps/chofstede/keymap.c new file mode 100644 index 0000000000..84fbcf37ff --- /dev/null +++ b/keyboards/gmmk/pro/iso/keymaps/chofstede/keymap.c @@ -0,0 +1,106 @@ +/* Copyright 2021 Glorious, LLC + +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 . +*/ + +#include QMK_KEYBOARD_H + +// clang-format off +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 Prt Rotary(Mute) +// ~ 1 2 3 4 5 6 7 8 9 0 - (=) BackSpc Del +// Tab Q W E R T Y U I O P [ ] PgUp +// Caps A S D F G H J K L ; " # Enter PgDn +// Sh_L / Z X C V B N M , . ? Sh_R Up End +// Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right + + + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB + // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI + // if that's your preference. + // + // To put the keyboard in bootloader mode, use FN+backspace. If you accidentally put it into bootloader, you can just unplug the USB cable and + // it'll be back to normal when you plug it back in. + // + // This keyboard defaults to 6KRO instead of NKRO for compatibility reasons (some KVMs and BIOSes are incompatible with NKRO). + // Since this is, among other things, a "gaming" keyboard, a key combination to enable NKRO on the fly is provided for convenience. + // Press Fn+N to toggle between 6KRO and NKRO. This setting is persisted to the EEPROM and thus persists between restarts. + [0] = 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_HOME, KC_MUTE, + KC_GRV, 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_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_PGUP, + 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_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_PSCR, _______, + _______, RGB_TOG, RGB_M_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, + _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, + _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI + ), + + +}; +// clang-format on + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + return false; +} +#endif + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + static uint32_t cycle_led_timer = 0; + static uint8_t current_value = 0; + static uint8_t left_side_leds[8] = {68, 71, 74, 77, 81, 84, 88, 92}; + static uint8_t right_side_leds[8] = {69, 72, 75, 78, 82, 85, 89, 93}; + + if (host_keyboard_led_state().caps_lock) { + if (timer_elapsed32(cycle_led_timer) > 500) { + current_value = current_value == 0 ? 255 : 0; + cycle_led_timer = timer_read32(); + } + HSV tempHSV = {.h = 0, .s = 255, .v = current_value}; + RGB tempRGB = hsv_to_rgb(tempHSV); + for (uint8_t i = 0; i < sizeof(left_side_leds) / sizeof(left_side_leds[0]); i++) { + rgb_matrix_set_color(left_side_leds[i], tempRGB.r, tempRGB.g, tempRGB.b); + rgb_matrix_set_color(right_side_leds[i], tempRGB.r, tempRGB.g, tempRGB.b); + } + } + + static uint8_t l2_functions[26] = {6, 7, 8, 12, 13, 14, 15, 16, 18, 23, 28, 34, 38, 39, 44, 50, 56, 61, 66, 70, 80, 86, 94, 95, 96, 98}; + switch(get_highest_layer(layer_state)){ // special handling per layer + case 2: //layer one + break; + case 1: + for (uint8_t i = 0; i < sizeof(l2_functions) / sizeof(l2_functions[0]); i++) { + RGB_MATRIX_INDICATOR_SET_COLOR(l2_functions[i], 255, 0, 0); + } + break; + default: + break; + break; + } +} diff --git a/keyboards/gmmk/pro/iso/keymaps/chofstede/readme.md b/keyboards/gmmk/pro/iso/keymaps/chofstede/readme.md new file mode 100644 index 0000000000..da66c447ad --- /dev/null +++ b/keyboards/gmmk/pro/iso/keymaps/chofstede/readme.md @@ -0,0 +1,8 @@ +# chofstede GMMK Pro layout + +- Added Print-Screen to FN+POS1 +- Added Insert to FN+# +- The LED bars on the left and right side of the keyboard blink red when CAPS Lock is enabled +- All mapped keys light up red when FN is being pressed + + From 6c40b6856bb843e39bf0992164f41e29ce7ea72c Mon Sep 17 00:00:00 2001 From: WJH Date: Fri, 11 Mar 2022 04:48:33 +0800 Subject: [PATCH 085/699] [Docs] Include ASCII diagram to explain tap-hold modes (#15873) * [Docs] Include ASCII diagram to explain tap-hold modes * [Docs]: add examples for Default mode for Tap Hold * [Docs] fix some wrong explanation in tap_hold.md --- docs/tap_hold.md | 115 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 115 insertions(+) diff --git a/docs/tap_hold.md b/docs/tap_hold.md index d206c10cc5..39fa84a9f3 100644 --- a/docs/tap_hold.md +++ b/docs/tap_hold.md @@ -126,6 +126,61 @@ The code which decides between the tap and hold actions of dual-role keys suppor Note that until the tap-or-hold decision completes (which happens when either the dual-role key is released, or the tapping term has expired, or the extra condition for the selected decision mode is satisfied), key events are delayed and not transmitted to the host immediately. The default mode gives the most delay (if the dual-role key is held down, this mode always waits for the whole tapping term), and the other modes may give less delay when other keys are pressed, because the hold action may be selected earlier. +### Default Mode +Example sequence 1 (the `L` key is also mapped to `KC_RGHT` on layer 2): + +``` + TAPPING_TERM + +---------------|--------------------+ + | +-------------|-------+ | + | | LT(2, KC_A) | | | + | +-------------|-------+ | + | | +--------------+ | + | | | KC_L | | + | | +--------------+ | + +---------------|--------------------+ +``` +The above sequence would send a `KC_RGHT`, since `LT(2, KC_A)` is held longer than the `TAPPING_TERM`. + +--- + +Example sequence 2 (the `L` key is also mapped to `KC_RGHT` on layer 2): + +``` + TAPPING_TERM + +-----------------------------|------+ + | +---------------+ | | + | | LT(2, KC_A) | | | + | +---------------+ | | + | +--------------+ | | + | | KC_L | | | + | +--------------+ | | + +-----------------------------|------+ +``` +The above sequence will not send `KC_RGHT` but `KC_A` `KC_L` instead, since `LT(2, KC_A)` is not held longer than the `TAPPING_TERM`. + +--- + +Example sequence 3 (Mod Tap): + +``` + TAPPING_TERM + +---------------------------|--------+ + | +-------------+ | | + | | SFT_T(KC_A) | | | + | +-------------+ | | + | +--------------+ | | + | | KC_X | | | + | +--------------+ | | + +---------------------------|--------+ +``` +Based previous examples, you might have expected the output of the above sequence to be `KC_A` `KC_X` +since `SFT_T(KC_A)` is NOT held longer than the `TAPPING_TERM`. +However, the actual output would be capital `X` (`SHIFT` + `x`) due to reasons +explained under [Ignore Mod Tap Interrupt](#ignore-mod-tap-interrupt). + + + ### Permissive Hold The “permissive hold” mode can be enabled for all dual-role keys by adding the corresponding option to `config.h`: @@ -145,6 +200,18 @@ An example of a sequence which is affected by the “permissive hold” mode: - `KC_L` Up - `LT(2, KC_A)` Up +``` + TAPPING_TERM + +---------------------------|--------+ + | +----------------------+ | | + | | LT(2, KC_A) | | | + | +----------------------+ | | + | +--------------+ | | + | | KC_L | | | + | +--------------+ | | + +---------------------------|--------+ +``` + Normally, if you do all this within the `TAPPING_TERM` (default: 200ms), this will be registered as `al` by the firmware and host system. With the `PERMISSIVE_HOLD` option enabled, the Layer Tap key is considered as a layer switch if another key is tapped, and the above sequence would be registered as `KC_RGHT` (the mapping of `L` on layer 2). We could describe this sequence as a “nested press” (the modified key's key down and key up events are “nested” between the dual-role key's key down and key up events). However, this slightly different sequence will not be affected by the “permissive hold” mode: @@ -154,6 +221,18 @@ However, this slightly different sequence will not be affected by the “permiss - `LT(2, KC_A)` Up - `KC_L` Up +``` + TAPPING_TERM + +---------------------------|--------+ + | +-------------+ | | + | | LT(2, KC_A) | | | + | +-------------+ | | + | +--------------+ | | + | | KC_L | | | + | +--------------+ | | + +---------------------------|--------+ +``` + In the sequence above the dual-role key is released before the other key is released, and if that happens within the tapping term, the “permissive hold” mode will still choose the tap action for the dual-role key, and the sequence will be registered as `al` by the host. We could describe this as a “rolling press” (the two keys' key down and key up events behave as if you were rolling a ball across the two keys, first pressing each key down in sequence and then releasing them in the same order). ?> The `PERMISSIVE_HOLD` option also affects Mod Tap keys, but this may not be noticeable if you do not also enable the `IGNORE_MOD_TAP_INTERRUPT` option for those keys, because the default handler for Mod Tap keys also considers both the “nested press” and “rolling press” sequences like shown above as a modifier hold, not the tap action. If you do not enable `IGNORE_MOD_TAP_INTERRUPT`, the effect of `PERMISSIVE_HOLD` on Mod Tap keys would be limited to reducing the delay before the key events are made visible to the host. @@ -198,6 +277,18 @@ An example of a sequence which is affected by the “hold on other key press” - `LT(2, KC_A)` Up - `KC_L` Up +``` + TAPPING_TERM + +---------------------------|--------+ + | +-------------+ | | + | | LT(2, KC_A) | | | + | +-------------+ | | + | +--------------+ | | + | | KC_L | | | + | +--------------+ | | + +---------------------------|--------+ +``` + Normally, if you do all this within the `TAPPING_TERM` (default: 200ms), this will be registered as `al` by the firmware and host system. With the `HOLD_ON_OTHER_KEY_PRESS` option enabled, the Layer Tap key is considered as a layer switch if another key is pressed, and the above sequence would be registered as `KC_RGHT` (the mapping of `L` on layer 2). ?> The `HOLD_ON_OTHER_KEY_PRESS` option also affects Mod Tap keys, but this may not be noticeable if you do not also enable the `IGNORE_MOD_TAP_INTERRUPT` option for those keys, because the default handler for Mod Tap keys also considers the “rolling press” sequence like shown above as a modifier hold, not the tap action. If you do not enable `IGNORE_MOD_TAP_INTERRUPT`, the effect of `HOLD_ON_OTHER_KEY_PRESS` on Mod Tap keys would be limited to reducing the delay before the key events are made visible to the host. @@ -245,6 +336,18 @@ An example of a sequence which will be affected by the `IGNORE_MOD_TAP_INTERRUPT - `SFT_T(KC_A)` Up - `KC_X` Up +``` + TAPPING_TERM + +---------------------------|--------+ + | +-------------+ | | + | | SFT_T(KC_A) | | | + | +-------------+ | | + | +--------------+ | | + | | KC_X | | | + | +--------------+ | | + +---------------------------|--------+ +``` + Normally, this would send a capital `X` (`SHIFT`+`x`), even if the sequence is performed faster than the `TAPPING_TERM`. However, if the `IGNORE_MOD_TAP_INTERRUPT` option is enabled, the `SFT_T(KC_A)` key must be held longer than the `TAPPING_TERM` to register the hold action. A quick tap will output `ax` in this case, while a hold will still output a capital `X` (`SHIFT`+`x`). However, if the `HOLD_ON_OTHER_KEY_PRESS` option is enabled in addition to `IGNORE_MOD_TAP_INTERRUPT`, the above sequence will again send a capital `X` (`SHIFT`+`x`) even if performed faster that the `TAPPING_TERM`. The difference from the default configuration is that by default the host will receive the key events only after the `SFT_T(KC_A)` key is released, but with the `HOLD_ON_OTHER_KEY_PRESS` option the host will start receiving key events when the `KC_X` key is pressed. @@ -327,6 +430,18 @@ Holding and releasing a dual function key without pressing another key will resu For instance, holding and releasing `LT(2, KC_SPC)` without hitting another key will result in nothing happening. With this enabled, it will send `KC_SPC` instead. +``` + TAPPING_TERM + +-----------------|------------------+ + | +---------------|-------+ | + | | LT(2, KC_SPC) | | | + | +---------------|-------+ | + | | | + | | | + | | | + +-----------------|------------------+ +``` + For more granular control of this feature, you can add the following to your `config.h`: ```c From b75f6691a15a78b9c200a88e28792974ca2f9461 Mon Sep 17 00:00:00 2001 From: Erovia Date: Thu, 10 Mar 2022 21:33:41 +0000 Subject: [PATCH 086/699] CLI: Fix 'cd' subcommand on Windows (#16610) The 'cd' subcommand was failing as the current shell's Windows path was mangled while milc processed it. Using 'subprocess' directly avoids this issue and an extra layer of subshell. --- lib/python/qmk/cli/cd.py | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/lib/python/qmk/cli/cd.py b/lib/python/qmk/cli/cd.py index c62c3f56c6..ef03011f1f 100755 --- a/lib/python/qmk/cli/cd.py +++ b/lib/python/qmk/cli/cd.py @@ -2,6 +2,7 @@ """ import sys import os +import subprocess from milc import cli @@ -41,6 +42,6 @@ def cd(cli): # Set the prompt for the new shell qmk_env['MSYS2_PS1'] = qmk_env['PS1'] # Start the new subshell - cli.run([os.environ.get('SHELL', '/usr/bin/bash')], env=qmk_env) + subprocess.run([os.environ.get('SHELL', '/usr/bin/bash')], env=qmk_env) else: cli.log.info("Already within qmk_firmware directory.") From ee71362f99d1356c8dc48fb98d53c88300a087f8 Mon Sep 17 00:00:00 2001 From: Rocco Meli Date: Thu, 10 Mar 2022 23:27:37 +0000 Subject: [PATCH 087/699] Personal user space and CRKBD R2G keymap (#15888) * r2g folder groundwork * Default mb keymap featuring mb logos * Migrate Oled to keyboard folder * Move rules configs to support config better * update readmes * Liscnece update * Update config and fix issues caused by redef errs * funciton name adjusts, define specific rgb modes * move default oled font to postconfig * update oled in line with develop merge * fix return value * Add some default rgb matrix defines * del ugfx * remove #include * create personal keymap for r2g * reduce firmware size * change keymap to follow physical layout * remove RGBlight config lines to make both sides work (@Dasky on MechboardsUK Discord) * strip down configuration, similar to crkbd/r2g:mb_via * remove wrong oled code overwriting the r2g one * broken code with RGB matrix (briks right side) * remove high max brightness limit * caps lock tap dance and RGB indicator for active caps lock * fix caps lock led on right side * add test macro * remove latex macro which is too slow * move caps lock tap dance to RALT and add space cadet shift * switch CTL with ALT in first layer * add tap dance for ESC/DEL * space cadet tap dance with caps lock; shift works by needs a short pause * add space cadet tap dance with caps lock on the right; shift works by needs a short pause and does not hold * make more keys transparent * enable auto shift and use logo on both oleds * add user oled logo, slows down linking considerably * oled name * add arrow keys in usual configuration and add linear configuration to symbol layer * add unicoede support * add accents * update to latest version * add colemak dh layer * report auto shift timeout * define layer name shorcuts correctly * disable VIA to enable more layers * enable NKRO * move some rules and unicode to user space * move oled and tap dances to user space * move tap dances fully out of keymap * expand unicode map * fix unicode code * revert changes to r2g, make it equal to merged code * revert changes to r2g, make it equal to merged code * clang-format userspace * clang-format config file * Update keyboards/crkbd/keymaps/rmeli/keymap.c * replace define with enum * add licenses --- keyboards/crkbd/keymaps/rmeli/config.h | 80 ++++++++++++++ keyboards/crkbd/keymaps/rmeli/keymap.c | 131 +++++++++++++++++++++++ keyboards/crkbd/keymaps/rmeli/rules.mk | 12 +++ users/rmeli/keyrecords/tap_dances.c | 139 +++++++++++++++++++++++++ users/rmeli/keyrecords/tap_dances.h | 70 +++++++++++++ users/rmeli/keyrecords/unicode.h | 85 +++++++++++++++ users/rmeli/oled/oled.c | 96 +++++++++++++++++ users/rmeli/oled/oled.h | 26 +++++ users/rmeli/readme.md | 14 +++ users/rmeli/rmeli.h | 28 +++++ users/rmeli/rules.mk | 20 ++++ 11 files changed, 701 insertions(+) create mode 100644 keyboards/crkbd/keymaps/rmeli/config.h create mode 100644 keyboards/crkbd/keymaps/rmeli/keymap.c create mode 100644 keyboards/crkbd/keymaps/rmeli/rules.mk create mode 100644 users/rmeli/keyrecords/tap_dances.c create mode 100644 users/rmeli/keyrecords/tap_dances.h create mode 100644 users/rmeli/keyrecords/unicode.h create mode 100644 users/rmeli/oled/oled.c create mode 100644 users/rmeli/oled/oled.h create mode 100644 users/rmeli/readme.md create mode 100644 users/rmeli/rmeli.h create mode 100644 users/rmeli/rules.mk diff --git a/keyboards/crkbd/keymaps/rmeli/config.h b/keyboards/crkbd/keymaps/rmeli/config.h new file mode 100644 index 0000000000..36fb755d00 --- /dev/null +++ b/keyboards/crkbd/keymaps/rmeli/config.h @@ -0,0 +1,80 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2021 Rocco Meli <@RMeli> + +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 . +*/ + +#pragma once + +#define MASTER_LEFT // Left side is the master +#define SPLIT_LED_STATE_ENABLE + +#define TAPPING_TERM 200 + +#define UNICODE_SELECTED_MODES UC_MAC, UC_LNX + +#define AUTO_SHIFT_REPEAT + +#ifdef RGBLIGHT_ENABLE +# define RGBLIGHT_LIMIT_VAL 120 +# define RGBLIGHT_HUE_STEP 10 +# define RGBLIGHT_SAT_STEP 17 +# define RGBLIGHT_VAL_STEP 17 +#endif + +#ifdef RGB_MATRIX_ENABLE +// RGB matrix options +# define RGB_MATRIX_KEYPRESSES // enable keypress effects +# define RGB_MATRIX_LED_FLUSH_LIMIT 16 +# define RGB_DISABLE_WHEN_USB_SUSPENDED +// Disable unwanted R2G effects (from r2g/config.h) +# undef ENABLE_RGB_MATRIX_ALPHAS_MODS +# undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# undef ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# undef ENABLE_RGB_MATRIX_BREATHING +# undef ENABLE_RGB_MATRIX_BAND_SAT +# undef ENABLE_RGB_MATRIX_BAND_VAL +# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# undef ENABLE_RGB_MATRIX_CYCLE_ALL +# undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# undef ENABLE_RGB_MATRIX_RAINDROPS +# undef ENABLE_RGB_MATRIX_HUE_BREATHING +# undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL +//# undef ENABLE_RGB_MATRIX_TYPING_HEATMAP +# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE +# undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# undef ENABLE_RGB_MATRIX_SPLASH +# undef ENABLE_RGB_MATRIX_SOLID_SPLASH +// Enable effects +# define ENABLE_RGB_MATRIX_SOLID_COLOR +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +// Default effect +# define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR +# define RGB_MATRIX_STARTUP_HUE 10 +# define RGB_MATRIX_STARTUP_SAT 255 +# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +#endif + +// https://github.com/qmk/qmk_firmware/blob/develop/docs/squeezing_avr.md +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE +#define NO_MUSIC_MODE +#define LAYER_STATE_8BIT // Limit to 8 layers diff --git a/keyboards/crkbd/keymaps/rmeli/keymap.c b/keyboards/crkbd/keymaps/rmeli/keymap.c new file mode 100644 index 0000000000..f7901d1cfd --- /dev/null +++ b/keyboards/crkbd/keymaps/rmeli/keymap.c @@ -0,0 +1,131 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> +Copyright 2021 Rocco Meli <@RMeli> + +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 . +*/ + +#include QMK_KEYBOARD_H + +#include "rmeli.h" + +// + -------------------- + +// + RGB MATRIX CALLBACKS | +// + -------------------- + + +// LED numbers: +// https://github.com/foostan/crkbd/blob/main/corne-classic/doc/buildguide_en.md + +// Change LED color to red when CAPS LOCK is active +void rgb_matrix_indicators_user(void) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(26, 255, 0, 0); + // Only works with SPLIT_LED_STATE_ENABLE + rgb_matrix_set_color(53, 255, 0, 0); + } +} + +// + ---- + +// + OLED | +// + ---- + + +bool oled_task_user(void) { + if (is_keyboard_master()) { + oled_render_rocco(); + } else { + oled_render_meli(); + } + return false; +} + +// + ------- + +// + KEY MAP | +// + ------- + + +// Layer names +enum layer_names { + _QWERTY, + _COLEMAK_DH, + _DWN, + _UP, + _CONFIG, +}; + +// Layer names shortcuts +#define _QWY 0 +#define _CMK 1 +#define _CFG 4 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_split_3x6_3( + //|-----------------------------------------------------| |-----------------------------------------------------| + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + TD_ED, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + TD_LSPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, TD_RSPC, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI,MO(_DWN), KC_SPC, KC_ENT,MO(_UP), KC_RCTL + //|--------------------------| |--------------------------| + ), + + [_COLEMAK_DH] = LAYOUT_split_3x6_3( + //|-----------------------------------------------------| |-----------------------------------------------------| + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_SCLN, KC_P, KC_BSPC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + TD_ED, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + TD_LSPC, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, TD_RSPC, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI,MO(_DWN), KC_SPC, KC_ENT,MO(_UP), KC_RCTL + //|--------------------------| |--------------------------| + ), + + [_DWN] = LAYOUT_split_3x6_3( + //|-----------------------------------------------------| |-----------------------------------------------------| + _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, A_GRV, E_GRV, I_GRV, O_GRV, U_GRV, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, KC_PGUP, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, A_UML, E_ACT, I_CIR, O_UML, U_UML, XXXXXXX, KC_LEFT, KC_DOWN,KC_RIGHT, KC_PGDN, _______, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + KC_LGUI, _______, _______, _______,MO(_CFG), _______ + //|--------------------------| |--------------------------| + ), + + [_UP] = LAYOUT_split_3x6_3( + //|-----------------------------------------------------| |-----------------------------------------------------| + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_TILD, + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______,MO(_CFG), _______, _______, _______, _______ + //|--------------------------| |--------------------------| + ), + + [_CONFIG] = LAYOUT_split_3x6_3( + //|-----------------------------------------------------| |-----------------------------------------------------| + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, UC_MOD, KC_ASUP, NK_ON, XXXXXXX, XXXXXXX,DF(_QWY), + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, XXXXXXX, KC_ASTG, NK_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX,RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, UC_RMOD, KC_ASDN, NK_OFF, XXXXXXX, XXXXXXX,DF(_CMK), + //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //|--------------------------| |--------------------------| + ) +}; \ No newline at end of file diff --git a/keyboards/crkbd/keymaps/rmeli/rules.mk b/keyboards/crkbd/keymaps/rmeli/rules.mk new file mode 100644 index 0000000000..8e9dbbf8cf --- /dev/null +++ b/keyboards/crkbd/keymaps/rmeli/rules.mk @@ -0,0 +1,12 @@ +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 + +TAP_DANCE_ENABLE = yes +AUTO_SHIFT_ENABLE = yes + +UNICODEMAP_ENABLE = yes + +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = yes + +NKRO_ENABLE = yes diff --git a/users/rmeli/keyrecords/tap_dances.c b/users/rmeli/keyrecords/tap_dances.c new file mode 100644 index 0000000000..3b38bf4a33 --- /dev/null +++ b/users/rmeli/keyrecords/tap_dances.c @@ -0,0 +1,139 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#include "keyrecords/tap_dances.h" + +// + ---------- + +// + TAP DANCES | +// + ---------- + + +// Tap dances definitions +// Need to needs to be defined in a .c file to avoid a linker error (multiple definitions) +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_LSPO_CAPS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, LSPO_CAPS_finished, LSPO_CAPS_reset), + [TD_RSPC_CAPS] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, RSPC_CAPS_finished, RSPC_CAPS_reset), + [TD_ESC_DEL] = ACTION_TAP_DANCE_DOUBLE(KC_ESC, KC_DEL), +}; + +// + ------ + +// + DANCES | +// + ------ + + +// https://github.com/qmk/qmk_firmware/blob/9294258c02d3e025e01935a06c4d9f1997535bda/users/gordon/gordon.c#L112-L135 +td_state_t hold_cur_dance(qk_tap_dance_state_t *state) { + if (state->count == 1) { + if (state->interrupted) { + if (!state->pressed) + return TD_SINGLE_TAP; + else + return TD_SINGLE_HOLD; + } else { + if (!state->pressed) + return TD_SINGLE_TAP; + else + return TD_SINGLE_HOLD; + } + } else if (state->count == 2) { + if (state->pressed) + return TD_NONE; + else + return TD_DOUBLE_TAP; + } else + return TD_NONE; +} + +// + ------------------------------------------------ + +// + LEFT SHIFT PARENTHESIS OPEN (LSPO) AND CAPS LOCK | +// + ------------------------------------------------ + + +// Create an instance of 'td_tap_t' for the 'LSPO_CAPS' tap dance. +static td_tap_t LSPO_CAPS_state = {.is_press_action = true, .state = TD_NONE}; + +void LSPO_CAPS_finished(qk_tap_dance_state_t *state, void *user_data) { + LSPO_CAPS_state.state = hold_cur_dance(state); + switch (LSPO_CAPS_state.state) { + case TD_SINGLE_TAP: + register_code16(KC_LPRN); + break; + case TD_SINGLE_HOLD: + register_code16(KC_LSFT); + break; + case TD_DOUBLE_TAP: + register_code16(KC_CAPS); + break; + case TD_NONE: + break; + } +} + +void LSPO_CAPS_reset(qk_tap_dance_state_t *state, void *user_data) { + switch (LSPO_CAPS_state.state) { + case TD_SINGLE_TAP: + unregister_code16(KC_LPRN); + break; + case TD_SINGLE_HOLD: + unregister_code16(KC_LSFT); + break; + case TD_DOUBLE_TAP: + unregister_code16(KC_CAPS); + break; + case TD_NONE: + break; + } + LSPO_CAPS_state.state = TD_NONE; +} + +// + -------------------------------------------------- + +// + RIGHT SHIFT PARENTHESIS CLOSE (RSPC) AND CAPS LOCK | +// + -------------------------------------------------- + + +// Create an instance of 'td_tap_t' for the 'RSPC_CAPS' tap dance. +static td_tap_t RSPC_CAPS_state = {.is_press_action = true, .state = TD_NONE}; + +void RSPC_CAPS_finished(qk_tap_dance_state_t *state, void *user_data) { + RSPC_CAPS_state.state = hold_cur_dance(state); + switch (RSPC_CAPS_state.state) { + case TD_SINGLE_TAP: + register_code16(KC_RPRN); + break; + case TD_SINGLE_HOLD: + register_code16(KC_RSFT); + break; + case TD_DOUBLE_TAP: + register_code16(KC_CAPS); + break; + case TD_NONE: + break; + } +} + +void RSPC_CAPS_reset(qk_tap_dance_state_t *state, void *user_data) { + switch (RSPC_CAPS_state.state) { + case TD_SINGLE_TAP: + unregister_code16(KC_RPRN); + break; + case TD_SINGLE_HOLD: + unregister_code16(KC_RSFT); + break; + case TD_DOUBLE_TAP: + unregister_code16(KC_CAPS); + break; + case TD_NONE: + break; + } + RSPC_CAPS_state.state = TD_NONE; +} diff --git a/users/rmeli/keyrecords/tap_dances.h b/users/rmeli/keyrecords/tap_dances.h new file mode 100644 index 0000000000..fa749a17f4 --- /dev/null +++ b/users/rmeli/keyrecords/tap_dances.h @@ -0,0 +1,70 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#pragma once +#include QMK_KEYBOARD_H + +// https://beta.docs.qmk.fm/using-qmk/software-features/feature_tap_dance#example-4-quad-function-tap-dance-id-example-4 + +// + ---------- + +// + TAP DANCES | +// + ---------- + + +// Tap dance enums +enum { + TD_LSPO_CAPS, // Tap once for (, hold once for LSFT, tap twice for CAPS + TD_RSPC_CAPS, // Tap once for ), hold once for RSFT, tap twice for CAPS + TD_ESC_DEL, // Tap once for KC_ESC, twice for KC_DEL +}; + +// Rename tap dances for keymap with shortcuts +#define TD_LSPC TD(TD_LSPO_CAPS) +#define TD_RSPC TD(TD_RSPC_CAPS) +#define TD_ED TD(TD_ESC_DEL) + +// + ----------- + +// + KEY PRESSES | +// + ----------- + + +// Different types of key presses +typedef enum { + TD_NONE, + TD_SINGLE_TAP, + TD_SINGLE_HOLD, + TD_DOUBLE_TAP, +} td_state_t; + +// Key press state +typedef struct { + bool is_press_action; + td_state_t state; +} td_tap_t; + +// + --------- + +// + FUNCTIONS | +// + --------- + + +// Tap dance for fast modifiers; favors being held over being tapped. +td_state_t hold_cur_dance(qk_tap_dance_state_t *state); + +// Left Shift Parenthesis Open (LSPO) and Caps Lock (CAPS) on DOUBLE_TAP +void LSPO_CAPS_finished(qk_tap_dance_state_t *state, void *user_data); +void LSPO_CAPS_reset(qk_tap_dance_state_t *state, void *user_data); + +// Right Shift Parenthesis Close (RSPC) and Caps Lock (CAPS) on DOUBLE_TAP +void RSPC_CAPS_finished(qk_tap_dance_state_t *state, void *user_data); +void RSPC_CAPS_reset(qk_tap_dance_state_t *state, void *user_data); diff --git a/users/rmeli/keyrecords/unicode.h b/users/rmeli/keyrecords/unicode.h new file mode 100644 index 0000000000..8e0c02d278 --- /dev/null +++ b/users/rmeli/keyrecords/unicode.h @@ -0,0 +1,85 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#pragma once +#include QMK_KEYBOARD_H + +// Needs to be active on the OS side as well +// https://docs.qmk.fm/#/feature_unicode?id=input-modes + +enum unicode_names { + aGRV, + AGRV, + aUML, + AUML, + eGRV, + EGRV, + eACT, + EACT, + iGRV, + IGRV, + iCIR, + ICIR, + oGRV, + OGRV, + oUML, + OUML, + uGRV, + UGRV, + uUML, + UUML, +}; + +const uint32_t PROGMEM unicode_map[] = { + // KC_A + [aGRV] = 0x00E0, // à + [AGRV] = 0x00C0, // À + [aUML] = 0x00E4, // ä + [AUML] = 0x00C4, // Ä + // KC_E + [eGRV] = 0x00E8, // è + [EGRV] = 0x00C8, // È + [eACT] = 0x00E9, // é + [EACT] = 0x00C9, // É + // KC_I + [iGRV] = 0x00EC, // ì + [IGRV] = 0x00CC, // Ì + [iCIR] = 0x00EE, // î + [ICIR] = 0x00CE, // Î + // KC_O + [oGRV] = 0x00F2, // ò + [OGRV] = 0x00D2, // Ò + [oUML] = 0x00F6, // ö + [OUML] = 0x00D6, // Ö + // KC_U + [uGRV] = 0x00F9, // ù + [UGRV] = 0x00D9, // Ù + [uUML] = 0x00FC, // ü + [UUML] = 0x00DC, // Ü +}; + +// Accents +#define A_GRV XP(aGRV, AGRV) +#define A_UML XP(aUML, AUML) +#define E_GRV XP(eGRV, EGRV) +#define E_ACT XP(eACT, EACT) +#define I_GRV XP(iGRV, IGRV) +#define I_CIR XP(iCIR, ICIR) +#define O_GRV XP(oGRV, OGRV) +#define O_UML XP(oUML, OUML) +#define U_GRV XP(uGRV, UGRV) +#define U_UML XP(uUML, UUML) diff --git a/users/rmeli/oled/oled.c b/users/rmeli/oled/oled.c new file mode 100644 index 0000000000..d6d4b2c43c --- /dev/null +++ b/users/rmeli/oled/oled.c @@ -0,0 +1,96 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#include "oled/oled.h" + +void oled_render_rocco(void) { + static const char PROGMEM rocco[] = { + // 'rocco', 128x32px + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf8, 0xf8, 0xf8, 0x18, + 0x18, 0x18, 0x18, 0x18, 0x38, 0x38, 0x78, 0xf0, 0xe0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0xc0, 0xe0, 0xff, 0x7f, 0x3f, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x80, 0xe0, 0xf0, 0x78, 0x38, 0x1c, 0x1c, 0x1c, 0x0c, 0x1c, 0x1c, 0x1c, 0x38, 0xf8, 0xf0, + 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xe0, 0xf0, 0x78, 0x38, 0x1c, 0x1c, 0x1c, + 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0xf8, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, + 0xf0, 0xf0, 0x38, 0x3c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0xf8, 0xf8, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, 0x38, 0x38, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, + 0x38, 0x78, 0xf0, 0xf0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0x03, + 0x03, 0x03, 0x03, 0x03, 0x0f, 0x3f, 0xff, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x18, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0xff, 0x18, 0x00, 0x00, 0x00, 0x00, 0x7e, 0xff, 0xff, 0xc1, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x81, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x1f, 0x1f, 0x1c, 0x10, 0x00, 0x00, 0x00, + 0x00, 0x01, 0x03, 0x07, 0x0f, 0x1e, 0x1c, 0x18, 0x18, 0x38, 0x18, 0x18, 0x1c, 0x1c, 0x0f, 0x07, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x07, 0x0f, 0x0f, 0x1e, 0x1c, 0x1c, 0x1c, + 0x38, 0x38, 0x18, 0x1c, 0x1c, 0x1c, 0x0e, 0x0e, 0x04, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, + 0x07, 0x0f, 0x0e, 0x1e, 0x1c, 0x1c, 0x18, 0x38, 0x18, 0x1c, 0x1c, 0x1c, 0x1c, 0x0e, 0x0e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, 0x0e, 0x1c, 0x1c, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x1c, 0x0e, 0x0f, 0x07, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }; + oled_write_raw_P(rocco, sizeof(rocco)); +} + +void oled_render_meli(void) { + static const char PROGMEM meli[] = { + // 'meli', 128x32px + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xf8, 0xf8, 0xf8, 0xe0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xc0, 0xf0, 0xf8, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x38, 0xf8, 0xf8, 0xf8, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x30, 0x78, 0x78, 0x78, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x01, 0x07, 0x1f, 0x3f, 0xfc, 0xf8, 0xf0, 0xf8, + 0x7e, 0x1f, 0x07, 0x03, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xf0, 0xf0, + 0x38, 0x18, 0x1c, 0x1c, 0x1c, 0x0c, 0x1c, 0x1c, 0x1c, 0x38, 0xf8, 0xf0, 0xc0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x1c, 0x1c, 0x1c, 0x1c, 0x1c, + 0x1c, 0xfc, 0xfc, 0xfc, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x03, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x8c, + 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0c, 0x0f, 0x0f, 0x0f, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x1f, 0x1f, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0x07, 0x0f, + 0x0e, 0x1c, 0x1c, 0x18, 0x18, 0x38, 0x18, 0x18, 0x1c, 0x1c, 0x0c, 0x0e, 0x06, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x1f, 0x1c, 0x18, 0x38, 0x38, 0x18, + 0x1c, 0x1c, 0x0c, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, + 0x18, 0x1f, 0x1f, 0x1f, 0x18, 0x18, 0x18, 0x18, 0x18, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + }; + oled_write_raw_P(meli, sizeof(meli)); +} diff --git a/users/rmeli/oled/oled.h b/users/rmeli/oled/oled.h new file mode 100644 index 0000000000..b91fe2d76b --- /dev/null +++ b/users/rmeli/oled/oled.h @@ -0,0 +1,26 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#pragma once +#include QMK_KEYBOARD_H + +// + --------- + +// + RENDERERS | +// + --------- + + +void oled_render_rocco(void); +void oled_render_meli(void); diff --git a/users/rmeli/readme.md b/users/rmeli/readme.md new file mode 100644 index 0000000000..ed5561dea7 --- /dev/null +++ b/users/rmeli/readme.md @@ -0,0 +1,14 @@ +Copyright 2022 Rocco Meli @RMeli + +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 . \ No newline at end of file diff --git a/users/rmeli/rmeli.h b/users/rmeli/rmeli.h new file mode 100644 index 0000000000..e6f51d4908 --- /dev/null +++ b/users/rmeli/rmeli.h @@ -0,0 +1,28 @@ +/* +Copyright 2021-2022 Rocco Meli <@RMeli> + +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 . +*/ + +#ifdef UNICODEMAP_ENABLE +# include "keyrecords/unicode.h" +#endif + +#ifdef OLED_ENABLE +# include "oled/oled.h" +#endif + +#ifdef TAP_DANCE_ENABLE +# include "keyrecords/tap_dances.h" +#endif \ No newline at end of file diff --git a/users/rmeli/rules.mk b/users/rmeli/rules.mk new file mode 100644 index 0000000000..293685e08b --- /dev/null +++ b/users/rmeli/rules.mk @@ -0,0 +1,20 @@ +# https://github.com/qmk/qmk_firmware/blob/develop/docs/squeezing_avr.md +CONSOLE_ENABLE = no +COMMAND_ENABLE = no # Needed for Space Cadet Shift +MOUSEKEY_ENABLE = no +SPACE_CADET_ENABLE = no # Implemented with tap dance +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no +MUSIC_ENABLE = no + +# VIA only support 4 layers by default +# Use "#define DYNAMIC_KEYMAP_LAYER_COUNT" in config.h to change the limit +VIA_ENABLE = no + +ifeq ($(strip $(OLED_ENABLE)), yes) + SRC += $(USER_PATH)/oled/oled.c +endif + +ifeq ($(strip $(TAP_DANCE_ENABLE)), yes) + SRC += $(USER_PATH)/keyrecords/tap_dances.c +endif \ No newline at end of file From 7e6f1c9e08874933618bf97c0e338fce44aa2713 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 10 Mar 2022 23:53:16 +0000 Subject: [PATCH 088/699] Force platform pin defs to be included (#16611) * Force platform pin defs to be included * Always grab first header --- platforms/arm_atsam/{pin_defs.h => _pin_defs.h} | 0 platforms/avr/{pin_defs.h => _pin_defs.h} | 0 platforms/chibios/{pin_defs.h => _pin_defs.h} | 0 platforms/pin_defs.h | 4 ++-- 4 files changed, 2 insertions(+), 2 deletions(-) rename platforms/arm_atsam/{pin_defs.h => _pin_defs.h} (100%) rename platforms/avr/{pin_defs.h => _pin_defs.h} (100%) rename platforms/chibios/{pin_defs.h => _pin_defs.h} (100%) diff --git a/platforms/arm_atsam/pin_defs.h b/platforms/arm_atsam/_pin_defs.h similarity index 100% rename from platforms/arm_atsam/pin_defs.h rename to platforms/arm_atsam/_pin_defs.h diff --git a/platforms/avr/pin_defs.h b/platforms/avr/_pin_defs.h similarity index 100% rename from platforms/avr/pin_defs.h rename to platforms/avr/_pin_defs.h diff --git a/platforms/chibios/pin_defs.h b/platforms/chibios/_pin_defs.h similarity index 100% rename from platforms/chibios/pin_defs.h rename to platforms/chibios/_pin_defs.h diff --git a/platforms/pin_defs.h b/platforms/pin_defs.h index ea730138f2..341fe89b6e 100644 --- a/platforms/pin_defs.h +++ b/platforms/pin_defs.h @@ -18,6 +18,6 @@ // useful for direct pin mapping #define NO_PIN (pin_t)(~0) -#if __has_include_next("pin_defs.h") -# include_next "pin_defs.h" /* Include the platforms pin_defs.h */ +#if __has_include("_pin_defs.h") +# include "_pin_defs.h" /* Include the platforms pin defs */ #endif From 003231aaf25facf7437caa32f3e8bc2a2e9cbe7d Mon Sep 17 00:00:00 2001 From: mechlovin <57231893+mechlovin@users.noreply.github.com> Date: Fri, 11 Mar 2022 12:02:40 +0700 Subject: [PATCH 089/699] [Keyboard] Add Mechlovin Infinity87.5 PCB (#15163) * add infinity87.5 * Update readme.md * Update keyboards/mechlovin/infinity875/config.h * Update keyboards/mechlovin/infinity875/info.json * Update keyboards/mechlovin/infinity875/rules.mk * Update keyboards/mechlovin/infinity875/rules.mk * Update keyboards/mechlovin/infinity875/config.h * Enable RGB matrix effect * update keymap default * undef RGB matrix effect * Update keyboards/mechlovin/infinity875/rules.mk * Update keyboards/mechlovin/infinity875/rules.mk * Update keyboards/mechlovin/infinity875/rules.mk * Update keyboards/mechlovin/infinity875/readme.md * Update keyboards/mechlovin/infinity875/infinity875.h * Update keyboards/mechlovin/infinity875/infinity875.h * Update keyboards/mechlovin/infinity875/info.json * Update keyboards/mechlovin/infinity875/infinity875.h * Update keyboards/mechlovin/infinity875/infinity875.h * Update keyboards/mechlovin/infinity875/info.json * Update keyboards/mechlovin/infinity875/info.json * Update keyboards/mechlovin/infinity875/info.json --- keyboards/mechlovin/infinity875/config.h | 64 ++ keyboards/mechlovin/infinity875/infinity875.c | 45 ++ keyboards/mechlovin/infinity875/infinity875.h | 99 +++ keyboards/mechlovin/infinity875/info.json | 23 + .../infinity875/keymaps/default/keymap.c | 35 + .../infinity875/keymaps/default/readme.md | 1 + .../keymaps/default/rgb_matrix_user.inc | 764 ++++++++++++++++++ .../infinity875/keymaps/default/rules.mk | 1 + .../infinity875/keymaps/via/config.h | 24 + .../infinity875/keymaps/via/keymap.c | 51 ++ .../infinity875/keymaps/via/readme.md | 1 + .../keymaps/via/rgb_matrix_user.inc | 764 ++++++++++++++++++ .../infinity875/keymaps/via/rules.mk | 3 + keyboards/mechlovin/infinity875/matrix.c | 388 +++++++++ keyboards/mechlovin/infinity875/readme.md | 24 + keyboards/mechlovin/infinity875/rules.mk | 23 + 16 files changed, 2310 insertions(+) create mode 100644 keyboards/mechlovin/infinity875/config.h create mode 100644 keyboards/mechlovin/infinity875/infinity875.c create mode 100644 keyboards/mechlovin/infinity875/infinity875.h create mode 100644 keyboards/mechlovin/infinity875/info.json create mode 100644 keyboards/mechlovin/infinity875/keymaps/default/keymap.c create mode 100644 keyboards/mechlovin/infinity875/keymaps/default/readme.md create mode 100644 keyboards/mechlovin/infinity875/keymaps/default/rgb_matrix_user.inc create mode 100644 keyboards/mechlovin/infinity875/keymaps/default/rules.mk create mode 100644 keyboards/mechlovin/infinity875/keymaps/via/config.h create mode 100644 keyboards/mechlovin/infinity875/keymaps/via/keymap.c create mode 100644 keyboards/mechlovin/infinity875/keymaps/via/readme.md create mode 100644 keyboards/mechlovin/infinity875/keymaps/via/rgb_matrix_user.inc create mode 100644 keyboards/mechlovin/infinity875/keymaps/via/rules.mk create mode 100644 keyboards/mechlovin/infinity875/matrix.c create mode 100644 keyboards/mechlovin/infinity875/readme.md create mode 100644 keyboards/mechlovin/infinity875/rules.mk diff --git a/keyboards/mechlovin/infinity875/config.h b/keyboards/mechlovin/infinity875/config.h new file mode 100644 index 0000000000..6b6a8147f6 --- /dev/null +++ b/keyboards/mechlovin/infinity875/config.h @@ -0,0 +1,64 @@ +/* +Copyright 2021 Mechlovin' Studio + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4D4C // ML +#define PRODUCT_ID 0x0875 +#define DEVICE_VER 0x0001 +#define PRODUCT Infinity87.5 +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + + +/* + * 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 { D5, D2, D4, D3, D0, D1 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION ROW2COL + +#define LED_CAPS_LOCK_PIN D6 +#define LED_SCROLL_LOCK_PIN B4 +#define LED_PIN_ON_STATE 1 + +#ifdef RGB_MATRIX_ENABLE +#define RGB_DI_PIN E2 +#define DRIVER_LED_TOTAL 42 +#define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects +#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +#define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 220 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 +#endif + + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechlovin/infinity875/infinity875.c b/keyboards/mechlovin/infinity875/infinity875.c new file mode 100644 index 0000000000..43606b6c92 --- /dev/null +++ b/keyboards/mechlovin/infinity875/infinity875.c @@ -0,0 +1,45 @@ +/* Copyright 2021 Mechlovin' Studio + * + * 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 . + */ + +#include "infinity875.h" +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + //Key Matrix to LED Index + {0, 1, 2, 3, 4, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17}, + {NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED}, + {NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED}, + {NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED}, + {NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED}, + {NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED} +}, { + //LED Index to Physical Positon + {0,0}, {14,0}, {28,0}, {42,0}, {56,0}, {67,0}, {70,0}, {84,0}, {98,0}, {112,0}, {126,0}, {140,0}, {154,0}, {168,0}, {182,0}, {196,0}, {210,0}, {224,0}, + {224,13}, {196,13}, {182,13}, {154,13}, {112,13}, {84,13}, {56,13}, {28,13}, {0,13}, + {0,25}, {0,38}, + {0,51}, {0,64}, + {28,64}, {56,64}, + {84,64}, {112,64}, {154,64}, {182,64}, {196,64}, {224,64}, {224,51}, {224,38}, {224,25}, +//{244,64}, {196,64}, {182,64}, {154,64}, {112,64}, {84,64}, {56,64}, {28,64}, {0,64}, +}, { + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 1, + 1, 1, + 1, 1, + 1, 1, 1, 1, 1, 1, 1, 1, 1, +} }; +#endif + diff --git a/keyboards/mechlovin/infinity875/infinity875.h b/keyboards/mechlovin/infinity875/infinity875.h new file mode 100644 index 0000000000..2febe0824c --- /dev/null +++ b/keyboards/mechlovin/infinity875/infinity875.h @@ -0,0 +1,99 @@ +/* Copyright 2021 Mechlovin' Studio + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K3C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} + +#define LAYOUT_tkl_f13_ansi_split_bs_rshift( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K3C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ + { K40, KC_NO, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} + +#define LAYOUT_tkl_f13_iso_split_bs_rshift( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} + +#define LAYOUT_tkl_ansi_split_bs_rshift( \ + K00, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K3C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, KC_NO, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ + { K40, KC_NO, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} + +#define LAYOUT_tkl_iso_split_bs_rshift( \ + K00, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, KC_NO, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, KC_NO, KC_NO, KC_NO }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} diff --git a/keyboards/mechlovin/infinity875/info.json b/keyboards/mechlovin/infinity875/info.json new file mode 100644 index 0000000000..e24c0d1cc2 --- /dev/null +++ b/keyboards/mechlovin/infinity875/info.json @@ -0,0 +1,23 @@ +{ + "keyboard_name": "Infinity87.5", + "url": "", + "maintainer": "Mechlovin' Studio", + "layouts": { + "LAYOUT_tkl_ansi_split_bs_rshift": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":2, "y":0}, {"label":"0,2", "x":3, "y":0}, {"label":"0,3", "x":4, "y":0}, {"label":"0,4", "x":5, "y":0}, {"label":"0,5", "x":6.5, "y":0}, {"label":"0,6", "x":7.5, "y":0}, {"label":"0,7", "x":8.5, "y":0}, {"label":"0,8", "x":9.5, "y":0}, {"label":"0,9", "x":11, "y":0}, {"label":"0,10", "x":12, "y":0}, {"label":"0,11", "x":13, "y":0}, {"label":"0,12", "x":14, "y":0}, {"label":"0,14", "x":15.25, "y":0}, {"label":"0,15", "x":16.25, "y":0}, {"label":"0,16", "x":17.25, "y":0}, {"label":"1,0", "x":0, "y":1.25}, {"label":"1,1", "x":1, "y":1.25}, {"label":"1,2", "x":2, "y":1.25}, {"label":"1,3", "x":3, "y":1.25}, {"label":"1,4", "x":4, "y":1.25}, {"label":"1,5", "x":5, "y":1.25}, {"label":"1,6", "x":6, "y":1.25}, {"label":"1,7", "x":7, "y":1.25}, {"label":"1,8", "x":8, "y":1.25}, {"label":"1,9", "x":9, "y":1.25}, {"label":"1,10", "x":10, "y":1.25}, {"label":"1,11", "x":11, "y":1.25}, {"label":"1,12", "x":12, "y":1.25}, {"label":"1,13", "x":13, "y":1.25}, {"label":"2,13", "x":14, "y":1.25}, {"label":"1,14", "x":15.25, "y":1.25}, {"label":"1,15", "x":16.25, "y":1.25}, {"label":"1,16", "x":17.25, "y":1.25}, {"label":"2,0", "x":0, "y":2.25, "w":1.5}, {"label":"2,1", "x":1.5, "y":2.25}, {"label":"2,2", "x":2.5, "y":2.25}, {"label":"2,3", "x":3.5, "y":2.25}, {"label":"2,4", "x":4.5, "y":2.25}, {"label":"2,5", "x":5.5, "y":2.25}, {"label":"2,6", "x":6.5, "y":2.25}, {"label":"2,7", "x":7.5, "y":2.25}, {"label":"2,8", "x":8.5, "y":2.25}, {"label":"2,9", "x":9.5, "y":2.25}, {"label":"2,10", "x":10.5, "y":2.25}, {"label":"2,11", "x":11.5, "y":2.25}, {"label":"2,12", "x":12.5, "y":2.25}, {"label":"3,12", "x":13.5, "y":2.25, "w":1.5}, {"label":"2,14", "x":15.25, "y":2.25}, {"label":"2,15", "x":16.25, "y":2.25}, {"label":"2,16", "x":17.25, "y":2.25}, {"label":"3,0", "x":0, "y":3.25, "w":1.75}, {"label":"3,1", "x":1.75, "y":3.25}, {"label":"3,2", "x":2.75, "y":3.25}, {"label":"3,3", "x":3.75, "y":3.25}, {"label":"3,4", "x":4.75, "y":3.25}, {"label":"3,5", "x":5.75, "y":3.25}, {"label":"3,6", "x":6.75, "y":3.25}, {"label":"3,7", "x":7.75, "y":3.25}, {"label":"3,8", "x":8.75, "y":3.25}, {"label":"3,9", "x":9.75, "y":3.25}, {"label":"3,10", "x":10.75, "y":3.25}, {"label":"3,11", "x":11.75, "y":3.25}, {"label":"3,13", "x":12.75, "y":3.25, "w":2.25}, {"label":"4,0", "x":0, "y":4.25, "w":2.25}, {"label":"4,2", "x":2.25, "y":4.25}, {"label":"4,3", "x":3.25, "y":4.25}, {"label":"4,4", "x":4.25, "y":4.25}, {"label":"4,5", "x":5.25, "y":4.25}, {"label":"4,6", "x":6.25, "y":4.25}, {"label":"4,7", "x":7.25, "y":4.25}, {"label":"4,8", "x":8.25, "y":4.25}, {"label":"4,9", "x":9.25, "y":4.25}, {"label":"4,10", "x":10.25, "y":4.25}, {"label":"4,11", "x":11.25, "y":4.25}, {"label":"4,12", "x":12.25, "y":4.25}, {"label":"4,13", "x":13.25, "y":4.25, "w":1.75}, {"label":"4,15", "x":16.25, "y":4.25}, {"label":"5,0", "x":0, "y":5.25, "w":1.25}, {"label":"5,1", "x":1.25, "y":5.25, "w":1.25}, {"label":"5,2", "x":2.5, "y":5.25, "w":1.25}, {"label":"5,6", "x":3.75, "y":5.25, "w":6.25}, {"label":"5,10", "x":10, "y":5.25, "w":1.25}, {"label":"5,11", "x":11.25, "y":5.25, "w":1.25}, {"label":"5,12", "x":12.5, "y":5.25, "w":1.25}, {"label":"5,13", "x":13.75, "y":5.25, "w":1.25}, {"label":"5,14", "x":15.25, "y":5.25}, {"label":"5,15", "x":16.25, "y":5.25}, {"label":"5,16", "x":17.25, "y":5.25}] + }, + "LAYOUT_tkl_iso_split_bs_rshift": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":2, "y":0}, {"label":"0,2", "x":3, "y":0}, {"label":"0,3", "x":4, "y":0}, {"label":"0,4", "x":5, "y":0}, {"label":"0,5", "x":6.5, "y":0}, {"label":"0,6", "x":7.5, "y":0}, {"label":"0,7", "x":8.5, "y":0}, {"label":"0,8", "x":9.5, "y":0}, {"label":"0,9", "x":11, "y":0}, {"label":"0,10", "x":12, "y":0}, {"label":"0,11", "x":13, "y":0}, {"label":"0,12", "x":14, "y":0}, {"label":"0,14", "x":15.25, "y":0}, {"label":"0,15", "x":16.25, "y":0}, {"label":"0,16", "x":17.25, "y":0}, {"label":"1,0", "x":0, "y":1.25}, {"label":"1,1", "x":1, "y":1.25}, {"label":"1,2", "x":2, "y":1.25}, {"label":"1,3", "x":3, "y":1.25}, {"label":"1,4", "x":4, "y":1.25}, {"label":"1,5", "x":5, "y":1.25}, {"label":"1,6", "x":6, "y":1.25}, {"label":"1,7", "x":7, "y":1.25}, {"label":"1,8", "x":8, "y":1.25}, {"label":"1,9", "x":9, "y":1.25}, {"label":"1,10", "x":10, "y":1.25}, {"label":"1,11", "x":11, "y":1.25}, {"label":"1,12", "x":12, "y":1.25}, {"label":"1,13", "x":13, "y":1.25}, {"label":"2,13", "x":14, "y":1.25}, {"label":"1,14", "x":15.25, "y":1.25}, {"label":"1,15", "x":16.25, "y":1.25}, {"label":"1,16", "x":17.25, "y":1.25}, {"label":"2,0", "x":0, "y":2.25, "w":1.5}, {"label":"2,1", "x":1.5, "y":2.25}, {"label":"2,2", "x":2.5, "y":2.25}, {"label":"2,3", "x":3.5, "y":2.25}, {"label":"2,4", "x":4.5, "y":2.25}, {"label":"2,5", "x":5.5, "y":2.25}, {"label":"2,6", "x":6.5, "y":2.25}, {"label":"2,7", "x":7.5, "y":2.25}, {"label":"2,8", "x":8.5, "y":2.25}, {"label":"2,9", "x":9.5, "y":2.25}, {"label":"2,10", "x":10.5, "y":2.25}, {"label":"2,11", "x":11.5, "y":2.25}, {"label":"2,12", "x":12.5, "y":2.25}, {"label":"3,13", "x":13.75, "y":2.25, "w":1.25, "h":2}, {"label":"2,14", "x":15.25, "y":2.25}, {"label":"2,15", "x":16.25, "y":2.25}, {"label":"2,16", "x":17.25, "y":2.25}, {"label":"3,0", "x":0, "y":3.25, "w":1.75}, {"label":"3,1", "x":1.75, "y":3.25}, {"label":"3,2", "x":2.75, "y":3.25}, {"label":"3,3", "x":3.75, "y":3.25}, {"label":"3,4", "x":4.75, "y":3.25}, {"label":"3,5", "x":5.75, "y":3.25}, {"label":"3,6", "x":6.75, "y":3.25}, {"label":"3,7", "x":7.75, "y":3.25}, {"label":"3,8", "x":8.75, "y":3.25}, {"label":"3,9", "x":9.75, "y":3.25}, {"label":"3,10", "x":10.75, "y":3.25}, {"label":"3,11", "x":11.75, "y":3.25}, {"label":"3,12", "x":12.75, "y":3.25}, {"label":"4,0", "x":0, "y":4.25, "w":1.25}, {"label":"4,1", "x":1.25, "y":4.25}, {"label":"4,2", "x":2.25, "y":4.25}, {"label":"4,3", "x":3.25, "y":4.25}, {"label":"4,4", "x":4.25, "y":4.25}, {"label":"4,5", "x":5.25, "y":4.25}, {"label":"4,6", "x":6.25, "y":4.25}, {"label":"4,7", "x":7.25, "y":4.25}, {"label":"4,8", "x":8.25, "y":4.25}, {"label":"4,9", "x":9.25, "y":4.25}, {"label":"4,10", "x":10.25, "y":4.25}, {"label":"4,11", "x":11.25, "y":4.25}, {"label":"4,12", "x":12.25, "y":4.25}, {"label":"4,13", "x":13.25, "y":4.25, "w":1.75}, {"label":"4,15", "x":16.25, "y":4.25}, {"label":"5,0", "x":0, "y":5.25, "w":1.25}, {"label":"5,1", "x":1.25, "y":5.25, "w":1.25}, {"label":"5,2", "x":2.5, "y":5.25, "w":1.25}, {"label":"5,6", "x":3.75, "y":5.25, "w":6.25}, {"label":"5,10", "x":10, "y":5.25, "w":1.25}, {"label":"5,11", "x":11.25, "y":5.25, "w":1.25}, {"label":"5,12", "x":12.5, "y":5.25, "w":1.25}, {"label":"5,13", "x":13.75, "y":5.25, "w":1.25}, {"label":"5,14", "x":15.25, "y":5.25}, {"label":"5,15", "x":16.25, "y":5.25}, {"label":"5,16", "x":17.25, "y":5.25}] + }, + "LAYOUT_tkl_f13_ansi_split_bs_rshift": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1.25, "y":0}, {"label":"0,2", "x":2.25, "y":0}, {"label":"0,3", "x":3.25, "y":0}, {"label":"0,4", "x":4.25, "y":0}, {"label":"0,5", "x":5.5, "y":0}, {"label":"0,6", "x":6.5, "y":0}, {"label":"0,7", "x":7.5, "y":0}, {"label":"0,8", "x":8.5, "y":0}, {"label":"0,9", "x":9.75, "y":0}, {"label":"0,10", "x":10.75, "y":0}, {"label":"0,11", "x":11.75, "y":0}, {"label":"0,12", "x":12.75, "y":0}, {"label":"0,13", "x":14, "y":0}, {"label":"0,14", "x":15.25, "y":0}, {"label":"0,15", "x":16.25, "y":0}, {"label":"0,16", "x":17.25, "y":0}, {"label":"1,0", "x":0, "y":1.25}, {"label":"1,1", "x":1, "y":1.25}, {"label":"1,2", "x":2, "y":1.25}, {"label":"1,3", "x":3, "y":1.25}, {"label":"1,4", "x":4, "y":1.25}, {"label":"1,5", "x":5, "y":1.25}, {"label":"1,6", "x":6, "y":1.25}, {"label":"1,7", "x":7, "y":1.25}, {"label":"1,8", "x":8, "y":1.25}, {"label":"1,9", "x":9, "y":1.25}, {"label":"1,10", "x":10, "y":1.25}, {"label":"1,11", "x":11, "y":1.25}, {"label":"1,12", "x":12, "y":1.25}, {"label":"1,13", "x":13, "y":1.25}, {"label":"2,13", "x":14, "y":1.25}, {"label":"1,14", "x":15.25, "y":1.25}, {"label":"1,15", "x":16.25, "y":1.25}, {"label":"1,16", "x":17.25, "y":1.25}, {"label":"2,0", "x":0, "y":2.25, "w":1.5}, {"label":"2,1", "x":1.5, "y":2.25}, {"label":"2,2", "x":2.5, "y":2.25}, {"label":"2,3", "x":3.5, "y":2.25}, {"label":"2,4", "x":4.5, "y":2.25}, {"label":"2,5", "x":5.5, "y":2.25}, {"label":"2,6", "x":6.5, "y":2.25}, {"label":"2,7", "x":7.5, "y":2.25}, {"label":"2,8", "x":8.5, "y":2.25}, {"label":"2,9", "x":9.5, "y":2.25}, {"label":"2,10", "x":10.5, "y":2.25}, {"label":"2,11", "x":11.5, "y":2.25}, {"label":"2,12", "x":12.5, "y":2.25}, {"label":"3,12", "x":13.5, "y":2.25, "w":1.5}, {"label":"2,14", "x":15.25, "y":2.25}, {"label":"2,15", "x":16.25, "y":2.25}, {"label":"2,16", "x":17.25, "y":2.25}, {"label":"3,0", "x":0, "y":3.25, "w":1.75}, {"label":"3,1", "x":1.75, "y":3.25}, {"label":"3,2", "x":2.75, "y":3.25}, {"label":"3,3", "x":3.75, "y":3.25}, {"label":"3,4", "x":4.75, "y":3.25}, {"label":"3,5", "x":5.75, "y":3.25}, {"label":"3,6", "x":6.75, "y":3.25}, {"label":"3,7", "x":7.75, "y":3.25}, {"label":"3,8", "x":8.75, "y":3.25}, {"label":"3,9", "x":9.75, "y":3.25}, {"label":"3,10", "x":10.75, "y":3.25}, {"label":"3,11", "x":11.75, "y":3.25}, {"label":"3,13", "x":12.75, "y":3.25, "w":2.25}, {"label":"4,0", "x":0, "y":4.25, "w":2.25}, {"label":"4,2", "x":2.25, "y":4.25}, {"label":"4,3", "x":3.25, "y":4.25}, {"label":"4,4", "x":4.25, "y":4.25}, {"label":"4,5", "x":5.25, "y":4.25}, {"label":"4,6", "x":6.25, "y":4.25}, {"label":"4,7", "x":7.25, "y":4.25}, {"label":"4,8", "x":8.25, "y":4.25}, {"label":"4,9", "x":9.25, "y":4.25}, {"label":"4,10", "x":10.25, "y":4.25}, {"label":"4,11", "x":11.25, "y":4.25}, {"label":"4,12", "x":12.25, "y":4.25}, {"label":"4,13", "x":13.25, "y":4.25, "w":1.75}, {"label":"4,15", "x":16.25, "y":4.25}, {"label":"5,0", "x":0, "y":5.25, "w":1.25}, {"label":"5,1", "x":1.25, "y":5.25, "w":1.25}, {"label":"5,2", "x":2.5, "y":5.25, "w":1.25}, {"label":"5,6", "x":3.75, "y":5.25, "w":6.25}, {"label":"5,10", "x":10, "y":5.25, "w":1.25}, {"label":"5,11", "x":11.25, "y":5.25, "w":1.25}, {"label":"5,12", "x":12.5, "y":5.25, "w":1.25}, {"label":"5,13", "x":13.75, "y":5.25, "w":1.25}, {"label":"5,14", "x":15.25, "y":5.25}, {"label":"5,15", "x":16.25, "y":5.25}, {"label":"5,16", "x":17.25, "y":5.25}] + }, + "LAYOUT_tkl_f13_iso_split_bs_rshift": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1.25, "y":0}, {"label":"0,2", "x":2.25, "y":0}, {"label":"0,3", "x":3.25, "y":0}, {"label":"0,4", "x":4.25, "y":0}, {"label":"0,5", "x":5.5, "y":0}, {"label":"0,6", "x":6.5, "y":0}, {"label":"0,7", "x":7.5, "y":0}, {"label":"0,8", "x":8.5, "y":0}, {"label":"0,9", "x":9.75, "y":0}, {"label":"0,10", "x":10.75, "y":0}, {"label":"0,11", "x":11.75, "y":0}, {"label":"0,12", "x":12.75, "y":0}, {"label":"0,13", "x":14, "y":0}, {"label":"0,14", "x":15.25, "y":0}, {"label":"0,15", "x":16.25, "y":0}, {"label":"0,16", "x":17.25, "y":0}, {"label":"1,0", "x":0, "y":1.25}, {"label":"1,1", "x":1, "y":1.25}, {"label":"1,2", "x":2, "y":1.25}, {"label":"1,3", "x":3, "y":1.25}, {"label":"1,4", "x":4, "y":1.25}, {"label":"1,5", "x":5, "y":1.25}, {"label":"1,6", "x":6, "y":1.25}, {"label":"1,7", "x":7, "y":1.25}, {"label":"1,8", "x":8, "y":1.25}, {"label":"1,9", "x":9, "y":1.25}, {"label":"1,10", "x":10, "y":1.25}, {"label":"1,11", "x":11, "y":1.25}, {"label":"1,12", "x":12, "y":1.25}, {"label":"1,13", "x":13, "y":1.25}, {"label":"2,13", "x":14, "y":1.25}, {"label":"1,14", "x":15.25, "y":1.25}, {"label":"1,15", "x":16.25, "y":1.25}, {"label":"1,16", "x":17.25, "y":1.25}, {"label":"2,0", "x":0, "y":2.25, "w":1.5}, {"label":"2,1", "x":1.5, "y":2.25}, {"label":"2,2", "x":2.5, "y":2.25}, {"label":"2,3", "x":3.5, "y":2.25}, {"label":"2,4", "x":4.5, "y":2.25}, {"label":"2,5", "x":5.5, "y":2.25}, {"label":"2,6", "x":6.5, "y":2.25}, {"label":"2,7", "x":7.5, "y":2.25}, {"label":"2,8", "x":8.5, "y":2.25}, {"label":"2,9", "x":9.5, "y":2.25}, {"label":"2,10", "x":10.5, "y":2.25}, {"label":"2,11", "x":11.5, "y":2.25}, {"label":"2,12", "x":12.5, "y":2.25}, {"label":"3,13", "x":13.75, "y":2.25, "w":1.25, "h":2}, {"label":"2,14", "x":15.25, "y":2.25}, {"label":"2,15", "x":16.25, "y":2.25}, {"label":"2,16", "x":17.25, "y":2.25}, {"label":"3,0", "x":0, "y":3.25, "w":1.75}, {"label":"3,1", "x":1.75, "y":3.25}, {"label":"3,2", "x":2.75, "y":3.25}, {"label":"3,3", "x":3.75, "y":3.25}, {"label":"3,4", "x":4.75, "y":3.25}, {"label":"3,5", "x":5.75, "y":3.25}, {"label":"3,6", "x":6.75, "y":3.25}, {"label":"3,7", "x":7.75, "y":3.25}, {"label":"3,8", "x":8.75, "y":3.25}, {"label":"3,9", "x":9.75, "y":3.25}, {"label":"3,10", "x":10.75, "y":3.25}, {"label":"3,11", "x":11.75, "y":3.25}, {"label":"3,12", "x":12.75, "y":3.25}, {"label":"4,0", "x":0, "y":4.25, "w":1.25}, {"label":"4,1", "x":1.25, "y":4.25}, {"label":"4,2", "x":2.25, "y":4.25}, {"label":"4,3", "x":3.25, "y":4.25}, {"label":"4,4", "x":4.25, "y":4.25}, {"label":"4,5", "x":5.25, "y":4.25}, {"label":"4,6", "x":6.25, "y":4.25}, {"label":"4,7", "x":7.25, "y":4.25}, {"label":"4,8", "x":8.25, "y":4.25}, {"label":"4,9", "x":9.25, "y":4.25}, {"label":"4,10", "x":10.25, "y":4.25}, {"label":"4,11", "x":11.25, "y":4.25}, {"label":"4,12", "x":12.25, "y":4.25}, {"label":"4,13", "x":13.25, "y":4.25, "w":1.75}, {"label":"4,15", "x":16.25, "y":4.25}, {"label":"5,0", "x":0, "y":5.25, "w":1.25}, {"label":"5,1", "x":1.25, "y":5.25, "w":1.25}, {"label":"5,2", "x":2.5, "y":5.25, "w":1.25}, {"label":"5,6", "x":3.75, "y":5.25, "w":6.25}, {"label":"5,10", "x":10, "y":5.25, "w":1.25}, {"label":"5,11", "x":11.25, "y":5.25, "w":1.25}, {"label":"5,12", "x":12.5, "y":5.25, "w":1.25}, {"label":"5,13", "x":13.75, "y":5.25, "w":1.25}, {"label":"5,14", "x":15.25, "y":5.25}, {"label":"5,15", "x":16.25, "y":5.25}, {"label":"5,16", "x":17.25, "y":5.25}] + }, + "LAYOUT_all": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1.25, "y":0}, {"label":"0,2", "x":2.25, "y":0}, {"label":"0,3", "x":3.25, "y":0}, {"label":"0,4", "x":4.25, "y":0}, {"label":"0,5", "x":5.5, "y":0}, {"label":"0,6", "x":6.5, "y":0}, {"label":"0,7", "x":7.5, "y":0}, {"label":"0,8", "x":8.5, "y":0}, {"label":"0,9", "x":9.75, "y":0}, {"label":"0,10", "x":10.75, "y":0}, {"label":"0,11", "x":11.75, "y":0}, {"label":"0,12", "x":12.75, "y":0}, {"label":"0,13", "x":14, "y":0}, {"label":"0,14", "x":15.25, "y":0}, {"label":"0,15", "x":16.25, "y":0}, {"label":"0,16", "x":17.25, "y":0}, {"label":"1,0", "x":0, "y":1.25}, {"label":"1,1", "x":1, "y":1.25}, {"label":"1,2", "x":2, "y":1.25}, {"label":"1,3", "x":3, "y":1.25}, {"label":"1,4", "x":4, "y":1.25}, {"label":"1,5", "x":5, "y":1.25}, {"label":"1,6", "x":6, "y":1.25}, {"label":"1,7", "x":7, "y":1.25}, {"label":"1,8", "x":8, "y":1.25}, {"label":"1,9", "x":9, "y":1.25}, {"label":"1,10", "x":10, "y":1.25}, {"label":"1,11", "x":11, "y":1.25}, {"label":"1,12", "x":12, "y":1.25}, {"label":"1,13", "x":13, "y":1.25}, {"label":"2,13", "x":14, "y":1.25}, {"label":"1,14", "x":15.25, "y":1.25}, {"label":"1,15", "x":16.25, "y":1.25}, {"label":"1,16", "x":17.25, "y":1.25}, {"label":"2,0", "x":0, "y":2.25, "w":1.5}, {"label":"2,1", "x":1.5, "y":2.25}, {"label":"2,2", "x":2.5, "y":2.25}, {"label":"2,3", "x":3.5, "y":2.25}, {"label":"2,4", "x":4.5, "y":2.25}, {"label":"2,5", "x":5.5, "y":2.25}, {"label":"2,6", "x":6.5, "y":2.25}, {"label":"2,7", "x":7.5, "y":2.25}, {"label":"2,8", "x":8.5, "y":2.25}, {"label":"2,9", "x":9.5, "y":2.25}, {"label":"2,10", "x":10.5, "y":2.25}, {"label":"2,11", "x":11.5, "y":2.25}, {"label":"2,12", "x":12.5, "y":2.25}, {"label":"3,12", "x":13.5, "y":2.25, "w":1.5}, {"label":"2,14", "x":15.25, "y":2.25}, {"label":"2,15", "x":16.25, "y":2.25}, {"label":"2,16", "x":17.25, "y":2.25}, {"label":"3,0", "x":0, "y":3.25, "w":1.75}, {"label":"3,1", "x":1.75, "y":3.25}, {"label":"3,2", "x":2.75, "y":3.25}, {"label":"3,3", "x":3.75, "y":3.25}, {"label":"3,4", "x":4.75, "y":3.25}, {"label":"3,5", "x":5.75, "y":3.25}, {"label":"3,6", "x":6.75, "y":3.25}, {"label":"3,7", "x":7.75, "y":3.25}, {"label":"3,8", "x":8.75, "y":3.25}, {"label":"3,9", "x":9.75, "y":3.25}, {"label":"3,10", "x":10.75, "y":3.25}, {"label":"3,11", "x":11.75, "y":3.25}, {"label":"3,13", "x":12.75, "y":3.25, "w":2.25}, {"label":"4,0", "x":0, "y":4.25, "w":1.25}, {"label":"4,1", "x":1.25, "y":4.25}, {"label":"4,2", "x":2.25, "y":4.25}, {"label":"4,3", "x":3.25, "y":4.25}, {"label":"4,4", "x":4.25, "y":4.25}, {"label":"4,5", "x":5.25, "y":4.25}, {"label":"4,6", "x":6.25, "y":4.25}, {"label":"4,7", "x":7.25, "y":4.25}, {"label":"4,8", "x":8.25, "y":4.25}, {"label":"4,9", "x":9.25, "y":4.25}, {"label":"4,10", "x":10.25, "y":4.25}, {"label":"4,11", "x":11.25, "y":4.25}, {"label":"4,12", "x":12.25, "y":4.25}, {"label":"4,13", "x":13.25, "y":4.25, "w":1.75}, {"label":"4,15", "x":16.25, "y":4.25}, {"label":"5,0", "x":0, "y":5.25, "w":1.25}, {"label":"5,1", "x":1.25, "y":5.25, "w":1.25}, {"label":"5,2", "x":2.5, "y":5.25, "w":1.25}, {"label":"5,6", "x":3.75, "y":5.25, "w":6.25}, {"label":"5,10", "x":10, "y":5.25, "w":1.25}, {"label":"5,11", "x":11.25, "y":5.25, "w":1.25}, {"label":"5,12", "x":12.5, "y":5.25, "w":1.25}, {"label":"5,13", "x":13.75, "y":5.25, "w":1.25}, {"label":"5,14", "x":15.25, "y":5.25}, {"label":"5,15", "x":16.25, "y":5.25}, {"label":"5,16", "x":17.25, "y":5.25}] + } + } + ,"meta": "https://noroadsleft.github.io/kbf_qmk_converter/" +} diff --git a/keyboards/mechlovin/infinity875/keymaps/default/keymap.c b/keyboards/mechlovin/infinity875/keymaps/default/keymap.c new file mode 100644 index 0000000000..93073a1722 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +/* Copyright 2021 Mechlovin' Studio + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_DEL, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_LSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI, MO(1), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + 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, KC_TRNS, RGB_SAI, RGB_HUI, + 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, RGB_SAD, RGB_HUD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, + KC_TRNS, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_VAD, RGB_MOD + ) +}; diff --git a/keyboards/mechlovin/infinity875/keymaps/default/readme.md b/keyboards/mechlovin/infinity875/keymaps/default/readme.md new file mode 100644 index 0000000000..877e1a6862 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for infinity875 diff --git a/keyboards/mechlovin/infinity875/keymaps/default/rgb_matrix_user.inc b/keyboards/mechlovin/infinity875/keymaps/default/rgb_matrix_user.inc new file mode 100644 index 0000000000..cee6a3f038 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/default/rgb_matrix_user.inc @@ -0,0 +1,764 @@ +/* +Copyright 2020 Evy Dekkers + +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 . +*/ + +RGB_MATRIX_EFFECT(solid_esc) +RGB_MATRIX_EFFECT(solid_f13) +RGB_MATRIX_EFFECT(solid_clus) +RGB_MATRIX_EFFECT(breathing_all) +RGB_MATRIX_EFFECT(breathing_esc) +RGB_MATRIX_EFFECT(breathing_f13) +RGB_MATRIX_EFFECT(breathing_clus) +RGB_MATRIX_EFFECT(band_val_all) +RGB_MATRIX_EFFECT(band_val_esc) +RGB_MATRIX_EFFECT(band_val_f13) +RGB_MATRIX_EFFECT(band_val_clus) +RGB_MATRIX_EFFECT(cycle_up_down_all) +RGB_MATRIX_EFFECT(cycle_up_down_esc) +RGB_MATRIX_EFFECT(cycle_up_down_f13) +RGB_MATRIX_EFFECT(cycle_up_down_clus) +RGB_MATRIX_EFFECT(cycle_out_in_dual_all) +RGB_MATRIX_EFFECT(cycle_out_in_dual_esc) +RGB_MATRIX_EFFECT(cycle_out_in_dual_f13) +RGB_MATRIX_EFFECT(cycle_out_in_dual_clus) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_all) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_esc) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_f13) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_clus) +RGB_MATRIX_EFFECT(cycle_pimwheel_all) +RGB_MATRIX_EFFECT(cycle_pimwheel_esc) +RGB_MATRIX_EFFECT(cycle_pimwheel_f13) +RGB_MATRIX_EFFECT(cycle_pimwheel_clus) +RGB_MATRIX_EFFECT(rainbow_beacon_all) +RGB_MATRIX_EFFECT(rainbow_beacon_esc) +RGB_MATRIX_EFFECT(rainbow_beacon_f13) +RGB_MATRIX_EFFECT(rainbow_beacon_clus) +RGB_MATRIX_EFFECT(raindrops_all) +RGB_MATRIX_EFFECT(raindrops_esc) +RGB_MATRIX_EFFECT(raindrops_f13) +RGB_MATRIX_EFFECT(raindrops_clus) + +#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS + +bool effect_runner_all(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_esc(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_f13(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_clus(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_all(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_esc(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_f13(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_clus(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_all(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_esc(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_f13(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_clus(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +static void raindrops_set_color_all(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); +} + +static void raindrops_set_color_esc(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static void raindrops_set_color_f13(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static void raindrops_set_color_clus(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static HSV BAND_VAL_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + int16_t v = hsv.v - abs(scale8(g_led_config.point[i].x, 228) + 28 - time) * 8; + hsv.v = scale8(v < 0 ? 0 : v, hsv.v); + return hsv; +} + +static HSV CYCLE_UP_DOWN_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + hsv.h = g_led_config.point[i].y - time; + return hsv; +} + +static HSV CYCLE_OUT_IN_DUAL_CUSTOM(HSV hsv, int16_t dx, int16_t dy, uint8_t time) { + dx = (k_rgb_matrix_center.x / 2) - abs8(dx); + uint8_t dist = sqrt16(dx * dx + dy * dy); + hsv.h = 3 * dist + time; + return hsv; +} + +static HSV RAINBOW_MOVING_CHEVRON_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + hsv.h += abs8(g_led_config.point[i].y - k_rgb_matrix_center.y) + (g_led_config.point[i].x - time); + return hsv; +} + +static HSV CYCLE_PINWHEEL_CUSTOM(HSV hsv, int16_t dx, int16_t dy, uint8_t time) { + hsv.h = atan2_8(dy, dx) + time; + return hsv; +} + +static HSV RAINBOW_BEACON_CUSTOM(HSV hsv, int8_t sin, int8_t cos, uint8_t i, uint8_t time) { + hsv.h += ((g_led_config.point[i].y - k_rgb_matrix_center.y) * 2 * cos + (g_led_config.point[i].x - k_rgb_matrix_center.x) * 2 * sin) / 128; + return hsv; +} + + + +// Solid ESC +static bool solid_esc(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(0, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Solid F13 +static bool solid_f13(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(14, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Solid cluster +static bool solid_clus(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 15 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing all + +bool breathing_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing ESC +static bool breathing_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + rgb_matrix_set_color(0, rgb.r, rgb.g, rgb.b); + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing F13 +static bool breathing_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + rgb_matrix_set_color(14, rgb.r, rgb.g, rgb.b); + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing cluster +static bool breathing_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 15; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Band Val all +bool band_val_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &BAND_VAL_CUSTOM); +} + +// Band Val ESC +bool band_val_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &BAND_VAL_CUSTOM); +} + +// Band Val F13 +bool band_val_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &BAND_VAL_CUSTOM); +} + +// Band Val Cluster +bool band_val_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &BAND_VAL_CUSTOM); +} + +// Cycle Up Down All +static bool cycle_up_down_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle Up Down ESC +static bool cycle_up_down_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle up down F13 +static bool cycle_up_down_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle up down cluster +static bool cycle_up_down_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle out in dual All +static bool cycle_out_in_dual_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_all(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual ESC +static bool cycle_out_in_dual_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_esc(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual f13 +static bool cycle_out_in_dual_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_f13(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual cluster +static bool cycle_out_in_dual_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_clus(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Moving chevron all +static bool rainbow_moving_chevron_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} + +// Moving chevron ESC +static bool rainbow_moving_chevron_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} +// Moving chevron F13 +static bool rainbow_moving_chevron_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} +// Moving chevron cluster +static bool rainbow_moving_chevron_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} + +// Moving cycle pimwheel all +static bool cycle_pimwheel_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_all(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel esc +static bool cycle_pimwheel_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_esc(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel f13 +static bool cycle_pimwheel_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_f13(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel cluster +static bool cycle_pimwheel_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_clus(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving rainbow beacon all +static bool rainbow_beacon_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_all(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon esc +static bool rainbow_beacon_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_esc(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon f13 +static bool rainbow_beacon_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_f13(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon cluster +static bool rainbow_beacon_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_clus(params, &RAINBOW_BEACON_CUSTOM); +} + +// Raindrops all +static bool raindrops_all(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_all(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_all(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops ESC +static bool raindrops_esc(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_esc(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_esc(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops F13 +static bool raindrops_f13(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_f13(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_f13(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops Cluster +static bool raindrops_clus(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_clus(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_clus(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +#endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS diff --git a/keyboards/mechlovin/infinity875/keymaps/default/rules.mk b/keyboards/mechlovin/infinity875/keymaps/default/rules.mk new file mode 100644 index 0000000000..64a7fa8664 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/default/rules.mk @@ -0,0 +1 @@ +RGB_MATRIX_CUSTOM_USER = no \ No newline at end of file diff --git a/keyboards/mechlovin/infinity875/keymaps/via/config.h b/keyboards/mechlovin/infinity875/keymaps/via/config.h new file mode 100644 index 0000000000..74ee03f3f9 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/via/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2021 Mechlovin' Studio + +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 . +*/ + +#pragma once + +#ifdef RGB_MATRIX_ENABLE + +#define VIA_QMK_RGBLIGHT_ENABLE + +#endif diff --git a/keyboards/mechlovin/infinity875/keymaps/via/keymap.c b/keyboards/mechlovin/infinity875/keymaps/via/keymap.c new file mode 100644 index 0000000000..283104b5b2 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2021 Mechlovin' Studio + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_DEL, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_LSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI,MO(1), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + 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, KC_TRNS, RGB_SAI, RGB_HUI, + 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, RGB_SAD, RGB_HUD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, + 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, RGB_VAI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_VAD, RGB_MOD + ), + [2] = LAYOUT_all( + 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, 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, 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 + ), + [3] = LAYOUT_all( + 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, 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, 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 + ), +}; diff --git a/keyboards/mechlovin/infinity875/keymaps/via/readme.md b/keyboards/mechlovin/infinity875/keymaps/via/readme.md new file mode 100644 index 0000000000..9289e7dbe2 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for infinity87.5 diff --git a/keyboards/mechlovin/infinity875/keymaps/via/rgb_matrix_user.inc b/keyboards/mechlovin/infinity875/keymaps/via/rgb_matrix_user.inc new file mode 100644 index 0000000000..cee6a3f038 --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/via/rgb_matrix_user.inc @@ -0,0 +1,764 @@ +/* +Copyright 2020 Evy Dekkers + +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 . +*/ + +RGB_MATRIX_EFFECT(solid_esc) +RGB_MATRIX_EFFECT(solid_f13) +RGB_MATRIX_EFFECT(solid_clus) +RGB_MATRIX_EFFECT(breathing_all) +RGB_MATRIX_EFFECT(breathing_esc) +RGB_MATRIX_EFFECT(breathing_f13) +RGB_MATRIX_EFFECT(breathing_clus) +RGB_MATRIX_EFFECT(band_val_all) +RGB_MATRIX_EFFECT(band_val_esc) +RGB_MATRIX_EFFECT(band_val_f13) +RGB_MATRIX_EFFECT(band_val_clus) +RGB_MATRIX_EFFECT(cycle_up_down_all) +RGB_MATRIX_EFFECT(cycle_up_down_esc) +RGB_MATRIX_EFFECT(cycle_up_down_f13) +RGB_MATRIX_EFFECT(cycle_up_down_clus) +RGB_MATRIX_EFFECT(cycle_out_in_dual_all) +RGB_MATRIX_EFFECT(cycle_out_in_dual_esc) +RGB_MATRIX_EFFECT(cycle_out_in_dual_f13) +RGB_MATRIX_EFFECT(cycle_out_in_dual_clus) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_all) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_esc) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_f13) +RGB_MATRIX_EFFECT(rainbow_moving_chevron_clus) +RGB_MATRIX_EFFECT(cycle_pimwheel_all) +RGB_MATRIX_EFFECT(cycle_pimwheel_esc) +RGB_MATRIX_EFFECT(cycle_pimwheel_f13) +RGB_MATRIX_EFFECT(cycle_pimwheel_clus) +RGB_MATRIX_EFFECT(rainbow_beacon_all) +RGB_MATRIX_EFFECT(rainbow_beacon_esc) +RGB_MATRIX_EFFECT(rainbow_beacon_f13) +RGB_MATRIX_EFFECT(rainbow_beacon_clus) +RGB_MATRIX_EFFECT(raindrops_all) +RGB_MATRIX_EFFECT(raindrops_esc) +RGB_MATRIX_EFFECT(raindrops_f13) +RGB_MATRIX_EFFECT(raindrops_clus) + +#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS + +bool effect_runner_all(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_esc(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_f13(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_clus(effect_params_t* params, i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed / 4, 1)); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_all(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_esc(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_f13(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_dx_dy_clus(effect_params_t* params, dx_dy_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint8_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 2); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + int16_t dx = g_led_config.point[i].x - k_rgb_matrix_center.x; + int16_t dy = g_led_config.point[i].y - k_rgb_matrix_center.y; + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, dx, dy, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_all(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_esc(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_f13(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + } + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +bool effect_runner_sin_cos_clus(effect_params_t* params, sin_cos_i_f effect_func) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 4); + int8_t cos_value = cos8(time) - 128; + int8_t sin_value = sin8(time) - 128; + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + RGB rgb = rgb_matrix_hsv_to_rgb(effect_func(rgb_matrix_config.hsv, cos_value, sin_value, i, time)); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return led_max < DRIVER_LED_TOTAL; +} + +static void raindrops_set_color_all(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); +} + +static void raindrops_set_color_esc(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + for (uint8_t i = 1; i < 18; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static void raindrops_set_color_f13(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(15, 0x00, 0x00, 0x00); + rgb_matrix_set_color(16, 0x00, 0x00, 0x00); + rgb_matrix_set_color(17, 0x00, 0x00, 0x00); + for (uint8_t i = 0; i < 14; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static void raindrops_set_color_clus(int i, effect_params_t* params) { + if (!HAS_ANY_FLAGS(g_led_config.flags[i], params->flags)) return; + HSV hsv = {0, rgb_matrix_config.hsv.s, rgb_matrix_config.hsv.v}; + + // Take the shortest path between hues + int16_t deltaH = ((rgb_matrix_config.hsv.h + 180) % 360 - rgb_matrix_config.hsv.h) / 4; + if (deltaH > 127) { + deltaH -= 256; + } else if (deltaH < -127) { + deltaH += 256; + } + + hsv.h = rgb_matrix_config.hsv.h + (deltaH * (rand() & 0x03)); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + for (uint8_t i = 0; i < 15; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } +} + +static HSV BAND_VAL_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + int16_t v = hsv.v - abs(scale8(g_led_config.point[i].x, 228) + 28 - time) * 8; + hsv.v = scale8(v < 0 ? 0 : v, hsv.v); + return hsv; +} + +static HSV CYCLE_UP_DOWN_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + hsv.h = g_led_config.point[i].y - time; + return hsv; +} + +static HSV CYCLE_OUT_IN_DUAL_CUSTOM(HSV hsv, int16_t dx, int16_t dy, uint8_t time) { + dx = (k_rgb_matrix_center.x / 2) - abs8(dx); + uint8_t dist = sqrt16(dx * dx + dy * dy); + hsv.h = 3 * dist + time; + return hsv; +} + +static HSV RAINBOW_MOVING_CHEVRON_CUSTOM(HSV hsv, uint8_t i, uint8_t time) { + hsv.h += abs8(g_led_config.point[i].y - k_rgb_matrix_center.y) + (g_led_config.point[i].x - time); + return hsv; +} + +static HSV CYCLE_PINWHEEL_CUSTOM(HSV hsv, int16_t dx, int16_t dy, uint8_t time) { + hsv.h = atan2_8(dy, dx) + time; + return hsv; +} + +static HSV RAINBOW_BEACON_CUSTOM(HSV hsv, int8_t sin, int8_t cos, uint8_t i, uint8_t time) { + hsv.h += ((g_led_config.point[i].y - k_rgb_matrix_center.y) * 2 * cos + (g_led_config.point[i].x - k_rgb_matrix_center.x) * 2 * sin) / 128; + return hsv; +} + + + +// Solid ESC +static bool solid_esc(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(0, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Solid F13 +static bool solid_f13(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + rgb_matrix_set_color(14, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Solid cluster +static bool solid_clus(effect_params_t* params) { + HSV hsv = rgb_matrix_config.hsv; + RGB rgb = hsv_to_rgb(hsv); + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 15 ; i < led_max; i++) { + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing all + +bool breathing_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing ESC +static bool breathing_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + rgb_matrix_set_color(0, rgb.r, rgb.g, rgb.b); + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing F13 +static bool breathing_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 18; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + rgb_matrix_set_color(14, rgb.r, rgb.g, rgb.b); + return led_max < DRIVER_LED_TOTAL; +} + +// Breathing cluster +static bool breathing_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + + HSV hsv = rgb_matrix_config.hsv; + uint16_t time = scale16by8(g_rgb_timer, rgb_matrix_config.speed / 8); + hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); + RGB rgb = rgb_matrix_hsv_to_rgb(hsv); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + for (uint8_t i = 15; i < led_max; i++) { + RGB_MATRIX_TEST_LED_FLAGS(); + rgb_matrix_set_color(i, rgb.r, rgb.g, rgb.b); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Band Val all +bool band_val_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &BAND_VAL_CUSTOM); +} + +// Band Val ESC +bool band_val_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &BAND_VAL_CUSTOM); +} + +// Band Val F13 +bool band_val_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &BAND_VAL_CUSTOM); +} + +// Band Val Cluster +bool band_val_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &BAND_VAL_CUSTOM); +} + +// Cycle Up Down All +static bool cycle_up_down_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle Up Down ESC +static bool cycle_up_down_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle up down F13 +static bool cycle_up_down_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle up down cluster +static bool cycle_up_down_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &CYCLE_UP_DOWN_CUSTOM); +} + +// Cycle out in dual All +static bool cycle_out_in_dual_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_all(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual ESC +static bool cycle_out_in_dual_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_esc(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual f13 +static bool cycle_out_in_dual_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_f13(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Cycle out in dual cluster +static bool cycle_out_in_dual_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_clus(params, &CYCLE_OUT_IN_DUAL_CUSTOM); +} + +// Moving chevron all +static bool rainbow_moving_chevron_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_all(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} + +// Moving chevron ESC +static bool rainbow_moving_chevron_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_esc(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} +// Moving chevron F13 +static bool rainbow_moving_chevron_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_f13(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} +// Moving chevron cluster +static bool rainbow_moving_chevron_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_clus(params, &RAINBOW_MOVING_CHEVRON_CUSTOM); +} + +// Moving cycle pimwheel all +static bool cycle_pimwheel_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_all(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel esc +static bool cycle_pimwheel_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_esc(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel f13 +static bool cycle_pimwheel_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_f13(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving cycle pimwheel cluster +static bool cycle_pimwheel_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_dx_dy_clus(params, &CYCLE_PINWHEEL_CUSTOM); +} + +// Moving rainbow beacon all +static bool rainbow_beacon_all(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_all(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon esc +static bool rainbow_beacon_esc(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_esc(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon f13 +static bool rainbow_beacon_f13(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_f13(params, &RAINBOW_BEACON_CUSTOM); +} + +// Moving rainbow beacon cluster +static bool rainbow_beacon_clus(effect_params_t* params) { + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (uint8_t i = led_min ; i < led_max; i++) { + rgb_matrix_set_color(i, 0x00, 0x00, 0x00); + } + return effect_runner_sin_cos_clus(params, &RAINBOW_BEACON_CUSTOM); +} + +// Raindrops all +static bool raindrops_all(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_all(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_all(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops ESC +static bool raindrops_esc(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_esc(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_esc(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops F13 +static bool raindrops_f13(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_f13(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_f13(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +// Raindrops Cluster +static bool raindrops_clus(effect_params_t* params) { + if (!params->init) { + // Change one LED every tick, make sure speed is not 0 + if (scale16by8(g_rgb_timer, qadd8(rgb_matrix_config.speed, 16)) % 10 == 0) { + raindrops_set_color_clus(rand() % DRIVER_LED_TOTAL, params); + } + return false; + } + + RGB_MATRIX_USE_LIMITS(led_min, led_max); + for (int i = led_min; i < led_max; i++) { + raindrops_set_color_clus(i, params); + } + return led_max < DRIVER_LED_TOTAL; +} + +#endif // RGB_MATRIX_CUSTOM_EFFECT_IMPLS diff --git a/keyboards/mechlovin/infinity875/keymaps/via/rules.mk b/keyboards/mechlovin/infinity875/keymaps/via/rules.mk new file mode 100644 index 0000000000..0e604ef69a --- /dev/null +++ b/keyboards/mechlovin/infinity875/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes + +RGB_MATRIX_CUSTOM_USER = yes \ No newline at end of file diff --git a/keyboards/mechlovin/infinity875/matrix.c b/keyboards/mechlovin/infinity875/matrix.c new file mode 100644 index 0000000000..b1b0d20654 --- /dev/null +++ b/keyboards/mechlovin/infinity875/matrix.c @@ -0,0 +1,388 @@ +/* +Copyright 2012-2018 Jun Wako, Jack Humbert, Yiancar +Copyright 2019 Evy Dekkers + +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 . +*/ + +#include +#include +#include "wait.h" +#include "util.h" +#include "matrix.h" +#include "debounce.h" +#include "quantum.h" + +#ifdef DIRECT_PINS +static pin_t direct_pins[MATRIX_ROWS][MATRIX_COLS] = DIRECT_PINS; +#elif (DIODE_DIRECTION == ROW2COL) || (DIODE_DIRECTION == COL2ROW) +static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; +//static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; +#endif + +// matrix code + +#ifdef DIRECT_PINS + +static void init_pins(void) { + for (int row = 0; row < MATRIX_ROWS; row++) { + for (int col = 0; col < MATRIX_COLS; col++) { + pin_t pin = direct_pins[row][col]; + if (pin != NO_PIN) { + setPinInputHigh(pin); + } + } + } +} + +static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) { + matrix_row_t last_row_value = current_matrix[current_row]; + current_matrix[current_row] = 0; + + for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) { + pin_t pin = direct_pins[current_row][col_index]; + if (pin != NO_PIN) { + current_matrix[current_row] |= readPin(pin) ? 0 : (MATRIX_ROW_SHIFTER << col_index); + } + } + + return (last_row_value != current_matrix[current_row]); +} + +#elif (DIODE_DIRECTION == ROW2COL) + +/* Cols 0 - 16 + * These columns use two 74HC138 3 to 8 bit demultiplexer. B0, F1 is the enable pin, must be set high (1) to use it. + * + * col / pin: PB5 PB7 PF0 PB0 PF1 PE6 + * 0: 0 ── 0 ── 0 1 ── 0 0 + * ──────────────────────────────────────────── + * 1: 0 ── 0 ── 1 1 ── 0 0 + * ──────────────────────────────────────────── + * 2: 0 ── 1 ── 0 1 ── 0 0 + * ──────────────────────────────────────────── + * 3: 0 ── 1 ── 1 1 ── 0 0 + * ──────────────────────────────────────────── + * 4: 1 ── 0 ── 0 1 ── 0 0 + * ──────────────────────────────────────────── + * 5: 1 ── 0 ── 1 1 ── 0 0 + * ──────────────────────────────────────────── + * 6: 1 ── 1 ── 0 1 ── 0 0 + * ──────────────────────────────────────────── + * 7: 1 ── 1 ── 1 1 ── 0 0 + * ──────────────────────────────────────────── + * 8: 0 ── 0 ── 0 0 ── 1 0 + * ──────────────────────────────────────────── + * 9: 0 ── 0 ── 1 0 ── 1 0 + * ──────────────────────────────────────────── + *10: 0 ── 1 ── 0 0 ── 1 0 + * ──────────────────────────────────────────── + *11: 0 ── 1 ── 1 0 ── 1 0 + * ──────────────────────────────────────────── + *12: 1 ── 0 ── 0 0 ── 1 0 + * ──────────────────────────────────────────── + *13: 1 ── 0 ── 1 0 ── 1 0 + * ──────────────────────────────────────────── + *14: 1 ── 1 ── 1 0 ── 1 0 + * ──────────────────────────────────────────── + *15: 1 ── 1 ── 0 0 ── 1 0 + * ──────────────────────────────────────────── + *16: 0 ── 0 ── 0 0 ── 0 1 + * + */ +static void select_col(uint8_t col) { + switch (col) { + case 0: + writePinLow(B5); + writePinLow(B7); + writePinLow(F0); + writePinHigh(B0); + break; + case 1: + writePinLow(B5); + writePinLow(B7); + writePinHigh(F0); + writePinHigh(B0); + break; + case 2: + writePinLow(B5); + writePinHigh(B7); + writePinLow(F0); + writePinHigh(B0); + break; + case 3: + writePinLow(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinHigh(B0); + break; + case 4: + writePinHigh(B5); + writePinLow(B7); + writePinLow(F0); + writePinHigh(B0); + break; + case 5: + writePinHigh(B5); + writePinLow(B7); + writePinHigh(F0); + writePinHigh(B0); + break; + case 6: + writePinHigh(B5); + writePinHigh(B7); + writePinLow(F0); + writePinHigh(B0); + break; + case 7: + writePinHigh(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinHigh(B0); + break; + case 8: + writePinLow(B5); + writePinLow(B7); + writePinLow(F0); + writePinHigh(F1); + break; + case 9: + writePinLow(B5); + writePinLow(B7); + writePinHigh(F0); + writePinHigh(F1); + break; + case 10: + writePinLow(B5); + writePinHigh(B7); + writePinLow(F0); + writePinHigh(F1); + break; + case 11: + writePinLow(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinHigh(F1); + break; + case 12: + writePinHigh(B5); + writePinLow(B7); + writePinLow(F0); + writePinHigh(F1); + break; + case 13: + writePinHigh(B5); + writePinLow(B7); + writePinHigh(F0); + writePinHigh(F1); + break; + case 14: + writePinHigh(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinHigh(F1); + break; + case 15: + writePinHigh(B5); + writePinHigh(B7); + writePinLow(F0); + writePinHigh(F1); + break; + case 16: + writePinLow(E6); + break; + } +} + +static void unselect_col(uint8_t col) { + switch (col) { + case 0: + writePinHigh(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinLow(B0); + break; + case 1: + writePinHigh(B5); + writePinHigh(B7); + writePinLow(F0); + writePinLow(B0); + break; + case 2: + writePinHigh(B5); + writePinLow(B7); + writePinHigh(F0); + writePinLow(B0); + break; + case 3: + writePinHigh(B5); + writePinLow(B7); + writePinLow(F0); + writePinLow(B0); + break; + case 4: + writePinLow(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinLow(B0); + break; + case 5: + writePinLow(B5); + writePinHigh(B7); + writePinLow(F0); + writePinLow(B0); + break; + case 6: + writePinLow(B5); + writePinLow(B7); + writePinHigh(F0); + writePinLow(B0); + break; + case 7: + writePinLow(B5); + writePinLow(B7); + writePinLow(F0); + writePinLow(B0); + break; + case 8: + writePinHigh(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinLow(F1); + break; + case 9: + writePinHigh(B5); + writePinHigh(B7); + writePinLow(F0); + writePinLow(F1); + break; + case 10: + writePinHigh(B5); + writePinLow(B7); + writePinHigh(F0); + writePinLow(F1); + break; + case 11: + writePinHigh(B5); + writePinLow(B7); + writePinLow(F0); + writePinLow(F1); + break; + case 12: + writePinLow(B5); + writePinHigh(B7); + writePinHigh(F0); + writePinLow(F1); + break; + case 13: + writePinLow(B5); + writePinHigh(B7); + writePinLow(F0); + writePinLow(F1); + break; + case 14: + writePinLow(B5); + writePinLow(B7); + writePinLow(F0); + writePinLow(F1); + break; + case 15: + writePinLow(B5); + writePinLow(B7); + writePinHigh(F0); + writePinLow(F1); + break; + case 16: + writePinHigh(E6); + break; + } +} + +static void unselect_cols(void) { + //Native + writePinHigh(E6); + + //Demultiplexer + writePinLow(B0); + writePinLow(F1); + writePinHigh(B5); + writePinHigh(B7); + writePinHigh(F0); +} + +static void init_pins(void) { + unselect_cols(); + for (uint8_t x = 0; x < MATRIX_ROWS; x++) { + setPinInputHigh(row_pins[x]); + } + setPinOutput(B5); + setPinOutput(B7); + setPinOutput(F0); + setPinOutput(B0); + setPinOutput(F1); + setPinOutput(E6); +} + +static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { + bool matrix_changed = false; + + // Select col and wait for col selecton to stabilize + select_col(current_col); + wait_us(30); + + // For each row... + for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { + // Store last value of row prior to reading + matrix_row_t last_row_value = current_matrix[row_index]; + + // Check row pin state + if (readPin(row_pins[row_index]) == 0) { + // Pin LO, set col bit + current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); + } else { + // Pin HI, clear col bit + current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); + } + + // Determine if the matrix changed state + if ((last_row_value != current_matrix[row_index]) && !(matrix_changed)) { + matrix_changed = true; + } + } + + // Unselect col + unselect_col(current_col); + + return matrix_changed; +} + +#endif + +void matrix_init_custom(void) { + // initialize key pins + init_pins(); +} + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + bool changed = false; + +#if defined(DIRECT_PINS) || (DIODE_DIRECTION == ROW2COL) + // Set col, read rows + for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { + changed |= read_rows_on_col(current_matrix, current_col); + } +#endif + + return changed; +} diff --git a/keyboards/mechlovin/infinity875/readme.md b/keyboards/mechlovin/infinity875/readme.md new file mode 100644 index 0000000000..b3e14a7bb7 --- /dev/null +++ b/keyboards/mechlovin/infinity875/readme.md @@ -0,0 +1,24 @@ +# infinity875 + +![infinity875](https://i.imgur.com/qt4YBwSl.jpeg) + +The Infinity 87.5 is in the popular A87 form factor with Top-sided USB Type-C and supports BOTH the F12 and F13 footprints, so it’s compatible with a number of TKL boards like Geonworks Frog/F1-8x; KFE-CE; Singa Jaguar, among others. + +* Keyboard Maintainer: [Mechlovin' Studio](https://github.com/mechlovin) +* Hardware Supported: Infinity87.5, Atmega32u4 +* Hardware Availability: [GB](https://geekhack.org/index.php?topic=115251.0), [CBB Planet](https://cbbplanet.com/products/infinity-87-5-pcb), [Mechlovin' Studio](https://mechlovin.studio) + +Make example for this keyboard (after setting up your build environment): + + make mechlovin/infinity875:default + +Flashing example for this keyboard: + + make mechlovin/infinity875:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +**Reset Key:** 3 ways to put the IF87.5 into bootloader: +- By keycode: Tap RESET keycode. +- By bootmagic: hold ESC key while plugging in. +- By hardware: Push reset button on bottom of the PCB while the PCB is plugged in. \ No newline at end of file diff --git a/keyboards/mechlovin/infinity875/rules.mk b/keyboards/mechlovin/infinity875/rules.mk new file mode 100644 index 0000000000..d16f1ac35b --- /dev/null +++ b/keyboards/mechlovin/infinity875/rules.mk @@ -0,0 +1,23 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +CUSTOM_MATRIX = lite +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 + +SRC += matrix.c From 74b24e410bb02180aaf373c12ae3d2550e7eac29 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Fri, 11 Mar 2022 05:25:31 -0800 Subject: [PATCH 090/699] DZ64RGB: add info.json (#16616) --- keyboards/dztech/dz64rgb/info.json | 79 ++++++++++++++++++++++++++++++ 1 file changed, 79 insertions(+) create mode 100644 keyboards/dztech/dz64rgb/info.json diff --git a/keyboards/dztech/dz64rgb/info.json b/keyboards/dztech/dz64rgb/info.json new file mode 100644 index 0000000000..8e602bd7c0 --- /dev/null +++ b/keyboards/dztech/dz64rgb/info.json @@ -0,0 +1,79 @@ +{ + "keyboard_name": "DZ64RGB", + "url": "", + "maintainer": "moyi4681", + "layouts": { + "LAYOUT_64_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + + {"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}, + {"label":"Z", "x":2, "y":3}, + {"label":"X", "x":3, "y":3}, + {"label":"C", "x":4, "y":3}, + {"label":"V", "x":5, "y":3}, + {"label":"B", "x":6, "y":3}, + {"label":"N", "x":7, "y":3}, + {"label":"M", "x":8, "y":3}, + {"label":",<", "x":9, "y":3}, + {"label":".>", "x":10, "y":3}, + {"label":"/?", "x":11, "y":3}, + {"label":"Shift", "x":12, "y":3}, + {"label":"\u2191", "x":13, "y":3}, + {"label":"Delete", "x":14, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4}, + {"label":"Ctrl", "x":11, "y":4}, + {"label":"\u2190", "x":12, "y":4}, + {"label":"\u2193", "x":13, "y":4}, + {"label":"\u2192", "x":14, "y":4} + ] + } + } +} From 3f797080952029e792361d7ea2cee9b423e07f72 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Fri, 11 Mar 2022 05:26:15 -0800 Subject: [PATCH 091/699] Acheron Elongate Delta: add info.json (#16615) --- keyboards/acheron/elongate/delta/info.json | 68 ++++++++++++++++++++++ 1 file changed, 68 insertions(+) create mode 100644 keyboards/acheron/elongate/delta/info.json diff --git a/keyboards/acheron/elongate/delta/info.json b/keyboards/acheron/elongate/delta/info.json new file mode 100644 index 0000000000..d96805a66a --- /dev/null +++ b/keyboards/acheron/elongate/delta/info.json @@ -0,0 +1,68 @@ +{ + "keyboard_name": "Elongate", + "url": "http://gondolindrim.github.io/AcheronDocs/elongate/introduction.html", + "maintainer": "Gondolindrim", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"Q", "x":1, "y":0}, + {"label":"W", "x":2, "y":0}, + {"label":"E", "x":3, "y":0}, + {"label":"R", "x":4, "y":0}, + {"label":"T", "x":5, "y":0}, + {"label":"Y", "x":6, "y":0}, + {"label":"U", "x":7, "y":0}, + {"label":"I", "x":8, "y":0}, + {"label":"O", "x":9, "y":0}, + {"label":"P", "x":10, "y":0}, + {"label":"Backspace", "x":11, "y":0}, + {"label":"7", "x":12.5, "y":0}, + {"label":"8", "x":13.5, "y":0}, + {"label":"9", "x":14.5, "y":0}, + + {"label":"Tab", "x":0, "y":1, "w":1.25}, + {"label":"A", "x":1.25, "y":1}, + {"label":"S", "x":2.25, "y":1}, + {"label":"D", "x":3.25, "y":1}, + {"label":"F", "x":4.25, "y":1}, + {"label":"G", "x":5.25, "y":1}, + {"label":"H", "x":6.25, "y":1}, + {"label":"J", "x":7.25, "y":1}, + {"label":"K", "x":8.25, "y":1}, + {"label":"L", "x":9.25, "y":1}, + {"label":"Enter", "x":10.25, "y":1, "w":1.75}, + {"label":"4", "x":12.5, "y":1}, + {"label":"5", "x":13.5, "y":1}, + {"label":"6", "x":14.5, "y":1}, + + {"label":"Shift", "x":0, "y":2, "w":1.75}, + {"label":"Z", "x":1.75, "y":2}, + {"label":"X", "x":2.75, "y":2}, + {"label":"C", "x":3.75, "y":2}, + {"label":"V", "x":4.75, "y":2}, + {"label":"B", "x":5.75, "y":2}, + {"label":"N", "x":6.75, "y":2}, + {"label":"M", "x":7.75, "y":2}, + {"label":",<", "x":8.75, "y":2}, + {"label":"Fn", "x":9.75, "y":2, "w":1.25}, + {"label":"\u2191", "x":11.25, "y":2.25}, + {"label":"1", "x":12.5, "y":2}, + {"label":"2", "x":13.5, "y":2}, + {"label":"3", "x":14.5, "y":2}, + + {"label":"Ctrl", "x":0, "y":3, "w":1.25}, + {"label":"GUI", "x":1.25, "y":3}, + {"label":"Alt", "x":2.25, "y":3, "w":1.25}, + {"label":"Space/Fn2", "x":3.5, "y":3, "w":2.25}, + {"label":"Space", "x":6.25, "y":3, "w":2.75}, + {"label":"Alt", "x":9, "y":3}, + {"label":"\u2190", "x":10.25, "y":3.25}, + {"label":"\u2193", "x":11.25, "y":3.25}, + {"label":"\u2192", "x":12.25, "y":3.25}, + {"label":"0", "x":13.5, "y":3}, + {"label":".", "x":14.5, "y":3} + ] + } + } +} From 1833e65370395d438b67b98a317e54d27a742c16 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 11 Mar 2022 13:27:29 +0000 Subject: [PATCH 092/699] Workaround for pin_def errors on KINETIS (#16614) --- platforms/pin_defs.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/platforms/pin_defs.h b/platforms/pin_defs.h index 341fe89b6e..af2c415f40 100644 --- a/platforms/pin_defs.h +++ b/platforms/pin_defs.h @@ -15,6 +15,10 @@ */ #pragma once +// TODO: including this avoids "error: expected identifier before '(' token" errors +// here just to please KINETIS builds... +#include "platform_deps.h" + // useful for direct pin mapping #define NO_PIN (pin_t)(~0) From 0eb42e042cb161d961d4d0fd6351eeed122f1e0c Mon Sep 17 00:00:00 2001 From: Pascal Getreuer <50221757+getreuer@users.noreply.github.com> Date: Fri, 11 Mar 2022 05:28:52 -0800 Subject: [PATCH 093/699] Fix flipped One Shot logic (#16617) --- quantum/action_util.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/quantum/action_util.c b/quantum/action_util.c index 4ea0bf61fb..cf81370d4a 100644 --- a/quantum/action_util.c +++ b/quantum/action_util.c @@ -202,8 +202,9 @@ bool is_oneshot_layer_active(void) { * FIXME: needs doc */ void oneshot_set(bool active) { - if (keymap_config.oneshot_disable != active) { - keymap_config.oneshot_disable = active; + const bool disable = !active; + if (keymap_config.oneshot_disable != disable) { + keymap_config.oneshot_disable = disable; eeconfig_update_keymap(keymap_config.raw); clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); dprintf("Oneshot: active: %d\n", active); @@ -235,7 +236,7 @@ void oneshot_disable(void) { } bool is_oneshot_enabled(void) { - return keymap_config.oneshot_disable; + return !keymap_config.oneshot_disable; } #endif From dd32cdf527d4647a9488b1b4c142fff1d663bc56 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 11 Mar 2022 18:50:59 +0000 Subject: [PATCH 094/699] Redo workaround for pin_def errors on KINETIS (#16620) * Redo workaround for pin_def errors on KINETIS * Redo workaround for pin_def errors on KINETIS --- platforms/chibios/_pin_defs.h | 6 ++++++ platforms/pin_defs.h | 4 ---- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/platforms/chibios/_pin_defs.h b/platforms/chibios/_pin_defs.h index c03f8de0c2..a84d931cc2 100644 --- a/platforms/chibios/_pin_defs.h +++ b/platforms/chibios/_pin_defs.h @@ -15,6 +15,12 @@ */ #pragma once +#if defined(MCU_KINETIS) +// TODO: including this avoids "error: expected identifier before '(' token" errors +// here just to please KINETIS builds... +# include +#endif + // Defines mapping for Proton C replacement #ifdef CONVERT_TO_PROTON_C // Left side (front) diff --git a/platforms/pin_defs.h b/platforms/pin_defs.h index af2c415f40..341fe89b6e 100644 --- a/platforms/pin_defs.h +++ b/platforms/pin_defs.h @@ -15,10 +15,6 @@ */ #pragma once -// TODO: including this avoids "error: expected identifier before '(' token" errors -// here just to please KINETIS builds... -#include "platform_deps.h" - // useful for direct pin mapping #define NO_PIN (pin_t)(~0) From 86b123141bea2e3f831a57eb115368cbbbdb2da1 Mon Sep 17 00:00:00 2001 From: Thomas Kriechbaumer Date: Sat, 12 Mar 2022 13:42:25 +0100 Subject: [PATCH 095/699] docs: fix code sample (#16623) --- docs/feature_pointing_device.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index 23a16b843d..8c51865558 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -325,7 +325,8 @@ report_mouse_t pointing_device_task_user(report_mouse_t mouse_report) { if (set_scrolling) { mouse_report.h = mouse_report.x; mouse_report.v = mouse_report.y; - mouse_report.x = mouse_report.y = 0 + mouse_report.x = 0; + mouse_report.y = 0; } return mouse_report; } From 20424fd37f84cbe08740539a48b6bb4839e0a179 Mon Sep 17 00:00:00 2001 From: Matthew Dias Date: Sun, 13 Mar 2022 01:36:12 -0600 Subject: [PATCH 096/699] [Keyboard] Add Glitch (#16444) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/p3d/glitch/config.h | 84 +++++ keyboards/p3d/glitch/glitch.c | 58 ++++ keyboards/p3d/glitch/glitch.h | 40 +++ keyboards/p3d/glitch/info.json | 300 ++++++++++++++++++ keyboards/p3d/glitch/keymaps/default/keymap.c | 29 ++ .../p3d/glitch/keymaps/default/readme.md | 1 + keyboards/p3d/glitch/readme.md | 24 ++ keyboards/p3d/glitch/rules.mk | 20 ++ 8 files changed, 556 insertions(+) create mode 100644 keyboards/p3d/glitch/config.h create mode 100644 keyboards/p3d/glitch/glitch.c create mode 100644 keyboards/p3d/glitch/glitch.h create mode 100644 keyboards/p3d/glitch/info.json create mode 100644 keyboards/p3d/glitch/keymaps/default/keymap.c create mode 100644 keyboards/p3d/glitch/keymaps/default/readme.md create mode 100644 keyboards/p3d/glitch/readme.md create mode 100644 keyboards/p3d/glitch/rules.mk diff --git a/keyboards/p3d/glitch/config.h b/keyboards/p3d/glitch/config.h new file mode 100644 index 0000000000..e7f78123d9 --- /dev/null +++ b/keyboards/p3d/glitch/config.h @@ -0,0 +1,84 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "config_common.h" + +#define VENDOR_ID 0x7033 +#define PRODUCT_ID 0x3568 +#define DEVICE_VER 0x0001 +#define MANUFACTURER P3D Store +#define PRODUCT Glitch + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 8 + +/* + * 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) + * + */ + +/* A Custom matrix.c is used to poll the port expander C6 shows that the pins are hardwired there */ +#define MATRIX_ROW_PINS { D5, D6, B6, D7, C7, B4, B5, D3, D4, C6 } +#define MATRIX_COL_PINS { B2, D2, B3, B7, F5, F4, F1, F0 } +#define UNUSED_PINS + +#define RGB_DI_PIN B1 +#define RGBLED_NUM 25 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + +#define ENCODERS_PAD_A { F6 } +#define ENCODERS_PAD_B { F7 } +#define ENCODER_RESOLUTION 2 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define USB_MAX_POWER_CONSUMPTION 400 + +/* 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 + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT diff --git a/keyboards/p3d/glitch/glitch.c b/keyboards/p3d/glitch/glitch.c new file mode 100644 index 0000000000..a62f578994 --- /dev/null +++ b/keyboards/p3d/glitch/glitch.c @@ -0,0 +1,58 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include "glitch.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { + return false; + } + if (clockwise) { + // tap_code(RGB_MOD); + rgblight_step(); + } else { + // tap_code(RGB_RMOD); + rgblight_step_reverse(); + } + + return false; +} +#endif + +#ifdef OLED_ENABLE +bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + // Host Keyboard Layer Status + oled_write_P(PSTR("Layer: "), false); + + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_P(PSTR("Default\n"), false); + break; + default: + oled_write_P(PSTR("Undefined\n"), false); + } + + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); + oled_write_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); + oled_write_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); + + return false; +} diff --git a/keyboards/p3d/glitch/glitch.h b/keyboards/p3d/glitch/glitch.h new file mode 100644 index 0000000000..4b4f77396b --- /dev/null +++ b/keyboards/p3d/glitch/glitch.h @@ -0,0 +1,40 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ + +#pragma once + +#define XXX KC_NO + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \ + K20, K21, K22, K23, K24, K25, K27, K28, K29, K2A, K2B, K2C, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, K3F, \ + K40, K41, K43, K45, K47, K49, K4B, K4C, K4D, K4E, K4F \ +) { \ + { K00, K02, K04, K06, K08, K0A, K0C, K0E }, \ + { K01, K03, K05, K07, K09, K0B, K0D, K0F }, \ + { K10, K12, K14, XXX, K18, K1A, K1C, K1E }, \ + { K11, K13, K15, K17, K19, K1B, K1D, K1F }, \ + { K20, K22, K24, XXX, K28, K2A, K2C, K2E }, \ + { K21, K23, K25, K27, K29, K2B, XXX, K2F }, \ + { K30, K32, K34, K36, K38, K3A, K3C, K3E }, \ + { XXX, K33, K35, K37, K39, K3B, K3D, K3F }, \ + { K40, XXX, XXX, XXX, XXX, XXX, K4C, K4E }, \ + { K41, K43, K45, K47, K49, K4B, K4D, K4F } \ +} diff --git a/keyboards/p3d/glitch/info.json b/keyboards/p3d/glitch/info.json new file mode 100644 index 0000000000..6445e200f8 --- /dev/null +++ b/keyboards/p3d/glitch/info.json @@ -0,0 +1,300 @@ +{ + "keyboard_name": "Glitch", + "url": "https://p3dstore.com/products/p3d-glitch-group-buy", + "maintainer": "matthewdias", + "layouts": { + "LAYOUT_all": { + "layout": [{ + "x": 19.1, + "y": 0.1 + }, { + "label": "ESC", + "x": 0.5, + "y": 0.5 + }, { + "label": "1", + "x": 1.5, + "y": 0.5 + }, { + "label": "_", + "x": 14.5, + "y": 0.6 + }, { + "label": "+", + "x": 15.5, + "y": 0.6 + }, { + "label": "Back", + "x": 16.5, + "y": 0.6 + }, { + "label": "Del", + "x": 17.5, + "y": 0.6 + }, { + "label": "2", + "x": 3.25, + "y": 1.0 + }, { + "label": "3", + "x": 4.25, + "y": 1.0 + }, { + "label": "4", + "x": 5.25, + "y": 1.0 + }, { + "label": "5", + "x": 6.25, + "y": 1.0 + }, { + "label": "6", + "x": 7.25, + "y": 1.0 + }, { + "label": "7", + "x": 10, + "y": 1.0 + }, { + "label": "8", + "x": 11, + "y": 1.0 + }, { + "label": "9", + "x": 12, + "y": 1.0 + }, { + "label": "0", + "x": 13, + "y": 1.0 + }, { + "label": "TAB", + "x": 0.15, + "y": 1.5, + "w": 1.5 + }, { + "label": "Q", + "x": 1.65, + "y": 1.5 + }, { + "label": "P", + "x": 14.35, + "y": 1.6 + }, { + "label": "[", + "x": 15.35, + "y": 1.6 + }, { + "label": "]", + "x": 16.35, + "y": 1.6 + }, { + "label": "\\", + "x": 17.35, + "y": 1.6, + "w": 1.5 + }, { + "x": 19.1, + "y": 1.6 + }, { + "label": "W", + "x": 3.75, + "y": 2.0 + }, { + "label": "E", + "x": 4.75, + "y": 2.0 + }, { + "label": "R", + "x": 5.75, + "y": 2.0 + }, { + "label": "T", + "x": 6.75, + "y": 2.0 + }, { + "label": "Y", + "x": 9.5, + "y": 2.0 + }, { + "label": "U", + "x": 10.5, + "y": 2.0 + }, { + "label": "I", + "x": 11.5, + "y": 2.0 + }, { + "label": "O", + "x": 12.5, + "y": 2.0 + }, { + "label": "CAPS", + "x": 0.15, + "y": 2.5, + "w": 1.75 + }, { + "label": "A", + "x": 1.9, + "y": 2.5 + }, { + "label": ";", + "x": 14.6, + "y": 2.6 + }, { + "label": "'", + "x": 15.6, + "y": 2.6 + }, { + "label": "ENTER", + "x": 16.6, + "y": 2.6, + "w": 2.25 + }, { + "x": 19.1, + "y": 2.6 + }, { + "label": "S", + "x": 4, + "y": 3.0 + }, { + "label": "D", + "x": 5, + "y": 3.0 + }, { + "label": "F", + "x": 6, + "y": 3.0 + }, { + "label": "G", + "x": 7, + "y": 3.0 + }, { + "label": "H", + "x": 9.75, + "y": 3.0 + }, { + "label": "J", + "x": 10.75, + "y": 3.0 + }, { + "label": "K", + "x": 11.75, + "y": 3.0 + }, { + "label": "L", + "x": 12.75, + "y": 3.0 + }, { + "label": "SHIFT", + "x": 0, + "y": 3.5, + "w": 2.25 + }, { + "label": "Z", + "x": 2.25, + "y": 3.5 + }, { + "label": ".", + "x": 14.25, + "y": 3.6 + }, { + "label": "?", + "x": 15.25, + "y": 3.6 + }, { + "label": "SHIFT", + "x": 16.25, + "y": 3.6, + "w": 1.75 + }, { + "x": 19.5, + "y": 3.6 + }, { + "label": "UP", + "x": 18.25, + "y": 3.85 + }, { + "label": "X", + "x": 4.5, + "y": 4.0 + }, { + "label": "C", + "x": 5.5, + "y": 4.0 + }, { + "label": "V", + "x": 6.5, + "y": 4.0 + }, { + "label": "B", + "x": 7.5, + "y": 4.0 + }, { + "label": "BEE", + "x": 9.25, + "y": 4.0 + }, { + "label": "N", + "x": 10.25, + "y": 4.0 + }, { + "label": "M", + "x": 11.25, + "y": 4.0 + }, { + "label": ",", + "x": 12.25, + "y": 4.0 + }, { + "label": "CTRL", + "x": 0, + "y": 4.5, + "w": 1.25 + }, { + "label": "WIN", + "x": 1.25, + "y": 4.5, + "w": 1.25 + }, { + "label": "WIN", + "x": 15, + "y": 4.6 + }, { + "label": "CTRL", + "x": 16, + "y": 4.6 + }, { + "label": "LEFT", + "x": 17.25, + "y": 4.85 + }, { + "label": "DOWN", + "x": 18.25, + "y": 4.85 + }, { + "label": "RIGHT", + "x": 19.25, + "y": 4.85 + }, { + "x": 4.75, + "y": 5.0, + "w": 2.75 + }, { + "label": "ALT", + "x": 7.5, + "y": 5.0, + "w": 1.25 + }, { + "label": "ALT", + "x": 9.5, + "y": 5.0, + "w": 1.25 + }, { + "x": 10.75, + "y": 5.0, + "w": 2.25 + }] + } + } +} diff --git a/keyboards/p3d/glitch/keymaps/default/keymap.c b/keyboards/p3d/glitch/keymaps/default/keymap.c new file mode 100644 index 0000000000..43aa53c9f1 --- /dev/null +++ b/keyboards/p3d/glitch/keymaps/default/keymap.c @@ -0,0 +1,29 @@ +/* Copyright 2021 Matthew Dias + * + * 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 . + */ +#include QMK_KEYBOARD_H + +//This is the ANSI version of the PCB + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( + 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_BSPC, KC_DEL, KC_MUTE, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT +) +}; + diff --git a/keyboards/p3d/glitch/keymaps/default/readme.md b/keyboards/p3d/glitch/keymaps/default/readme.md new file mode 100644 index 0000000000..8661c4b95f --- /dev/null +++ b/keyboards/p3d/glitch/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Glitch diff --git a/keyboards/p3d/glitch/readme.md b/keyboards/p3d/glitch/readme.md new file mode 100644 index 0000000000..b29dc6e930 --- /dev/null +++ b/keyboards/p3d/glitch/readme.md @@ -0,0 +1,24 @@ +# Glitch + +Hotswap RGB Alice-style with OLED and Rotary Knob + +- Keyboard Maintainer: matthewdias +- Hardware Supported: Glitch PCB +- Hardware Availability: https://p3dstore.com + +Make example for this keyboard (after setting up your build environment): + + make p3d/glitch:default + +Flashing example for this keyboard: + + make p3d/glitch:default:flash + +## Bootloader + +Enter the bootloader in one of 2 ways: + +* **Bootmagic reset**: Hold down the top left and plug in the keyboard +* **Physical reset button**: Briefly press the button on the top of the PCB + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/p3d/glitch/rules.mk b/keyboards/p3d/glitch/rules.mk new file mode 100644 index 0000000000..7ec8d5c09a --- /dev/null +++ b/keyboards/p3d/glitch/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes +OLED_ENABLE = yes From dccb5711c710d074c29f715494b93f9275f5ac55 Mon Sep 17 00:00:00 2001 From: Matthew Dias Date: Sun, 13 Mar 2022 01:37:22 -0600 Subject: [PATCH 097/699] [Keyboard] Add damapad (#16443) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/bolsa/damapad/config.h | 59 ++++++++++ keyboards/bolsa/damapad/damapad.c | 81 +++++++++++++ keyboards/bolsa/damapad/damapad.h | 32 +++++ keyboards/bolsa/damapad/info.json | 109 ++++++++++++++++++ .../bolsa/damapad/keymaps/default/keymap.c | 29 +++++ keyboards/bolsa/damapad/keymaps/via/keymap.c | 47 ++++++++ keyboards/bolsa/damapad/keymaps/via/rules.mk | 1 + keyboards/bolsa/damapad/readme.md | 22 ++++ keyboards/bolsa/damapad/rules.mk | 21 ++++ 9 files changed, 401 insertions(+) create mode 100644 keyboards/bolsa/damapad/config.h create mode 100644 keyboards/bolsa/damapad/damapad.c create mode 100644 keyboards/bolsa/damapad/damapad.h create mode 100644 keyboards/bolsa/damapad/info.json create mode 100644 keyboards/bolsa/damapad/keymaps/default/keymap.c create mode 100644 keyboards/bolsa/damapad/keymaps/via/keymap.c create mode 100644 keyboards/bolsa/damapad/keymaps/via/rules.mk create mode 100644 keyboards/bolsa/damapad/readme.md create mode 100644 keyboards/bolsa/damapad/rules.mk diff --git a/keyboards/bolsa/damapad/config.h b/keyboards/bolsa/damapad/config.h new file mode 100644 index 0000000000..b829a8a998 --- /dev/null +++ b/keyboards/bolsa/damapad/config.h @@ -0,0 +1,59 @@ + +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6D64 +#define PRODUCT_ID 0x6470 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Bolsa Keyboard Supply +#define PRODUCT Damapad + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 6 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { E6, F7, C7 } +#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, B7 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define ENCODERS_PAD_A { B2 } +#define ENCODERS_PAD_B { B3 } +#define ENCODER_RESOLUTION 2 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT diff --git a/keyboards/bolsa/damapad/damapad.c b/keyboards/bolsa/damapad/damapad.c new file mode 100644 index 0000000000..d57a60c166 --- /dev/null +++ b/keyboards/bolsa/damapad/damapad.c @@ -0,0 +1,81 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include "damapad.h" + +#ifdef OLED_ENABLE +bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + static const char PROGMEM bolsa_logo[] = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x1e, 0x3e, 0xfe, 0xfe, 0xfc, 0xfc, + 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, 0xfc, + 0xfc, 0xfe, 0xfe, 0x3e, 0x1e, 0x06, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x02, 0x06, 0x0e, 0x1e, 0x3e, 0x3e, 0xfe, 0xfe, 0xff, 0x7f, 0x7f, + 0xff, 0xff, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, + 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x7f, 0x7f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xff, 0x7f, + 0x7f, 0xff, 0xfe, 0xfe, 0x3e, 0x3e, 0x1e, 0x0e, 0x06, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xfc, 0xff, 0x07, 0x00, 0x00, 0xf8, + 0xff, 0x1f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0xff, 0xf8, + 0x00, 0x00, 0x0f, 0xff, 0xfe, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x38, 0x3f, 0x3f, 0x0f, 0x00, 0x00, 0x00, 0x1f, 0x1f, + 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x1f, + 0x1f, 0x00, 0x00, 0x00, 0x07, 0x3f, 0x3f, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + + oled_write_raw_P(bolsa_logo, sizeof(bolsa_logo)); + return false; +} + +oled_rotation_t oled_init_kb(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} +#endif + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + return true; +} +#endif \ No newline at end of file diff --git a/keyboards/bolsa/damapad/damapad.h b/keyboards/bolsa/damapad/damapad.h new file mode 100644 index 0000000000..da0a4d863e --- /dev/null +++ b/keyboards/bolsa/damapad/damapad.h @@ -0,0 +1,32 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_wkl( \ + K00, K01, K02, K03, K04, K05, \ + K10, K11, K12, K13, K14, K15, \ + K20, K21, K23, K25 \ +) { \ + { K00, K01, K02, K03, K04, K05 }, \ + { K10, K11, K12, K13, K14, K15 }, \ + { K20, K21, XXX, K23, XXX, K25 } \ +} diff --git a/keyboards/bolsa/damapad/info.json b/keyboards/bolsa/damapad/info.json new file mode 100644 index 0000000000..28d0c4fc82 --- /dev/null +++ b/keyboards/bolsa/damapad/info.json @@ -0,0 +1,109 @@ +{ + "keyboard_name": "Damapad", + "url": "", + "maintainer": "matthewdias", + "layouts": { + "LAYOUT_wkl": { + "layout": [{ + "x": 5.25, + "y": 0 + }, { + "x": 0, + "y": 0.25 + }, { + "x": 1, + "y": 0.25 + }, { + "x": 2, + "y": 0.25 + }, { + "x": 3, + "y": 0.25 + }, { + "x": 4, + "y": 0.25 + }, { + "x": 0, + "y": 1.25 + }, { + "x": 1, + "y": 1.25 + }, { + "x": 2, + "y": 1.25 + }, { + "x": 3, + "y": 1.25 + }, { + "x": 4, + "y": 1.25 + }, { + "x": 5.25, + "y": 1.25 + }, { + "x": 0, + "y": 2.25 + }, { + "x": 1.75, + "y": 2.25 + }, { + "x": 2.75, + "y": 2.25, + "w": 2.25 + }, { + "x": 5.25, + "y": 2.25 + }] + }, + "LAYOUT_bar": { + "layout": [{ + "x": 5.25, + "y": 0 + }, { + "x": 0, + "y": 0.25 + }, { + "x": 1, + "y": 0.25 + }, { + "x": 2, + "y": 0.25 + }, { + "x": 3, + "y": 0.25 + }, { + "x": 4, + "y": 0.25 + }, { + "x": 0, + "y": 1.25 + }, { + "x": 1, + "y": 1.25 + }, { + "x": 2, + "y": 1.25 + }, { + "x": 3, + "y": 1.25 + }, { + "x": 4, + "y": 1.25 + }, { + "x": 5.25, + "y": 1.25 + }, { + "x": 0, + "y": 2.25, + "w": 2.75 + }, { + "x": 2.75, + "y": 2.25, + "w": 2.25 + }, { + "x": 5.25, + "y": 2.25 + }] + } + } +} diff --git a/keyboards/bolsa/damapad/keymaps/default/keymap.c b/keyboards/bolsa/damapad/keymaps/default/keymap.c new file mode 100644 index 0000000000..00c8e05333 --- /dev/null +++ b/keyboards/bolsa/damapad/keymaps/default/keymap.c @@ -0,0 +1,29 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_wkl( + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, KC_MSEL, KC_MUTE, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_PGUP, + KC_NO, KC_COPY, KC_PASTE, KC_PGDN + ) + +}; + diff --git a/keyboards/bolsa/damapad/keymaps/via/keymap.c b/keyboards/bolsa/damapad/keymaps/via/keymap.c new file mode 100644 index 0000000000..18ae315207 --- /dev/null +++ b/keyboards/bolsa/damapad/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* +Copyright 2021 Matthew Dias + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_wkl( + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, KC_MSEL, KC_MUTE, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_PGUP, + KC_NO, KC_COPY, KC_PASTE, KC_PGDN + ), + + [1] = LAYOUT_wkl( + 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 + ), + + [2] = LAYOUT_wkl( + 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 + ), + + [3] = LAYOUT_wkl( + 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 + ) + +}; + diff --git a/keyboards/bolsa/damapad/keymaps/via/rules.mk b/keyboards/bolsa/damapad/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/bolsa/damapad/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/bolsa/damapad/readme.md b/keyboards/bolsa/damapad/readme.md new file mode 100644 index 0000000000..1cfa1c06b7 --- /dev/null +++ b/keyboards/bolsa/damapad/readme.md @@ -0,0 +1,22 @@ +# Damapad + +A Macropad by Bolsa Supply + +- Keyboard Maintainer: [matthewdias](https://github.com/matthewdias) +- Hardware Supported: Damapad PCB + +Make example for this keyboard (after setting up your build environment): + + make bolsa/damapad:default + +Flashing example for this keyboard: + + make bolsa/damapad:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader: + +- **Physical reset button**: Briefly press the button on the back of the PCB (or short the reset/ground pads, should a tactile button not be installed) diff --git a/keyboards/bolsa/damapad/rules.mk b/keyboards/bolsa/damapad/rules.mk new file mode 100644 index 0000000000..48717046e4 --- /dev/null +++ b/keyboards/bolsa/damapad/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 From 08794fef4e8e0a5fb6ba32595c099bf1e167c12b Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Sun, 13 Mar 2022 04:08:33 -0600 Subject: [PATCH 098/699] [Keyboard] add missing endif in glitch keyboard (#16629) --- keyboards/p3d/glitch/glitch.c | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/p3d/glitch/glitch.c b/keyboards/p3d/glitch/glitch.c index a62f578994..9957e0c7ad 100644 --- a/keyboards/p3d/glitch/glitch.c +++ b/keyboards/p3d/glitch/glitch.c @@ -56,3 +56,4 @@ bool oled_task_kb(void) { return false; } +#endif From 1f63dbfb8e3b00f7d1c87cb29d05770a93a77f9c Mon Sep 17 00:00:00 2001 From: jpe230 Date: Sun, 13 Mar 2022 04:09:36 -0600 Subject: [PATCH 099/699] [Keymap] Update personal crkbd keymap (#16624) --- keyboards/crkbd/keymaps/jpe230/config.h | 22 ++++++++++- keyboards/crkbd/keymaps/jpe230/keymap.c | 49 +++++++++++++++++++++---- keyboards/crkbd/keymaps/jpe230/rules.mk | 18 ++++++--- 3 files changed, 74 insertions(+), 15 deletions(-) diff --git a/keyboards/crkbd/keymaps/jpe230/config.h b/keyboards/crkbd/keymaps/jpe230/config.h index 3680f7c480..2887b5014c 100644 --- a/keyboards/crkbd/keymaps/jpe230/config.h +++ b/keyboards/crkbd/keymaps/jpe230/config.h @@ -21,4 +21,24 @@ along with this program. If not, see . #pragma once -#define SPLIT_WPM_ENABLE +#ifndef RGB_MATRIX_ENABLE +# define SPLIT_WPM_ENABLE +#endif + +#ifdef RGB_MATRIX_ENABLE +# define RGB_MATRIX_KEYPRESSES +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 128 +# define RGB_MATRIX_STARTUP_HUE 215 +# define RGB_MATRIX_STARTUP_SAT 255 +# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif diff --git a/keyboards/crkbd/keymaps/jpe230/keymap.c b/keyboards/crkbd/keymaps/jpe230/keymap.c index 65cb6f73f7..6e812c0e61 100644 --- a/keyboards/crkbd/keymaps/jpe230/keymap.c +++ b/keyboards/crkbd/keymaps/jpe230/keymap.c @@ -46,11 +46,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_split_3x6_3( //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_CAPS, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, + KC_CAPS, _______, _______, _______, _______, _______, _______, KC_UP, _______, RGB_MOD, RGB_HUI, RGB_VAI, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| - KC_LSFT, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN,KC_RIGHT, _______, _______, _______, + KC_LSFT, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN,KC_RIGHT, RGB_TOG, RGB_SAI, RGB_SPI, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| KC_LGUI, _______, _______, _______, MO(3), KC_RALT //`--------------------------' `--------------------------' @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_split_3x6_3( //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_ESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_CAPS, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_GRV, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| @@ -83,7 +83,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #ifdef OLED_ENABLE oled_rotation_t oled_init_user(oled_rotation_t rotation) { - return rotation; +#ifdef RGB_MATRIX_ENABLE + if (!is_keyboard_master()) { + return OLED_ROTATION_180; // flips the display 180 degrees if offhand + } +#endif + return rotation; } #define L_BASE 0 @@ -163,6 +168,7 @@ void render_bootmagic_status(bool status) { } } +#ifndef RGB_MATRIX_ENABLE // frame 0, 128x32px const char PROGMEM cat_frame_0 [] PROGMEM = { 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, @@ -282,8 +288,18 @@ static uint32_t frame_timer = 0; static uint32_t anim_sleep = 0; static uint8_t anim_speed = 120; -void oled_render_logo(void) { +#endif +void oled_render_logo(void) { +#ifdef RGB_MATRIX_ENABLE + static const char PROGMEM crkbd_logo[] = { + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, + 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, + 0}; + oled_write_P(crkbd_logo, false); +#endif +#ifndef RGB_MATRIX_ENABLE if(get_current_wpm() != 000) { oled_on(); int8_t wpm_speed = (int8_t)(get_current_wpm() / 2); @@ -309,6 +325,7 @@ void oled_render_logo(void) { oled_write_raw_P(cat_frames[current_frame], FRAME_SIZE); } } +#endif } bool oled_task_user(void) { @@ -328,6 +345,9 @@ bool tog_sarcasm = false; bool uppercase = false; uint8_t prev_upper = 0; uint8_t prev_lower = 0; +uint8_t prev_mode = 0; +HSV prev_hsv; + bool process_record_sarcasm(uint16_t keycode, keyrecord_t *record) { if (keycode == KC_ENTER && record->event.pressed) { @@ -379,10 +399,23 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { tog_sarcasm = !tog_sarcasm; - if (tog_sarcasm) + if (tog_sarcasm) { dprint("Enabling saRCaSm ModE\n"); - else + + #ifdef RGB_MATRIX_ENABLE + prev_hsv = rgb_matrix_get_hsv(); + prev_mode = rgb_matrix_get_mode(); + rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_MULTISPLASH); + rgb_matrix_sethsv_noeeprom(HSV_YELLOW); + #endif + } + else { dprint("Disabling saRCaSm ModE\n"); + #ifdef RGB_MATRIX_ENABLE + rgb_matrix_mode_noeeprom(prev_mode); + rgb_matrix_sethsv_noeeprom(prev_hsv.h, prev_hsv.s, prev_hsv.v); + #endif + } uppercase = false; prev_upper = 0; diff --git a/keyboards/crkbd/keymaps/jpe230/rules.mk b/keyboards/crkbd/keymaps/jpe230/rules.mk index 27a25ddeb3..82d5eb321d 100644 --- a/keyboards/crkbd/keymaps/jpe230/rules.mk +++ b/keyboards/crkbd/keymaps/jpe230/rules.mk @@ -1,6 +1,12 @@ -MOUSEKEY_ENABLE = yes -OLED_ENABLE = yes -OLED_DRIVER = SSD1306 -LTO_ENABLE = yes -WPM_ENABLE = yes -VIA_ENABLE = yes +# Shared rules for both of my Corne +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +LTO_ENABLE = yes +VIA_ENABLE = yes + +# Rules for my Corne without RGB +# WPM_ENABLE = yes +# MOUSEKEY_ENABLE = yes + +# Rules for my Corne with RGB +RGB_MATRIX_ENABLE = yes From b906af0073e08927ed5105c826d579c6421cb7ac Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Sun, 13 Mar 2022 22:56:56 +0900 Subject: [PATCH 100/699] helix:edvorakjp keymap change to use split_common (#16532) --- keyboards/helix/rev2/keymaps/edvorakjp/rules.mk | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk index 59b7acad5b..6b2d147514 100644 --- a/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk +++ b/keyboards/helix/rev2/keymaps/edvorakjp/rules.mk @@ -5,6 +5,7 @@ # See TOP/keyboards/helix/rules.mk for a list of options that can be set. # See TOP/docs/config_options.md for more information. # +SPLIT_KEYBOARD = yes LTO_ENABLE = no # if firmware size over limit, try this option TAP_DANCE_ENABLE = yes From 109c60feeb24081f6bcc78276d7426c5340f2822 Mon Sep 17 00:00:00 2001 From: jels <66403163+Jels02@users.noreply.github.com> Date: Mon, 14 Mar 2022 03:30:55 +1000 Subject: [PATCH 101/699] [Keyboard] Add support for Jels60 (#16605) Co-authored-by: Drashna Jaelre --- keyboards/jels/jels60/config.h | 49 +++ keyboards/jels/jels60/info.json | 344 ++++++++++++++++++ keyboards/jels/jels60/jels60.c | 21 ++ keyboards/jels/jels60/jels60.h | 95 +++++ .../jels/jels60/keymaps/default/keymap.c | 50 +++ keyboards/jels/jels60/keymaps/via/keymap.c | 50 +++ keyboards/jels/jels60/keymaps/via/rules.mk | 1 + keyboards/jels/jels60/readme.md | 23 ++ keyboards/jels/jels60/rules.mk | 18 + 9 files changed, 651 insertions(+) create mode 100644 keyboards/jels/jels60/config.h create mode 100644 keyboards/jels/jels60/info.json create mode 100644 keyboards/jels/jels60/jels60.c create mode 100644 keyboards/jels/jels60/jels60.h create mode 100644 keyboards/jels/jels60/keymaps/default/keymap.c create mode 100644 keyboards/jels/jels60/keymaps/via/keymap.c create mode 100644 keyboards/jels/jels60/keymaps/via/rules.mk create mode 100644 keyboards/jels/jels60/readme.md create mode 100644 keyboards/jels/jels60/rules.mk diff --git a/keyboards/jels/jels60/config.h b/keyboards/jels/jels60/config.h new file mode 100644 index 0000000000..0157da213c --- /dev/null +++ b/keyboards/jels/jels60/config.h @@ -0,0 +1,49 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor paramater */ +#define VENDOR_ID 0x006A //Jels (J) +#define PRODUCT_ID 0x0060 //Jels 60 +#define DEVICE_VER 0x0001 +#define MANUFACTURER jels +#define PRODUCT jels60 + +/* Define Matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +/*Define Matrix Pins */ +#define MATRIX_ROW_PINS {B3, D1, F0, F4, F1} +#define MATRIX_COL_PINS {E6, C7, B4, D7, D6, D4, D5, D3, F5, F6, F7, C6, B6, B5} + +// Caps lock Pin +#define LED_CAPS_LOCK_PIN B7 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + diff --git a/keyboards/jels/jels60/info.json b/keyboards/jels/jels60/info.json new file mode 100644 index 0000000000..b958bb6905 --- /dev/null +++ b/keyboards/jels/jels60/info.json @@ -0,0 +1,344 @@ +{ + "keyboard_name": "Jels60", + "url": "", + "maintainer": "Jels", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "ESC", "x": 0, "y": 0 }, + { "label": "1", "x": 1, "y": 0 }, + { "label": "2", "x": 2, "y": 0 }, + { "label": "3", "x": 3, "y": 0 }, + { "label": "4", "x": 4, "y": 0 }, + { "label": "5", "x": 5, "y": 0 }, + { "label": "6", "x": 6, "y": 0 }, + { "label": "7", "x": 7, "y": 0 }, + { "label": "8", "x": 8, "y": 0 }, + { "label": "9", "x": 9, "y": 0 }, + { "label": "0", "x": 10, "y": 0 }, + { "label": "-", "x": 11, "y": 0 }, + { "label": "=", "x": 12, "y": 0 }, + { "label": "Bksp", "x": 13, "y": 0 }, + { "label": "~", "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": 1.25 }, + { "label": "|", "x": 1.25, "y": 3 }, + { "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.25 }, + { "label": "Win", "x": 1.25, "y": 4, "w": 1.25 }, + { "label": "Alt", "x": 2.5, "y": 4, "w": 1.25 }, + { "x": 3.75, "y": 4, "w": 2.75 }, + { "x": 6.5, "y": 4, "w": 1 }, + { "x": 7.5, "y": 4, "w": 2.5 }, + { "label": "Alt", "x": 10, "y": 4, "w": 1.25 }, + { "label": "Win", "x": 11.25, "y": 4, "w": 1.25 }, + { "label": "Menu", "x": 12.5, "y": 4, "w": 1.25 }, + { "label": "Ctrl", "x": 13.75, "y": 4, "w": 1.25 } + ] + }, + "LAYOUT_ansi": { + "layout": [ + { "label": "ESC", "x": 0, "y": 0 }, + { "label": "1", "x": 1, "y": 0 }, + { "label": "2", "x": 2, "y": 0 }, + { "label": "3", "x": 3, "y": 0 }, + { "label": "4", "x": 4, "y": 0 }, + { "label": "5", "x": 5, "y": 0 }, + { "label": "6", "x": 6, "y": 0 }, + { "label": "7", "x": 7, "y": 0 }, + { "label": "8", "x": 8, "y": 0 }, + { "label": "9", "x": 9, "y": 0 }, + { "label": "0", "x": 10, "y": 0 }, + { "label": "-", "x": 11, "y": 0 }, + { "label": "=", "x": 12, "y": 0 }, + { "label": "Backspace", "x": 13, "y": 0, "w": 2 }, + { "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": 2.75 }, + { "label": "Ctrl", "x": 0, "y": 4, "w": 1.25 }, + { "label": "Win", "x": 1.25, "y": 4, "w": 1.25 }, + { "label": "Alt", "x": 2.5, "y": 4, "w": 1.25 }, + { "x": 3.75, "y": 4, "w": 6.25 }, + { "label": "Alt", "x": 10, "y": 4, "w": 1.25 }, + { "label": "Win", "x": 11.25, "y": 4, "w": 1.25 }, + { "label": "Menu", "x": 12.5, "y": 4, "w": 1.25 }, + { "label": "Ctrl", "x": 13.75, "y": 4, "w": 1.25 } + ] + }, + "LAYOUT_split_space": { + "layout": [ + { "label": "ESC", "x": 0, "y": 0 }, + { "label": "1", "x": 1, "y": 0 }, + { "label": "2", "x": 2, "y": 0 }, + { "label": "3", "x": 3, "y": 0 }, + { "label": "4", "x": 4, "y": 0 }, + { "label": "5", "x": 5, "y": 0 }, + { "label": "6", "x": 6, "y": 0 }, + { "label": "7", "x": 7, "y": 0 }, + { "label": "8", "x": 8, "y": 0 }, + { "label": "9", "x": 9, "y": 0 }, + { "label": "0", "x": 10, "y": 0 }, + { "label": "-", "x": 11, "y": 0 }, + { "label": "=", "x": 12, "y": 0 }, + { "label": "Bksp", "x": 13, "y": 0 }, + { "label": "~", "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": 1.25 }, + { "label": "|", "x": 1.25, "y": 3 }, + { "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, "w": 1 }, + { "label": "Alt", "x": 2.5, "y": 4, "w": 1.5 }, + { "x": 4, "y": 4, "w": 2.75 }, + { "x": 6.75, "y": 4, "w": 1.5 }, + { "x": 8.25, "y": 4, "w": 2.75 }, + { "label": "Alt", "x": 11, "y": 4, "w": 1.5 }, + { "label": "Win", "x": 12.5, "y": 4, "w": 1 }, + { "label": "Ctrl", "x": 13.5, "y": 4, "w": 1.5 } + ] + }, + "LAYOUT_tsangan_split_bs": { + "layout": [ + { "label": "ESC", "x": 0, "y": 0 }, + { "label": "1", "x": 1, "y": 0 }, + { "label": "2", "x": 2, "y": 0 }, + { "label": "3", "x": 3, "y": 0 }, + { "label": "4", "x": 4, "y": 0 }, + { "label": "5", "x": 5, "y": 0 }, + { "label": "6", "x": 6, "y": 0 }, + { "label": "7", "x": 7, "y": 0 }, + { "label": "8", "x": 8, "y": 0 }, + { "label": "9", "x": 9, "y": 0 }, + { "label": "0", "x": 10, "y": 0 }, + { "label": "-", "x": 11, "y": 0 }, + { "label": "=", "x": 12, "y": 0 }, + { "label": "Bksp", "x": 13, "y": 0 }, + { "label": "~", "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, "w": 1 }, + { "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, "w": 1 }, + { "label": "Ctrl", "x": 13.5, "y": 4, "w": 1.5 } + ] + }, + "LAYOUT_iso": { + "layout": [ + { "label": "ESC", "x": 0, "y": 0 }, + { "label": "1", "x": 1, "y": 0 }, + { "label": "2", "x": 2, "y": 0 }, + { "label": "3", "x": 3, "y": 0 }, + { "label": "4", "x": 4, "y": 0 }, + { "label": "5", "x": 5, "y": 0 }, + { "label": "6", "x": 6, "y": 0 }, + { "label": "7", "x": 7, "y": 0 }, + { "label": "8", "x": 8, "y": 0 }, + { "label": "9", "x": 9, "y": 0 }, + { "label": "0", "x": 10, "y": 0 }, + { "label": "-", "x": 11, "y": 0 }, + { "label": "=", "x": 12, "y": 0 }, + { "label": "Backspace", "x": 13, "y": 0, "w": 2 }, + { "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": "Enter", "x": 13.75, "y": 1, "w": 1.25, "h":2 }, + { "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": "|", "x": 12.75, "y": 2 }, + { "label": "Shift", "x": 0, "y": 3, "w": 1.25 }, + { "label": "|", "x": 1.25, "y": 3 }, + { "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": 2.75 }, + { "label": "Ctrl", "x": 0, "y": 4, "w": 1.25 }, + { "label": "Win", "x": 1.25, "y": 4, "w": 1.25 }, + { "label": "Alt", "x": 2.5, "y": 4, "w": 1.25 }, + { "x": 3.75, "y": 4, "w": 6.25 }, + { "label": "Alt", "x": 10, "y": 4, "w": 1.25 }, + { "label": "Win", "x": 11.25, "y": 4, "w": 1.25 }, + { "label": "Menu", "x": 12.5, "y": 4, "w": 1.25 }, + { "label": "Ctrl", "x": 13.75, "y": 4, "w": 1.25 } + ] + } + + } +} diff --git a/keyboards/jels/jels60/jels60.c b/keyboards/jels/jels60/jels60.c new file mode 100644 index 0000000000..6e8fd58da8 --- /dev/null +++ b/keyboards/jels/jels60/jels60.c @@ -0,0 +1,21 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * 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 . + */ + +#include "jels60.h" + + + + diff --git a/keyboards/jels/jels60/jels60.h b/keyboards/jels/jels60/jels60.h new file mode 100644 index 0000000000..f8bc296e1a --- /dev/null +++ b/keyboards/jels/jels60/jels60.h @@ -0,0 +1,95 @@ +/* copyright 2022 Joah Nelson (Jels) +* +* 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 +* MERAHANTABILITY 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 . +*/ + +#pragma once + +#include "quantum.h" + +#define ____ KC_NO + + +#define LAYOUT_all( \ + K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13, K1x13, \ + K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K2x13, \ + K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, \ + K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13, \ + K4x0, K4x1, K4x2, K4x4, K4x6, K4x9, K4x10, K4x11, K4x12, K4x13 \ +){ \ + {K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13}, \ + {K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K1x13}, \ + {K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, K2x13}, \ + {K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13}, \ + {K4x0, K4x1, K4x2, ____, K4x4, ____, K4x6, ____, ____, K4x9, K4x10, K4x11, K4x12, K4x13} \ +} + +#define LAYOUT_ansi( \ + K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13, \ + K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K2x13, \ + K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, \ + K3x0, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, \ + K4x0, K4x1, K4x2, K4x6, K4x10, K4x11, K4x12, K4x13 \ +){ \ + {K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13}, \ + {K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, ____ }, \ + {K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, K2x13}, \ + {K3x0, ____, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, ____ }, \ + {K4x0, K4x1, K4x2, ____, ____, ____, K4x6, ____, ____, ____, K4x10, K4x11, K4x12, K4x13} \ +} + +#define LAYOUT_split_space( \ + K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13, K1x13, \ + K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K2x13, \ + K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, \ + K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13, \ + K4x0, K4x1, K4x2, K4x4, K4x6, K4x9, K4x11, K4x12, K4x13 \ +){ \ + {K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13}, \ + {K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K1x13}, \ + {K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, K2x13}, \ + {K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13}, \ + {K4x0, K4x1, K4x2, ____, K4x4, ____, K4x6, ____, ____, K4x9, ____, K4x11, K4x12, K4x13} \ +} + +#define LAYOUT_tsangan_split_bs( \ + K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13, K1x13, \ + K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K2x13, \ + K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, \ + K3x0, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13, \ + K4x0, K4x1, K4x2, K4x6, K4x10, K4x12, K4x13 \ +){ \ + {K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13}, \ + {K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K1x13}, \ + {K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, K2x13}, \ + {K3x0, ____, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13}, \ + {K4x0, K4x1, K4x2, ____, ____, ____, K4x6, ____, ____, ____, K4x10, ____, K4x12, K4x13} \ +} + +#define LAYOUT_iso( \ + K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13, \ + K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, K2x12, \ + K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x13, \ + K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13, \ + K4x0, K4x1, K4x2, K4x6, K4x10, K4x12, K4x13 \ +){ \ + {K0x0, K0x1, K0x2, K0x3, K0x4, K0x5, K0x6, K0x7, K0x8, K0x9, K0x10, K0x11, K0x12, K0x13}, \ + {K1x0, K1x1, K1x2, K1x3, K1x4, K1x5, K1x6, K1x7, K1x8, K1x9, K1x10, K1x11, K1x12, ____ }, \ + {K2x0, K2x1, K2x2, K2x3, K2x4, K2x5, K2x6, K2x7, K2x8, K2x9, K2x10, K2x11, K2x12, K2x13}, \ + {K3x0, K3x1, K3x2, K3x3, K3x4, K3x5, K3x6, K3x7, K3x8, K3x9, K3x10, K3x11, K3x12, K3x13}, \ + {K4x0, K4x1, K4x2, ____, ____, ____, K4x6, ____, ____, ____, K4x10, ____, K4x12, K4x13} \ +} + + + diff --git a/keyboards/jels/jels60/keymaps/default/keymap.c b/keyboards/jels/jels60/keymaps/default/keymap.c new file mode 100644 index 0000000000..072ae3e059 --- /dev/null +++ b/keyboards/jels/jels60/keymaps/default/keymap.c @@ -0,0 +1,50 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +//base layer +[0] = LAYOUT_all( + KC_GESC, 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_GRV, + 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, + 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_BSLS, 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_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, KC_RGUI, KC_RCTL +), +[1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP , _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RGHT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +[2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +[3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/jels/jels60/keymaps/via/keymap.c b/keyboards/jels/jels60/keymaps/via/keymap.c new file mode 100644 index 0000000000..072ae3e059 --- /dev/null +++ b/keyboards/jels/jels60/keymaps/via/keymap.c @@ -0,0 +1,50 @@ + /* Copyright 2022 Joah Nelson (Jels) + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +//base layer +[0] = LAYOUT_all( + KC_GESC, 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_GRV, + 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, + 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_BSLS, 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_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, KC_RGUI, KC_RCTL +), +[1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP , _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_RGHT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +[2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +[3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/jels/jels60/keymaps/via/rules.mk b/keyboards/jels/jels60/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/jels/jels60/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/jels/jels60/readme.md b/keyboards/jels/jels60/readme.md new file mode 100644 index 0000000000..0b72d3e346 --- /dev/null +++ b/keyboards/jels/jels60/readme.md @@ -0,0 +1,23 @@ +# Jels60 + +![jels60](https://i.imgur.com/3Ec4YZNh.png) + +A 60% PCB + +* Keyboard Maintainer: [Jels](https://github.com/Jels02) +* Hardware Supported: Jels60 PCB +* Hardware Availabililty: Limited Group buys + +Make example for this keyboard (after setting up your build environment): + + make jels/jels60:default + +Flashing example for this keyboard: + + make jels/jels60:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +* **Bootmagic reset**: Hold down the top left key (ESC/Tilde) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/jels/jels60/rules.mk b/keyboards/jels/jels60/rules.mk new file mode 100644 index 0000000000..476cf49f27 --- /dev/null +++ b/keyboards/jels/jels60/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 8fe3864fe7601a7e6572e7db680775edeff771ac Mon Sep 17 00:00:00 2001 From: Spencer Peterson Date: Sun, 13 Mar 2022 14:49:47 -0700 Subject: [PATCH 102/699] [Keyboard] Add "Uno" rev2 (#14071) * [Keyboard] Add "Uno" rev2 Adds support for the second revision of Uno, courtesy of @Snipeye. * Update keyboards/uno/rev2/rules.mk * Update keyboards/uno/rev1/rules.mk * Update keyboards/uno/uno.h * Update keyboards/uno/rev2/rules.mk * Update keyboards/uno/rev1/rules.mk * Update keyboards/uno/keymaps/demo/keymap.c * Update keyboards/uno/keymaps/demo/keymap.c * Update keyboards/uno/keymaps/demo/keymap.c * Update keyboards/uno/rev2/rules.mk * Update keyboards/uno/rev1/rules.mk * Align rules.mk comments * Update keyboards/uno/info.json * Update keyboards/uno/rev1/config.h * Update keyboards/uno/rev2/config.h * Update keyboards/uno/rev2/config.h * Update keyboards/uno/rev2/config.h * Update keyboards/uno/rev1/config.h --- keyboards/uno/config.h | 54 +--------- keyboards/uno/keymaps/copypasta/keymap.c | 85 +++++++++++++++ keyboards/uno/keymaps/copypasta/readme.md | 4 + keyboards/uno/keymaps/default/keymap.c | 89 +++++----------- keyboards/uno/keymaps/default/readme.md | 5 +- keyboards/uno/keymaps/demo/keymap.c | 123 ++++++++++++++++++++++ keyboards/uno/keymaps/demo/readme.md | 4 + keyboards/uno/readme.md | 35 ++++-- keyboards/uno/rev1/config.h | 74 +++++++++++++ keyboards/uno/rev1/rev1.h | 25 +++++ keyboards/uno/rev1/rules.mk | 18 ++++ keyboards/uno/rev2/config.h | 49 +++++++++ keyboards/uno/rev2/rev2.h | 25 +++++ keyboards/uno/rev2/rules.mk | 19 ++++ keyboards/uno/rules.mk | 19 +--- keyboards/uno/uno.h | 11 +- 16 files changed, 489 insertions(+), 150 deletions(-) create mode 100644 keyboards/uno/keymaps/copypasta/keymap.c create mode 100644 keyboards/uno/keymaps/copypasta/readme.md create mode 100644 keyboards/uno/keymaps/demo/keymap.c create mode 100644 keyboards/uno/keymaps/demo/readme.md create mode 100644 keyboards/uno/rev1/config.h create mode 100644 keyboards/uno/rev1/rev1.h create mode 100644 keyboards/uno/rev1/rules.mk create mode 100644 keyboards/uno/rev2/config.h create mode 100644 keyboards/uno/rev2/rev2.h create mode 100644 keyboards/uno/rev2/rules.mk diff --git a/keyboards/uno/config.h b/keyboards/uno/config.h index 1cae17f50a..0128ee2d5d 100644 --- a/keyboards/uno/config.h +++ b/keyboards/uno/config.h @@ -13,57 +13,9 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + #pragma once + #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0xACC8 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Broekhuijsen -#define PRODUCT Uno - -/* key matrix size */ -#define MATRIX_ROWS 1 -#define MATRIX_COLS 1 - -/* Uno default pinout */ -#define DIRECT_PINS { \ - { B6 } \ -} -#define UNUSED_PINS - -#define RGB_DI_PIN F6 -#ifdef RGB_DI_PIN -#define RGBLED_NUM 1 -// #define RGBLIGHT_HUE_STEP 32 -// #define RGBLIGHT_SAT_STEP 32 -// #define RGBLIGHT_VAL_STEP 32 -// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -#define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// /*== customize breathing effect ==*/ -// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -// /*==== use exp() and sin() ====*/ -// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -#endif - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION +// See rev1/config.h and rev2/config.h to configure your uno. diff --git a/keyboards/uno/keymaps/copypasta/keymap.c b/keyboards/uno/keymaps/copypasta/keymap.c new file mode 100644 index 0000000000..74e5f62fc5 --- /dev/null +++ b/keyboards/uno/keymaps/copypasta/keymap.c @@ -0,0 +1,85 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum uno_keycode +{ + UNO = SAFE_RANGE +}; + +static uint16_t pressTimer = 0xFFFF; +#define CUSTOM_LONGPRESS 1000 +#define PASTA_COUNT 4 + +const char *pasta[PASTA_COUNT] = { + "Hey - I'm Uno... V2. This time, I have uno more features: I support a rotary encoder, too. That's it. That's the only difference.", + "Did you ever hear the tragedy of Darth Plagueis the Wise? I thought not. It's not a story the Jedi would tell you. It's a Sith legend. Darth Plagueis was a Dark Lord of the Sith, so powerful and so wise he could use the Force to influence the midichlorians to create life... He had such a knowledge of the dark side that he could even keep the ones he cared about from dying. The dark side of the Force is a pathway to many abilities some consider to be unnatural. He became so powerful... the only thing he was afraid of was losing his power, which eventually, of course, he did. Unfortunately, he taught his apprentice everything he knew, then his apprentice killed him in his sleep. Ironic, he could save others from death, but not himself.", + "The intent is to provide players with a sense of pride and accomplishment for unlocking different heroes. As for cost, we selected initial values based upon data from the Open Beta and other adjustments made to milestone rewards before launch. Among other things, we're looking at average per-player credit earn rates on a daily basis, and we'll be making constant adjustments to ensure that players have challenges that are compelling, rewarding, and of course attainable via gameplay. We appreciate the candid feedback, and the passion the community has put forth around the current topics here on Reddit, our forums and across numerous social media outlets. Our team will continue to make changes and monitor community feedback and update everyone as soon and as often as we can.", + "The FitnessGram Pacer Test is a multistage aerobic capacity test that progressively gets more difficult as it continues. The 20 meter pacer test will begin in 30 seconds. Line up at the start. The running speed starts slowly, but gets faster each minute after you hear this signal. [beep] A single lap should be completed each time you hear this sound. [ding] Remember to run in a straight line, and run as long as possible. The second time you fail to complete a lap before the sound, your test is over. The test will begin on the word start. On your mark, get ready, start.", +}; + +uint8_t pastaIndex = 0; + +enum encoder_names { + _ENCODER, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + UNO + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case UNO: + if (record->event.pressed) { + pressTimer = timer_read(); + } else { + uint16_t timeElapsed = timer_elapsed(pressTimer); + if (timeElapsed < CUSTOM_LONGPRESS) { + send_string(pasta[pastaIndex]); + } else { + reset_keyboard(); + } + } + break; + } + return false; +} + +void keyboard_post_init_user(void) { + rgblight_enable_noeeprom(); + rgblight_sethsv_noeeprom(0, 255, 255); + rgblight_mode_noeeprom(1); + //rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_MOOD); +} + +void encoder_update_user(uint8_t index, bool clockwise) { + if (index == _ENCODER) { /* First encoder */ + if (clockwise) { + pastaIndex++; + pastaIndex %= PASTA_COUNT; + } else { + pastaIndex += PASTA_COUNT; + pastaIndex--; + pastaIndex %= PASTA_COUNT; + } + rgblight_sethsv_noeeprom((255/PASTA_COUNT)*pastaIndex, 255, 255); + rgblight_mode_noeeprom(1); + } +} diff --git a/keyboards/uno/keymaps/copypasta/readme.md b/keyboards/uno/keymaps/copypasta/readme.md new file mode 100644 index 0000000000..1ad009c16c --- /dev/null +++ b/keyboards/uno/keymaps/copypasta/readme.md @@ -0,0 +1,4 @@ +# A copypasta keymap for uno +![Picture](https://i.imgur.com/OqPyWbbl.jpg) + +[A demo of this keymap can be found here.](https://www.reddit.com/r/MechanicalKeyboards/comments/k7w1j1/qmk_is_a_pathway_to_many_abilities_some_consider/) diff --git a/keyboards/uno/keymaps/default/keymap.c b/keyboards/uno/keymaps/default/keymap.c index bb19ea7ddb..43c885c800 100644 --- a/keyboards/uno/keymaps/default/keymap.c +++ b/keyboards/uno/keymaps/default/keymap.c @@ -13,6 +13,7 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + #include QMK_KEYBOARD_H enum uno_keycode @@ -20,20 +21,9 @@ enum uno_keycode UNO = SAFE_RANGE }; -static uint16_t pressTimer = 0xFFFF; -#define CUSTOM_LONGPRESS 150 -#define CUSTOM_LONGERPRESS 750 -#define CUSTOM_STRING "I can put a whole buncha text in here and type it all with a single keypress." -#define RESET_LENGTH 3000 -const uint8_t PROGMEM RGBLED_RAINBOW_MOOD_INTERVALS[] = { 10, 25, 50 }; - -char stringToSend[2] = "a"; -char maxLetter = 'z'; - -uint8_t presetCounter = 0; - -#define COUNTER X_A - +enum encoder_names { + _ENCODER, +}; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( @@ -44,59 +34,30 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { bool process_record_user(uint16_t keycode, keyrecord_t *record) { switch (keycode) { case UNO: - if (record->event.pressed) { - pressTimer = timer_read(); - } else { - uint16_t timeElapsed = timer_elapsed(pressTimer); - switch (presetCounter) { - case 0: - SEND_STRING(SS_LCMD("n")); - break; - case 1: - SEND_STRING("Hello!"); - break; - case 2: - SEND_STRING(SS_TAP(X_ENTER)SS_TAP(X_ENTER)"I am uno!"); - break; - case 3: - SEND_STRING(SS_TAP(X_ENTER)SS_TAP(X_ENTER)"I can do all sorts of useless things!"); - break; - case 4: - SEND_STRING(SS_TAP(X_ENTER)SS_TAP(X_ENTER)"And I have a built-in RGB LED!"SS_TAP(X_ENTER)SS_TAP(X_ENTER)SS_TAP(X_ENTER)); - rgblight_sethsv_noeeprom(255, 255, 255); - rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_MOOD); - break; - default: - if (timeElapsed < CUSTOM_LONGPRESS) { - // Normal press. We're going to send the current letter and increment the counter. - SEND_STRING(SS_TAP(X_BSPACE)); - send_string(stringToSend); - stringToSend[0]++; - if (stringToSend[0] > maxLetter) { - stringToSend[0] = 'a'; - } - } else if (timeElapsed < CUSTOM_LONGERPRESS) { - // Long press, confirm the current letter, reset counter - stringToSend[0] = 'a'; - send_string(stringToSend); - } else if (timeElapsed < RESET_LENGTH) { - // Longer press, display macro. - SEND_STRING(CUSTOM_STRING); - } else { - reset_keyboard(); - } - presetCounter--; - break; - } - presetCounter++; - } - break; + if (record->event.pressed) { + SEND_STRING("Hello!"); + } + break; + return false; } - return false; + return true; } void keyboard_post_init_user(void) { rgblight_enable_noeeprom(); - rgblight_sethsv_noeeprom(0, 0, 0); - rgblight_mode_noeeprom(RGBLIGHT_MODE_STATIC_LIGHT); + rgblight_sethsv_noeeprom(255, 255, 255); + rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_MOOD); } + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == _ENCODER) { /* First encoder */ + if (clockwise) { + tap_code(KC_A); + } else { + tap_code(KC_B); + } + return false; + } + return true; +} + diff --git a/keyboards/uno/keymaps/default/readme.md b/keyboards/uno/keymaps/default/readme.md index 53b762f878..d783a80acc 100644 --- a/keyboards/uno/keymaps/default/readme.md +++ b/keyboards/uno/keymaps/default/readme.md @@ -1,4 +1,5 @@ # The default keymap for uno -![Keymap](https://i.imgur.com/lCPZZpO.png) +![Picture](https://i.imgur.com/OqPyWbbl.jpg) -The 'Macro' key does a few things: If you open up textedit (was made for a mac), it sends "Command+n" for the first press to make a new document. It then types a few different messages, activates the RGB LED, and finally ends in a "scroll through the alphabet with a long press to confirm a certain character" keyboard mode. +This keymap types "Hello!" when pressed and presses 'A' and 'B' when turning the +encoder. diff --git a/keyboards/uno/keymaps/demo/keymap.c b/keyboards/uno/keymaps/demo/keymap.c new file mode 100644 index 0000000000..cd3c3dadef --- /dev/null +++ b/keyboards/uno/keymaps/demo/keymap.c @@ -0,0 +1,123 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum uno_keycode +{ + UNO = SAFE_RANGE +}; + +static uint16_t pressTimer = 0xFFFF; +#define CUSTOM_LONGPRESS 150 +#define CUSTOM_LONGERPRESS 750 +#define CUSTOM_STRING "I can put a whole buncha text in here and type it all with a single keypress." +#define RESET_LENGTH 3000 +const uint8_t PROGMEM RGBLED_RAINBOW_MOOD_INTERVALS[] = { 10, 25, 50 }; + +char stringToSend[2] = "a"; +char maxLetter = 'z'; + +uint8_t presetCounter = 0; + +#define COUNTER X_A + +enum encoder_names { + _ENCODER, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + UNO + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case UNO: + if (record->event.pressed) { + pressTimer = timer_read(); + } else { + uint16_t timeElapsed = timer_elapsed(pressTimer); + switch (presetCounter) { + case 0: + SEND_STRING(SS_LCMD("n")); + break; + case 1: + SEND_STRING("Hello!"); + break; + case 2: + SEND_STRING("\n\nI am uno!"); + break; + case 3: + SEND_STRING("\n\nI can do all sorts of useless things!"); + break; + case 4: + SEND_STRING("\n\nAnd I have a built-in RGB LED!\n\n\n"); + rgblight_sethsv_noeeprom(255, 255, 255); + rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_MOOD); + break; + default: + if (timeElapsed < CUSTOM_LONGPRESS) { + // Normal press. We're going to send the current letter and increment the counter. + SEND_STRING(SS_TAP(X_BSPACE)); + send_string(stringToSend); + stringToSend[0]++; + if (stringToSend[0] > maxLetter) { + stringToSend[0] = 'a'; + } + } else if (timeElapsed < CUSTOM_LONGERPRESS) { + // Long press, confirm the current letter, reset counter + stringToSend[0] = 'a'; + send_string(stringToSend); + } else if (timeElapsed < RESET_LENGTH) { + // Longer press, display macro. + SEND_STRING(CUSTOM_STRING); + } else { + reset_keyboard(); + } + presetCounter--; + break; + } + presetCounter++; + } + break; + } + return false; +} + +void keyboard_post_init_user(void) { + rgblight_enable_noeeprom(); + rgblight_sethsv_noeeprom(0, 0, 0); + rgblight_mode(1); + // Uncomment to enable rainbow mode when plugged in. + // Otherwise, the LED will be revealed after a few keypresses. + //rgblight_sethsv_noeeprom(255, 255, 255); + //rgblight_mode_noeeprom(RGBLIGHT_MODE_RAINBOW_MOOD); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == _ENCODER) { /* First encoder */ + if (clockwise) { + tap_code(KC_A); + } else { + tap_code(KC_B); + } + return false; + } + return true; +} + diff --git a/keyboards/uno/keymaps/demo/readme.md b/keyboards/uno/keymaps/demo/readme.md new file mode 100644 index 0000000000..ec91247861 --- /dev/null +++ b/keyboards/uno/keymaps/demo/readme.md @@ -0,0 +1,4 @@ +# The demo keymap for uno +![Picture](https://i.imgur.com/OqPyWbbl.jpg) + +[You can find a video of this keymap being demoed here](https://imgur.com/a/Z7G5Aam). diff --git a/keyboards/uno/readme.md b/keyboards/uno/readme.md index ce4cccd196..b60ef23e97 100644 --- a/keyboards/uno/readme.md +++ b/keyboards/uno/readme.md @@ -1,19 +1,34 @@ -# uno +# Uno - ![uno](https://i.imgur.com/OqPyWbbl.jpg) +![Uno](https://i.imgur.com/OqPyWbbl.jpg) A 1-key, in-USB "board" for the lulz - * Keyboard Maintainer: [Snipeye](https://github.com/Snipeye) - * Hardware Supported: uno pcb - * Hardware Availability: [GB](https://www.reddit.com/r/mechmarket/comments/gyijm7/gb_uno/) +* Keyboard Maintainer: [Snipeye](https://github.com/Snipeye) +* Hardware Availability: [keyhive.xyz](https://keyhive.xyz/shop/uno-single-key-keyboard) - Make example for this keyboard (after setting up your build environment): +There are two revisions of Uno. If your Uno supports a rotary encoder, use rev2. +If it *does not* support a rotary encoder, use rev1. The following examples use +`rev2` — be sure to change this if you are using `rev1`. - make uno:default +Make example for this keyboard (after setting up your build environment; make +sure to change `rev2` to your Uno's version): - Flashing example for this keyboard: + make uno/rev2:default - make uno:default:flash +Flashing example for this keyboard (change `rev2` to `rev1` if needed): - See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + make uno/rev2:default:flash + +If you prefer to use the `qmk` tool: + + qmk compile -kb uno/rev2 -km default + +Create your own keymap with: + + qmk new-keymap -kb uno/rev2 + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +### Credits ++ Everything by Snipeye diff --git a/keyboards/uno/rev1/config.h b/keyboards/uno/rev1/config.h new file mode 100644 index 0000000000..11c84ad2ab --- /dev/null +++ b/keyboards/uno/rev1/config.h @@ -0,0 +1,74 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#pragma once +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0xACC8 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Broekhuijsen +#define PRODUCT Uno rev1 + +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_ANIMATIONS + +/* key matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Uno default pinout */ +#define DIRECT_PINS { \ + { B6 } \ +} +#define UNUSED_PINS + +#ifdef RGBLIGHT_ENABLE +#define RGB_DI_PIN F6 +#define RGBLED_NUM 1 +#endif + +// #define RGB_DI_PIN E2 +// #ifdef RGB_DI_PIN +// #define RGBLED_NUM 16 +// #define RGBLIGHT_HUE_STEP 32 +// #define RGBLIGHT_SAT_STEP 32 +// #define RGBLIGHT_VAL_STEP 32 +// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// /*== customize breathing effect ==*/ +// /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +// #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +// /*==== use exp() and sin() ====*/ +// #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +// #endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/uno/rev1/rev1.h b/keyboards/uno/rev1/rev1.h new file mode 100644 index 0000000000..691bdd1dc3 --- /dev/null +++ b/keyboards/uno/rev1/rev1.h @@ -0,0 +1,25 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + K00 \ +) { \ + { K00 } \ +} diff --git a/keyboards/uno/rev1/rules.mk b/keyboards/uno/rev1/rules.mk new file mode 100644 index 0000000000..7180be7497 --- /dev/null +++ b/keyboards/uno/rev1/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/uno/rev2/config.h b/keyboards/uno/rev2/config.h new file mode 100644 index 0000000000..37ea08c017 --- /dev/null +++ b/keyboards/uno/rev2/config.h @@ -0,0 +1,49 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#pragma once +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0xACC8 +#define DEVICE_VER 0x0002 +#define MANUFACTURER Broekhuijsen +#define PRODUCT Uno rev2 + +#define RGBLIGHT_EFFECT_RAINBOW_MOOD + +/* ENCODER */ +#define ENCODERS_PAD_A { B2 } +#define ENCODERS_PAD_B { B3 } + +/* key matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* Uno default pinout */ +#define DIRECT_PINS { \ + { D0 } \ +} +#define UNUSED_PINS + +#ifdef RGBLIGHT_ENABLE +#define RGB_DI_PIN D1 +#define RGBLED_NUM 1 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/uno/rev2/rev2.h b/keyboards/uno/rev2/rev2.h new file mode 100644 index 0000000000..691bdd1dc3 --- /dev/null +++ b/keyboards/uno/rev2/rev2.h @@ -0,0 +1,25 @@ +/* Copyright 2020 Snipeye + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + K00 \ +) { \ + { K00 } \ +} diff --git a/keyboards/uno/rev2/rules.mk b/keyboards/uno/rev2/rules.mk new file mode 100644 index 0000000000..1ce2738442 --- /dev/null +++ b/keyboards/uno/rev2/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes diff --git a/keyboards/uno/rules.mk b/keyboards/uno/rules.mk index ebbb7bc613..367faedeaf 100644 --- a/keyboards/uno/rules.mk +++ b/keyboards/uno/rules.mk @@ -1,18 +1 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = caterina - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output +DEFAULT_FOLDER = uno/rev1 diff --git a/keyboards/uno/uno.h b/keyboards/uno/uno.h index 91d48d2ad5..bb3248e293 100644 --- a/keyboards/uno/uno.h +++ b/keyboards/uno/uno.h @@ -13,12 +13,13 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ + #pragma once #include "quantum.h" -#define LAYOUT( \ - K00 \ -) { \ - { K00 } \ -} +#if defined(KEYBOARD_uno_rev1) +# include "rev1.h" +#elif defined(KEYBOARD_uno_rev2) +# include "rev2.h" +#endif From df3770551a4dcbf8188a16453dd64fe1787f83d8 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 14 Mar 2022 10:46:13 +1100 Subject: [PATCH 103/699] USB-USB converter cleanup (#16618) --- keyboards/converter/usb_usb/ble/ble.h | 2 +- keyboards/converter/usb_usb/ble/config.h | 9 +- keyboards/converter/usb_usb/ble/readme.md | 11 -- keyboards/converter/usb_usb/ble/rules.mk | 12 +-- keyboards/converter/usb_usb/config.h | 4 +- keyboards/converter/usb_usb/custom_matrix.cpp | 40 +++---- keyboards/converter/usb_usb/hasu/hasu.h | 2 +- keyboards/converter/usb_usb/main.c | 102 ------------------ .../converter/usb_usb/pro_micro/pro_micro.h | 2 +- keyboards/converter/usb_usb/rules.mk | 18 ++-- keyboards/converter/usb_usb/usb_usb.h | 8 ++ 11 files changed, 41 insertions(+), 169 deletions(-) delete mode 100644 keyboards/converter/usb_usb/main.c diff --git a/keyboards/converter/usb_usb/ble/ble.h b/keyboards/converter/usb_usb/ble/ble.h index 3dccc23a41..3351176047 100644 --- a/keyboards/converter/usb_usb/ble/ble.h +++ b/keyboards/converter/usb_usb/ble/ble.h @@ -1,3 +1,3 @@ #pragma once -#include QMK_KEYBOARD_H +#include "usb_usb.h" diff --git a/keyboards/converter/usb_usb/ble/config.h b/keyboards/converter/usb_usb/ble/config.h index 92df24d003..675183f082 100644 --- a/keyboards/converter/usb_usb/ble/config.h +++ b/keyboards/converter/usb_usb/ble/config.h @@ -1,13 +1,6 @@ #pragma once #undef PRODUCT -#define PRODUCT QMK BLE Adapter +#define PRODUCT QMK BLE Adapter -// Turn off the mode leds on the BLE module -#define BLUEFRUIT_LE_ENABLE_MODE_LEDS 0 -#define BLUEFRUIT_LE_ENABLE_POWER_LED 0 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define NO_ACTION_ONESHOT - diff --git a/keyboards/converter/usb_usb/ble/readme.md b/keyboards/converter/usb_usb/ble/readme.md index 0ee7223fd4..05cf437399 100644 --- a/keyboards/converter/usb_usb/ble/readme.md +++ b/keyboards/converter/usb_usb/ble/readme.md @@ -17,14 +17,3 @@ Part list: * [Pololu 5V Step-Up Voltage Regulator U3V12F5](https://www.pololu.com/product/2115) * [Lithium Ion Battery - 3.7v 2000mAh](https://www.adafruit.com/product/2011) * Some sort of switch to be able to turn it off - -Building and Flashing ---------------------- - -``` -make converter-usb_usb-ble -``` - -``` -make converter-usb_usb-ble-avrdude -``` \ No newline at end of file diff --git a/keyboards/converter/usb_usb/ble/rules.mk b/keyboards/converter/usb_usb/ble/rules.mk index df5bc36635..86a4e15ffe 100644 --- a/keyboards/converter/usb_usb/ble/rules.mk +++ b/keyboards/converter/usb_usb/ble/rules.mk @@ -1,17 +1,7 @@ # Processor frequency F_CPU = 8000000 -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = no # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output - +EXTRAKEY_ENABLE = no BLUETOOTH_ENABLE = yes BLUETOOTH_DRIVER = BluefruitLE - LTO_ENABLE = yes diff --git a/keyboards/converter/usb_usb/config.h b/keyboards/converter/usb_usb/config.h index d2488336a5..5f791eaa34 100644 --- a/keyboards/converter/usb_usb/config.h +++ b/keyboards/converter/usb_usb/config.h @@ -17,6 +17,8 @@ along with this program. If not, see . #pragma once +#include "config_common.h" + /* USB Device descriptor parameter */ #define VENDOR_ID 0xFEED #define PRODUCT_ID 0x005B @@ -43,5 +45,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/converter/usb_usb/custom_matrix.cpp b/keyboards/converter/usb_usb/custom_matrix.cpp index 00b5bc5053..a92feeb6c1 100644 --- a/keyboards/converter/usb_usb/custom_matrix.cpp +++ b/keyboards/converter/usb_usb/custom_matrix.cpp @@ -58,36 +58,31 @@ extern "C" { */ #define ROW_MASK 0xF0 #define COL_MASK 0x0F -#define CODE(row, col) (((row) << 4) | (col)) -#define ROW(code) (((code) & ROW_MASK) >> 4) -#define COL(code) ((code) & COL_MASK) -#define ROW_BITS(code) (1 << COL(code)) - +#define CODE(row, col) (((row) << 4) | (col)) +#define ROW(code) (((code) & ROW_MASK) >> 4) +#define COL(code) ((code) & COL_MASK) +#define ROW_BITS(code) (1 << COL(code)) // Integrated key state of all keyboards static report_keyboard_t local_keyboard_report; -static bool matrix_is_mod = false; - /* * USB Host Shield HID keyboards * This supports two cascaded hubs and four keyboards */ USB usb_host; -HIDBoot kbd1(&usb_host); -HIDBoot kbd2(&usb_host); -HIDBoot kbd3(&usb_host); -HIDBoot kbd4(&usb_host); +USBHub hub1(&usb_host); +USBHub hub2(&usb_host); +HIDBoot kbd1(&usb_host); +HIDBoot kbd2(&usb_host); +HIDBoot kbd3(&usb_host); +HIDBoot kbd4(&usb_host); KBDReportParser kbd_parser1; KBDReportParser kbd_parser2; KBDReportParser kbd_parser3; KBDReportParser kbd_parser4; -USBHub hub1(&usb_host); -USBHub hub2(&usb_host); - -extern "C" -{ +extern "C" { uint8_t matrix_rows(void) { return MATRIX_ROWS; } uint8_t matrix_cols(void) { return MATRIX_COLS; } bool matrix_has_ghost(void) { return false; } @@ -135,6 +130,7 @@ extern "C" } uint8_t matrix_scan(void) { + bool changed = false; static uint16_t last_time_stamp1 = 0; static uint16_t last_time_stamp2 = 0; static uint16_t last_time_stamp3 = 0; @@ -158,15 +154,13 @@ extern "C" or_report(kbd_parser3.report); or_report(kbd_parser4.report); - matrix_is_mod = true; + changed = true; dprintf("state: %02X %02X", local_keyboard_report.mods, local_keyboard_report.reserved); for (uint8_t i = 0; i < KEYBOARD_REPORT_KEYS; i++) { dprintf(" %02X", local_keyboard_report.keys[i]); } dprint("\r\n"); - } else { - matrix_is_mod = false; } uint16_t timer; @@ -189,7 +183,7 @@ extern "C" } } matrix_scan_quantum(); - return 1; + return changed; } bool matrix_is_on(uint8_t row, uint8_t col) { @@ -234,13 +228,11 @@ extern "C" } } - void led_set(uint8_t usb_led) - { + void led_set(uint8_t usb_led) { if (kbd1.isReady()) kbd1.SetReport(0, 0, 2, 0, 1, &usb_led); if (kbd2.isReady()) kbd2.SetReport(0, 0, 2, 0, 1, &usb_led); if (kbd3.isReady()) kbd3.SetReport(0, 0, 2, 0, 1, &usb_led); if (kbd4.isReady()) kbd4.SetReport(0, 0, 2, 0, 1, &usb_led); led_set_kb(usb_led); } - -}; +} diff --git a/keyboards/converter/usb_usb/hasu/hasu.h b/keyboards/converter/usb_usb/hasu/hasu.h index 3dccc23a41..3351176047 100644 --- a/keyboards/converter/usb_usb/hasu/hasu.h +++ b/keyboards/converter/usb_usb/hasu/hasu.h @@ -1,3 +1,3 @@ #pragma once -#include QMK_KEYBOARD_H +#include "usb_usb.h" diff --git a/keyboards/converter/usb_usb/main.c b/keyboards/converter/usb_usb/main.c deleted file mode 100644 index 76e88922cb..0000000000 --- a/keyboards/converter/usb_usb/main.c +++ /dev/null @@ -1,102 +0,0 @@ -#include -#include -#include -#include - -// LUFA -#include "lufa.h" - -#include "sendchar.h" -#include "debug.h" -#include "keyboard.h" -#include "led.h" - - -/* LED ping configuration */ -#define TMK_LED -//#define LEONARDO_LED -#if defined(TMK_LED) -// For TMK converter and Teensy -#define LED_TX_INIT (DDRD |= (1<<6)) -#define LED_TX_ON (PORTD |= (1<<6)) -#define LED_TX_OFF (PORTD &= ~(1<<6)) -#define LED_TX_TOGGLE (PORTD ^= (1<<6)) -#elif defined(LEONARDO_LED) -// For Leonardo(TX LED) -#define LED_TX_INIT (DDRD |= (1<<5)) -#define LED_TX_ON (PORTD &= ~(1<<5)) -#define LED_TX_OFF (PORTD |= (1<<5)) -#define LED_TX_TOGGLE (PORTD ^= (1<<5)) -#else -#define LED_TX_INIT -#define LED_TX_ON -#define LED_TX_OFF -#define LED_TX_TOGGLE -#endif - - -static void LUFA_setup(void) -{ - /* Disable watchdog if enabled by bootloader/fuses */ - MCUSR &= ~(1 << WDRF); - wdt_disable(); - - /* Disable clock division */ -#if (F_CPU == 8000000) - clock_prescale_set(clock_div_2); // 16MHz crystal divided by 2 -#else - clock_prescale_set(clock_div_1); -#endif - - // Leonardo needs. Without this USB device is not recognized. - USB_Disable(); - - USB_Init(); - - // for Console_Task - USB_Device_EnableSOFEvents(); - print_set_sendchar(sendchar); -} - - - -int main(void) -{ - // LED for debug - LED_TX_INIT; - LED_TX_ON; - - debug_enable = true; - debug_keyboard = true; - - host_set_driver(&lufa_driver); - keyboard_init(); - - LUFA_setup(); - - /* NOTE: Don't insert time consuming job here. - * It'll cause unclear initialization failure when DFU reset(worm start). - */ - sei(); - -/* Some keyboards bootup quickly and cannot be initialized with this startup wait. - // wait for startup of sendchar routine - while (USB_DeviceState != DEVICE_STATE_Configured) ; - if (debug_enable) { - _delay_ms(1000); - } -*/ - - debug("init: done\n"); - - for (;;) { - keyboard_task(); - -#if !defined(INTERRUPT_CONTROL_ENDPOINT) - // LUFA Task for control request - USB_USBTask(); -#endif - } - - return 0; -} diff --git a/keyboards/converter/usb_usb/pro_micro/pro_micro.h b/keyboards/converter/usb_usb/pro_micro/pro_micro.h index 3dccc23a41..3351176047 100644 --- a/keyboards/converter/usb_usb/pro_micro/pro_micro.h +++ b/keyboards/converter/usb_usb/pro_micro/pro_micro.h @@ -1,3 +1,3 @@ #pragma once -#include QMK_KEYBOARD_H +#include "usb_usb.h" diff --git a/keyboards/converter/usb_usb/rules.mk b/keyboards/converter/usb_usb/rules.mk index 19903ed331..a33c0aaa54 100644 --- a/keyboards/converter/usb_usb/rules.mk +++ b/keyboards/converter/usb_usb/rules.mk @@ -8,15 +8,17 @@ BOOTLOADER = caterina # change yes to no to disable # BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -#MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -#CONSOLE_ENABLE = yes # Console for debug -#COMMAND_ENABLE = yes # Commands for debug and configuration +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover -#BACKLIGHT_ENABLE = yes -USB_HID_ENABLE = yes -CUSTOM_MATRIX = yes +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +USB_HID_ENABLE = yes +CUSTOM_MATRIX = yes -SRC = custom_matrix.cpp +SRC += custom_matrix.cpp DEFAULT_FOLDER = converter/usb_usb/hasu diff --git a/keyboards/converter/usb_usb/usb_usb.h b/keyboards/converter/usb_usb/usb_usb.h index 3acd67634a..4a25cf5d2e 100644 --- a/keyboards/converter/usb_usb/usb_usb.h +++ b/keyboards/converter/usb_usb/usb_usb.h @@ -19,6 +19,14 @@ along with this program. If not, see . #include "quantum.h" +#if defined(KEYBOARD_converter_usb_usb_ble) +# include "ble.h" +#elif defined(KEYBOARD_converter_usb_usb_hasu) +# include "hasu.h" +#elif defined(KEYBOARD_converter_usb_usb_pro_micro) +# include "pro_micro.h" +#endif + #define XXX KC_NO #define ______ KC_TRNS From c0f417911703738b3ede14b87be5c4a39db07016 Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 14 Mar 2022 10:54:49 +1100 Subject: [PATCH 104/699] Move keyboard USB IDs and strings to data driven: 0-9 (#16481) --- keyboards/0xc7/61key/config.h | 9 +-------- keyboards/0xc7/61key/info.json | 6 ++++++ keyboards/0xcb/1337/config.h | 7 ------- keyboards/0xcb/1337/info.json | 8 +++++++- keyboards/0xcb/static/config.h | 6 ------ keyboards/0xcb/static/info.json | 8 +++++++- keyboards/10bleoledhub/config.h | 5 ----- keyboards/10bleoledhub/info.json | 6 ++++++ keyboards/1upkeyboards/1up60hse/config.h | 7 ------- keyboards/1upkeyboards/1up60hse/info.json | 6 ++++++ keyboards/1upkeyboards/1up60hte/config.h | 7 ------- keyboards/1upkeyboards/1up60hte/info.json | 6 ++++++ keyboards/1upkeyboards/1up60rgb/config.h | 7 ------- keyboards/1upkeyboards/1up60rgb/info.json | 8 +++++++- keyboards/1upkeyboards/super16/config.h | 7 ------- keyboards/1upkeyboards/super16/info.json | 6 ++++++ keyboards/1upkeyboards/super16v2/config.h | 7 ------- keyboards/1upkeyboards/super16v2/info.json | 8 +++++++- keyboards/25keys/cassette42/config.h | 8 -------- keyboards/25keys/cassette42/info.json | 12 +++++++++--- keyboards/2key2crawl/config.h | 7 ------- keyboards/2key2crawl/info.json | 8 +++++++- keyboards/30wer/config.h | 7 ------- keyboards/30wer/info.json | 12 +++++++++--- keyboards/3keyecosystem/2key2/config.h | 7 ------- keyboards/3keyecosystem/2key2/info.json | 8 +++++++- keyboards/40percentclub/25/config.h | 7 ------- keyboards/40percentclub/25/info.json | 8 +++++++- keyboards/40percentclub/4pack/config.h | 7 ------- keyboards/40percentclub/4pack/info.json | 12 +++++++++--- keyboards/40percentclub/4x4/config.h | 7 ------- keyboards/40percentclub/4x4/info.json | 8 +++++++- keyboards/40percentclub/5x5/config.h | 7 ------- keyboards/40percentclub/5x5/info.json | 8 +++++++- keyboards/40percentclub/6lit/config.h | 7 ------- keyboards/40percentclub/6lit/info.json | 8 +++++++- keyboards/40percentclub/foobar/config.h | 7 ------- keyboards/40percentclub/foobar/info.json | 8 +++++++- keyboards/40percentclub/gherkin/config.h | 7 ------- keyboards/40percentclub/gherkin/info.json | 6 ++++++ keyboards/40percentclub/half_n_half/config.h | 7 ------- keyboards/40percentclub/half_n_half/info.json | 6 ++++++ keyboards/40percentclub/i75/config.h | 7 ------- keyboards/40percentclub/i75/info.json | 6 ++++++ keyboards/40percentclub/luddite/config.h | 7 ------- keyboards/40percentclub/luddite/info.json | 6 ++++++ keyboards/40percentclub/mf68/config.h | 7 ------- keyboards/40percentclub/mf68/info.json | 6 ++++++ keyboards/40percentclub/nano/config.h | 7 ------- keyboards/40percentclub/nano/info.json | 6 ++++++ keyboards/40percentclub/nein/config.h | 7 ------- keyboards/40percentclub/nein/info.json | 8 +++++++- keyboards/40percentclub/nori/config.h | 7 ------- keyboards/40percentclub/nori/info.json | 8 +++++++- keyboards/40percentclub/polyandry/config.h | 7 ------- keyboards/40percentclub/polyandry/info.json | 8 +++++++- keyboards/40percentclub/sixpack/config.h | 7 ------- keyboards/40percentclub/sixpack/info.json | 6 ++++++ keyboards/40percentclub/tomato/config.h | 7 ------- keyboards/40percentclub/tomato/info.json | 6 ++++++ keyboards/40percentclub/ut47/config.h | 7 ------- keyboards/40percentclub/ut47/info.json | 8 +++++++- keyboards/45_ats/config.h | 7 ------- keyboards/45_ats/info.json | 8 +++++++- keyboards/4by3/config.h | 7 ------- keyboards/4by3/info.json | 6 ++++++ keyboards/7c8/framework/config.h | 6 ------ keyboards/7c8/framework/info.json | 6 ++++++ keyboards/9key/config.h | 7 ------- keyboards/9key/info.json | 8 +++++++- 70 files changed, 237 insertions(+), 269 deletions(-) diff --git a/keyboards/0xc7/61key/config.h b/keyboards/0xc7/61key/config.h index d83a855572..d1edf3284e 100644 --- a/keyboards/0xc7/61key/config.h +++ b/keyboards/0xc7/61key/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xE117 -#define PRODUCT_ID 0x6161 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 0xC7 -#define PRODUCT 61Key - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 14 @@ -149,4 +142,4 @@ along with this program. If not, see . /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/0xc7/61key/info.json b/keyboards/0xc7/61key/info.json index 02070e87c9..9ed798c93b 100644 --- a/keyboards/0xc7/61key/info.json +++ b/keyboards/0xc7/61key/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "61Key", + "manufacturer": "0xC7", "url": "", "maintainer": "RealEmanGaming", + "usb": { + "vid": "0xE117", + "pid": "0x6161", + "device_version": "0.0.1" + }, "layout_aliases": { "LAYOUT": "LAYOUT_60_ansi" }, diff --git a/keyboards/0xcb/1337/config.h b/keyboards/0xcb/1337/config.h index d134d1ab49..3b34af6580 100644 --- a/keyboards/0xcb/1337/config.h +++ b/keyboards/0xcb/1337/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" // clang-format off -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xCB00 -#define PRODUCT_ID 0x1337 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 0xCB -#define PRODUCT 1337 - /* key matrix size */ #define MATRIX_ROWS 3 #define MATRIX_COLS 3 diff --git a/keyboards/0xcb/1337/info.json b/keyboards/0xcb/1337/info.json index 25899933cb..cd5993ee0d 100644 --- a/keyboards/0xcb/1337/info.json +++ b/keyboards/0xcb/1337/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "0xCB 1337", + "keyboard_name": "1337", + "manufacturer": "0xCB", "url": "https://0xCB.dev", "maintainer": "Conor-Burns", + "usb": { + "vid": "0xCB00", + "pid": "0x1337", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/0xcb/static/config.h b/keyboards/0xcb/static/config.h index c30450b460..9c3a0c6649 100644 --- a/keyboards/0xcb/static/config.h +++ b/keyboards/0xcb/static/config.h @@ -18,12 +18,6 @@ along with this program. If not, see . #include "config_common.h" // clang-format off -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xCB00 -#define PRODUCT_ID 0xA455 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 0xCB -#define PRODUCT Static /* key matrix size */ #define MATRIX_ROWS 8 diff --git a/keyboards/0xcb/static/info.json b/keyboards/0xcb/static/info.json index 33fa8d265e..4a6232abad 100644 --- a/keyboards/0xcb/static/info.json +++ b/keyboards/0xcb/static/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "0xCB Static", + "keyboard_name": "Static", + "manufacturer": "0xCB", "url": "https://0xCB.dev", "maintainer": "Conor-Burns", + "usb": { + "vid": "0xCB00", + "pid": "0xA455", + "device_version": "0.0.1" + }, "layout_aliases": { "LAYOUT": "LAYOUT_all" }, diff --git a/keyboards/10bleoledhub/config.h b/keyboards/10bleoledhub/config.h index d3e845fec9..867589a27c 100644 --- a/keyboards/10bleoledhub/config.h +++ b/keyboards/10bleoledhub/config.h @@ -17,11 +17,6 @@ along with this program. If not, see .*/ #pragma once #include "config_common.h" -#define VENDOR_ID 0x7C88 // "hw" = haierwangwei2005 -#define PRODUCT_ID 0x7C99 // "10b" = 10bleoledhub -#define DEVICE_VER 0x0001 -#define MANUFACTURER haierwangwei2005 -#define PRODUCT 10bleoledhub /* key matrix size */ #define MATRIX_ROWS 4 diff --git a/keyboards/10bleoledhub/info.json b/keyboards/10bleoledhub/info.json index 769c98874d..ec468454b1 100644 --- a/keyboards/10bleoledhub/info.json +++ b/keyboards/10bleoledhub/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "10bleoledhub", + "manufacturer": "haierwangwei2005", "url": "https://github.com/haierwangwei2005/10BLE-OLED-HUB", "maintainer": "haierwangwei2005", + "usb": { + "vid": "0x7C88", + "pid": "0x7C99", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/1upkeyboards/1up60hse/config.h b/keyboards/1upkeyboards/1up60hse/config.h index 7a7fa56fe5..3f4f742b48 100644 --- a/keyboards/1upkeyboards/1up60hse/config.h +++ b/keyboards/1upkeyboards/1up60hse/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6F75 // OU -#define PRODUCT_ID 0x6873 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 1upkeyboards -#define PRODUCT 1up60hse - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 14 diff --git a/keyboards/1upkeyboards/1up60hse/info.json b/keyboards/1upkeyboards/1up60hse/info.json index 7eca93d8a9..d6d87310d6 100644 --- a/keyboards/1upkeyboards/1up60hse/info.json +++ b/keyboards/1upkeyboards/1up60hse/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "1up60hse", + "manufacturer": "1upkeyboards", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x6F75", + "pid": "0x6873", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_60_ansi": { "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"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":2.75}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":4, "w":1.25}] diff --git a/keyboards/1upkeyboards/1up60hte/config.h b/keyboards/1upkeyboards/1up60hte/config.h index 81fa0e1eb6..256af396e5 100644 --- a/keyboards/1upkeyboards/1up60hte/config.h +++ b/keyboards/1upkeyboards/1up60hte/config.h @@ -20,13 +20,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6F75 // OU -#define PRODUCT_ID 0x6874 // HT -#define DEVICE_VER 0x0001 -#define MANUFACTURER 1upkeyboards -#define PRODUCT 1up60hte - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 14 diff --git a/keyboards/1upkeyboards/1up60hte/info.json b/keyboards/1upkeyboards/1up60hte/info.json index 830c6e289f..3a4a716d96 100644 --- a/keyboards/1upkeyboards/1up60hte/info.json +++ b/keyboards/1upkeyboards/1up60hte/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "1up60hte", + "manufacturer": "1upkeyboards", "url": "https://www.1upkeyboards.com/shop/controllers/1up-rgb-60-pcb-hte/", "maintainer": "1upkeyboards", + "usb": { + "vid": "0x6F75", + "pid": "0x6874", + "device_version": "0.0.1" + }, "layout_aliases": { "LAYOUT_tsangan": "LAYOUT_60_tsangan_hhkb" }, diff --git a/keyboards/1upkeyboards/1up60rgb/config.h b/keyboards/1upkeyboards/1up60rgb/config.h index c78fc3e52b..00cff570b1 100644 --- a/keyboards/1upkeyboards/1up60rgb/config.h +++ b/keyboards/1upkeyboards/1up60rgb/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6F75 // OU -#define PRODUCT_ID 0x7267 // RG -#define DEVICE_VER 0x0001 -#define MANUFACTURER 1upkeyboards -#define PRODUCT 1UP RGB Underglow PCB - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 15 diff --git a/keyboards/1upkeyboards/1up60rgb/info.json b/keyboards/1upkeyboards/1up60rgb/info.json index 701088c461..956ccb0afa 100644 --- a/keyboards/1upkeyboards/1up60rgb/info.json +++ b/keyboards/1upkeyboards/1up60rgb/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "1up60rgb", + "keyboard_name": "1UP RGB Underglow PCB", + "manufacturer": "1upkeyboards", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x6F75", + "pid": "0x7267", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_all": { "layout": [ diff --git a/keyboards/1upkeyboards/super16/config.h b/keyboards/1upkeyboards/super16/config.h index c0c0a7891b..354f0680e8 100644 --- a/keyboards/1upkeyboards/super16/config.h +++ b/keyboards/1upkeyboards/super16/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6F75 // "ou" -#define PRODUCT_ID 0x5516 // "U" 16 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 1upkeyboards -#define PRODUCT super16 - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 4 diff --git a/keyboards/1upkeyboards/super16/info.json b/keyboards/1upkeyboards/super16/info.json index 261fde20a6..b437bb5038 100644 --- a/keyboards/1upkeyboards/super16/info.json +++ b/keyboards/1upkeyboards/super16/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "super16", + "manufacturer": "1upkeyboards", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x6F75", + "pid": "0x5516", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_4x4": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}] diff --git a/keyboards/1upkeyboards/super16v2/config.h b/keyboards/1upkeyboards/super16v2/config.h index 4fd4238780..77bb89d954 100644 --- a/keyboards/1upkeyboards/super16v2/config.h +++ b/keyboards/1upkeyboards/super16v2/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6F75 // OU -#define PRODUCT_ID 0x5517 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 1upkeyboards -#define PRODUCT super16v2 - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 4 diff --git a/keyboards/1upkeyboards/super16v2/info.json b/keyboards/1upkeyboards/super16v2/info.json index 2a384f775d..891eaf316b 100644 --- a/keyboards/1upkeyboards/super16v2/info.json +++ b/keyboards/1upkeyboards/super16v2/info.json @@ -1,10 +1,16 @@ { "keyboard_name": "super16v2", + "manufacturer": "1upkeyboards", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x6F75", + "pid": "0x5517", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_4x4": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}] } } - } \ No newline at end of file + } diff --git a/keyboards/25keys/cassette42/config.h b/keyboards/25keys/cassette42/config.h index cac03f6346..71621695f4 100644 --- a/keyboards/25keys/cassette42/config.h +++ b/keyboards/25keys/cassette42/config.h @@ -19,14 +19,6 @@ along with this program. If not, see . #include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0xCA42 -#define DEVICE_VER 0x0001 -#define MANUFACTURER monksoffunk -#define PRODUCT cassette42 - /* key matrix size */ #define MATRIX_ROWS 1 #define MATRIX_COLS 6 diff --git a/keyboards/25keys/cassette42/info.json b/keyboards/25keys/cassette42/info.json index 87c67df951..4fe088f9e6 100644 --- a/keyboards/25keys/cassette42/info.json +++ b/keyboards/25keys/cassette42/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "cassette42", - "url": "http://www.sho-k.co.uk/tech/1246.html", - "maintainer": "monksoffunk", + "keyboard_name": "cassette42", + "manufacturer": "monksoffunk", + "url": "http://www.sho-k.co.uk/tech/1246.html", + "maintainer": "monksoffunk", + "usb": { + "vid": "0xFEED", + "pid": "0xCA42", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [{"x":0.5, "y":0.75}, {"x":2.5, "y":0.75}, {"x":0, "y":1.75}, {"x":1, "y":1.75}, {"x":2, "y":1.75}, {"x":3, "y":1.75}] diff --git a/keyboards/2key2crawl/config.h b/keyboards/2key2crawl/config.h index 27a94a00ca..f6fc6f8c1e 100644 --- a/keyboards/2key2crawl/config.h +++ b/keyboards/2key2crawl/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6090 -#define DEVICE_VER 0x0002 -#define MANUFACTURER WoodKeys.click -#define PRODUCT 2Key2Crawl - /* key matrix size */ #define MATRIX_ROWS 2 #define MATRIX_COLS 7 diff --git a/keyboards/2key2crawl/info.json b/keyboards/2key2crawl/info.json index cc48e81138..c2cad98470 100644 --- a/keyboards/2key2crawl/info.json +++ b/keyboards/2key2crawl/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "2Key2CrawlPad", + "keyboard_name": "2Key2Crawl", + "manufacturer": "WoodKeys.click", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0xFEED", + "pid": "0x6090", + "device_version": "0.0.2" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/30wer/config.h b/keyboards/30wer/config.h index d4f656edca..65a54cba4a 100644 --- a/keyboards/30wer/config.h +++ b/keyboards/30wer/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x1234 -#define PRODUCT_ID 0x5678 -#define DEVICE_VER 0x0000 -#define MANUFACTURER 8o7wer -#define PRODUCT 30wer - /* key matrix size */ #define MATRIX_ROWS 3 #define MATRIX_COLS 13 diff --git a/keyboards/30wer/info.json b/keyboards/30wer/info.json index 18ea404fd2..62fee361a0 100644 --- a/keyboards/30wer/info.json +++ b/keyboards/30wer/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "30wer", - "url": "", - "maintainer": "qmk", + "keyboard_name": "30wer", + "manufacturer": "8o7wer", + "url": "", + "maintainer": "qmk", + "usb": { + "vid": "0x1234", + "pid": "0x5678", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/3keyecosystem/2key2/config.h b/keyboards/3keyecosystem/2key2/config.h index 4ca0e830ee..58010eea55 100644 --- a/keyboards/3keyecosystem/2key2/config.h +++ b/keyboards/3keyecosystem/2key2/config.h @@ -18,13 +18,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x1209 -#define PRODUCT_ID 0x3304 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 3-Key-Ecosystem -#define PRODUCT 2key2 - /* key matrix size */ #define MATRIX_ROWS 1 #define MATRIX_COLS 2 diff --git a/keyboards/3keyecosystem/2key2/info.json b/keyboards/3keyecosystem/2key2/info.json index 49caf91b5a..79e999cc16 100644 --- a/keyboards/3keyecosystem/2key2/info.json +++ b/keyboards/3keyecosystem/2key2/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "3-Key-Ecosystem 2key2: 2x1 macro-keyboard", + "keyboard_name": "2key2", + "manufacturer": "3-Key-Ecosystem", "url": "https://github.com/softplus/3keyecosystem/tree/main/2key2", "maintainer": "softplus", + "usb": { + "vid": "0x1209", + "pid": "0x3304", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/40percentclub/25/config.h b/keyboards/40percentclub/25/config.h index d478131e95..292854f68f 100644 --- a/keyboards/40percentclub/25/config.h +++ b/keyboards/40percentclub/25/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // 40% -#define PRODUCT_ID 0x0F25 -#define DEVICE_VER 0x0100 -#define MANUFACTURER di0ib -#define PRODUCT The 5x5 Keyboard - #define USE_SERIAL /* serial.c configuration for split keyboard */ #define SOFT_SERIAL_PIN D0 diff --git a/keyboards/40percentclub/25/info.json b/keyboards/40percentclub/25/info.json index 1e86454125..15995f8479 100644 --- a/keyboards/40percentclub/25/info.json +++ b/keyboards/40percentclub/25/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "foobar", + "keyboard_name": "The 5x5 Keyboard", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0F25", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT_ortho_5x5": { "layout": [ diff --git a/keyboards/40percentclub/4pack/config.h b/keyboards/40percentclub/4pack/config.h index 023df5fc4e..305e71e542 100644 --- a/keyboards/40percentclub/4pack/config.h +++ b/keyboards/40percentclub/4pack/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x0000 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 40percentclub -#define PRODUCT 4pack - /* key matrix size */ #define MATRIX_ROWS 1 #define MATRIX_COLS 4 diff --git a/keyboards/40percentclub/4pack/info.json b/keyboards/40percentclub/4pack/info.json index d328a999c2..e8e0463ab6 100644 --- a/keyboards/40percentclub/4pack/info.json +++ b/keyboards/40percentclub/4pack/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "4pack", - "url": "", - "maintainer": "qmk", + "keyboard_name": "4pack", + "manufacturer": "40percentclub", + "url": "", + "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0000", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}] diff --git a/keyboards/40percentclub/4x4/config.h b/keyboards/40percentclub/4x4/config.h index 439aa1b147..b74eb62c1e 100644 --- a/keyboards/40percentclub/4x4/config.h +++ b/keyboards/40percentclub/4x4/config.h @@ -4,13 +4,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 //"40 %", since 0x3430 is already registered. -#define PRODUCT_ID 0x0A0C -#define DEVICE_VER 0x4444 -#define MANUFACTURER di0ib -#define PRODUCT The 4x4 Keyboard - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 16 diff --git a/keyboards/40percentclub/4x4/info.json b/keyboards/40percentclub/4x4/info.json index 96a08d3fd5..f0e55b4c23 100644 --- a/keyboards/40percentclub/4x4/info.json +++ b/keyboards/40percentclub/4x4/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "40percent.club 4x4", + "keyboard_name": "The 4x4 Keyboard", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0A0C", + "device_version": "44.4.4" + }, "layouts": { "LAYOUT_ortho_4x4": { "layout": [ diff --git a/keyboards/40percentclub/5x5/config.h b/keyboards/40percentclub/5x5/config.h index c3bb5d6380..62d63b8afa 100644 --- a/keyboards/40percentclub/5x5/config.h +++ b/keyboards/40percentclub/5x5/config.h @@ -4,13 +4,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // 40% -#define PRODUCT_ID 0x05B5 -#define DEVICE_VER 0x0100 -#define MANUFACTURER di0ib -#define PRODUCT The 5x5 Keyboard - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 15 diff --git a/keyboards/40percentclub/5x5/info.json b/keyboards/40percentclub/5x5/info.json index bb6b836ba9..94ffc2d9d2 100644 --- a/keyboards/40percentclub/5x5/info.json +++ b/keyboards/40percentclub/5x5/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "40percent.club 5x5", + "keyboard_name": "The 5x5 Keyboard", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x05B5", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT_ortho_5x5": { "layout": [ diff --git a/keyboards/40percentclub/6lit/config.h b/keyboards/40percentclub/6lit/config.h index ae4ee1bad8..e402932b21 100644 --- a/keyboards/40percentclub/6lit/config.h +++ b/keyboards/40percentclub/6lit/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // 40% -#define PRODUCT_ID 0x0F61 -#define DEVICE_VER 0x0100 -#define MANUFACTURER di0ib -#define PRODUCT The 6lit Macropad - #define USE_SERIAL /* serial.c configuration for split keyboard */ diff --git a/keyboards/40percentclub/6lit/info.json b/keyboards/40percentclub/6lit/info.json index 8308847f6c..a844a044e2 100644 --- a/keyboards/40percentclub/6lit/info.json +++ b/keyboards/40percentclub/6lit/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "6lit", + "keyboard_name": "The 6lit Macropad", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0F61", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT_ortho_2x3": { "layout": [ diff --git a/keyboards/40percentclub/foobar/config.h b/keyboards/40percentclub/foobar/config.h index 1e91d3bd10..3f6cb1f10c 100644 --- a/keyboards/40percentclub/foobar/config.h +++ b/keyboards/40percentclub/foobar/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // 40% -#define PRODUCT_ID 0x0F00 -#define DEVICE_VER 0x0100 -#define MANUFACTURER di0ib -#define PRODUCT The foobar Keyboard - #define USE_SERIAL /* serial.c configuration for split keyboard */ diff --git a/keyboards/40percentclub/foobar/info.json b/keyboards/40percentclub/foobar/info.json index b825ed0267..832e65bfc6 100644 --- a/keyboards/40percentclub/foobar/info.json +++ b/keyboards/40percentclub/foobar/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "foobar", + "keyboard_name": "The foobar Keyboard", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0F00", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT_ortho_3x5": { "layout": [ diff --git a/keyboards/40percentclub/gherkin/config.h b/keyboards/40percentclub/gherkin/config.h index 6373ea2e60..e7062990cb 100644 --- a/keyboards/40percentclub/gherkin/config.h +++ b/keyboards/40percentclub/gherkin/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 //"40 %", since 0x3430 is already registered. -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER 40 Percent Club -#define PRODUCT Gherkin - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 6 diff --git a/keyboards/40percentclub/gherkin/info.json b/keyboards/40percentclub/gherkin/info.json index b4600eba00..8693875449 100644 --- a/keyboards/40percentclub/gherkin/info.json +++ b/keyboards/40percentclub/gherkin/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Gherkin", + "manufacturer": "40 Percent Club", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x6060", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_3x10": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}] diff --git a/keyboards/40percentclub/half_n_half/config.h b/keyboards/40percentclub/half_n_half/config.h index 0c819031da..292ac485bd 100644 --- a/keyboards/40percentclub/half_n_half/config.h +++ b/keyboards/40percentclub/half_n_half/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // 40% -#define PRODUCT_ID 0x4A1F -#define DEVICE_VER 0x0100 -#define MANUFACTURER di0ib -#define PRODUCT half_n_half - /* key matrix size */ #define MATRIX_ROWS 4*2 #define MATRIX_COLS 7 diff --git a/keyboards/40percentclub/half_n_half/info.json b/keyboards/40percentclub/half_n_half/info.json index 57a65424f0..1b7f129401 100644 --- a/keyboards/40percentclub/half_n_half/info.json +++ b/keyboards/40percentclub/half_n_half/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "half_n_half", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x4A1F", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/40percentclub/i75/config.h b/keyboards/40percentclub/i75/config.h index bacf9eb30f..bce564c042 100644 --- a/keyboards/40percentclub/i75/config.h +++ b/keyboards/40percentclub/i75/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x0A0C -#define DEVICE_VER 0x0175 -#define MANUFACTURER di0ib -#define PRODUCT i75 - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 diff --git a/keyboards/40percentclub/i75/info.json b/keyboards/40percentclub/i75/info.json index 7e705cdf86..1753d42309 100644 --- a/keyboards/40percentclub/i75/info.json +++ b/keyboards/40percentclub/i75/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "i75", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0A0C", + "device_version": "1.7.5" + }, "layouts": { "LAYOUT_ortho_5x15": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}, {"x":10, "y":2}, {"x":11, "y":2}, {"x":12, "y":2}, {"x":13, "y":2}, {"x":14, "y":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3}, {"x":12, "y":3}, {"x":13, "y":3}, {"x":14, "y":3}, {"x":0, "y":4}, {"x":1, "y":4}, {"x":2, "y":4}, {"x":3, "y":4}, {"x":4, "y":4}, {"x":5, "y":4}, {"x":6, "y":4}, {"x":7, "y":4}, {"x":8, "y":4}, {"x":9, "y":4}, {"x":10, "y":4}, {"x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}] diff --git a/keyboards/40percentclub/luddite/config.h b/keyboards/40percentclub/luddite/config.h index 3f15523c89..3924841b04 100644 --- a/keyboards/40percentclub/luddite/config.h +++ b/keyboards/40percentclub/luddite/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // "40%", changed since 0x3430 is already officially registered -#define PRODUCT_ID 0x4C55 // "LU" -#define DEVICE_VER 0x1001 -#define MANUFACTURER di0ib -#define PRODUCT Luddite - /* key matrix size */ #define MATRIX_ROWS 8 #define MATRIX_COLS 8 diff --git a/keyboards/40percentclub/luddite/info.json b/keyboards/40percentclub/luddite/info.json index 45a446e818..565880a165 100644 --- a/keyboards/40percentclub/luddite/info.json +++ b/keyboards/40percentclub/luddite/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Luddite", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x4C55", + "device_version": "10.0.1" + }, "layouts": { "LAYOUT_60_ansi": { "layout": [ diff --git a/keyboards/40percentclub/mf68/config.h b/keyboards/40percentclub/mf68/config.h index 7ebe5ae1b3..2ed8c87195 100644 --- a/keyboards/40percentclub/mf68/config.h +++ b/keyboards/40percentclub/mf68/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // "40%", changed since 0x3430 is already officially registered -#define PRODUCT_ID 0x4D68 // "M68" -#define DEVICE_VER 0x0101 -#define MANUFACTURER di0ib -#define PRODUCT MF68 - /* key matrix size */ #define MATRIX_ROWS 8 #define MATRIX_COLS 9 diff --git a/keyboards/40percentclub/mf68/info.json b/keyboards/40percentclub/mf68/info.json index 873824edb0..5a8164bcb4 100644 --- a/keyboards/40percentclub/mf68/info.json +++ b/keyboards/40percentclub/mf68/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "MF68", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x4D68", + "device_version": "1.0.1" + }, "layouts": { "LAYOUT_68_ansi": { "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"x":15.25, "y":0}, {"x":16.25, "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}, {"x":15.25, "y":1}, {"x":16.25, "y":1}, {"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":2.75}, {"x":15.25, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"x":14.25, "y":4}, {"x":15.25, "y":4}, {"x":16.25, "y":4}] diff --git a/keyboards/40percentclub/nano/config.h b/keyboards/40percentclub/nano/config.h index c6d66a1bb3..7d789cff04 100644 --- a/keyboards/40percentclub/nano/config.h +++ b/keyboards/40percentclub/nano/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 //"40 %", to make it consistent with other 40percent.club boards. -#define PRODUCT_ID 0x0007 -#define DEVICE_VER 0x0001 -#define MANUFACTURER di0ib -#define PRODUCT Nano - /* key matrix size */ #define MATRIX_ROWS 2 #define MATRIX_COLS 4 diff --git a/keyboards/40percentclub/nano/info.json b/keyboards/40percentclub/nano/info.json index 35eff7e960..914b32aaa4 100644 --- a/keyboards/40percentclub/nano/info.json +++ b/keyboards/40percentclub/nano/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Nano", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x0007", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_2x4": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}] diff --git a/keyboards/40percentclub/nein/config.h b/keyboards/40percentclub/nein/config.h index 87c62673f9..4dfb143e52 100644 --- a/keyboards/40percentclub/nein/config.h +++ b/keyboards/40percentclub/nein/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 // "40%", changed since 0x3430 is already officially registered -#define PRODUCT_ID 0x9999 -#define DEVICE_VER 0x9999 -#define MANUFACTURER di0ib -#define PRODUCT The nein Keyboard - /* key matrix size */ #define MATRIX_ROWS 3 #define MATRIX_COLS 3 diff --git a/keyboards/40percentclub/nein/info.json b/keyboards/40percentclub/nein/info.json index 6d948877d1..812853d0fe 100644 --- a/keyboards/40percentclub/nein/info.json +++ b/keyboards/40percentclub/nein/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "nein", + "keyboard_name": "The nein Keyboard", + "manufacturer": "di0ib", "url": "http://www.40percent.club/2019/04/nein.html", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "vid": "0x9999", + "device_version": "99.9.9" + }, "layouts": { "LAYOUT_ortho_3x3": { "layout": [ diff --git a/keyboards/40percentclub/nori/config.h b/keyboards/40percentclub/nori/config.h index 882da633e0..0fed3daf11 100644 --- a/keyboards/40percentclub/nori/config.h +++ b/keyboards/40percentclub/nori/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x0A0C -#define DEVICE_VER 0x0444 -#define MANUFACTURER di0ib -#define PRODUCT The nori Keyboard - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 12 diff --git a/keyboards/40percentclub/nori/info.json b/keyboards/40percentclub/nori/info.json index 9de33d52f0..5366966705 100644 --- a/keyboards/40percentclub/nori/info.json +++ b/keyboards/40percentclub/nori/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "nori", + "keyboard_name": "The nori Keyboard", + "manufacturer": "di0ib", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0xA0C", + "device_version": "4.4.4" + }, "layouts": { "LAYOUT_ortho_4x4": { "layout": [ diff --git a/keyboards/40percentclub/polyandry/config.h b/keyboards/40percentclub/polyandry/config.h index 6f04d12297..1fd3e22f49 100644 --- a/keyboards/40percentclub/polyandry/config.h +++ b/keyboards/40percentclub/polyandry/config.h @@ -18,13 +18,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER di0ib -#define PRODUCT Polypad - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 diff --git a/keyboards/40percentclub/polyandry/info.json b/keyboards/40percentclub/polyandry/info.json index d0d1a00f86..3572b38c23 100644 --- a/keyboards/40percentclub/polyandry/info.json +++ b/keyboards/40percentclub/polyandry/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "Polyandry", + "keyboard_name": "Polypad", + "manufacturer": "di0ib", "url": "", "maintainer": "QMK", + "usb": { + "vid": "0x4025", + "pid": "0x6060", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [ diff --git a/keyboards/40percentclub/sixpack/config.h b/keyboards/40percentclub/sixpack/config.h index edb123c4b9..4ddad2efb7 100644 --- a/keyboards/40percentclub/sixpack/config.h +++ b/keyboards/40percentclub/sixpack/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 //"40 %", since 0x3430 is already registered. -#define PRODUCT_ID 0x5350 // "SP" -#define DEVICE_VER 0x1001 -#define MANUFACTURER di0ib -#define PRODUCT Six Pack - /* key matrix size */ #define MATRIX_ROWS 2 #define MATRIX_COLS 3 diff --git a/keyboards/40percentclub/sixpack/info.json b/keyboards/40percentclub/sixpack/info.json index 3e02a01bc2..b99c24a617 100644 --- a/keyboards/40percentclub/sixpack/info.json +++ b/keyboards/40percentclub/sixpack/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Six Pack", + "manufacturer": "di0ib", "url": "https://www.40percent.club/2017/05/six-pack-11.html", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x5350", + "device_version": "10.0.1" + }, "layouts": { "LAYOUT_ortho_2x3": { "layout": [ diff --git a/keyboards/40percentclub/tomato/config.h b/keyboards/40percentclub/tomato/config.h index 8f06341aad..b6534622ea 100644 --- a/keyboards/40percentclub/tomato/config.h +++ b/keyboards/40percentclub/tomato/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x546F //"To", was duplicate with polyandry -#define DEVICE_VER 0x0001 -#define MANUFACTURER 40 Percent Club -#define PRODUCT Tomato - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 6 diff --git a/keyboards/40percentclub/tomato/info.json b/keyboards/40percentclub/tomato/info.json index 57bcfd17a3..1ecaa84aff 100644 --- a/keyboards/40percentclub/tomato/info.json +++ b/keyboards/40percentclub/tomato/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Tomato", + "manufacturer": "40 Percent Club", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "pid": "0x546F", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_3x10": { "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":3, "y":1}, {"x":4, "y":1}, {"x":5, "y":1}, {"x":6, "y":1}, {"x":7, "y":1}, {"x":8, "y":1}, {"x":9, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":4, "y":2}, {"x":5, "y":2}, {"x":6, "y":2}, {"x":7, "y":2}, {"x":8, "y":2}, {"x":9, "y":2}] diff --git a/keyboards/40percentclub/ut47/config.h b/keyboards/40percentclub/ut47/config.h index 7ead58e096..3724e4b2d5 100644 --- a/keyboards/40percentclub/ut47/config.h +++ b/keyboards/40percentclub/ut47/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x4025 -#define PRODUCT_ID 0x7574 //"ut" -#define DEVICE_VER 0x0001 -#define MANUFACTURER 40percent.club -#define PRODUCT ut47 - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 12 diff --git a/keyboards/40percentclub/ut47/info.json b/keyboards/40percentclub/ut47/info.json index 4993bebb0f..e3173098e4 100644 --- a/keyboards/40percentclub/ut47/info.json +++ b/keyboards/40percentclub/ut47/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "UT47", + "keyboard_name": "ut47", + "manufacturer": "40percent.club", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0x4025", + "vid": "0x7574", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"Q", "x":1, "y":0}, {"label":"W", "x":2, "y":0}, {"label":"E", "x":3, "y":0}, {"label":"R", "x":4, "y":0}, {"label":"T", "x":5, "y":0}, {"label":"Y", "x":6, "y":0}, {"label":"U", "x":7, "y":0}, {"label":"I", "x":8, "y":0}, {"label":"O", "x":9, "y":0}, {"label":"P", "x":10, "y":0}, {"label":"Backspace", "x":11, "y":0, "w":1.5}, {"label":"LT(3) / Tab", "x":0, "y":1, "w":1.25}, {"label":"A", "x":1.25, "y":1}, {"label":"S", "x":2.25, "y":1}, {"label":"D", "x":3.25, "y":1}, {"label":"F", "x":4.25, "y":1}, {"label":"G", "x":5.25, "y":1}, {"label":"H", "x":6.25, "y":1}, {"label":"J", "x":7.25, "y":1}, {"label":"K", "x":8.25, "y":1}, {"label":"L", "x":9.25, "y":1}, {"label":":", "x":10.25, "y":1}, {"label":"\"", "x":11.25, "y":1, "w":1.25}, {"label":"Shift", "x":0, "y":2, "w":1.5}, {"label":"Z", "x":1.5, "y":2}, {"label":"X", "x":2.5, "y":2}, {"label":"C", "x":3.5, "y":2}, {"label":"V", "x":4.5, "y":2}, {"label":"B", "x":5.5, "y":2}, {"label":"N", "x":6.5, "y":2}, {"label":"M", "x":7.5, "y":2}, {"label":"<", "x":8.5, "y":2}, {"label":">", "x":9.5, "y":2}, {"label":"?", "x":10.5, "y":2}, {"label":"Shift / Enter", "x":11.5, "y":2}, {"label":"Ctrl", "x":0, "y":3}, {"label":"Alt", "x":1, "y":3}, {"label":"GUI", "x":2, "y":3}, {"label":"Menu", "x":3, "y":3}, {"label":"MO(2)", "x":4, "y":3, "w":1.25}, {"x":5.25, "y":3, "w":2}, {"label":"MO(1)", "x":7.25, "y":3, "w":1.25}, {"label":"\u2190", "x":8.5, "y":3}, {"label":"\u2193", "x":9.5, "y":3}, {"label":"\u2191", "x":10.5, "y":3}, {"label":"\u2192", "x":11.5, "y":3}] diff --git a/keyboards/45_ats/config.h b/keyboards/45_ats/config.h index 4733095bc1..8177f89038 100644 --- a/keyboards/45_ats/config.h +++ b/keyboards/45_ats/config.h @@ -20,13 +20,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xAB13 -#define PRODUCT_ID 0x4511 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Abec13 -#define PRODUCT 45ATS - /* key matrix size */ #define MATRIX_ROWS 4 #define MATRIX_COLS 14 diff --git a/keyboards/45_ats/info.json b/keyboards/45_ats/info.json index 2ea14357ee..268af942fe 100644 --- a/keyboards/45_ats/info.json +++ b/keyboards/45_ats/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "45-ATS", + "keyboard_name": "45ATS", + "manufacturer": "Abec13", "url": "", "maintainer": "The-Royal", + "usb": { + "vid": "0xAB13", + "pid": "0x4511", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_split_space": { "layout": [ diff --git a/keyboards/4by3/config.h b/keyboards/4by3/config.h index daaafb02a6..27ad7441cc 100644 --- a/keyboards/4by3/config.h +++ b/keyboards/4by3/config.h @@ -2,13 +2,6 @@ #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xEEEE -#define PRODUCT_ID 0x2019 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Elias Sjögreen -#define PRODUCT 4by3 - /* key matrix size */ #define MATRIX_ROWS 3 #define MATRIX_COLS 4 diff --git a/keyboards/4by3/info.json b/keyboards/4by3/info.json index 50f7c44b4f..24a2b3d34a 100644 --- a/keyboards/4by3/info.json +++ b/keyboards/4by3/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "4by3", + "manufacturer": "Elias Sjögreen", "url": "https://github.com/eliassjogreen/4by3", "maintainer": "eliassjogreen", + "usb": { + "vid": "0xEEEE", + "pid": "0x2019", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_horizontal": { "layout": [ diff --git a/keyboards/7c8/framework/config.h b/keyboards/7c8/framework/config.h index 44a69bf4e5..5ed43862cc 100644 --- a/keyboards/7c8/framework/config.h +++ b/keyboards/7c8/framework/config.h @@ -17,12 +17,6 @@ #pragma once #include "config_common.h" -#define VENDOR_ID 0x77C8 -#define PRODUCT_ID 0x0001 -#define DEVICE_VER 0x0000 -#define MANUFACTURER 7c8 -#define PRODUCT Framework - #define MATRIX_ROWS 10 #define MATRIX_COLS 6 diff --git a/keyboards/7c8/framework/info.json b/keyboards/7c8/framework/info.json index f78ea1eb58..1a2c0b300b 100644 --- a/keyboards/7c8/framework/info.json +++ b/keyboards/7c8/framework/info.json @@ -1,7 +1,13 @@ { "keyboard_name": "Framework", + "manufacturer": "7c8", "url": "", "maintainer": "stevennguyen", + "usb": { + "vid": "0x77C8", + "pid": "0x0001", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT_ortho_5x12": { "layout": [ diff --git a/keyboards/9key/config.h b/keyboards/9key/config.h index b0462eb50f..622ccc7ae9 100644 --- a/keyboards/9key/config.h +++ b/keyboards/9key/config.h @@ -19,13 +19,6 @@ along with this program. If not, see . #include "config_common.h" -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x0007 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Bishop Keyboards -#define PRODUCT 9Key - /* key matrix size */ #define MATRIX_ROWS 3 #define MATRIX_COLS 3 diff --git a/keyboards/9key/info.json b/keyboards/9key/info.json index 326a63b12c..5508697df6 100644 --- a/keyboards/9key/info.json +++ b/keyboards/9key/info.json @@ -1,7 +1,13 @@ { - "keyboard_name": "9key", + "keyboard_name": "9Key", + "manufacturer": "Bishop Keyboards", "url": "", "maintainer": "qmk", + "usb": { + "vid": "0xFEED", + "pid": "0x0007", + "device_version": "0.0.1" + }, "layouts": { "LAYOUT": { "layout": [{"label":"k00", "x":0, "y":0}, {"label":"k01", "x":1, "y":0}, {"label":"k02", "x":2, "y":0}, {"label":"k10", "x":0, "y":1}, {"label":"k11", "x":1, "y":1}, {"label":"k12", "x":2, "y":1}, {"label":"k20", "x":0, "y":2}, {"label":"k21", "x":1, "y":2}, {"label":"k22", "x":2, "y":2}] From dde4120a1e2b4234e68e40e47f02a7c166fbf90f Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 14 Mar 2022 10:55:47 +1100 Subject: [PATCH 105/699] ISP flashing guide: add instructions for flashing STM32duino bootloader (#16568) --- docs/isp_flashing_guide.md | 92 +++++++++++++++++++++++++++++++++++++- 1 file changed, 91 insertions(+), 1 deletion(-) diff --git a/docs/isp_flashing_guide.md b/docs/isp_flashing_guide.md index febb34c574..08f56e987b 100644 --- a/docs/isp_flashing_guide.md +++ b/docs/isp_flashing_guide.md @@ -4,7 +4,7 @@ In order to flash a microcontroller over USB, it needs something called a bootlo However, it can sometimes happen that the bootloader becomes corrupted and needs reflashing, or you may want to change the bootloader to another one. It's not possible to do this with the existing bootloader, because, of course, it is already running, and cannot overwrite itself. Instead, you will need to ISP flash the microcontroller. -There are several different kinds of bootloaders available for AVR microcontrollers. Most STM32 ARM-based microcontrollers already have a USB-capable bootloader in ROM, so generally do not need to be ISP flashed. +There are several different kinds of bootloaders available for AVR microcontrollers. Most STM32 ARM-based microcontrollers already have a USB-capable bootloader in ROM, so generally do not need to be ISP flashed. The one current exception is the [STM32F103](#flashing-stm32duino-bootloader). ## Hardware @@ -260,3 +260,93 @@ For mass production purposes, it is possible to join the bootloader and QMK firm 4. Save it as a new file, for example `__production.hex`. You can then ISP flash this combined firmware instead, which allows you to skip the extra step of flashing the QMK firmware over USB. + +## Flashing STM32Duino Bootloader + +As mentioned above, *most* supported STM32 devices already possess a USB DFU bootloader which cannot be overwritten, however the ROM bootloader in the STM32F103 used on the Bluepill is not USB capable. In this case an ST-Link V2 dongle is required to upload the STM32Duino bootloader to the device. These can be readily purchased for relatively cheap on eBay and other places. + +This bootloader is a descendant of the Maple bootloader by Leaflabs, and is compatible with dfu-util. + +### Software + +To communicate with the ST-Link, you must install the following packages: + +* **macOS:** `brew install stlink openocd` +* **Windows (MSYS2):** `pacman -S mingw-w64-x86_64-stlink mingw-w64-x86_64-openocd` +* **Linux:** will vary by distribution, but will likely be `stlink` and `openocd` through your particular package manager + +Additionally, you may need to update the ST-Link's firmware with the [`STSW-LINK007`](https://www.st.com/en/development-tools/stsw-link007.html) application. Note you will be asked to provide your name and email address if you do not have an ST.com account (this does not create one). + +Finally, the bootloader binary itself can be downloaded from [here](https://github.com/rogerclarkmelbourne/STM32duino-bootloader/blob/master/bootloader_only_binaries/generic_boot20_pc13.bin). + +### Wiring + +Connect the four-pin header on the end of the Bluepill to the matching pins on the ST-Link (the pinout will usually be printed on the side): + +|ST-Link |Bluepill| +|-------------|--------| +|`GND` (6) |`GND` | +|`SWCLK` (2) |`DCLK` | +|`SWDIO` (4) |`DIO` | +|`3.3V` (8) |`3.3` | + +### Flashing + +Firstly, make sure both jumpers on the Bluepill are set to 0. + +Check that the ST-Link can talk to the Bluepill by running `st-info --probe`: + +``` +Found 1 stlink programmers + version: V2J37S7 + serial: 2C1219002B135937334D4E00 + flash: 65536 (pagesize: 1024) + sram: 20480 + chipid: 0x0410 + descr: F1xx Medium-density +``` + +If the reported `chipid` is `0x0410`, everything is working. If it is `0x0000`, check your wiring, and try swapping the `SWDIO` and `SWCLK` pins, as some ST-Link dongles may have incorrect pinouts. + +Next, run the following command: + +``` +st-flash --reset --format binary write 0x08000000 +``` + +where `` is the path to the bootloader `.bin` file above. You can run this command from the directory you downloaded it to, so that you can simply pass in the filename. + +If all goes well, you should get output similar to the following: + +``` +st-flash 1.7.0 +2022-03-08T12:16:30 INFO common.c: F1xx Medium-density: 20 KiB SRAM, 64 KiB flash in at least 1 KiB pages. +file generic_boot20_pc13.bin md5 checksum: 333c30605e739ce9bedee5999fdaf81b, stlink checksum: 0x0008e534 +2022-03-08T12:16:30 INFO common.c: Attempting to write 7172 (0x1c04) bytes to stm32 address: 134217728 (0x8000000) +2022-03-08T12:16:30 INFO common.c: Flash page at addr: 0x08000000 erased +2022-03-08T12:16:30 INFO common.c: Flash page at addr: 0x08000400 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08000800 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08000c00 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001000 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001400 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001800 erased +2022-03-08T12:16:31 INFO common.c: Flash page at addr: 0x08001c00 erased +2022-03-08T12:16:31 INFO common.c: Finished erasing 8 pages of 1024 (0x400) bytes +2022-03-08T12:16:31 INFO common.c: Starting Flash write for VL/F0/F3/F1_XL +2022-03-08T12:16:31 INFO flash_loader.c: Successfully loaded flash loader in sram +2022-03-08T12:16:31 INFO flash_loader.c: Clear DFSR + 8/ 8 pages written +2022-03-08T12:16:31 INFO common.c: Starting verification of write complete +2022-03-08T12:16:31 INFO common.c: Flash written and verified! jolly good! +2022-03-08T12:16:31 WARN common.c: NRST is not connected +``` + +Otherwise, if you receive an `Unknown memory region` error, run the following command to unlock the STM32F103: + +``` +openocd -f interface/stlink.cfg -f target/stm32f1x.cfg -c "init; reset halt; stm32f1x unlock 0; reset halt; exit" +``` + +Then re-plug the ST-Link and try again. + +After all of this, unplug the Bluepill from the ST-Link and connect it to USB. It should now be ready to flash using dfu-util, the QMK CLI or Toolbox. From 921b9dad6c37575215231b34a3492ffb38eaeec2 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sun, 13 Mar 2022 17:01:47 -0700 Subject: [PATCH 106/699] [Core] Move `has_mouse_report_changed` function to `report.c` (#16543) * Move 'has_mouse_report_changed' checkto report.c * change mousekeys to use memcpy * fix linting issues --- quantum/mousekey.c | 24 ++++++++++++++---------- quantum/pointing_device.c | 13 +------------ quantum/pointing_device.h | 1 - tmk_core/protocol/report.c | 13 +++++++++++++ tmk_core/protocol/report.h | 4 ++++ 5 files changed, 32 insertions(+), 23 deletions(-) diff --git a/quantum/mousekey.c b/quantum/mousekey.c index 8bafbf977a..0cbb472045 100644 --- a/quantum/mousekey.c +++ b/quantum/mousekey.c @@ -209,7 +209,7 @@ static uint8_t wheel_unit(void) { void mousekey_task(void) { // report cursor and scroll movement independently - report_mouse_t const tmpmr = mouse_report; + report_mouse_t tmpmr = mouse_report; mouse_report.x = 0; mouse_report.y = 0; @@ -251,8 +251,10 @@ void mousekey_task(void) { } } - if (mouse_report.x || mouse_report.y || mouse_report.v || mouse_report.h) mousekey_send(); - mouse_report = tmpmr; + if (has_mouse_report_changed(&mouse_report, &tmpmr)) { + mousekey_send(); + } + memcpy(&mouse_report, &tmpmr, sizeof(tmpmr)); } void mousekey_on(uint8_t code) { @@ -340,11 +342,11 @@ uint16_t w_intervals[mkspd_COUNT] = {MK_W_INTERVAL_UNMOD, MK_W_INTERVAL_0 void mousekey_task(void) { // report cursor and scroll movement independently - report_mouse_t const tmpmr = mouse_report; - mouse_report.x = 0; - mouse_report.y = 0; - mouse_report.v = 0; - mouse_report.h = 0; + report_mouse_t tmpmr = mouse_report; + mouse_report.x = 0; + mouse_report.y = 0; + mouse_report.v = 0; + mouse_report.h = 0; if ((tmpmr.x || tmpmr.y) && timer_elapsed(last_timer_c) > c_intervals[mk_speed]) { mouse_report.x = tmpmr.x; @@ -355,8 +357,10 @@ void mousekey_task(void) { mouse_report.h = tmpmr.h; } - if (mouse_report.x || mouse_report.y || mouse_report.v || mouse_report.h) mousekey_send(); - mouse_report = tmpmr; + if (has_mouse_report_changed(&mouse_report, &tmpmr)) { + mousekey_send(); + } + memcpy(&mouse_report, &tmpmr, sizeof(tmpmr)); } void adjust_speed(void) { diff --git a/quantum/pointing_device.c b/quantum/pointing_device.c index 47a0af45d2..a160647890 100644 --- a/quantum/pointing_device.c +++ b/quantum/pointing_device.c @@ -70,17 +70,6 @@ static report_mouse_t local_mouse_report = {}; extern const pointing_device_driver_t pointing_device_driver; -/** - * @brief Compares 2 mouse reports for difference and returns result - * - * @param[in] new_report report_mouse_t - * @param[in] old_report report_mouse_t - * @return bool result - */ -__attribute__((weak)) bool has_mouse_report_changed(report_mouse_t new_report, report_mouse_t old_report) { - return memcmp(&new_report, &old_report, sizeof(new_report)); -} - /** * @brief Keyboard level code pointing device initialisation * @@ -165,7 +154,7 @@ __attribute__((weak)) void pointing_device_send(void) { static report_mouse_t old_report = {}; // If you need to do other things, like debugging, this is the place to do it. - if (has_mouse_report_changed(local_mouse_report, old_report)) { + if (has_mouse_report_changed(&local_mouse_report, &old_report)) { host_mouse_send(&local_mouse_report); } // send it and 0 it out except for buttons, so those stay until they are explicity over-ridden using update_pointing_device diff --git a/quantum/pointing_device.h b/quantum/pointing_device.h index a6bdbf120c..5c0eaeaf34 100644 --- a/quantum/pointing_device.h +++ b/quantum/pointing_device.h @@ -80,7 +80,6 @@ void pointing_device_task(void); void pointing_device_send(void); report_mouse_t pointing_device_get_report(void); void pointing_device_set_report(report_mouse_t mouse_report); -bool has_mouse_report_changed(report_mouse_t new_report, report_mouse_t old_report); uint16_t pointing_device_get_cpi(void); void pointing_device_set_cpi(uint16_t cpi); diff --git a/tmk_core/protocol/report.c b/tmk_core/protocol/report.c index 854b59ae48..5755098c60 100644 --- a/tmk_core/protocol/report.c +++ b/tmk_core/protocol/report.c @@ -278,3 +278,16 @@ void clear_keys_from_report(report_keyboard_t* keyboard_report) { #endif memset(keyboard_report->keys, 0, sizeof(keyboard_report->keys)); } + +#ifdef MOUSE_ENABLE +/** + * @brief Compares 2 mouse reports for difference and returns result + * + * @param[in] new_report report_mouse_t + * @param[in] old_report report_mouse_t + * @return bool result + */ +__attribute__((weak)) bool has_mouse_report_changed(report_mouse_t* new_report, report_mouse_t* old_report) { + return memcmp(new_report, old_report, sizeof(report_mouse_t)); +} +#endif diff --git a/tmk_core/protocol/report.h b/tmk_core/protocol/report.h index 1adc892f3b..7bbeb78af7 100644 --- a/tmk_core/protocol/report.h +++ b/tmk_core/protocol/report.h @@ -320,6 +320,10 @@ void add_key_to_report(report_keyboard_t* keyboard_report, uint8_t key); void del_key_from_report(report_keyboard_t* keyboard_report, uint8_t key); void clear_keys_from_report(report_keyboard_t* keyboard_report); +#ifdef MOUSE_ENABLE +bool has_mouse_report_changed(report_mouse_t* new_report, report_mouse_t* old_report); +#endif + #ifdef __cplusplus } #endif From 8d90cf36f1a8484bdb7fcc0660887efaf0b7c106 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Sun, 13 Mar 2022 19:04:11 -0600 Subject: [PATCH 107/699] Fix 40percentclub USB descriptors (#16638) --- keyboards/40percentclub/nein/info.json | 2 +- keyboards/40percentclub/nori/info.json | 2 +- keyboards/40percentclub/ut47/info.json | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/40percentclub/nein/info.json b/keyboards/40percentclub/nein/info.json index 812853d0fe..09d25e30de 100644 --- a/keyboards/40percentclub/nein/info.json +++ b/keyboards/40percentclub/nein/info.json @@ -5,7 +5,7 @@ "maintainer": "qmk", "usb": { "vid": "0x4025", - "vid": "0x9999", + "pid": "0x9999", "device_version": "99.9.9" }, "layouts": { diff --git a/keyboards/40percentclub/nori/info.json b/keyboards/40percentclub/nori/info.json index 5366966705..d6415b73f9 100644 --- a/keyboards/40percentclub/nori/info.json +++ b/keyboards/40percentclub/nori/info.json @@ -5,7 +5,7 @@ "maintainer": "qmk", "usb": { "vid": "0x4025", - "pid": "0xA0C", + "pid": "0x0A0C", "device_version": "4.4.4" }, "layouts": { diff --git a/keyboards/40percentclub/ut47/info.json b/keyboards/40percentclub/ut47/info.json index e3173098e4..e0bd0264cb 100644 --- a/keyboards/40percentclub/ut47/info.json +++ b/keyboards/40percentclub/ut47/info.json @@ -5,7 +5,7 @@ "maintainer": "qmk", "usb": { "vid": "0x4025", - "vid": "0x7574", + "pid": "0x7574", "device_version": "0.0.1" }, "layouts": { From b8574efcd67a394c423ac29ce280ee09517a1aee Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sun, 13 Mar 2022 18:11:42 -0700 Subject: [PATCH 108/699] Fix oneshot toggle logic (#16630) * Fix oneshot toggle logic * Enable oneshots by default * Decrement eeconfig magic number due to eeconfig changes --- quantum/action.c | 10 +++++----- quantum/action_util.c | 15 +++++++-------- quantum/eeconfig.c | 2 +- quantum/eeconfig.h | 2 +- quantum/keycode_config.h | 2 +- 5 files changed, 15 insertions(+), 16 deletions(-) diff --git a/quantum/action.c b/quantum/action.c index 60301fa606..ef059f0e2a 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -101,7 +101,7 @@ void action_exec(keyevent_t event) { keyrecord_t record = {.event = event}; #ifndef NO_ACTION_ONESHOT - if (!keymap_config.oneshot_disable) { + if (keymap_config.oneshot_enable) { # if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0)) if (has_oneshot_layer_timed_out()) { clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); @@ -258,7 +258,7 @@ void process_record(keyrecord_t *record) { if (!process_record_quantum(record)) { #ifndef NO_ACTION_ONESHOT - if (is_oneshot_layer_active() && record->event.pressed && !keymap_config.oneshot_disable) { + if (is_oneshot_layer_active() && record->event.pressed && keymap_config.oneshot_enable) { clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); } #endif @@ -323,7 +323,7 @@ void process_action(keyrecord_t *record, action_t action) { # ifdef SWAP_HANDS_ENABLE && !(action.kind.id == ACT_SWAP_HANDS && action.swap.code == OP_SH_ONESHOT) # endif - && !keymap_config.oneshot_disable) { + && keymap_config.oneshot_enable) { clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); do_release_oneshot = !is_oneshot_layer_active(); } @@ -367,7 +367,7 @@ void process_action(keyrecord_t *record, action_t action) { # ifndef NO_ACTION_ONESHOT case MODS_ONESHOT: // Oneshot modifier - if (keymap_config.oneshot_disable) { + if (!keymap_config.oneshot_enable) { if (event.pressed) { if (mods) { if (IS_MOD(action.key.code) || action.key.code == KC_NO) { @@ -613,7 +613,7 @@ void process_action(keyrecord_t *record, action_t action) { # ifndef NO_ACTION_ONESHOT case OP_ONESHOT: // Oneshot modifier - if (keymap_config.oneshot_disable) { + if (!keymap_config.oneshot_enable) { if (event.pressed) { layer_on(action.layer_tap.val); } else { diff --git a/quantum/action_util.c b/quantum/action_util.c index cf81370d4a..738410a4ac 100644 --- a/quantum/action_util.c +++ b/quantum/action_util.c @@ -155,7 +155,7 @@ void clear_oneshot_swaphands(void) { * FIXME: needs doc */ void set_oneshot_layer(uint8_t layer, uint8_t state) { - if (!keymap_config.oneshot_disable) { + if (keymap_config.oneshot_enable) { oneshot_layer_data = layer << 3 | state; layer_on(layer); # if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0)) @@ -184,7 +184,7 @@ void reset_oneshot_layer(void) { void clear_oneshot_layer_state(oneshot_fullfillment_t state) { uint8_t start_state = oneshot_layer_data; oneshot_layer_data &= ~state; - if ((!get_oneshot_layer_state() && start_state != oneshot_layer_data) && !keymap_config.oneshot_disable) { + if ((!get_oneshot_layer_state() && start_state != oneshot_layer_data) && keymap_config.oneshot_enable) { layer_off(get_oneshot_layer()); reset_oneshot_layer(); } @@ -202,9 +202,8 @@ bool is_oneshot_layer_active(void) { * FIXME: needs doc */ void oneshot_set(bool active) { - const bool disable = !active; - if (keymap_config.oneshot_disable != disable) { - keymap_config.oneshot_disable = disable; + if (keymap_config.oneshot_enable != active) { + keymap_config.oneshot_enable = active; eeconfig_update_keymap(keymap_config.raw); clear_oneshot_layer_state(ONESHOT_OTHER_KEY_PRESSED); dprintf("Oneshot: active: %d\n", active); @@ -216,7 +215,7 @@ void oneshot_set(bool active) { * FIXME: needs doc */ void oneshot_toggle(void) { - oneshot_set(!keymap_config.oneshot_disable); + oneshot_set(!keymap_config.oneshot_enable); } /** \brief enable oneshot @@ -236,7 +235,7 @@ void oneshot_disable(void) { } bool is_oneshot_enabled(void) { - return !keymap_config.oneshot_disable; + return keymap_config.oneshot_enable; } #endif @@ -414,7 +413,7 @@ void del_oneshot_mods(uint8_t mods) { * FIXME: needs doc */ void set_oneshot_mods(uint8_t mods) { - if (!keymap_config.oneshot_disable) { + if (keymap_config.oneshot_enable) { if (oneshot_mods != mods) { # if (defined(ONESHOT_TIMEOUT) && (ONESHOT_TIMEOUT > 0)) oneshot_time = timer_read(); diff --git a/quantum/eeconfig.c b/quantum/eeconfig.c index 14cd5887f4..0ff9996ca4 100644 --- a/quantum/eeconfig.c +++ b/quantum/eeconfig.c @@ -46,7 +46,7 @@ void eeconfig_init_quantum(void) { eeprom_update_byte(EECONFIG_DEFAULT_LAYER, 0); default_layer_state = 0; eeprom_update_byte(EECONFIG_KEYMAP_LOWER_BYTE, 0); - eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, 0); + eeprom_update_byte(EECONFIG_KEYMAP_UPPER_BYTE, 0x4); eeprom_update_byte(EECONFIG_MOUSEKEY_ACCEL, 0); eeprom_update_byte(EECONFIG_BACKLIGHT, 0); eeprom_update_byte(EECONFIG_AUDIO, 0xFF); // On by default diff --git a/quantum/eeconfig.h b/quantum/eeconfig.h index f3cd1867ab..565a0dbe5b 100644 --- a/quantum/eeconfig.h +++ b/quantum/eeconfig.h @@ -21,7 +21,7 @@ along with this program. If not, see . #include #ifndef EECONFIG_MAGIC_NUMBER -# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE9 // When changing, decrement this value to avoid future re-init issues +# define EECONFIG_MAGIC_NUMBER (uint16_t)0xFEE8 // When changing, decrement this value to avoid future re-init issues #endif #define EECONFIG_MAGIC_NUMBER_OFF (uint16_t)0xFFFF diff --git a/quantum/keycode_config.h b/quantum/keycode_config.h index d7e334fdc8..a2cb025ed2 100644 --- a/quantum/keycode_config.h +++ b/quantum/keycode_config.h @@ -37,7 +37,7 @@ typedef union { bool nkro : 1; bool swap_lctl_lgui : 1; bool swap_rctl_rgui : 1; - bool oneshot_disable : 1; + bool oneshot_enable : 1; }; } keymap_config_t; From 86a35483a12a12bcf8d0005ebc7e4e2bca3ab5b3 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Sun, 13 Mar 2022 19:53:53 -0600 Subject: [PATCH 109/699] Mousekeys fix (#16640) --- quantum/mousekey.c | 1 + 1 file changed, 1 insertion(+) diff --git a/quantum/mousekey.c b/quantum/mousekey.c index 0cbb472045..64d0e66682 100644 --- a/quantum/mousekey.c +++ b/quantum/mousekey.c @@ -16,6 +16,7 @@ */ #include +#include #include "keycode.h" #include "host.h" #include "timer.h" From c17323b0f5fddf891929e6a25232825769a64e28 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 14 Mar 2022 01:56:52 +0000 Subject: [PATCH 110/699] bolsa/damapad - Fix missing layout macro (#16639) --- keyboards/bolsa/damapad/damapad.h | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/keyboards/bolsa/damapad/damapad.h b/keyboards/bolsa/damapad/damapad.h index da0a4d863e..9f0d0d4170 100644 --- a/keyboards/bolsa/damapad/damapad.h +++ b/keyboards/bolsa/damapad/damapad.h @@ -30,3 +30,13 @@ along with this program. If not, see . { K10, K11, K12, K13, K14, K15 }, \ { K20, K21, XXX, K23, XXX, K25 } \ } + +#define LAYOUT_bar( \ + K00, K01, K02, K03, K04, K05, \ + K10, K11, K12, K13, K14, K15, \ + K20, K23, K25 \ +) { \ + { K00, K01, K02, K03, K04, K05 }, \ + { K10, K11, K12, K13, K14, K15 }, \ + { K20, XXX, XXX, K23, XXX, K25 } \ +} From 5fb269b2b49f31dcee34e3e088ef77cd016d0450 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 15 Mar 2022 00:57:44 +1100 Subject: [PATCH 111/699] keebio/iris: Add ifdefs to encoder callbacks (#16642) --- keyboards/keebio/iris/rev3/rev3.c | 2 ++ keyboards/keebio/iris/rev4/rev4.c | 2 ++ keyboards/keebio/iris/rev5/rev5.c | 2 ++ keyboards/keebio/iris/rev6/rev6.c | 2 ++ 4 files changed, 8 insertions(+) diff --git a/keyboards/keebio/iris/rev3/rev3.c b/keyboards/keebio/iris/rev3/rev3.c index e874b9beae..2b3d6b1d96 100644 --- a/keyboards/keebio/iris/rev3/rev3.c +++ b/keyboards/keebio/iris/rev3/rev3.c @@ -36,6 +36,7 @@ void eeconfig_init_kb(void) { eeconfig_init_user(); } +#ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { @@ -53,3 +54,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return false; } +#endif diff --git a/keyboards/keebio/iris/rev4/rev4.c b/keyboards/keebio/iris/rev4/rev4.c index 36ef461cd0..112c86f413 100644 --- a/keyboards/keebio/iris/rev4/rev4.c +++ b/keyboards/keebio/iris/rev4/rev4.c @@ -17,6 +17,7 @@ void eeconfig_init_kb(void) { eeconfig_init_user(); } +#ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { @@ -34,3 +35,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return false; } +#endif diff --git a/keyboards/keebio/iris/rev5/rev5.c b/keyboards/keebio/iris/rev5/rev5.c index 2a89c6923b..b597c05de8 100644 --- a/keyboards/keebio/iris/rev5/rev5.c +++ b/keyboards/keebio/iris/rev5/rev5.c @@ -13,6 +13,7 @@ along with this program. If not, see . */ #include "rev5.h" +#ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { @@ -30,3 +31,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return false; } +#endif diff --git a/keyboards/keebio/iris/rev6/rev6.c b/keyboards/keebio/iris/rev6/rev6.c index 152df0b2f9..8b612c3555 100644 --- a/keyboards/keebio/iris/rev6/rev6.c +++ b/keyboards/keebio/iris/rev6/rev6.c @@ -64,6 +64,7 @@ led_config_t g_led_config = { { } }; #endif +#ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } if (index == 0) { @@ -81,3 +82,4 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { } return false; } +#endif From 6a6a333c75e60692c4497aafe949e6304b22f8b8 Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 15 Mar 2022 00:58:05 +1100 Subject: [PATCH 112/699] Disable RGB matrix pixel animations for some boards (#16643) * idobao/id87/v2: disable RGB matrix pixel animations * Same for two more boards --- keyboards/dztech/dz60rgb_wkl/v2/config.h | 3 --- keyboards/idobao/id87/v2/config.h | 3 --- keyboards/kbdfans/kbd67/mkiirgb/v4/config.h | 3 --- 3 files changed, 9 deletions(-) diff --git a/keyboards/dztech/dz60rgb_wkl/v2/config.h b/keyboards/dztech/dz60rgb_wkl/v2/config.h index 5985fccea7..5d715a1e0d 100644 --- a/keyboards/dztech/dz60rgb_wkl/v2/config.h +++ b/keyboards/dztech/dz60rgb_wkl/v2/config.h @@ -69,9 +69,6 @@ # define ENABLE_RGB_MATRIX_HUE_BREATHING # define ENABLE_RGB_MATRIX_HUE_PENDULUM # define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined # define ENABLE_RGB_MATRIX_TYPING_HEATMAP // # define ENABLE_RGB_MATRIX_DIGITAL_RAIN diff --git a/keyboards/idobao/id87/v2/config.h b/keyboards/idobao/id87/v2/config.h index 8a2c58aa2d..3ef24f0bc5 100644 --- a/keyboards/idobao/id87/v2/config.h +++ b/keyboards/idobao/id87/v2/config.h @@ -79,9 +79,6 @@ # define ENABLE_RGB_MATRIX_HUE_BREATHING # define ENABLE_RGB_MATRIX_HUE_PENDULUM # define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined # define ENABLE_RGB_MATRIX_TYPING_HEATMAP # define ENABLE_RGB_MATRIX_DIGITAL_RAIN diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h index 7de9281d40..9960022a13 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h @@ -94,9 +94,6 @@ # define ENABLE_RGB_MATRIX_HUE_BREATHING # define ENABLE_RGB_MATRIX_HUE_PENDULUM # define ENABLE_RGB_MATRIX_HUE_WAVE -# define ENABLE_RGB_MATRIX_PIXEL_RAIN -# define ENABLE_RGB_MATRIX_PIXEL_FLOW -# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined # define ENABLE_RGB_MATRIX_TYPING_HEATMAP // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN From a12d58c6c965254bdf40ae0f02a6644e183eb17c Mon Sep 17 00:00:00 2001 From: Danny Date: Mon, 14 Mar 2022 14:08:10 -0400 Subject: [PATCH 113/699] [Keyboard] Add BAMFK-1 (#16409) Co-authored-by: Ryan --- keyboards/keebio/bamfk1/bamfk1.c | 4 + keyboards/keebio/bamfk1/bamfk1.h | 14 +++ keyboards/keebio/bamfk1/config.h | 113 ++++++++++++++++++ keyboards/keebio/bamfk1/info.json | 19 +++ .../keebio/bamfk1/keymaps/default/keymap.c | 39 ++++++ .../keebio/bamfk1/keymaps/default/rules.mk | 1 + keyboards/keebio/bamfk1/keymaps/via/keymap.c | 39 ++++++ keyboards/keebio/bamfk1/keymaps/via/rules.mk | 2 + keyboards/keebio/bamfk1/readme.md | 27 +++++ keyboards/keebio/bamfk1/rules.mk | 21 ++++ keyboards/keebio/encoder_actions.c | 68 +++++++++++ keyboards/keebio/encoder_actions.h | 21 ++++ 12 files changed, 368 insertions(+) create mode 100644 keyboards/keebio/bamfk1/bamfk1.c create mode 100644 keyboards/keebio/bamfk1/bamfk1.h create mode 100644 keyboards/keebio/bamfk1/config.h create mode 100644 keyboards/keebio/bamfk1/info.json create mode 100644 keyboards/keebio/bamfk1/keymaps/default/keymap.c create mode 100644 keyboards/keebio/bamfk1/keymaps/default/rules.mk create mode 100644 keyboards/keebio/bamfk1/keymaps/via/keymap.c create mode 100644 keyboards/keebio/bamfk1/keymaps/via/rules.mk create mode 100644 keyboards/keebio/bamfk1/readme.md create mode 100644 keyboards/keebio/bamfk1/rules.mk create mode 100644 keyboards/keebio/encoder_actions.c create mode 100644 keyboards/keebio/encoder_actions.h diff --git a/keyboards/keebio/bamfk1/bamfk1.c b/keyboards/keebio/bamfk1/bamfk1.c new file mode 100644 index 0000000000..eddd7e624e --- /dev/null +++ b/keyboards/keebio/bamfk1/bamfk1.c @@ -0,0 +1,4 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "bamfk1.h" diff --git a/keyboards/keebio/bamfk1/bamfk1.h b/keyboards/keebio/bamfk1/bamfk1.h new file mode 100644 index 0000000000..be1fd00808 --- /dev/null +++ b/keyboards/keebio/bamfk1/bamfk1.h @@ -0,0 +1,14 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + k00, e01, e02, \ + e01a, e01b, e02a, e02b \ +) { \ + { k00, e01, e02, KC_NO }, \ + { e01a, e01b, e02a, e02b } \ +} diff --git a/keyboards/keebio/bamfk1/config.h b/keyboards/keebio/bamfk1/config.h new file mode 100644 index 0000000000..5cd86a9d16 --- /dev/null +++ b/keyboards/keebio/bamfk1/config.h @@ -0,0 +1,113 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xCB10 +#define PRODUCT_ID 0x1111 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Keebio +#define PRODUCT BAMFK-1 + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 4 + +/* + * Keyboard Matrix Assignments + */ + +#define DIRECT_PINS { \ + { E6, B6, D6, NO_PIN }, \ + { NO_PIN, NO_PIN, NO_PIN, NO_PIN } \ +} +#define AUDIO_PIN C6 +#ifdef AUDIO_ENABLE +# define STARTUP_SONG SONG(STARTUP_SOUND) +#endif + +#define ENCODERS_PAD_A { C7, D7 } +#define ENCODERS_PAD_B { B5, D4 } +#define ENCODERS 2 +#define ENCODERS_CW_KEY { { 1, 1 }, { 3, 1 } } +#define ENCODERS_CCW_KEY { { 0, 1 }, { 2, 1 } } + +#define RGB_DI_PIN D3 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 16 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_SNAKE +# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +# define RGBLIGHT_EFFECT_RGB_TEST +# define RGBLIGHT_EFFECT_ALTERNATING +#endif +#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keebio/bamfk1/info.json b/keyboards/keebio/bamfk1/info.json new file mode 100644 index 0000000000..817eb98af0 --- /dev/null +++ b/keyboards/keebio/bamfk1/info.json @@ -0,0 +1,19 @@ +{ + "keyboard_name": "BAMFK-1", + "url": "https://keeb.io", + "maintainer": "nooges", + "layouts": { + "LAYOUT": { + "layout": [ + {"label": "k00", "x": 1.5, "y": 0, "h":2, "w": 2}, + {"label": "k01", "x": 0.5, "y": 2.25}, + {"label": "k02", "x": 3.5, "y": 2.25}, + + {"label": "k10", "x": 0, "y": 3.5}, + {"label": "k11", "x": 1, "y": 3.5}, + {"label": "k12", "x": 3, "y": 3.5}, + {"label": "k13", "x": 4, "y": 3.5} + ] + } + } +} diff --git a/keyboards/keebio/bamfk1/keymaps/default/keymap.c b/keyboards/keebio/bamfk1/keymaps/default/keymap.c new file mode 100644 index 0000000000..aa0780eafc --- /dev/null +++ b/keyboards/keebio/bamfk1/keymaps/default/keymap.c @@ -0,0 +1,39 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _MAIN, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_MAIN] = LAYOUT( + KC_A, // Big Switch + MO(1), KC_MUTE, // Encoder presses + KC_DOWN, KC_UP, // Left encoder turns + KC_VOLD, KC_VOLU // Right encoder turns + ), + [_FN1] = LAYOUT( + KC_B, // Big Switch + _______, KC_C, // Encoder presses + KC_PGDN, KC_PGUP, // Left encoder turns + KC_VOLU, KC_VOLD // Right encoder turns + ), + [_FN2] = LAYOUT( + _______, // Big Switch + _______, _______, // Encoder presses + _______, _______, // Left encoder turns + _______, _______ // Right encoder turns + ), + [_FN3] = LAYOUT( + _______, // Big Switch + _______, _______, // Encoder presses + _______, _______, // Left encoder turns + _______, _______ // Right encoder turns + ) +}; diff --git a/keyboards/keebio/bamfk1/keymaps/default/rules.mk b/keyboards/keebio/bamfk1/keymaps/default/rules.mk new file mode 100644 index 0000000000..4da205a168 --- /dev/null +++ b/keyboards/keebio/bamfk1/keymaps/default/rules.mk @@ -0,0 +1 @@ +LTO_ENABLE = yes diff --git a/keyboards/keebio/bamfk1/keymaps/via/keymap.c b/keyboards/keebio/bamfk1/keymaps/via/keymap.c new file mode 100644 index 0000000000..e7cde2d7ee --- /dev/null +++ b/keyboards/keebio/bamfk1/keymaps/via/keymap.c @@ -0,0 +1,39 @@ +// Copyright 2021 Danny Nguyen (@nooges) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _MAIN, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_MAIN] = LAYOUT( + RGB_MOD, // Big Switch + FN_MO13, KC_MUTE, // Encoder presses + KC_DOWN, KC_UP, // Left encoder turns + KC_VOLD, KC_VOLU // Right encoder turns + ), + [_FN1] = LAYOUT( + KC_B, // Big Switch + _______, KC_C, // Encoder presses + KC_PGDN, KC_PGUP, // Left encoder turns + KC_VOLU, KC_VOLD // Right encoder turns + ), + [_FN2] = LAYOUT( + _______, // Big Switch + _______, _______, // Encoder presses + _______, _______, // Left encoder turns + _______, _______ // Right encoder turns + ), + [_FN3] = LAYOUT( + _______, // Big Switch + _______, _______, // Encoder presses + _______, _______, // Left encoder turns + _______, _______ // Right encoder turns + ) +}; diff --git a/keyboards/keebio/bamfk1/keymaps/via/rules.mk b/keyboards/keebio/bamfk1/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/keebio/bamfk1/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/keebio/bamfk1/readme.md b/keyboards/keebio/bamfk1/readme.md new file mode 100644 index 0000000000..a90ee8ac8c --- /dev/null +++ b/keyboards/keebio/bamfk1/readme.md @@ -0,0 +1,27 @@ +# BAMFK-1 + +![bamfk1](https://cdn.shopify.com/s/files/1/1851/5125/products/bamfk-1-back_1100x.png?v=1635304218) + +PCB for the Big Switch with support for horizontal rotary encoders. + +* Keyboard Maintainer: [Keebio](https://github.com/nooges) +* Hardware Supported: BAMFK-1 PCB +* Hardware Availability: [Keebio](https://keeb.io/) + +Make example for this keyboard (after setting up your build environment): + + make keebio/bamfk1:default + +Flashing example for this keyboard: + + make keebio/bamfk1:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/keebio/bamfk1/rules.mk b/keyboards/keebio/bamfk1/rules.mk new file mode 100644 index 0000000000..abcf10c871 --- /dev/null +++ b/keyboards/keebio/bamfk1/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = yes # Audio output +ENCODER_ENABLE = yes + +SRC += encoder_actions.c diff --git a/keyboards/keebio/encoder_actions.c b/keyboards/keebio/encoder_actions.c new file mode 100644 index 0000000000..c4e49813f4 --- /dev/null +++ b/keyboards/keebio/encoder_actions.c @@ -0,0 +1,68 @@ +/* Copyright 2020 Neil Brian Ramirez + * Copyright 2021 drashna jael're (@drashna) + * + * 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 3 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 . + */ + +#include "encoder_actions.h" + +#if defined(ENCODER_ENABLE) + +# ifdef ENCODERS +static uint8_t encoder_state[ENCODERS] = {0}; +static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY; +static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY; +# endif + +void encoder_action_unregister(void) { +# ifdef ENCODERS + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index]) { + keyevent_t encoder_event = (keyevent_t) { + .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index], + .pressed = false, + .time = (timer_read() | 1) + }; + encoder_state[index] = 0; + action_exec(encoder_event); + } + } +# endif +} + +void encoder_action_register(uint8_t index, bool clockwise) { +# ifdef ENCODERS + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = true, + .time = (timer_read() | 1) + }; + encoder_state[index] = (clockwise ^ 1) | (clockwise << 1); + action_exec(encoder_event); +# endif +} + +void matrix_scan_kb(void) { + encoder_action_unregister(); + matrix_scan_user(); +} + +bool encoder_update_kb(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + // don't return user actions, because they are in the keymap + // encoder_update_user(index, clockwise); + return true; +}; + +#endif diff --git a/keyboards/keebio/encoder_actions.h b/keyboards/keebio/encoder_actions.h new file mode 100644 index 0000000000..2484af52ae --- /dev/null +++ b/keyboards/keebio/encoder_actions.h @@ -0,0 +1,21 @@ +/* Copyright 2020 Neil Brian Ramirez + * + * 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 3 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 . + */ + +#include "quantum.h" + +void encoder_action_unregister(void); + +void encoder_action_register(uint8_t index, bool clockwise); From 7e669421f86843d398b41befe1950a2e2ce054a0 Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Mon, 14 Mar 2022 21:06:21 +0100 Subject: [PATCH 114/699] Rename TICK to TICK_EVENT to prevent naming conflicts (#16649) --- quantum/keyboard.c | 2 +- quantum/keyboard.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/quantum/keyboard.c b/quantum/keyboard.c index ba5609f0aa..bb6463bf19 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -489,7 +489,7 @@ bool matrix_scan_task(void) { // we can get here with some keys processed now. if (!keys_processed) #endif - action_exec(TICK); + action_exec(TICK_EVENT); MATRIX_LOOP_END: diff --git a/quantum/keyboard.h b/quantum/keyboard.h index 62661596c1..fe0736a515 100644 --- a/quantum/keyboard.h +++ b/quantum/keyboard.h @@ -74,7 +74,7 @@ static inline bool IS_RELEASED(keyevent_t event) { #define MAKE_KEYEVENT(row_num, col_num, press) ((keyevent_t){.key = MAKE_KEYPOS((row_num), (col_num)), .pressed = (press), .time = (timer_read() | 1)}) /* Tick event */ -#define TICK MAKE_KEYEVENT(KEYLOC_TICK, KEYLOC_TICK, false) +#define TICK_EVENT MAKE_KEYEVENT(KEYLOC_TICK, KEYLOC_TICK, false) #ifdef ENCODER_MAP_ENABLE /* Encoder events */ From 6c11579876cc721b46c734ffd34b66102726df58 Mon Sep 17 00:00:00 2001 From: Yakbats Date: Mon, 14 Mar 2022 15:05:39 -0700 Subject: [PATCH 115/699] [Keyboard] Add via keymap to AL1 (#16499) --- keyboards/al1/config.h | 4 +-- keyboards/al1/keymaps/via/keymap.c | 46 +++++++++++++++++++++++++++++ keyboards/al1/keymaps/via/readme.md | 1 + keyboards/al1/keymaps/via/rules.mk | 2 ++ 4 files changed, 51 insertions(+), 2 deletions(-) create mode 100644 keyboards/al1/keymaps/via/keymap.c create mode 100644 keyboards/al1/keymaps/via/readme.md create mode 100644 keyboards/al1/keymaps/via/rules.mk diff --git a/keyboards/al1/config.h b/keyboards/al1/config.h index b003a9cd6c..c8edb8ebfe 100644 --- a/keyboards/al1/config.h +++ b/keyboards/al1/config.h @@ -27,8 +27,8 @@ along with this program. If not, see . #define PRODUCT AL1 /* key matrix size */ -#define MATRIX_ROWS 7 -#define MATRIX_COLS 20 +#define MATRIX_ROWS 6 +#define MATRIX_COLS 16 #define LED_NUM_LOCK_PIN D0 #define LED_CAPS_LOCK_PIN B7 diff --git a/keyboards/al1/keymaps/via/keymap.c b/keyboards/al1/keymaps/via/keymap.c new file mode 100644 index 0000000000..931755270b --- /dev/null +++ b/keyboards/al1/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_GESC, 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_INS, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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, KC_DEL, KC_P7, KC_P8, KC_P9, KC_PPLS, + 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_P4, KC_P5, KC_P6, + 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_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), + + [1] = LAYOUT( + KC_TRNS, 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, RESET, 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, 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 ), + + [2] = LAYOUT( + 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, 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, 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 ), + + [3] = LAYOUT( + 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, 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, 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 ), +}; diff --git a/keyboards/al1/keymaps/via/readme.md b/keyboards/al1/keymaps/via/readme.md new file mode 100644 index 0000000000..458df9ca13 --- /dev/null +++ b/keyboards/al1/keymaps/via/readme.md @@ -0,0 +1 @@ +# The via keymap for al1 diff --git a/keyboards/al1/keymaps/via/rules.mk b/keyboards/al1/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/al1/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From a939adb55c53d7cd7cbcc26e81ae6ee700ad3f6c Mon Sep 17 00:00:00 2001 From: ethsol Date: Mon, 14 Mar 2022 23:20:50 +0100 Subject: [PATCH 116/699] Sentence correction (#16650) --- docs/feature_bootmagic.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/feature_bootmagic.md b/docs/feature_bootmagic.md index 148ea92b9e..6b3c7e45fd 100644 --- a/docs/feature_bootmagic.md +++ b/docs/feature_bootmagic.md @@ -51,7 +51,7 @@ void bootmagic_lite(void) { } ``` -You can additional feature here. For instance, resetting the EEPROM or requiring additional keys to be pressed to trigger Bootmagic Lite. Keep in mind that `bootmagic_lite` is called before a majority of features are initialized in the firmware. +You can define additional logic here. For instance, resetting the EEPROM or requiring additional keys to be pressed to trigger Bootmagic Lite. Keep in mind that `bootmagic_lite` is called before a majority of features are initialized in the firmware. ## Addenda From 7fde30979986732433126d50911efdef928c2b64 Mon Sep 17 00:00:00 2001 From: mechlovin <57231893+mechlovin@users.noreply.github.com> Date: Tue, 15 Mar 2022 07:23:57 +0700 Subject: [PATCH 117/699] [Keyboard] Add Kay65 PCB by Team Mechlovin' (#15565) * add kay65 PCB * update * update * Update readme.md * Update keyboards/mechlovin/kay65/rev1/rules.mk * Update keyboards/mechlovin/olly/jf/rules.mk * Update keyboards/mechlovin/kay65/rev1/rules.mk * Update keyboards/mechlovin/kay65/rev1/info.json * Update keymap.c * update * Update keyboards/mechlovin/kay65/rev1/rev1.h * Update keyboards/mechlovin/kay65/rev1/info.json * Update keyboards/mechlovin/kay65/rev1/info.json * Update keyboards/mechlovin/kay65/rev1/rules.mk * Update keymap.c * Update readme.md * Update keyboards/mechlovin/olly/jf/readme.md * Update keyboards/mechlovin/kay65/rev1/config.h --- keyboards/mechlovin/kay65/rev1/config.h | 147 ++++++++++++ keyboards/mechlovin/kay65/rev1/info.json | 223 ++++++++++++++++++ .../kay65/rev1/keymaps/default/keymap.c | 52 ++++ .../kay65/rev1/keymaps/default/readme.md | 1 + .../mechlovin/kay65/rev1/keymaps/via/keymap.c | 72 ++++++ .../kay65/rev1/keymaps/via/readme.md | 1 + .../mechlovin/kay65/rev1/keymaps/via/rules.mk | 2 + keyboards/mechlovin/kay65/rev1/readme.md | 27 +++ keyboards/mechlovin/kay65/rev1/rev1.c | 25 ++ keyboards/mechlovin/kay65/rev1/rev1.h | 62 +++++ keyboards/mechlovin/kay65/rev1/rules.mk | 20 ++ keyboards/mechlovin/olly/jf/config.h | 4 + .../mechlovin/olly/jf/keymaps/via/config.h | 3 +- .../mechlovin/olly/jf/keymaps/via/keymap.c | 9 +- keyboards/mechlovin/olly/jf/readme.md | 5 +- 15 files changed, 642 insertions(+), 11 deletions(-) create mode 100644 keyboards/mechlovin/kay65/rev1/config.h create mode 100644 keyboards/mechlovin/kay65/rev1/info.json create mode 100644 keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c create mode 100644 keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md create mode 100644 keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c create mode 100644 keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md create mode 100644 keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk create mode 100644 keyboards/mechlovin/kay65/rev1/readme.md create mode 100644 keyboards/mechlovin/kay65/rev1/rev1.c create mode 100644 keyboards/mechlovin/kay65/rev1/rev1.h create mode 100644 keyboards/mechlovin/kay65/rev1/rules.mk diff --git a/keyboards/mechlovin/kay65/rev1/config.h b/keyboards/mechlovin/kay65/rev1/config.h new file mode 100644 index 0000000000..cc1b991672 --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/config.h @@ -0,0 +1,147 @@ +/* +Copyright 2021 Mechlovin' + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4D4C +#define PRODUCT_ID 0x6502 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Team Mechlovin +#define PRODUCTION Kay65 Rev. 1 + +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { B7, D3, D5, D4, C6 } +#define MATRIX_COL_PINS { F7, F6, F5, F4, F1, F0, C7, E6, B0, D2, D1, D0, B3, B2, B1 } + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +#define LED_CAPS_LOCK_PIN D6 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +#define RGB_DI_PIN E2 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 24 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_SNAKE +# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +# define RGBLIGHT_EFFECT_RGB_TEST +# define RGBLIGHT_EFFECT_ALTERNATING +# define RGBLIGHT_EFFECT_TWINKLE +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +//#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechlovin/kay65/rev1/info.json b/keyboards/mechlovin/kay65/rev1/info.json new file mode 100644 index 0000000000..9a2f7dc01b --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/info.json @@ -0,0 +1,223 @@ +{ + "keyboard_name": "Kay65", + "url": "", + "maintainer": "Mechlovin' Studio", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label":"K00 (B0,B5)", "x":0, "y":0}, + {"label":"K01 (B0,B6)", "x":1, "y":0}, + {"label":"K02 (B0,B7)", "x":2, "y":0}, + {"label":"K03 (B0,C0)", "x":3, "y":0}, + {"label":"K04 (B0,C1)", "x":4, "y":0}, + {"label":"K05 (B0,C2)", "x":5, "y":0}, + {"label":"K06 (B0,C3)", "x":6, "y":0}, + {"label":"K07 (B0,C4)", "x":7, "y":0}, + {"label":"K08 (B0,C5)", "x":8, "y":0}, + {"label":"K09 (B0,C6)", "x":9, "y":0}, + {"label":"K0A (B0,C7)", "x":10, "y":0}, + {"label":"K0B (B0,D0)", "x":11, "y":0}, + {"label":"K0C (B0,D1)", "x":12, "y":0}, + {"label":"K0D (B0,D2)", "x":13, "y":0}, + {"label":"K1D (B1,D2)", "x":14, "y":0}, + {"label":"K0E (B0,D3)", "x":15, "y":0}, + {"label":"K10 (B1,B5)", "x":0, "y":1, "w":1.5}, + {"label":"K11 (B1,B6)", "x":1.5, "y":1}, + {"label":"K12 (B1,B7)", "x":2.5, "y":1}, + {"label":"K13 (B1,C0)", "x":3.5, "y":1}, + {"label":"K14 (B1,C1)", "x":4.5, "y":1}, + {"label":"K15 (B1,C2)", "x":5.5, "y":1}, + {"label":"K16 (B1,C3)", "x":6.5, "y":1}, + {"label":"K17 (B1,C4)", "x":7.5, "y":1}, + {"label":"K18 (B1,C5)", "x":8.5, "y":1}, + {"label":"K19 (B1,C6)", "x":9.5, "y":1}, + {"label":"K1A (B1,C7)", "x":10.5, "y":1}, + {"label":"K1B (B1,D0)", "x":11.5, "y":1}, + {"label":"K1C (B1,D1)", "x":12.5, "y":1}, + {"label":"K2C (B2,D1)", "x":13.5, "y":1, "w":1.5}, + {"label":"K1E (B1,D3)", "x":15, "y":1}, + {"label":"K20 (B2,B5)", "x":0, "y":2, "w":1.75}, + {"label":"K21 (B2,B6)", "x":1.75, "y":2}, + {"label":"K22 (B2,B7)", "x":2.75, "y":2}, + {"label":"K23 (B2,C0)", "x":3.75, "y":2}, + {"label":"K24 (B2,C1)", "x":4.75, "y":2}, + {"label":"K25 (B2,C2)", "x":5.75, "y":2}, + {"label":"K26 (B2,C3)", "x":6.75, "y":2}, + {"label":"K27 (B2,C4)", "x":7.75, "y":2}, + {"label":"K28 (B2,C5)", "x":8.75, "y":2}, + {"label":"K29 (B2,C6)", "x":9.75, "y":2}, + {"label":"K2A (B2,C7)", "x":10.75, "y":2}, + {"label":"K2B (B2,D0)", "x":11.75, "y":2}, + {"label":"K2D (B2,D2)", "x":12.75, "y":2, "w":2.25}, + {"label":"K2E (B2,D3)", "x":15, "y":2}, + {"label":"K30 (B3,B5)", "x":0, "y":3, "w":1.25}, + {"label":"K31 (B3,B6)", "x":1.25, "y":3}, + {"label":"K32 (B3,B7)", "x":2.25, "y":3}, + {"label":"K33 (B3,C0)", "x":3.25, "y":3}, + {"label":"K34 (B3,C1)", "x":4.25, "y":3}, + {"label":"K35 (B3,C2)", "x":5.25, "y":3}, + {"label":"K36 (B3,C3)", "x":6.25, "y":3}, + {"label":"K37 (B3,C4)", "x":7.25, "y":3}, + {"label":"K38 (B3,C5)", "x":8.25, "y":3}, + {"label":"K39 (B3,C6)", "x":9.25, "y":3}, + {"label":"K3A (B3,C7)", "x":10.25, "y":3}, + {"label":"K3B (B3,D0)", "x":11.25, "y":3}, + {"label":"K3C (B3,D1)", "x":12.25, "y":3, "w":1.75}, + {"label":"K3D (B3,D2)", "x":14, "y":3}, + {"label":"K3E (B3,D3)", "x":15, "y":3}, + {"label":"K40 (B4,B5)", "x":0, "y":4, "w":1.25}, + {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, + {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, + {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, + {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, + {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K4C (B4,D1)", "x":13, "y":4}, + {"label":"K4D (B4,D2)", "x":14, "y":4}, + {"label":"K4E (B4,D3)", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"label":"K00 (B0,B5)", "x":0, "y":0}, + {"label":"K01 (B0,B6)", "x":1, "y":0}, + {"label":"K02 (B0,B7)", "x":2, "y":0}, + {"label":"K03 (B0,C0)", "x":3, "y":0}, + {"label":"K04 (B0,C1)", "x":4, "y":0}, + {"label":"K05 (B0,C2)", "x":5, "y":0}, + {"label":"K06 (B0,C3)", "x":6, "y":0}, + {"label":"K07 (B0,C4)", "x":7, "y":0}, + {"label":"K08 (B0,C5)", "x":8, "y":0}, + {"label":"K09 (B0,C6)", "x":9, "y":0}, + {"label":"K0A (B0,C7)", "x":10, "y":0}, + {"label":"K0B (B0,D0)", "x":11, "y":0}, + {"label":"K0C (B0,D1)", "x":12, "y":0}, + {"label":"K0D (B0,D2)", "x":13, "y":0, "w":2}, + {"label":"K0E (B0,D3)", "x":15, "y":0}, + {"label":"K10 (B1,B5)", "x":0, "y":1, "w":1.5}, + {"label":"K11 (B1,B6)", "x":1.5, "y":1}, + {"label":"K12 (B1,B7)", "x":2.5, "y":1}, + {"label":"K13 (B1,C0)", "x":3.5, "y":1}, + {"label":"K14 (B1,C1)", "x":4.5, "y":1}, + {"label":"K15 (B1,C2)", "x":5.5, "y":1}, + {"label":"K16 (B1,C3)", "x":6.5, "y":1}, + {"label":"K17 (B1,C4)", "x":7.5, "y":1}, + {"label":"K18 (B1,C5)", "x":8.5, "y":1}, + {"label":"K19 (B1,C6)", "x":9.5, "y":1}, + {"label":"K1A (B1,C7)", "x":10.5, "y":1}, + {"label":"K1B (B1,D0)", "x":11.5, "y":1}, + {"label":"K1C (B1,D1)", "x":12.5, "y":1}, + {"label":"K2C (B2,D1)", "x":13.5, "y":1, "w":1.5}, + {"label":"K1E (B1,D3)", "x":15, "y":1}, + {"label":"K20 (B2,B5)", "x":0, "y":2, "w":1.75}, + {"label":"K21 (B2,B6)", "x":1.75, "y":2}, + {"label":"K22 (B2,B7)", "x":2.75, "y":2}, + {"label":"K23 (B2,C0)", "x":3.75, "y":2}, + {"label":"K24 (B2,C1)", "x":4.75, "y":2}, + {"label":"K25 (B2,C2)", "x":5.75, "y":2}, + {"label":"K26 (B2,C3)", "x":6.75, "y":2}, + {"label":"K27 (B2,C4)", "x":7.75, "y":2}, + {"label":"K28 (B2,C5)", "x":8.75, "y":2}, + {"label":"K29 (B2,C6)", "x":9.75, "y":2}, + {"label":"K2A (B2,C7)", "x":10.75, "y":2}, + {"label":"K2B (B2,D0)", "x":11.75, "y":2}, + {"label":"K2D (B2,D2)", "x":12.75, "y":2, "w":2.25}, + {"label":"K2E (B2,D3)", "x":15, "y":2}, + {"label":"K30 (B3,B5)", "x":0, "y":3, "w":2.25}, + {"label":"K32 (B3,B7)", "x":2.25, "y":3}, + {"label":"K33 (B3,C0)", "x":3.25, "y":3}, + {"label":"K34 (B3,C1)", "x":4.25, "y":3}, + {"label":"K35 (B3,C2)", "x":5.25, "y":3}, + {"label":"K36 (B3,C3)", "x":6.25, "y":3}, + {"label":"K37 (B3,C4)", "x":7.25, "y":3}, + {"label":"K38 (B3,C5)", "x":8.25, "y":3}, + {"label":"K39 (B3,C6)", "x":9.25, "y":3}, + {"label":"K3A (B3,C7)", "x":10.25, "y":3}, + {"label":"K3B (B3,D0)", "x":11.25, "y":3}, + {"label":"K3C (B3,D1)", "x":12.25, "y":3, "w":1.75}, + {"label":"K3D (B3,D2)", "x":14, "y":3}, + {"label":"K3E (B3,D3)", "x":15, "y":3}, + {"label":"K40 (B4,B5)", "x":0, "y":4, "w":1.25}, + {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, + {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, + {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, + {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, + {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K4C (B4,D1)", "x":13, "y":4}, + {"label":"K4D (B4,D2)", "x":14, "y":4}, + {"label":"K4E (B4,D3)", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"label":"K00 (B0,B5)", "x":0, "y":0}, + {"label":"K01 (B0,B6)", "x":1, "y":0}, + {"label":"K02 (B0,B7)", "x":2, "y":0}, + {"label":"K03 (B0,C0)", "x":3, "y":0}, + {"label":"K04 (B0,C1)", "x":4, "y":0}, + {"label":"K05 (B0,C2)", "x":5, "y":0}, + {"label":"K06 (B0,C3)", "x":6, "y":0}, + {"label":"K07 (B0,C4)", "x":7, "y":0}, + {"label":"K08 (B0,C5)", "x":8, "y":0}, + {"label":"K09 (B0,C6)", "x":9, "y":0}, + {"label":"K0A (B0,C7)", "x":10, "y":0}, + {"label":"K0B (B0,D0)", "x":11, "y":0}, + {"label":"K0C (B0,D1)", "x":12, "y":0}, + {"label":"K0D (B0,D2)", "x":13, "y":0, "w":2}, + {"label":"K0E (B0,D3)", "x":15, "y":0}, + {"label":"K10 (B1,B5)", "x":0, "y":1, "w":1.5}, + {"label":"K11 (B1,B6)", "x":1.5, "y":1}, + {"label":"K12 (B1,B7)", "x":2.5, "y":1}, + {"label":"K13 (B1,C0)", "x":3.5, "y":1}, + {"label":"K14 (B1,C1)", "x":4.5, "y":1}, + {"label":"K15 (B1,C2)", "x":5.5, "y":1}, + {"label":"K16 (B1,C3)", "x":6.5, "y":1}, + {"label":"K17 (B1,C4)", "x":7.5, "y":1}, + {"label":"K18 (B1,C5)", "x":8.5, "y":1}, + {"label":"K19 (B1,C6)", "x":9.5, "y":1}, + {"label":"K1A (B1,C7)", "x":10.5, "y":1}, + {"label":"K1B (B1,D0)", "x":11.5, "y":1}, + {"label":"K1C (B1,D1)", "x":12.5, "y":1}, + {"label":"K1E (B1,D3)", "x":15, "y":1}, + {"label":"K20 (B2,B5)", "x":0, "y":2, "w":1.75}, + {"label":"K21 (B2,B6)", "x":1.75, "y":2}, + {"label":"K22 (B2,B7)", "x":2.75, "y":2}, + {"label":"K23 (B2,C0)", "x":3.75, "y":2}, + {"label":"K24 (B2,C1)", "x":4.75, "y":2}, + {"label":"K25 (B2,C2)", "x":5.75, "y":2}, + {"label":"K26 (B2,C3)", "x":6.75, "y":2}, + {"label":"K27 (B2,C4)", "x":7.75, "y":2}, + {"label":"K28 (B2,C5)", "x":8.75, "y":2}, + {"label":"K29 (B2,C6)", "x":9.75, "y":2}, + {"label":"K2A (B2,C7)", "x":10.75, "y":2}, + {"label":"K2B (B2,D0)", "x":11.75, "y":2}, + {"label":"K2C (B2,D1)", "x":12.75, "y":2}, + {"label":"K2D (B2,D2)", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"K2E (B2,D3)", "x":15, "y":2}, + {"label":"K30 (B3,B5)", "x":0, "y":3, "w":1.25}, + {"label":"K31 (B3,B6)", "x":1.25, "y":3}, + {"label":"K32 (B3,B7)", "x":2.25, "y":3}, + {"label":"K33 (B3,C0)", "x":3.25, "y":3}, + {"label":"K34 (B3,C1)", "x":4.25, "y":3}, + {"label":"K35 (B3,C2)", "x":5.25, "y":3}, + {"label":"K36 (B3,C3)", "x":6.25, "y":3}, + {"label":"K37 (B3,C4)", "x":7.25, "y":3}, + {"label":"K38 (B3,C5)", "x":8.25, "y":3}, + {"label":"K39 (B3,C6)", "x":9.25, "y":3}, + {"label":"K3A (B3,C7)", "x":10.25, "y":3}, + {"label":"K3B (B3,D0)", "x":11.25, "y":3}, + {"label":"K3C (B3,D1)", "x":12.25, "y":3, "w":1.75}, + {"label":"K3D (B3,D2)", "x":14, "y":3}, + {"label":"K3E (B3,D3)", "x":15, "y":3}, + {"label":"K40 (B4,B5)", "x":0, "y":4, "w":1.25}, + {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, + {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, + {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, + {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, + {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K4C (B4,D1)", "x":13, "y":4}, + {"label":"K4D (B4,D2)", "x":14, "y":4}, + {"label":"K4E (B4,D3)", "x":15, "y":4} + ] + } + } +} diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c b/keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c new file mode 100644 index 0000000000..1607eee4fd --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c @@ -0,0 +1,52 @@ +/* +Copyright 2021 Mechlovin' + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum my_keycodes { + LOGO_LED_ON = USER00, + LOGO_LED_OFF = USER01 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, KC_DEL, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LOGO_LED_ON: + if (record->event.pressed) { + writePinHigh(D7); + } + break; + case LOGO_LED_OFF: + if (record->event.pressed) { + writePinLow(D7); + } + break; + } + return true; +}; + diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md b/keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md new file mode 100644 index 0000000000..95a00bd46c --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Kay65 \ No newline at end of file diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c b/keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c new file mode 100644 index 0000000000..c2bdbf219f --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c @@ -0,0 +1,72 @@ +/* +Copyright 2021 Mechlovin' + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum my_keycodes { + LOGO_LED_ON = USER00, + LOGO_LED_OFF = USER01 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, KC_DEL, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LOGO_LED_ON: + if (record->event.pressed) { + writePinHigh(D7); + } + break; + case LOGO_LED_OFF: + if (record->event.pressed) { + writePinLow(D7); + } + break; + } + return true; +}; \ No newline at end of file diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md b/keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md new file mode 100644 index 0000000000..9a13f95f0d --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for Kay65 \ No newline at end of file diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk b/keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/mechlovin/kay65/rev1/readme.md b/keyboards/mechlovin/kay65/rev1/readme.md new file mode 100644 index 0000000000..dfa454d370 --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/readme.md @@ -0,0 +1,27 @@ +# Kay65 + +![Kay65](https://i.imgur.com/tuu6w1Ul.png) + +A 65% PCB with centered USB, RGB underglow and top right LED. + +* Keyboard Maintainer: [Mechlovin' Studio](https://github.com/mechlovin) +* Hardware Supported: Kay65 Rev.1, Atmega32u4 +* Hardware Availability: [Mechlovin' Store](https://mechlovin.studio/) + +Make example for this keyboard (after setting up your build environment): + + make mechlovin/kay65/rev1:default + +Flashing example for this keyboard: + + make mechlovin/kay65/rev1:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/mechlovin/kay65/rev1/rev1.c b/keyboards/mechlovin/kay65/rev1/rev1.c new file mode 100644 index 0000000000..bc894a96e1 --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/rev1.c @@ -0,0 +1,25 @@ +/* +Copyright 2021 Mechlovin' + +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 . +*/ + +#include "rev1.h" + +void keyboard_pre_init_user(void) { + // Call the keyboard pre init code. + + // Set our LED pins as output + setPinOutput(D7); +} \ No newline at end of file diff --git a/keyboards/mechlovin/kay65/rev1/rev1.h b/keyboards/mechlovin/kay65/rev1/rev1.h new file mode 100644 index 0000000000..7da2a74969 --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/rev1.h @@ -0,0 +1,62 @@ +/* +Copyright 2021 Mechlovin' + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K1D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ +} + +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ +} + +#define LAYOUT_65_iso_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, KC_NO, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ +} diff --git a/keyboards/mechlovin/kay65/rev1/rules.mk b/keyboards/mechlovin/kay65/rev1/rules.mk new file mode 100644 index 0000000000..a9dd139c6b --- /dev/null +++ b/keyboards/mechlovin/kay65/rev1/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker 65_iso_blocker diff --git a/keyboards/mechlovin/olly/jf/config.h b/keyboards/mechlovin/olly/jf/config.h index 66826aafa4..f1c40cb365 100644 --- a/keyboards/mechlovin/olly/jf/config.h +++ b/keyboards/mechlovin/olly/jf/config.h @@ -72,3 +72,7 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 1 +#define BOOTMAGIC_LITE_COLUMN 14 diff --git a/keyboards/mechlovin/olly/jf/keymaps/via/config.h b/keyboards/mechlovin/olly/jf/keymaps/via/config.h index 82c2e51eb9..01d7e4bc38 100644 --- a/keyboards/mechlovin/olly/jf/keymaps/via/config.h +++ b/keyboards/mechlovin/olly/jf/keymaps/via/config.h @@ -17,4 +17,5 @@ along with this program. If not, see . #pragma once -#define DYNAMIC_KEYMAP_LAYER_COUNT 3 +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 + diff --git a/keyboards/mechlovin/olly/jf/keymaps/via/keymap.c b/keyboards/mechlovin/olly/jf/keymaps/via/keymap.c index 18ac685abc..947b3b0d35 100644 --- a/keyboards/mechlovin/olly/jf/keymaps/via/keymap.c +++ b/keyboards/mechlovin/olly/jf/keymaps/via/keymap.c @@ -32,12 +32,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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 ), - [2] = LAYOUT_all( - 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), + }; \ No newline at end of file diff --git a/keyboards/mechlovin/olly/jf/readme.md b/keyboards/mechlovin/olly/jf/readme.md index b45498f849..6a6bbc415a 100644 --- a/keyboards/mechlovin/olly/jf/readme.md +++ b/keyboards/mechlovin/olly/jf/readme.md @@ -18,6 +18,7 @@ Flashing example for this keyboard: See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). -**Reset Key:** 2 ways to put the Olly JF into bootloader: +**Reset Key:** 3 ways to put the Olly JF into bootloader: By keycode: Tap RESET keycode. -By bootloader: hold ESC key while plugging in \ No newline at end of file +By Bootloader: hold ESC key while plugging in (jump to bootloader) +By Bootmagic: hold Insert key while pluging in (jump to bootloader and reset EEPROM) \ No newline at end of file From 2d9c3f9a89c502e76eacb485e984ba467d72048e Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 15 Mar 2022 11:38:53 +1100 Subject: [PATCH 118/699] Add SN74x154 driver and convert AL1 custom matrix (#16331) --- drivers/gpio/sn74x154.c | 58 +++++++++++++++ drivers/gpio/sn74x154.h | 48 +++++++++++++ keyboards/al1/config.h | 5 ++ keyboards/al1/matrix.c | 156 +++++++++++++++++++++------------------- keyboards/al1/rules.mk | 3 +- 5 files changed, 196 insertions(+), 74 deletions(-) create mode 100644 drivers/gpio/sn74x154.c create mode 100644 drivers/gpio/sn74x154.h diff --git a/drivers/gpio/sn74x154.c b/drivers/gpio/sn74x154.c new file mode 100644 index 0000000000..5f21f12b55 --- /dev/null +++ b/drivers/gpio/sn74x154.c @@ -0,0 +1,58 @@ +/* Copyright 2022 + * + * 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 . + */ + +#include "sn74x154.h" +#include "gpio.h" + +#define ADDRESS_PIN_COUNT 4 + +#ifndef SN74X154_ADDRESS_PINS +# error sn74x154: no address pins defined! +#endif + +static const pin_t address_pins[ADDRESS_PIN_COUNT] = SN74X154_ADDRESS_PINS; + +void sn74x154_init(void) { + for (int i = 0; i < ADDRESS_PIN_COUNT; i++) { + setPinOutput(address_pins[i]); + writePinLow(address_pins[i]); + } + +#if defined(SN74X154_E0_PIN) + setPinOutput(SN74X154_E0_PIN); + writePinHigh(SN74X154_E0_PIN); +#endif + +#if defined(SN74X154_E1_PIN) + setPinOutput(SN74X154_E1_PIN); + writePinHigh(SN74X154_E1_PIN); +#endif +} + +void sn74x154_set_enabled(bool enabled) { +#if defined(SN74X154_E0_PIN) + writePin(SN74X154_E0_PIN, !enabled); +#endif +#if defined(SN74X154_E1_PIN) + writePin(SN74X154_E1_PIN, !enabled); +#endif +} + +void sn74x154_set_addr(uint8_t address) { + for (int i = 0; i < ADDRESS_PIN_COUNT; i++) { + writePin(address_pins[i], address & (1 << i)); + } +} diff --git a/drivers/gpio/sn74x154.h b/drivers/gpio/sn74x154.h new file mode 100644 index 0000000000..ce6a9ddb0e --- /dev/null +++ b/drivers/gpio/sn74x154.h @@ -0,0 +1,48 @@ +/* Copyright 2022 + * + * 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 . + */ + +#pragma once + +#include +#include + +/** + * Driver for 74x154 4-to-16 decoder/demultiplexer with inverting outputs + * https://assets.nexperia.com/documents/data-sheet/74HC_HCT154.pdf + */ + +/** + * Initialize the address and output enable pins. + */ +void sn74x154_init(void); + +/** + * Set the enabled state. + * + * When enabled is true, pulls the E0 and E1 pins low. + * + * \param enabled The enable state to set. + */ +void sn74x154_set_enabled(bool enabled); + +/** + * Set the output pin address. + * + * The selected output pin will be pulled low, while the remaining output pins will be high. + * + * \param address The address to set, from 0 to 15. + */ +void sn74x154_set_addr(uint8_t address); diff --git a/keyboards/al1/config.h b/keyboards/al1/config.h index c8edb8ebfe..570eb03ae2 100644 --- a/keyboards/al1/config.h +++ b/keyboards/al1/config.h @@ -30,6 +30,11 @@ along with this program. If not, see . #define MATRIX_ROWS 6 #define MATRIX_COLS 16 +#define MATRIX_ROW_PINS { C7, B1, B2, C6, B4, B5 } + +#define SN74X154_ADDRESS_PINS { D4, D5, D6, D7 } +#define SN74X154_E1_PIN D3 + #define LED_NUM_LOCK_PIN D0 #define LED_CAPS_LOCK_PIN B7 #define LED_SCROLL_LOCK_PIN D1 diff --git a/keyboards/al1/matrix.c b/keyboards/al1/matrix.c index 1407cbc089..e3d7971f1c 100644 --- a/keyboards/al1/matrix.c +++ b/keyboards/al1/matrix.c @@ -1,91 +1,101 @@ +/* Copyright 2022 + * + * 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 . + */ + #include "matrix.h" - #include "gpio.h" +#include "sn74x154.h" -static uint8_t read_rows(void) { - return (readPin(C7) ? 0 : 1) | - (readPin(B1) ? 0 : 2) | - (readPin(B2) ? 0 : 4) | - (readPin(C6) ? 0 : 8) | - (readPin(B4) ? 0 : 16) | - (readPin(B5) ? 0 : 32); -} +static const pin_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; +/* All columns use a 74HC154 4-to-16 demultiplexer. + * D3 is the enable pin, must be set high to use it. + * + * A3 A2 A1 A0 + * D7 D6 D5 D4 + * 0: 0 0 0 0 + * 1: 0 0 0 1 + * 2: 0 0 1 0 + * 3: 0 0 1 1 + * 4: 0 1 0 0 + * 5: 0 1 0 1 + * 6: 0 1 1 0 + * 7: 0 1 1 1 + * 8: 1 0 0 0 + * 9: 1 0 0 1 + * 10: 1 0 1 0 + * 11: 1 0 1 1 + * 12: 1 1 0 0 + * 13: 1 1 0 1 + * 14: 1 1 1 0 + * 15: 1 1 1 1 + */ static void select_col(uint8_t col) { - writePinLow(D3); - - writePin(D4, (col & 1)); - writePin(D5, (col & 2)); - writePin(D6, (col & 4)); - writePin(D7, (col & 8)); + sn74x154_set_addr(col); } -static void unselect_cols(void) { - writePinHigh(D3); +static void init_pins(void) { + for (uint8_t x = 0; x < MATRIX_ROWS; x++) { + setPinInputHigh(row_pins[x]); + } +} + +static bool read_rows_on_col(matrix_row_t current_matrix[], uint8_t current_col) { + bool matrix_changed = false; + + // Select col and wait for col seleciton to stabilize + select_col(current_col); + matrix_io_delay(); + + // For each row... + for (uint8_t row_index = 0; row_index < MATRIX_ROWS; row_index++) { + // Store last value of row prior to reading + matrix_row_t last_row_value = current_matrix[row_index]; + + // Check row pin state + if (readPin(row_pins[row_index]) == 0) { + // Pin LO, set col bit + current_matrix[row_index] |= (MATRIX_ROW_SHIFTER << current_col); + } else { + // Pin HI, clear col bit + current_matrix[row_index] &= ~(MATRIX_ROW_SHIFTER << current_col); + } + + // Determine if the matrix changed state + if ((last_row_value != current_matrix[row_index]) && !(matrix_changed)) { + matrix_changed = true; + } + } + + return matrix_changed; } void matrix_init_custom(void) { - /* 74HC154 col pin configuration - * pin: D3 D7 D6 D5 D4 - * row: off 0 x x x x - * 0 1 0 0 0 0 - * 1 1 0 0 0 1 - * 2 1 0 0 1 0 - * 3 1 0 0 1 1 - * 4 1 0 1 0 0 - * 5 1 0 1 0 1 - * 6 1 0 1 1 0 - * 7 1 0 1 1 1 - * 8 1 1 0 0 0 - * 9 1 1 0 0 1 - * 10 1 1 0 1 0 - * 11 1 1 0 1 1 - * 12 1 1 1 0 0 - * 13 1 1 1 0 1 - * 14 1 1 1 1 0 - * 15 1 1 1 1 1 - */ - setPinOutput(D3); - writePinHigh(D3); - - setPinOutput(D4); - setPinOutput(D5); - setPinOutput(D6); - setPinOutput(D7); - - - /* Row pin configuration - * - * row: 0 1 2 3 4 5 - * pin: C7 B1 B2 C6 B4 B5 - * - */ - setPinInputHigh(C7); - setPinInputHigh(B1); - setPinInputHigh(B2); - setPinInputHigh(C6); - setPinInputHigh(B4); - setPinInputHigh(B5); + // initialize demultiplexer + sn74x154_init(); + sn74x154_set_enabled(true); + // initialize key pins + init_pins(); } bool matrix_scan_custom(matrix_row_t current_matrix[]) { bool changed = false; - for (uint8_t col = 0; col < MATRIX_COLS; col++) { - select_col(col); - matrix_io_delay(); - uint8_t rows = read_rows(); - - for (uint8_t row = 0; row < MATRIX_ROWS; row++) { - bool prev_bit = current_matrix[row] & ((matrix_row_t)1 << col); - bool curr_bit = rows & (1 << row); - - if (prev_bit != curr_bit) { - current_matrix[row] ^= ((matrix_row_t)1 << col); - changed = true; - } - } - unselect_cols(); + // Set col, read rows + for (uint8_t current_col = 0; current_col < MATRIX_COLS; current_col++) { + changed |= read_rows_on_col(current_matrix, current_col); } return changed; diff --git a/keyboards/al1/rules.mk b/keyboards/al1/rules.mk index 670712f661..1f8e81de20 100644 --- a/keyboards/al1/rules.mk +++ b/keyboards/al1/rules.mk @@ -18,4 +18,5 @@ RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output CUSTOM_MATRIX = lite -SRC += matrix.c +VPATH += drivers/gpio +SRC += matrix.c sn74x154.c From 04826d1aa175c5aeb808ae9af8d90d164532f199 Mon Sep 17 00:00:00 2001 From: evanmcook <42785294+evanmcook@users.noreply.github.com> Date: Mon, 14 Mar 2022 21:56:27 -0400 Subject: [PATCH 119/699] [Keyboard] evancookaudio sleepingdinosaur v2 (#16625) --- .../evancookaudio/sleepingdinosaur/config.h | 4 +- .../sleepingdinosaur/keymaps/via/keymap.c | 61 +++++++++++++++++++ .../sleepingdinosaur/keymaps/via/rules.mk | 1 + .../evancookaudio/sleepingdinosaur/rules.mk | 4 +- 4 files changed, 66 insertions(+), 4 deletions(-) create mode 100644 keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c create mode 100644 keyboards/evancookaudio/sleepingdinosaur/keymaps/via/rules.mk diff --git a/keyboards/evancookaudio/sleepingdinosaur/config.h b/keyboards/evancookaudio/sleepingdinosaur/config.h index 4412e9eb60..c03ce94c1e 100644 --- a/keyboards/evancookaudio/sleepingdinosaur/config.h +++ b/keyboards/evancookaudio/sleepingdinosaur/config.h @@ -37,8 +37,8 @@ /* key matrix pins */ -#define MATRIX_ROW_PINS {D0, D1, D4, C6, D7} -#define MATRIX_COL_PINS {F4, F5, F6, F7, B1, B3} +#define MATRIX_ROW_PINS {D1, D0, D4, C6, D7} +#define MATRIX_COL_PINS {B3, B1, F7, F6, F5, F4} #define UNUSED_PINS {B2, B6, B7, D5, C7, F1, F0, B4, E6} diff --git a/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c new file mode 100644 index 0000000000..250f3bee7c --- /dev/null +++ b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c @@ -0,0 +1,61 @@ +/* Copyright 2022 evan cook + * + * 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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* LAYER 0 + * ,-----------------------------------------------. + * | 1 | 2 | 3 | 4 | 5 | - | + * |-------+-------+-------|-------|-------|-------| + * | 6 | 7 | 8 | 9 | 0 | R | + * |-------+-------+-------|-------|-------|-------| + * | LT(/) | Q | W | E | U | V | + * -------+-------+-------|-------|-------|-------| + * | ENTER | A | S | D | SPACE | O | + * | |-------+-------+-------| |-------| + * | | Z | X | C | | N | + * ,-----------------------------------------------. + */ +LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_R, + LT(1,KC_SLSH), KC_Q, KC_W, KC_E, KC_U, KC_V, + KC_ENT, KC_A, KC_S, KC_D, KC_SPC, KC_O, + KC_Z, KC_X, KC_C, KC_N +) +LAYOUT( + 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 +) +LAYOUT( + 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 +) +LAYOUT( + 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 +) +}; diff --git a/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/rules.mk b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/evancookaudio/sleepingdinosaur/rules.mk b/keyboards/evancookaudio/sleepingdinosaur/rules.mk index 6cf6d9358b..94d6846c6c 100644 --- a/keyboards/evancookaudio/sleepingdinosaur/rules.mk +++ b/keyboards/evancookaudio/sleepingdinosaur/rules.mk @@ -7,9 +7,9 @@ BOOTLOADER = caterina # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = no # Audio control and System control +EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = yes # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover From 5e5047f071e7fad23104df76c47f059ce47bad84 Mon Sep 17 00:00:00 2001 From: Pear <93159069+WestMProducts@users.noreply.github.com> Date: Mon, 14 Mar 2022 20:55:33 -0700 Subject: [PATCH 120/699] [Keyboard westm68 rev1 and fine tune westm boards (#16528) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/westm/westm68/config.h | 24 ++++--------------- keyboards/westm/westm68/halconf.h | 1 - keyboards/westm/westm68/rev1/config.h | 34 +++++++++++++++++++++++++++ keyboards/westm/westm68/rev1/rev1.c | 22 +++++++++++++++++ keyboards/westm/westm68/rev1/rev1.h | 17 ++++++++++++++ keyboards/westm/westm68/rev1/rules.mk | 0 keyboards/westm/westm68/westm68.c | 3 +-- keyboards/westm/westmergo/westmergo.c | 2 +- 8 files changed, 80 insertions(+), 23 deletions(-) create mode 100644 keyboards/westm/westm68/rev1/config.h create mode 100644 keyboards/westm/westm68/rev1/rev1.c create mode 100644 keyboards/westm/westm68/rev1/rev1.h create mode 100644 keyboards/westm/westm68/rev1/rules.mk diff --git a/keyboards/westm/westm68/config.h b/keyboards/westm/westm68/config.h index ceecbb914c..42e3eeb5a4 100644 --- a/keyboards/westm/westm68/config.h +++ b/keyboards/westm/westm68/config.h @@ -16,10 +16,13 @@ #pragma once +#include "config_common.h" + +/* Ensure we jump to bootloader if the RESET keycode was pressed */ +#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE + /* USB Device descriptor parameter */ #define VENDOR_ID 0x574D // WM -#define PRODUCT_ID 0x0001 -#define DEVICE_VER 0x0001 // Revision prototype #define MANUFACTURER WestM #define PRODUCT WestM68 @@ -31,23 +34,6 @@ #define MATRIX_COL_PINS { B14, B13, B12, B11, B10, B2, B1, B8, B7, B6, B5, B4, B3, A15, A14 } #define DIODE_DIRECTION COL2ROW -#define RGBLIGHT_EFFECT_BREATHING -#define RGBLIGHT_EFFECT_RAINBOW_MOOD -#define RGBLIGHT_EFFECT_RAINBOW_SWIRL -#define RGBLIGHT_EFFECT_SNAKE -#define RGBLIGHT_EFFECT_KNIGHT -#define RGBLIGHT_EFFECT_CHRISTMAS -#define RGBLIGHT_EFFECT_STATIC_GRADIENT -#define RGBLIGHT_EFFECT_RGB_TEST -#define RGBLIGHT_EFFECT_ALTERNATING -#define RGBLIGHT_EFFECT_TWINKLE -// The pin connected to the data pin of the LEDs -#define RGB_DI_PIN A8 -#define RGBLED_NUM 19 - -/* define if matrix has ghost */ -//#define MATRIX_HAS_GHOST - /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 diff --git a/keyboards/westm/westm68/halconf.h b/keyboards/westm/westm68/halconf.h index a73f08fb6d..a0a9318360 100644 --- a/keyboards/westm/westm68/halconf.h +++ b/keyboards/westm/westm68/halconf.h @@ -14,7 +14,6 @@ * along with this program. If not, see . */ - #pragma once #define HAL_USE_PWM TRUE diff --git a/keyboards/westm/westm68/rev1/config.h b/keyboards/westm/westm68/rev1/config.h new file mode 100644 index 0000000000..0e43d98613 --- /dev/null +++ b/keyboards/westm/westm68/rev1/config.h @@ -0,0 +1,34 @@ +/* Copyright 2021 WestM + * + * 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 . + */ + +#pragma once + +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 + +// The pin connected to the data pin of the LEDs +#define RGB_DI_PIN A8 +#define RGBLED_NUM 16 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE \ No newline at end of file diff --git a/keyboards/westm/westm68/rev1/rev1.c b/keyboards/westm/westm68/rev1/rev1.c new file mode 100644 index 0000000000..d198c1447a --- /dev/null +++ b/keyboards/westm/westm68/rev1/rev1.c @@ -0,0 +1,22 @@ +/* Copyright 2021 WestM + * + * 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 . + */ + +#include "rev1.h" + +void board_init(void) { + rgblight_toggle(); // Fixes if LEDs were off in the first place buggy LED turns on + rgblight_set(); // Need this to fix buggy first LED upon plugging in PCB +} \ No newline at end of file diff --git a/keyboards/westm/westm68/rev1/rev1.h b/keyboards/westm/westm68/rev1/rev1.h new file mode 100644 index 0000000000..e30df949a9 --- /dev/null +++ b/keyboards/westm/westm68/rev1/rev1.h @@ -0,0 +1,17 @@ +/* Copyright 2021 WestM + * + * 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 . + */ + +#include "westm68.h" \ No newline at end of file diff --git a/keyboards/westm/westm68/rev1/rules.mk b/keyboards/westm/westm68/rev1/rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/westm/westm68/westm68.c b/keyboards/westm/westm68/westm68.c index f5ec496247..e30df949a9 100644 --- a/keyboards/westm/westm68/westm68.c +++ b/keyboards/westm/westm68/westm68.c @@ -14,5 +14,4 @@ * along with this program. If not, see . */ - -#include "westm68.h" +#include "westm68.h" \ No newline at end of file diff --git a/keyboards/westm/westmergo/westmergo.c b/keyboards/westm/westmergo/westmergo.c index d78a8f9d4e..18055d3789 100644 --- a/keyboards/westm/westmergo/westmergo.c +++ b/keyboards/westm/westmergo/westmergo.c @@ -14,4 +14,4 @@ * along with this program. If not, see . */ -#include "westmergo.h" +#include "westmergo.h" \ No newline at end of file From 36ddb567cc21944b6bdc76807ca08c3b44978dc5 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 14 Mar 2022 22:00:57 -0600 Subject: [PATCH 121/699] [Keyboard] Fix mechlovin/kay65 (#16653) --- keyboards/mechlovin/kay65/{rev1 => }/config.h | 0 keyboards/mechlovin/kay65/{rev1 => }/info.json | 0 keyboards/mechlovin/kay65/{rev1/rev1.c => kay65.c} | 4 ++-- keyboards/mechlovin/kay65/{rev1/rev1.h => kay65.h} | 0 .../mechlovin/kay65/{rev1 => }/keymaps/default/keymap.c | 6 +++--- .../mechlovin/kay65/{rev1 => }/keymaps/default/readme.md | 0 keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/keymap.c | 4 ++-- keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/readme.md | 0 keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/rules.mk | 0 keyboards/mechlovin/kay65/{rev1 => }/readme.md | 4 ++-- keyboards/mechlovin/kay65/{rev1 => }/rules.mk | 0 11 files changed, 9 insertions(+), 9 deletions(-) rename keyboards/mechlovin/kay65/{rev1 => }/config.h (100%) rename keyboards/mechlovin/kay65/{rev1 => }/info.json (100%) rename keyboards/mechlovin/kay65/{rev1/rev1.c => kay65.c} (97%) rename keyboards/mechlovin/kay65/{rev1/rev1.h => kay65.h} (100%) rename keyboards/mechlovin/kay65/{rev1 => }/keymaps/default/keymap.c (96%) rename keyboards/mechlovin/kay65/{rev1 => }/keymaps/default/readme.md (100%) rename keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/keymap.c (99%) rename keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/readme.md (100%) rename keyboards/mechlovin/kay65/{rev1 => }/keymaps/via/rules.mk (100%) rename keyboards/mechlovin/kay65/{rev1 => }/readme.md (92%) rename keyboards/mechlovin/kay65/{rev1 => }/rules.mk (100%) diff --git a/keyboards/mechlovin/kay65/rev1/config.h b/keyboards/mechlovin/kay65/config.h similarity index 100% rename from keyboards/mechlovin/kay65/rev1/config.h rename to keyboards/mechlovin/kay65/config.h diff --git a/keyboards/mechlovin/kay65/rev1/info.json b/keyboards/mechlovin/kay65/info.json similarity index 100% rename from keyboards/mechlovin/kay65/rev1/info.json rename to keyboards/mechlovin/kay65/info.json diff --git a/keyboards/mechlovin/kay65/rev1/rev1.c b/keyboards/mechlovin/kay65/kay65.c similarity index 97% rename from keyboards/mechlovin/kay65/rev1/rev1.c rename to keyboards/mechlovin/kay65/kay65.c index bc894a96e1..abc6a7f8d4 100644 --- a/keyboards/mechlovin/kay65/rev1/rev1.c +++ b/keyboards/mechlovin/kay65/kay65.c @@ -15,11 +15,11 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "rev1.h" +#include "kay65.h" void keyboard_pre_init_user(void) { // Call the keyboard pre init code. // Set our LED pins as output setPinOutput(D7); -} \ No newline at end of file +} diff --git a/keyboards/mechlovin/kay65/rev1/rev1.h b/keyboards/mechlovin/kay65/kay65.h similarity index 100% rename from keyboards/mechlovin/kay65/rev1/rev1.h rename to keyboards/mechlovin/kay65/kay65.h diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c b/keyboards/mechlovin/kay65/keymaps/default/keymap.c similarity index 96% rename from keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c rename to keyboards/mechlovin/kay65/keymaps/default/keymap.c index 1607eee4fd..cc7cdc44fa 100644 --- a/keyboards/mechlovin/kay65/rev1/keymaps/default/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/default/keymap.c @@ -18,8 +18,8 @@ along with this program. If not, see . #include QMK_KEYBOARD_H enum my_keycodes { - LOGO_LED_ON = USER00, - LOGO_LED_OFF = USER01 + LOGO_LED_ON = SAFE_RANGE, + LOGO_LED_OFF }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { @@ -47,6 +47,6 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } break; } - return true; + return true; }; diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md b/keyboards/mechlovin/kay65/keymaps/default/readme.md similarity index 100% rename from keyboards/mechlovin/kay65/rev1/keymaps/default/readme.md rename to keyboards/mechlovin/kay65/keymaps/default/readme.md diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c b/keyboards/mechlovin/kay65/keymaps/via/keymap.c similarity index 99% rename from keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c rename to keyboards/mechlovin/kay65/keymaps/via/keymap.c index c2bdbf219f..02e1b8578d 100644 --- a/keyboards/mechlovin/kay65/rev1/keymaps/via/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/via/keymap.c @@ -68,5 +68,5 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } break; } - return true; -}; \ No newline at end of file + return true; +}; diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md b/keyboards/mechlovin/kay65/keymaps/via/readme.md similarity index 100% rename from keyboards/mechlovin/kay65/rev1/keymaps/via/readme.md rename to keyboards/mechlovin/kay65/keymaps/via/readme.md diff --git a/keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk b/keyboards/mechlovin/kay65/keymaps/via/rules.mk similarity index 100% rename from keyboards/mechlovin/kay65/rev1/keymaps/via/rules.mk rename to keyboards/mechlovin/kay65/keymaps/via/rules.mk diff --git a/keyboards/mechlovin/kay65/rev1/readme.md b/keyboards/mechlovin/kay65/readme.md similarity index 92% rename from keyboards/mechlovin/kay65/rev1/readme.md rename to keyboards/mechlovin/kay65/readme.md index dfa454d370..768ce12aa7 100644 --- a/keyboards/mechlovin/kay65/rev1/readme.md +++ b/keyboards/mechlovin/kay65/readme.md @@ -10,11 +10,11 @@ A 65% PCB with centered USB, RGB underglow and top right LED. Make example for this keyboard (after setting up your build environment): - make mechlovin/kay65/rev1:default + make mechlovin/kay65:default Flashing example for this keyboard: - make mechlovin/kay65/rev1:default:flash + make mechlovin/kay65:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/mechlovin/kay65/rev1/rules.mk b/keyboards/mechlovin/kay65/rules.mk similarity index 100% rename from keyboards/mechlovin/kay65/rev1/rules.mk rename to keyboards/mechlovin/kay65/rules.mk From 1ef4e305e3a6f1f46235831b4eb06c4a200651b5 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 14 Mar 2022 22:02:49 -0600 Subject: [PATCH 122/699] Fix evancookaudio/sleepingdinosaur (#16654) --- .../evancookaudio/sleepingdinosaur/config.h | 4 +- .../sleepingdinosaur/keymaps/via/keymap.c | 59 +++++++++---------- 2 files changed, 30 insertions(+), 33 deletions(-) diff --git a/keyboards/evancookaudio/sleepingdinosaur/config.h b/keyboards/evancookaudio/sleepingdinosaur/config.h index c03ce94c1e..ca1bdbf1c2 100644 --- a/keyboards/evancookaudio/sleepingdinosaur/config.h +++ b/keyboards/evancookaudio/sleepingdinosaur/config.h @@ -39,6 +39,4 @@ #define MATRIX_ROW_PINS {D1, D0, D4, C6, D7} #define MATRIX_COL_PINS {B3, B1, F7, F6, F5, F4} - -#define UNUSED_PINS {B2, B6, B7, D5, C7, F1, F0, B4, E6} - +#define UNUSED_PINS diff --git a/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c index 250f3bee7c..53edbf1321 100644 --- a/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c +++ b/keyboards/evancookaudio/sleepingdinosaur/keymaps/via/keymap.c @@ -15,8 +15,6 @@ */ #include QMK_KEYBOARD_H -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - /* LAYER 0 * ,-----------------------------------------------. * | 1 | 2 | 3 | 4 | 5 | - | @@ -30,32 +28,33 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | Z | X | C | | N | * ,-----------------------------------------------. */ -LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, - KC_6, KC_7, KC_8, KC_9, KC_0, KC_R, - LT(1,KC_SLSH), KC_Q, KC_W, KC_E, KC_U, KC_V, - KC_ENT, KC_A, KC_S, KC_D, KC_SPC, KC_O, - KC_Z, KC_X, KC_C, KC_N -) -LAYOUT( - 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 -) -LAYOUT( - 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 -) -LAYOUT( - 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 -) +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_MINS, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_R, + LT(1,KC_SLSH), KC_Q, KC_W, KC_E, KC_U, KC_V, + KC_ENT, KC_A, KC_S, KC_D, KC_SPC, KC_O, + KC_Z, KC_X, KC_C, KC_N + ), + [1] = LAYOUT( + 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 + ), + [2] = LAYOUT( + 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 + ), + [3] = LAYOUT( + 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 + ) }; From 87bb1a3890dd203f4e0fbf8a68455e1ecd25fd0e Mon Sep 17 00:00:00 2001 From: thompson-ele Date: Tue, 15 Mar 2022 00:28:21 -0700 Subject: [PATCH 123/699] [Keyboard] Add Bacca70 keyboard (#16626) Co-authored-by: Ryan Co-authored-by: Drashna Jaelre --- keyboards/bacca70/bacca70.c | 17 ++ keyboards/bacca70/bacca70.h | 65 +++++++ keyboards/bacca70/chconf.h | 25 +++ keyboards/bacca70/config.h | 49 +++++ keyboards/bacca70/info.json | 170 ++++++++++++++++++ .../bacca70/keymaps/debaccabean/keymap.c | 40 +++++ .../bacca70/keymaps/dede-special/keymap.c | 74 ++++++++ keyboards/bacca70/keymaps/default/keymap.c | 38 ++++ keyboards/bacca70/keymaps/via/keymap.c | 56 ++++++ keyboards/bacca70/keymaps/via/rules.mk | 1 + keyboards/bacca70/readme.md | 23 +++ keyboards/bacca70/rules.mk | 18 ++ 12 files changed, 576 insertions(+) create mode 100644 keyboards/bacca70/bacca70.c create mode 100644 keyboards/bacca70/bacca70.h create mode 100644 keyboards/bacca70/chconf.h create mode 100644 keyboards/bacca70/config.h create mode 100644 keyboards/bacca70/info.json create mode 100644 keyboards/bacca70/keymaps/debaccabean/keymap.c create mode 100644 keyboards/bacca70/keymaps/dede-special/keymap.c create mode 100644 keyboards/bacca70/keymaps/default/keymap.c create mode 100644 keyboards/bacca70/keymaps/via/keymap.c create mode 100644 keyboards/bacca70/keymaps/via/rules.mk create mode 100644 keyboards/bacca70/readme.md create mode 100644 keyboards/bacca70/rules.mk diff --git a/keyboards/bacca70/bacca70.c b/keyboards/bacca70/bacca70.c new file mode 100644 index 0000000000..174b4d97e7 --- /dev/null +++ b/keyboards/bacca70/bacca70.c @@ -0,0 +1,17 @@ +/* Copyright 2022 keebnewb + * + * 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 . + */ + +#include "bacca70.h" diff --git a/keyboards/bacca70/bacca70.h b/keyboards/bacca70/bacca70.h new file mode 100644 index 0000000000..0583fd8043 --- /dev/null +++ b/keyboards/bacca70/bacca70.h @@ -0,0 +1,65 @@ +/* Copyright 2022 keebnewb + * + * 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 . + */ + + #pragma once + + #include "quantum.h" + + #define ___ KC_NO + +#define LAYOUT_default( \ + k00, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k17, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k27, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k47, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k67, \ + k80, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k96, k87, \ + ka0, ka1, ka3, kb5, ka7 \ +){ \ + { k00, k01, k02, k03, k04, k05, k06, ___ }, \ + { ___, k11, k12, k13, k14, k15, k16, k17 }, \ + { k20, k21, k22, k23, k24, k25, k26, k27 }, \ + { k30, k31, k32, k33, k34, k35, k36, ___ }, \ + { k40, k41, k42, k43, k44, k45, k46, k47 }, \ + { k50, k51, k52, k53, k54, k55, ___, ___ }, \ + { k60, k61, k62, k63, k64, k65, ___, k67 }, \ + { k70, k71, k72, k73, k74, k75, ___, ___ }, \ + { k80, k81, k82, k83, k84, k85, ___, k87 }, \ + { ___, k91, k92, k93, k94, k95, k96, ___ }, \ + { ka0, ka1, ___, ka3, ___, ___, ___, ka7 }, \ + { ___, ___, ___, ___, ___, kb5, ___, ___ } \ +} + +#define LAYOUT_debaccabean( \ + k00, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k17, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k27, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, k67, \ + k80, k90, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k86, k96, k87, \ + ka0, ka1, ka2, ka3, ka4, kb5, ka7 \ +){ \ + { k00, k01, k02, k03, k04, k05, k06, ___ }, \ + { ___, k11, k12, k13, k14, k15, k16, k17 }, \ + { k20, k21, k22, k23, k24, k25, k26, k27 }, \ + { k30, k31, k32, k33, k34, k35, k36, ___ }, \ + { k40, k41, k42, k43, k44, k45, k46, k47 }, \ + { k50, k51, k52, k53, k54, k55, k56, ___ }, \ + { k60, k61, k62, k63, k64, k65, k66, k67 }, \ + { k70, k71, k72, k73, k74, k75, k76, ___ }, \ + { k80, k81, k82, k83, k84, k85, k86, k87 }, \ + { k90, k91, k92, k93, k94, k95, k96, ___ }, \ + { ka0, ka1, ka2, ka3, ka4, ___, ___, ka7 }, \ + { ___, ___, ___, ___, ___, kb5, ___, ___ } \ +} diff --git a/keyboards/bacca70/chconf.h b/keyboards/bacca70/chconf.h new file mode 100644 index 0000000000..9fee9bb49d --- /dev/null +++ b/keyboards/bacca70/chconf.h @@ -0,0 +1,25 @@ +/* Copyright 2022 keebnewb + * + * 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 . + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_OPTIMIZE_SPEED FALSE + +#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE + +#include_next diff --git a/keyboards/bacca70/config.h b/keyboards/bacca70/config.h new file mode 100644 index 0000000000..703baaaf3a --- /dev/null +++ b/keyboards/bacca70/config.h @@ -0,0 +1,49 @@ +/* +Copyright 2022 keebnewb + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xBACA +#define PRODUCT_ID 0x6970 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Viktus Design LLC +#define PRODUCT Bacca70 + +/* key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 8 + +// 0 1 2 3 4 5 6 7 8 9 A B +#define MATRIX_ROW_PINS { A3, A4, A5, A6, A7, B0, B1, B2, B10, B11, A9, A10 } +#define MATRIX_COL_PINS { A0, A1, A2, B12, B13, B14, B15, A8 } +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + + diff --git a/keyboards/bacca70/info.json b/keyboards/bacca70/info.json new file mode 100644 index 0000000000..ddc2f894ac --- /dev/null +++ b/keyboards/bacca70/info.json @@ -0,0 +1,170 @@ +{ + "keyboard_name": "Bacca70", + "url": "https://3dkeebs.com/", + "maintainer": "keebnewb", + "layouts": { + "LAYOUT_default": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":13.5, "y":2.25, "w":1.5}, + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25, "w":2.25}, + {"x":0, "y":4.25, "w":2.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":1.75}, + {"x":14, "y":4.25}, + {"x":0, "y":5.25, "w":1.5}, + {"x":2.5, "y":5.25, "w":1.5}, + {"x":4, "y":5.25, "w":7}, + {"x":11, "y":5.25, "w":1.5}, + {"x":13.5, "y":5.25, "w":1.5} + ] + }, + "LAYOUT_debaccabean": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":0, "y":2.25}, + {"x":1, "y":2.25}, + {"x":2, "y":2.25}, + {"x":3, "y":2.25}, + {"x":4, "y":2.25}, + {"x":5, "y":2.25}, + {"x":6, "y":2.25}, + {"x":7, "y":2.25}, + {"x":8, "y":2.25}, + {"x":9, "y":2.25}, + {"x":10, "y":2.25}, + {"x":11, "y":2.25}, + {"x":12, "y":2.25}, + {"x":13, "y":2.25}, + {"x":14, "y":2.25}, + {"x":0, "y":3.25}, + {"x":1, "y":3.25}, + {"x":2, "y":3.25}, + {"x":3, "y":3.25}, + {"x":4, "y":3.25}, + {"x":5, "y":3.25}, + {"x":6, "y":3.25}, + {"x":7, "y":3.25}, + {"x":8, "y":3.25}, + {"x":9, "y":3.25}, + {"x":10, "y":3.25}, + {"x":11, "y":3.25}, + {"x":12, "y":3.25}, + {"x":13, "y":3.25}, + {"x":14, "y":3.25}, + {"x":0, "y":4.25}, + {"x":1, "y":4.25}, + {"x":2, "y":4.25}, + {"x":3, "y":4.25}, + {"x":4, "y":4.25}, + {"x":5, "y":4.25}, + {"x":6, "y":4.25}, + {"x":7, "y":4.25}, + {"x":8, "y":4.25}, + {"x":9, "y":4.25}, + {"x":10, "y":4.25}, + {"x":11, "y":4.25}, + {"x":12, "y":4.25}, + {"x":13, "y":4.25}, + {"x":14, "y":4.25}, + {"x":0, "y":5.25, "w":1.5}, + {"x":2.5, "y":5.25, "w":1.5}, + {"x":4, "y":5.25, "w":3}, + {"x":7, "y":5.25}, + {"x":8, "y":5.25, "w":3}, + {"x":11, "y":5.25, "w":1.5}, + {"x":13.5, "y":5.25, "w":1.5} + ] + } + } +} diff --git a/keyboards/bacca70/keymaps/debaccabean/keymap.c b/keyboards/bacca70/keymaps/debaccabean/keymap.c new file mode 100644 index 0000000000..66e3ec0b5f --- /dev/null +++ b/keyboards/bacca70/keymaps/debaccabean/keymap.c @@ -0,0 +1,40 @@ +/* +Copyright 2022 keebnewb + +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 . +*/ +#include QMK_KEYBOARD_H + +#define CAP_GUI MT(MOD_LGUI, KC_CAPS) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_debaccabean( + 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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC,KC_INS, KC_RBRC,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_P7, KC_P8, KC_P9, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + CAP_GUI,KC_A, KC_S, KC_D, KC_F, KC_G, KC_P4, KC_P5, KC_P6, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_P1, KC_P2, KC_P3, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_ENT, + KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RCTL + ), + + [1] = LAYOUT_debaccabean( + RESET, 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_PSCR,KC_SLCK,KC_PAUS,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_INS, KC_UP, KC_PGUP,KC_TRNS,KC_TRNS, + KC_TRNS,KC_MPLY,KC_MUTE,KC_VOLD,KC_VOLU,KC_MPRV,KC_MNXT,KC_TRNS,KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,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_HOME,KC_END, KC_PGDN,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/bacca70/keymaps/dede-special/keymap.c b/keyboards/bacca70/keymaps/dede-special/keymap.c new file mode 100644 index 0000000000..1c7514e81b --- /dev/null +++ b/keyboards/bacca70/keymaps/dede-special/keymap.c @@ -0,0 +1,74 @@ +/* +Copyright 2022 keebnewb + +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 . +*/ +#include QMK_KEYBOARD_H + +// Windows mods +#define GRV_CTL MT(MOD_LCTL, KC_GRV) +#define BLS_CTL MT(MOD_RCTL, KC_BSLS) +#define TAB_ALT MT(MOD_LALT, KC_TAB) + +// MacOS mods +#define GRV_GUI MT(MOD_LGUI, KC_GRV) +#define BLS_GUI MT(MOD_RGUI, KC_BSLS) +#define TAB_CTL MT(MOD_LCTL, KC_TAB) + +// mod tap bracket shifts +#define LBR_SFT MT(MOD_LSFT, KC_LBRC) +#define RBR_SFT MT(MOD_RSFT, KC_RBRC) + +// Arrow/TenKey/Media Keys/Reset hold with Backspace tap +#define BSPC_LR LT(3, KC_BSPC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_debaccabean( + 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_F13, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC,KC_GRV, KC_RBRC,KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_P7, KC_P8, KC_P9, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_ENT, + TAB_ALT,KC_A, KC_S, KC_D, KC_F, KC_G, KC_P4, KC_P5, KC_P6, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT, + LBR_SFT,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_P1, KC_P2, KC_P3, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,RBR_SFT, + KC_LGUI, GRV_CTL, BSPC_LR,MO(2), KC_SPC, BLS_CTL, KC_RGUI + ), + + // MacOS layer + [1] = LAYOUT_debaccabean( + 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + TAB_CTL,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_LALT, GRV_GUI, KC_TRNS,KC_TRNS,KC_TRNS, BLS_GUI, KC_RALT + ), + + [2] = LAYOUT_debaccabean( + 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_UNDS,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_DLR, KC_TRNS,KC_TRNS,KC_TRNS,KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN,KC_PLUS, + KC_MINS,KC_1, KC_2, KC_3, KC_4, KC_5, KC_TRNS,KC_TRNS,KC_TRNS,KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, + 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 + ), + + [3] = LAYOUT_debaccabean( + RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,TG(1), + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK,KC_PAUS,KC_TRNS,KC_TRNS, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_UP, KC_PGUP,KC_TRNS,KC_TRNS, + KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MNXT,KC_TRNS,KC_TRNS,KC_TRNS,KC_LEFT,KC_DOWN,KC_RGHT,KC_TRNS, + KC_MPLY,KC_MUTE,KC_VOLD,KC_VOLU,KC_MPRV,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_HOME,KC_END, KC_PGDN,KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/bacca70/keymaps/default/keymap.c b/keyboards/bacca70/keymaps/default/keymap.c new file mode 100644 index 0000000000..65f1252ba6 --- /dev/null +++ b/keyboards/bacca70/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* +Copyright 2022 keebnewb + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_default( + 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_GRV, 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_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, + 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,KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RCTL + ), + + [1] = LAYOUT_default( + 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,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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + ) +}; diff --git a/keyboards/bacca70/keymaps/via/keymap.c b/keyboards/bacca70/keymaps/via/keymap.c new file mode 100644 index 0000000000..a4a74b7252 --- /dev/null +++ b/keyboards/bacca70/keymaps/via/keymap.c @@ -0,0 +1,56 @@ +/* +Copyright 2022 keebnewb + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_default( + 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_GRV, 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_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, + 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,KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RCTL + ), + + [1]=LAYOUT_default( + 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,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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + ), + + [2] = LAYOUT_default( + 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,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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + ), + + [3] = LAYOUT_default( + 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,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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + ) +}; diff --git a/keyboards/bacca70/keymaps/via/rules.mk b/keyboards/bacca70/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/bacca70/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/bacca70/readme.md b/keyboards/bacca70/readme.md new file mode 100644 index 0000000000..2141138b8f --- /dev/null +++ b/keyboards/bacca70/readme.md @@ -0,0 +1,23 @@ +# Bacca70 + +![Bacca70](https://imgur.com/TQMALjwh.png) + +The Bacca70 is a winkeyless (WKL) 60% layout that includes a F-row. It's classy, hefty and it was designed by Chewwy (of MechsOnDeck) and BlindAssassin. + +* Keyboard Maintainer: [keebnewb](https://github.com/thompson-ele) +* Hardware Supported: Bacca70 PCB and the ortholinear variant the DeBaccaBean PCB +* Hardware Availability: [3DKeebs](https://3dkeebs.com/) + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the top left key (Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB. The button is next to the MCU. +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. For the default keymap it is on the right alt key on the second layer. + +## Make example for this keyboard (after setting up your build environment): + + make bacca70:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/bacca70/rules.mk b/keyboards/bacca70/rules.mk new file mode 100644 index 0000000000..a0b213f847 --- /dev/null +++ b/keyboards/bacca70/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 92a9e7c50b8577e76f2bee9719b344af0e639494 Mon Sep 17 00:00:00 2001 From: PaperCraneKeyboards <96899643+PaperCraneKeyboards@users.noreply.github.com> Date: Tue, 15 Mar 2022 01:29:35 -0700 Subject: [PATCH 124/699] [Keyboard] Adding Gerald65 (#15872) * Gerald65 new keyboard files * removing initial population of pck * Initial Gerald65 Keyboard files * Changed diode direction * added fn layer, added picture to readme * directed mo keycode to fn layer * Changes to vendor id and bootloader instructions * Changed to direct image reference * Update keyboards/papercranekeyboards/gerald65/readme.md * Remove no longer used features --- .../papercranekeyboards/gerald65/config.h | 130 ++++++++++++++++++ .../papercranekeyboards/gerald65/gerald65.c | 4 + .../papercranekeyboards/gerald65/gerald65.h | 29 ++++ .../papercranekeyboards/gerald65/info.json | 78 +++++++++++ .../gerald65/keymaps/default/keymap.c | 29 ++++ .../gerald65/keymaps/default/readme.md | 1 + .../papercranekeyboards/gerald65/readme.md | 27 ++++ .../papercranekeyboards/gerald65/rules.mk | 18 +++ 8 files changed, 316 insertions(+) create mode 100644 keyboards/papercranekeyboards/gerald65/config.h create mode 100644 keyboards/papercranekeyboards/gerald65/gerald65.c create mode 100644 keyboards/papercranekeyboards/gerald65/gerald65.h create mode 100644 keyboards/papercranekeyboards/gerald65/info.json create mode 100644 keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c create mode 100644 keyboards/papercranekeyboards/gerald65/keymaps/default/readme.md create mode 100644 keyboards/papercranekeyboards/gerald65/readme.md create mode 100644 keyboards/papercranekeyboards/gerald65/rules.mk diff --git a/keyboards/papercranekeyboards/gerald65/config.h b/keyboards/papercranekeyboards/gerald65/config.h new file mode 100644 index 0000000000..9e795b1501 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/config.h @@ -0,0 +1,130 @@ +// Copyright 2021 PaperCraneKeyboards (@PaperCraneKeyboards) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5012 // +#define PRODUCT_ID 0x1501 // '21 keyboard 1 +#define DEVICE_VER 0x0001 +#define MANUFACTURER PaperCraneKeyboards +#define PRODUCT gerald65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { B7, D6, E6, B4, B5 } +#define MATRIX_COL_PINS { F7, F6, F5, F4, F1, F0, D7, D4, D3, D2, D1, D0, B6, C6, C7 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 diff --git a/keyboards/papercranekeyboards/gerald65/gerald65.c b/keyboards/papercranekeyboards/gerald65/gerald65.c new file mode 100644 index 0000000000..a33f05d8dc --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/gerald65.c @@ -0,0 +1,4 @@ +// Copyright 2021 PaperCraneKeyboards (@PaperCraneKeyboards) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "gerald65.h" diff --git a/keyboards/papercranekeyboards/gerald65/gerald65.h b/keyboards/papercranekeyboards/gerald65/gerald65.h new file mode 100644 index 0000000000..b433051bb7 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/gerald65.h @@ -0,0 +1,29 @@ +// Copyright 2021 PaperCraneKeyboards (@PaperCraneKeyboards) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14, \ + k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, k43, \ + k44, k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, k56, k57, \ + k58, k59, k60, k61, k62, k63, k64, k65, k66 \ +) { \ + {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k10, k11, k12, k13, k14}, \ + {k15, k16, k17, k18, k19, k20, k21, k22, k23, k24, k25, k26, k27, k28, k29}, \ + {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k40, k41, k42, KC_NO, k43}, \ + {k44, k45, k46, k47, k48, k49, k50, k51, k52, k53, k54, k55, KC_NO, k56, k57}, \ + {k58, KC_NO, k59, k60, KC_NO, k61, k62, KC_NO, k63, KC_NO, KC_NO, KC_NO, k64, k65, k66} \ +} diff --git a/keyboards/papercranekeyboards/gerald65/info.json b/keyboards/papercranekeyboards/gerald65/info.json new file mode 100644 index 0000000000..c9b08304b3 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/info.json @@ -0,0 +1,78 @@ +{ + "keyboard_name": "gerald65", + "url": "", + "maintainer": "PaperCraneKeyboards", + "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":8.25, "y":0}, + {"label":"*", "x":9.25, "y":0}, + {"label":"(", "x":10.25, "y":0}, + {"label":")", "x":11.25, "y":0}, + {"label":"_", "x":12.25, "y":0}, + {"label":"+", "x":13.25, "y":0}, + {"label":"Backspace", "x":14.25, "y":0, "w":2}, + {"label":"Delete", "x":16.5, "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":7.75, "y":1}, + {"label":"U", "x":8.75, "y":1}, + {"label":"I", "x":9.75, "y":1}, + {"label":"O", "x":10.75, "y":1}, + {"label":"P", "x":11.75, "y":1}, + {"label":"{", "x":12.75, "y":1}, + {"label":"}", "x":13.75, "y":1}, + {"label":"|", "x":14.75, "y":1, "w":1.5}, + {"label":"Page Up", "x":16.5, "y":1}, + {"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":8, "y":2}, + {"label":"J", "x":9, "y":2}, + {"label":"K", "x":10, "y":2}, + {"label":"L", "x":11, "y":2}, + {"label":":", "x":12, "y":2}, + {"label":"\"", "x":13, "y":2}, + {"label":"Enter", "x":14, "y":2, "w":2.25}, + {"label":"Page Down", "x":16.5, "y":2}, + {"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":8.5, "y":3}, + {"label":"M", "x":9.5, "y":3}, + {"label":"<", "x":10.5, "y":3}, + {"label":">", "x":11.5, "y":3}, + {"label":"?", "x":12.5, "y":3}, + {"label":"Shift", "x":13.5, "y":3, "w":1.75}, + {"label":"up", "x":15.5, "y":3}, + {"label":"Home", "x":16.5, "y":3}, + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Alt", "x":3.25, "y":4, "w":1.25}, + {"label":"space", "x":4.5, "y":4, "w":2}, + {"label":"space", "x":6.5, "y":4}, + {"label":"space", "x":8.25, "y":4, "w":2.75}, + {"label":"Win", "x":11, "y":4, "w":1.25}, + {"label":"left", "x":14.5, "y":4}, + {"label":"down", "x":15.5, "y":4}, + {"label":"right", "x":16.5, "y":4} + ] + } + } +} diff --git a/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c b/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c new file mode 100644 index 0000000000..b7f54ceb7c --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c @@ -0,0 +1,29 @@ +// Copyright 2021 PaperCraneKeyboards (@PaperCraneKeyboards) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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, KC_PAUSE, + KC_LCTL, KC_LALT, KC_SPC, MO(_FN), KC_SPC, KC_LGUI, KC_LEFT, KC_DOWN, KC_RGHT + + ), + [_FN] = LAYOUT( + KC_GRV, 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, RESET, + 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, 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 + + ) +}; diff --git a/keyboards/papercranekeyboards/gerald65/keymaps/default/readme.md b/keyboards/papercranekeyboards/gerald65/keymaps/default/readme.md new file mode 100644 index 0000000000..e548f34ac4 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for gerald65 diff --git a/keyboards/papercranekeyboards/gerald65/readme.md b/keyboards/papercranekeyboards/gerald65/readme.md new file mode 100644 index 0000000000..2dafff9e20 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/readme.md @@ -0,0 +1,27 @@ +# Paper Crane Keyboards Gerald65 + +![gerald65](https://i.imgur.com/Qh9cLeEh.jpeg) + +A 65% ergonomic acrylic keyboard emphasizing customizability. + +* Keyboard Maintainer: [PaperCraneKeyboards](https://github.com/PaperCraneKeyboards) +* Hardware Supported: Gerald65 PCB +* Hardware Availability: [Paper Crane Keyboards](https://papercranekeyboards.com/) + +Make example for this keyboard (after setting up your build environment): + + make papercranekeyboards/gerald65:default + +Flashing example for this keyboard: + + make papercranekeyboards/gerald65:default:flash + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB (located in the center) +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. To do this, hold down the key to the right of the left spacebar (1u key in the center of bottom row), and then also press the key in the top right (by default, the delete key). + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/papercranekeyboards/gerald65/rules.mk b/keyboards/papercranekeyboards/gerald65/rules.mk new file mode 100644 index 0000000000..1275531ef6 --- /dev/null +++ b/keyboards/papercranekeyboards/gerald65/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 9aaf4a5a9b19f1e2a12c3f2508e2083f7ec58bec Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Tue, 15 Mar 2022 16:31:17 +0800 Subject: [PATCH 125/699] Add split keyboard example for Bootmagic Lite (#16349) * Add split keyboard example for bootmagic lite * Add handedness link * Edit sentence structure * Apply suggested language correction --- docs/feature_bootmagic.md | 27 ++++++++++++++++++++++++--- 1 file changed, 24 insertions(+), 3 deletions(-) diff --git a/docs/feature_bootmagic.md b/docs/feature_bootmagic.md index 6b3c7e45fd..4239cdfd2a 100644 --- a/docs/feature_bootmagic.md +++ b/docs/feature_bootmagic.md @@ -23,14 +23,35 @@ And to trigger the bootloader, you hold this key down when plugging the keyboard ## Split Keyboards -When handedness is predetermined via an option like `SPLIT_HAND_PIN`, you might need to configure a different key between halves. To do so, add these entries to your `config.h` file: +When [handedness](feature_split_keyboard.md#setting-handedness) is predetermined via options like `SPLIT_HAND_PIN` or `EE_HANDS`, you might need to configure a different key between halves. To identify the correct key for the right half, examine the split key matrix defined in the `.h` file, e.g.: + +```c +#define LAYOUT_split_3x5_2( \ + L01, L02, L03, L04, L05, R01, R02, R03, R04, R05, \ + L06, L07, L08, L09, L10, R06, R07, R08, R09, R10, \ + L11, L12, L13, L14, L15, R11, R12, R13, R14, R15, \ + L16, L17, R16, R17 \ + ) \ + { \ + { L01, L02, L03, L04, L05 }, \ + { L06, L07, L08, L09, L10 }, \ + { L11, L12, L13, L14, L15 }, \ + { L16, L17, KC_NO, KC_NO, KC_NO }, \ + { R01, R02, R03, R04, R05 }, \ + { R06, R07, R08, R09, R10 }, \ + { R11, R12, R13, R14, R15 }, \ + { R16, R17, KC_NO, KC_NO, KC_NO } \ + } +``` + +If you pick the top right key for the right half, it is `R05` on the top layout. Within the key matrix below, `R05` is located on row 4 columnn 4. To use that key as the right half's Bootmagic Lite trigger, add these entries to your `config.h` file: ```c #define BOOTMAGIC_LITE_ROW_RIGHT 4 -#define BOOTMAGIC_LITE_COLUMN_RIGHT 1 +#define BOOTMAGIC_LITE_COLUMN_RIGHT 4 ``` -By default, these values are not set. +?> These values are not set by default. ## Advanced Bootmagic Lite From e94c2df3f3908295c824e20c0593e718c45a0f56 Mon Sep 17 00:00:00 2001 From: jpuerto96 Date: Tue, 15 Mar 2022 04:35:11 -0400 Subject: [PATCH 126/699] [Keyboard] Io mini1800 (#16115) * First commit * first commit * 2x3u layout functional * 625u layout * rotary encoder * Modifications to keymaps * Remove ingrained from io_mini branch * Update readme * Update info.json * change hardware availability * Change rules.mk wording to match other PR * Update keyboards/io_mini1800/rules.mk * Update keyboards/io_mini1800/keymaps/default/keymap.c * Update keyboards/io_mini1800/keymaps/2x3u/keymap.c * Update keyboards/io_mini1800/io_mini1800.c * Update keyboards/io_mini1800/keymaps/2x3u/readme.md * Update keyboards/io_mini1800/readme.md --- keyboards/io_mini1800/config.h | 40 ++++++++++++++ keyboards/io_mini1800/info.json | 24 +++++++++ keyboards/io_mini1800/io_mini1800.c | 18 +++++++ keyboards/io_mini1800/io_mini1800.h | 52 +++++++++++++++++++ keyboards/io_mini1800/keymaps/2x3u/keymap.c | 21 ++++++++ keyboards/io_mini1800/keymaps/2x3u/readme.md | 1 + .../io_mini1800/keymaps/default/keymap.c | 21 ++++++++ .../io_mini1800/keymaps/default/readme.md | 1 + keyboards/io_mini1800/readme.md | 24 +++++++++ keyboards/io_mini1800/rules.mk | 20 +++++++ 10 files changed, 222 insertions(+) create mode 100644 keyboards/io_mini1800/config.h create mode 100644 keyboards/io_mini1800/info.json create mode 100644 keyboards/io_mini1800/io_mini1800.c create mode 100644 keyboards/io_mini1800/io_mini1800.h create mode 100644 keyboards/io_mini1800/keymaps/2x3u/keymap.c create mode 100644 keyboards/io_mini1800/keymaps/2x3u/readme.md create mode 100644 keyboards/io_mini1800/keymaps/default/keymap.c create mode 100644 keyboards/io_mini1800/keymaps/default/readme.md create mode 100644 keyboards/io_mini1800/readme.md create mode 100644 keyboards/io_mini1800/rules.mk diff --git a/keyboards/io_mini1800/config.h b/keyboards/io_mini1800/config.h new file mode 100644 index 0000000000..ea7efd8ff4 --- /dev/null +++ b/keyboards/io_mini1800/config.h @@ -0,0 +1,40 @@ +// Copyright 2022 s8erdude (@jpuerto96) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER jpuerto96 +#define PRODUCT io_mini1800 + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 10 + +/* + * 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 { D6, D7, B4, B5, D4, E6, B3, D2, D5, D3 } +#define MATRIX_COL_PINS { D1, D0, B7, B2, F0, F1, F7, F6, F4, F5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define ENCODERS_PAD_A { B0 } +#define ENCODERS_PAD_B { B1 } + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/io_mini1800/info.json b/keyboards/io_mini1800/info.json new file mode 100644 index 0000000000..020a776027 --- /dev/null +++ b/keyboards/io_mini1800/info.json @@ -0,0 +1,24 @@ +{ + "keyboard_name": "io_mini1800", + "url": "https://github.com/jpuerto96", + "maintainer": "jpuerto96 (s8erdude)", + "layouts": { + "LAYOUT_625u": { + "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Ins", "x":15.25, "y":0}, {"label":"Home", "x":16.25, "y":0}, {"label":"Num Lock", "x":17.5, "y":0}, {"label":"/", "x":18.5, "y":0}, {"label":"*", "x":19.5, "y":0}, {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, {"label":"Del", "x":16.25, "y":1}, {"label":"7", "x":17.5, "y":1}, {"label":"8", "x":18.5, "y":1}, {"label":"9", "x":19.5, "y":1}, {"label":"+", "x":20.5, "y":1, "h":2}, + {"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":"4", "x":17.5, "y":2}, {"label":"5", "x":18.5, "y":2}, {"label":"6", "x":19.5, "y":2}, + {"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":2.75}, {"label":"Up", "x":15.75, "y":3.5}, {"label":"1", "x":17.5, "y":3}, {"label":"2", "x":18.5, "y":3}, {"label":"3", "x":19.5, "y":3}, + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4, "w":1.25}, {"label":"Fn", "x":12.75, "y":4, "w":1.25}, {"label":"Left", "x":14.75, "y":4.5}, {"label":"Down", "x":15.75, "y":4.5}, {"label":"Right", "x":16.75, "y":4.5}, {"label":"0", "x":18.5, "y":4}, {"label":".", "x":19.5, "y":4}, {"label":"Enter", "x":20.5, "y":3, "h":2} + ] + }, + "LAYOUT_2x3u": { + "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Ins", "x":15.25, "y":0}, {"label":"Home", "x":16.25, "y":0}, {"label":"Num Lock", "x":17.5, "y":0}, {"label":"/", "x":18.5, "y":0}, {"label":"*", "x":19.5, "y":0}, {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, {"label":"Del", "x":16.25, "y":1}, {"label":"7", "x":17.5, "y":1}, {"label":"8", "x":18.5, "y":1}, {"label":"9", "x":19.5, "y":1}, {"label":"+", "x":20.5, "y":1, "h":2}, + {"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":"4", "x":17.5, "y":2}, {"label":"5", "x":18.5, "y":2}, {"label":"6", "x":19.5, "y":2}, + {"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":2.75}, {"label":"Up", "x":15.75, "y":3.5}, {"label":"1", "x":17.5, "y":3}, {"label":"2", "x":18.5, "y":3}, {"label":"3", "x":19.5, "y":3}, + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":3}, {"x":6.75, "y":4, "w":3}, {"label":"Alt", "x":9.75, "y":4, "w":1.5}, {"label":"Win", "x":11.25, "y":4, "w":1.5}, {"label":"Fn", "x":12.75, "y":4, "w":1.25}, {"label":"Left", "x":14.75, "y":4.5}, {"label":"Down", "x":15.75, "y":4.5}, {"label":"Right", "x":16.75, "y":4.5}, {"label":"0", "x":18.5, "y":4}, {"label":".", "x":19.5, "y":4}, {"label":"Enter", "x":20.5, "y":3, "h":2}] + } + } +} diff --git a/keyboards/io_mini1800/io_mini1800.c b/keyboards/io_mini1800/io_mini1800.c new file mode 100644 index 0000000000..aa500c469a --- /dev/null +++ b/keyboards/io_mini1800/io_mini1800.c @@ -0,0 +1,18 @@ +// Copyright 2022 s8erdude (@jpuerto96) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "io_mini1800.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + return true; +} +#endif diff --git a/keyboards/io_mini1800/io_mini1800.h b/keyboards/io_mini1800/io_mini1800.h new file mode 100644 index 0000000000..634592d62c --- /dev/null +++ b/keyboards/io_mini1800/io_mini1800.h @@ -0,0 +1,52 @@ +// Copyright 2022 s8erdude (@jpuerto96) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_2x3u( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k59, k58, k57, k56, k55, k54, k53, k52, k51, k50, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k69, k68, k67, k66, k65, k64, k63, k62, k61, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k79, k78, k77, k73, k72, k71, k70, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k89, k88, k85, k83, k82, k81, \ + k40, k41, k42, k43, k46, k49, k99, k98, k96, k95, k94, k92, k91, k90 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09 }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \ + { k40, k41, k42, k43, KC_NO, KC_NO, k46, KC_NO, KC_NO, k49 }, \ + { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \ + { KC_NO, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \ + { k70, k71, k72, k73, KC_NO, KC_NO, KC_NO, k77, k78, k79 }, \ + { KC_NO, k81, k82, k83, KC_NO, k85, KC_NO, KC_NO, k88, k89 }, \ + { k90, k91, k92, KC_NO, k94, k95, k96, KC_NO, k98, k99 } \ +} + +#define LAYOUT_625u( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k59, k58, k57, k56, k55, k54, k53, k52, k51, k50, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k69, k68, k67, k66, k65, k64, k63, k62, k61, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k79, k78, k77, k73, k72, k71, k70, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k89, k88, k85, k83, k82, k81, \ + k40, k41, k42, k45, k49, k99, k98, k96, k95, k94, k92, k91, k90 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09 }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19 }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29 }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 }, \ + { k40, k41, k42, KC_NO, KC_NO, k45, KC_NO, KC_NO, KC_NO, k49 }, \ + { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59 }, \ + { KC_NO, k61, k62, k63, k64, k65, k66, k67, k68, k69 }, \ + { k70, k71, k72, k73, KC_NO, KC_NO, KC_NO, k77, k78, k79 }, \ + { KC_NO, k81, k82, k83, KC_NO, k85, KC_NO, KC_NO, k88, k89 }, \ + { k90, k91, k92, KC_NO, k94, k95, k96, KC_NO, k98, k99 } \ +} diff --git a/keyboards/io_mini1800/keymaps/2x3u/keymap.c b/keyboards/io_mini1800/keymaps/2x3u/keymap.c new file mode 100644 index 0000000000..75e4145207 --- /dev/null +++ b/keyboards/io_mini1800/keymaps/2x3u/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2022 s8erdude (@jpuerto96) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ +[_BASE] = LAYOUT_2x3u( + 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_BSPC, KC_INS, KC_HOME, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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, KC_END, KC_DEL, KC_P7, KC_P8, KC_P9, + 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_P4, KC_P5, KC_P6, KC_PPLS, + 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, KC_P1, KC_P2, KC_P3, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT, KC_PENT + ) +}; + diff --git a/keyboards/io_mini1800/keymaps/2x3u/readme.md b/keyboards/io_mini1800/keymaps/2x3u/readme.md new file mode 100644 index 0000000000..7e6980f5cd --- /dev/null +++ b/keyboards/io_mini1800/keymaps/2x3u/readme.md @@ -0,0 +1 @@ +# The default Split Spacebar keymap for io_mini1800 diff --git a/keyboards/io_mini1800/keymaps/default/keymap.c b/keyboards/io_mini1800/keymaps/default/keymap.c new file mode 100644 index 0000000000..1a3573fe5f --- /dev/null +++ b/keyboards/io_mini1800/keymaps/default/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2022 s8erdude (@jpuerto96) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_625u( + 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_BSPC, KC_INS, KC_HOME, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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, KC_END, KC_DEL, KC_P7, KC_P8, KC_P9, + 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_P4, KC_P5, KC_P6, KC_PPLS, + 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, KC_P1, KC_P2, KC_P3, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT, KC_PENT + ) +}; + diff --git a/keyboards/io_mini1800/keymaps/default/readme.md b/keyboards/io_mini1800/keymaps/default/readme.md new file mode 100644 index 0000000000..4bcc9ba512 --- /dev/null +++ b/keyboards/io_mini1800/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for io_mini1800 diff --git a/keyboards/io_mini1800/readme.md b/keyboards/io_mini1800/readme.md new file mode 100644 index 0000000000..c6139203bb --- /dev/null +++ b/keyboards/io_mini1800/readme.md @@ -0,0 +1,24 @@ +# io_mini1800 + +This keyboard is a mini 1800 with a minimal navigation cluster, which also offers a rotary encoder option. + +* Keyboard Maintainer: [s8erdude](https://github.com/jpuerto96) +* Hardware Supported: IO-Mini 1800 +* Hardware Availability: [P3D Store](https://p3dstore.com/) + +Make example for this keyboard (after setting up your build environment): + + make io_mini1800:default + +Flashing example for this keyboard: + + make io_mini1800:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +To reset the board into bootloader, do one of the following: + +* **Hardware reset**: short the pad labeled RESET on the back, near the microcontroller +* **Bootmagic reset**: hold down the top left key (usually programmed as Escape) while plugging in the keyboard (also resets persistent storage) diff --git a/keyboards/io_mini1800/rules.mk b/keyboards/io_mini1800/rules.mk new file mode 100644 index 0000000000..284ea23e78 --- /dev/null +++ b/keyboards/io_mini1800/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +ENCODER_ENABLE = yes From e9bf95e0f2de74590c57bfd64258559e4219dd1f Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Tue, 15 Mar 2022 03:35:17 -0600 Subject: [PATCH 127/699] [Keyboard] Fix westm/westm68 compliation errors (#16657) --- keyboards/westm/westm68/config.h | 6 ++---- keyboards/westm/westm68/rev1/config.h | 5 +---- keyboards/westm/westm68/rev1/rules.mk | 1 + keyboards/westm/westm68/rules.mk | 4 ++-- 4 files changed, 6 insertions(+), 10 deletions(-) diff --git a/keyboards/westm/westm68/config.h b/keyboards/westm/westm68/config.h index 42e3eeb5a4..d1063583d3 100644 --- a/keyboards/westm/westm68/config.h +++ b/keyboards/westm/westm68/config.h @@ -23,6 +23,8 @@ /* USB Device descriptor parameter */ #define VENDOR_ID 0x574D // WM +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 #define MANUFACTURER WestM #define PRODUCT WestM68 @@ -41,7 +43,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* Hold ESC key (first key of first column) to trigger bootloader */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file diff --git a/keyboards/westm/westm68/rev1/config.h b/keyboards/westm/westm68/rev1/config.h index 0e43d98613..054b47cca2 100644 --- a/keyboards/westm/westm68/rev1/config.h +++ b/keyboards/westm/westm68/rev1/config.h @@ -16,9 +16,6 @@ #pragma once -#define PRODUCT_ID 0x0001 -#define DEVICE_VER 0x0001 - // The pin connected to the data pin of the LEDs #define RGB_DI_PIN A8 #define RGBLED_NUM 16 @@ -31,4 +28,4 @@ #define RGBLIGHT_EFFECT_STATIC_GRADIENT #define RGBLIGHT_EFFECT_RGB_TEST #define RGBLIGHT_EFFECT_ALTERNATING -#define RGBLIGHT_EFFECT_TWINKLE \ No newline at end of file +#define RGBLIGHT_EFFECT_TWINKLE diff --git a/keyboards/westm/westm68/rev1/rules.mk b/keyboards/westm/westm68/rev1/rules.mk index e69de29bb2..1e3cebb145 100644 --- a/keyboards/westm/westm68/rev1/rules.mk +++ b/keyboards/westm/westm68/rev1/rules.mk @@ -0,0 +1 @@ +RGBLIGHT_ENABLE = yes diff --git a/keyboards/westm/westm68/rules.mk b/keyboards/westm/westm68/rules.mk index 0ad5e320fb..a54cc39924 100644 --- a/keyboards/westm/westm68/rules.mk +++ b/keyboards/westm/westm68/rules.mk @@ -17,5 +17,5 @@ CONSOLE_ENABLE = yes # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output \ No newline at end of file +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 46e85ded4747fb3d89f107cb098d9054ea5e632c Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 15 Mar 2022 12:49:23 +0000 Subject: [PATCH 128/699] Add merge workflow for XAP branch (#16652) * Add merge workflow for XAP branch * uncomment --- .github/workflows/develop_update.yml | 8 ----- .github/workflows/feature_branch_update.yml | 34 +++++++++++++++++++++ 2 files changed, 34 insertions(+), 8 deletions(-) create mode 100644 .github/workflows/feature_branch_update.yml diff --git a/.github/workflows/develop_update.yml b/.github/workflows/develop_update.yml index 285720fefe..1f5c841bff 100644 --- a/.github/workflows/develop_update.yml +++ b/.github/workflows/develop_update.yml @@ -5,7 +5,6 @@ on: branches: - master - jobs: develop_update: runs-on: ubuntu-latest @@ -22,14 +21,7 @@ jobs: git fetch origin master develop git checkout develop - - name: Check if branch locked - id: check_locked - uses: andstor/file-existence-action@v1 - with: - files: ".locked" - - name: Update develop from master - if: steps.check_locked.outputs.files_exists == 'false' run: | git config --global user.name "QMK Bot" git config --global user.email "hello@qmk.fm" diff --git a/.github/workflows/feature_branch_update.yml b/.github/workflows/feature_branch_update.yml new file mode 100644 index 0000000000..fc7bbafd18 --- /dev/null +++ b/.github/workflows/feature_branch_update.yml @@ -0,0 +1,34 @@ +name: Update feature branches after develop merge + +on: + push: + branches: + - develop + +jobs: + feature_branch_update: + runs-on: ubuntu-latest + + if: github.repository == 'qmk/qmk_firmware' + + strategy: + matrix: + branch: + - xap + + steps: + - uses: actions/checkout@v2 + with: + fetch-depth: 0 + + - name: Checkout branch + run: | + git fetch origin develop ${{ matrix.branch }} + git checkout ${{ matrix.branch }} + + - name: Update branch from develop + run: | + git config --global user.name "QMK Bot" + git config --global user.email "hello@qmk.fm" + git merge origin/develop + git push origin ${{ matrix.branch }} From 764dc18a81f762fdff5f74eb6d3b517ba79d5c11 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 16 Mar 2022 00:56:58 +1100 Subject: [PATCH 129/699] Remove `NO_ACTION_MACRO` and `NO_ACTION_FUNCTION` from keyboard config.h (#16655) --- keyboards/0_sixty/config.h | 2 -- keyboards/0_sixty/underglow/config.h | 2 -- keyboards/0xc7/61key/config.h | 4 ---- keyboards/1upkeyboards/1up60hse/config.h | 2 -- keyboards/1upkeyboards/super16/config.h | 2 -- keyboards/1upkeyboards/super16v2/config.h | 4 ---- keyboards/25keys/aleth42/rev0/config.h | 4 ---- keyboards/25keys/zinc/rev1/config.h | 2 -- keyboards/25keys/zinc/reva/config.h | 2 -- keyboards/3keyecosystem/2key2/config.h | 4 ---- keyboards/3w6/rev1/config.h | 5 ----- keyboards/3w6/rev2/config.h | 5 ----- keyboards/40percentclub/25/config.h | 2 -- keyboards/40percentclub/4pack/config.h | 2 -- keyboards/40percentclub/4x4/config.h | 2 -- keyboards/40percentclub/5x5/config.h | 2 -- keyboards/40percentclub/6lit/config.h | 2 -- keyboards/40percentclub/foobar/config.h | 2 -- keyboards/40percentclub/half_n_half/config.h | 2 -- keyboards/40percentclub/i75/config.h | 2 -- keyboards/40percentclub/mf68/config.h | 2 -- keyboards/40percentclub/nein/config.h | 2 -- keyboards/40percentclub/nori/config.h | 2 -- keyboards/40percentclub/polyandry/config.h | 2 -- keyboards/abacus/config.h | 4 ---- keyboards/abstract/ellipse/rev1/config.h | 2 -- keyboards/acekeyboard/titan60/config.h | 4 ---- keyboards/acheron/arctic/config.h | 2 -- keyboards/acheron/austin/config.h | 2 -- keyboards/acheron/elongate/beta/config.h | 4 ---- keyboards/acheron/keebspcb/config.h | 2 -- keyboards/acheron/lasgweloth/config.h | 2 -- keyboards/acheron/shark/config.h | 2 -- keyboards/ada/infinity81/config.h | 4 ---- keyboards/adelheid/config.h | 2 -- keyboards/adkb96/rev1/config.h | 2 -- keyboards/adpenrose/kintsugi/config.h | 4 ---- keyboards/afternoonlabs/breeze/config.h | 3 --- keyboards/afternoonlabs/gust/config.h | 3 --- keyboards/afternoonlabs/oceanbreeze/config.h | 3 --- keyboards/afternoonlabs/southern_breeze/config.h | 3 --- keyboards/afternoonlabs/summer_breeze/config.h | 3 --- keyboards/ai03/equinox/config.h | 2 -- keyboards/ai03/jp60/config.h | 4 ---- keyboards/ai03/lunar/config.h | 2 -- keyboards/ai03/orbit/config.h | 2 -- keyboards/ai03/orbit_x/config.h | 4 ---- keyboards/ai03/polaris/config.h | 2 -- keyboards/ai03/quasar/config.h | 2 -- keyboards/ai03/soyuz/config.h | 2 -- keyboards/ai03/vega/config.h | 2 -- keyboards/ai03/voyager60_alps/config.h | 2 -- keyboards/al1/config.h | 4 ---- keyboards/aleblazer/zodiark/config.h | 2 -- keyboards/alf/dc60/config.h | 2 -- keyboards/alf/x11/config.h | 2 -- keyboards/alpine65/config.h | 2 -- keyboards/alps64/config.h | 2 -- keyboards/amj40/config.h | 2 -- keyboards/amj60/config.h | 4 ---- keyboards/amj96/config.h | 2 -- keyboards/amjkeyboard/amj84/config.h | 4 ---- keyboards/amjpad/config.h | 2 -- keyboards/arabica37/rev1/config.h | 2 -- keyboards/arisu/config.h | 2 -- keyboards/ash1800/config.h | 2 -- keyboards/ashpil/modelm_usbc/config.h | 2 -- keyboards/at_at/660m/config.h | 2 -- keyboards/atlas_65/config.h | 2 -- keyboards/atomic/config.h | 2 -- keyboards/atreus/config.h | 2 -- keyboards/atreus62/config.h | 2 -- keyboards/atxkb/1894/config.h | 2 -- keyboards/aves60/config.h | 4 ---- keyboards/baguette/config.h | 2 -- keyboards/bandominedoni/config.h | 4 ---- keyboards/bantam44/config.h | 2 -- keyboards/barleycorn_smd/config.h | 2 -- keyboards/barracuda/config.h | 4 ---- keyboards/bastardkb/charybdis/3x5/config.h | 4 ---- keyboards/bastardkb/charybdis/4x6/config.h | 4 ---- keyboards/bear_face/config.h | 2 -- keyboards/biacco42/ergo42/rev1/config.h | 2 -- keyboards/biacco42/meishi/config.h | 2 -- keyboards/biacco42/meishi2/config.h | 2 -- keyboards/bioi/f60/config.h | 4 ---- keyboards/blank/blank01/config.h | 4 ---- keyboards/blockey/config.h | 2 -- keyboards/boardrun/bizarre/config.h | 2 -- keyboards/boardrun/classic/config.h | 2 -- keyboards/boardsource/3x4/config.h | 2 -- keyboards/boardsource/4x12/config.h | 2 -- keyboards/boardsource/5x12/config.h | 2 -- keyboards/boardsource/beiwagon/config.h | 4 ---- keyboards/boardsource/holiday/spooky/config.h | 4 ---- keyboards/boardsource/microdox/config.h | 2 -- keyboards/boardsource/technik_o/config.h | 4 ---- keyboards/boardsource/technik_s/config.h | 4 ---- keyboards/boardsource/the_mark/config.h | 4 ---- keyboards/boardwalk/config.h | 2 -- keyboards/boston/config.h | 2 -- keyboards/boston_meetup/2019/config.h | 2 -- keyboards/boston_meetup/config.h | 2 -- keyboards/box75/config.h | 2 -- keyboards/bpiphany/frosty_flake/config.h | 3 +-- keyboards/bpiphany/hid_liber/config.h | 2 -- keyboards/bpiphany/kitten_paw/config.h | 2 -- keyboards/bpiphany/sixshooter/config.h | 2 -- keyboards/bpiphany/tiger_lily/config.h | 2 -- keyboards/bpiphany/unloved_bastard/config.h | 2 -- keyboards/bt66tech/bt66tech60/config.h | 2 -- keyboards/bthlabs/geekpad/config.h | 2 -- keyboards/buildakb/potato65/config.h | 4 ---- keyboards/buildakb/potato65hs/config.h | 4 ---- keyboards/buildakb/potato65s/config.h | 4 ---- keyboards/caffeinated/serpent65/config.h | 2 -- keyboards/canary/canary60rgb/v1/config.h | 6 +----- keyboards/cannonkeys/adelie/config.h | 4 ---- keyboards/cannonkeys/aella/config.h | 2 -- keyboards/cannonkeys/an_c/config.h | 2 -- keyboards/cannonkeys/atlas/config.h | 2 -- keyboards/cannonkeys/balance/config.h | 2 -- keyboards/cannonkeys/chimera65/config.h | 2 -- keyboards/cannonkeys/db60/config.h | 2 -- keyboards/cannonkeys/devastatingtkl/config.h | 2 -- keyboards/cannonkeys/hoodrowg/config.h | 2 -- keyboards/cannonkeys/instant60/config.h | 2 -- keyboards/cannonkeys/instant65/config.h | 2 -- keyboards/cannonkeys/iron165/config.h | 2 -- keyboards/cannonkeys/obliterated75/config.h | 2 -- keyboards/cannonkeys/onyx/config.h | 2 -- keyboards/cannonkeys/ortho48/config.h | 2 -- keyboards/cannonkeys/ortho60/config.h | 2 -- keyboards/cannonkeys/ortho75/config.h | 2 -- keyboards/cannonkeys/practice60/config.h | 2 -- keyboards/cannonkeys/practice65/config.h | 2 -- keyboards/cannonkeys/rekt1800/config.h | 2 -- keyboards/cannonkeys/sagittarius/config.h | 2 -- keyboards/cannonkeys/satisfaction75/config.h | 2 -- keyboards/cannonkeys/savage65/config.h | 2 -- keyboards/cannonkeys/tmov2/config.h | 2 -- keyboards/cannonkeys/tsukuyomi/config.h | 2 -- keyboards/cannonkeys/vicious40/config.h | 2 -- keyboards/capsunlocked/cu24/config.h | 2 -- keyboards/capsunlocked/cu65/config.h | 4 ---- keyboards/capsunlocked/cu75/config.h | 2 -- keyboards/centromere/config.h | 2 -- keyboards/checkerboards/plexus75/config.h | 2 -- keyboards/checkerboards/pursuit40/config.h | 2 -- keyboards/checkerboards/quark/config.h | 2 -- keyboards/ck60i/config.h | 2 -- keyboards/ckeys/handwire_101/config.h | 2 -- keyboards/ckeys/nakey/config.h | 2 -- keyboards/ckeys/obelus/config.h | 2 -- keyboards/ckeys/thedora/config.h | 2 -- keyboards/ckeys/washington/config.h | 4 ---- keyboards/clueboard/66_hotswap/config.h | 1 - keyboards/clueboard/66_hotswap/gen1/config.h | 2 -- keyboards/coarse/cordillera/config.h | 2 -- keyboards/contender/config.h | 4 ---- keyboards/converter/a1200/miss1200/config.h | 2 -- keyboards/converter/a1200/teensy2pp/config.h | 2 -- keyboards/converter/modelm101/config.h | 2 -- keyboards/converter/modelm_ssk/config.h | 2 -- keyboards/converter/siemens_tastatur/config.h | 2 -- keyboards/cool836a/config.h | 4 ---- keyboards/copenhagen_click/click_pad_v1/config.h | 2 -- keyboards/coseyfannitutti/discipad/config.h | 2 -- keyboards/coseyfannitutti/discipline/config.h | 2 -- keyboards/coseyfannitutti/mullet/config.h | 3 --- keyboards/coseyfannitutti/mulletpad/config.h | 3 --- keyboards/coseyfannitutti/mysterium/config.h | 2 -- keyboards/coseyfannitutti/romeo/config.h | 2 -- keyboards/craftwalk/config.h | 3 --- keyboards/crazy_keyboard_68/config.h | 4 ---- keyboards/crkbd/config.h | 6 +----- keyboards/cutie_club/wraith/config.h | 2 -- keyboards/dailycraft/bat43/config.h | 4 ---- keyboards/dailycraft/claw44/config.h | 3 --- keyboards/dailycraft/claw44/rev1/config.h | 2 -- keyboards/dailycraft/owl8/config.h | 4 ---- keyboards/dailycraft/stickey4/config.h | 4 ---- keyboards/dailycraft/wings42/rev1/config.h | 4 ---- keyboards/dailycraft/wings42/rev1_extkeys/config.h | 4 ---- keyboards/dailycraft/wings42/rev2/config.h | 4 ---- keyboards/dc01/left/config.h | 2 -- keyboards/delikeeb/flatbread60/config.h | 4 ---- keyboards/delikeeb/vaguettelite/config.h | 4 ---- keyboards/delikeeb/vanana/rev1/config.h | 4 ---- keyboards/delikeeb/vanana/rev2/config.h | 4 ---- keyboards/delikeeb/vaneela/config.h | 4 ---- keyboards/delikeeb/vaneelaex/config.h | 4 ---- keyboards/delikeeb/waaffle/rev3/config.h | 4 ---- keyboards/deltapad/config.h | 4 ---- keyboards/deltasplit75/v2/config.h | 2 -- keyboards/demiurge/config.h | 4 ---- keyboards/dichotomy/config.h | 2 -- keyboards/dk60/config.h | 4 ---- keyboards/dm9records/ergoinu/config.h | 2 -- keyboards/dm9records/lain/config.h | 4 ---- keyboards/dm9records/plaid/config.h | 2 -- keyboards/dm9records/tartan/config.h | 2 -- keyboards/donutcables/scrabblepad/config.h | 2 -- keyboards/doppelganger/config.h | 2 -- keyboards/draytronics/daisy/config.h | 3 --- keyboards/draytronics/scarlet/config.h | 3 --- keyboards/drewkeys/iskar/config.h | 4 ---- keyboards/dtisaac/dosa40rgb/config.h | 4 ---- keyboards/dtisaac/dtisaac01/config.h | 9 --------- keyboards/duck/jetfire/config.h | 2 -- keyboards/dztech/dz60rgb/v1/config.h | 4 ---- keyboards/dztech/dz60rgb/v2/config.h | 4 ---- keyboards/dztech/dz60rgb/v2_1/config.h | 4 ---- keyboards/dztech/dz60rgb_ansi/v1/config.h | 4 ---- keyboards/dztech/dz60rgb_ansi/v2/config.h | 4 ---- keyboards/dztech/dz60rgb_ansi/v2_1/config.h | 4 ---- keyboards/dztech/dz60rgb_wkl/v1/config.h | 4 ---- keyboards/dztech/dz60rgb_wkl/v2/config.h | 4 ---- keyboards/dztech/dz60rgb_wkl/v2_1/config.h | 4 ---- keyboards/dztech/dz64rgb/config.h | 4 +--- keyboards/dztech/dz65rgb/v1/config.h | 4 ---- keyboards/dztech/dz65rgb/v2/config.h | 4 ---- keyboards/dztech/dz65rgb/v3/config.h | 4 +--- keyboards/e88/config.h | 4 ---- keyboards/ealdin/quadrant/config.h | 2 -- keyboards/earth_rover/config.h | 4 ---- keyboards/eco/config.h | 2 -- keyboards/edi/hardlight/mk2/config.h | 2 -- keyboards/edi/standaside/config.h | 3 --- keyboards/eek/config.h | 3 --- keyboards/efreet/config.h | 4 ---- keyboards/emajesty/eiri/config.h | 4 ---- keyboards/eniigmakeyboards/ek65/config.h | 5 ----- keyboards/eniigmakeyboards/ek87/config.h | 4 ---- keyboards/ep/40/config.h | 2 -- keyboards/ep/96/config.h | 2 -- keyboards/ep/comsn/mollydooker/config.h | 2 -- keyboards/ergodox_ez/config.h | 3 +-- keyboards/ergosaurus/config.h | 2 -- keyboards/ergoslab/rev1/config.h | 2 -- keyboards/ergotravel/rev1/config.h | 2 -- keyboards/ericrlau/numdiscipline/rev1/config.h | 2 -- keyboards/esca/getawayvan/config.h | 2 -- keyboards/esca/getawayvan_f042/config.h | 2 -- keyboards/eternal_keypad/config.h | 4 ---- keyboards/evil80/config.h | 2 -- keyboards/evolv/config.h | 2 -- keyboards/evyd13/atom47/rev5/config.h | 4 ---- keyboards/evyd13/eon40/config.h | 2 -- keyboards/evyd13/eon65/config.h | 2 -- keyboards/evyd13/eon75/config.h | 2 -- keyboards/evyd13/eon87/config.h | 2 -- keyboards/evyd13/eon95/config.h | 2 -- keyboards/evyd13/gh80_1800/config.h | 2 -- keyboards/evyd13/gh80_3700/config.h | 2 -- keyboards/evyd13/gud70/config.h | 4 ---- keyboards/evyd13/minitomic/config.h | 2 -- keyboards/evyd13/mx5160/config.h | 2 -- keyboards/evyd13/nt660/config.h | 4 ---- keyboards/evyd13/nt750/config.h | 4 ---- keyboards/evyd13/nt980/config.h | 4 ---- keyboards/evyd13/omrontkl/config.h | 2 -- keyboards/evyd13/pockettype/config.h | 2 -- keyboards/evyd13/quackfire/config.h | 2 -- keyboards/evyd13/solheim68/config.h | 2 -- keyboards/evyd13/wasdat/config.h | 2 -- keyboards/evyd13/wasdat_code/config.h | 2 -- keyboards/exclusive/e7v1se/config.h | 4 ---- keyboards/exclusive/e85/config.h | 4 ---- keyboards/exent/config.h | 4 ---- keyboards/eyeohdesigns/babyv/config.h | 4 ---- keyboards/fc660c/config.h | 2 -- keyboards/fc980c/config.h | 2 -- keyboards/ffkeebs/puca/config.h | 5 ----- keyboards/fjlabs/7vhotswap/config.h | 2 -- keyboards/fjlabs/ad65/config.h | 2 -- keyboards/fjlabs/bks65/config.h | 2 -- keyboards/fjlabs/bks65solder/config.h | 2 -- keyboards/fjlabs/bolsa65/config.h | 2 -- keyboards/fjlabs/kf87/config.h | 2 -- keyboards/fjlabs/kyuu/config.h | 2 -- keyboards/fjlabs/ldk65/config.h | 2 -- keyboards/fjlabs/midway60/config.h | 2 -- keyboards/fjlabs/mk61rgbansi/config.h | 2 -- keyboards/fjlabs/polaris/config.h | 2 -- keyboards/fjlabs/ready100/config.h | 2 -- keyboards/fjlabs/tf60ansi/config.h | 2 -- keyboards/fjlabs/tf60v2/config.h | 2 -- keyboards/fjlabs/tf65rgbv2/config.h | 2 -- keyboards/flehrad/downbubble/config.h | 2 -- keyboards/fleuron/config.h | 2 -- keyboards/fluorite/config.h | 2 -- keyboards/flxlb/zplit/config.h | 2 -- keyboards/flygone60/rev3/config.h | 4 ---- keyboards/foostan/cornelius/config.h | 4 ---- keyboards/for_science/config.h | 2 -- keyboards/forever65/config.h | 4 ---- keyboards/fortitude60/rev1/config.h | 2 -- keyboards/foxlab/key65/hotswap/config.h | 4 ---- keyboards/foxlab/key65/universal/config.h | 4 ---- keyboards/foxlab/leaf60/hotswap/config.h | 2 -- keyboards/foxlab/leaf60/universal/config.h | 2 -- keyboards/foxlab/time80/config.h | 4 ---- keyboards/gboards/georgi/config.h | 2 -- keyboards/gh60/revc/config.h | 2 -- keyboards/gh60/satan/config.h | 2 -- keyboards/ghs/rar/config.h | 4 ---- keyboards/gkeyboard/gkb_m16/config.h | 4 ---- keyboards/glenpickle/chimera_ergo/config.h | 2 -- keyboards/glenpickle/chimera_ls/config.h | 2 -- keyboards/glenpickle/chimera_ortho/config.h | 2 -- keyboards/glenpickle/chimera_ortho_plus/config.h | 2 -- keyboards/gray_studio/space65/config.h | 2 -- keyboards/hadron/config.h | 2 -- keyboards/hadron/ver3/config.h | 2 -- keyboards/halfcliff/config.h | 4 ---- keyboards/han60/config.h | 4 ---- keyboards/handwired/412_64/config.h | 3 --- keyboards/handwired/amigopunk/config.h | 4 ---- keyboards/handwired/aranck/config.h | 2 -- keyboards/handwired/arrow_pad/config.h | 2 -- keyboards/handwired/atreus50/config.h | 2 -- keyboards/handwired/baredev/rev1/config.h | 5 ----- keyboards/handwired/bolek/config.h | 4 ---- keyboards/handwired/brain/config.h | 2 -- keyboards/handwired/bstk100/config.h | 4 ---- keyboards/handwired/ck4x4/config.h | 3 --- keyboards/handwired/cmd60/config.h | 2 -- keyboards/handwired/co60/rev1/config.h | 2 -- keyboards/handwired/dactyl_left/config.h | 2 -- keyboards/handwired/dactyl_promicro/config.h | 2 -- keyboards/handwired/dactyl_rah/config.h | 6 ------ keyboards/handwired/dc/mc/001/config.h | 4 ---- keyboards/handwired/elrgo_s/config.h | 2 -- keyboards/handwired/ergocheap/config.h | 2 -- keyboards/handwired/evk/v1_3/config.h | 2 -- keyboards/handwired/fc200rt_qmk/config.h | 4 ---- keyboards/handwired/fivethirteen/config.h | 2 -- keyboards/handwired/floorboard/config.h | 4 ---- keyboards/handwired/frankie_macropad/config.h | 4 ---- keyboards/handwired/frenchdev/config.h | 3 +-- keyboards/handwired/gamenum/config.h | 2 -- keyboards/handwired/hacked_motospeed/config.h | 2 -- keyboards/handwired/heisenberg/config.h | 2 -- keyboards/handwired/hnah108/config.h | 4 ---- keyboards/handwired/hnah40/config.h | 2 -- keyboards/handwired/ibm122m/config.h | 2 -- keyboards/handwired/jtallbean/split_65/config.h | 4 ---- keyboards/handwired/juliet/config.h | 3 --- keyboards/handwired/kbod/config.h | 2 -- keyboards/handwired/ks63/config.h | 2 -- keyboards/handwired/leftynumpad/config.h | 4 ---- keyboards/handwired/lemonpad/config.h | 4 ---- keyboards/handwired/macroboard/config.h | 4 ---- keyboards/handwired/magicforce61/config.h | 2 -- keyboards/handwired/magicforce68/config.h | 2 -- keyboards/handwired/mechboards_micropad/config.h | 2 -- keyboards/handwired/meck_tkl/config.h | 4 ---- keyboards/handwired/minorca/config.h | 3 --- keyboards/handwired/ms_sculpt_mobile/config.h | 2 -- keyboards/handwired/nicekey/config.h | 2 -- keyboards/handwired/not_so_minidox/config.h | 2 -- keyboards/handwired/numpad20/config.h | 2 -- keyboards/handwired/obuwunkunubi/spaget/config.h | 2 -- keyboards/handwired/oem_ansi_fullsize/config.h | 4 ---- keyboards/handwired/onekey/config.h | 4 ---- keyboards/handwired/ortho5x13/config.h | 2 -- keyboards/handwired/ortho5x14/config.h | 3 --- keyboards/handwired/owlet60/config.h | 2 -- keyboards/handwired/pilcrow/config.h | 2 -- keyboards/handwired/promethium/config.h | 2 -- keyboards/handwired/reddot/config.h | 2 -- keyboards/handwired/retro_refit/config.h | 2 -- keyboards/handwired/sick68/config.h | 4 ---- keyboards/handwired/snatchpad/config.h | 4 ---- keyboards/handwired/sono1/config.h | 6 +----- keyboards/handwired/split65/promicro/config.h | 2 -- keyboards/handwired/split65/stm32/config.h | 2 -- keyboards/handwired/split89/config.h | 4 ---- keyboards/handwired/splittest/config.h | 2 -- keyboards/handwired/sticc14/config.h | 2 -- keyboards/handwired/symmetric70_proto/promicro/config.h | 4 ---- keyboards/handwired/symmetric70_proto/proton_c/config.h | 4 ---- keyboards/handwired/t111/config.h | 4 ---- keyboards/handwired/tennie/config.h | 2 -- keyboards/handwired/terminus_mini/config.h | 2 -- keyboards/handwired/tractyl_manuform/4x6_right/config.h | 2 -- keyboards/handwired/tractyl_manuform/5x6_right/config.h | 2 -- keyboards/handwired/tractyl_manuform/config.h | 2 -- keyboards/handwired/traveller/config.h | 4 ---- keyboards/handwired/tritium_numpad/config.h | 3 --- keyboards/handwired/twadlee/tp69/config.h | 4 ---- keyboards/handwired/unk/rev1/config.h | 2 -- keyboards/handwired/uthol/rev3/config.h | 4 ---- keyboards/handwired/videowriter/config.h | 4 ---- keyboards/handwired/woodpad/config.h | 4 ---- keyboards/handwired/xealous/rev1/config.h | 3 +-- keyboards/handwired/z150/config.h | 4 ---- keyboards/helix/pico/config.h | 2 -- keyboards/helix/rev2/config.h | 3 --- keyboards/helix/rev3_4rows/config.h | 4 ---- keyboards/helix/rev3_5rows/config.h | 4 ---- keyboards/hhkb/ansi/config.h | 2 -- keyboards/hhkb/jp/config.h | 2 -- keyboards/hineybush/h08_ocelot/config.h | 4 ---- keyboards/hineybush/h10/config.h | 4 ---- keyboards/hineybush/h60/config.h | 4 ---- keyboards/hineybush/h65/config.h | 4 ---- keyboards/hineybush/h65_hotswap/config.h | 4 ---- keyboards/hineybush/h660s/config.h | 4 ---- keyboards/hineybush/h75_singa/config.h | 2 -- keyboards/hineybush/physix/config.h | 4 ---- keyboards/hineybush/sm68/config.h | 2 -- keyboards/hnahkb/freyr/config.h | 4 ---- keyboards/hnahkb/stella/config.h | 4 ---- keyboards/hnahkb/vn66/config.h | 4 ---- keyboards/honeycomb/config.h | 2 -- keyboards/horizon/config.h | 4 ---- keyboards/hotdox/config.h | 3 +-- keyboards/hub20/config.h | 4 ---- keyboards/ianklug/grooveboard/config.h | 4 ---- keyboards/ibnuda/gurindam/config.h | 2 -- keyboards/ibnuda/squiggle/config.h | 5 ----- keyboards/idb/idb_60/config.h | 2 -- keyboards/idobao/id75/v1/config.h | 2 -- keyboards/idobao/id75/v2/config.h | 2 -- keyboards/idobao/id87/v2/config.h | 4 ---- keyboards/illuminati/is0/config.h | 2 -- keyboards/illusion/rosa/config.h | 6 +----- keyboards/ilumkb/primus75/config.h | 3 --- keyboards/ilumkb/simpler61/config.h | 4 ---- keyboards/ilumkb/simpler64/config.h | 4 ---- keyboards/input_club/ergodox_infinity/config.h | 2 -- keyboards/input_club/infinity60/config.h | 2 -- keyboards/input_club/k_type/config.h | 4 ---- keyboards/input_club/whitefox/config.h | 4 ---- keyboards/irene/config.h | 4 ---- keyboards/iriskeyboards/config.h | 4 ---- keyboards/j80/config.h | 4 ---- keyboards/jacky_studio/s7_elephant/rev2/config.h | 4 ---- keyboards/jadookb/jkb65/config.h | 3 --- keyboards/jae/j01/config.h | 4 ---- keyboards/jagdpietr/drakon/config.h | 4 ---- keyboards/jc65/v32a/config.h | 3 --- keyboards/jd45/config.h | 2 -- keyboards/jm60/config.h | 4 ---- keyboards/jones/v03/config.h | 4 ---- keyboards/jones/v03_1/config.h | 4 ---- keyboards/jones/v1/config.h | 4 ---- keyboards/kagizaraya/chidori/config.h | 2 -- keyboards/kagizaraya/halberd/config.h | 2 -- keyboards/kagizaraya/scythe/config.h | 2 -- keyboards/kakunpc/angel17/alpha/config.h | 2 -- keyboards/kakunpc/angel17/rev1/config.h | 2 -- keyboards/kakunpc/angel64/alpha/config.h | 2 -- keyboards/kakunpc/angel64/rev1/config.h | 2 -- keyboards/kakunpc/business_card/alpha/config.h | 2 -- keyboards/kakunpc/business_card/beta/config.h | 2 -- keyboards/kakunpc/choc_taro/config.h | 4 ---- keyboards/kakunpc/rabbit_capture_plan/config.h | 4 ---- keyboards/kakunpc/suihankey/alpha/config.h | 2 -- keyboards/kakunpc/suihankey/rev1/config.h | 2 -- keyboards/kakunpc/suihankey/split/alpha/config.h | 2 -- keyboards/kakunpc/suihankey/split/rev1/config.h | 2 -- keyboards/kakunpc/thedogkeyboard/config.h | 2 -- keyboards/kapcave/arya/config.h | 2 -- keyboards/kb58/config.h | 4 ---- keyboards/kb_elmo/isolation/config.h | 4 ---- keyboards/kb_elmo/vertex/config.h | 4 ---- keyboards/kbdclack/kaishi65/config.h | 4 ---- keyboards/kbdfans/bella/rgb/config.h | 1 - keyboards/kbdfans/bella/rgb_iso/config.h | 1 - keyboards/kbdfans/boop65/rgb/config.h | 3 --- keyboards/kbdfans/kbd19x/config.h | 3 --- keyboards/kbdfans/kbd4x/config.h | 3 --- keyboards/kbdfans/kbd66/config.h | 2 -- keyboards/kbdfans/kbd67/hotswap/config.h | 2 -- keyboards/kbdfans/kbd67/mkiirgb/v3/config.h | 4 +--- keyboards/kbdfans/kbd67/mkiirgb/v4/config.h | 4 +--- keyboards/kbdfans/kbd67/mkiirgb_iso/config.h | 4 +--- keyboards/kbdfans/kbd67/rev1/config.h | 2 -- keyboards/kbdfans/kbd6x/config.h | 3 --- keyboards/kbdfans/kbd75hs/config.h | 3 --- keyboards/kbdfans/kbd75rgb/config.h | 4 +--- keyboards/kbdfans/kbd8x/config.h | 2 -- keyboards/kbdfans/kbd8x_mk2/config.h | 2 -- keyboards/kbdfans/kbdmini/config.h | 4 ---- keyboards/kbdfans/kbdpad/mk2/config.h | 2 -- keyboards/kbdfans/niu_mini/config.h | 2 -- keyboards/kbdfans/odin/soldered/config.h | 3 +-- keyboards/kc60/config.h | 4 ---- keyboards/kc60se/config.h | 2 -- keyboards/keebio/bfo9000/config.h | 2 -- keyboards/keebio/bigswitchseat/config.h | 4 ---- keyboards/keebio/choconum/config.h | 4 ---- keyboards/keebio/ergodicity/config.h | 2 -- keyboards/keebio/fourier/config.h | 2 -- keyboards/keebio/nyquist/rev1/config.h | 2 -- keyboards/keebio/nyquist/rev2/config.h | 2 -- keyboards/keebio/nyquist/rev3/config.h | 2 -- keyboards/keebsforall/coarse60/config.h | 3 --- keyboards/keebsforall/freebird60/config.h | 4 ---- keyboards/keebsforall/freebirdtkl/config.h | 3 --- keyboards/keebwerk/nano_slider/config.h | 4 ---- keyboards/keebzdotnet/wazowski/config.h | 4 ---- keyboards/keybage/radpad/config.h | 4 ---- keyboards/keybee/keybee65/config.h | 3 --- keyboards/keyboardio/atreus/config.h | 2 -- keyboards/keycapsss/o4l_5x12/config.h | 4 ---- keyboards/keyhive/maypad/config.h | 2 -- keyboards/keyprez/bison/config.h | 4 ---- keyboards/keyprez/corgi/config.h | 4 ---- keyboards/keyprez/rhino/config.h | 4 ---- keyboards/keyprez/unicorn/config.h | 4 ---- keyboards/kikkou/config.h | 4 ---- keyboards/kindakeyboards/conone65/config.h | 4 ---- keyboards/kinesis/config.h | 2 -- keyboards/kira75/config.h | 2 -- keyboards/kiwikeebs/macro/config.h | 4 ---- keyboards/kiwikeebs/macro_v2/config.h | 4 ---- keyboards/kiwikey/borderland/config.h | 4 ---- keyboards/kiwikey/kawii9/config.h | 4 ---- keyboards/kiwikey/wanderland/config.h | 4 ---- keyboards/kkatano/bakeneko60/config.h | 4 ---- keyboards/kkatano/bakeneko65/rev2/config.h | 4 ---- keyboards/kkatano/bakeneko65/rev3/config.h | 4 ---- keyboards/kkatano/bakeneko80/config.h | 4 ---- keyboards/kkatano/wallaby/config.h | 4 ---- keyboards/kkatano/yurei/config.h | 4 ---- keyboards/kmac/config.h | 2 -- keyboards/kmac_pad/config.h | 2 -- keyboards/knops/mini/config.h | 2 -- keyboards/kona_classic/config.h | 2 -- keyboards/kopibeng/xt65/config.h | 2 -- keyboards/kprepublic/bm16a/config.h | 2 -- keyboards/kprepublic/bm60hsrgb/rev2/config.h | 3 --- keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h | 3 --- keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h | 3 --- keyboards/kprepublic/bm65hsrgb/rev1/config.h | 4 ---- keyboards/kprepublic/bm68hsrgb/rev1/config.h | 4 ---- keyboards/kprepublic/bm68hsrgb/rev2/config.h | 4 +--- keyboards/kprepublic/bm80hsrgb/config.h | 4 ---- keyboards/kprepublic/bm980hsrgb/config.h | 4 ---- keyboards/kprepublic/cospad/config.h | 4 ---- keyboards/ktec/daisy/config.h | 4 ---- keyboards/ktec/ergodone/config.h | 3 +-- keyboards/kudox/columner/config.h | 2 -- keyboards/kudox/rev1/config.h | 2 -- keyboards/kudox/rev2/config.h | 2 -- keyboards/kudox/rev3/config.h | 2 -- keyboards/kudox_full/rev1/config.h | 2 -- keyboards/kudox_game/rev1/config.h | 2 -- keyboards/kudox_game/rev2/config.h | 2 -- keyboards/ky01/config.h | 4 ---- keyboards/labyrinth75/config.h | 4 ---- keyboards/latincompass/latin17rgb/config.h | 4 ---- keyboards/latincompass/latin47ble/config.h | 2 -- keyboards/latincompass/latin60rgb/config.h | 4 ---- keyboards/latincompass/latin6rgb/config.h | 4 ---- keyboards/latincompass/latinpadble/config.h | 4 ---- keyboards/lattice60/config.h | 4 ---- keyboards/lets_split/rev1/config.h | 2 -- keyboards/lets_split/rev2/config.h | 2 -- keyboards/lfkeyboards/lfk65_hs/config.h | 2 -- keyboards/lfkeyboards/lfk78/config.h | 4 ---- keyboards/lfkeyboards/lfk87/config.h | 2 -- keyboards/lfkeyboards/lfkpad/config.h | 4 ---- keyboards/lfkeyboards/mini1800/config.h | 2 -- keyboards/lfkeyboards/smk65/revb/config.h | 2 -- keyboards/lfkeyboards/smk65/revf/config.h | 6 +----- keyboards/lily58/config.h | 7 ------- keyboards/lily58/rev1/config.h | 2 -- keyboards/lime/rev1/config.h | 2 -- keyboards/linworks/fave84h/config.h | 3 --- keyboards/linworks/fave87h/config.h | 3 --- keyboards/lizard_trick/tenkey_plusplus/config.h | 4 ---- keyboards/lm_keyboard/lm60n/config.h | 4 ---- keyboards/lucid/alexa/config.h | 2 -- keyboards/lucid/kbd8x_hs/config.h | 2 -- keyboards/lucid/phantom_hs/config.h | 2 -- keyboards/lucid/phantom_solder/config.h | 2 -- keyboards/lucid/scarlet/config.h | 2 -- keyboards/m10a/config.h | 2 -- keyboards/machine_industries/m4_a/config.h | 4 ---- keyboards/majistic/config.h | 4 ---- keyboards/malevolti/lyra/rev1/config.h | 3 --- keyboards/malevolti/superlyra/rev1/config.h | 3 --- keyboards/manta60/config.h | 4 ---- keyboards/manyboard/macro/config.h | 3 --- keyboards/maple_computing/c39/config.h | 2 -- keyboards/maple_computing/ivy/config.h | 2 -- keyboards/maple_computing/launchpad/config.h | 2 -- keyboards/maple_computing/minidox/config.h | 2 -- keyboards/maple_computing/the_ruler/config.h | 2 -- keyboards/marksard/leftover30/config.h | 4 ---- keyboards/marksard/treadstone48/rev1/config.h | 4 ---- keyboards/marksard/treadstone48/rev2/config.h | 4 ---- keyboards/massdrop/alt/config.h | 2 -- keyboards/massdrop/ctrl/config.h | 2 -- keyboards/matchstickworks/southpad/config.h | 2 -- keyboards/matthewdias/m3n3van/config.h | 4 ---- keyboards/matthewdias/minim/config.h | 4 ---- keyboards/matthewdias/model_v/config.h | 4 ---- keyboards/matthewdias/txuu/config.h | 4 ---- keyboards/maxipad/config.h | 2 -- keyboards/maxr1998/pulse4k/config.h | 2 -- keyboards/mb44/config.h | 6 ------ keyboards/mc_76k/config.h | 4 ---- keyboards/mechkeys/mk60/config.h | 2 -- keyboards/mechlovin/hannah910/config.h | 2 -- keyboards/mechlovin/jay60/config.h | 4 ---- keyboards/mechwild/bde/rev2/config.h | 4 ---- keyboards/mechwild/murphpad/config.h | 4 ---- keyboards/mechwild/obe/config.h | 4 ---- keyboards/mechwild/waka60/config.h | 4 ---- keyboards/melgeek/mach80/config.h | 4 ---- keyboards/melgeek/mj61/config.h | 4 ---- keyboards/melgeek/mj63/config.h | 4 ---- keyboards/melgeek/mj64/config.h | 4 ---- keyboards/melgeek/mj65/config.h | 4 ---- keyboards/melgeek/mojo68/config.h | 4 ---- keyboards/melgeek/mojo75/config.h | 4 ---- keyboards/melgeek/z70ultra/config.h | 4 ---- keyboards/meme/config.h | 2 -- keyboards/meow65/config.h | 4 ---- keyboards/mesa/mesa_tkl/config.h | 4 ---- keyboards/meson/config.h | 3 --- keyboards/mikeneko65/rev3/config.h | 4 ---- keyboards/mikeneko65/rev4/config.h | 4 ---- keyboards/miller/gm862/config.h | 4 ---- keyboards/millipad/config.h | 8 +------- keyboards/mini_elixivy/config.h | 6 +----- keyboards/mini_ten_key_plus/config.h | 4 ---- keyboards/miniaxe/config.h | 2 -- keyboards/mint60/config.h | 2 -- keyboards/mitosis/config.h | 2 -- keyboards/miuni32/config.h | 2 -- keyboards/mlego/m48/config.h | 4 ---- keyboards/mlego/m60/config.h | 4 ---- keyboards/mlego/m60_split/config.h | 4 ---- keyboards/mntre/config.h | 4 ---- keyboards/mode/m65ha_alpha/config.h | 2 -- keyboards/mode/m65hi_alpha/config.h | 2 -- keyboards/mode/m65s/config.h | 2 -- keyboards/mode/m75h/config.h | 2 -- keyboards/mode/m75s/config.h | 2 -- keyboards/mode/m80v1/config.h | 2 -- keyboards/molecule/config.h | 4 ---- keyboards/momoka_ergo/config.h | 4 ---- keyboards/monarch/config.h | 2 -- keyboards/moonlander/config.h | 2 -- keyboards/morizon/config.h | 4 ---- keyboards/mountainblocks/mb17/config.h | 5 ----- keyboards/mschwingen/modelm/config.h | 2 -- keyboards/mt40/config.h | 2 -- keyboards/mtbkeys/mtb60/hotswap/config.h | 4 ---- keyboards/mtbkeys/mtb60/solder/config.h | 4 ---- keyboards/murcielago/rev1/config.h | 4 ---- keyboards/nacly/splitreus62/config.h | 2 -- keyboards/nacly/ua62/config.h | 2 -- keyboards/nemui/config.h | 2 -- keyboards/nibiria/stream15/config.h | 2 -- keyboards/nightingale_studios/hailey/config.h | 4 ---- keyboards/nightly_boards/alter/rev1/config.h | 7 ------- keyboards/nightly_boards/n2/config.h | 5 ----- keyboards/nightly_boards/n60_s/config.h | 3 --- keyboards/nightly_boards/n87/config.h | 4 ---- keyboards/nightly_boards/n9/config.h | 5 ----- keyboards/nightmare/config.h | 2 -- keyboards/novelkeys/novelpad/config.h | 2 -- keyboards/noxary/220/config.h | 2 -- keyboards/noxary/260/config.h | 2 -- keyboards/noxary/268_2/config.h | 2 -- keyboards/noxary/280/config.h | 2 -- keyboards/noxary/378/config.h | 2 -- keyboards/noxary/valhalla/config.h | 2 -- keyboards/noxary/vulcan/config.h | 2 -- keyboards/noxary/x268/config.h | 2 -- keyboards/numatreus/config.h | 2 -- keyboards/oddball/config.h | 4 ---- keyboards/orthodox/rev1/config.h | 2 -- keyboards/orthodox/rev3/config.h | 2 -- keyboards/orthodox/rev3_teensy/config.h | 2 -- keyboards/paprikman/albacore/config.h | 4 ---- keyboards/parallel/parallel_65/hotswap/config.h | 4 ---- keyboards/parallel/parallel_65/soldered/config.h | 4 ---- keyboards/pdxkbc/config.h | 2 -- keyboards/pearl/config.h | 3 --- keyboards/peranekofactory/tone/rev1/config.h | 4 ---- keyboards/peranekofactory/tone/rev2/config.h | 4 ---- keyboards/phantom/config.h | 4 ---- keyboards/pico/65keys/config.h | 2 -- keyboards/pico/70keys/config.h | 2 -- keyboards/pinky/3/config.h | 2 -- keyboards/pinky/4/config.h | 2 -- keyboards/pisces/config.h | 4 ---- keyboards/pizzakeyboards/pizza65/config.h | 4 ---- keyboards/planck/config.h | 2 -- keyboards/planck/ez/config.h | 2 -- keyboards/planck/rev6/config.h | 3 --- keyboards/planck/rev6_drop/config.h | 2 -- keyboards/ploopyco/mouse/config.h | 2 -- keyboards/ploopyco/trackball/config.h | 2 -- keyboards/ploopyco/trackball_mini/config.h | 2 -- keyboards/ploopyco/trackball_nano/config.h | 2 -- keyboards/pluckey/config.h | 4 ---- keyboards/plume/plume65/config.h | 2 -- keyboards/plut0nium/0x3e/config.h | 4 ---- keyboards/pohjolaworks/louhi/config.h | 4 ---- keyboards/polilla/rev1/config.h | 4 ---- keyboards/portal_66/hotswap/config.h | 4 ---- keyboards/portal_66/soldered/config.h | 4 ---- keyboards/pos78/config.h | 4 ---- keyboards/preonic/config.h | 2 -- keyboards/preonic/rev3/config.h | 2 -- keyboards/preonic/rev3_drop/config.h | 2 -- keyboards/program_yoink/config.h | 4 ---- keyboards/projectcain/vault35/config.h | 6 +----- keyboards/projectcain/vault45/config.h | 4 ---- keyboards/projectkb/alice/rev1/config.h | 2 -- keyboards/projectkb/alice/rev2/config.h | 2 -- keyboards/prototypist/allison/config.h | 4 ---- keyboards/prototypist/allison_numpad/config.h | 4 ---- keyboards/psuieee/pluto12/config.h | 4 ---- keyboards/pteron36/config.h | 6 +----- keyboards/punk75/config.h | 4 ---- keyboards/qpockets/wanten/config.h | 4 ---- keyboards/quad_h/lb75/config.h | 2 -- keyboards/quantrik/kyuu/config.h | 2 -- keyboards/qwertyydox/config.h | 2 -- keyboards/rabbit/rabbit68/config.h | 2 -- keyboards/ramonimbao/aelith/config.h | 4 ---- keyboards/ramonimbao/chevron/config.h | 4 ---- keyboards/ramonimbao/herringbone/pro/config.h | 4 ---- keyboards/ramonimbao/herringbone/v1/config.h | 4 ---- keyboards/ramonimbao/mona/v1/config.h | 4 ---- keyboards/ramonimbao/mona/v1_1/config.h | 5 ----- keyboards/ramonimbao/mona/v32a/config.h | 5 ----- keyboards/ramonimbao/squishy65/config.h | 2 -- keyboards/ramonimbao/squishyfrl/config.h | 4 ---- keyboards/ramonimbao/squishytkl/config.h | 4 ---- keyboards/ramonimbao/tkl_ff/config.h | 4 ---- keyboards/ramonimbao/wete/v1/config.h | 2 -- keyboards/ramonimbao/wete/v2/config.h | 4 ---- keyboards/rart/rartlice/config.h | 2 -- keyboards/rate/pistachio/rev1/config.h | 4 ---- keyboards/rate/pistachio/rev2/config.h | 4 ---- keyboards/rate/pistachio_mp/config.h | 4 ---- keyboards/rate/pistachio_pro/config.h | 4 ---- keyboards/recompile_keys/mio/config.h | 4 ---- keyboards/recompile_keys/nomu30/rev2/config.h | 4 ---- keyboards/redox/rev1/config.h | 2 -- keyboards/redox/rev1/proton_c/config.h | 2 -- keyboards/redox_w/config.h | 2 -- keyboards/redscarf_iiplus/verb/config.h | 2 -- keyboards/redscarf_iiplus/verc/config.h | 2 -- keyboards/redscarf_iiplus/verd/config.h | 2 -- keyboards/retro_75/config.h | 2 -- keyboards/reversestudio/decadepad/config.h | 2 -- keyboards/reviung/reviung33/config.h | 4 ---- keyboards/reviung/reviung34/config.h | 2 -- keyboards/reviung/reviung39/config.h | 2 -- keyboards/reviung/reviung41/config.h | 2 -- keyboards/reviung/reviung5/config.h | 4 ---- keyboards/reviung/reviung53/config.h | 4 ---- keyboards/reviung/reviung61/config.h | 4 ---- keyboards/rgbkb/sol/config.h | 2 -- keyboards/rgbkb/zen/rev1/config.h | 2 -- keyboards/rgbkb/zen/rev2/config.h | 2 -- keyboards/rgbkb/zygomorph/rev1/config.h | 2 -- keyboards/rocketboard_16/config.h | 2 -- keyboards/rominronin/katana60/rev1/config.h | 2 -- keyboards/rominronin/katana60/rev2/config.h | 2 -- keyboards/roseslite/config.h | 2 -- keyboards/rubi/config.h | 4 ---- keyboards/runes/vaengr/config.h | 4 ---- keyboards/ryanbaekr/rb69/config.h | 4 ---- keyboards/ryanbaekr/rb86/config.h | 4 ---- keyboards/sandwich/keeb68/config.h | 4 ---- keyboards/satt/comet46/config.h | 2 -- keyboards/satt/vision/config.h | 2 -- keyboards/scatter42/config.h | 4 ---- keyboards/sck/m0116b/config.h | 2 -- keyboards/sck/neiso/config.h | 2 -- keyboards/sck/osa/config.h | 2 -- keyboards/sekigon/grs_70ec/config.h | 4 ---- keyboards/senselessclay/ck60/config.h | 4 ---- keyboards/senselessclay/ck65/config.h | 6 +----- keyboards/senselessclay/gos65/config.h | 6 +----- keyboards/senselessclay/had60/config.h | 4 ---- keyboards/sentraq/s60_x/default/config.h | 2 -- keyboards/shapeshifter4060/config.h | 2 -- keyboards/shiro/config.h | 2 -- keyboards/shk9/config.h | 4 ---- keyboards/sidderskb/majbritt/rev2/config.h | 3 --- keyboards/silverbullet44/config.h | 4 ---- keyboards/sirius/uni660/rev1/config.h | 4 ---- keyboards/sirius/uni660/rev2/ansi/config.h | 4 ---- keyboards/sirius/uni660/rev2/iso/config.h | 4 ---- keyboards/sirius/unigo66/config.h | 2 -- keyboards/sixkeyboard/config.h | 2 -- keyboards/skippys_custom_pcs/roopad/config.h | 3 --- keyboards/slz40/config.h | 4 ---- keyboards/smallice/config.h | 4 ---- keyboards/smallkeyboard/config.h | 4 ---- keyboards/smk60/config.h | 2 -- keyboards/snampad/config.h | 2 -- keyboards/sofle/rev1/config.h | 3 --- keyboards/soup10/config.h | 4 ---- keyboards/spacetime/config.h | 2 -- keyboards/spacey/config.h | 5 ----- keyboards/specskeys/config.h | 4 ---- keyboards/splitty/config.h | 4 ---- keyboards/studiokestra/bourgeau/config.h | 2 -- keyboards/studiokestra/cascade/config.h | 2 -- keyboards/studiokestra/galatea/config.h | 4 ---- keyboards/studiokestra/nue/config.h | 4 ---- keyboards/subatomic/config.h | 2 -- keyboards/switchplate/southpaw_65/config.h | 2 -- keyboards/switchplate/southpaw_fullsize/config.h | 4 ---- keyboards/switchplate/switchplate910/config.h | 4 ---- keyboards/tada68/config.h | 2 -- keyboards/takashicompany/center_enter/config.h | 4 ---- keyboards/takashicompany/compacx/config.h | 4 ---- keyboards/takashicompany/dogtag/config.h | 4 ---- keyboards/takashicompany/endzone34/config.h | 4 ---- keyboards/takashicompany/heavy_left/config.h | 6 +----- keyboards/takashicompany/qoolee/config.h | 6 +----- keyboards/takashicompany/radialex/config.h | 4 ---- keyboards/takashiski/hecomi/alpha/config.h | 2 -- keyboards/takashiski/namecard2x4/rev1/config.h | 3 --- keyboards/takashiski/namecard2x4/rev2/config.h | 3 --- keyboards/takashiski/otaku_split/rev0/config.h | 2 -- keyboards/takashiski/otaku_split/rev1/config.h | 2 -- keyboards/tanuki/config.h | 2 -- keyboards/team0110/p1800fl/config.h | 6 +----- keyboards/technika/config.h | 2 -- keyboards/telophase/config.h | 4 ---- keyboards/tetris/config.h | 3 --- keyboards/tg4x/config.h | 2 -- keyboards/tgr/910ce/config.h | 5 ----- keyboards/thevankeyboards/jetvan/config.h | 2 -- keyboards/thevankeyboards/roadkit/config.h | 2 -- keyboards/tkc/california/config.h | 2 -- keyboards/tkc/candybar/lefty/config.h | 2 -- keyboards/tkc/candybar/lefty_r3/config.h | 2 -- keyboards/tkc/candybar/righty/config.h | 2 -- keyboards/tkc/candybar/righty_r3/config.h | 2 -- keyboards/tkc/godspeed75/config.h | 2 -- keyboards/tkc/m0lly/config.h | 4 ---- keyboards/tkc/osav2/config.h | 2 -- keyboards/tkc/portico/config.h | 4 ---- keyboards/tkc/portico68v2/config.h | 4 ---- keyboards/tkc/portico75/config.h | 4 ---- keyboards/tkc/tkc1800/config.h | 2 -- keyboards/tkc/tkl_ab87/config.h | 2 -- keyboards/tkw/grandiceps/config.h | 4 ---- keyboards/tkw/stoutgat/v1/config.h | 4 ---- keyboards/tkw/stoutgat/v2/config.h | 4 ---- keyboards/tmo50/config.h | 2 -- keyboards/touchpad/config.h | 2 -- keyboards/treasure/type9/config.h | 3 --- keyboards/tszaboo/ortho4exent/config.h | 4 ---- keyboards/tw40/config.h | 3 --- keyboards/unikeyboard/diverge3/config.h | 2 -- keyboards/unikeyboard/felix/config.h | 2 -- keyboards/unison/v04/config.h | 4 ---- keyboards/uranuma/config.h | 2 -- keyboards/uzu42/config.h | 3 --- keyboards/uzu42/rev1/config.h | 2 -- keyboards/v4n4g0rth0n/config.h | 4 ---- keyboards/v60_type_r/config.h | 2 -- keyboards/viktus/smolka/config.h | 4 ---- keyboards/viktus/sp111/config.h | 4 ---- keyboards/viktus/sp_mini/config.h | 2 -- keyboards/viktus/styrka/config.h | 2 -- keyboards/vitamins_included/rev1/config.h | 2 -- keyboards/vitamins_included/rev2/config.h | 2 -- keyboards/waldo/config.h | 4 +--- keyboards/wavtype/foundation/config.h | 4 ---- keyboards/wekey/polaris/config.h | 4 ---- keyboards/wekey/stelo65/config.h | 4 ---- keyboards/wekey/we27/config.h | 4 ---- keyboards/westfoxtrot/cyclops/config.h | 2 -- keyboards/whale/sk/v3/config.h | 4 ---- keyboards/wilba_tech/rama_works_kara/config.h | 2 -- keyboards/wilba_tech/rama_works_koyu/config.h | 2 -- keyboards/wilba_tech/rama_works_m10_b/config.h | 2 -- keyboards/wilba_tech/rama_works_m10_c/config.h | 4 ---- keyboards/wilba_tech/rama_works_m50_a/config.h | 4 ---- keyboards/wilba_tech/rama_works_m50_ax/config.h | 4 ---- keyboards/wilba_tech/rama_works_m60_a/config.h | 2 -- keyboards/wilba_tech/rama_works_u80_a/config.h | 2 -- keyboards/wilba_tech/wt60_a/config.h | 2 -- keyboards/wilba_tech/wt60_d/config.h | 2 -- keyboards/wilba_tech/wt60_xt/config.h | 2 -- keyboards/wilba_tech/wt65_a/config.h | 2 -- keyboards/wilba_tech/wt65_b/config.h | 2 -- keyboards/wilba_tech/wt69_a/config.h | 2 -- keyboards/wilba_tech/wt75_a/config.h | 2 -- keyboards/wilba_tech/wt75_b/config.h | 2 -- keyboards/wilba_tech/wt75_c/config.h | 2 -- keyboards/wilba_tech/wt80_a/config.h | 2 -- keyboards/wilba_tech/zeal60/config.h | 2 -- keyboards/wilba_tech/zeal65/config.h | 4 +--- keyboards/winkeys/mini_winni/config.h | 4 ---- keyboards/wolf/kuku65/config.h | 3 --- keyboards/wolf/sabre/config.h | 3 --- keyboards/wolf/ts60/config.h | 3 --- keyboards/wolfmarkclub/wm1/config.h | 2 -- keyboards/woodkeys/meira/featherble/config.h | 2 -- keyboards/woodkeys/meira/promicro/config.h | 2 -- keyboards/woodkeys/scarletbandana/config.h | 3 --- keyboards/work_louder/loop/config.h | 4 ---- keyboards/work_louder/nano/config.h | 4 ---- keyboards/work_louder/work_board/config.h | 4 ---- keyboards/wren/config.h | 4 ---- keyboards/x16/config.h | 2 -- keyboards/xbows/knight/config.h | 4 ---- keyboards/xbows/knight_plus/config.h | 4 ---- keyboards/xbows/nature/config.h | 4 ---- keyboards/xbows/numpad/config.h | 4 ---- keyboards/xbows/ranger/config.h | 4 ---- keyboards/xelus/dawn60/rev1/config.h | 2 -- keyboards/xiaomi/mk02/config.h | 2 -- keyboards/xiudi/xd004/v1/config.h | 2 -- keyboards/xiudi/xd68/config.h | 2 -- keyboards/xiudi/xd75/config.h | 4 ---- keyboards/xiudi/xd84/config.h | 2 -- keyboards/xiudi/xd84pro/config.h | 3 --- keyboards/xiudi/xd87/config.h | 3 --- keyboards/xiudi/xd96/config.h | 2 -- keyboards/yampad/config.h | 2 -- keyboards/ydkb/chili/config.h | 2 -- keyboards/ydkb/just60/config.h | 4 ---- keyboards/ydkb/yd68/config.h | 3 --- keyboards/yiancardesigns/barleycorn/config.h | 2 -- keyboards/yiancardesigns/gingham/config.h | 3 --- keyboards/yiancardesigns/seigaiha/config.h | 2 -- keyboards/ymdk/np21/config.h | 4 ---- keyboards/ymdk/sp64/config.h | 4 ---- keyboards/ymdk/ymd09/config.h | 4 ---- keyboards/yoichiro/lunakey_macro/config.h | 4 ---- keyboards/yoichiro/lunakey_mini/config.h | 4 ---- keyboards/yosino58/config.h | 3 --- keyboards/yosino58/rev1/config.h | 2 -- keyboards/yugo_m/model_m_101/config.h | 2 -- keyboards/yushakobo/navpad/10/config.h | 6 +----- keyboards/yushakobo/navpad/10_helix_r/config.h | 6 +----- keyboards/yushakobo/quick17/config.h | 4 ---- keyboards/yushakobo/quick7/config.h | 6 ------ keyboards/yynmt/acperience12/rev1/config.h | 4 ---- keyboards/yynmt/dozen0/config.h | 2 -- keyboards/yynmt/kagamidget/config.h | 2 -- keyboards/ziggurat/config.h | 4 ---- keyboards/zoo/wampus/config.h | 4 ---- keyboards/zvecr/split_blackpill/config.h | 4 ---- keyboards/zvecr/zv48/config.h | 4 ---- 958 files changed, 32 insertions(+), 2807 deletions(-) diff --git a/keyboards/0_sixty/config.h b/keyboards/0_sixty/config.h index fa371a54cc..9d9394c14f 100644 --- a/keyboards/0_sixty/config.h +++ b/keyboards/0_sixty/config.h @@ -64,5 +64,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/0_sixty/underglow/config.h b/keyboards/0_sixty/underglow/config.h index 5f4ebd4c45..1cff58d944 100644 --- a/keyboards/0_sixty/underglow/config.h +++ b/keyboards/0_sixty/underglow/config.h @@ -58,5 +58,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/0xc7/61key/config.h b/keyboards/0xc7/61key/config.h index d1edf3284e..11b01ad8b6 100644 --- a/keyboards/0xc7/61key/config.h +++ b/keyboards/0xc7/61key/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/1upkeyboards/1up60hse/config.h b/keyboards/1upkeyboards/1up60hse/config.h index 3f4f742b48..2396e9083b 100644 --- a/keyboards/1upkeyboards/1up60hse/config.h +++ b/keyboards/1upkeyboards/1up60hse/config.h @@ -108,5 +108,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/1upkeyboards/super16/config.h b/keyboards/1upkeyboards/super16/config.h index 354f0680e8..fd11e13fe1 100644 --- a/keyboards/1upkeyboards/super16/config.h +++ b/keyboards/1upkeyboards/super16/config.h @@ -181,8 +181,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/1upkeyboards/super16v2/config.h b/keyboards/1upkeyboards/super16v2/config.h index 77bb89d954..4685e66b2d 100644 --- a/keyboards/1upkeyboards/super16v2/config.h +++ b/keyboards/1upkeyboards/super16v2/config.h @@ -135,10 +135,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/25keys/aleth42/rev0/config.h b/keyboards/25keys/aleth42/rev0/config.h index da10e30a4f..8424b2edc3 100644 --- a/keyboards/25keys/aleth42/rev0/config.h +++ b/keyboards/25keys/aleth42/rev0/config.h @@ -76,7 +76,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/25keys/zinc/rev1/config.h b/keyboards/25keys/zinc/rev1/config.h index a0bc34ece4..43af843a0b 100644 --- a/keyboards/25keys/zinc/rev1/config.h +++ b/keyboards/25keys/zinc/rev1/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/25keys/zinc/reva/config.h b/keyboards/25keys/zinc/reva/config.h index 378fd9e6d9..428c704d19 100644 --- a/keyboards/25keys/zinc/reva/config.h +++ b/keyboards/25keys/zinc/reva/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/3keyecosystem/2key2/config.h b/keyboards/3keyecosystem/2key2/config.h index 58010eea55..80e864ce9d 100644 --- a/keyboards/3keyecosystem/2key2/config.h +++ b/keyboards/3keyecosystem/2key2/config.h @@ -91,7 +91,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/3w6/rev1/config.h b/keyboards/3w6/rev1/config.h index 1f0bab97fa..0c14dc72d3 100644 --- a/keyboards/3w6/rev1/config.h +++ b/keyboards/3w6/rev1/config.h @@ -56,8 +56,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/3w6/rev2/config.h b/keyboards/3w6/rev2/config.h index d191360607..4101aa76cd 100644 --- a/keyboards/3w6/rev2/config.h +++ b/keyboards/3w6/rev2/config.h @@ -56,8 +56,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/40percentclub/25/config.h b/keyboards/40percentclub/25/config.h index 292854f68f..c753f7c29f 100644 --- a/keyboards/40percentclub/25/config.h +++ b/keyboards/40percentclub/25/config.h @@ -116,5 +116,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/4pack/config.h b/keyboards/40percentclub/4pack/config.h index 305e71e542..943b918d56 100644 --- a/keyboards/40percentclub/4pack/config.h +++ b/keyboards/40percentclub/4pack/config.h @@ -137,8 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/40percentclub/4x4/config.h b/keyboards/40percentclub/4x4/config.h index b74eb62c1e..44628ac741 100644 --- a/keyboards/40percentclub/4x4/config.h +++ b/keyboards/40percentclub/4x4/config.h @@ -83,5 +83,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/5x5/config.h b/keyboards/40percentclub/5x5/config.h index 62d63b8afa..460f5ba93d 100644 --- a/keyboards/40percentclub/5x5/config.h +++ b/keyboards/40percentclub/5x5/config.h @@ -92,5 +92,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/6lit/config.h b/keyboards/40percentclub/6lit/config.h index e402932b21..302decc162 100644 --- a/keyboards/40percentclub/6lit/config.h +++ b/keyboards/40percentclub/6lit/config.h @@ -117,5 +117,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/foobar/config.h b/keyboards/40percentclub/foobar/config.h index 3f6cb1f10c..afc50acb7e 100644 --- a/keyboards/40percentclub/foobar/config.h +++ b/keyboards/40percentclub/foobar/config.h @@ -117,5 +117,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/half_n_half/config.h b/keyboards/40percentclub/half_n_half/config.h index 292ac485bd..2ed218199f 100644 --- a/keyboards/40percentclub/half_n_half/config.h +++ b/keyboards/40percentclub/half_n_half/config.h @@ -126,8 +126,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/40percentclub/i75/config.h b/keyboards/40percentclub/i75/config.h index bce564c042..2bf67cff1d 100644 --- a/keyboards/40percentclub/i75/config.h +++ b/keyboards/40percentclub/i75/config.h @@ -72,8 +72,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/40percentclub/mf68/config.h b/keyboards/40percentclub/mf68/config.h index 2ed8c87195..404cd6f7d3 100644 --- a/keyboards/40percentclub/mf68/config.h +++ b/keyboards/40percentclub/mf68/config.h @@ -115,5 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/nein/config.h b/keyboards/40percentclub/nein/config.h index 4dfb143e52..53c227d832 100644 --- a/keyboards/40percentclub/nein/config.h +++ b/keyboards/40percentclub/nein/config.h @@ -121,8 +121,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/40percentclub/nori/config.h b/keyboards/40percentclub/nori/config.h index 0fed3daf11..bf0507716f 100644 --- a/keyboards/40percentclub/nori/config.h +++ b/keyboards/40percentclub/nori/config.h @@ -105,5 +105,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/40percentclub/polyandry/config.h b/keyboards/40percentclub/polyandry/config.h index 1fd3e22f49..bc0683f6fb 100644 --- a/keyboards/40percentclub/polyandry/config.h +++ b/keyboards/40percentclub/polyandry/config.h @@ -75,8 +75,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/abacus/config.h b/keyboards/abacus/config.h index eee2f3f919..5a627e630a 100644 --- a/keyboards/abacus/config.h +++ b/keyboards/abacus/config.h @@ -102,7 +102,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/abstract/ellipse/rev1/config.h b/keyboards/abstract/ellipse/rev1/config.h index 6e16c8d228..060229abb2 100644 --- a/keyboards/abstract/ellipse/rev1/config.h +++ b/keyboards/abstract/ellipse/rev1/config.h @@ -127,8 +127,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/acekeyboard/titan60/config.h b/keyboards/acekeyboard/titan60/config.h index 67d02c98ea..6cfaa7980e 100644 --- a/keyboards/acekeyboard/titan60/config.h +++ b/keyboards/acekeyboard/titan60/config.h @@ -80,7 +80,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/acheron/arctic/config.h b/keyboards/acheron/arctic/config.h index 4056ad0073..1275eb5a65 100644 --- a/keyboards/acheron/arctic/config.h +++ b/keyboards/acheron/arctic/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/acheron/austin/config.h b/keyboards/acheron/austin/config.h index e90fb0ee7c..ddbd6975d4 100644 --- a/keyboards/acheron/austin/config.h +++ b/keyboards/acheron/austin/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/acheron/elongate/beta/config.h b/keyboards/acheron/elongate/beta/config.h index c02cf08979..874183362c 100644 --- a/keyboards/acheron/elongate/beta/config.h +++ b/keyboards/acheron/elongate/beta/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/acheron/keebspcb/config.h b/keyboards/acheron/keebspcb/config.h index 70ffc52615..05e08f74f7 100644 --- a/keyboards/acheron/keebspcb/config.h +++ b/keyboards/acheron/keebspcb/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/acheron/lasgweloth/config.h b/keyboards/acheron/lasgweloth/config.h index e131787f76..f9a2427fae 100644 --- a/keyboards/acheron/lasgweloth/config.h +++ b/keyboards/acheron/lasgweloth/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/acheron/shark/config.h b/keyboards/acheron/shark/config.h index 78f763fe90..cd2d88129c 100644 --- a/keyboards/acheron/shark/config.h +++ b/keyboards/acheron/shark/config.h @@ -148,8 +148,6 @@ B0, which is unconnected on the PCB //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ada/infinity81/config.h b/keyboards/ada/infinity81/config.h index 1cbce84720..af28efeae2 100644 --- a/keyboards/ada/infinity81/config.h +++ b/keyboards/ada/infinity81/config.h @@ -117,10 +117,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/adelheid/config.h b/keyboards/adelheid/config.h index 487559af16..aca9bdc701 100644 --- a/keyboards/adelheid/config.h +++ b/keyboards/adelheid/config.h @@ -127,5 +127,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/adkb96/rev1/config.h b/keyboards/adkb96/rev1/config.h index c5b768721c..9727e7eaf7 100644 --- a/keyboards/adkb96/rev1/config.h +++ b/keyboards/adkb96/rev1/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/adpenrose/kintsugi/config.h b/keyboards/adpenrose/kintsugi/config.h index cbd38b6664..b3aca40a06 100644 --- a/keyboards/adpenrose/kintsugi/config.h +++ b/keyboards/adpenrose/kintsugi/config.h @@ -137,10 +137,6 @@ increase the value. If you need 2 clicks for 1 keycode, decrease*/ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/afternoonlabs/breeze/config.h b/keyboards/afternoonlabs/breeze/config.h index 48331fa076..0b832322a3 100644 --- a/keyboards/afternoonlabs/breeze/config.h +++ b/keyboards/afternoonlabs/breeze/config.h @@ -17,6 +17,3 @@ #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/afternoonlabs/gust/config.h b/keyboards/afternoonlabs/gust/config.h index 48331fa076..0b832322a3 100644 --- a/keyboards/afternoonlabs/gust/config.h +++ b/keyboards/afternoonlabs/gust/config.h @@ -17,6 +17,3 @@ #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/afternoonlabs/oceanbreeze/config.h b/keyboards/afternoonlabs/oceanbreeze/config.h index 1197fa2257..71eaed42a2 100644 --- a/keyboards/afternoonlabs/oceanbreeze/config.h +++ b/keyboards/afternoonlabs/oceanbreeze/config.h @@ -17,6 +17,3 @@ #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/afternoonlabs/southern_breeze/config.h b/keyboards/afternoonlabs/southern_breeze/config.h index 1197fa2257..71eaed42a2 100644 --- a/keyboards/afternoonlabs/southern_breeze/config.h +++ b/keyboards/afternoonlabs/southern_breeze/config.h @@ -17,6 +17,3 @@ #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/afternoonlabs/summer_breeze/config.h b/keyboards/afternoonlabs/summer_breeze/config.h index 1197fa2257..71eaed42a2 100644 --- a/keyboards/afternoonlabs/summer_breeze/config.h +++ b/keyboards/afternoonlabs/summer_breeze/config.h @@ -17,6 +17,3 @@ #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ai03/equinox/config.h b/keyboards/ai03/equinox/config.h index 5130f510b6..4a6b841b60 100644 --- a/keyboards/ai03/equinox/config.h +++ b/keyboards/ai03/equinox/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/jp60/config.h b/keyboards/ai03/jp60/config.h index a06d75c8e5..2e48321546 100644 --- a/keyboards/ai03/jp60/config.h +++ b/keyboards/ai03/jp60/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ai03/lunar/config.h b/keyboards/ai03/lunar/config.h index 9ee8cbf6f8..65f428776f 100644 --- a/keyboards/ai03/lunar/config.h +++ b/keyboards/ai03/lunar/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/orbit/config.h b/keyboards/ai03/orbit/config.h index 0e4f4c3baf..1b745b4e1f 100644 --- a/keyboards/ai03/orbit/config.h +++ b/keyboards/ai03/orbit/config.h @@ -140,8 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/orbit_x/config.h b/keyboards/ai03/orbit_x/config.h index 7d3e8ef511..74acd64746 100644 --- a/keyboards/ai03/orbit_x/config.h +++ b/keyboards/ai03/orbit_x/config.h @@ -110,10 +110,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ai03/polaris/config.h b/keyboards/ai03/polaris/config.h index 0cd6e6f580..2d869dd0bd 100644 --- a/keyboards/ai03/polaris/config.h +++ b/keyboards/ai03/polaris/config.h @@ -107,8 +107,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/quasar/config.h b/keyboards/ai03/quasar/config.h index 2563125be0..97fa2df2da 100644 --- a/keyboards/ai03/quasar/config.h +++ b/keyboards/ai03/quasar/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/soyuz/config.h b/keyboards/ai03/soyuz/config.h index feb55107c3..8022145ceb 100644 --- a/keyboards/ai03/soyuz/config.h +++ b/keyboards/ai03/soyuz/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ai03/vega/config.h b/keyboards/ai03/vega/config.h index ac589276a7..5f94ea9a7d 100644 --- a/keyboards/ai03/vega/config.h +++ b/keyboards/ai03/vega/config.h @@ -59,5 +59,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ai03/voyager60_alps/config.h b/keyboards/ai03/voyager60_alps/config.h index cd749cc505..cd06071989 100644 --- a/keyboards/ai03/voyager60_alps/config.h +++ b/keyboards/ai03/voyager60_alps/config.h @@ -90,8 +90,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/al1/config.h b/keyboards/al1/config.h index c8edb8ebfe..078e9cb41e 100644 --- a/keyboards/al1/config.h +++ b/keyboards/al1/config.h @@ -88,7 +88,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/aleblazer/zodiark/config.h b/keyboards/aleblazer/zodiark/config.h index 84795f024b..a3ea6382e4 100644 --- a/keyboards/aleblazer/zodiark/config.h +++ b/keyboards/aleblazer/zodiark/config.h @@ -25,8 +25,6 @@ along with this program. If not, see . #define MANUFACTURER Aleblazer #define PRODUCT Zodiark -#define NO_ACTION_MACRO - #define SOFT_SERIAL_PIN D3 #define SERIAL_USE_MULTI_TRANSACTION #define SELECT_SOFT_SERIAL_SPEED 1 diff --git a/keyboards/alf/dc60/config.h b/keyboards/alf/dc60/config.h index 5c37685322..bdbea9578c 100644 --- a/keyboards/alf/dc60/config.h +++ b/keyboards/alf/dc60/config.h @@ -117,5 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/alf/x11/config.h b/keyboards/alf/x11/config.h index 437f1e22ba..a489174b2d 100644 --- a/keyboards/alf/x11/config.h +++ b/keyboards/alf/x11/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/alpine65/config.h b/keyboards/alpine65/config.h index 68aae56383..ce674396ab 100644 --- a/keyboards/alpine65/config.h +++ b/keyboards/alpine65/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/alps64/config.h b/keyboards/alps64/config.h index 31837b3a9e..640bab8bca 100644 --- a/keyboards/alps64/config.h +++ b/keyboards/alps64/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/amj40/config.h b/keyboards/amj40/config.h index 7fce438337..71a8d34413 100755 --- a/keyboards/amj40/config.h +++ b/keyboards/amj40/config.h @@ -84,5 +84,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/amj60/config.h b/keyboards/amj60/config.h index 8d53efd3f3..1c25e4fea0 100644 --- a/keyboards/amj60/config.h +++ b/keyboards/amj60/config.h @@ -109,10 +109,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/amj96/config.h b/keyboards/amj96/config.h index 5de56683a6..f5b26220b7 100644 --- a/keyboards/amj96/config.h +++ b/keyboards/amj96/config.h @@ -129,5 +129,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/amjkeyboard/amj84/config.h b/keyboards/amjkeyboard/amj84/config.h index 279d1268e8..569c06dac2 100644 --- a/keyboards/amjkeyboard/amj84/config.h +++ b/keyboards/amjkeyboard/amj84/config.h @@ -103,10 +103,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/amjpad/config.h b/keyboards/amjpad/config.h index f1d57592b5..dd8ed34e47 100644 --- a/keyboards/amjpad/config.h +++ b/keyboards/amjpad/config.h @@ -84,5 +84,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/arabica37/rev1/config.h b/keyboards/arabica37/rev1/config.h index 7951bc49ea..c0339a1a09 100644 --- a/keyboards/arabica37/rev1/config.h +++ b/keyboards/arabica37/rev1/config.h @@ -77,5 +77,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/arisu/config.h b/keyboards/arisu/config.h index 8cadc50741..8e2da440c2 100644 --- a/keyboards/arisu/config.h +++ b/keyboards/arisu/config.h @@ -127,5 +127,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ash1800/config.h b/keyboards/ash1800/config.h index 051db87a79..7b55f31bd3 100644 --- a/keyboards/ash1800/config.h +++ b/keyboards/ash1800/config.h @@ -140,8 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ashpil/modelm_usbc/config.h b/keyboards/ashpil/modelm_usbc/config.h index f383a30714..8572171527 100644 --- a/keyboards/ashpil/modelm_usbc/config.h +++ b/keyboards/ashpil/modelm_usbc/config.h @@ -66,8 +66,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/at_at/660m/config.h b/keyboards/at_at/660m/config.h index 41443f8ae6..5a53e8c38a 100644 --- a/keyboards/at_at/660m/config.h +++ b/keyboards/at_at/660m/config.h @@ -65,5 +65,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/atlas_65/config.h b/keyboards/atlas_65/config.h index d96c2c3976..86613cb193 100644 --- a/keyboards/atlas_65/config.h +++ b/keyboards/atlas_65/config.h @@ -126,5 +126,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/atomic/config.h b/keyboards/atomic/config.h index cb4aee0f7f..095cac906c 100644 --- a/keyboards/atomic/config.h +++ b/keyboards/atomic/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/atreus/config.h b/keyboards/atreus/config.h index 07f4d7f15a..ae3eb4f232 100644 --- a/keyboards/atreus/config.h +++ b/keyboards/atreus/config.h @@ -59,5 +59,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/atreus62/config.h b/keyboards/atreus62/config.h index 31baef145f..2bb3da484c 100644 --- a/keyboards/atreus62/config.h +++ b/keyboards/atreus62/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/atxkb/1894/config.h b/keyboards/atxkb/1894/config.h index c59efe91a7..fd621e169a 100644 --- a/keyboards/atxkb/1894/config.h +++ b/keyboards/atxkb/1894/config.h @@ -107,8 +107,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/aves60/config.h b/keyboards/aves60/config.h index 9f90b2109e..d44951a4ce 100644 --- a/keyboards/aves60/config.h +++ b/keyboards/aves60/config.h @@ -130,10 +130,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 4 #define BOOTMAGIC_LITE_COLUMN 6 diff --git a/keyboards/baguette/config.h b/keyboards/baguette/config.h index 9a6b08ed9e..b4937579a3 100644 --- a/keyboards/baguette/config.h +++ b/keyboards/baguette/config.h @@ -114,5 +114,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bandominedoni/config.h b/keyboards/bandominedoni/config.h index e1e4d87405..d95b600536 100644 --- a/keyboards/bandominedoni/config.h +++ b/keyboards/bandominedoni/config.h @@ -240,10 +240,6 @@ // NO_ACTION_ONESHOT -388 bytes #define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/bantam44/config.h b/keyboards/bantam44/config.h index 6cff8b2899..2745f5c045 100644 --- a/keyboards/bantam44/config.h +++ b/keyboards/bantam44/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/barleycorn_smd/config.h b/keyboards/barleycorn_smd/config.h index 2ac86bf8a8..e56992f1fc 100644 --- a/keyboards/barleycorn_smd/config.h +++ b/keyboards/barleycorn_smd/config.h @@ -107,5 +107,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/barracuda/config.h b/keyboards/barracuda/config.h index 97eee0bd65..9b83522b1a 100644 --- a/keyboards/barracuda/config.h +++ b/keyboards/barracuda/config.h @@ -53,7 +53,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/bastardkb/charybdis/3x5/config.h b/keyboards/bastardkb/charybdis/3x5/config.h index 9c69f7c358..89b896bc35 100644 --- a/keyboards/bastardkb/charybdis/3x5/config.h +++ b/keyboards/bastardkb/charybdis/3x5/config.h @@ -58,10 +58,6 @@ /* Set 0 if debouncing isn't needed. */ #define DEBOUNCE 5 -/* Disable action features. */ -#define NO_ACTION_MACRO // Disable old-style macro handling. -#define NO_ACTION_FUNCTION // Disable old-style function handling. - /* PMW3360 settings. */ #define PMW3360_CS_PIN B0 diff --git a/keyboards/bastardkb/charybdis/4x6/config.h b/keyboards/bastardkb/charybdis/4x6/config.h index f00fb382f6..423f12fdbe 100644 --- a/keyboards/bastardkb/charybdis/4x6/config.h +++ b/keyboards/bastardkb/charybdis/4x6/config.h @@ -60,10 +60,6 @@ /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 -/* Disable action features. */ -#define NO_ACTION_MACRO // Disable old-style macro handling. -#define NO_ACTION_FUNCTION // Disable old-style function handling. - /* PMW3360 settings. */ #define PMW3360_CS_PIN B0 diff --git a/keyboards/bear_face/config.h b/keyboards/bear_face/config.h index 9b389f127a..593f8a23a4 100644 --- a/keyboards/bear_face/config.h +++ b/keyboards/bear_face/config.h @@ -95,5 +95,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/biacco42/ergo42/rev1/config.h b/keyboards/biacco42/ergo42/rev1/config.h index a6bf914515..c8bfe1170f 100644 --- a/keyboards/biacco42/ergo42/rev1/config.h +++ b/keyboards/biacco42/ergo42/rev1/config.h @@ -76,5 +76,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/biacco42/meishi/config.h b/keyboards/biacco42/meishi/config.h index 6664e371a1..ff6c22dc56 100644 --- a/keyboards/biacco42/meishi/config.h +++ b/keyboards/biacco42/meishi/config.h @@ -106,5 +106,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/biacco42/meishi2/config.h b/keyboards/biacco42/meishi2/config.h index df3203991c..57a4e226a3 100644 --- a/keyboards/biacco42/meishi2/config.h +++ b/keyboards/biacco42/meishi2/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/bioi/f60/config.h b/keyboards/bioi/f60/config.h index a0d498b90e..40a7f6250f 100644 --- a/keyboards/bioi/f60/config.h +++ b/keyboards/bioi/f60/config.h @@ -66,7 +66,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/blank/blank01/config.h b/keyboards/blank/blank01/config.h index 5b28e8199c..5ebf8c774a 100644 --- a/keyboards/blank/blank01/config.h +++ b/keyboards/blank/blank01/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/blockey/config.h b/keyboards/blockey/config.h index 7ad3311c71..d954be2d7e 100644 --- a/keyboards/blockey/config.h +++ b/keyboards/blockey/config.h @@ -110,5 +110,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/boardrun/bizarre/config.h b/keyboards/boardrun/bizarre/config.h index 6e08d1f4a7..9f4b91e2b5 100644 --- a/keyboards/boardrun/bizarre/config.h +++ b/keyboards/boardrun/bizarre/config.h @@ -71,8 +71,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN B7 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/boardrun/classic/config.h b/keyboards/boardrun/classic/config.h index 6c814eb373..754c42975f 100644 --- a/keyboards/boardrun/classic/config.h +++ b/keyboards/boardrun/classic/config.h @@ -71,8 +71,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN B7 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/boardsource/3x4/config.h b/keyboards/boardsource/3x4/config.h index 01d163ca50..b7a067bb6f 100644 --- a/keyboards/boardsource/3x4/config.h +++ b/keyboards/boardsource/3x4/config.h @@ -68,5 +68,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/boardsource/4x12/config.h b/keyboards/boardsource/4x12/config.h index 967bb1c9f0..4df24944f8 100644 --- a/keyboards/boardsource/4x12/config.h +++ b/keyboards/boardsource/4x12/config.h @@ -66,5 +66,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/boardsource/5x12/config.h b/keyboards/boardsource/5x12/config.h index 455965a09e..f70dec9efb 100644 --- a/keyboards/boardsource/5x12/config.h +++ b/keyboards/boardsource/5x12/config.h @@ -67,5 +67,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/boardsource/beiwagon/config.h b/keyboards/boardsource/beiwagon/config.h index 797da34613..72386c4236 100644 --- a/keyboards/boardsource/beiwagon/config.h +++ b/keyboards/boardsource/beiwagon/config.h @@ -160,10 +160,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/boardsource/holiday/spooky/config.h b/keyboards/boardsource/holiday/spooky/config.h index 92eb4c32ac..87d63b0d9e 100644 --- a/keyboards/boardsource/holiday/spooky/config.h +++ b/keyboards/boardsource/holiday/spooky/config.h @@ -124,10 +124,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/boardsource/microdox/config.h b/keyboards/boardsource/microdox/config.h index 65af0f16de..7e6347dbda 100644 --- a/keyboards/boardsource/microdox/config.h +++ b/keyboards/boardsource/microdox/config.h @@ -76,5 +76,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/boardsource/technik_o/config.h b/keyboards/boardsource/technik_o/config.h index 51c9529da4..146141a911 100644 --- a/keyboards/boardsource/technik_o/config.h +++ b/keyboards/boardsource/technik_o/config.h @@ -160,10 +160,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/boardsource/technik_s/config.h b/keyboards/boardsource/technik_s/config.h index 7b5f297c9e..a34ab1577a 100644 --- a/keyboards/boardsource/technik_s/config.h +++ b/keyboards/boardsource/technik_s/config.h @@ -160,10 +160,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/boardsource/the_mark/config.h b/keyboards/boardsource/the_mark/config.h index cbfe4cd510..99696e5d28 100644 --- a/keyboards/boardsource/the_mark/config.h +++ b/keyboards/boardsource/the_mark/config.h @@ -151,10 +151,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/boardwalk/config.h b/keyboards/boardwalk/config.h index b98b709738..03e481ce62 100644 --- a/keyboards/boardwalk/config.h +++ b/keyboards/boardwalk/config.h @@ -71,8 +71,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN B7 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/boston/config.h b/keyboards/boston/config.h index ff9c253ded..247616d3da 100644 --- a/keyboards/boston/config.h +++ b/keyboards/boston/config.h @@ -88,5 +88,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/boston_meetup/2019/config.h b/keyboards/boston_meetup/2019/config.h index 138dedab57..99ce9e85db 100644 --- a/keyboards/boston_meetup/2019/config.h +++ b/keyboards/boston_meetup/2019/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Haptic Driver initialization settings * Feedback Control Settings */ diff --git a/keyboards/boston_meetup/config.h b/keyboards/boston_meetup/config.h index 013b0b1484..60e490435f 100644 --- a/keyboards/boston_meetup/config.h +++ b/keyboards/boston_meetup/config.h @@ -55,5 +55,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/box75/config.h b/keyboards/box75/config.h index b3b52c8730..b6bcc31b0a 100644 --- a/keyboards/box75/config.h +++ b/keyboards/box75/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bpiphany/frosty_flake/config.h b/keyboards/bpiphany/frosty_flake/config.h index a60d728ac6..1ca00f231d 100644 --- a/keyboards/bpiphany/frosty_flake/config.h +++ b/keyboards/bpiphany/frosty_flake/config.h @@ -91,6 +91,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION + #define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/bpiphany/hid_liber/config.h b/keyboards/bpiphany/hid_liber/config.h index 1664b9e314..95e617f562 100755 --- a/keyboards/bpiphany/hid_liber/config.h +++ b/keyboards/bpiphany/hid_liber/config.h @@ -88,5 +88,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bpiphany/kitten_paw/config.h b/keyboards/bpiphany/kitten_paw/config.h index 7dbf027699..b357289e69 100644 --- a/keyboards/bpiphany/kitten_paw/config.h +++ b/keyboards/bpiphany/kitten_paw/config.h @@ -105,5 +105,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bpiphany/sixshooter/config.h b/keyboards/bpiphany/sixshooter/config.h index 9e7a1803af..74acfac9b0 100644 --- a/keyboards/bpiphany/sixshooter/config.h +++ b/keyboards/bpiphany/sixshooter/config.h @@ -59,5 +59,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bpiphany/tiger_lily/config.h b/keyboards/bpiphany/tiger_lily/config.h index 54a1c2e7f4..1831e3e4d4 100644 --- a/keyboards/bpiphany/tiger_lily/config.h +++ b/keyboards/bpiphany/tiger_lily/config.h @@ -96,5 +96,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bpiphany/unloved_bastard/config.h b/keyboards/bpiphany/unloved_bastard/config.h index a6589be4a1..1f1cf72a18 100644 --- a/keyboards/bpiphany/unloved_bastard/config.h +++ b/keyboards/bpiphany/unloved_bastard/config.h @@ -89,5 +89,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bt66tech/bt66tech60/config.h b/keyboards/bt66tech/bt66tech60/config.h index 7083b0f70d..18a7a2d85e 100644 --- a/keyboards/bt66tech/bt66tech60/config.h +++ b/keyboards/bt66tech/bt66tech60/config.h @@ -91,5 +91,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/bthlabs/geekpad/config.h b/keyboards/bthlabs/geekpad/config.h index 7994a9cab5..5dad96a7b4 100644 --- a/keyboards/bthlabs/geekpad/config.h +++ b/keyboards/bthlabs/geekpad/config.h @@ -114,8 +114,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/buildakb/potato65/config.h b/keyboards/buildakb/potato65/config.h index 350e1018f7..4a0a17ace0 100644 --- a/keyboards/buildakb/potato65/config.h +++ b/keyboards/buildakb/potato65/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/buildakb/potato65hs/config.h b/keyboards/buildakb/potato65hs/config.h index b3b2cfdcd4..cf565d8176 100644 --- a/keyboards/buildakb/potato65hs/config.h +++ b/keyboards/buildakb/potato65hs/config.h @@ -47,10 +47,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DI_PIN D5 #ifdef RGB_DI_PIN # define RGBLIGHT_ANIMATIONS diff --git a/keyboards/buildakb/potato65s/config.h b/keyboards/buildakb/potato65s/config.h index 5183327855..c1374558c9 100644 --- a/keyboards/buildakb/potato65s/config.h +++ b/keyboards/buildakb/potato65s/config.h @@ -47,10 +47,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DI_PIN D5 #ifdef RGB_DI_PIN # define RGBLIGHT_EFFECT_BREATHING diff --git a/keyboards/caffeinated/serpent65/config.h b/keyboards/caffeinated/serpent65/config.h index f09a1c2b08..358e7d0f4c 100644 --- a/keyboards/caffeinated/serpent65/config.h +++ b/keyboards/caffeinated/serpent65/config.h @@ -105,5 +105,3 @@ B0, which is unconnected on the PCB //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/canary/canary60rgb/v1/config.h b/keyboards/canary/canary60rgb/v1/config.h index 303bde7e77..f02b29c1b9 100644 --- a/keyboards/canary/canary60rgb/v1/config.h +++ b/keyboards/canary/canary60rgb/v1/config.h @@ -65,10 +65,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended @@ -91,4 +87,4 @@ # define DRIVER_ADDR_1 0b1010000 # define DRIVER_COUNT 1 # define DRIVER_LED_TOTAL 63 -#endif \ No newline at end of file +#endif diff --git a/keyboards/cannonkeys/adelie/config.h b/keyboards/cannonkeys/adelie/config.h index 25ddcf0c91..16f308ad2c 100644 --- a/keyboards/cannonkeys/adelie/config.h +++ b/keyboards/cannonkeys/adelie/config.h @@ -106,10 +106,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/cannonkeys/aella/config.h b/keyboards/cannonkeys/aella/config.h index b32880d409..dd8a6376d5 100644 --- a/keyboards/cannonkeys/aella/config.h +++ b/keyboards/cannonkeys/aella/config.h @@ -59,5 +59,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/an_c/config.h b/keyboards/cannonkeys/an_c/config.h index 83e98c2e28..09e2382595 100644 --- a/keyboards/cannonkeys/an_c/config.h +++ b/keyboards/cannonkeys/an_c/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/atlas/config.h b/keyboards/cannonkeys/atlas/config.h index 1ba5c0fb0e..40984c3f64 100644 --- a/keyboards/cannonkeys/atlas/config.h +++ b/keyboards/cannonkeys/atlas/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/balance/config.h b/keyboards/cannonkeys/balance/config.h index 2cdf7d27a7..937de92f55 100644 --- a/keyboards/cannonkeys/balance/config.h +++ b/keyboards/cannonkeys/balance/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/chimera65/config.h b/keyboards/cannonkeys/chimera65/config.h index f7108264af..1fe204a4ad 100644 --- a/keyboards/cannonkeys/chimera65/config.h +++ b/keyboards/cannonkeys/chimera65/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/db60/config.h b/keyboards/cannonkeys/db60/config.h index dc2007c17c..6dd0d0d7f8 100644 --- a/keyboards/cannonkeys/db60/config.h +++ b/keyboards/cannonkeys/db60/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/devastatingtkl/config.h b/keyboards/cannonkeys/devastatingtkl/config.h index 0a76a3466f..7173a46378 100644 --- a/keyboards/cannonkeys/devastatingtkl/config.h +++ b/keyboards/cannonkeys/devastatingtkl/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/hoodrowg/config.h b/keyboards/cannonkeys/hoodrowg/config.h index 91d89ec81d..fc305188a6 100644 --- a/keyboards/cannonkeys/hoodrowg/config.h +++ b/keyboards/cannonkeys/hoodrowg/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/instant60/config.h b/keyboards/cannonkeys/instant60/config.h index d34bc0003e..9b4aac8e15 100644 --- a/keyboards/cannonkeys/instant60/config.h +++ b/keyboards/cannonkeys/instant60/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/instant65/config.h b/keyboards/cannonkeys/instant65/config.h index dc097494b2..464ef09044 100644 --- a/keyboards/cannonkeys/instant65/config.h +++ b/keyboards/cannonkeys/instant65/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/iron165/config.h b/keyboards/cannonkeys/iron165/config.h index 899e73bb9e..b0b3dd8d7b 100644 --- a/keyboards/cannonkeys/iron165/config.h +++ b/keyboards/cannonkeys/iron165/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/obliterated75/config.h b/keyboards/cannonkeys/obliterated75/config.h index 7a8a7ff28c..aef5a3e374 100644 --- a/keyboards/cannonkeys/obliterated75/config.h +++ b/keyboards/cannonkeys/obliterated75/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/onyx/config.h b/keyboards/cannonkeys/onyx/config.h index 4fd95bd84a..2149520a5a 100644 --- a/keyboards/cannonkeys/onyx/config.h +++ b/keyboards/cannonkeys/onyx/config.h @@ -65,5 +65,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/ortho48/config.h b/keyboards/cannonkeys/ortho48/config.h index 35471484ca..cc904a27a0 100644 --- a/keyboards/cannonkeys/ortho48/config.h +++ b/keyboards/cannonkeys/ortho48/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/ortho60/config.h b/keyboards/cannonkeys/ortho60/config.h index 36d92de76c..4e7db76b6b 100644 --- a/keyboards/cannonkeys/ortho60/config.h +++ b/keyboards/cannonkeys/ortho60/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/ortho75/config.h b/keyboards/cannonkeys/ortho75/config.h index e05bfba75a..93fe02f536 100644 --- a/keyboards/cannonkeys/ortho75/config.h +++ b/keyboards/cannonkeys/ortho75/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/practice60/config.h b/keyboards/cannonkeys/practice60/config.h index d89671f557..6937f5752a 100644 --- a/keyboards/cannonkeys/practice60/config.h +++ b/keyboards/cannonkeys/practice60/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/practice65/config.h b/keyboards/cannonkeys/practice65/config.h index 69a2f859f1..343d4d5272 100644 --- a/keyboards/cannonkeys/practice65/config.h +++ b/keyboards/cannonkeys/practice65/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/rekt1800/config.h b/keyboards/cannonkeys/rekt1800/config.h index e6f7de2e86..78cd623953 100644 --- a/keyboards/cannonkeys/rekt1800/config.h +++ b/keyboards/cannonkeys/rekt1800/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/sagittarius/config.h b/keyboards/cannonkeys/sagittarius/config.h index a263ebc713..dd8563df6b 100644 --- a/keyboards/cannonkeys/sagittarius/config.h +++ b/keyboards/cannonkeys/sagittarius/config.h @@ -80,5 +80,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/satisfaction75/config.h b/keyboards/cannonkeys/satisfaction75/config.h index 53e4c18e5e..2a0ac91b2d 100644 --- a/keyboards/cannonkeys/satisfaction75/config.h +++ b/keyboards/cannonkeys/satisfaction75/config.h @@ -107,5 +107,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/savage65/config.h b/keyboards/cannonkeys/savage65/config.h index 3c3166c919..049574c532 100644 --- a/keyboards/cannonkeys/savage65/config.h +++ b/keyboards/cannonkeys/savage65/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/tmov2/config.h b/keyboards/cannonkeys/tmov2/config.h index cddff4ce7e..821c9b7b5d 100644 --- a/keyboards/cannonkeys/tmov2/config.h +++ b/keyboards/cannonkeys/tmov2/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/tsukuyomi/config.h b/keyboards/cannonkeys/tsukuyomi/config.h index d3e955450f..51411c5241 100644 --- a/keyboards/cannonkeys/tsukuyomi/config.h +++ b/keyboards/cannonkeys/tsukuyomi/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cannonkeys/vicious40/config.h b/keyboards/cannonkeys/vicious40/config.h index 768ee7397d..c4f8c26235 100644 --- a/keyboards/cannonkeys/vicious40/config.h +++ b/keyboards/cannonkeys/vicious40/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/capsunlocked/cu24/config.h b/keyboards/capsunlocked/cu24/config.h index a2a4e727ff..cd5e0ccd39 100644 --- a/keyboards/capsunlocked/cu24/config.h +++ b/keyboards/capsunlocked/cu24/config.h @@ -108,5 +108,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/capsunlocked/cu65/config.h b/keyboards/capsunlocked/cu65/config.h index 8fac6cd06d..79ff7435bd 100644 --- a/keyboards/capsunlocked/cu65/config.h +++ b/keyboards/capsunlocked/cu65/config.h @@ -99,7 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/capsunlocked/cu75/config.h b/keyboards/capsunlocked/cu75/config.h index cfcb08cce1..8ad8feb24a 100644 --- a/keyboards/capsunlocked/cu75/config.h +++ b/keyboards/capsunlocked/cu75/config.h @@ -90,5 +90,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/centromere/config.h b/keyboards/centromere/config.h index b4cae20332..69af48c30f 100644 --- a/keyboards/centromere/config.h +++ b/keyboards/centromere/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/checkerboards/plexus75/config.h b/keyboards/checkerboards/plexus75/config.h index 5c123c43f1..f4d84d9d57 100644 --- a/keyboards/checkerboards/plexus75/config.h +++ b/keyboards/checkerboards/plexus75/config.h @@ -60,8 +60,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN D3 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/checkerboards/pursuit40/config.h b/keyboards/checkerboards/pursuit40/config.h index b73872306a..53b1ef90a5 100644 --- a/keyboards/checkerboards/pursuit40/config.h +++ b/keyboards/checkerboards/pursuit40/config.h @@ -61,8 +61,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN F0 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/checkerboards/quark/config.h b/keyboards/checkerboards/quark/config.h index 353569d8ec..d0ecf3bde8 100644 --- a/keyboards/checkerboards/quark/config.h +++ b/keyboards/checkerboards/quark/config.h @@ -61,8 +61,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN D0 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/ck60i/config.h b/keyboards/ck60i/config.h index 113cb5a421..3e09f1dfb0 100644 --- a/keyboards/ck60i/config.h +++ b/keyboards/ck60i/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ckeys/handwire_101/config.h b/keyboards/ckeys/handwire_101/config.h index 42e26be869..6b3f6c5b7f 100755 --- a/keyboards/ckeys/handwire_101/config.h +++ b/keyboards/ckeys/handwire_101/config.h @@ -115,5 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ckeys/nakey/config.h b/keyboards/ckeys/nakey/config.h index 26ba86e146..b620ff08c7 100644 --- a/keyboards/ckeys/nakey/config.h +++ b/keyboards/ckeys/nakey/config.h @@ -105,5 +105,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ckeys/obelus/config.h b/keyboards/ckeys/obelus/config.h index 00e224c206..1759f6c5fc 100644 --- a/keyboards/ckeys/obelus/config.h +++ b/keyboards/ckeys/obelus/config.h @@ -100,8 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #ifdef AUDIO_ENABLE #define AUDIO_VOICES diff --git a/keyboards/ckeys/thedora/config.h b/keyboards/ckeys/thedora/config.h index bfc3141731..8e96c8ed06 100755 --- a/keyboards/ckeys/thedora/config.h +++ b/keyboards/ckeys/thedora/config.h @@ -115,5 +115,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ckeys/washington/config.h b/keyboards/ckeys/washington/config.h index 0b7da2782e..2d5a8ce3ad 100644 --- a/keyboards/ckeys/washington/config.h +++ b/keyboards/ckeys/washington/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/clueboard/66_hotswap/config.h b/keyboards/clueboard/66_hotswap/config.h index 9b1dba3dc3..4e3af45222 100644 --- a/keyboards/clueboard/66_hotswap/config.h +++ b/keyboards/clueboard/66_hotswap/config.h @@ -23,4 +23,3 @@ along with this program. If not, see . * These options are also useful to firmware size reduction. */ #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO diff --git a/keyboards/clueboard/66_hotswap/gen1/config.h b/keyboards/clueboard/66_hotswap/gen1/config.h index 1e124745bd..b1bf6b3543 100644 --- a/keyboards/clueboard/66_hotswap/gen1/config.h +++ b/keyboards/clueboard/66_hotswap/gen1/config.h @@ -62,8 +62,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Backlight configuration */ diff --git a/keyboards/coarse/cordillera/config.h b/keyboards/coarse/cordillera/config.h index 1d8c9e294c..7bc2dca560 100644 --- a/keyboards/coarse/cordillera/config.h +++ b/keyboards/coarse/cordillera/config.h @@ -71,5 +71,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/contender/config.h b/keyboards/contender/config.h index 0b5e5e9342..9977a5033e 100644 --- a/keyboards/contender/config.h +++ b/keyboards/contender/config.h @@ -139,10 +139,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/converter/a1200/miss1200/config.h b/keyboards/converter/a1200/miss1200/config.h index 5a6c679651..7347f1948c 100644 --- a/keyboards/converter/a1200/miss1200/config.h +++ b/keyboards/converter/a1200/miss1200/config.h @@ -58,5 +58,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/converter/a1200/teensy2pp/config.h b/keyboards/converter/a1200/teensy2pp/config.h index 19e7ca9b95..84a81c297c 100644 --- a/keyboards/converter/a1200/teensy2pp/config.h +++ b/keyboards/converter/a1200/teensy2pp/config.h @@ -57,5 +57,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/converter/modelm101/config.h b/keyboards/converter/modelm101/config.h index 639b325ff3..33c6303036 100644 --- a/keyboards/converter/modelm101/config.h +++ b/keyboards/converter/modelm101/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/converter/modelm_ssk/config.h b/keyboards/converter/modelm_ssk/config.h index 74d549ba49..ff7aa12000 100644 --- a/keyboards/converter/modelm_ssk/config.h +++ b/keyboards/converter/modelm_ssk/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/converter/siemens_tastatur/config.h b/keyboards/converter/siemens_tastatur/config.h index cd54ed3d83..86fe59fbd5 100644 --- a/keyboards/converter/siemens_tastatur/config.h +++ b/keyboards/converter/siemens_tastatur/config.h @@ -62,5 +62,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/cool836a/config.h b/keyboards/cool836a/config.h index 3ac036786f..4cf356d8b3 100644 --- a/keyboards/cool836a/config.h +++ b/keyboards/cool836a/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/copenhagen_click/click_pad_v1/config.h b/keyboards/copenhagen_click/click_pad_v1/config.h index 08a9777b51..7fc16c54fe 100755 --- a/keyboards/copenhagen_click/click_pad_v1/config.h +++ b/keyboards/copenhagen_click/click_pad_v1/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/coseyfannitutti/discipad/config.h b/keyboards/coseyfannitutti/discipad/config.h index 33ce2576f8..69e2e1561c 100644 --- a/keyboards/coseyfannitutti/discipad/config.h +++ b/keyboards/coseyfannitutti/discipad/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/coseyfannitutti/discipline/config.h b/keyboards/coseyfannitutti/discipline/config.h index 70bc4536f3..570fff8752 100644 --- a/keyboards/coseyfannitutti/discipline/config.h +++ b/keyboards/coseyfannitutti/discipline/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/coseyfannitutti/mullet/config.h b/keyboards/coseyfannitutti/mullet/config.h index b186aa82d1..d01be9744c 100644 --- a/keyboards/coseyfannitutti/mullet/config.h +++ b/keyboards/coseyfannitutti/mullet/config.h @@ -115,6 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/coseyfannitutti/mulletpad/config.h b/keyboards/coseyfannitutti/mulletpad/config.h index b2a9303571..e6d68469bf 100644 --- a/keyboards/coseyfannitutti/mulletpad/config.h +++ b/keyboards/coseyfannitutti/mulletpad/config.h @@ -115,6 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/coseyfannitutti/mysterium/config.h b/keyboards/coseyfannitutti/mysterium/config.h index 0b2df0a051..4fa4b15708 100644 --- a/keyboards/coseyfannitutti/mysterium/config.h +++ b/keyboards/coseyfannitutti/mysterium/config.h @@ -131,8 +131,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/coseyfannitutti/romeo/config.h b/keyboards/coseyfannitutti/romeo/config.h index 93cda95d20..811787df79 100644 --- a/keyboards/coseyfannitutti/romeo/config.h +++ b/keyboards/coseyfannitutti/romeo/config.h @@ -134,8 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/craftwalk/config.h b/keyboards/craftwalk/config.h index 484a2e13aa..f87c61cdb1 100644 --- a/keyboards/craftwalk/config.h +++ b/keyboards/craftwalk/config.h @@ -137,9 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/crazy_keyboard_68/config.h b/keyboards/crazy_keyboard_68/config.h index 53759a716a..ea2bc568bc 100644 --- a/keyboards/crazy_keyboard_68/config.h +++ b/keyboards/crazy_keyboard_68/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/crkbd/config.h b/keyboards/crkbd/config.h index f354efbb47..02732819f9 100644 --- a/keyboards/crkbd/config.h +++ b/keyboards/crkbd/config.h @@ -68,9 +68,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION -#define USE_SERIAL -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION +#define USE_SERIAL diff --git a/keyboards/cutie_club/wraith/config.h b/keyboards/cutie_club/wraith/config.h index 685aed81d6..fa7467eb4a 100644 --- a/keyboards/cutie_club/wraith/config.h +++ b/keyboards/cutie_club/wraith/config.h @@ -134,8 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/dailycraft/bat43/config.h b/keyboards/dailycraft/bat43/config.h index 19b485fd16..4c42f6a06d 100644 --- a/keyboards/dailycraft/bat43/config.h +++ b/keyboards/dailycraft/bat43/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/claw44/config.h b/keyboards/dailycraft/claw44/config.h index 0bd74ff833..cfb6bf4ffc 100644 --- a/keyboards/dailycraft/claw44/config.h +++ b/keyboards/dailycraft/claw44/config.h @@ -19,6 +19,3 @@ along with this program. If not, see . #pragma once #include "config_common.h" - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/dailycraft/claw44/rev1/config.h b/keyboards/dailycraft/claw44/rev1/config.h index 8116b605cd..bcfcbababa 100644 --- a/keyboards/dailycraft/claw44/rev1/config.h +++ b/keyboards/dailycraft/claw44/rev1/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/dailycraft/owl8/config.h b/keyboards/dailycraft/owl8/config.h index d28fd9c927..b0634c2566 100644 --- a/keyboards/dailycraft/owl8/config.h +++ b/keyboards/dailycraft/owl8/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/stickey4/config.h b/keyboards/dailycraft/stickey4/config.h index 85e49bca96..d9bd0f3301 100644 --- a/keyboards/dailycraft/stickey4/config.h +++ b/keyboards/dailycraft/stickey4/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/wings42/rev1/config.h b/keyboards/dailycraft/wings42/rev1/config.h index cfb4274921..0d53ff7634 100644 --- a/keyboards/dailycraft/wings42/rev1/config.h +++ b/keyboards/dailycraft/wings42/rev1/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/config.h b/keyboards/dailycraft/wings42/rev1_extkeys/config.h index f0f04eca59..b2fe3210b6 100644 --- a/keyboards/dailycraft/wings42/rev1_extkeys/config.h +++ b/keyboards/dailycraft/wings42/rev1_extkeys/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/wings42/rev2/config.h b/keyboards/dailycraft/wings42/rev2/config.h index 836833718c..f1e7716bb4 100644 --- a/keyboards/dailycraft/wings42/rev2/config.h +++ b/keyboards/dailycraft/wings42/rev2/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dc01/left/config.h b/keyboards/dc01/left/config.h index 43883975c4..d5b2962590 100644 --- a/keyboards/dc01/left/config.h +++ b/keyboards/dc01/left/config.h @@ -120,5 +120,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/delikeeb/flatbread60/config.h b/keyboards/delikeeb/flatbread60/config.h index 5d63a8f5fc..3de88a16f6 100644 --- a/keyboards/delikeeb/flatbread60/config.h +++ b/keyboards/delikeeb/flatbread60/config.h @@ -116,7 +116,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/delikeeb/vaguettelite/config.h b/keyboards/delikeeb/vaguettelite/config.h index ef1aec49ef..5ad1942437 100644 --- a/keyboards/delikeeb/vaguettelite/config.h +++ b/keyboards/delikeeb/vaguettelite/config.h @@ -110,10 +110,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/delikeeb/vanana/rev1/config.h b/keyboards/delikeeb/vanana/rev1/config.h index d584e32a39..8213404eb3 100644 --- a/keyboards/delikeeb/vanana/rev1/config.h +++ b/keyboards/delikeeb/vanana/rev1/config.h @@ -91,10 +91,6 @@ along with this program. If not, see . */ #define GRAVE_ESC_CTRL_OVERRIDE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/delikeeb/vanana/rev2/config.h b/keyboards/delikeeb/vanana/rev2/config.h index 8893bb09f5..8397424aa9 100644 --- a/keyboards/delikeeb/vanana/rev2/config.h +++ b/keyboards/delikeeb/vanana/rev2/config.h @@ -91,10 +91,6 @@ along with this program. If not, see . */ #define GRAVE_ESC_CTRL_OVERRIDE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/delikeeb/vaneela/config.h b/keyboards/delikeeb/vaneela/config.h index 4feaf44a72..936c8eb5ec 100644 --- a/keyboards/delikeeb/vaneela/config.h +++ b/keyboards/delikeeb/vaneela/config.h @@ -101,10 +101,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/delikeeb/vaneelaex/config.h b/keyboards/delikeeb/vaneelaex/config.h index 4eb6303838..27d2420176 100644 --- a/keyboards/delikeeb/vaneelaex/config.h +++ b/keyboards/delikeeb/vaneelaex/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/delikeeb/waaffle/rev3/config.h b/keyboards/delikeeb/waaffle/rev3/config.h index 0c4327623d..12ff241f4c 100644 --- a/keyboards/delikeeb/waaffle/rev3/config.h +++ b/keyboards/delikeeb/waaffle/rev3/config.h @@ -128,10 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 6 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/deltapad/config.h b/keyboards/deltapad/config.h index a4a78f244a..186a11ee27 100644 --- a/keyboards/deltapad/config.h +++ b/keyboards/deltapad/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/deltasplit75/v2/config.h b/keyboards/deltasplit75/v2/config.h index 397683ce45..ffc2724e5e 100644 --- a/keyboards/deltasplit75/v2/config.h +++ b/keyboards/deltasplit75/v2/config.h @@ -77,5 +77,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/demiurge/config.h b/keyboards/demiurge/config.h index abe6c193c4..b7e3c70b3c 100755 --- a/keyboards/demiurge/config.h +++ b/keyboards/demiurge/config.h @@ -73,7 +73,3 @@ along with this program. If not, see . /* disable print */ //#define NO_PRINT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/dichotomy/config.h b/keyboards/dichotomy/config.h index 40e7f18e6f..c4bb030900 100644 --- a/keyboards/dichotomy/config.h +++ b/keyboards/dichotomy/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/dk60/config.h b/keyboards/dk60/config.h index bec665419b..eef0ddc474 100644 --- a/keyboards/dk60/config.h +++ b/keyboards/dk60/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dm9records/ergoinu/config.h b/keyboards/dm9records/ergoinu/config.h index 89ea9e7903..e4fb80ad2e 100644 --- a/keyboards/dm9records/ergoinu/config.h +++ b/keyboards/dm9records/ergoinu/config.h @@ -106,5 +106,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/dm9records/lain/config.h b/keyboards/dm9records/lain/config.h index 8bccf4bbb5..adc0d165c3 100644 --- a/keyboards/dm9records/lain/config.h +++ b/keyboards/dm9records/lain/config.h @@ -40,8 +40,4 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DYNAMIC_KEYMAP_LAYER_COUNT 6 diff --git a/keyboards/dm9records/plaid/config.h b/keyboards/dm9records/plaid/config.h index 86ff5be356..ab6b0fbabc 100644 --- a/keyboards/dm9records/plaid/config.h +++ b/keyboards/dm9records/plaid/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/dm9records/tartan/config.h b/keyboards/dm9records/tartan/config.h index 7ad97ea453..4faec53721 100644 --- a/keyboards/dm9records/tartan/config.h +++ b/keyboards/dm9records/tartan/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/donutcables/scrabblepad/config.h b/keyboards/donutcables/scrabblepad/config.h index 5543c61335..2c6c704bde 100644 --- a/keyboards/donutcables/scrabblepad/config.h +++ b/keyboards/donutcables/scrabblepad/config.h @@ -143,8 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/doppelganger/config.h b/keyboards/doppelganger/config.h index d063cee5bc..39e29e7c15 100644 --- a/keyboards/doppelganger/config.h +++ b/keyboards/doppelganger/config.h @@ -144,8 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/draytronics/daisy/config.h b/keyboards/draytronics/daisy/config.h index b524f89028..fa04b0d41c 100644 --- a/keyboards/draytronics/daisy/config.h +++ b/keyboards/draytronics/daisy/config.h @@ -94,9 +94,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION //Underglow #define RGB_DI_PIN D4 // Underglow led pin diff --git a/keyboards/draytronics/scarlet/config.h b/keyboards/draytronics/scarlet/config.h index f7b50dee75..9c4db29ac6 100644 --- a/keyboards/draytronics/scarlet/config.h +++ b/keyboards/draytronics/scarlet/config.h @@ -91,6 +91,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/drewkeys/iskar/config.h b/keyboards/drewkeys/iskar/config.h index e20369fde0..956456201f 100644 --- a/keyboards/drewkeys/iskar/config.h +++ b/keyboards/drewkeys/iskar/config.h @@ -50,7 +50,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/dtisaac/dosa40rgb/config.h b/keyboards/dtisaac/dosa40rgb/config.h index c5c13bd270..8d61f61128 100644 --- a/keyboards/dtisaac/dosa40rgb/config.h +++ b/keyboards/dtisaac/dosa40rgb/config.h @@ -107,7 +107,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ //#define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/dtisaac/dtisaac01/config.h b/keyboards/dtisaac/dtisaac01/config.h index f417d64499..eb1ff71536 100644 --- a/keyboards/dtisaac/dtisaac01/config.h +++ b/keyboards/dtisaac/dtisaac01/config.h @@ -81,15 +81,6 @@ along with this program. If not, see . */ //#define FORCE_NKRO -/* - * Feature disable options - * These options are also useful to firmware size reduction. - */ - -/* disable these deprecated features by default */ -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/duck/jetfire/config.h b/keyboards/duck/jetfire/config.h index 3b6c7d89fd..0512d4a1f4 100644 --- a/keyboards/duck/jetfire/config.h +++ b/keyboards/duck/jetfire/config.h @@ -92,5 +92,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/dztech/dz60rgb/v1/config.h b/keyboards/dztech/dz60rgb/v1/config.h index 0d464b5d6b..7bdad00144 100644 --- a/keyboards/dztech/dz60rgb/v1/config.h +++ b/keyboards/dztech/dz60rgb/v1/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb/v2/config.h b/keyboards/dztech/dz60rgb/v2/config.h index 3db8ea40f5..9426a7be99 100644 --- a/keyboards/dztech/dz60rgb/v2/config.h +++ b/keyboards/dztech/dz60rgb/v2/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb/v2_1/config.h b/keyboards/dztech/dz60rgb/v2_1/config.h index d785d1e539..7e5dfd6703 100644 --- a/keyboards/dztech/dz60rgb/v2_1/config.h +++ b/keyboards/dztech/dz60rgb/v2_1/config.h @@ -47,10 +47,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_ansi/v1/config.h b/keyboards/dztech/dz60rgb_ansi/v1/config.h index 176bb03a13..ccfe91b66b 100644 --- a/keyboards/dztech/dz60rgb_ansi/v1/config.h +++ b/keyboards/dztech/dz60rgb_ansi/v1/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_ansi/v2/config.h b/keyboards/dztech/dz60rgb_ansi/v2/config.h index 5ff2cd6a8c..865ac2ab21 100644 --- a/keyboards/dztech/dz60rgb_ansi/v2/config.h +++ b/keyboards/dztech/dz60rgb_ansi/v2/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_ansi/v2_1/config.h b/keyboards/dztech/dz60rgb_ansi/v2_1/config.h index 84aa7802c3..64e2a40bda 100644 --- a/keyboards/dztech/dz60rgb_ansi/v2_1/config.h +++ b/keyboards/dztech/dz60rgb_ansi/v2_1/config.h @@ -47,10 +47,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_wkl/v1/config.h b/keyboards/dztech/dz60rgb_wkl/v1/config.h index b8c70ff4fb..9af78167ad 100644 --- a/keyboards/dztech/dz60rgb_wkl/v1/config.h +++ b/keyboards/dztech/dz60rgb_wkl/v1/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_wkl/v2/config.h b/keyboards/dztech/dz60rgb_wkl/v2/config.h index 5d715a1e0d..140d74fee0 100644 --- a/keyboards/dztech/dz60rgb_wkl/v2/config.h +++ b/keyboards/dztech/dz60rgb_wkl/v2/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz60rgb_wkl/v2_1/config.h b/keyboards/dztech/dz60rgb_wkl/v2_1/config.h index 960285b976..3ab221391e 100644 --- a/keyboards/dztech/dz60rgb_wkl/v2_1/config.h +++ b/keyboards/dztech/dz60rgb_wkl/v2_1/config.h @@ -47,10 +47,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/dztech/dz64rgb/config.h b/keyboards/dztech/dz64rgb/config.h index 224c2672cc..86848077fa 100644 --- a/keyboards/dztech/dz64rgb/config.h +++ b/keyboards/dztech/dz64rgb/config.h @@ -32,8 +32,6 @@ #define DEBOUNCE 5 #define USB_SUSPEND_WAKEUP_DELAY 5000 -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #ifdef RGB_MATRIX_ENABLE #define RGB_MATRIX_KEYPRESSES @@ -69,4 +67,4 @@ #define DRIVER_COUNT 1 #define DRIVER_LED_TOTAL 64 #endif -#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/dztech/dz65rgb/v1/config.h b/keyboards/dztech/dz65rgb/v1/config.h index 5fe0ba3eba..d281eaa51e 100644 --- a/keyboards/dztech/dz65rgb/v1/config.h +++ b/keyboards/dztech/dz65rgb/v1/config.h @@ -42,10 +42,6 @@ /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 4 # define RGB_MATRIX_LED_FLUSH_LIMIT 26 diff --git a/keyboards/dztech/dz65rgb/v2/config.h b/keyboards/dztech/dz65rgb/v2/config.h index b8677e4436..5267f42aa2 100644 --- a/keyboards/dztech/dz65rgb/v2/config.h +++ b/keyboards/dztech/dz65rgb/v2/config.h @@ -42,10 +42,6 @@ /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 4 # define RGB_MATRIX_LED_FLUSH_LIMIT 26 diff --git a/keyboards/dztech/dz65rgb/v3/config.h b/keyboards/dztech/dz65rgb/v3/config.h index ba7863f42a..6c21fa22c2 100755 --- a/keyboards/dztech/dz65rgb/v3/config.h +++ b/keyboards/dztech/dz65rgb/v3/config.h @@ -37,9 +37,7 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #ifdef RGB_MATRIX_ENABLE #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/e88/config.h b/keyboards/e88/config.h index 11b040c92d..e83dfb9b06 100644 --- a/keyboards/e88/config.h +++ b/keyboards/e88/config.h @@ -100,9 +100,5 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define QMK_ESC_OUTPUT F0 // usually COL #define QMK_ESC_INPUT B7 // usually ROW diff --git a/keyboards/ealdin/quadrant/config.h b/keyboards/ealdin/quadrant/config.h index 733b59c5a7..b37af15ea6 100644 --- a/keyboards/ealdin/quadrant/config.h +++ b/keyboards/ealdin/quadrant/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/earth_rover/config.h b/keyboards/earth_rover/config.h index 6e958f1388..2e7ceda4e1 100644 --- a/keyboards/earth_rover/config.h +++ b/keyboards/earth_rover/config.h @@ -105,10 +105,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/eco/config.h b/keyboards/eco/config.h index e5258e3a0b..5c4466985c 100644 --- a/keyboards/eco/config.h +++ b/keyboards/eco/config.h @@ -58,8 +58,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #ifdef SUBPROJECT_rev1 #include "rev1/config.h" diff --git a/keyboards/edi/hardlight/mk2/config.h b/keyboards/edi/hardlight/mk2/config.h index ab4b006827..8580aabec5 100644 --- a/keyboards/edi/hardlight/mk2/config.h +++ b/keyboards/edi/hardlight/mk2/config.h @@ -77,5 +77,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/edi/standaside/config.h b/keyboards/edi/standaside/config.h index 797a463a15..c72c915d82 100644 --- a/keyboards/edi/standaside/config.h +++ b/keyboards/edi/standaside/config.h @@ -99,6 +99,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/eek/config.h b/keyboards/eek/config.h index d8a949269e..919c112722 100644 --- a/keyboards/eek/config.h +++ b/keyboards/eek/config.h @@ -125,9 +125,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/efreet/config.h b/keyboards/efreet/config.h index ed5bb730a7..90e76d9c5a 100644 --- a/keyboards/efreet/config.h +++ b/keyboards/efreet/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/emajesty/eiri/config.h b/keyboards/emajesty/eiri/config.h index ea7afa4822..99b606770d 100644 --- a/keyboards/emajesty/eiri/config.h +++ b/keyboards/emajesty/eiri/config.h @@ -87,10 +87,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/eniigmakeyboards/ek65/config.h b/keyboards/eniigmakeyboards/ek65/config.h index bd8f59ef1b..7a272c1491 100644 --- a/keyboards/eniigmakeyboards/ek65/config.h +++ b/keyboards/eniigmakeyboards/ek65/config.h @@ -137,11 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/eniigmakeyboards/ek87/config.h b/keyboards/eniigmakeyboards/ek87/config.h index fdde69cef3..838f46f844 100644 --- a/keyboards/eniigmakeyboards/ek87/config.h +++ b/keyboards/eniigmakeyboards/ek87/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ep/40/config.h b/keyboards/ep/40/config.h index 40ed06ad24..780d64fd69 100644 --- a/keyboards/ep/40/config.h +++ b/keyboards/ep/40/config.h @@ -105,5 +105,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ep/96/config.h b/keyboards/ep/96/config.h index 83ddb873de..bcb1074867 100644 --- a/keyboards/ep/96/config.h +++ b/keyboards/ep/96/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ep/comsn/mollydooker/config.h b/keyboards/ep/comsn/mollydooker/config.h index ec4f47f870..def201cd8b 100644 --- a/keyboards/ep/comsn/mollydooker/config.h +++ b/keyboards/ep/comsn/mollydooker/config.h @@ -110,5 +110,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ergodox_ez/config.h b/keyboards/ergodox_ez/config.h index 109a80d2c5..f25ff162cd 100644 --- a/keyboards/ergodox_ez/config.h +++ b/keyboards/ergodox_ez/config.h @@ -205,6 +205,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + //#define DEBUG_MATRIX_SCAN_RATE diff --git a/keyboards/ergosaurus/config.h b/keyboards/ergosaurus/config.h index e4981e0013..41f9a09311 100644 --- a/keyboards/ergosaurus/config.h +++ b/keyboards/ergosaurus/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ergoslab/rev1/config.h b/keyboards/ergoslab/rev1/config.h index c9382ea765..b754a7810c 100644 --- a/keyboards/ergoslab/rev1/config.h +++ b/keyboards/ergoslab/rev1/config.h @@ -66,5 +66,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ergotravel/rev1/config.h b/keyboards/ergotravel/rev1/config.h index dc08ceab8e..096a85d370 100644 --- a/keyboards/ergotravel/rev1/config.h +++ b/keyboards/ergotravel/rev1/config.h @@ -76,5 +76,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ericrlau/numdiscipline/rev1/config.h b/keyboards/ericrlau/numdiscipline/rev1/config.h index 82035518a6..72abf556d4 100644 --- a/keyboards/ericrlau/numdiscipline/rev1/config.h +++ b/keyboards/ericrlau/numdiscipline/rev1/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/esca/getawayvan/config.h b/keyboards/esca/getawayvan/config.h index 3b718c5835..34498cc3fb 100644 --- a/keyboards/esca/getawayvan/config.h +++ b/keyboards/esca/getawayvan/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/esca/getawayvan_f042/config.h b/keyboards/esca/getawayvan_f042/config.h index 8921e9db4d..6812d4e52b 100644 --- a/keyboards/esca/getawayvan_f042/config.h +++ b/keyboards/esca/getawayvan_f042/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/eternal_keypad/config.h b/keyboards/eternal_keypad/config.h index fbcdb45021..5b5ad02f44 100644 --- a/keyboards/eternal_keypad/config.h +++ b/keyboards/eternal_keypad/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/evil80/config.h b/keyboards/evil80/config.h index 4036b473a0..6876c0e086 100644 --- a/keyboards/evil80/config.h +++ b/keyboards/evil80/config.h @@ -55,5 +55,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/evolv/config.h b/keyboards/evolv/config.h index 59223cd2c9..3a3ff3be35 100644 --- a/keyboards/evolv/config.h +++ b/keyboards/evolv/config.h @@ -77,5 +77,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/evyd13/atom47/rev5/config.h b/keyboards/evyd13/atom47/rev5/config.h index 383aa23789..25c419b4cd 100644 --- a/keyboards/evyd13/atom47/rev5/config.h +++ b/keyboards/evyd13/atom47/rev5/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/evyd13/eon40/config.h b/keyboards/evyd13/eon40/config.h index 8f39d0532e..14cbe42099 100644 --- a/keyboards/evyd13/eon40/config.h +++ b/keyboards/evyd13/eon40/config.h @@ -138,8 +138,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/eon65/config.h b/keyboards/evyd13/eon65/config.h index 7d4e80d5bb..08922a2d4c 100644 --- a/keyboards/evyd13/eon65/config.h +++ b/keyboards/evyd13/eon65/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/eon75/config.h b/keyboards/evyd13/eon75/config.h index da2775fd40..203cfe8a7d 100644 --- a/keyboards/evyd13/eon75/config.h +++ b/keyboards/evyd13/eon75/config.h @@ -140,8 +140,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/eon87/config.h b/keyboards/evyd13/eon87/config.h index 18a21bac27..bfa593db51 100644 --- a/keyboards/evyd13/eon87/config.h +++ b/keyboards/evyd13/eon87/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/eon95/config.h b/keyboards/evyd13/eon95/config.h index 48de3f3782..6a6b329c29 100644 --- a/keyboards/evyd13/eon95/config.h +++ b/keyboards/evyd13/eon95/config.h @@ -140,8 +140,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/gh80_1800/config.h b/keyboards/evyd13/gh80_1800/config.h index 26ad8a8b13..d2fa370c0d 100644 --- a/keyboards/evyd13/gh80_1800/config.h +++ b/keyboards/evyd13/gh80_1800/config.h @@ -140,8 +140,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/gh80_3700/config.h b/keyboards/evyd13/gh80_3700/config.h index 200f179cf7..d05ca87958 100644 --- a/keyboards/evyd13/gh80_3700/config.h +++ b/keyboards/evyd13/gh80_3700/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // Define rotary encoder #define ENCODERS_PAD_A { F1 } diff --git a/keyboards/evyd13/gud70/config.h b/keyboards/evyd13/gud70/config.h index 914a87f4f5..395d1c303e 100644 --- a/keyboards/evyd13/gud70/config.h +++ b/keyboards/evyd13/gud70/config.h @@ -141,10 +141,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/evyd13/minitomic/config.h b/keyboards/evyd13/minitomic/config.h index ad31fd0aec..01af62d69d 100644 --- a/keyboards/evyd13/minitomic/config.h +++ b/keyboards/evyd13/minitomic/config.h @@ -138,8 +138,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/mx5160/config.h b/keyboards/evyd13/mx5160/config.h index 5cce240a87..3d25e1704f 100644 --- a/keyboards/evyd13/mx5160/config.h +++ b/keyboards/evyd13/mx5160/config.h @@ -144,8 +144,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/nt660/config.h b/keyboards/evyd13/nt660/config.h index 225f2ccf2d..f633a4206e 100644 --- a/keyboards/evyd13/nt660/config.h +++ b/keyboards/evyd13/nt660/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/evyd13/nt750/config.h b/keyboards/evyd13/nt750/config.h index 35fc000671..076bb344a5 100644 --- a/keyboards/evyd13/nt750/config.h +++ b/keyboards/evyd13/nt750/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/evyd13/nt980/config.h b/keyboards/evyd13/nt980/config.h index 1509dde061..e483ab46c9 100644 --- a/keyboards/evyd13/nt980/config.h +++ b/keyboards/evyd13/nt980/config.h @@ -142,10 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/evyd13/omrontkl/config.h b/keyboards/evyd13/omrontkl/config.h index d61b338e97..40f8384831 100644 --- a/keyboards/evyd13/omrontkl/config.h +++ b/keyboards/evyd13/omrontkl/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/pockettype/config.h b/keyboards/evyd13/pockettype/config.h index fa45630c1a..b62c3549f8 100644 --- a/keyboards/evyd13/pockettype/config.h +++ b/keyboards/evyd13/pockettype/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/quackfire/config.h b/keyboards/evyd13/quackfire/config.h index 151219a016..4df2abd5a8 100644 --- a/keyboards/evyd13/quackfire/config.h +++ b/keyboards/evyd13/quackfire/config.h @@ -141,8 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 6 diff --git a/keyboards/evyd13/solheim68/config.h b/keyboards/evyd13/solheim68/config.h index d61e095f1d..ef449ab7d4 100644 --- a/keyboards/evyd13/solheim68/config.h +++ b/keyboards/evyd13/solheim68/config.h @@ -135,8 +135,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/wasdat/config.h b/keyboards/evyd13/wasdat/config.h index 38f9fe4bda..e151496aed 100644 --- a/keyboards/evyd13/wasdat/config.h +++ b/keyboards/evyd13/wasdat/config.h @@ -142,8 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/evyd13/wasdat_code/config.h b/keyboards/evyd13/wasdat_code/config.h index 6c39403e52..ae009c1c29 100644 --- a/keyboards/evyd13/wasdat_code/config.h +++ b/keyboards/evyd13/wasdat_code/config.h @@ -148,8 +148,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 2 diff --git a/keyboards/exclusive/e7v1se/config.h b/keyboards/exclusive/e7v1se/config.h index 1bb0eb3acf..cce08878eb 100644 --- a/keyboards/exclusive/e7v1se/config.h +++ b/keyboards/exclusive/e7v1se/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/exclusive/e85/config.h b/keyboards/exclusive/e85/config.h index cc4fcd97d0..2683403204 100644 --- a/keyboards/exclusive/e85/config.h +++ b/keyboards/exclusive/e85/config.h @@ -121,10 +121,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/exent/config.h b/keyboards/exent/config.h index c6f4452708..e9dc026867 100644 --- a/keyboards/exent/config.h +++ b/keyboards/exent/config.h @@ -76,10 +76,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/eyeohdesigns/babyv/config.h b/keyboards/eyeohdesigns/babyv/config.h index c49a039df2..f90d68e2e5 100644 --- a/keyboards/eyeohdesigns/babyv/config.h +++ b/keyboards/eyeohdesigns/babyv/config.h @@ -54,7 +54,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fc660c/config.h b/keyboards/fc660c/config.h index 460881cb17..7df5811f42 100644 --- a/keyboards/fc660c/config.h +++ b/keyboards/fc660c/config.h @@ -70,8 +70,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // higher value means deeper actuation point, less sensitive // be careful and only make small adjustments (steps of 1 or 2). diff --git a/keyboards/fc980c/config.h b/keyboards/fc980c/config.h index b0bffef760..250e7336a9 100644 --- a/keyboards/fc980c/config.h +++ b/keyboards/fc980c/config.h @@ -77,8 +77,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // higher value means deeper actuation point, less sensitive // be careful and only make small adjustments (steps of 1 or 2). diff --git a/keyboards/ffkeebs/puca/config.h b/keyboards/ffkeebs/puca/config.h index 29bb9a782b..e8e57c72e8 100644 --- a/keyboards/ffkeebs/puca/config.h +++ b/keyboards/ffkeebs/puca/config.h @@ -62,8 +62,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/fjlabs/7vhotswap/config.h b/keyboards/fjlabs/7vhotswap/config.h index a34bf8f5fa..66ee195a58 100644 --- a/keyboards/fjlabs/7vhotswap/config.h +++ b/keyboards/fjlabs/7vhotswap/config.h @@ -114,5 +114,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/ad65/config.h b/keyboards/fjlabs/ad65/config.h index 8f9d672d83..3bbf7a01d1 100644 --- a/keyboards/fjlabs/ad65/config.h +++ b/keyboards/fjlabs/ad65/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/bks65/config.h b/keyboards/fjlabs/bks65/config.h index 37cb2b687b..b1deccd4e1 100644 --- a/keyboards/fjlabs/bks65/config.h +++ b/keyboards/fjlabs/bks65/config.h @@ -116,5 +116,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/bks65solder/config.h b/keyboards/fjlabs/bks65solder/config.h index 6b3839c8c8..5dff84a0c1 100644 --- a/keyboards/fjlabs/bks65solder/config.h +++ b/keyboards/fjlabs/bks65solder/config.h @@ -113,5 +113,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/bolsa65/config.h b/keyboards/fjlabs/bolsa65/config.h index c53d2ab656..bf389ee445 100644 --- a/keyboards/fjlabs/bolsa65/config.h +++ b/keyboards/fjlabs/bolsa65/config.h @@ -113,5 +113,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/kf87/config.h b/keyboards/fjlabs/kf87/config.h index 38bd7566bb..b133e375bb 100644 --- a/keyboards/fjlabs/kf87/config.h +++ b/keyboards/fjlabs/kf87/config.h @@ -118,5 +118,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/kyuu/config.h b/keyboards/fjlabs/kyuu/config.h index b73d6c8f85..75f9643a79 100644 --- a/keyboards/fjlabs/kyuu/config.h +++ b/keyboards/fjlabs/kyuu/config.h @@ -116,5 +116,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/ldk65/config.h b/keyboards/fjlabs/ldk65/config.h index 1c8eaff2ec..15626c0700 100644 --- a/keyboards/fjlabs/ldk65/config.h +++ b/keyboards/fjlabs/ldk65/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/midway60/config.h b/keyboards/fjlabs/midway60/config.h index d5a39c89c0..f70a932a51 100644 --- a/keyboards/fjlabs/midway60/config.h +++ b/keyboards/fjlabs/midway60/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/mk61rgbansi/config.h b/keyboards/fjlabs/mk61rgbansi/config.h index 4d459b6f88..fdc8571344 100644 --- a/keyboards/fjlabs/mk61rgbansi/config.h +++ b/keyboards/fjlabs/mk61rgbansi/config.h @@ -117,5 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/polaris/config.h b/keyboards/fjlabs/polaris/config.h index d622778ce0..6efae34205 100644 --- a/keyboards/fjlabs/polaris/config.h +++ b/keyboards/fjlabs/polaris/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/ready100/config.h b/keyboards/fjlabs/ready100/config.h index a32f9d94ac..31adbd7f4b 100644 --- a/keyboards/fjlabs/ready100/config.h +++ b/keyboards/fjlabs/ready100/config.h @@ -115,5 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/tf60ansi/config.h b/keyboards/fjlabs/tf60ansi/config.h index eede9b7544..1b19a0e2ec 100644 --- a/keyboards/fjlabs/tf60ansi/config.h +++ b/keyboards/fjlabs/tf60ansi/config.h @@ -117,5 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/tf60v2/config.h b/keyboards/fjlabs/tf60v2/config.h index 11cb92a33f..0c1a069464 100644 --- a/keyboards/fjlabs/tf60v2/config.h +++ b/keyboards/fjlabs/tf60v2/config.h @@ -117,5 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/fjlabs/tf65rgbv2/config.h b/keyboards/fjlabs/tf65rgbv2/config.h index 65e1932f43..111b2c8928 100644 --- a/keyboards/fjlabs/tf65rgbv2/config.h +++ b/keyboards/fjlabs/tf65rgbv2/config.h @@ -117,5 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/flehrad/downbubble/config.h b/keyboards/flehrad/downbubble/config.h index b8d69244eb..fa13006a97 100644 --- a/keyboards/flehrad/downbubble/config.h +++ b/keyboards/flehrad/downbubble/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/fleuron/config.h b/keyboards/fleuron/config.h index fae7d941ae..24212bfdc1 100644 --- a/keyboards/fleuron/config.h +++ b/keyboards/fleuron/config.h @@ -105,8 +105,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_DI_PIN E6 // The pin the LED strip is connected to #define RGBLED_NUM 18 // Number of LEDs in your strip diff --git a/keyboards/fluorite/config.h b/keyboards/fluorite/config.h index 9be3008684..397fdaaebf 100644 --- a/keyboards/fluorite/config.h +++ b/keyboards/fluorite/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/flxlb/zplit/config.h b/keyboards/flxlb/zplit/config.h index 83fe084844..74c7339bdc 100644 --- a/keyboards/flxlb/zplit/config.h +++ b/keyboards/flxlb/zplit/config.h @@ -86,5 +86,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/flygone60/rev3/config.h b/keyboards/flygone60/rev3/config.h index e398b1dc60..b670def338 100644 --- a/keyboards/flygone60/rev3/config.h +++ b/keyboards/flygone60/rev3/config.h @@ -54,7 +54,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/foostan/cornelius/config.h b/keyboards/foostan/cornelius/config.h index b50b308255..a3e784150f 100644 --- a/keyboards/foostan/cornelius/config.h +++ b/keyboards/foostan/cornelius/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/for_science/config.h b/keyboards/for_science/config.h index 7428e5a564..9c2f484dc9 100644 --- a/keyboards/for_science/config.h +++ b/keyboards/for_science/config.h @@ -70,5 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/forever65/config.h b/keyboards/forever65/config.h index 4ea906b5a7..0de59946c4 100644 --- a/keyboards/forever65/config.h +++ b/keyboards/forever65/config.h @@ -64,8 +64,4 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE diff --git a/keyboards/fortitude60/rev1/config.h b/keyboards/fortitude60/rev1/config.h index 472472329c..e4366f959f 100644 --- a/keyboards/fortitude60/rev1/config.h +++ b/keyboards/fortitude60/rev1/config.h @@ -86,5 +86,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/foxlab/key65/hotswap/config.h b/keyboards/foxlab/key65/hotswap/config.h index 621c640720..8c0e5a1b9e 100644 --- a/keyboards/foxlab/key65/hotswap/config.h +++ b/keyboards/foxlab/key65/hotswap/config.h @@ -115,7 +115,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/foxlab/key65/universal/config.h b/keyboards/foxlab/key65/universal/config.h index 241d2ce2cb..44911bed77 100644 --- a/keyboards/foxlab/key65/universal/config.h +++ b/keyboards/foxlab/key65/universal/config.h @@ -115,7 +115,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/foxlab/leaf60/hotswap/config.h b/keyboards/foxlab/leaf60/hotswap/config.h index 6092a24f01..f224957c59 100644 --- a/keyboards/foxlab/leaf60/hotswap/config.h +++ b/keyboards/foxlab/leaf60/hotswap/config.h @@ -119,8 +119,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/foxlab/leaf60/universal/config.h b/keyboards/foxlab/leaf60/universal/config.h index b4214882bc..d25e145361 100644 --- a/keyboards/foxlab/leaf60/universal/config.h +++ b/keyboards/foxlab/leaf60/universal/config.h @@ -119,8 +119,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/foxlab/time80/config.h b/keyboards/foxlab/time80/config.h index 8fea3e7e6e..27013c5c67 100644 --- a/keyboards/foxlab/time80/config.h +++ b/keyboards/foxlab/time80/config.h @@ -120,10 +120,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/gboards/georgi/config.h b/keyboards/gboards/georgi/config.h index 5cd2f1620e..f2e73da899 100644 --- a/keyboards/gboards/georgi/config.h +++ b/keyboards/gboards/georgi/config.h @@ -27,9 +27,7 @@ along with this program. If not, see . #define VERBOSE #define FORCE_NKRO -#define NO_ACTION_FUNCTION #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO #define IGNORE_MOD_TAP_INTERRUPT /* USB Device descriptor parameter */ diff --git a/keyboards/gh60/revc/config.h b/keyboards/gh60/revc/config.h index 4483473a62..527bf4c959 100644 --- a/keyboards/gh60/revc/config.h +++ b/keyboards/gh60/revc/config.h @@ -103,5 +103,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/gh60/satan/config.h b/keyboards/gh60/satan/config.h index 2b87f925de..98218d8466 100644 --- a/keyboards/gh60/satan/config.h +++ b/keyboards/gh60/satan/config.h @@ -83,5 +83,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ghs/rar/config.h b/keyboards/ghs/rar/config.h index 10755f99c2..d97e8841f1 100644 --- a/keyboards/ghs/rar/config.h +++ b/keyboards/ghs/rar/config.h @@ -110,10 +110,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/gkeyboard/gkb_m16/config.h b/keyboards/gkeyboard/gkb_m16/config.h index be1861b90f..690ecf42d1 100644 --- a/keyboards/gkeyboard/gkb_m16/config.h +++ b/keyboards/gkeyboard/gkb_m16/config.h @@ -142,10 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/glenpickle/chimera_ergo/config.h b/keyboards/glenpickle/chimera_ergo/config.h index 3c0cc5c162..616d8af24e 100644 --- a/keyboards/glenpickle/chimera_ergo/config.h +++ b/keyboards/glenpickle/chimera_ergo/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/glenpickle/chimera_ls/config.h b/keyboards/glenpickle/chimera_ls/config.h index ca92e1e2e4..f5da32e3c3 100644 --- a/keyboards/glenpickle/chimera_ls/config.h +++ b/keyboards/glenpickle/chimera_ls/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/glenpickle/chimera_ortho/config.h b/keyboards/glenpickle/chimera_ortho/config.h index 3d86343a67..8ae25c1eb4 100644 --- a/keyboards/glenpickle/chimera_ortho/config.h +++ b/keyboards/glenpickle/chimera_ortho/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/glenpickle/chimera_ortho_plus/config.h b/keyboards/glenpickle/chimera_ortho_plus/config.h index ebffb85657..4846a1b20d 100644 --- a/keyboards/glenpickle/chimera_ortho_plus/config.h +++ b/keyboards/glenpickle/chimera_ortho_plus/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/gray_studio/space65/config.h b/keyboards/gray_studio/space65/config.h index 6091515b52..23bf1e7f94 100644 --- a/keyboards/gray_studio/space65/config.h +++ b/keyboards/gray_studio/space65/config.h @@ -130,8 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/hadron/config.h b/keyboards/hadron/config.h index fc0e920eb9..3281984d19 100644 --- a/keyboards/hadron/config.h +++ b/keyboards/hadron/config.h @@ -61,5 +61,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/hadron/ver3/config.h b/keyboards/hadron/ver3/config.h index 54fab6662d..c61cc9a1e0 100644 --- a/keyboards/hadron/ver3/config.h +++ b/keyboards/hadron/ver3/config.h @@ -116,8 +116,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Haptic Driver initialization settings * Feedback Control Settings */ diff --git a/keyboards/halfcliff/config.h b/keyboards/halfcliff/config.h index 287fd2f4ac..9cd03089ba 100644 --- a/keyboards/halfcliff/config.h +++ b/keyboards/halfcliff/config.h @@ -63,7 +63,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/han60/config.h b/keyboards/han60/config.h index a695cd92a3..c96cb6782f 100644 --- a/keyboards/han60/config.h +++ b/keyboards/han60/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/412_64/config.h b/keyboards/handwired/412_64/config.h index 6cc094d6d5..df8961dc04 100644 --- a/keyboards/handwired/412_64/config.h +++ b/keyboards/handwired/412_64/config.h @@ -90,6 +90,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/amigopunk/config.h b/keyboards/handwired/amigopunk/config.h index 29141234d4..473f33aa9d 100644 --- a/keyboards/handwired/amigopunk/config.h +++ b/keyboards/handwired/amigopunk/config.h @@ -51,7 +51,3 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/aranck/config.h b/keyboards/handwired/aranck/config.h index 75f5232f90..88b394a29e 100644 --- a/keyboards/handwired/aranck/config.h +++ b/keyboards/handwired/aranck/config.h @@ -149,8 +149,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/arrow_pad/config.h b/keyboards/handwired/arrow_pad/config.h index dcbdef2fcc..c8b19524bb 100644 --- a/keyboards/handwired/arrow_pad/config.h +++ b/keyboards/handwired/arrow_pad/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/atreus50/config.h b/keyboards/handwired/atreus50/config.h index 4a385c35cf..0356bf3d7d 100644 --- a/keyboards/handwired/atreus50/config.h +++ b/keyboards/handwired/atreus50/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/baredev/rev1/config.h b/keyboards/handwired/baredev/rev1/config.h index f3d36fd08b..430018495a 100644 --- a/keyboards/handwired/baredev/rev1/config.h +++ b/keyboards/handwired/baredev/rev1/config.h @@ -18,8 +18,3 @@ along with this program. If not, see . #pragma once #include "config_common.h" - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/bolek/config.h b/keyboards/handwired/bolek/config.h index ecf0b0de36..aafaa62174 100644 --- a/keyboards/handwired/bolek/config.h +++ b/keyboards/handwired/bolek/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/brain/config.h b/keyboards/handwired/brain/config.h index 2ca3cf1d1e..87aec1a299 100644 --- a/keyboards/handwired/brain/config.h +++ b/keyboards/handwired/brain/config.h @@ -96,8 +96,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION //#define PREVENT_STUCK_MODIFIERS //#define TAPPING_TERM 150 diff --git a/keyboards/handwired/bstk100/config.h b/keyboards/handwired/bstk100/config.h index 6769f9b5c0..29a5afa35e 100644 --- a/keyboards/handwired/bstk100/config.h +++ b/keyboards/handwired/bstk100/config.h @@ -147,10 +147,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/ck4x4/config.h b/keyboards/handwired/ck4x4/config.h index 61a5d3baf9..428a163170 100644 --- a/keyboards/handwired/ck4x4/config.h +++ b/keyboards/handwired/ck4x4/config.h @@ -62,6 +62,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/cmd60/config.h b/keyboards/handwired/cmd60/config.h index ba54cab247..14bcdec530 100644 --- a/keyboards/handwired/cmd60/config.h +++ b/keyboards/handwired/cmd60/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/co60/rev1/config.h b/keyboards/handwired/co60/rev1/config.h index 42524994ae..a41bde6fa2 100644 --- a/keyboards/handwired/co60/rev1/config.h +++ b/keyboards/handwired/co60/rev1/config.h @@ -108,5 +108,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/dactyl_left/config.h b/keyboards/handwired/dactyl_left/config.h index 1e4d279178..c962f6e176 100644 --- a/keyboards/handwired/dactyl_left/config.h +++ b/keyboards/handwired/dactyl_left/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/dactyl_promicro/config.h b/keyboards/handwired/dactyl_promicro/config.h index 29547f2533..19874be799 100644 --- a/keyboards/handwired/dactyl_promicro/config.h +++ b/keyboards/handwired/dactyl_promicro/config.h @@ -79,5 +79,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/dactyl_rah/config.h b/keyboards/handwired/dactyl_rah/config.h index 2ffe4e8a52..b5f272ba70 100644 --- a/keyboards/handwired/dactyl_rah/config.h +++ b/keyboards/handwired/dactyl_rah/config.h @@ -70,9 +70,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/dc/mc/001/config.h b/keyboards/handwired/dc/mc/001/config.h index 4c687ae7fa..5cba80831f 100644 --- a/keyboards/handwired/dc/mc/001/config.h +++ b/keyboards/handwired/dc/mc/001/config.h @@ -70,10 +70,6 @@ along with this program. If not, see . #define NO_ACTION_TAPPING #define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // The (default) Stop key // Doesn't work, though. Maybe becuase of the bootloader that's in use? diff --git a/keyboards/handwired/elrgo_s/config.h b/keyboards/handwired/elrgo_s/config.h index b2ef4681e5..0ba6f77586 100644 --- a/keyboards/handwired/elrgo_s/config.h +++ b/keyboards/handwired/elrgo_s/config.h @@ -54,5 +54,3 @@ Copyright 2021 Yaroslav Smirnov //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/ergocheap/config.h b/keyboards/handwired/ergocheap/config.h index f563036642..26905e8cb3 100644 --- a/keyboards/handwired/ergocheap/config.h +++ b/keyboards/handwired/ergocheap/config.h @@ -63,5 +63,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/evk/v1_3/config.h b/keyboards/handwired/evk/v1_3/config.h index 2ddde6548e..374ad9d0c3 100644 --- a/keyboards/handwired/evk/v1_3/config.h +++ b/keyboards/handwired/evk/v1_3/config.h @@ -140,8 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/fc200rt_qmk/config.h b/keyboards/handwired/fc200rt_qmk/config.h index 4f10da75eb..2eec7f584c 100644 --- a/keyboards/handwired/fc200rt_qmk/config.h +++ b/keyboards/handwired/fc200rt_qmk/config.h @@ -73,7 +73,3 @@ along with this program. If not, see . * */ //#define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/fivethirteen/config.h b/keyboards/handwired/fivethirteen/config.h index 45b459a0ad..6ef436506b 100644 --- a/keyboards/handwired/fivethirteen/config.h +++ b/keyboards/handwired/fivethirteen/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/floorboard/config.h b/keyboards/handwired/floorboard/config.h index 7bac3cd2dc..74be3e4426 100644 --- a/keyboards/handwired/floorboard/config.h +++ b/keyboards/handwired/floorboard/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/frankie_macropad/config.h b/keyboards/handwired/frankie_macropad/config.h index 5047972d18..57e6d7e0dd 100644 --- a/keyboards/handwired/frankie_macropad/config.h +++ b/keyboards/handwired/frankie_macropad/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING #define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 2 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/frenchdev/config.h b/keyboards/handwired/frenchdev/config.h index 7b2fb6e002..84f16ea96e 100644 --- a/keyboards/handwired/frenchdev/config.h +++ b/keyboards/handwired/frenchdev/config.h @@ -76,6 +76,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION + //#define DEBUG_MATRIX_SCAN_RATE diff --git a/keyboards/handwired/gamenum/config.h b/keyboards/handwired/gamenum/config.h index 1be44a1156..6fba6586da 100644 --- a/keyboards/handwired/gamenum/config.h +++ b/keyboards/handwired/gamenum/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/hacked_motospeed/config.h b/keyboards/handwired/hacked_motospeed/config.h index 589b62c01f..062376222f 100644 --- a/keyboards/handwired/hacked_motospeed/config.h +++ b/keyboards/handwired/hacked_motospeed/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/heisenberg/config.h b/keyboards/handwired/heisenberg/config.h index 9bf73440c8..9438f3a082 100644 --- a/keyboards/handwired/heisenberg/config.h +++ b/keyboards/handwired/heisenberg/config.h @@ -149,8 +149,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/hnah108/config.h b/keyboards/handwired/hnah108/config.h index b08f24ed86..e0249ba0c2 100644 --- a/keyboards/handwired/hnah108/config.h +++ b/keyboards/handwired/hnah108/config.h @@ -158,10 +158,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/hnah40/config.h b/keyboards/handwired/hnah40/config.h index 6e4493d47f..123c4ca38a 100644 --- a/keyboards/handwired/hnah40/config.h +++ b/keyboards/handwired/hnah40/config.h @@ -115,5 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/ibm122m/config.h b/keyboards/handwired/ibm122m/config.h index c58b8897ed..cf65a8b909 100644 --- a/keyboards/handwired/ibm122m/config.h +++ b/keyboards/handwired/ibm122m/config.h @@ -108,5 +108,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/jtallbean/split_65/config.h b/keyboards/handwired/jtallbean/split_65/config.h index 1620dde024..196b0bc55d 100644 --- a/keyboards/handwired/jtallbean/split_65/config.h +++ b/keyboards/handwired/jtallbean/split_65/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/juliet/config.h b/keyboards/handwired/juliet/config.h index bab4fe3333..5189017dfb 100644 --- a/keyboards/handwired/juliet/config.h +++ b/keyboards/handwired/juliet/config.h @@ -133,9 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/kbod/config.h b/keyboards/handwired/kbod/config.h index b8b40728cd..8cf38f59dc 100644 --- a/keyboards/handwired/kbod/config.h +++ b/keyboards/handwired/kbod/config.h @@ -100,8 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #undef TAPPING_TOGGLE #define TAPPING_TOGGLE 2 diff --git a/keyboards/handwired/ks63/config.h b/keyboards/handwired/ks63/config.h index e49d090678..b75346e6f5 100644 --- a/keyboards/handwired/ks63/config.h +++ b/keyboards/handwired/ks63/config.h @@ -73,8 +73,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MASTER_LEFT #define USE_SERIAL diff --git a/keyboards/handwired/leftynumpad/config.h b/keyboards/handwired/leftynumpad/config.h index 9059bfe760..db89057e62 100644 --- a/keyboards/handwired/leftynumpad/config.h +++ b/keyboards/handwired/leftynumpad/config.h @@ -96,7 +96,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/lemonpad/config.h b/keyboards/handwired/lemonpad/config.h index 46369cb999..c4e488f572 100644 --- a/keyboards/handwired/lemonpad/config.h +++ b/keyboards/handwired/lemonpad/config.h @@ -131,10 +131,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/macroboard/config.h b/keyboards/handwired/macroboard/config.h index 92b633d75c..fa49ae4e6f 100644 --- a/keyboards/handwired/macroboard/config.h +++ b/keyboards/handwired/macroboard/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/magicforce61/config.h b/keyboards/handwired/magicforce61/config.h index 193d85d2f3..e54ee545da 100644 --- a/keyboards/handwired/magicforce61/config.h +++ b/keyboards/handwired/magicforce61/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/magicforce68/config.h b/keyboards/handwired/magicforce68/config.h index 8ad3269d56..0539fab023 100644 --- a/keyboards/handwired/magicforce68/config.h +++ b/keyboards/handwired/magicforce68/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/mechboards_micropad/config.h b/keyboards/handwired/mechboards_micropad/config.h index 3eec736aea..f008d596f1 100644 --- a/keyboards/handwired/mechboards_micropad/config.h +++ b/keyboards/handwired/mechboards_micropad/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/meck_tkl/config.h b/keyboards/handwired/meck_tkl/config.h index 5c22e781e4..7029e22530 100644 --- a/keyboards/handwired/meck_tkl/config.h +++ b/keyboards/handwired/meck_tkl/config.h @@ -38,10 +38,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/minorca/config.h b/keyboards/handwired/minorca/config.h index 9828c03e11..e987ba67f0 100644 --- a/keyboards/handwired/minorca/config.h +++ b/keyboards/handwired/minorca/config.h @@ -67,9 +67,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* bootmagic salt key */ #define BOOTMAGIC_KEY_SALT KC_ESC diff --git a/keyboards/handwired/ms_sculpt_mobile/config.h b/keyboards/handwired/ms_sculpt_mobile/config.h index c3c2a0962e..13f5a588b6 100644 --- a/keyboards/handwired/ms_sculpt_mobile/config.h +++ b/keyboards/handwired/ms_sculpt_mobile/config.h @@ -82,5 +82,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/nicekey/config.h b/keyboards/handwired/nicekey/config.h index 19e707c1fc..7a41e62a57 100644 --- a/keyboards/handwired/nicekey/config.h +++ b/keyboards/handwired/nicekey/config.h @@ -62,5 +62,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/not_so_minidox/config.h b/keyboards/handwired/not_so_minidox/config.h index 177552e2a6..aa6319cb0f 100644 --- a/keyboards/handwired/not_so_minidox/config.h +++ b/keyboards/handwired/not_so_minidox/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/numpad20/config.h b/keyboards/handwired/numpad20/config.h index dba74f43bd..4b9ca1baf3 100644 --- a/keyboards/handwired/numpad20/config.h +++ b/keyboards/handwired/numpad20/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/obuwunkunubi/spaget/config.h b/keyboards/handwired/obuwunkunubi/spaget/config.h index 56fb46ad91..1558acb55a 100644 --- a/keyboards/handwired/obuwunkunubi/spaget/config.h +++ b/keyboards/handwired/obuwunkunubi/spaget/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/oem_ansi_fullsize/config.h b/keyboards/handwired/oem_ansi_fullsize/config.h index 7219bd3403..710b4a871b 100644 --- a/keyboards/handwired/oem_ansi_fullsize/config.h +++ b/keyboards/handwired/oem_ansi_fullsize/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/onekey/config.h b/keyboards/handwired/onekey/config.h index 950146a5d3..f491d4d393 100644 --- a/keyboards/handwired/onekey/config.h +++ b/keyboards/handwired/onekey/config.h @@ -59,10 +59,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/ortho5x13/config.h b/keyboards/handwired/ortho5x13/config.h index d831940b8d..7731d29f0c 100644 --- a/keyboards/handwired/ortho5x13/config.h +++ b/keyboards/handwired/ortho5x13/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/ortho5x14/config.h b/keyboards/handwired/ortho5x14/config.h index 33ad68b0b1..a5aab6168f 100644 --- a/keyboards/handwired/ortho5x14/config.h +++ b/keyboards/handwired/ortho5x14/config.h @@ -104,6 +104,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/owlet60/config.h b/keyboards/handwired/owlet60/config.h index d20e1fa975..9613a97580 100644 --- a/keyboards/handwired/owlet60/config.h +++ b/keyboards/handwired/owlet60/config.h @@ -137,8 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/pilcrow/config.h b/keyboards/handwired/pilcrow/config.h index 15f487082b..3ed0f5de6a 100644 --- a/keyboards/handwired/pilcrow/config.h +++ b/keyboards/handwired/pilcrow/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/promethium/config.h b/keyboards/handwired/promethium/config.h index 612675c63a..68f83035f9 100644 --- a/keyboards/handwired/promethium/config.h +++ b/keyboards/handwired/promethium/config.h @@ -123,8 +123,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define PS2_MOUSE_INIT_DELAY 2000 #define BATTERY_POLL 30000 diff --git a/keyboards/handwired/reddot/config.h b/keyboards/handwired/reddot/config.h index 196f08f6f5..6028971dda 100755 --- a/keyboards/handwired/reddot/config.h +++ b/keyboards/handwired/reddot/config.h @@ -98,5 +98,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/retro_refit/config.h b/keyboards/handwired/retro_refit/config.h index 74cebfb825..beb9b26deb 100644 --- a/keyboards/handwired/retro_refit/config.h +++ b/keyboards/handwired/retro_refit/config.h @@ -85,5 +85,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/sick68/config.h b/keyboards/handwired/sick68/config.h index 2205126cc3..16b5fc76e7 100644 --- a/keyboards/handwired/sick68/config.h +++ b/keyboards/handwired/sick68/config.h @@ -139,10 +139,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/snatchpad/config.h b/keyboards/handwired/snatchpad/config.h index c0d337d5df..c0ac5ebbde 100644 --- a/keyboards/handwired/snatchpad/config.h +++ b/keyboards/handwired/snatchpad/config.h @@ -136,10 +136,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/sono1/config.h b/keyboards/handwired/sono1/config.h index 3b06342a1a..91519e884a 100644 --- a/keyboards/handwired/sono1/config.h +++ b/keyboards/handwired/sono1/config.h @@ -36,14 +36,10 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 /* mechanical locking support. NumLock key on the numpad uses Alps SKCL Lock switch */ #define LOCKING_SUPPORT_ENABLE -#define LOCKING_RESYNC_ENABLE \ No newline at end of file +#define LOCKING_RESYNC_ENABLE diff --git a/keyboards/handwired/split65/promicro/config.h b/keyboards/handwired/split65/promicro/config.h index 824dc76402..e700578e08 100644 --- a/keyboards/handwired/split65/promicro/config.h +++ b/keyboards/handwired/split65/promicro/config.h @@ -47,7 +47,5 @@ // Feature diable options //#define NO_DEBUG //#define NO_PRINT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define OLED_DISPLAY_128X64 diff --git a/keyboards/handwired/split65/stm32/config.h b/keyboards/handwired/split65/stm32/config.h index 28df964423..b173481280 100644 --- a/keyboards/handwired/split65/stm32/config.h +++ b/keyboards/handwired/split65/stm32/config.h @@ -54,7 +54,5 @@ // Feature diable options //#define NO_DEBUG //#define NO_PRINT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define OLED_DISPLAY_128X64 diff --git a/keyboards/handwired/split89/config.h b/keyboards/handwired/split89/config.h index d78535a201..7927c1d83c 100644 --- a/keyboards/handwired/split89/config.h +++ b/keyboards/handwired/split89/config.h @@ -154,10 +154,6 @@ COLS = number of cols per side which curently needs to be equal so there are bla //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/splittest/config.h b/keyboards/handwired/splittest/config.h index 93b5164d76..d4816e4355 100644 --- a/keyboards/handwired/splittest/config.h +++ b/keyboards/handwired/splittest/config.h @@ -65,5 +65,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/sticc14/config.h b/keyboards/handwired/sticc14/config.h index 6c296d7893..c269f4706d 100644 --- a/keyboards/handwired/sticc14/config.h +++ b/keyboards/handwired/sticc14/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/symmetric70_proto/promicro/config.h b/keyboards/handwired/symmetric70_proto/promicro/config.h index 2060c62606..570de7039d 100644 --- a/keyboards/handwired/symmetric70_proto/promicro/config.h +++ b/keyboards/handwired/symmetric70_proto/promicro/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/symmetric70_proto/proton_c/config.h b/keyboards/handwired/symmetric70_proto/proton_c/config.h index 84586854f4..92716a21f6 100644 --- a/keyboards/handwired/symmetric70_proto/proton_c/config.h +++ b/keyboards/handwired/symmetric70_proto/proton_c/config.h @@ -151,10 +151,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/t111/config.h b/keyboards/handwired/t111/config.h index e459e7659e..04c1ece0e5 100644 --- a/keyboards/handwired/t111/config.h +++ b/keyboards/handwired/t111/config.h @@ -83,10 +83,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/tennie/config.h b/keyboards/handwired/tennie/config.h index 6955f08db7..e74b9f2aee 100644 --- a/keyboards/handwired/tennie/config.h +++ b/keyboards/handwired/tennie/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/handwired/terminus_mini/config.h b/keyboards/handwired/terminus_mini/config.h index e1d77d55e2..94c182eb4a 100644 --- a/keyboards/handwired/terminus_mini/config.h +++ b/keyboards/handwired/terminus_mini/config.h @@ -106,5 +106,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/config.h b/keyboards/handwired/tractyl_manuform/4x6_right/config.h index bba9db137b..ab46bc5276 100644 --- a/keyboards/handwired/tractyl_manuform/4x6_right/config.h +++ b/keyboards/handwired/tractyl_manuform/4x6_right/config.h @@ -84,8 +84,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION /* PMW3360 Settings */ #define PMW3360_CS_PIN B0 diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/config.h index b4f09e5e87..fc5037ae9d 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/config.h @@ -47,7 +47,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define POINTING_DEVICE_RIGHT diff --git a/keyboards/handwired/tractyl_manuform/config.h b/keyboards/handwired/tractyl_manuform/config.h index 821f9be9b6..845125c5cd 100644 --- a/keyboards/handwired/tractyl_manuform/config.h +++ b/keyboards/handwired/tractyl_manuform/config.h @@ -33,8 +33,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define SPLIT_POINTING_ENABLE #define POINTING_DEVICE_TASK_THROTTLE_MS 1 diff --git a/keyboards/handwired/traveller/config.h b/keyboards/handwired/traveller/config.h index 2e3767e0cd..815ec7fdd5 100644 --- a/keyboards/handwired/traveller/config.h +++ b/keyboards/handwired/traveller/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/tritium_numpad/config.h b/keyboards/handwired/tritium_numpad/config.h index 1424c6b491..ef835ad2aa 100644 --- a/keyboards/handwired/tritium_numpad/config.h +++ b/keyboards/handwired/tritium_numpad/config.h @@ -80,6 +80,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/handwired/twadlee/tp69/config.h b/keyboards/handwired/twadlee/tp69/config.h index aac4c874b2..f16444c119 100644 --- a/keyboards/handwired/twadlee/tp69/config.h +++ b/keyboards/handwired/twadlee/tp69/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/unk/rev1/config.h b/keyboards/handwired/unk/rev1/config.h index 84c6b123ab..65a02ff7ca 100644 --- a/keyboards/handwired/unk/rev1/config.h +++ b/keyboards/handwired/unk/rev1/config.h @@ -86,5 +86,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/handwired/uthol/rev3/config.h b/keyboards/handwired/uthol/rev3/config.h index 47f079e612..90880998b7 100644 --- a/keyboards/handwired/uthol/rev3/config.h +++ b/keyboards/handwired/uthol/rev3/config.h @@ -58,10 +58,6 @@ #define TAPPING_TERM 500 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - // RGB Stuff #define RGB_DI_PIN B0 #define RGBLED_NUM 39 diff --git a/keyboards/handwired/videowriter/config.h b/keyboards/handwired/videowriter/config.h index 73162b6da6..b4909ffba1 100644 --- a/keyboards/handwired/videowriter/config.h +++ b/keyboards/handwired/videowriter/config.h @@ -58,10 +58,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 1 #define BOOTMAGIC_LITE_COLUMN 7 diff --git a/keyboards/handwired/woodpad/config.h b/keyboards/handwired/woodpad/config.h index 9894fe1338..9b92798d96 100644 --- a/keyboards/handwired/woodpad/config.h +++ b/keyboards/handwired/woodpad/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/xealous/rev1/config.h b/keyboards/handwired/xealous/rev1/config.h index 8bd5b464a4..cbb4648d19 100644 --- a/keyboards/handwired/xealous/rev1/config.h +++ b/keyboards/handwired/xealous/rev1/config.h @@ -77,6 +77,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION + #define IGNORE_MOD_TAP_INTERRUPT diff --git a/keyboards/handwired/z150/config.h b/keyboards/handwired/z150/config.h index ecdb739544..5d11c31a2a 100644 --- a/keyboards/handwired/z150/config.h +++ b/keyboards/handwired/z150/config.h @@ -83,10 +83,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/helix/pico/config.h b/keyboards/helix/pico/config.h index ea2ce8c941..b08865d0a4 100644 --- a/keyboards/helix/pico/config.h +++ b/keyboards/helix/pico/config.h @@ -135,5 +135,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h index 9b813b347a..577edba56b 100644 --- a/keyboards/helix/rev2/config.h +++ b/keyboards/helix/rev2/config.h @@ -162,6 +162,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/helix/rev3_4rows/config.h b/keyboards/helix/rev3_4rows/config.h index 218ef5e5cc..1c0ec4d36c 100644 --- a/keyboards/helix/rev3_4rows/config.h +++ b/keyboards/helix/rev3_4rows/config.h @@ -161,10 +161,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/helix/rev3_5rows/config.h b/keyboards/helix/rev3_5rows/config.h index 79c7961ed9..c880e27c88 100644 --- a/keyboards/helix/rev3_5rows/config.h +++ b/keyboards/helix/rev3_5rows/config.h @@ -161,10 +161,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hhkb/ansi/config.h b/keyboards/hhkb/ansi/config.h index 78fe0c47ae..8307fc1679 100644 --- a/keyboards/hhkb/ansi/config.h +++ b/keyboards/hhkb/ansi/config.h @@ -87,5 +87,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/hhkb/jp/config.h b/keyboards/hhkb/jp/config.h index 22ac6aa623..04ee61c768 100644 --- a/keyboards/hhkb/jp/config.h +++ b/keyboards/hhkb/jp/config.h @@ -87,5 +87,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/hineybush/h08_ocelot/config.h b/keyboards/hineybush/h08_ocelot/config.h index 9b5fd2d9b9..80f1a1df1e 100644 --- a/keyboards/hineybush/h08_ocelot/config.h +++ b/keyboards/hineybush/h08_ocelot/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h10/config.h b/keyboards/hineybush/h10/config.h index 81641bdbd3..eafcd95eef 100644 --- a/keyboards/hineybush/h10/config.h +++ b/keyboards/hineybush/h10/config.h @@ -116,10 +116,6 @@ along with this program. If not, see . */ //#define FORCE_NKRO -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h60/config.h b/keyboards/hineybush/h60/config.h index 4553bb1229..044f05fa84 100644 --- a/keyboards/hineybush/h60/config.h +++ b/keyboards/hineybush/h60/config.h @@ -79,10 +79,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h65/config.h b/keyboards/hineybush/h65/config.h index b99f486013..19c9c5b5d8 100644 --- a/keyboards/hineybush/h65/config.h +++ b/keyboards/hineybush/h65/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h65_hotswap/config.h b/keyboards/hineybush/h65_hotswap/config.h index 805476d002..f266003a88 100644 --- a/keyboards/hineybush/h65_hotswap/config.h +++ b/keyboards/hineybush/h65_hotswap/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h660s/config.h b/keyboards/hineybush/h660s/config.h index 8f33fe3e6b..45a1c53508 100644 --- a/keyboards/hineybush/h660s/config.h +++ b/keyboards/hineybush/h660s/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/h75_singa/config.h b/keyboards/hineybush/h75_singa/config.h index e1389c8f96..c8b3ab7285 100644 --- a/keyboards/hineybush/h75_singa/config.h +++ b/keyboards/hineybush/h75_singa/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/hineybush/physix/config.h b/keyboards/hineybush/physix/config.h index c4a0274b93..87c49270b3 100644 --- a/keyboards/hineybush/physix/config.h +++ b/keyboards/hineybush/physix/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hineybush/sm68/config.h b/keyboards/hineybush/sm68/config.h index fd2403b8b5..89541179c2 100644 --- a/keyboards/hineybush/sm68/config.h +++ b/keyboards/hineybush/sm68/config.h @@ -128,8 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/hnahkb/freyr/config.h b/keyboards/hnahkb/freyr/config.h index d912b3cc1a..9658793aa2 100644 --- a/keyboards/hnahkb/freyr/config.h +++ b/keyboards/hnahkb/freyr/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hnahkb/stella/config.h b/keyboards/hnahkb/stella/config.h index 512b7571d5..2ca475c38c 100644 --- a/keyboards/hnahkb/stella/config.h +++ b/keyboards/hnahkb/stella/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/hnahkb/vn66/config.h b/keyboards/hnahkb/vn66/config.h index d809541841..1f6387fafa 100644 --- a/keyboards/hnahkb/vn66/config.h +++ b/keyboards/hnahkb/vn66/config.h @@ -139,10 +139,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/honeycomb/config.h b/keyboards/honeycomb/config.h index c959543618..6780c2d41b 100755 --- a/keyboards/honeycomb/config.h +++ b/keyboards/honeycomb/config.h @@ -43,5 +43,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/horizon/config.h b/keyboards/horizon/config.h index 8abc3b131b..bb0a6dcbfc 100644 --- a/keyboards/horizon/config.h +++ b/keyboards/horizon/config.h @@ -40,7 +40,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/hotdox/config.h b/keyboards/hotdox/config.h index 21d5938faf..b72faa613c 100644 --- a/keyboards/hotdox/config.h +++ b/keyboards/hotdox/config.h @@ -72,6 +72,5 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION + //#define DEBUG_MATRIX_SCAN_RATE diff --git a/keyboards/hub20/config.h b/keyboards/hub20/config.h index de2526522c..aca3d7acce 100644 --- a/keyboards/hub20/config.h +++ b/keyboards/hub20/config.h @@ -113,7 +113,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ianklug/grooveboard/config.h b/keyboards/ianklug/grooveboard/config.h index aac9be1022..4103759d02 100644 --- a/keyboards/ianklug/grooveboard/config.h +++ b/keyboards/ianklug/grooveboard/config.h @@ -146,10 +146,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ibnuda/gurindam/config.h b/keyboards/ibnuda/gurindam/config.h index 9262bdbcda..a79ea6c5db 100644 --- a/keyboards/ibnuda/gurindam/config.h +++ b/keyboards/ibnuda/gurindam/config.h @@ -113,5 +113,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ibnuda/squiggle/config.h b/keyboards/ibnuda/squiggle/config.h index 6aca2c1b18..d9a144aca7 100644 --- a/keyboards/ibnuda/squiggle/config.h +++ b/keyboards/ibnuda/squiggle/config.h @@ -37,8 +37,3 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/idb/idb_60/config.h b/keyboards/idb/idb_60/config.h index 8a0852ccbd..81dcfa854e 100644 --- a/keyboards/idb/idb_60/config.h +++ b/keyboards/idb/idb_60/config.h @@ -97,5 +97,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/idobao/id75/v1/config.h b/keyboards/idobao/id75/v1/config.h index caaf7f75dc..918dc16481 100644 --- a/keyboards/idobao/id75/v1/config.h +++ b/keyboards/idobao/id75/v1/config.h @@ -114,8 +114,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/idobao/id75/v2/config.h b/keyboards/idobao/id75/v2/config.h index c2b64649cb..c2e54f611d 100644 --- a/keyboards/idobao/id75/v2/config.h +++ b/keyboards/idobao/id75/v2/config.h @@ -144,8 +144,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/idobao/id87/v2/config.h b/keyboards/idobao/id87/v2/config.h index 3ef24f0bc5..f094ef0638 100644 --- a/keyboards/idobao/id87/v2/config.h +++ b/keyboards/idobao/id87/v2/config.h @@ -151,10 +151,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/illuminati/is0/config.h b/keyboards/illuminati/is0/config.h index 948ea8282c..cd7a7ce28f 100644 --- a/keyboards/illuminati/is0/config.h +++ b/keyboards/illuminati/is0/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/illusion/rosa/config.h b/keyboards/illusion/rosa/config.h index 6bd4884138..5ad421ecbe 100644 --- a/keyboards/illusion/rosa/config.h +++ b/keyboards/illusion/rosa/config.h @@ -49,10 +49,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -// #define NO_ACTION_MACRO -// #define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 -// #define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +// #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ilumkb/primus75/config.h b/keyboards/ilumkb/primus75/config.h index fc5dd87f09..4b6901d096 100644 --- a/keyboards/ilumkb/primus75/config.h +++ b/keyboards/ilumkb/primus75/config.h @@ -56,7 +56,4 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/ilumkb/simpler61/config.h b/keyboards/ilumkb/simpler61/config.h index 1efdb1af25..ae737bd1b6 100644 --- a/keyboards/ilumkb/simpler61/config.h +++ b/keyboards/ilumkb/simpler61/config.h @@ -39,10 +39,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/ilumkb/simpler64/config.h b/keyboards/ilumkb/simpler64/config.h index 179b98113b..faf8fd152d 100644 --- a/keyboards/ilumkb/simpler64/config.h +++ b/keyboards/ilumkb/simpler64/config.h @@ -39,10 +39,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/input_club/ergodox_infinity/config.h b/keyboards/input_club/ergodox_infinity/config.h index e6f1b81f54..debf9a62b9 100644 --- a/keyboards/input_club/ergodox_infinity/config.h +++ b/keyboards/input_club/ergodox_infinity/config.h @@ -153,5 +153,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/input_club/infinity60/config.h b/keyboards/input_club/infinity60/config.h index e73a663b39..18fedcb219 100644 --- a/keyboards/input_club/infinity60/config.h +++ b/keyboards/input_club/infinity60/config.h @@ -57,5 +57,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/input_club/k_type/config.h b/keyboards/input_club/k_type/config.h index de73e06a98..8502ba7046 100644 --- a/keyboards/input_club/k_type/config.h +++ b/keyboards/input_club/k_type/config.h @@ -98,10 +98,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/input_club/whitefox/config.h b/keyboards/input_club/whitefox/config.h index d2b6639a30..4ea7e7806f 100644 --- a/keyboards/input_club/whitefox/config.h +++ b/keyboards/input_club/whitefox/config.h @@ -117,10 +117,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/irene/config.h b/keyboards/irene/config.h index 15750f5406..34093e33a1 100644 --- a/keyboards/irene/config.h +++ b/keyboards/irene/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/iriskeyboards/config.h b/keyboards/iriskeyboards/config.h index 77aedd69f1..8757c407b2 100644 --- a/keyboards/iriskeyboards/config.h +++ b/keyboards/iriskeyboards/config.h @@ -145,10 +145,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/j80/config.h b/keyboards/j80/config.h index 10b4116181..3aaeb26dad 100644 --- a/keyboards/j80/config.h +++ b/keyboards/j80/config.h @@ -42,10 +42,6 @@ along with this program. If not, see . #define BACKLIGHT_LEVELS 3 #define BACKLIGHT_PIN D4 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/jacky_studio/s7_elephant/rev2/config.h b/keyboards/jacky_studio/s7_elephant/rev2/config.h index d0ca4045c7..246479dd37 100644 --- a/keyboards/jacky_studio/s7_elephant/rev2/config.h +++ b/keyboards/jacky_studio/s7_elephant/rev2/config.h @@ -25,10 +25,6 @@ #define MANUFACTURER Jacky #define PRODUCT Jacky S7 Elephant Rev 2 -/* Don't remove this without also removing LTO_ENABLE=yes in rules.mk */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* key matrix size */ #define MATRIX_ROWS 5 #define MATRIX_COLS 16 diff --git a/keyboards/jadookb/jkb65/config.h b/keyboards/jadookb/jkb65/config.h index d397f1962b..dae3cea49a 100644 --- a/keyboards/jadookb/jkb65/config.h +++ b/keyboards/jadookb/jkb65/config.h @@ -98,6 +98,3 @@ #define DEBOUNCE 5 #define LOCKING_SUPPORT_ENABLE #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/jae/j01/config.h b/keyboards/jae/j01/config.h index 68e8b0ff08..552f6930cb 100644 --- a/keyboards/jae/j01/config.h +++ b/keyboards/jae/j01/config.h @@ -110,10 +110,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 2 diff --git a/keyboards/jagdpietr/drakon/config.h b/keyboards/jagdpietr/drakon/config.h index f9565e41a4..611b107137 100644 --- a/keyboards/jagdpietr/drakon/config.h +++ b/keyboards/jagdpietr/drakon/config.h @@ -108,7 +108,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/jc65/v32a/config.h b/keyboards/jc65/v32a/config.h index d6907c96c3..b4cef251b5 100644 --- a/keyboards/jc65/v32a/config.h +++ b/keyboards/jc65/v32a/config.h @@ -43,6 +43,3 @@ along with this program. If not, see . #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 #define RGBLIGHT_EFFECT_KNIGHT_LED_NUM 8 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/jd45/config.h b/keyboards/jd45/config.h index be2f0963ac..3deea19740 100644 --- a/keyboards/jd45/config.h +++ b/keyboards/jd45/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/jm60/config.h b/keyboards/jm60/config.h index 2409142e09..113c6b4dfb 100644 --- a/keyboards/jm60/config.h +++ b/keyboards/jm60/config.h @@ -130,10 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/jones/v03/config.h b/keyboards/jones/v03/config.h index 7a37fc1f3d..706c1d05e9 100644 --- a/keyboards/jones/v03/config.h +++ b/keyboards/jones/v03/config.h @@ -156,10 +156,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/jones/v03_1/config.h b/keyboards/jones/v03_1/config.h index 1b67b6b58f..33dd0994a5 100644 --- a/keyboards/jones/v03_1/config.h +++ b/keyboards/jones/v03_1/config.h @@ -157,10 +157,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/jones/v1/config.h b/keyboards/jones/v1/config.h index 1f8acc6eb6..16610eef4a 100644 --- a/keyboards/jones/v1/config.h +++ b/keyboards/jones/v1/config.h @@ -65,10 +65,6 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite trigger key. Left-Top of the layout. */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 9 diff --git a/keyboards/kagizaraya/chidori/config.h b/keyboards/kagizaraya/chidori/config.h index 2db5d57ef7..fba0ab1e39 100644 --- a/keyboards/kagizaraya/chidori/config.h +++ b/keyboards/kagizaraya/chidori/config.h @@ -156,8 +156,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kagizaraya/halberd/config.h b/keyboards/kagizaraya/halberd/config.h index 66777a2509..085688e335 100644 --- a/keyboards/kagizaraya/halberd/config.h +++ b/keyboards/kagizaraya/halberd/config.h @@ -113,8 +113,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kagizaraya/scythe/config.h b/keyboards/kagizaraya/scythe/config.h index ad4d1ded4f..fb75e32b62 100644 --- a/keyboards/kagizaraya/scythe/config.h +++ b/keyboards/kagizaraya/scythe/config.h @@ -116,8 +116,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/angel17/alpha/config.h b/keyboards/kakunpc/angel17/alpha/config.h index 35e9c132b8..192464c216 100644 --- a/keyboards/kakunpc/angel17/alpha/config.h +++ b/keyboards/kakunpc/angel17/alpha/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/angel17/rev1/config.h b/keyboards/kakunpc/angel17/rev1/config.h index a43208d2b9..f042a089c4 100644 --- a/keyboards/kakunpc/angel17/rev1/config.h +++ b/keyboards/kakunpc/angel17/rev1/config.h @@ -131,8 +131,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/angel64/alpha/config.h b/keyboards/kakunpc/angel64/alpha/config.h index b3270fdd8b..d2057266ce 100644 --- a/keyboards/kakunpc/angel64/alpha/config.h +++ b/keyboards/kakunpc/angel64/alpha/config.h @@ -129,8 +129,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/angel64/rev1/config.h b/keyboards/kakunpc/angel64/rev1/config.h index b3270fdd8b..d2057266ce 100644 --- a/keyboards/kakunpc/angel64/rev1/config.h +++ b/keyboards/kakunpc/angel64/rev1/config.h @@ -129,8 +129,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/business_card/alpha/config.h b/keyboards/kakunpc/business_card/alpha/config.h index 81bb16161f..e7b5f7147d 100644 --- a/keyboards/kakunpc/business_card/alpha/config.h +++ b/keyboards/kakunpc/business_card/alpha/config.h @@ -130,8 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/business_card/beta/config.h b/keyboards/kakunpc/business_card/beta/config.h index 9e4e8da963..2bee5f5337 100644 --- a/keyboards/kakunpc/business_card/beta/config.h +++ b/keyboards/kakunpc/business_card/beta/config.h @@ -130,8 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/choc_taro/config.h b/keyboards/kakunpc/choc_taro/config.h index 2852206b14..e81abe07a6 100644 --- a/keyboards/kakunpc/choc_taro/config.h +++ b/keyboards/kakunpc/choc_taro/config.h @@ -134,10 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kakunpc/rabbit_capture_plan/config.h b/keyboards/kakunpc/rabbit_capture_plan/config.h index b622d33c1a..a115454fcc 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/config.h +++ b/keyboards/kakunpc/rabbit_capture_plan/config.h @@ -139,10 +139,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kakunpc/suihankey/alpha/config.h b/keyboards/kakunpc/suihankey/alpha/config.h index b11478adfc..3d821566ae 100644 --- a/keyboards/kakunpc/suihankey/alpha/config.h +++ b/keyboards/kakunpc/suihankey/alpha/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/suihankey/rev1/config.h b/keyboards/kakunpc/suihankey/rev1/config.h index b2801cd862..106cfc2c3b 100644 --- a/keyboards/kakunpc/suihankey/rev1/config.h +++ b/keyboards/kakunpc/suihankey/rev1/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/suihankey/split/alpha/config.h b/keyboards/kakunpc/suihankey/split/alpha/config.h index ae5acdbd4b..4131283166 100644 --- a/keyboards/kakunpc/suihankey/split/alpha/config.h +++ b/keyboards/kakunpc/suihankey/split/alpha/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/suihankey/split/rev1/config.h b/keyboards/kakunpc/suihankey/split/rev1/config.h index 6b7dd2bac9..83dc587e57 100644 --- a/keyboards/kakunpc/suihankey/split/rev1/config.h +++ b/keyboards/kakunpc/suihankey/split/rev1/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kakunpc/thedogkeyboard/config.h b/keyboards/kakunpc/thedogkeyboard/config.h index 099c157cff..fdf0336f5f 100644 --- a/keyboards/kakunpc/thedogkeyboard/config.h +++ b/keyboards/kakunpc/thedogkeyboard/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kapcave/arya/config.h b/keyboards/kapcave/arya/config.h index 62df795ff5..c6b6c61cf5 100644 --- a/keyboards/kapcave/arya/config.h +++ b/keyboards/kapcave/arya/config.h @@ -64,5 +64,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kb58/config.h b/keyboards/kb58/config.h index 9b8216e75b..81d946aaab 100644 --- a/keyboards/kb58/config.h +++ b/keyboards/kb58/config.h @@ -145,10 +145,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kb_elmo/isolation/config.h b/keyboards/kb_elmo/isolation/config.h index 3d32efbcb4..2f083955b0 100644 --- a/keyboards/kb_elmo/isolation/config.h +++ b/keyboards/kb_elmo/isolation/config.h @@ -56,7 +56,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kb_elmo/vertex/config.h b/keyboards/kb_elmo/vertex/config.h index 7fca07280e..9d8eafe5bf 100644 --- a/keyboards/kb_elmo/vertex/config.h +++ b/keyboards/kb_elmo/vertex/config.h @@ -40,7 +40,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kbdclack/kaishi65/config.h b/keyboards/kbdclack/kaishi65/config.h index 390ef64981..d9ac9b8137 100644 --- a/keyboards/kbdclack/kaishi65/config.h +++ b/keyboards/kbdclack/kaishi65/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kbdfans/bella/rgb/config.h b/keyboards/kbdfans/bella/rgb/config.h index c412411133..18add4d136 100644 --- a/keyboards/kbdfans/bella/rgb/config.h +++ b/keyboards/kbdfans/bella/rgb/config.h @@ -34,7 +34,6 @@ #define DEBOUNCE 5 -/* disable these deprecated features by default */ #ifdef RGB_MATRIX_ENABLE #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/kbdfans/bella/rgb_iso/config.h b/keyboards/kbdfans/bella/rgb_iso/config.h index ca43d80708..78082a0a01 100644 --- a/keyboards/kbdfans/bella/rgb_iso/config.h +++ b/keyboards/kbdfans/bella/rgb_iso/config.h @@ -34,7 +34,6 @@ #define DEBOUNCE 5 -/* disable these deprecated features by default */ #ifdef RGB_MATRIX_ENABLE #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/kbdfans/boop65/rgb/config.h b/keyboards/kbdfans/boop65/rgb/config.h index 20ee0df25a..b74da64e20 100644 --- a/keyboards/kbdfans/boop65/rgb/config.h +++ b/keyboards/kbdfans/boop65/rgb/config.h @@ -37,9 +37,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define USB_SUSPEND_WAKEUP_DELAY 5000 diff --git a/keyboards/kbdfans/kbd19x/config.h b/keyboards/kbdfans/kbd19x/config.h index 0fbf429c45..e738f77177 100644 --- a/keyboards/kbdfans/kbd19x/config.h +++ b/keyboards/kbdfans/kbd19x/config.h @@ -120,6 +120,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/kbdfans/kbd4x/config.h b/keyboards/kbdfans/kbd4x/config.h index a75efa6eae..86989e2b08 100644 --- a/keyboards/kbdfans/kbd4x/config.h +++ b/keyboards/kbdfans/kbd4x/config.h @@ -115,6 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/kbdfans/kbd66/config.h b/keyboards/kbdfans/kbd66/config.h index 2098ebf60f..2a10bf08ae 100644 --- a/keyboards/kbdfans/kbd66/config.h +++ b/keyboards/kbdfans/kbd66/config.h @@ -106,5 +106,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kbdfans/kbd67/hotswap/config.h b/keyboards/kbdfans/kbd67/hotswap/config.h index 2179acb5f8..4c0e0b794d 100644 --- a/keyboards/kbdfans/kbd67/hotswap/config.h +++ b/keyboards/kbdfans/kbd67/hotswap/config.h @@ -134,8 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h index 5b50c415ae..23b0a8a30c 100755 --- a/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb/v3/config.h @@ -37,9 +37,7 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #ifdef RGB_MATRIX_ENABLE #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h index 9960022a13..a63a3ee61b 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb/v4/config.h @@ -36,9 +36,7 @@ #define DIODE_DIRECTION COL2ROW /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #define USB_SUSPEND_WAKEUP_DELAY 5000 #define RGB_DI_PIN C7 diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h index 42f5af8c25..0877d04cca 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/config.h @@ -36,9 +36,7 @@ #define DIODE_DIRECTION COL2ROW /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #define USB_SUSPEND_WAKEUP_DELAY 5000 #define RGB_DI_PIN C7 diff --git a/keyboards/kbdfans/kbd67/rev1/config.h b/keyboards/kbdfans/kbd67/rev1/config.h index 04ea9c9f1b..72aa27afcc 100644 --- a/keyboards/kbdfans/kbd67/rev1/config.h +++ b/keyboards/kbdfans/kbd67/rev1/config.h @@ -131,8 +131,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kbdfans/kbd6x/config.h b/keyboards/kbdfans/kbd6x/config.h index 332898383e..080bdb33b2 100644 --- a/keyboards/kbdfans/kbd6x/config.h +++ b/keyboards/kbdfans/kbd6x/config.h @@ -118,6 +118,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/kbdfans/kbd75hs/config.h b/keyboards/kbdfans/kbd75hs/config.h index e23e50636f..bf14934d2b 100644 --- a/keyboards/kbdfans/kbd75hs/config.h +++ b/keyboards/kbdfans/kbd75hs/config.h @@ -38,9 +38,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 #define FORCE_NKRO -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define LED_CAPS_LOCK_PIN C6 #define LED_PIN_ON_STATE 1 diff --git a/keyboards/kbdfans/kbd75rgb/config.h b/keyboards/kbdfans/kbd75rgb/config.h index e49cf68b98..2499c25933 100644 --- a/keyboards/kbdfans/kbd75rgb/config.h +++ b/keyboards/kbdfans/kbd75rgb/config.h @@ -36,9 +36,7 @@ #define DIODE_DIRECTION COL2ROW /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #define USB_SUSPEND_WAKEUP_DELAY 5000 #define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/kbd8x/config.h b/keyboards/kbdfans/kbd8x/config.h index 67d155b556..b53a898a27 100644 --- a/keyboards/kbdfans/kbd8x/config.h +++ b/keyboards/kbdfans/kbd8x/config.h @@ -84,5 +84,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kbdfans/kbd8x_mk2/config.h b/keyboards/kbdfans/kbd8x_mk2/config.h index ea535b00fd..010bba4617 100644 --- a/keyboards/kbdfans/kbd8x_mk2/config.h +++ b/keyboards/kbdfans/kbd8x_mk2/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kbdfans/kbdmini/config.h b/keyboards/kbdfans/kbdmini/config.h index f2137fcd1f..a3e0a0237e 100644 --- a/keyboards/kbdfans/kbdmini/config.h +++ b/keyboards/kbdfans/kbdmini/config.h @@ -91,7 +91,3 @@ #define DRIVER_COUNT 1 #define DRIVER_LED_TOTAL 52 #endif - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kbdfans/kbdpad/mk2/config.h b/keyboards/kbdfans/kbdpad/mk2/config.h index e64aaa3379..99f3792d55 100644 --- a/keyboards/kbdfans/kbdpad/mk2/config.h +++ b/keyboards/kbdfans/kbdpad/mk2/config.h @@ -137,8 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kbdfans/niu_mini/config.h b/keyboards/kbdfans/niu_mini/config.h index 96210cf3d0..82f23e3d5c 100644 --- a/keyboards/kbdfans/niu_mini/config.h +++ b/keyboards/kbdfans/niu_mini/config.h @@ -81,5 +81,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kbdfans/odin/soldered/config.h b/keyboards/kbdfans/odin/soldered/config.h index 74e87aee2e..d51dd06e82 100644 --- a/keyboards/kbdfans/odin/soldered/config.h +++ b/keyboards/kbdfans/odin/soldered/config.h @@ -35,8 +35,7 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 15 -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #define RGB_DI_PIN B15 #ifdef RGB_DI_PIN #define RGBLED_NUM 4 diff --git a/keyboards/kc60/config.h b/keyboards/kc60/config.h index c58aedd76f..c536ab83f0 100644 --- a/keyboards/kc60/config.h +++ b/keyboards/kc60/config.h @@ -132,10 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kc60se/config.h b/keyboards/kc60se/config.h index fc75f68ff0..876aa891df 100644 --- a/keyboards/kc60se/config.h +++ b/keyboards/kc60se/config.h @@ -96,5 +96,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebio/bfo9000/config.h b/keyboards/keebio/bfo9000/config.h index 7e9d4cec0b..7bb150d8cf 100644 --- a/keyboards/keebio/bfo9000/config.h +++ b/keyboards/keebio/bfo9000/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebio/bigswitchseat/config.h b/keyboards/keebio/bigswitchseat/config.h index f5558ca279..dbf8311c8d 100644 --- a/keyboards/keebio/bigswitchseat/config.h +++ b/keyboards/keebio/bigswitchseat/config.h @@ -77,10 +77,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keebio/choconum/config.h b/keyboards/keebio/choconum/config.h index 45dca64585..dcd116534a 100644 --- a/keyboards/keebio/choconum/config.h +++ b/keyboards/keebio/choconum/config.h @@ -92,10 +92,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keebio/ergodicity/config.h b/keyboards/keebio/ergodicity/config.h index 1e6327aec0..014eb13759 100644 --- a/keyboards/keebio/ergodicity/config.h +++ b/keyboards/keebio/ergodicity/config.h @@ -120,8 +120,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/keebio/fourier/config.h b/keyboards/keebio/fourier/config.h index 1ce0aac7ea..faa3ef4004 100644 --- a/keyboards/keebio/fourier/config.h +++ b/keyboards/keebio/fourier/config.h @@ -81,5 +81,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebio/nyquist/rev1/config.h b/keyboards/keebio/nyquist/rev1/config.h index 774f49c904..47622ba1e9 100644 --- a/keyboards/keebio/nyquist/rev1/config.h +++ b/keyboards/keebio/nyquist/rev1/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebio/nyquist/rev2/config.h b/keyboards/keebio/nyquist/rev2/config.h index d558c204d1..e47110b8a5 100644 --- a/keyboards/keebio/nyquist/rev2/config.h +++ b/keyboards/keebio/nyquist/rev2/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebio/nyquist/rev3/config.h b/keyboards/keebio/nyquist/rev3/config.h index d165815726..3536f5c629 100644 --- a/keyboards/keebio/nyquist/rev3/config.h +++ b/keyboards/keebio/nyquist/rev3/config.h @@ -76,5 +76,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keebsforall/coarse60/config.h b/keyboards/keebsforall/coarse60/config.h index ee37802145..7d14ea4cbd 100644 --- a/keyboards/keebsforall/coarse60/config.h +++ b/keyboards/keebsforall/coarse60/config.h @@ -96,8 +96,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - #define SLEEP_LED_GPT_DRIVER GPTD1 diff --git a/keyboards/keebsforall/freebird60/config.h b/keyboards/keebsforall/freebird60/config.h index 81b468bb97..5d9f98cacf 100644 --- a/keyboards/keebsforall/freebird60/config.h +++ b/keyboards/keebsforall/freebird60/config.h @@ -48,7 +48,3 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/keebsforall/freebirdtkl/config.h b/keyboards/keebsforall/freebirdtkl/config.h index f9717d06d5..47c83ea5b7 100644 --- a/keyboards/keebsforall/freebirdtkl/config.h +++ b/keyboards/keebsforall/freebirdtkl/config.h @@ -50,6 +50,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/keebwerk/nano_slider/config.h b/keyboards/keebwerk/nano_slider/config.h index 827923fea7..53b887692b 100644 --- a/keyboards/keebwerk/nano_slider/config.h +++ b/keyboards/keebwerk/nano_slider/config.h @@ -106,10 +106,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keebzdotnet/wazowski/config.h b/keyboards/keebzdotnet/wazowski/config.h index 71db031cae..fe8b5cbcd5 100644 --- a/keyboards/keebzdotnet/wazowski/config.h +++ b/keyboards/keebzdotnet/wazowski/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keybage/radpad/config.h b/keyboards/keybage/radpad/config.h index 0d885ddea9..e0f4b76361 100644 --- a/keyboards/keybage/radpad/config.h +++ b/keyboards/keybage/radpad/config.h @@ -52,10 +52,6 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 1 #define BOOTMAGIC_LITE_COLUMN 3 diff --git a/keyboards/keybee/keybee65/config.h b/keyboards/keybee/keybee65/config.h index a6666b5d23..54f847a2dd 100644 --- a/keyboards/keybee/keybee65/config.h +++ b/keyboards/keybee/keybee65/config.h @@ -62,6 +62,3 @@ along with this program. If not, see . #define RGB_MATRIX_KEYPRESSES #define RGB_DISABLE_WHEN_USB_SUSPENDED - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/keyboardio/atreus/config.h b/keyboards/keyboardio/atreus/config.h index fb3a48e58f..74b56ceb7d 100644 --- a/keyboards/keyboardio/atreus/config.h +++ b/keyboards/keyboardio/atreus/config.h @@ -77,5 +77,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/keycapsss/o4l_5x12/config.h b/keyboards/keycapsss/o4l_5x12/config.h index e24275160f..4b7b863906 100644 --- a/keyboards/keycapsss/o4l_5x12/config.h +++ b/keyboards/keycapsss/o4l_5x12/config.h @@ -115,10 +115,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keyhive/maypad/config.h b/keyboards/keyhive/maypad/config.h index bb3ef2d646..b85053888f 100644 --- a/keyboards/keyhive/maypad/config.h +++ b/keyboards/keyhive/maypad/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/keyprez/bison/config.h b/keyboards/keyprez/bison/config.h index a85e33c7e9..b98cbc1be1 100644 --- a/keyboards/keyprez/bison/config.h +++ b/keyboards/keyprez/bison/config.h @@ -149,10 +149,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keyprez/corgi/config.h b/keyboards/keyprez/corgi/config.h index 7a304ab707..a3ebf2747f 100644 --- a/keyboards/keyprez/corgi/config.h +++ b/keyboards/keyprez/corgi/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/keyprez/rhino/config.h b/keyboards/keyprez/rhino/config.h index b89be8fdc2..54077ac939 100644 --- a/keyboards/keyprez/rhino/config.h +++ b/keyboards/keyprez/rhino/config.h @@ -106,10 +106,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/keyprez/unicorn/config.h b/keyboards/keyprez/unicorn/config.h index fcfc6fe926..44eadb5bfb 100644 --- a/keyboards/keyprez/unicorn/config.h +++ b/keyboards/keyprez/unicorn/config.h @@ -132,10 +132,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kikkou/config.h b/keyboards/kikkou/config.h index deedfd8382..586c8e9661 100644 --- a/keyboards/kikkou/config.h +++ b/keyboards/kikkou/config.h @@ -52,7 +52,3 @@ along with this program. If not, see . /* disable print */ //#define NO_PRINT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kindakeyboards/conone65/config.h b/keyboards/kindakeyboards/conone65/config.h index c29599cadd..0a7127708c 100644 --- a/keyboards/kindakeyboards/conone65/config.h +++ b/keyboards/kindakeyboards/conone65/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kinesis/config.h b/keyboards/kinesis/config.h index b04d325903..63b296a528 100644 --- a/keyboards/kinesis/config.h +++ b/keyboards/kinesis/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kira75/config.h b/keyboards/kira75/config.h index 373c3e4f0b..18d8b8fad9 100644 --- a/keyboards/kira75/config.h +++ b/keyboards/kira75/config.h @@ -112,5 +112,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kiwikeebs/macro/config.h b/keyboards/kiwikeebs/macro/config.h index d9dcc3ba60..47349d0e09 100644 --- a/keyboards/kiwikeebs/macro/config.h +++ b/keyboards/kiwikeebs/macro/config.h @@ -102,7 +102,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kiwikeebs/macro_v2/config.h b/keyboards/kiwikeebs/macro_v2/config.h index 9ecc4d6686..a962a9a82a 100644 --- a/keyboards/kiwikeebs/macro_v2/config.h +++ b/keyboards/kiwikeebs/macro_v2/config.h @@ -102,7 +102,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kiwikey/borderland/config.h b/keyboards/kiwikey/borderland/config.h index 02a33926aa..648c3a88de 100644 --- a/keyboards/kiwikey/borderland/config.h +++ b/keyboards/kiwikey/borderland/config.h @@ -117,10 +117,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kiwikey/kawii9/config.h b/keyboards/kiwikey/kawii9/config.h index 33ce43f302..59adcd253e 100644 --- a/keyboards/kiwikey/kawii9/config.h +++ b/keyboards/kiwikey/kawii9/config.h @@ -128,10 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kiwikey/wanderland/config.h b/keyboards/kiwikey/wanderland/config.h index 546a03aa30..e0b9ba8946 100644 --- a/keyboards/kiwikey/wanderland/config.h +++ b/keyboards/kiwikey/wanderland/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/bakeneko60/config.h b/keyboards/kkatano/bakeneko60/config.h index 9b923552bb..9e373686fd 100644 --- a/keyboards/kkatano/bakeneko60/config.h +++ b/keyboards/kkatano/bakeneko60/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/bakeneko65/rev2/config.h b/keyboards/kkatano/bakeneko65/rev2/config.h index 6639e82395..7e70f549cd 100644 --- a/keyboards/kkatano/bakeneko65/rev2/config.h +++ b/keyboards/kkatano/bakeneko65/rev2/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/bakeneko65/rev3/config.h b/keyboards/kkatano/bakeneko65/rev3/config.h index 6001ce3159..9fa3e68ca0 100644 --- a/keyboards/kkatano/bakeneko65/rev3/config.h +++ b/keyboards/kkatano/bakeneko65/rev3/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/bakeneko80/config.h b/keyboards/kkatano/bakeneko80/config.h index da330c395f..0e61db875b 100644 --- a/keyboards/kkatano/bakeneko80/config.h +++ b/keyboards/kkatano/bakeneko80/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/wallaby/config.h b/keyboards/kkatano/wallaby/config.h index 3c0d446418..00ba00ccac 100644 --- a/keyboards/kkatano/wallaby/config.h +++ b/keyboards/kkatano/wallaby/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kkatano/yurei/config.h b/keyboards/kkatano/yurei/config.h index 57877dc8fa..14eae7f387 100644 --- a/keyboards/kkatano/yurei/config.h +++ b/keyboards/kkatano/yurei/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kmac/config.h b/keyboards/kmac/config.h index 23cf0a0470..3bc567333e 100644 --- a/keyboards/kmac/config.h +++ b/keyboards/kmac/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kmac_pad/config.h b/keyboards/kmac_pad/config.h index eb33a994b3..189f2f9c08 100644 --- a/keyboards/kmac_pad/config.h +++ b/keyboards/kmac_pad/config.h @@ -98,5 +98,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/knops/mini/config.h b/keyboards/knops/mini/config.h index eca8b8b4a8..8fb094fb94 100644 --- a/keyboards/knops/mini/config.h +++ b/keyboards/knops/mini/config.h @@ -103,5 +103,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kona_classic/config.h b/keyboards/kona_classic/config.h index c6dc3a0318..c5a783c811 100644 --- a/keyboards/kona_classic/config.h +++ b/keyboards/kona_classic/config.h @@ -102,5 +102,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/kopibeng/xt65/config.h b/keyboards/kopibeng/xt65/config.h index e39f832bdf..e134e8b864 100644 --- a/keyboards/kopibeng/xt65/config.h +++ b/keyboards/kopibeng/xt65/config.h @@ -100,8 +100,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kprepublic/bm16a/config.h b/keyboards/kprepublic/bm16a/config.h index c38f74458e..120232bb91 100644 --- a/keyboards/kprepublic/bm16a/config.h +++ b/keyboards/kprepublic/bm16a/config.h @@ -133,8 +133,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/config.h b/keyboards/kprepublic/bm60hsrgb/rev2/config.h index b4aa1a549c..d8e7501b22 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev2/config.h +++ b/keyboards/kprepublic/bm60hsrgb/rev2/config.h @@ -48,9 +48,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION //rgb light setting #define RGBLIGHT_LIMIT_VAL 150 #define RGBLED_NUM 6 diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h b/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h index 5e695aec57..4653db4fd6 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/config.h @@ -50,9 +50,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION //rgb light setting #define RGBLIGHT_LIMIT_VAL 150 #define RGBLED_NUM 6 diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h b/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h index 27c3a6df55..d40004f502 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/config.h @@ -48,9 +48,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION //rgb light setting #define RGBLIGHT_LIMIT_VAL 150 #define RGBLED_NUM 6 diff --git a/keyboards/kprepublic/bm65hsrgb/rev1/config.h b/keyboards/kprepublic/bm65hsrgb/rev1/config.h index 1fbfab9368..b428a78864 100644 --- a/keyboards/kprepublic/bm65hsrgb/rev1/config.h +++ b/keyboards/kprepublic/bm65hsrgb/rev1/config.h @@ -113,10 +113,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/config.h b/keyboards/kprepublic/bm68hsrgb/rev1/config.h index a779c97b7b..636ff1c785 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/config.h +++ b/keyboards/kprepublic/bm68hsrgb/rev1/config.h @@ -165,10 +165,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/config.h b/keyboards/kprepublic/bm68hsrgb/rev2/config.h index 4faca73c0d..900aa699cb 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev2/config.h +++ b/keyboards/kprepublic/bm68hsrgb/rev2/config.h @@ -38,9 +38,7 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION + #define RGBLIGHT_LIMIT_VAL 150 #define RGBLED_NUM 6 #define RGB_DI_PIN E2 diff --git a/keyboards/kprepublic/bm80hsrgb/config.h b/keyboards/kprepublic/bm80hsrgb/config.h index f56daf948c..7adc89720d 100644 --- a/keyboards/kprepublic/bm80hsrgb/config.h +++ b/keyboards/kprepublic/bm80hsrgb/config.h @@ -136,7 +136,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kprepublic/bm980hsrgb/config.h b/keyboards/kprepublic/bm980hsrgb/config.h index e4499a0b05..01266e652c 100644 --- a/keyboards/kprepublic/bm980hsrgb/config.h +++ b/keyboards/kprepublic/bm980hsrgb/config.h @@ -127,10 +127,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/kprepublic/cospad/config.h b/keyboards/kprepublic/cospad/config.h index 47c4a1d9af..bc53ef6206 100644 --- a/keyboards/kprepublic/cospad/config.h +++ b/keyboards/kprepublic/cospad/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ktec/daisy/config.h b/keyboards/ktec/daisy/config.h index 3d504888ec..2079d172aa 100644 --- a/keyboards/ktec/daisy/config.h +++ b/keyboards/ktec/daisy/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ktec/ergodone/config.h b/keyboards/ktec/ergodone/config.h index db626ab808..ee51e4c055 100644 --- a/keyboards/ktec/ergodone/config.h +++ b/keyboards/ktec/ergodone/config.h @@ -73,6 +73,5 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION + //#define DEBUG_MATRIX_SCAN_RATE diff --git a/keyboards/kudox/columner/config.h b/keyboards/kudox/columner/config.h index 1109331275..13a02bc803 100644 --- a/keyboards/kudox/columner/config.h +++ b/keyboards/kudox/columner/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/kudox/rev1/config.h b/keyboards/kudox/rev1/config.h index 8e994770f9..de5dbbbe71 100644 --- a/keyboards/kudox/rev1/config.h +++ b/keyboards/kudox/rev1/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/kudox/rev2/config.h b/keyboards/kudox/rev2/config.h index 81b1fb676f..c510926919 100644 --- a/keyboards/kudox/rev2/config.h +++ b/keyboards/kudox/rev2/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/kudox/rev3/config.h b/keyboards/kudox/rev3/config.h index 9d24106f4c..969111d0c8 100644 --- a/keyboards/kudox/rev3/config.h +++ b/keyboards/kudox/rev3/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/kudox_full/rev1/config.h b/keyboards/kudox_full/rev1/config.h index 46d680e442..bd47ed6b42 100644 --- a/keyboards/kudox_full/rev1/config.h +++ b/keyboards/kudox_full/rev1/config.h @@ -73,5 +73,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/kudox_game/rev1/config.h b/keyboards/kudox_game/rev1/config.h index ab34f889dc..821a6af8bb 100644 --- a/keyboards/kudox_game/rev1/config.h +++ b/keyboards/kudox_game/rev1/config.h @@ -80,8 +80,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/kudox_game/rev2/config.h b/keyboards/kudox_game/rev2/config.h index ea27d5efb8..e1907bf29f 100644 --- a/keyboards/kudox_game/rev2/config.h +++ b/keyboards/kudox_game/rev2/config.h @@ -80,8 +80,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/ky01/config.h b/keyboards/ky01/config.h index 22c211dace..e0b94622c6 100644 --- a/keyboards/ky01/config.h +++ b/keyboards/ky01/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/labyrinth75/config.h b/keyboards/labyrinth75/config.h index cb95204885..afc77a8dd5 100644 --- a/keyboards/labyrinth75/config.h +++ b/keyboards/labyrinth75/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 2 diff --git a/keyboards/latincompass/latin17rgb/config.h b/keyboards/latincompass/latin17rgb/config.h index 6b929f249d..02d8522606 100644 --- a/keyboards/latincompass/latin17rgb/config.h +++ b/keyboards/latincompass/latin17rgb/config.h @@ -48,10 +48,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/latincompass/latin47ble/config.h b/keyboards/latincompass/latin47ble/config.h index f9f94d0dbf..eb10693501 100644 --- a/keyboards/latincompass/latin47ble/config.h +++ b/keyboards/latincompass/latin47ble/config.h @@ -119,7 +119,5 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define VIA_HAS_BROKEN_KEYCODES diff --git a/keyboards/latincompass/latin60rgb/config.h b/keyboards/latincompass/latin60rgb/config.h index cc7b83b9b8..fa4ea39288 100644 --- a/keyboards/latincompass/latin60rgb/config.h +++ b/keyboards/latincompass/latin60rgb/config.h @@ -47,10 +47,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/latincompass/latin6rgb/config.h b/keyboards/latincompass/latin6rgb/config.h index 718d8aa26f..9beebe0f87 100644 --- a/keyboards/latincompass/latin6rgb/config.h +++ b/keyboards/latincompass/latin6rgb/config.h @@ -49,10 +49,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/latincompass/latinpadble/config.h b/keyboards/latincompass/latinpadble/config.h index da89046176..fc833a0269 100644 --- a/keyboards/latincompass/latinpadble/config.h +++ b/keyboards/latincompass/latinpadble/config.h @@ -26,10 +26,6 @@ along with this program. If not, see .*/ // #define NO_ACTION_LAYER // #define NO_ACTION_TAPPING // #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - - /* key matrix size */ #define MATRIX_ROWS 5 diff --git a/keyboards/lattice60/config.h b/keyboards/lattice60/config.h index 1346c73f47..c1e067287b 100644 --- a/keyboards/lattice60/config.h +++ b/keyboards/lattice60/config.h @@ -96,7 +96,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lets_split/rev1/config.h b/keyboards/lets_split/rev1/config.h index 02eee1f3da..fc9e348a86 100644 --- a/keyboards/lets_split/rev1/config.h +++ b/keyboards/lets_split/rev1/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lets_split/rev2/config.h b/keyboards/lets_split/rev2/config.h index 37353b8b3d..7d8dff4f2f 100644 --- a/keyboards/lets_split/rev2/config.h +++ b/keyboards/lets_split/rev2/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lfkeyboards/lfk65_hs/config.h b/keyboards/lfkeyboards/lfk65_hs/config.h index 0adc0b3f56..18d6bbebe7 100644 --- a/keyboards/lfkeyboards/lfk65_hs/config.h +++ b/keyboards/lfkeyboards/lfk65_hs/config.h @@ -80,5 +80,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lfkeyboards/lfk78/config.h b/keyboards/lfkeyboards/lfk78/config.h index fbb02e71ee..1fab81a645 100644 --- a/keyboards/lfkeyboards/lfk78/config.h +++ b/keyboards/lfkeyboards/lfk78/config.h @@ -103,10 +103,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/lfkeyboards/lfk87/config.h b/keyboards/lfkeyboards/lfk87/config.h index 387c58851c..af0a4b173b 100644 --- a/keyboards/lfkeyboards/lfk87/config.h +++ b/keyboards/lfkeyboards/lfk87/config.h @@ -111,5 +111,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lfkeyboards/lfkpad/config.h b/keyboards/lfkeyboards/lfkpad/config.h index 972b0283b5..0ddb4b95b6 100644 --- a/keyboards/lfkeyboards/lfkpad/config.h +++ b/keyboards/lfkeyboards/lfkpad/config.h @@ -120,10 +120,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/lfkeyboards/mini1800/config.h b/keyboards/lfkeyboards/mini1800/config.h index 7c81c9f98c..e7b0b5112a 100644 --- a/keyboards/lfkeyboards/mini1800/config.h +++ b/keyboards/lfkeyboards/mini1800/config.h @@ -98,5 +98,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lfkeyboards/smk65/revb/config.h b/keyboards/lfkeyboards/smk65/revb/config.h index 924a04fd9e..ecb183e8af 100644 --- a/keyboards/lfkeyboards/smk65/revb/config.h +++ b/keyboards/lfkeyboards/smk65/revb/config.h @@ -107,8 +107,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/lfkeyboards/smk65/revf/config.h b/keyboards/lfkeyboards/smk65/revf/config.h index d2cb5226dd..1b8295b152 100644 --- a/keyboards/lfkeyboards/smk65/revf/config.h +++ b/keyboards/lfkeyboards/smk65/revf/config.h @@ -125,10 +125,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/lily58/config.h b/keyboards/lily58/config.h index 0bdaa1f76e..57fc7fa7f9 100644 --- a/keyboards/lily58/config.h +++ b/keyboards/lily58/config.h @@ -25,13 +25,6 @@ along with this program. If not, see . #define SERIAL_USE_MULTI_TRANSACTION #endif -#if !defined(NO_ACTION_MACRO) - #define NO_ACTION_MACRO -#endif -#if !defined(NO_ACTION_FUNCTION) - #define NO_ACTION_FUNCTION -#endif - #define DIODE_DIRECTION COL2ROW // Use the lily version to get the Lily58 logo instead of the qmk logo diff --git a/keyboards/lily58/rev1/config.h b/keyboards/lily58/rev1/config.h index 24dc41151f..6bfc7ffa75 100644 --- a/keyboards/lily58/rev1/config.h +++ b/keyboards/lily58/rev1/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/lime/rev1/config.h b/keyboards/lime/rev1/config.h index 55c045dc67..547b881761 100644 --- a/keyboards/lime/rev1/config.h +++ b/keyboards/lime/rev1/config.h @@ -58,8 +58,6 @@ #define USE_SERIAL #define SOFT_SERIAL_PIN D2 -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define SPLIT_USB_DETECT #ifdef WPM_ENABLE diff --git a/keyboards/linworks/fave84h/config.h b/keyboards/linworks/fave84h/config.h index 4127c211fd..7df7a9ace0 100644 --- a/keyboards/linworks/fave84h/config.h +++ b/keyboards/linworks/fave84h/config.h @@ -110,6 +110,3 @@ along with this program. If not, see . #define ENABLE_RGB_MATRIX_SOLID_SPLASH #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/linworks/fave87h/config.h b/keyboards/linworks/fave87h/config.h index 64f6fc4cba..97d9bddba7 100644 --- a/keyboards/linworks/fave87h/config.h +++ b/keyboards/linworks/fave87h/config.h @@ -98,6 +98,3 @@ along with this program. If not, see . #define ENABLE_RGB_MATRIX_SOLID_SPLASH #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lizard_trick/tenkey_plusplus/config.h b/keyboards/lizard_trick/tenkey_plusplus/config.h index d1087851cb..8883194891 100644 --- a/keyboards/lizard_trick/tenkey_plusplus/config.h +++ b/keyboards/lizard_trick/tenkey_plusplus/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/lm_keyboard/lm60n/config.h b/keyboards/lm_keyboard/lm60n/config.h index 3515f4432b..171fa2fe5b 100644 --- a/keyboards/lm_keyboard/lm60n/config.h +++ b/keyboards/lm_keyboard/lm60n/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/lucid/alexa/config.h b/keyboards/lucid/alexa/config.h index a4ac8b62d2..19b5f4f19a 100644 --- a/keyboards/lucid/alexa/config.h +++ b/keyboards/lucid/alexa/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lucid/kbd8x_hs/config.h b/keyboards/lucid/kbd8x_hs/config.h index a5d47ce73e..1e5cff8e7f 100644 --- a/keyboards/lucid/kbd8x_hs/config.h +++ b/keyboards/lucid/kbd8x_hs/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lucid/phantom_hs/config.h b/keyboards/lucid/phantom_hs/config.h index 3e6fe45892..b94b345c16 100644 --- a/keyboards/lucid/phantom_hs/config.h +++ b/keyboards/lucid/phantom_hs/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lucid/phantom_solder/config.h b/keyboards/lucid/phantom_solder/config.h index af2537d386..2c78c4f5ff 100644 --- a/keyboards/lucid/phantom_solder/config.h +++ b/keyboards/lucid/phantom_solder/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/lucid/scarlet/config.h b/keyboards/lucid/scarlet/config.h index 73c7272922..67c2fe7b07 100644 --- a/keyboards/lucid/scarlet/config.h +++ b/keyboards/lucid/scarlet/config.h @@ -98,5 +98,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/m10a/config.h b/keyboards/m10a/config.h index 01f9d0d0a3..e09942f93a 100644 --- a/keyboards/m10a/config.h +++ b/keyboards/m10a/config.h @@ -70,5 +70,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/machine_industries/m4_a/config.h b/keyboards/machine_industries/m4_a/config.h index 1ba3f4f715..f27cb8ae5b 100644 --- a/keyboards/machine_industries/m4_a/config.h +++ b/keyboards/machine_industries/m4_a/config.h @@ -129,10 +129,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/majistic/config.h b/keyboards/majistic/config.h index 4ced5dd890..6e823ae3d6 100644 --- a/keyboards/majistic/config.h +++ b/keyboards/majistic/config.h @@ -51,7 +51,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/malevolti/lyra/rev1/config.h b/keyboards/malevolti/lyra/rev1/config.h index 4e006c2bdf..18563f8270 100644 --- a/keyboards/malevolti/lyra/rev1/config.h +++ b/keyboards/malevolti/lyra/rev1/config.h @@ -44,6 +44,3 @@ /* communication between sides */ #define USE_SERIAL #define SOFT_SERIAL_PIN D2 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/malevolti/superlyra/rev1/config.h b/keyboards/malevolti/superlyra/rev1/config.h index 65c41392fa..62c005ff9d 100644 --- a/keyboards/malevolti/superlyra/rev1/config.h +++ b/keyboards/malevolti/superlyra/rev1/config.h @@ -39,6 +39,3 @@ /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/manta60/config.h b/keyboards/manta60/config.h index 8bb63a566e..7c9a3b5ebe 100644 --- a/keyboards/manta60/config.h +++ b/keyboards/manta60/config.h @@ -147,10 +147,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/manyboard/macro/config.h b/keyboards/manyboard/macro/config.h index d7a950f2e6..63db714e63 100644 --- a/keyboards/manyboard/macro/config.h +++ b/keyboards/manyboard/macro/config.h @@ -48,6 +48,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/maple_computing/c39/config.h b/keyboards/maple_computing/c39/config.h index 409023f1fa..45c503846f 100755 --- a/keyboards/maple_computing/c39/config.h +++ b/keyboards/maple_computing/c39/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/maple_computing/ivy/config.h b/keyboards/maple_computing/ivy/config.h index 2ccf3b8f6f..130f2e0b61 100644 --- a/keyboards/maple_computing/ivy/config.h +++ b/keyboards/maple_computing/ivy/config.h @@ -62,5 +62,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/maple_computing/launchpad/config.h b/keyboards/maple_computing/launchpad/config.h index 327d67016b..901c63c93b 100644 --- a/keyboards/maple_computing/launchpad/config.h +++ b/keyboards/maple_computing/launchpad/config.h @@ -58,8 +58,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #ifdef SUBPROJECT_rev1 #include "rev1/config.h" diff --git a/keyboards/maple_computing/minidox/config.h b/keyboards/maple_computing/minidox/config.h index 2c71378961..613e45977c 100644 --- a/keyboards/maple_computing/minidox/config.h +++ b/keyboards/maple_computing/minidox/config.h @@ -57,5 +57,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/maple_computing/the_ruler/config.h b/keyboards/maple_computing/the_ruler/config.h index bcb7441140..ec9687cc0b 100644 --- a/keyboards/maple_computing/the_ruler/config.h +++ b/keyboards/maple_computing/the_ruler/config.h @@ -96,8 +96,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_DI_PIN E6 // The pin your RGB strip is wired to #define RGBLED_NUM 1 // Number of LEDs diff --git a/keyboards/marksard/leftover30/config.h b/keyboards/marksard/leftover30/config.h index 42c6c62872..5fc1b156a2 100644 --- a/keyboards/marksard/leftover30/config.h +++ b/keyboards/marksard/leftover30/config.h @@ -132,7 +132,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/marksard/treadstone48/rev1/config.h b/keyboards/marksard/treadstone48/rev1/config.h index ad9de636d0..68d1191156 100644 --- a/keyboards/marksard/treadstone48/rev1/config.h +++ b/keyboards/marksard/treadstone48/rev1/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/marksard/treadstone48/rev2/config.h b/keyboards/marksard/treadstone48/rev2/config.h index 6df1467d8c..e0353925be 100644 --- a/keyboards/marksard/treadstone48/rev2/config.h +++ b/keyboards/marksard/treadstone48/rev2/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/massdrop/alt/config.h b/keyboards/massdrop/alt/config.h index df3cd891b6..2ab9c26d2c 100644 --- a/keyboards/massdrop/alt/config.h +++ b/keyboards/massdrop/alt/config.h @@ -128,8 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_LED_PROCESS_LIMIT 15 diff --git a/keyboards/massdrop/ctrl/config.h b/keyboards/massdrop/ctrl/config.h index 6c0678c5ed..15abcaa674 100644 --- a/keyboards/massdrop/ctrl/config.h +++ b/keyboards/massdrop/ctrl/config.h @@ -127,8 +127,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_MATRIX_KEYPRESSES #define RGB_MATRIX_LED_PROCESS_LIMIT 15 diff --git a/keyboards/matchstickworks/southpad/config.h b/keyboards/matchstickworks/southpad/config.h index 247084a862..8831599828 100644 --- a/keyboards/matchstickworks/southpad/config.h +++ b/keyboards/matchstickworks/southpad/config.h @@ -92,8 +92,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/matthewdias/m3n3van/config.h b/keyboards/matthewdias/m3n3van/config.h index 15f62cecfd..cef9d8d70a 100644 --- a/keyboards/matthewdias/m3n3van/config.h +++ b/keyboards/matthewdias/m3n3van/config.h @@ -59,7 +59,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/matthewdias/minim/config.h b/keyboards/matthewdias/minim/config.h index e13d2b798f..9f31ba31cf 100644 --- a/keyboards/matthewdias/minim/config.h +++ b/keyboards/matthewdias/minim/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/matthewdias/model_v/config.h b/keyboards/matthewdias/model_v/config.h index 847599a369..d1c5dcd81d 100644 --- a/keyboards/matthewdias/model_v/config.h +++ b/keyboards/matthewdias/model_v/config.h @@ -56,7 +56,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/matthewdias/txuu/config.h b/keyboards/matthewdias/txuu/config.h index 202777a965..f81c300a13 100644 --- a/keyboards/matthewdias/txuu/config.h +++ b/keyboards/matthewdias/txuu/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/maxipad/config.h b/keyboards/maxipad/config.h index a45c3e442d..7a4b00ccad 100644 --- a/keyboards/maxipad/config.h +++ b/keyboards/maxipad/config.h @@ -53,8 +53,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/maxr1998/pulse4k/config.h b/keyboards/maxr1998/pulse4k/config.h index 75ff88f308..4b9c60aac2 100644 --- a/keyboards/maxr1998/pulse4k/config.h +++ b/keyboards/maxr1998/pulse4k/config.h @@ -70,5 +70,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/mb44/config.h b/keyboards/mb44/config.h index 013efa8570..daafe52b41 100644 --- a/keyboards/mb44/config.h +++ b/keyboards/mb44/config.h @@ -53,9 +53,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/mc_76k/config.h b/keyboards/mc_76k/config.h index a1d28185f1..cc7ac306f4 100644 --- a/keyboards/mc_76k/config.h +++ b/keyboards/mc_76k/config.h @@ -95,7 +95,3 @@ along with this program. If not, see . * useful if your keyboard/keypad is missing keys and you want magic key support. * */ - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mechkeys/mk60/config.h b/keyboards/mechkeys/mk60/config.h index a841152f4f..680c498ef4 100644 --- a/keyboards/mechkeys/mk60/config.h +++ b/keyboards/mechkeys/mk60/config.h @@ -135,8 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/mechlovin/hannah910/config.h b/keyboards/mechlovin/hannah910/config.h index 7e0b9dd30c..cc2ac81bc5 100644 --- a/keyboards/mechlovin/hannah910/config.h +++ b/keyboards/mechlovin/hannah910/config.h @@ -106,8 +106,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/mechlovin/jay60/config.h b/keyboards/mechlovin/jay60/config.h index 0b9770e5e2..521b8ae0db 100644 --- a/keyboards/mechlovin/jay60/config.h +++ b/keyboards/mechlovin/jay60/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechwild/bde/rev2/config.h b/keyboards/mechwild/bde/rev2/config.h index ca14cf784d..0f290ecc33 100644 --- a/keyboards/mechwild/bde/rev2/config.h +++ b/keyboards/mechwild/bde/rev2/config.h @@ -68,7 +68,3 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/mechwild/murphpad/config.h b/keyboards/mechwild/murphpad/config.h index 0887025ad8..3995546e8e 100644 --- a/keyboards/mechwild/murphpad/config.h +++ b/keyboards/mechwild/murphpad/config.h @@ -85,10 +85,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/mechwild/obe/config.h b/keyboards/mechwild/obe/config.h index 03ff968787..1b7ed824aa 100644 --- a/keyboards/mechwild/obe/config.h +++ b/keyboards/mechwild/obe/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 5 #define BOOTMAGIC_LITE_COLUMN 4 diff --git a/keyboards/mechwild/waka60/config.h b/keyboards/mechwild/waka60/config.h index 636e13de38..e3fc719b8f 100644 --- a/keyboards/mechwild/waka60/config.h +++ b/keyboards/mechwild/waka60/config.h @@ -134,10 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/melgeek/mach80/config.h b/keyboards/melgeek/mach80/config.h index 8f8377941f..0e98030e25 100755 --- a/keyboards/melgeek/mach80/config.h +++ b/keyboards/melgeek/mach80/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mj61/config.h b/keyboards/melgeek/mj61/config.h index e3097b9cf7..0b5bd9ff48 100644 --- a/keyboards/melgeek/mj61/config.h +++ b/keyboards/melgeek/mj61/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mj63/config.h b/keyboards/melgeek/mj63/config.h index db80371a2b..ddd953e1de 100644 --- a/keyboards/melgeek/mj63/config.h +++ b/keyboards/melgeek/mj63/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mj64/config.h b/keyboards/melgeek/mj64/config.h index a249be3fea..684c48720b 100644 --- a/keyboards/melgeek/mj64/config.h +++ b/keyboards/melgeek/mj64/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mj65/config.h b/keyboards/melgeek/mj65/config.h index 70a12d9255..4cf4f3f233 100644 --- a/keyboards/melgeek/mj65/config.h +++ b/keyboards/melgeek/mj65/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mojo68/config.h b/keyboards/melgeek/mojo68/config.h index 15ea1a58b4..ee441be0e1 100755 --- a/keyboards/melgeek/mojo68/config.h +++ b/keyboards/melgeek/mojo68/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/mojo75/config.h b/keyboards/melgeek/mojo75/config.h index 9e2d1080d1..2db335dafb 100644 --- a/keyboards/melgeek/mojo75/config.h +++ b/keyboards/melgeek/mojo75/config.h @@ -32,10 +32,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/melgeek/z70ultra/config.h b/keyboards/melgeek/z70ultra/config.h index 2df25bf501..0f294c9e00 100644 --- a/keyboards/melgeek/z70ultra/config.h +++ b/keyboards/melgeek/z70ultra/config.h @@ -31,10 +31,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_KEYPRESSES diff --git a/keyboards/meme/config.h b/keyboards/meme/config.h index 0757846f57..58bc794ee8 100644 --- a/keyboards/meme/config.h +++ b/keyboards/meme/config.h @@ -105,5 +105,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/meow65/config.h b/keyboards/meow65/config.h index 54af798314..20f725ee30 100644 --- a/keyboards/meow65/config.h +++ b/keyboards/meow65/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mesa/mesa_tkl/config.h b/keyboards/mesa/mesa_tkl/config.h index 23da260bcf..348d95a809 100644 --- a/keyboards/mesa/mesa_tkl/config.h +++ b/keyboards/mesa/mesa_tkl/config.h @@ -54,7 +54,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/meson/config.h b/keyboards/meson/config.h index e777320487..3abeb479a2 100644 --- a/keyboards/meson/config.h +++ b/keyboards/meson/config.h @@ -109,9 +109,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/mikeneko65/rev3/config.h b/keyboards/mikeneko65/rev3/config.h index dad2532012..33415392f8 100644 --- a/keyboards/mikeneko65/rev3/config.h +++ b/keyboards/mikeneko65/rev3/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mikeneko65/rev4/config.h b/keyboards/mikeneko65/rev4/config.h index 2e7efaf8db..b6b62b880c 100644 --- a/keyboards/mikeneko65/rev4/config.h +++ b/keyboards/mikeneko65/rev4/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/miller/gm862/config.h b/keyboards/miller/gm862/config.h index 09429b4d19..57a832dc08 100644 --- a/keyboards/miller/gm862/config.h +++ b/keyboards/miller/gm862/config.h @@ -28,10 +28,6 @@ /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/millipad/config.h b/keyboards/millipad/config.h index c15d433a4c..cfc91a2a16 100644 --- a/keyboards/millipad/config.h +++ b/keyboards/millipad/config.h @@ -77,12 +77,6 @@ along with this program. If not, see . */ #define FORCE_NKRO - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -91,4 +85,4 @@ along with this program. If not, see . #define ENCODERS_PAD_A { D3 } #define ENCODERS_PAD_B { D2 } -#define ENCODER_RESOLUTION 4 \ No newline at end of file +#define ENCODER_RESOLUTION 4 diff --git a/keyboards/mini_elixivy/config.h b/keyboards/mini_elixivy/config.h index e0853c0251..863934df6b 100644 --- a/keyboards/mini_elixivy/config.h +++ b/keyboards/mini_elixivy/config.h @@ -99,10 +99,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mini_ten_key_plus/config.h b/keyboards/mini_ten_key_plus/config.h index 92ac355fe8..c8a44356f2 100644 --- a/keyboards/mini_ten_key_plus/config.h +++ b/keyboards/mini_ten_key_plus/config.h @@ -99,10 +99,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/miniaxe/config.h b/keyboards/miniaxe/config.h index b9295bad9f..3c0ddf9074 100644 --- a/keyboards/miniaxe/config.h +++ b/keyboards/miniaxe/config.h @@ -122,8 +122,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/mint60/config.h b/keyboards/mint60/config.h index b421349d86..ee44ae446b 100644 --- a/keyboards/mint60/config.h +++ b/keyboards/mint60/config.h @@ -121,5 +121,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/mitosis/config.h b/keyboards/mitosis/config.h index 2c72eed5f2..5c2a0b9657 100644 --- a/keyboards/mitosis/config.h +++ b/keyboards/mitosis/config.h @@ -54,5 +54,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/miuni32/config.h b/keyboards/miuni32/config.h index c25dfcaf99..cf8b875b2f 100644 --- a/keyboards/miuni32/config.h +++ b/keyboards/miuni32/config.h @@ -100,8 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_DI_PIN D0 // The pin your RGB strip is wired to #define RGBLED_NUM 17 // Number of LEDs diff --git a/keyboards/mlego/m48/config.h b/keyboards/mlego/m48/config.h index 6be2373d8f..d1c4da9397 100644 --- a/keyboards/mlego/m48/config.h +++ b/keyboards/mlego/m48/config.h @@ -31,7 +31,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mlego/m60/config.h b/keyboards/mlego/m60/config.h index 07698f7539..18c36671a9 100644 --- a/keyboards/mlego/m60/config.h +++ b/keyboards/mlego/m60/config.h @@ -31,7 +31,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mlego/m60_split/config.h b/keyboards/mlego/m60_split/config.h index 6750d4d40b..7c19f9171d 100644 --- a/keyboards/mlego/m60_split/config.h +++ b/keyboards/mlego/m60_split/config.h @@ -31,7 +31,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mntre/config.h b/keyboards/mntre/config.h index 9ee3d3f272..af5f810741 100644 --- a/keyboards/mntre/config.h +++ b/keyboards/mntre/config.h @@ -92,10 +92,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mode/m65ha_alpha/config.h b/keyboards/mode/m65ha_alpha/config.h index dc921fb335..cdeffe6fa3 100644 --- a/keyboards/mode/m65ha_alpha/config.h +++ b/keyboards/mode/m65ha_alpha/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/mode/m65hi_alpha/config.h b/keyboards/mode/m65hi_alpha/config.h index 1a048e94d2..daacee56ce 100644 --- a/keyboards/mode/m65hi_alpha/config.h +++ b/keyboards/mode/m65hi_alpha/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/mode/m65s/config.h b/keyboards/mode/m65s/config.h index e2e553bca9..9cd3bfcb35 100644 --- a/keyboards/mode/m65s/config.h +++ b/keyboards/mode/m65s/config.h @@ -69,7 +69,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define TAP_CODE_DELAY 50 diff --git a/keyboards/mode/m75h/config.h b/keyboards/mode/m75h/config.h index 980ebc5b66..6618d2bdbd 100644 --- a/keyboards/mode/m75h/config.h +++ b/keyboards/mode/m75h/config.h @@ -67,8 +67,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define TAP_CODE_DELAY 50 diff --git a/keyboards/mode/m75s/config.h b/keyboards/mode/m75s/config.h index 8ac31b069e..9e902a1585 100644 --- a/keyboards/mode/m75s/config.h +++ b/keyboards/mode/m75s/config.h @@ -67,8 +67,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define TAP_CODE_DELAY 50 diff --git a/keyboards/mode/m80v1/config.h b/keyboards/mode/m80v1/config.h index d0c61d1193..a0d39774e6 100644 --- a/keyboards/mode/m80v1/config.h +++ b/keyboards/mode/m80v1/config.h @@ -97,5 +97,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/molecule/config.h b/keyboards/molecule/config.h index e3bc5ad342..419554ed2c 100755 --- a/keyboards/molecule/config.h +++ b/keyboards/molecule/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/momoka_ergo/config.h b/keyboards/momoka_ergo/config.h index 3c22e3fc84..e8fe01f504 100644 --- a/keyboards/momoka_ergo/config.h +++ b/keyboards/momoka_ergo/config.h @@ -113,10 +113,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/monarch/config.h b/keyboards/monarch/config.h index 6822b2f789..90131c5931 100644 --- a/keyboards/monarch/config.h +++ b/keyboards/monarch/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/moonlander/config.h b/keyboards/moonlander/config.h index d6686425c4..bd06c5006d 100644 --- a/keyboards/moonlander/config.h +++ b/keyboards/moonlander/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define DRIVER_ADDR_1 0b1110100 #define DRIVER_ADDR_2 0b1110111 diff --git a/keyboards/morizon/config.h b/keyboards/morizon/config.h index bf9e1b9a35..4b419283cb 100644 --- a/keyboards/morizon/config.h +++ b/keyboards/morizon/config.h @@ -40,7 +40,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mountainblocks/mb17/config.h b/keyboards/mountainblocks/mb17/config.h index aef58dc5da..9667d9e551 100644 --- a/keyboards/mountainblocks/mb17/config.h +++ b/keyboards/mountainblocks/mb17/config.h @@ -90,8 +90,3 @@ along with this program. If not, see . * */ //#define FORCE_NKRO - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/mschwingen/modelm/config.h b/keyboards/mschwingen/modelm/config.h index 2b42bb38ed..57ac1c089b 100644 --- a/keyboards/mschwingen/modelm/config.h +++ b/keyboards/mschwingen/modelm/config.h @@ -57,8 +57,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION //#define DEBUG_MATRIX_SCAN_RATE #define DYNAMIC_MACRO_NO_NESTING diff --git a/keyboards/mt40/config.h b/keyboards/mt40/config.h index a48d758e7f..6626b24f3a 100644 --- a/keyboards/mt40/config.h +++ b/keyboards/mt40/config.h @@ -114,5 +114,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/mtbkeys/mtb60/hotswap/config.h b/keyboards/mtbkeys/mtb60/hotswap/config.h index 6cfc312243..c235686cc8 100644 --- a/keyboards/mtbkeys/mtb60/hotswap/config.h +++ b/keyboards/mtbkeys/mtb60/hotswap/config.h @@ -70,10 +70,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mtbkeys/mtb60/solder/config.h b/keyboards/mtbkeys/mtb60/solder/config.h index 02037e83df..7b0909492d 100644 --- a/keyboards/mtbkeys/mtb60/solder/config.h +++ b/keyboards/mtbkeys/mtb60/solder/config.h @@ -70,10 +70,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/murcielago/rev1/config.h b/keyboards/murcielago/rev1/config.h index 3f71dbca8d..2851ae884b 100644 --- a/keyboards/murcielago/rev1/config.h +++ b/keyboards/murcielago/rev1/config.h @@ -87,10 +87,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/nacly/splitreus62/config.h b/keyboards/nacly/splitreus62/config.h index d8e67661bd..51013ee967 100644 --- a/keyboards/nacly/splitreus62/config.h +++ b/keyboards/nacly/splitreus62/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/nacly/ua62/config.h b/keyboards/nacly/ua62/config.h index 492bba93e8..803bddc294 100644 --- a/keyboards/nacly/ua62/config.h +++ b/keyboards/nacly/ua62/config.h @@ -137,8 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/nemui/config.h b/keyboards/nemui/config.h index e2c3827a5f..32b757d610 100644 --- a/keyboards/nemui/config.h +++ b/keyboards/nemui/config.h @@ -57,5 +57,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/nibiria/stream15/config.h b/keyboards/nibiria/stream15/config.h index a36ee9146e..824357b475 100644 --- a/keyboards/nibiria/stream15/config.h +++ b/keyboards/nibiria/stream15/config.h @@ -60,5 +60,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/nightingale_studios/hailey/config.h b/keyboards/nightingale_studios/hailey/config.h index e3eb062c3b..f3331b3f1c 100644 --- a/keyboards/nightingale_studios/hailey/config.h +++ b/keyboards/nightingale_studios/hailey/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/nightly_boards/alter/rev1/config.h b/keyboards/nightly_boards/alter/rev1/config.h index 4f9bade717..f42c49eb5c 100644 --- a/keyboards/nightly_boards/alter/rev1/config.h +++ b/keyboards/nightly_boards/alter/rev1/config.h @@ -90,10 +90,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/nightly_boards/n2/config.h b/keyboards/nightly_boards/n2/config.h index 5ffa15f084..e19b26e76b 100644 --- a/keyboards/nightly_boards/n2/config.h +++ b/keyboards/nightly_boards/n2/config.h @@ -86,8 +86,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/nightly_boards/n60_s/config.h b/keyboards/nightly_boards/n60_s/config.h index 34656fa134..2f50f49273 100644 --- a/keyboards/nightly_boards/n60_s/config.h +++ b/keyboards/nightly_boards/n60_s/config.h @@ -94,6 +94,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/nightly_boards/n87/config.h b/keyboards/nightly_boards/n87/config.h index 543399e71a..0bb8e62046 100644 --- a/keyboards/nightly_boards/n87/config.h +++ b/keyboards/nightly_boards/n87/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/nightly_boards/n9/config.h b/keyboards/nightly_boards/n9/config.h index b8b29099ca..153d02c245 100644 --- a/keyboards/nightly_boards/n9/config.h +++ b/keyboards/nightly_boards/n9/config.h @@ -86,8 +86,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/nightmare/config.h b/keyboards/nightmare/config.h index 14477ee4de..ac4fe163e6 100644 --- a/keyboards/nightmare/config.h +++ b/keyboards/nightmare/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/novelkeys/novelpad/config.h b/keyboards/novelkeys/novelpad/config.h index a7947220ff..2b96638966 100755 --- a/keyboards/novelkeys/novelpad/config.h +++ b/keyboards/novelkeys/novelpad/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/220/config.h b/keyboards/noxary/220/config.h index 522d1beca8..05fe1be559 100644 --- a/keyboards/noxary/220/config.h +++ b/keyboards/noxary/220/config.h @@ -109,8 +109,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/260/config.h b/keyboards/noxary/260/config.h index 2a9ac07bdb..29818862da 100644 --- a/keyboards/noxary/260/config.h +++ b/keyboards/noxary/260/config.h @@ -142,8 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/268_2/config.h b/keyboards/noxary/268_2/config.h index c8fbdd3bf4..b447a37f57 100644 --- a/keyboards/noxary/268_2/config.h +++ b/keyboards/noxary/268_2/config.h @@ -110,8 +110,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/280/config.h b/keyboards/noxary/280/config.h index 15de702859..3147d12528 100644 --- a/keyboards/noxary/280/config.h +++ b/keyboards/noxary/280/config.h @@ -109,8 +109,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/378/config.h b/keyboards/noxary/378/config.h index a159af02fd..fa08601875 100644 --- a/keyboards/noxary/378/config.h +++ b/keyboards/noxary/378/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/noxary/valhalla/config.h b/keyboards/noxary/valhalla/config.h index 4e87afecb9..abce175dce 100644 --- a/keyboards/noxary/valhalla/config.h +++ b/keyboards/noxary/valhalla/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/noxary/vulcan/config.h b/keyboards/noxary/vulcan/config.h index 6281cb07d1..e478071110 100644 --- a/keyboards/noxary/vulcan/config.h +++ b/keyboards/noxary/vulcan/config.h @@ -99,8 +99,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/noxary/x268/config.h b/keyboards/noxary/x268/config.h index 5f33c18e81..3c4965a6cc 100644 --- a/keyboards/noxary/x268/config.h +++ b/keyboards/noxary/x268/config.h @@ -117,8 +117,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/numatreus/config.h b/keyboards/numatreus/config.h index c22c67ed8c..b2c147fcc1 100644 --- a/keyboards/numatreus/config.h +++ b/keyboards/numatreus/config.h @@ -95,5 +95,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/oddball/config.h b/keyboards/oddball/config.h index 4bc9c7997c..cfb134c4e3 100644 --- a/keyboards/oddball/config.h +++ b/keyboards/oddball/config.h @@ -45,10 +45,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* optical sensor settings */ #define SCROLL_DIVIDER 12 #define CPI_1 2000 diff --git a/keyboards/orthodox/rev1/config.h b/keyboards/orthodox/rev1/config.h index 1dadae388d..db45e2d75d 100644 --- a/keyboards/orthodox/rev1/config.h +++ b/keyboards/orthodox/rev1/config.h @@ -87,5 +87,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/orthodox/rev3/config.h b/keyboards/orthodox/rev3/config.h index ae51281647..678a3603f1 100644 --- a/keyboards/orthodox/rev3/config.h +++ b/keyboards/orthodox/rev3/config.h @@ -91,5 +91,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/orthodox/rev3_teensy/config.h b/keyboards/orthodox/rev3_teensy/config.h index a35c276d95..d21d50e579 100644 --- a/keyboards/orthodox/rev3_teensy/config.h +++ b/keyboards/orthodox/rev3_teensy/config.h @@ -85,5 +85,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/paprikman/albacore/config.h b/keyboards/paprikman/albacore/config.h index 3fa81b160f..37a211726e 100644 --- a/keyboards/paprikman/albacore/config.h +++ b/keyboards/paprikman/albacore/config.h @@ -71,10 +71,6 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Set lower left modifier key as a bootmagic key */ #define BOOTMAGIC_LITE_ROW 1 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/parallel/parallel_65/hotswap/config.h b/keyboards/parallel/parallel_65/hotswap/config.h index 26734936ed..ae730c3c9f 100644 --- a/keyboards/parallel/parallel_65/hotswap/config.h +++ b/keyboards/parallel/parallel_65/hotswap/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/parallel/parallel_65/soldered/config.h b/keyboards/parallel/parallel_65/soldered/config.h index a5eace0be2..2ff2492ad4 100644 --- a/keyboards/parallel/parallel_65/soldered/config.h +++ b/keyboards/parallel/parallel_65/soldered/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/pdxkbc/config.h b/keyboards/pdxkbc/config.h index dad0396330..ce6c79bc32 100644 --- a/keyboards/pdxkbc/config.h +++ b/keyboards/pdxkbc/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/pearl/config.h b/keyboards/pearl/config.h index 09e0c8e1e4..2e9a2faf1d 100644 --- a/keyboards/pearl/config.h +++ b/keyboards/pearl/config.h @@ -44,6 +44,3 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 5 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/peranekofactory/tone/rev1/config.h b/keyboards/peranekofactory/tone/rev1/config.h index 54a59ed551..38bfd6259c 100644 --- a/keyboards/peranekofactory/tone/rev1/config.h +++ b/keyboards/peranekofactory/tone/rev1/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/peranekofactory/tone/rev2/config.h b/keyboards/peranekofactory/tone/rev2/config.h index 54a59ed551..38bfd6259c 100644 --- a/keyboards/peranekofactory/tone/rev2/config.h +++ b/keyboards/peranekofactory/tone/rev2/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/phantom/config.h b/keyboards/phantom/config.h index a948987d18..b30adef9dd 100644 --- a/keyboards/phantom/config.h +++ b/keyboards/phantom/config.h @@ -135,10 +135,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/pico/65keys/config.h b/keyboards/pico/65keys/config.h index 981418263f..e0cc6ea566 100644 --- a/keyboards/pico/65keys/config.h +++ b/keyboards/pico/65keys/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/pico/70keys/config.h b/keyboards/pico/70keys/config.h index 2d94f4d5f7..b2d07c9691 100644 --- a/keyboards/pico/70keys/config.h +++ b/keyboards/pico/70keys/config.h @@ -80,8 +80,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define MOUSEKEY_INTERVAL 20 #define MOUSEKEY_DELAY 0 diff --git a/keyboards/pinky/3/config.h b/keyboards/pinky/3/config.h index c8d576388c..78192bc19e 100644 --- a/keyboards/pinky/3/config.h +++ b/keyboards/pinky/3/config.h @@ -107,8 +107,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/pinky/4/config.h b/keyboards/pinky/4/config.h index d0d46f1926..f5a9024045 100644 --- a/keyboards/pinky/4/config.h +++ b/keyboards/pinky/4/config.h @@ -107,8 +107,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/pisces/config.h b/keyboards/pisces/config.h index 7c6c65f247..163edb8727 100644 --- a/keyboards/pisces/config.h +++ b/keyboards/pisces/config.h @@ -64,7 +64,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/pizzakeyboards/pizza65/config.h b/keyboards/pizzakeyboards/pizza65/config.h index 039fc68263..505a573630 100644 --- a/keyboards/pizzakeyboards/pizza65/config.h +++ b/keyboards/pizzakeyboards/pizza65/config.h @@ -49,10 +49,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/planck/config.h b/keyboards/planck/config.h index a86359327a..8fb9dda32a 100644 --- a/keyboards/planck/config.h +++ b/keyboards/planck/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/planck/ez/config.h b/keyboards/planck/ez/config.h index 537c215096..d948fb5808 100644 --- a/keyboards/planck/ez/config.h +++ b/keyboards/planck/ez/config.h @@ -106,8 +106,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // #define WS2812_LED_N 2 // #define RGBLED_NUM WS2812_LED_N diff --git a/keyboards/planck/rev6/config.h b/keyboards/planck/rev6/config.h index aa70d46a8e..778fa12fcc 100644 --- a/keyboards/planck/rev6/config.h +++ b/keyboards/planck/rev6/config.h @@ -102,9 +102,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* * WS2812 Underglow Matrix options diff --git a/keyboards/planck/rev6_drop/config.h b/keyboards/planck/rev6_drop/config.h index c1baa34b72..f41d46b889 100644 --- a/keyboards/planck/rev6_drop/config.h +++ b/keyboards/planck/rev6_drop/config.h @@ -109,8 +109,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* * WS2812 Underglow Matrix options diff --git a/keyboards/ploopyco/mouse/config.h b/keyboards/ploopyco/mouse/config.h index df1ea1297b..98fc81bb05 100644 --- a/keyboards/ploopyco/mouse/config.h +++ b/keyboards/ploopyco/mouse/config.h @@ -63,8 +63,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ploopyco/trackball/config.h b/keyboards/ploopyco/trackball/config.h index 4275e9d119..dd068e4838 100644 --- a/keyboards/ploopyco/trackball/config.h +++ b/keyboards/ploopyco/trackball/config.h @@ -41,8 +41,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define USB_MAX_POWER_CONSUMPTION 100 diff --git a/keyboards/ploopyco/trackball_mini/config.h b/keyboards/ploopyco/trackball_mini/config.h index 731e6fbc97..9c53f1f501 100644 --- a/keyboards/ploopyco/trackball_mini/config.h +++ b/keyboards/ploopyco/trackball_mini/config.h @@ -42,8 +42,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define USB_MAX_POWER_CONSUMPTION 100 diff --git a/keyboards/ploopyco/trackball_nano/config.h b/keyboards/ploopyco/trackball_nano/config.h index 98a2c662fa..985ddc09ba 100644 --- a/keyboards/ploopyco/trackball_nano/config.h +++ b/keyboards/ploopyco/trackball_nano/config.h @@ -38,8 +38,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION #define USB_MAX_POWER_CONSUMPTION 100 diff --git a/keyboards/pluckey/config.h b/keyboards/pluckey/config.h index 295fe93a85..f98318437b 100644 --- a/keyboards/pluckey/config.h +++ b/keyboards/pluckey/config.h @@ -81,10 +81,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/plume/plume65/config.h b/keyboards/plume/plume65/config.h index 5035ee1ead..b7d91e1023 100644 --- a/keyboards/plume/plume65/config.h +++ b/keyboards/plume/plume65/config.h @@ -126,8 +126,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/plut0nium/0x3e/config.h b/keyboards/plut0nium/0x3e/config.h index f61d22228f..055fe63ce7 100644 --- a/keyboards/plut0nium/0x3e/config.h +++ b/keyboards/plut0nium/0x3e/config.h @@ -105,10 +105,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/pohjolaworks/louhi/config.h b/keyboards/pohjolaworks/louhi/config.h index c790ddfbb2..b9cbde16d3 100644 --- a/keyboards/pohjolaworks/louhi/config.h +++ b/keyboards/pohjolaworks/louhi/config.h @@ -141,10 +141,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/polilla/rev1/config.h b/keyboards/polilla/rev1/config.h index 5f0f10d355..b48e99e6d5 100644 --- a/keyboards/polilla/rev1/config.h +++ b/keyboards/polilla/rev1/config.h @@ -73,10 +73,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/portal_66/hotswap/config.h b/keyboards/portal_66/hotswap/config.h index db4c59bd44..96ea091a20 100644 --- a/keyboards/portal_66/hotswap/config.h +++ b/keyboards/portal_66/hotswap/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/portal_66/soldered/config.h b/keyboards/portal_66/soldered/config.h index 3a3efc80b5..f5e0d734c4 100644 --- a/keyboards/portal_66/soldered/config.h +++ b/keyboards/portal_66/soldered/config.h @@ -100,10 +100,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/pos78/config.h b/keyboards/pos78/config.h index c070d1358d..81449c844f 100644 --- a/keyboards/pos78/config.h +++ b/keyboards/pos78/config.h @@ -106,10 +106,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/preonic/config.h b/keyboards/preonic/config.h index 8f72de9094..6bcfa26380 100644 --- a/keyboards/preonic/config.h +++ b/keyboards/preonic/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/preonic/rev3/config.h b/keyboards/preonic/rev3/config.h index f2c4b3c3d8..efa32d5916 100644 --- a/keyboards/preonic/rev3/config.h +++ b/keyboards/preonic/rev3/config.h @@ -89,8 +89,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* * WS2812 Underglow Matrix options diff --git a/keyboards/preonic/rev3_drop/config.h b/keyboards/preonic/rev3_drop/config.h index 1a0605e739..813675eb84 100644 --- a/keyboards/preonic/rev3_drop/config.h +++ b/keyboards/preonic/rev3_drop/config.h @@ -91,8 +91,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* * WS2812 Underglow Matrix options diff --git a/keyboards/program_yoink/config.h b/keyboards/program_yoink/config.h index 8ff859913a..156044d24a 100644 --- a/keyboards/program_yoink/config.h +++ b/keyboards/program_yoink/config.h @@ -94,7 +94,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/projectcain/vault35/config.h b/keyboards/projectcain/vault35/config.h index d88863e5b5..1490b0ba4e 100644 --- a/keyboards/projectcain/vault35/config.h +++ b/keyboards/projectcain/vault35/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/projectcain/vault45/config.h b/keyboards/projectcain/vault45/config.h index 6accb223a4..e531c7f530 100644 --- a/keyboards/projectcain/vault45/config.h +++ b/keyboards/projectcain/vault45/config.h @@ -147,10 +147,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/projectkb/alice/rev1/config.h b/keyboards/projectkb/alice/rev1/config.h index 05180c756f..498c1f9370 100644 --- a/keyboards/projectkb/alice/rev1/config.h +++ b/keyboards/projectkb/alice/rev1/config.h @@ -81,5 +81,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/projectkb/alice/rev2/config.h b/keyboards/projectkb/alice/rev2/config.h index 0b017936c5..21742ac7b8 100644 --- a/keyboards/projectkb/alice/rev2/config.h +++ b/keyboards/projectkb/alice/rev2/config.h @@ -82,5 +82,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/prototypist/allison/config.h b/keyboards/prototypist/allison/config.h index 85cb6ee9f5..89a24768de 100644 --- a/keyboards/prototypist/allison/config.h +++ b/keyboards/prototypist/allison/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/prototypist/allison_numpad/config.h b/keyboards/prototypist/allison_numpad/config.h index 581926c24c..59fb02d9a5 100644 --- a/keyboards/prototypist/allison_numpad/config.h +++ b/keyboards/prototypist/allison_numpad/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/psuieee/pluto12/config.h b/keyboards/psuieee/pluto12/config.h index b59bd05afe..49466f7b4a 100644 --- a/keyboards/psuieee/pluto12/config.h +++ b/keyboards/psuieee/pluto12/config.h @@ -36,7 +36,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/pteron36/config.h b/keyboards/pteron36/config.h index d6f31514e6..793dc8e5ed 100644 --- a/keyboards/pteron36/config.h +++ b/keyboards/pteron36/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -164,4 +160,4 @@ along with this program. If not, see . //RGB Underglow #define RGB_DI_PIN B6 -#define RGBLED_NUM 10 \ No newline at end of file +#define RGBLED_NUM 10 diff --git a/keyboards/punk75/config.h b/keyboards/punk75/config.h index 76d620b222..61950da946 100644 --- a/keyboards/punk75/config.h +++ b/keyboards/punk75/config.h @@ -66,7 +66,3 @@ along with this program. If not, see . * This is userful for the Windows task manager shortcut (ctrl+shift+esc). */ // #define GRAVE_ESC_CTRL_OVERRIDE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/qpockets/wanten/config.h b/keyboards/qpockets/wanten/config.h index ed6294f73f..18a91c1dfd 100644 --- a/keyboards/qpockets/wanten/config.h +++ b/keyboards/qpockets/wanten/config.h @@ -152,10 +152,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/quad_h/lb75/config.h b/keyboards/quad_h/lb75/config.h index e752dfcdd5..36cb275a97 100644 --- a/keyboards/quad_h/lb75/config.h +++ b/keyboards/quad_h/lb75/config.h @@ -134,8 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/quantrik/kyuu/config.h b/keyboards/quantrik/kyuu/config.h index a2fc756fba..772e404ad0 100644 --- a/keyboards/quantrik/kyuu/config.h +++ b/keyboards/quantrik/kyuu/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/qwertyydox/config.h b/keyboards/qwertyydox/config.h index 4cd214e222..4ca8fed192 100644 --- a/keyboards/qwertyydox/config.h +++ b/keyboards/qwertyydox/config.h @@ -144,8 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/rabbit/rabbit68/config.h b/keyboards/rabbit/rabbit68/config.h index bae66808ac..9ebd5e55ae 100644 --- a/keyboards/rabbit/rabbit68/config.h +++ b/keyboards/rabbit/rabbit68/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ramonimbao/aelith/config.h b/keyboards/ramonimbao/aelith/config.h index 0c4c2285d5..a2911dac4f 100644 --- a/keyboards/ramonimbao/aelith/config.h +++ b/keyboards/ramonimbao/aelith/config.h @@ -99,7 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/chevron/config.h b/keyboards/ramonimbao/chevron/config.h index ec52ee5954..9deeff3856 100644 --- a/keyboards/ramonimbao/chevron/config.h +++ b/keyboards/ramonimbao/chevron/config.h @@ -133,10 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/herringbone/pro/config.h b/keyboards/ramonimbao/herringbone/pro/config.h index 4aab52fcb5..f78665a880 100644 --- a/keyboards/ramonimbao/herringbone/pro/config.h +++ b/keyboards/ramonimbao/herringbone/pro/config.h @@ -108,10 +108,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/herringbone/v1/config.h b/keyboards/ramonimbao/herringbone/v1/config.h index 9944cfbd19..7f37bcc8b2 100644 --- a/keyboards/ramonimbao/herringbone/v1/config.h +++ b/keyboards/ramonimbao/herringbone/v1/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/mona/v1/config.h b/keyboards/ramonimbao/mona/v1/config.h index 81ddb806e8..5ee7ca3e33 100644 --- a/keyboards/ramonimbao/mona/v1/config.h +++ b/keyboards/ramonimbao/mona/v1/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/mona/v1_1/config.h b/keyboards/ramonimbao/mona/v1_1/config.h index de657cd8e6..ce9c01139e 100644 --- a/keyboards/ramonimbao/mona/v1_1/config.h +++ b/keyboards/ramonimbao/mona/v1_1/config.h @@ -55,8 +55,3 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/mona/v32a/config.h b/keyboards/ramonimbao/mona/v32a/config.h index 9cd47cd024..fdd80e59aa 100644 --- a/keyboards/ramonimbao/mona/v32a/config.h +++ b/keyboards/ramonimbao/mona/v32a/config.h @@ -55,8 +55,3 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST - - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/squishy65/config.h b/keyboards/ramonimbao/squishy65/config.h index 9aa3c8d82d..1f2bfd7e66 100644 --- a/keyboards/ramonimbao/squishy65/config.h +++ b/keyboards/ramonimbao/squishy65/config.h @@ -64,5 +64,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/squishyfrl/config.h b/keyboards/ramonimbao/squishyfrl/config.h index 0c1d417b81..9a50948771 100644 --- a/keyboards/ramonimbao/squishyfrl/config.h +++ b/keyboards/ramonimbao/squishyfrl/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/squishytkl/config.h b/keyboards/ramonimbao/squishytkl/config.h index ebebc35bb4..0ee0bc9509 100644 --- a/keyboards/ramonimbao/squishytkl/config.h +++ b/keyboards/ramonimbao/squishytkl/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/tkl_ff/config.h b/keyboards/ramonimbao/tkl_ff/config.h index ec73601f84..d0b3ee75ff 100644 --- a/keyboards/ramonimbao/tkl_ff/config.h +++ b/keyboards/ramonimbao/tkl_ff/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ramonimbao/wete/v1/config.h b/keyboards/ramonimbao/wete/v1/config.h index 3d89550090..ae9ffc6d97 100644 --- a/keyboards/ramonimbao/wete/v1/config.h +++ b/keyboards/ramonimbao/wete/v1/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ramonimbao/wete/v2/config.h b/keyboards/ramonimbao/wete/v2/config.h index 00cc6593d3..d66fe09ad3 100644 --- a/keyboards/ramonimbao/wete/v2/config.h +++ b/keyboards/ramonimbao/wete/v2/config.h @@ -150,10 +150,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/rart/rartlice/config.h b/keyboards/rart/rartlice/config.h index fc6fbaa117..cf02cfedb6 100644 --- a/keyboards/rart/rartlice/config.h +++ b/keyboards/rart/rartlice/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rate/pistachio/rev1/config.h b/keyboards/rate/pistachio/rev1/config.h index 24f121ef17..efffd3c9e2 100644 --- a/keyboards/rate/pistachio/rev1/config.h +++ b/keyboards/rate/pistachio/rev1/config.h @@ -61,7 +61,3 @@ along with this program. If not, see . /* nKey Rollover */ #define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/rate/pistachio/rev2/config.h b/keyboards/rate/pistachio/rev2/config.h index d0de298542..5363f76df4 100644 --- a/keyboards/rate/pistachio/rev2/config.h +++ b/keyboards/rate/pistachio/rev2/config.h @@ -65,7 +65,3 @@ along with this program. If not, see . /* nKey Rollover */ #define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/rate/pistachio_mp/config.h b/keyboards/rate/pistachio_mp/config.h index 4da866bb7d..09b067c8ee 100644 --- a/keyboards/rate/pistachio_mp/config.h +++ b/keyboards/rate/pistachio_mp/config.h @@ -72,7 +72,3 @@ along with this program. If not, see . /* nKey Rollover */ #define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/rate/pistachio_pro/config.h b/keyboards/rate/pistachio_pro/config.h index f268967f6e..d140aa5407 100644 --- a/keyboards/rate/pistachio_pro/config.h +++ b/keyboards/rate/pistachio_pro/config.h @@ -86,10 +86,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/recompile_keys/mio/config.h b/keyboards/recompile_keys/mio/config.h index 7eab9ea590..0c4438e53e 100644 --- a/keyboards/recompile_keys/mio/config.h +++ b/keyboards/recompile_keys/mio/config.h @@ -58,10 +58,6 @@ along with this program. If not, see . # define RGBLIGHT_ANIMATIONS #endif -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/recompile_keys/nomu30/rev2/config.h b/keyboards/recompile_keys/nomu30/rev2/config.h index de9b37ec26..49d80a7162 100644 --- a/keyboards/recompile_keys/nomu30/rev2/config.h +++ b/keyboards/recompile_keys/nomu30/rev2/config.h @@ -41,7 +41,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/redox/rev1/config.h b/keyboards/redox/rev1/config.h index c9863fdcb6..95c4e3cbbf 100644 --- a/keyboards/redox/rev1/config.h +++ b/keyboards/redox/rev1/config.h @@ -78,5 +78,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/redox/rev1/proton_c/config.h b/keyboards/redox/rev1/proton_c/config.h index 4ec4a975a4..eec50ab879 100644 --- a/keyboards/redox/rev1/proton_c/config.h +++ b/keyboards/redox/rev1/proton_c/config.h @@ -62,5 +62,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/redox_w/config.h b/keyboards/redox_w/config.h index c4aeb32d58..4fe2447b06 100644 --- a/keyboards/redox_w/config.h +++ b/keyboards/redox_w/config.h @@ -53,5 +53,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/redscarf_iiplus/verb/config.h b/keyboards/redscarf_iiplus/verb/config.h index c313b90a32..daf1bc8823 100755 --- a/keyboards/redscarf_iiplus/verb/config.h +++ b/keyboards/redscarf_iiplus/verb/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/redscarf_iiplus/verc/config.h b/keyboards/redscarf_iiplus/verc/config.h index c313b90a32..daf1bc8823 100755 --- a/keyboards/redscarf_iiplus/verc/config.h +++ b/keyboards/redscarf_iiplus/verc/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/redscarf_iiplus/verd/config.h b/keyboards/redscarf_iiplus/verd/config.h index 94b0e88539..d0ab1abe33 100644 --- a/keyboards/redscarf_iiplus/verd/config.h +++ b/keyboards/redscarf_iiplus/verd/config.h @@ -142,8 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/retro_75/config.h b/keyboards/retro_75/config.h index 6ab89d7617..5d8c26450d 100644 --- a/keyboards/retro_75/config.h +++ b/keyboards/retro_75/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/reversestudio/decadepad/config.h b/keyboards/reversestudio/decadepad/config.h index 383a539d78..f4bbdfda11 100644 --- a/keyboards/reversestudio/decadepad/config.h +++ b/keyboards/reversestudio/decadepad/config.h @@ -79,5 +79,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/reviung/reviung33/config.h b/keyboards/reviung/reviung33/config.h index b65d1d7c39..f113de6d11 100644 --- a/keyboards/reviung/reviung33/config.h +++ b/keyboards/reviung/reviung33/config.h @@ -128,10 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung34/config.h b/keyboards/reviung/reviung34/config.h index 0847678e86..254ea550af 100755 --- a/keyboards/reviung/reviung34/config.h +++ b/keyboards/reviung/reviung34/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/reviung/reviung39/config.h b/keyboards/reviung/reviung39/config.h index 098497bc9f..1377cecd3f 100644 --- a/keyboards/reviung/reviung39/config.h +++ b/keyboards/reviung/reviung39/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/reviung/reviung41/config.h b/keyboards/reviung/reviung41/config.h index 967ca791d5..afa83220c7 100644 --- a/keyboards/reviung/reviung41/config.h +++ b/keyboards/reviung/reviung41/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/reviung/reviung5/config.h b/keyboards/reviung/reviung5/config.h index b06c5797fd..38b88c07a8 100644 --- a/keyboards/reviung/reviung5/config.h +++ b/keyboards/reviung/reviung5/config.h @@ -136,10 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung53/config.h b/keyboards/reviung/reviung53/config.h index d73e6eab8a..f874297d77 100644 --- a/keyboards/reviung/reviung53/config.h +++ b/keyboards/reviung/reviung53/config.h @@ -129,10 +129,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/reviung/reviung61/config.h b/keyboards/reviung/reviung61/config.h index 26588d8688..0d10c983c9 100644 --- a/keyboards/reviung/reviung61/config.h +++ b/keyboards/reviung/reviung61/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/rgbkb/sol/config.h b/keyboards/rgbkb/sol/config.h index e813894549..50cb5b82b7 100644 --- a/keyboards/rgbkb/sol/config.h +++ b/keyboards/rgbkb/sol/config.h @@ -130,5 +130,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rgbkb/zen/rev1/config.h b/keyboards/rgbkb/zen/rev1/config.h index 649a380055..d41ffa477d 100644 --- a/keyboards/rgbkb/zen/rev1/config.h +++ b/keyboards/rgbkb/zen/rev1/config.h @@ -69,5 +69,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rgbkb/zen/rev2/config.h b/keyboards/rgbkb/zen/rev2/config.h index 859d115ea5..e37bd7a168 100644 --- a/keyboards/rgbkb/zen/rev2/config.h +++ b/keyboards/rgbkb/zen/rev2/config.h @@ -79,5 +79,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rgbkb/zygomorph/rev1/config.h b/keyboards/rgbkb/zygomorph/rev1/config.h index 190a8bbe3e..19fd28d2ec 100644 --- a/keyboards/rgbkb/zygomorph/rev1/config.h +++ b/keyboards/rgbkb/zygomorph/rev1/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rocketboard_16/config.h b/keyboards/rocketboard_16/config.h index cd99fcc73b..d06895f709 100644 --- a/keyboards/rocketboard_16/config.h +++ b/keyboards/rocketboard_16/config.h @@ -79,5 +79,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rominronin/katana60/rev1/config.h b/keyboards/rominronin/katana60/rev1/config.h index fe10d1a533..fea2d7d643 100644 --- a/keyboards/rominronin/katana60/rev1/config.h +++ b/keyboards/rominronin/katana60/rev1/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rominronin/katana60/rev2/config.h b/keyboards/rominronin/katana60/rev2/config.h index 7eff68a7f4..24984c8179 100644 --- a/keyboards/rominronin/katana60/rev2/config.h +++ b/keyboards/rominronin/katana60/rev2/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/roseslite/config.h b/keyboards/roseslite/config.h index 48e251e96d..44f415b379 100644 --- a/keyboards/roseslite/config.h +++ b/keyboards/roseslite/config.h @@ -127,5 +127,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/rubi/config.h b/keyboards/rubi/config.h index 5b6b1c4531..25c7aa5be7 100644 --- a/keyboards/rubi/config.h +++ b/keyboards/rubi/config.h @@ -58,8 +58,4 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define OLED_FONT_H "lib/glcdfont.c" diff --git a/keyboards/runes/vaengr/config.h b/keyboards/runes/vaengr/config.h index 22b38760c4..67ba4ca0fe 100644 --- a/keyboards/runes/vaengr/config.h +++ b/keyboards/runes/vaengr/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ryanbaekr/rb69/config.h b/keyboards/ryanbaekr/rb69/config.h index 2112eda1a7..0464befc5f 100644 --- a/keyboards/ryanbaekr/rb69/config.h +++ b/keyboards/ryanbaekr/rb69/config.h @@ -112,7 +112,3 @@ along with this program. If not, see . * */ //#define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ryanbaekr/rb86/config.h b/keyboards/ryanbaekr/rb86/config.h index ec93c2b3c5..fd076dd706 100644 --- a/keyboards/ryanbaekr/rb86/config.h +++ b/keyboards/ryanbaekr/rb86/config.h @@ -90,7 +90,3 @@ along with this program. If not, see . * */ //#define FORCE_NKRO - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/sandwich/keeb68/config.h b/keyboards/sandwich/keeb68/config.h index 7dddf54d76..9395d8ef1a 100644 --- a/keyboards/sandwich/keeb68/config.h +++ b/keyboards/sandwich/keeb68/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/satt/comet46/config.h b/keyboards/satt/comet46/config.h index 5ea40c14c5..d75294dc13 100644 --- a/keyboards/satt/comet46/config.h +++ b/keyboards/satt/comet46/config.h @@ -54,8 +54,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // Define masks for modifiers #define MODS_SHIFT_MASK (MOD_BIT(KC_LSHIFT)|MOD_BIT(KC_RSHIFT)) diff --git a/keyboards/satt/vision/config.h b/keyboards/satt/vision/config.h index 62a7244aa4..2db8fa8b29 100644 --- a/keyboards/satt/vision/config.h +++ b/keyboards/satt/vision/config.h @@ -58,5 +58,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/scatter42/config.h b/keyboards/scatter42/config.h index 3bca175cc5..ca7ce70ff3 100644 --- a/keyboards/scatter42/config.h +++ b/keyboards/scatter42/config.h @@ -138,10 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/sck/m0116b/config.h b/keyboards/sck/m0116b/config.h index b01ea2d2ef..b008ff1b24 100644 --- a/keyboards/sck/m0116b/config.h +++ b/keyboards/sck/m0116b/config.h @@ -136,8 +136,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/sck/neiso/config.h b/keyboards/sck/neiso/config.h index ccf4da9f10..9ff392ec25 100644 --- a/keyboards/sck/neiso/config.h +++ b/keyboards/sck/neiso/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/sck/osa/config.h b/keyboards/sck/osa/config.h index 957652f286..6e3d617e9a 100644 --- a/keyboards/sck/osa/config.h +++ b/keyboards/sck/osa/config.h @@ -142,8 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/sekigon/grs_70ec/config.h b/keyboards/sekigon/grs_70ec/config.h index b1559fcc2f..2eb52658e5 100644 --- a/keyboards/sekigon/grs_70ec/config.h +++ b/keyboards/sekigon/grs_70ec/config.h @@ -145,10 +145,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/senselessclay/ck60/config.h b/keyboards/senselessclay/ck60/config.h index f826ad9ad7..dc2cb68c79 100644 --- a/keyboards/senselessclay/ck60/config.h +++ b/keyboards/senselessclay/ck60/config.h @@ -74,7 +74,3 @@ along with this program. If not, see . # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE # define ENABLE_RGB_MATRIX_MULTISPLASH # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/senselessclay/ck65/config.h b/keyboards/senselessclay/ck65/config.h index 772b2e410a..f23560f164 100644 --- a/keyboards/senselessclay/ck65/config.h +++ b/keyboards/senselessclay/ck65/config.h @@ -102,10 +102,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -116,4 +112,4 @@ along with this program. If not, see . #define RGBLIGHT_ANIMATIONS #define RGBLIGHT_LIMIT_VAL 122 #define RGBLIGHT_SLEEP -#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL+5 \ No newline at end of file +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL+5 diff --git a/keyboards/senselessclay/gos65/config.h b/keyboards/senselessclay/gos65/config.h index e910f5a15d..5656d77ea5 100644 --- a/keyboards/senselessclay/gos65/config.h +++ b/keyboards/senselessclay/gos65/config.h @@ -107,10 +107,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -120,4 +116,4 @@ along with this program. If not, see . #define RGBLED_NUM 68 #define RGBLIGHT_ANIMATIONS #define RGBLIGHT_LIMIT_VAL 125 -#define RGBLIGHT_SLEEP \ No newline at end of file +#define RGBLIGHT_SLEEP diff --git a/keyboards/senselessclay/had60/config.h b/keyboards/senselessclay/had60/config.h index a410ee91d5..60a4b23d02 100644 --- a/keyboards/senselessclay/had60/config.h +++ b/keyboards/senselessclay/had60/config.h @@ -105,10 +105,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/sentraq/s60_x/default/config.h b/keyboards/sentraq/s60_x/default/config.h index 355adc6921..3f08499531 100644 --- a/keyboards/sentraq/s60_x/default/config.h +++ b/keyboards/sentraq/s60_x/default/config.h @@ -41,5 +41,3 @@ #define LOCKING_RESYNC_ENABLE #define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/shapeshifter4060/config.h b/keyboards/shapeshifter4060/config.h index c8953821a7..ee84318f3d 100644 --- a/keyboards/shapeshifter4060/config.h +++ b/keyboards/shapeshifter4060/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . // #define NO_ACTION_LAYER // #define NO_ACTION_TAPPING // #define NO_ACTION_ONESHOT -// #define NO_ACTION_MACRO -// #define NO_ACTION_FUNCTION diff --git a/keyboards/shiro/config.h b/keyboards/shiro/config.h index 52c0f361fd..0e7ac54f97 100644 --- a/keyboards/shiro/config.h +++ b/keyboards/shiro/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/shk9/config.h b/keyboards/shk9/config.h index a8ddd3f870..059515c776 100644 --- a/keyboards/shk9/config.h +++ b/keyboards/shk9/config.h @@ -45,7 +45,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/sidderskb/majbritt/rev2/config.h b/keyboards/sidderskb/majbritt/rev2/config.h index 06049727cb..6bee0fa6bf 100644 --- a/keyboards/sidderskb/majbritt/rev2/config.h +++ b/keyboards/sidderskb/majbritt/rev2/config.h @@ -43,6 +43,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/silverbullet44/config.h b/keyboards/silverbullet44/config.h index 5b4ae5a110..28b53eb066 100644 --- a/keyboards/silverbullet44/config.h +++ b/keyboards/silverbullet44/config.h @@ -180,10 +180,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/sirius/uni660/rev1/config.h b/keyboards/sirius/uni660/rev1/config.h index f9815844cb..4b810e2cd6 100644 --- a/keyboards/sirius/uni660/rev1/config.h +++ b/keyboards/sirius/uni660/rev1/config.h @@ -53,8 +53,4 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DYNAMIC_KEYMAP_LAYER_COUNT 4 diff --git a/keyboards/sirius/uni660/rev2/ansi/config.h b/keyboards/sirius/uni660/rev2/ansi/config.h index 8777dc4011..19ee1166c3 100644 --- a/keyboards/sirius/uni660/rev2/ansi/config.h +++ b/keyboards/sirius/uni660/rev2/ansi/config.h @@ -53,8 +53,4 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DYNAMIC_KEYMAP_LAYER_COUNT 4 diff --git a/keyboards/sirius/uni660/rev2/iso/config.h b/keyboards/sirius/uni660/rev2/iso/config.h index 763230dca8..f0f771707e 100644 --- a/keyboards/sirius/uni660/rev2/iso/config.h +++ b/keyboards/sirius/uni660/rev2/iso/config.h @@ -53,8 +53,4 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DYNAMIC_KEYMAP_LAYER_COUNT 4 diff --git a/keyboards/sirius/unigo66/config.h b/keyboards/sirius/unigo66/config.h index 8383a2f302..777046db0c 100644 --- a/keyboards/sirius/unigo66/config.h +++ b/keyboards/sirius/unigo66/config.h @@ -43,5 +43,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/sixkeyboard/config.h b/keyboards/sixkeyboard/config.h index d6505e70c7..a4d19a5ca1 100644 --- a/keyboards/sixkeyboard/config.h +++ b/keyboards/sixkeyboard/config.h @@ -62,5 +62,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER #define NO_ACTION_TAPPING #define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/skippys_custom_pcs/roopad/config.h b/keyboards/skippys_custom_pcs/roopad/config.h index 53a29c6158..9d30421dcb 100644 --- a/keyboards/skippys_custom_pcs/roopad/config.h +++ b/keyboards/skippys_custom_pcs/roopad/config.h @@ -66,6 +66,3 @@ along with this program. If not, see . #define RGBLIGHT_EFFECT_SNAKE #define RGBLIGHT_EFFECT_STATIC_GRADIENT #define RGBLIGHT_EFFECT_TWINKLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/slz40/config.h b/keyboards/slz40/config.h index cc868e4c0c..7bcc71bb3c 100644 --- a/keyboards/slz40/config.h +++ b/keyboards/slz40/config.h @@ -137,10 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/smallice/config.h b/keyboards/smallice/config.h index 551c3cefd2..5ebafba42d 100644 --- a/keyboards/smallice/config.h +++ b/keyboards/smallice/config.h @@ -81,10 +81,6 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/smallkeyboard/config.h b/keyboards/smallkeyboard/config.h index 2630666359..c96fa911e5 100644 --- a/keyboards/smallkeyboard/config.h +++ b/keyboards/smallkeyboard/config.h @@ -49,10 +49,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended diff --git a/keyboards/smk60/config.h b/keyboards/smk60/config.h index 59866c006f..2c7d0e178f 100644 --- a/keyboards/smk60/config.h +++ b/keyboards/smk60/config.h @@ -40,8 +40,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION //rgb light setting #define RGBLED_NUM 4 diff --git a/keyboards/snampad/config.h b/keyboards/snampad/config.h index 64bb16fb40..f15fc72200 100644 --- a/keyboards/snampad/config.h +++ b/keyboards/snampad/config.h @@ -132,8 +132,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/sofle/rev1/config.h b/keyboards/sofle/rev1/config.h index 831387e990..a34c574326 100644 --- a/keyboards/sofle/rev1/config.h +++ b/keyboards/sofle/rev1/config.h @@ -33,6 +33,3 @@ #define USE_SERIAL #define SERIAL_USE_MULTI_TRANSACTION #define SOFT_SERIAL_PIN D2 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/soup10/config.h b/keyboards/soup10/config.h index 83fb2dd895..81acb34604 100644 --- a/keyboards/soup10/config.h +++ b/keyboards/soup10/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/spacetime/config.h b/keyboards/spacetime/config.h index 7dfca576a0..93eae10402 100644 --- a/keyboards/spacetime/config.h +++ b/keyboards/spacetime/config.h @@ -133,8 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/spacey/config.h b/keyboards/spacey/config.h index 81f3df6a89..52923d2f8e 100644 --- a/keyboards/spacey/config.h +++ b/keyboards/spacey/config.h @@ -100,11 +100,6 @@ along with this program. If not, see . /* define if matrix has ghost (lacks anti-ghosting diodes) */ //#define MATRIX_HAS_GHOST - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/specskeys/config.h b/keyboards/specskeys/config.h index 09988ba63b..8478a31e71 100644 --- a/keyboards/specskeys/config.h +++ b/keyboards/specskeys/config.h @@ -142,10 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/splitty/config.h b/keyboards/splitty/config.h index 3f0a8b9b20..68ea1b9411 100644 --- a/keyboards/splitty/config.h +++ b/keyboards/splitty/config.h @@ -60,7 +60,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/studiokestra/bourgeau/config.h b/keyboards/studiokestra/bourgeau/config.h index 744149c34e..afb8bb858f 100644 --- a/keyboards/studiokestra/bourgeau/config.h +++ b/keyboards/studiokestra/bourgeau/config.h @@ -75,8 +75,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/studiokestra/cascade/config.h b/keyboards/studiokestra/cascade/config.h index 88b2a583cb..1ef4c21e50 100644 --- a/keyboards/studiokestra/cascade/config.h +++ b/keyboards/studiokestra/cascade/config.h @@ -76,8 +76,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/studiokestra/galatea/config.h b/keyboards/studiokestra/galatea/config.h index e9a6b80b14..accc0d2b43 100644 --- a/keyboards/studiokestra/galatea/config.h +++ b/keyboards/studiokestra/galatea/config.h @@ -68,10 +68,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/studiokestra/nue/config.h b/keyboards/studiokestra/nue/config.h index 72514d85c9..dc4aee20aa 100644 --- a/keyboards/studiokestra/nue/config.h +++ b/keyboards/studiokestra/nue/config.h @@ -41,10 +41,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/subatomic/config.h b/keyboards/subatomic/config.h index 47fcc72fd2..d53805b62f 100644 --- a/keyboards/subatomic/config.h +++ b/keyboards/subatomic/config.h @@ -72,5 +72,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/switchplate/southpaw_65/config.h b/keyboards/switchplate/southpaw_65/config.h index 7512e0e2b3..20fe48eb9b 100644 --- a/keyboards/switchplate/southpaw_65/config.h +++ b/keyboards/switchplate/southpaw_65/config.h @@ -127,8 +127,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/switchplate/southpaw_fullsize/config.h b/keyboards/switchplate/southpaw_fullsize/config.h index c15cb1d0be..fb407383ad 100644 --- a/keyboards/switchplate/southpaw_fullsize/config.h +++ b/keyboards/switchplate/southpaw_fullsize/config.h @@ -78,10 +78,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/switchplate/switchplate910/config.h b/keyboards/switchplate/switchplate910/config.h index 81f8254703..e1e50411c4 100644 --- a/keyboards/switchplate/switchplate910/config.h +++ b/keyboards/switchplate/switchplate910/config.h @@ -78,10 +78,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/tada68/config.h b/keyboards/tada68/config.h index b537380cc0..2e035e08af 100755 --- a/keyboards/tada68/config.h +++ b/keyboards/tada68/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/takashicompany/center_enter/config.h b/keyboards/takashicompany/center_enter/config.h index 94868bde1e..9900d35f37 100644 --- a/keyboards/takashicompany/center_enter/config.h +++ b/keyboards/takashicompany/center_enter/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashicompany/compacx/config.h b/keyboards/takashicompany/compacx/config.h index 5428482ed3..1db4a7357a 100644 --- a/keyboards/takashicompany/compacx/config.h +++ b/keyboards/takashicompany/compacx/config.h @@ -140,10 +140,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashicompany/dogtag/config.h b/keyboards/takashicompany/dogtag/config.h index 631435092d..bc4c44d24c 100644 --- a/keyboards/takashicompany/dogtag/config.h +++ b/keyboards/takashicompany/dogtag/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashicompany/endzone34/config.h b/keyboards/takashicompany/endzone34/config.h index ff6697623b..c2c9e04200 100644 --- a/keyboards/takashicompany/endzone34/config.h +++ b/keyboards/takashicompany/endzone34/config.h @@ -142,10 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashicompany/heavy_left/config.h b/keyboards/takashicompany/heavy_left/config.h index b5a16def68..4c3138fc8e 100644 --- a/keyboards/takashicompany/heavy_left/config.h +++ b/keyboards/takashicompany/heavy_left/config.h @@ -136,12 +136,8 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 -#define EE_HANDS \ No newline at end of file +#define EE_HANDS diff --git a/keyboards/takashicompany/qoolee/config.h b/keyboards/takashicompany/qoolee/config.h index 99c8ce0142..3095f84159 100644 --- a/keyboards/takashicompany/qoolee/config.h +++ b/keyboards/takashicompany/qoolee/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 -//#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashicompany/radialex/config.h b/keyboards/takashicompany/radialex/config.h index ee6e958f9c..7aa3c85360 100644 --- a/keyboards/takashicompany/radialex/config.h +++ b/keyboards/takashicompany/radialex/config.h @@ -130,10 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/takashiski/hecomi/alpha/config.h b/keyboards/takashiski/hecomi/alpha/config.h index 55c5ac50eb..165b815667 100644 --- a/keyboards/takashiski/hecomi/alpha/config.h +++ b/keyboards/takashiski/hecomi/alpha/config.h @@ -131,8 +131,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/takashiski/namecard2x4/rev1/config.h b/keyboards/takashiski/namecard2x4/rev1/config.h index d743c0e339..a91df15b08 100644 --- a/keyboards/takashiski/namecard2x4/rev1/config.h +++ b/keyboards/takashiski/namecard2x4/rev1/config.h @@ -112,6 +112,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/takashiski/namecard2x4/rev2/config.h b/keyboards/takashiski/namecard2x4/rev2/config.h index 37434d41a0..402737dc71 100644 --- a/keyboards/takashiski/namecard2x4/rev2/config.h +++ b/keyboards/takashiski/namecard2x4/rev2/config.h @@ -112,6 +112,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/takashiski/otaku_split/rev0/config.h b/keyboards/takashiski/otaku_split/rev0/config.h index 454f4866e6..5fab9ea77e 100644 --- a/keyboards/takashiski/otaku_split/rev0/config.h +++ b/keyboards/takashiski/otaku_split/rev0/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/takashiski/otaku_split/rev1/config.h b/keyboards/takashiski/otaku_split/rev1/config.h index 7ae6155d8c..05979a6e04 100644 --- a/keyboards/takashiski/otaku_split/rev1/config.h +++ b/keyboards/takashiski/otaku_split/rev1/config.h @@ -142,8 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/tanuki/config.h b/keyboards/tanuki/config.h index 4680753dd4..3c323ba10e 100644 --- a/keyboards/tanuki/config.h +++ b/keyboards/tanuki/config.h @@ -73,5 +73,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/team0110/p1800fl/config.h b/keyboards/team0110/p1800fl/config.h index 75e63c75ce..f4aa79e88b 100644 --- a/keyboards/team0110/p1800fl/config.h +++ b/keyboards/team0110/p1800fl/config.h @@ -74,10 +74,6 @@ along with this program. If not, see . /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 \ No newline at end of file +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/technika/config.h b/keyboards/technika/config.h index c2be7cf7d4..80d3137225 100644 --- a/keyboards/technika/config.h +++ b/keyboards/technika/config.h @@ -68,5 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/telophase/config.h b/keyboards/telophase/config.h index 837bb8ab9b..6d23b98ae3 100644 --- a/keyboards/telophase/config.h +++ b/keyboards/telophase/config.h @@ -68,7 +68,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/tetris/config.h b/keyboards/tetris/config.h index 1f13f5f168..cfea2a72dc 100755 --- a/keyboards/tetris/config.h +++ b/keyboards/tetris/config.h @@ -30,9 +30,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef AUDIO_ENABLE #define AUDIO_PIN B5 #define STARTUP_SONG SONG(ONE_UP_SOUND) diff --git a/keyboards/tg4x/config.h b/keyboards/tg4x/config.h index 87636d8371..0fb0099833 100644 --- a/keyboards/tg4x/config.h +++ b/keyboards/tg4x/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/tgr/910ce/config.h b/keyboards/tgr/910ce/config.h index fd21a2de76..58b7426a1f 100644 --- a/keyboards/tgr/910ce/config.h +++ b/keyboards/tgr/910ce/config.h @@ -43,8 +43,3 @@ along with this program. If not, see . #define BACKLIGHT_PIN D4 #define BACKLIGHT_LEVELS 3 #define RGBLIGHT_ANIMATIONS - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - diff --git a/keyboards/thevankeyboards/jetvan/config.h b/keyboards/thevankeyboards/jetvan/config.h index ea229cc29d..74094a183a 100644 --- a/keyboards/thevankeyboards/jetvan/config.h +++ b/keyboards/thevankeyboards/jetvan/config.h @@ -104,5 +104,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/thevankeyboards/roadkit/config.h b/keyboards/thevankeyboards/roadkit/config.h index 4572f5e2b9..0bbd93ad7d 100644 --- a/keyboards/thevankeyboards/roadkit/config.h +++ b/keyboards/thevankeyboards/roadkit/config.h @@ -100,5 +100,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/tkc/california/config.h b/keyboards/tkc/california/config.h index 7820869142..2945514787 100644 --- a/keyboards/tkc/california/config.h +++ b/keyboards/tkc/california/config.h @@ -115,8 +115,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/tkc/candybar/lefty/config.h b/keyboards/tkc/candybar/lefty/config.h index ba5c0b0778..104ead511a 100644 --- a/keyboards/tkc/candybar/lefty/config.h +++ b/keyboards/tkc/candybar/lefty/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // #define WS2812_LED_N 2 // #define RGBLED_NUM WS2812_LED_N diff --git a/keyboards/tkc/candybar/lefty_r3/config.h b/keyboards/tkc/candybar/lefty_r3/config.h index d7a4908430..9ce16dd731 100644 --- a/keyboards/tkc/candybar/lefty_r3/config.h +++ b/keyboards/tkc/candybar/lefty_r3/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // #define WS2812_LED_N 2 // #define RGBLED_NUM WS2812_LED_N diff --git a/keyboards/tkc/candybar/righty/config.h b/keyboards/tkc/candybar/righty/config.h index 47e3985ff3..dcbe840c8e 100644 --- a/keyboards/tkc/candybar/righty/config.h +++ b/keyboards/tkc/candybar/righty/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // #define WS2812_LED_N 2 // #define RGBLED_NUM WS2812_LED_N diff --git a/keyboards/tkc/candybar/righty_r3/config.h b/keyboards/tkc/candybar/righty_r3/config.h index f68e29013c..0c8604a9ac 100644 --- a/keyboards/tkc/candybar/righty_r3/config.h +++ b/keyboards/tkc/candybar/righty_r3/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // #define WS2812_LED_N 2 // #define RGBLED_NUM WS2812_LED_N diff --git a/keyboards/tkc/godspeed75/config.h b/keyboards/tkc/godspeed75/config.h index f50d4c638c..edda02ea79 100644 --- a/keyboards/tkc/godspeed75/config.h +++ b/keyboards/tkc/godspeed75/config.h @@ -77,8 +77,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_DI_PIN A13 #define RGBLED_NUM 14 diff --git a/keyboards/tkc/m0lly/config.h b/keyboards/tkc/m0lly/config.h index ebcda755c2..377499ba72 100644 --- a/keyboards/tkc/m0lly/config.h +++ b/keyboards/tkc/m0lly/config.h @@ -142,10 +142,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/tkc/osav2/config.h b/keyboards/tkc/osav2/config.h index 5622621e2b..370e7b7b5b 100644 --- a/keyboards/tkc/osav2/config.h +++ b/keyboards/tkc/osav2/config.h @@ -138,8 +138,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/tkc/portico/config.h b/keyboards/tkc/portico/config.h index 35d615a023..be042050f5 100644 --- a/keyboards/tkc/portico/config.h +++ b/keyboards/tkc/portico/config.h @@ -36,10 +36,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 4 # define RGB_MATRIX_LED_FLUSH_LIMIT 26 diff --git a/keyboards/tkc/portico68v2/config.h b/keyboards/tkc/portico68v2/config.h index af0a162810..486863d702 100644 --- a/keyboards/tkc/portico68v2/config.h +++ b/keyboards/tkc/portico68v2/config.h @@ -39,10 +39,6 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DRIVER_ADDR_1 0b0110000 #define DRIVER_COUNT 1 #define DRIVER_1_LED_TOTAL 82 diff --git a/keyboards/tkc/portico75/config.h b/keyboards/tkc/portico75/config.h index 48be10a427..bbafc0d309 100644 --- a/keyboards/tkc/portico75/config.h +++ b/keyboards/tkc/portico75/config.h @@ -47,10 +47,6 @@ along with this program. If not, see . /* COL2ROW, ROW2COL*/ #define DIODE_DIRECTION COL2ROW -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 4 # define RGB_MATRIX_LED_FLUSH_LIMIT 26 diff --git a/keyboards/tkc/tkc1800/config.h b/keyboards/tkc/tkc1800/config.h index 02fccd82ff..5bf93542c2 100644 --- a/keyboards/tkc/tkc1800/config.h +++ b/keyboards/tkc/tkc1800/config.h @@ -111,5 +111,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/tkc/tkl_ab87/config.h b/keyboards/tkc/tkl_ab87/config.h index 71bf94caa8..5ab7b94692 100644 --- a/keyboards/tkc/tkl_ab87/config.h +++ b/keyboards/tkc/tkl_ab87/config.h @@ -143,8 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/tkw/grandiceps/config.h b/keyboards/tkw/grandiceps/config.h index e51c9ab223..b2b6008240 100644 --- a/keyboards/tkw/grandiceps/config.h +++ b/keyboards/tkw/grandiceps/config.h @@ -58,7 +58,3 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/tkw/stoutgat/v1/config.h b/keyboards/tkw/stoutgat/v1/config.h index 2c60e8b565..96471e443d 100644 --- a/keyboards/tkw/stoutgat/v1/config.h +++ b/keyboards/tkw/stoutgat/v1/config.h @@ -37,7 +37,3 @@ along with this program. If not, see . #define UNUSED_PINS #define DIODE_DIRECTION COL2ROW - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/tkw/stoutgat/v2/config.h b/keyboards/tkw/stoutgat/v2/config.h index 1c0a66f3c6..73b3eef90b 100644 --- a/keyboards/tkw/stoutgat/v2/config.h +++ b/keyboards/tkw/stoutgat/v2/config.h @@ -60,10 +60,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/tmo50/config.h b/keyboards/tmo50/config.h index 4547fcf63e..f3640197ae 100644 --- a/keyboards/tmo50/config.h +++ b/keyboards/tmo50/config.h @@ -126,5 +126,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/touchpad/config.h b/keyboards/touchpad/config.h index 2f512d17c3..8b42d0fe4f 100644 --- a/keyboards/touchpad/config.h +++ b/keyboards/touchpad/config.h @@ -60,5 +60,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/treasure/type9/config.h b/keyboards/treasure/type9/config.h index cc629e3e45..86734a7fd8 100644 --- a/keyboards/treasure/type9/config.h +++ b/keyboards/treasure/type9/config.h @@ -114,6 +114,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/tszaboo/ortho4exent/config.h b/keyboards/tszaboo/ortho4exent/config.h index dec9cdd7ee..b331cfbde9 100644 --- a/keyboards/tszaboo/ortho4exent/config.h +++ b/keyboards/tszaboo/ortho4exent/config.h @@ -128,10 +128,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/tw40/config.h b/keyboards/tw40/config.h index 839babb920..67547b247e 100644 --- a/keyboards/tw40/config.h +++ b/keyboards/tw40/config.h @@ -44,6 +44,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/unikeyboard/diverge3/config.h b/keyboards/unikeyboard/diverge3/config.h index 45dedfe621..502e97bd91 100644 --- a/keyboards/unikeyboard/diverge3/config.h +++ b/keyboards/unikeyboard/diverge3/config.h @@ -110,5 +110,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/unikeyboard/felix/config.h b/keyboards/unikeyboard/felix/config.h index 73f9d1fa86..64319f029f 100644 --- a/keyboards/unikeyboard/felix/config.h +++ b/keyboards/unikeyboard/felix/config.h @@ -119,8 +119,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/unison/v04/config.h b/keyboards/unison/v04/config.h index 88807811a9..93c1ae2e4b 100644 --- a/keyboards/unison/v04/config.h +++ b/keyboards/unison/v04/config.h @@ -119,7 +119,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/uranuma/config.h b/keyboards/uranuma/config.h index c5acad4882..2c304012d3 100644 --- a/keyboards/uranuma/config.h +++ b/keyboards/uranuma/config.h @@ -123,8 +123,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/uzu42/config.h b/keyboards/uzu42/config.h index 45f497d782..3364d3063d 100644 --- a/keyboards/uzu42/config.h +++ b/keyboards/uzu42/config.h @@ -24,6 +24,3 @@ along with this program. If not, see . #define SOFT_SERIAL_PIN D2 #define SERIAL_USE_MULTI_TRANSACTION #endif - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/uzu42/rev1/config.h b/keyboards/uzu42/rev1/config.h index 5d8c9000e6..815442ed21 100644 --- a/keyboards/uzu42/rev1/config.h +++ b/keyboards/uzu42/rev1/config.h @@ -74,5 +74,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/v4n4g0rth0n/config.h b/keyboards/v4n4g0rth0n/config.h index e023875feb..14721308f9 100644 --- a/keyboards/v4n4g0rth0n/config.h +++ b/keyboards/v4n4g0rth0n/config.h @@ -35,10 +35,6 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - // TOP, MID, BOT // B4, D7, D6 #define LED_NUM_LOCK_PIN B4 diff --git a/keyboards/v60_type_r/config.h b/keyboards/v60_type_r/config.h index c013bb9931..1d0b38988a 100644 --- a/keyboards/v60_type_r/config.h +++ b/keyboards/v60_type_r/config.h @@ -115,5 +115,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/viktus/smolka/config.h b/keyboards/viktus/smolka/config.h index 82acfff214..fa655ae3e8 100644 --- a/keyboards/viktus/smolka/config.h +++ b/keyboards/viktus/smolka/config.h @@ -107,10 +107,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 1 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/viktus/sp111/config.h b/keyboards/viktus/sp111/config.h index 7dda6457f6..c38eea5adc 100644 --- a/keyboards/viktus/sp111/config.h +++ b/keyboards/viktus/sp111/config.h @@ -77,7 +77,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/viktus/sp_mini/config.h b/keyboards/viktus/sp_mini/config.h index 06b8c2f51a..a0671c97f3 100644 --- a/keyboards/viktus/sp_mini/config.h +++ b/keyboards/viktus/sp_mini/config.h @@ -95,5 +95,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/viktus/styrka/config.h b/keyboards/viktus/styrka/config.h index 9fe66a8b58..666ebbf866 100644 --- a/keyboards/viktus/styrka/config.h +++ b/keyboards/viktus/styrka/config.h @@ -105,5 +105,3 @@ B0, which is unconnected on the PCB //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/vitamins_included/rev1/config.h b/keyboards/vitamins_included/rev1/config.h index e8390aa27b..675dae1044 100644 --- a/keyboards/vitamins_included/rev1/config.h +++ b/keyboards/vitamins_included/rev1/config.h @@ -79,5 +79,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/vitamins_included/rev2/config.h b/keyboards/vitamins_included/rev2/config.h index bab387ce68..6ea80ec05a 100644 --- a/keyboards/vitamins_included/rev2/config.h +++ b/keyboards/vitamins_included/rev2/config.h @@ -80,5 +80,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/waldo/config.h b/keyboards/waldo/config.h index fda26c4355..b4fac7a606 100644 --- a/keyboards/waldo/config.h +++ b/keyboards/waldo/config.h @@ -64,8 +64,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // RGB LED #define RGB_DI_PIN B0 @@ -76,4 +74,4 @@ along with this program. If not, see . #define RGBLIGHT_SAT_STEP 8 #define RGBLIGHT_VAL_STEP 8 #define RGBLIGHT_SLEEP -#endif \ No newline at end of file +#endif diff --git a/keyboards/wavtype/foundation/config.h b/keyboards/wavtype/foundation/config.h index e19ea19f7e..dff85685e1 100644 --- a/keyboards/wavtype/foundation/config.h +++ b/keyboards/wavtype/foundation/config.h @@ -127,10 +127,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 1 diff --git a/keyboards/wekey/polaris/config.h b/keyboards/wekey/polaris/config.h index 621d30df5a..5902c4bfc9 100644 --- a/keyboards/wekey/polaris/config.h +++ b/keyboards/wekey/polaris/config.h @@ -143,10 +143,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/wekey/stelo65/config.h b/keyboards/wekey/stelo65/config.h index 6a5ab4bb98..6bcd065ac4 100644 --- a/keyboards/wekey/stelo65/config.h +++ b/keyboards/wekey/stelo65/config.h @@ -141,10 +141,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/wekey/we27/config.h b/keyboards/wekey/we27/config.h index 851e85aabb..9420a4d06a 100644 --- a/keyboards/wekey/we27/config.h +++ b/keyboards/wekey/we27/config.h @@ -222,10 +222,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/westfoxtrot/cyclops/config.h b/keyboards/westfoxtrot/cyclops/config.h index ce5d3bbbc1..0ecd64ecd0 100644 --- a/keyboards/westfoxtrot/cyclops/config.h +++ b/keyboards/westfoxtrot/cyclops/config.h @@ -101,8 +101,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/whale/sk/v3/config.h b/keyboards/whale/sk/v3/config.h index 8fff28ca72..fc1e4ffeff 100644 --- a/keyboards/whale/sk/v3/config.h +++ b/keyboards/whale/sk/v3/config.h @@ -47,7 +47,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 3 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/wilba_tech/rama_works_kara/config.h b/keyboards/wilba_tech/rama_works_kara/config.h index 724098257b..1191c0991f 100644 --- a/keyboards/wilba_tech/rama_works_kara/config.h +++ b/keyboards/wilba_tech/rama_works_kara/config.h @@ -63,8 +63,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/rama_works_koyu/config.h b/keyboards/wilba_tech/rama_works_koyu/config.h index ab00f30d7f..334070472f 100644 --- a/keyboards/wilba_tech/rama_works_koyu/config.h +++ b/keyboards/wilba_tech/rama_works_koyu/config.h @@ -66,8 +66,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/rama_works_m10_b/config.h b/keyboards/wilba_tech/rama_works_m10_b/config.h index d30cf7fe84..9f3326caba 100644 --- a/keyboards/wilba_tech/rama_works_m10_b/config.h +++ b/keyboards/wilba_tech/rama_works_m10_b/config.h @@ -105,7 +105,5 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define DYNAMIC_KEYMAP_LAYER_COUNT 10 diff --git a/keyboards/wilba_tech/rama_works_m10_c/config.h b/keyboards/wilba_tech/rama_works_m10_c/config.h index 08ae1d081a..7b515736f7 100644 --- a/keyboards/wilba_tech/rama_works_m10_c/config.h +++ b/keyboards/wilba_tech/rama_works_m10_c/config.h @@ -53,10 +53,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - // IS31FL3731 driver #define DRIVER_COUNT 1 #define DRIVER_LED_TOTAL 12 diff --git a/keyboards/wilba_tech/rama_works_m50_a/config.h b/keyboards/wilba_tech/rama_works_m50_a/config.h index c16afd7900..70b35dbb90 100644 --- a/keyboards/wilba_tech/rama_works_m50_a/config.h +++ b/keyboards/wilba_tech/rama_works_m50_a/config.h @@ -53,10 +53,6 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - // IS31FL3731 driver #define DRIVER_COUNT 2 #define DRIVER_LED_TOTAL 72 diff --git a/keyboards/wilba_tech/rama_works_m50_ax/config.h b/keyboards/wilba_tech/rama_works_m50_ax/config.h index 61887e8fc3..3b2a23033d 100644 --- a/keyboards/wilba_tech/rama_works_m50_ax/config.h +++ b/keyboards/wilba_tech/rama_works_m50_ax/config.h @@ -52,7 +52,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/wilba_tech/rama_works_m60_a/config.h b/keyboards/wilba_tech/rama_works_m60_a/config.h index b8d9249dde..4bb0ebefc6 100644 --- a/keyboards/wilba_tech/rama_works_m60_a/config.h +++ b/keyboards/wilba_tech/rama_works_m60_a/config.h @@ -63,8 +63,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/rama_works_u80_a/config.h b/keyboards/wilba_tech/rama_works_u80_a/config.h index 2bc32a7006..0cb3e211ba 100644 --- a/keyboards/wilba_tech/rama_works_u80_a/config.h +++ b/keyboards/wilba_tech/rama_works_u80_a/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // IS31FL3731 driver #define DRIVER_COUNT 3 diff --git a/keyboards/wilba_tech/wt60_a/config.h b/keyboards/wilba_tech/wt60_a/config.h index 587c9b9ae7..029b228e2c 100644 --- a/keyboards/wilba_tech/wt60_a/config.h +++ b/keyboards/wilba_tech/wt60_a/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt60_d/config.h b/keyboards/wilba_tech/wt60_d/config.h index e6d367f4b1..c3c0a0c7a6 100644 --- a/keyboards/wilba_tech/wt60_d/config.h +++ b/keyboards/wilba_tech/wt60_d/config.h @@ -104,5 +104,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/wilba_tech/wt60_xt/config.h b/keyboards/wilba_tech/wt60_xt/config.h index 43f3f70db8..f08d3179ef 100644 --- a/keyboards/wilba_tech/wt60_xt/config.h +++ b/keyboards/wilba_tech/wt60_xt/config.h @@ -107,5 +107,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/wilba_tech/wt65_a/config.h b/keyboards/wilba_tech/wt65_a/config.h index 4eca9b3ba0..46df641ae4 100644 --- a/keyboards/wilba_tech/wt65_a/config.h +++ b/keyboards/wilba_tech/wt65_a/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt65_b/config.h b/keyboards/wilba_tech/wt65_b/config.h index 7db0552ce6..bc81515c19 100644 --- a/keyboards/wilba_tech/wt65_b/config.h +++ b/keyboards/wilba_tech/wt65_b/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt69_a/config.h b/keyboards/wilba_tech/wt69_a/config.h index d8184a8d2e..7db475ba60 100644 --- a/keyboards/wilba_tech/wt69_a/config.h +++ b/keyboards/wilba_tech/wt69_a/config.h @@ -104,5 +104,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/wilba_tech/wt75_a/config.h b/keyboards/wilba_tech/wt75_a/config.h index 479cdda00d..6562e65fcc 100644 --- a/keyboards/wilba_tech/wt75_a/config.h +++ b/keyboards/wilba_tech/wt75_a/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt75_b/config.h b/keyboards/wilba_tech/wt75_b/config.h index e6365c4ef3..a8905fc2cc 100644 --- a/keyboards/wilba_tech/wt75_b/config.h +++ b/keyboards/wilba_tech/wt75_b/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt75_c/config.h b/keyboards/wilba_tech/wt75_c/config.h index bbc4757e06..8e65c1a149 100644 --- a/keyboards/wilba_tech/wt75_c/config.h +++ b/keyboards/wilba_tech/wt75_c/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/wt80_a/config.h b/keyboards/wilba_tech/wt80_a/config.h index a09bcaebad..de4de0af2b 100644 --- a/keyboards/wilba_tech/wt80_a/config.h +++ b/keyboards/wilba_tech/wt80_a/config.h @@ -104,8 +104,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // enable the mono backlight #define MONO_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/zeal60/config.h b/keyboards/wilba_tech/zeal60/config.h index 2ccf49d80a..12093be63a 100644 --- a/keyboards/wilba_tech/zeal60/config.h +++ b/keyboards/wilba_tech/zeal60/config.h @@ -63,8 +63,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/wilba_tech/zeal65/config.h b/keyboards/wilba_tech/zeal65/config.h index 40d0218014..eff5502ebc 100644 --- a/keyboards/wilba_tech/zeal65/config.h +++ b/keyboards/wilba_tech/zeal65/config.h @@ -63,8 +63,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 @@ -119,4 +117,4 @@ #define VIA_EEPROM_CUSTOM_CONFIG_SIZE 31 // VIA lighting is handled by the keyboard-level code -#define VIA_CUSTOM_LIGHTING_ENABLE \ No newline at end of file +#define VIA_CUSTOM_LIGHTING_ENABLE diff --git a/keyboards/winkeys/mini_winni/config.h b/keyboards/winkeys/mini_winni/config.h index 821f5cdc76..fcf700b0b3 100644 --- a/keyboards/winkeys/mini_winni/config.h +++ b/keyboards/winkeys/mini_winni/config.h @@ -62,7 +62,3 @@ along with this program. If not, see . /* disable print */ //#define NO_PRINT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/wolf/kuku65/config.h b/keyboards/wolf/kuku65/config.h index 7c5afed524..c67224a522 100644 --- a/keyboards/wolf/kuku65/config.h +++ b/keyboards/wolf/kuku65/config.h @@ -51,6 +51,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/wolf/sabre/config.h b/keyboards/wolf/sabre/config.h index 02b897ba4f..76ec7d6332 100644 --- a/keyboards/wolf/sabre/config.h +++ b/keyboards/wolf/sabre/config.h @@ -56,6 +56,3 @@ along with this program. If not, see . #define LED_CAPS_LOCK_PIN B3 #define LED_SCROLL_LOCK_PIN B0 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/wolf/ts60/config.h b/keyboards/wolf/ts60/config.h index 8074f6fc58..4e15ab4cd5 100644 --- a/keyboards/wolf/ts60/config.h +++ b/keyboards/wolf/ts60/config.h @@ -73,6 +73,3 @@ along with this program. If not, see . #define BACKLIGHT_PIN B7 #define BACKLIGHT_LEVELS 6 #define BACKLIGHT_DEFAULT_LEVEL 6 - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/wolfmarkclub/wm1/config.h b/keyboards/wolfmarkclub/wm1/config.h index 135700b988..ecbdc61eb3 100644 --- a/keyboards/wolfmarkclub/wm1/config.h +++ b/keyboards/wolfmarkclub/wm1/config.h @@ -75,5 +75,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/woodkeys/meira/featherble/config.h b/keyboards/woodkeys/meira/featherble/config.h index 94bef3b330..44f294a06a 100644 --- a/keyboards/woodkeys/meira/featherble/config.h +++ b/keyboards/woodkeys/meira/featherble/config.h @@ -93,5 +93,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/woodkeys/meira/promicro/config.h b/keyboards/woodkeys/meira/promicro/config.h index bbdaa9dbd8..1b9b099d1a 100644 --- a/keyboards/woodkeys/meira/promicro/config.h +++ b/keyboards/woodkeys/meira/promicro/config.h @@ -84,5 +84,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/woodkeys/scarletbandana/config.h b/keyboards/woodkeys/scarletbandana/config.h index b9c8dd9b0f..3afbfeae84 100644 --- a/keyboards/woodkeys/scarletbandana/config.h +++ b/keyboards/woodkeys/scarletbandana/config.h @@ -51,7 +51,4 @@ along with this program. If not, see . #define NO_MUSIC_MODE #endif -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define DEBOUNCE 5 diff --git a/keyboards/work_louder/loop/config.h b/keyboards/work_louder/loop/config.h index b40c1207fe..b397ec2c1d 100644 --- a/keyboards/work_louder/loop/config.h +++ b/keyboards/work_louder/loop/config.h @@ -196,10 +196,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 11 diff --git a/keyboards/work_louder/nano/config.h b/keyboards/work_louder/nano/config.h index ac12c87199..4e03f0a897 100644 --- a/keyboards/work_louder/nano/config.h +++ b/keyboards/work_louder/nano/config.h @@ -194,10 +194,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 2 diff --git a/keyboards/work_louder/work_board/config.h b/keyboards/work_louder/work_board/config.h index 78444e744f..106184b7de 100644 --- a/keyboards/work_louder/work_board/config.h +++ b/keyboards/work_louder/work_board/config.h @@ -185,10 +185,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #define ENCODERS_PAD_A \ { B0 } #define ENCODERS_PAD_B \ diff --git a/keyboards/wren/config.h b/keyboards/wren/config.h index 93b8468c17..13e69804bc 100644 --- a/keyboards/wren/config.h +++ b/keyboards/wren/config.h @@ -116,10 +116,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/x16/config.h b/keyboards/x16/config.h index 7dda59b948..8378880d08 100644 --- a/keyboards/x16/config.h +++ b/keyboards/x16/config.h @@ -133,8 +133,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/xbows/knight/config.h b/keyboards/xbows/knight/config.h index b91dd8db66..be7b2bfe9f 100644 --- a/keyboards/xbows/knight/config.h +++ b/keyboards/xbows/knight/config.h @@ -30,10 +30,6 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 18 # define RGB_MATRIX_LED_FLUSH_LIMIT 16 diff --git a/keyboards/xbows/knight_plus/config.h b/keyboards/xbows/knight_plus/config.h index add7d53679..e9e82c13df 100644 --- a/keyboards/xbows/knight_plus/config.h +++ b/keyboards/xbows/knight_plus/config.h @@ -30,10 +30,6 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 18 # define RGB_MATRIX_LED_FLUSH_LIMIT 16 diff --git a/keyboards/xbows/nature/config.h b/keyboards/xbows/nature/config.h index 2395ae778c..0fc0accb59 100644 --- a/keyboards/xbows/nature/config.h +++ b/keyboards/xbows/nature/config.h @@ -30,10 +30,6 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 18 # define RGB_MATRIX_LED_FLUSH_LIMIT 16 diff --git a/keyboards/xbows/numpad/config.h b/keyboards/xbows/numpad/config.h index 96dff5241a..04604676bc 100644 --- a/keyboards/xbows/numpad/config.h +++ b/keyboards/xbows/numpad/config.h @@ -30,10 +30,6 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 18 # define RGB_MATRIX_LED_FLUSH_LIMIT 16 diff --git a/keyboards/xbows/ranger/config.h b/keyboards/xbows/ranger/config.h index e5b9764074..a7bcee7b4f 100644 --- a/keyboards/xbows/ranger/config.h +++ b/keyboards/xbows/ranger/config.h @@ -30,10 +30,6 @@ #define DIODE_DIRECTION COL2ROW #define DEBOUNCE 3 -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - #ifdef RGB_MATRIX_ENABLE # define RGB_MATRIX_LED_PROCESS_LIMIT 18 # define RGB_MATRIX_LED_FLUSH_LIMIT 16 diff --git a/keyboards/xelus/dawn60/rev1/config.h b/keyboards/xelus/dawn60/rev1/config.h index 375bea9486..52dab44f48 100644 --- a/keyboards/xelus/dawn60/rev1/config.h +++ b/keyboards/xelus/dawn60/rev1/config.h @@ -67,8 +67,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION #define RGB_BACKLIGHT_ENABLED 1 diff --git a/keyboards/xiaomi/mk02/config.h b/keyboards/xiaomi/mk02/config.h index 4a28cf6c71..1b029d6b49 100644 --- a/keyboards/xiaomi/mk02/config.h +++ b/keyboards/xiaomi/mk02/config.h @@ -55,5 +55,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/xiudi/xd004/v1/config.h b/keyboards/xiudi/xd004/v1/config.h index 30f837b8ce..826540de4c 100644 --- a/keyboards/xiudi/xd004/v1/config.h +++ b/keyboards/xiudi/xd004/v1/config.h @@ -75,5 +75,3 @@ further optimizations can be done on that side. /* disable action features */ // #define NO_ACTION_ONESHOT // 462 bytes <- this needs to be un-commented out if Link Time Optimization is disabled, otherwise file is too large // The two below are implicit since we use LTO_ENABLE (in rules.mk) -// #define NO_ACTION_MACRO -// #define NO_ACTION_FUNCTION diff --git a/keyboards/xiudi/xd68/config.h b/keyboards/xiudi/xd68/config.h index 4fbb66b815..af8e8b7dab 100644 --- a/keyboards/xiudi/xd68/config.h +++ b/keyboards/xiudi/xd68/config.h @@ -103,8 +103,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION // ws2812 options #define RGB_DI_PIN F6 // pin the DI on the ws2812 is hooked-up to diff --git a/keyboards/xiudi/xd75/config.h b/keyboards/xiudi/xd75/config.h index 2958a49ebe..9cceea3467 100644 --- a/keyboards/xiudi/xd75/config.h +++ b/keyboards/xiudi/xd75/config.h @@ -133,10 +133,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/xiudi/xd84/config.h b/keyboards/xiudi/xd84/config.h index bba8cf5566..a96793cd75 100644 --- a/keyboards/xiudi/xd84/config.h +++ b/keyboards/xiudi/xd84/config.h @@ -131,8 +131,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/xiudi/xd84pro/config.h b/keyboards/xiudi/xd84pro/config.h index 01f410ea6b..797d209db3 100644 --- a/keyboards/xiudi/xd84pro/config.h +++ b/keyboards/xiudi/xd84pro/config.h @@ -73,6 +73,3 @@ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/xiudi/xd87/config.h b/keyboards/xiudi/xd87/config.h index 41e8bf3690..5f5b704f36 100644 --- a/keyboards/xiudi/xd87/config.h +++ b/keyboards/xiudi/xd87/config.h @@ -120,6 +120,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/xiudi/xd96/config.h b/keyboards/xiudi/xd96/config.h index 5ec2543ffa..ddf97f9d00 100644 --- a/keyboards/xiudi/xd96/config.h +++ b/keyboards/xiudi/xd96/config.h @@ -132,8 +132,6 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/yampad/config.h b/keyboards/yampad/config.h index b21a606ddc..2e03580060 100644 --- a/keyboards/yampad/config.h +++ b/keyboards/yampad/config.h @@ -77,8 +77,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ydkb/chili/config.h b/keyboards/ydkb/chili/config.h index 13bd700363..e3a4e004b8 100644 --- a/keyboards/ydkb/chili/config.h +++ b/keyboards/ydkb/chili/config.h @@ -108,5 +108,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ydkb/just60/config.h b/keyboards/ydkb/just60/config.h index b2ff156310..82272ffffa 100644 --- a/keyboards/ydkb/just60/config.h +++ b/keyboards/ydkb/just60/config.h @@ -45,7 +45,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/ydkb/yd68/config.h b/keyboards/ydkb/yd68/config.h index a501a98476..40a0609347 100644 --- a/keyboards/ydkb/yd68/config.h +++ b/keyboards/ydkb/yd68/config.h @@ -117,6 +117,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/yiancardesigns/barleycorn/config.h b/keyboards/yiancardesigns/barleycorn/config.h index 77714a87fc..71c6076d46 100644 --- a/keyboards/yiancardesigns/barleycorn/config.h +++ b/keyboards/yiancardesigns/barleycorn/config.h @@ -99,5 +99,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/yiancardesigns/gingham/config.h b/keyboards/yiancardesigns/gingham/config.h index 62f25b06c9..5dcc1efa19 100644 --- a/keyboards/yiancardesigns/gingham/config.h +++ b/keyboards/yiancardesigns/gingham/config.h @@ -133,6 +133,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION - diff --git a/keyboards/yiancardesigns/seigaiha/config.h b/keyboards/yiancardesigns/seigaiha/config.h index 5e87bd6f83..fdb957f783 100644 --- a/keyboards/yiancardesigns/seigaiha/config.h +++ b/keyboards/yiancardesigns/seigaiha/config.h @@ -101,5 +101,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/ymdk/np21/config.h b/keyboards/ymdk/np21/config.h index 83423792b0..762ac2b4bf 100644 --- a/keyboards/ymdk/np21/config.h +++ b/keyboards/ymdk/np21/config.h @@ -130,10 +130,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/ymdk/sp64/config.h b/keyboards/ymdk/sp64/config.h index d3395c7841..38880d1a85 100644 --- a/keyboards/ymdk/sp64/config.h +++ b/keyboards/ymdk/sp64/config.h @@ -30,10 +30,6 @@ along with this program. If not, see . #define RIGHT_HALF -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* RGB underglow */ #define RGBLED_NUM 12 #define RGBLIGHT_HUE_STEP 8 diff --git a/keyboards/ymdk/ymd09/config.h b/keyboards/ymdk/ymd09/config.h index f379abde5f..0152fe1c2b 100644 --- a/keyboards/ymdk/ymd09/config.h +++ b/keyboards/ymdk/ymd09/config.h @@ -57,7 +57,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/yoichiro/lunakey_macro/config.h b/keyboards/yoichiro/lunakey_macro/config.h index d68f69f515..1b9449b822 100644 --- a/keyboards/yoichiro/lunakey_macro/config.h +++ b/keyboards/yoichiro/lunakey_macro/config.h @@ -149,10 +149,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/yoichiro/lunakey_mini/config.h b/keyboards/yoichiro/lunakey_mini/config.h index abbecef443..da75f3be5f 100644 --- a/keyboards/yoichiro/lunakey_mini/config.h +++ b/keyboards/yoichiro/lunakey_mini/config.h @@ -144,10 +144,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/yosino58/config.h b/keyboards/yosino58/config.h index 0c308480ee..24831ee5b2 100644 --- a/keyboards/yosino58/config.h +++ b/keyboards/yosino58/config.h @@ -23,6 +23,3 @@ along with this program. If not, see . #define USE_I2C #define USE_SERIAL - -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/yosino58/rev1/config.h b/keyboards/yosino58/rev1/config.h index ce792d18c4..b7bbace5d9 100644 --- a/keyboards/yosino58/rev1/config.h +++ b/keyboards/yosino58/rev1/config.h @@ -67,5 +67,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/yugo_m/model_m_101/config.h b/keyboards/yugo_m/model_m_101/config.h index 76580a60e4..94861a7587 100644 --- a/keyboards/yugo_m/model_m_101/config.h +++ b/keyboards/yugo_m/model_m_101/config.h @@ -96,5 +96,3 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION diff --git a/keyboards/yushakobo/navpad/10/config.h b/keyboards/yushakobo/navpad/10/config.h index c242ee60e2..0dddfb4d02 100644 --- a/keyboards/yushakobo/navpad/10/config.h +++ b/keyboards/yushakobo/navpad/10/config.h @@ -70,10 +70,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -81,4 +77,4 @@ along with this program. If not, see . #define TAPPING_FORCE_HOLD #define TAPPING_TERM 132 -#define TAPPING_LAYER_TERM 90 \ No newline at end of file +#define TAPPING_LAYER_TERM 90 diff --git a/keyboards/yushakobo/navpad/10_helix_r/config.h b/keyboards/yushakobo/navpad/10_helix_r/config.h index 2d62885328..3d463549df 100644 --- a/keyboards/yushakobo/navpad/10_helix_r/config.h +++ b/keyboards/yushakobo/navpad/10_helix_r/config.h @@ -112,10 +112,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 @@ -123,4 +119,4 @@ along with this program. If not, see . #define TAPPING_FORCE_HOLD #define TAPPING_TERM 132 -#define TAPPING_LAYER_TERM 90 \ No newline at end of file +#define TAPPING_LAYER_TERM 90 diff --git a/keyboards/yushakobo/quick17/config.h b/keyboards/yushakobo/quick17/config.h index ab33c84082..7c845a2106 100644 --- a/keyboards/yushakobo/quick17/config.h +++ b/keyboards/yushakobo/quick17/config.h @@ -134,10 +134,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ //#define BOOTMAGIC_LITE_ROW 0 //#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/yushakobo/quick7/config.h b/keyboards/yushakobo/quick7/config.h index 01cc0f0a87..f3afcd2df7 100644 --- a/keyboards/yushakobo/quick7/config.h +++ b/keyboards/yushakobo/quick7/config.h @@ -137,12 +137,6 @@ along with this program. If not, see . //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#ifndef LTO_ENABLE - #define NO_ACTION_MACRO - #define NO_ACTION_FUNCTION -#endif - /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 // #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/yynmt/acperience12/rev1/config.h b/keyboards/yynmt/acperience12/rev1/config.h index 7281f9bf7f..d1adb8106c 100644 --- a/keyboards/yynmt/acperience12/rev1/config.h +++ b/keyboards/yynmt/acperience12/rev1/config.h @@ -44,7 +44,3 @@ //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/yynmt/dozen0/config.h b/keyboards/yynmt/dozen0/config.h index 48d847bde1..c63af586e6 100644 --- a/keyboards/yynmt/dozen0/config.h +++ b/keyboards/yynmt/dozen0/config.h @@ -114,8 +114,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/yynmt/kagamidget/config.h b/keyboards/yynmt/kagamidget/config.h index 2bf5b8d7f8..3a0ddeaf30 100644 --- a/keyboards/yynmt/kagamidget/config.h +++ b/keyboards/yynmt/kagamidget/config.h @@ -109,8 +109,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -//#define NO_ACTION_MACRO -//#define NO_ACTION_FUNCTION /* Bootmagic Lite key configuration */ // #define BOOTMAGIC_LITE_ROW 0 diff --git a/keyboards/ziggurat/config.h b/keyboards/ziggurat/config.h index 9c38f5e796..d2332a3e48 100644 --- a/keyboards/ziggurat/config.h +++ b/keyboards/ziggurat/config.h @@ -40,7 +40,3 @@ along with this program. If not, see . /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/zoo/wampus/config.h b/keyboards/zoo/wampus/config.h index f572c91fc7..7da55184a0 100644 --- a/keyboards/zoo/wampus/config.h +++ b/keyboards/zoo/wampus/config.h @@ -87,7 +87,3 @@ along with this program. If not, see . #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE - -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION diff --git a/keyboards/zvecr/split_blackpill/config.h b/keyboards/zvecr/split_blackpill/config.h index c6ca34779a..75a7ced350 100644 --- a/keyboards/zvecr/split_blackpill/config.h +++ b/keyboards/zvecr/split_blackpill/config.h @@ -115,10 +115,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/zvecr/zv48/config.h b/keyboards/zvecr/zv48/config.h index 881282c286..56be1b27d2 100644 --- a/keyboards/zvecr/zv48/config.h +++ b/keyboards/zvecr/zv48/config.h @@ -121,10 +121,6 @@ //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT -/* disable these deprecated features by default */ -#define NO_ACTION_MACRO -#define NO_ACTION_FUNCTION - /* Bootmagic Lite key configuration */ #define BOOTMAGIC_LITE_ROW 0 #define BOOTMAGIC_LITE_COLUMN 0 From a808c297269573f8f18b45d750405e2238302bc2 Mon Sep 17 00:00:00 2001 From: Tom Konidas Date: Tue, 15 Mar 2022 18:48:13 -0400 Subject: [PATCH 130/699] [Keymap] Planck Keymap: tomkonidas (#15869) --- keyboards/planck/keymaps/tomkonidas/config.h | 46 +++ keyboards/planck/keymaps/tomkonidas/keymap.c | 353 ++++++++++++++++++ keyboards/planck/keymaps/tomkonidas/readme.md | 101 +++++ keyboards/planck/keymaps/tomkonidas/rules.mk | 1 + 4 files changed, 501 insertions(+) create mode 100644 keyboards/planck/keymaps/tomkonidas/config.h create mode 100644 keyboards/planck/keymaps/tomkonidas/keymap.c create mode 100644 keyboards/planck/keymaps/tomkonidas/readme.md create mode 100644 keyboards/planck/keymaps/tomkonidas/rules.mk diff --git a/keyboards/planck/keymaps/tomkonidas/config.h b/keyboards/planck/keymaps/tomkonidas/config.h new file mode 100644 index 0000000000..6e6d0f3ac7 --- /dev/null +++ b/keyboards/planck/keymaps/tomkonidas/config.h @@ -0,0 +1,46 @@ +/* Copyright 2015-2021 Jack Humbert + * + * 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 . + */ + +#pragma once + +#ifdef AUDIO_ENABLE +# define STARTUP_SONG SONG(PLANCK_SOUND) +// #define STARTUP_SONG SONG(NO_SOUND) + +# define DEFAULT_LAYER_SONGS \ + { SONG(QWERTY_SOUND), SONG(COLEMAK_SOUND), SONG(DVORAK_SOUND) } +#endif + +/* + * MIDI options + */ + +/* 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 + +// Most tactile encoders have detents every 4 stages +#define ENCODER_RESOLUTION 4 diff --git a/keyboards/planck/keymaps/tomkonidas/keymap.c b/keyboards/planck/keymaps/tomkonidas/keymap.c new file mode 100644 index 0000000000..39933e8a21 --- /dev/null +++ b/keyboards/planck/keymaps/tomkonidas/keymap.c @@ -0,0 +1,353 @@ +/* Copyright 2015-2021 Jack Humbert + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "muse.h" + + +enum planck_layers { + _DVORAK, + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _PLOVER, + _ADJUST +}; + +enum planck_keycodes { + DVORAK = SAFE_RANGE, + QWERTY, + COLEMAK, + PLOVER, + BACKLIT, + EXT_PLV +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | O | E | U | I | D | H | T | N | S | / | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = LAYOUT_planck_grid( + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, + KC_ESC, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_SLSH, + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ENT , + KC_LCTL, KC_LALT, BACKLIT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + KC_LCTL, KC_LALT, BACKLIT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + KC_LCTL, KC_LALT, BACKLIT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_planck_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_planck_grid( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Plover layer (http://opensteno.org) + * ,-----------------------------------------------------------------------------------. + * | # | # | # | # | # | # | # | # | # | # | # | # | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | S | T | P | H | * | * | F | P | L | T | D | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | S | K | W | R | * | * | R | B | G | S | Z | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Exit | | | A | O | | | E | U | | | | + * `-----------------------------------------------------------------------------------' + */ +[_PLOVER] = LAYOUT_planck_grid( + KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1, KC_1 , + XXXXXXX, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, + XXXXXXX, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + EXT_PLV, XXXXXXX, XXXXXXX, KC_C, KC_V, XXXXXXX, XXXXXXX, KC_N, KC_M, XXXXXXX, XXXXXXX, XXXXXXX +), + +/* Adjust (Lower + Raise) + * v------------------------RGB CONTROL--------------------v + * ,-----------------------------------------------------------------------------------. + * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | |MUSmod|Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof|TermOn|TermOf| | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_planck_grid( + _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, + _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +#ifdef AUDIO_ENABLE + float plover_song[][2] = SONG(PLOVER_SOUND); + float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND); +#endif + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DVORAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_DVORAK); + } + return false; + break; + case QWERTY: + if (record->event.pressed) { + print("mode just switched to qwerty and this is a huge string\n"); + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + case BACKLIT: + if (record->event.pressed) { + register_code(KC_RSFT); + #ifdef BACKLIGHT_ENABLE + backlight_step(); + #endif + #ifdef KEYBOARD_planck_rev5 + writePinLow(E6); + #endif + } else { + unregister_code(KC_RSFT); + #ifdef KEYBOARD_planck_rev5 + writePinHigh(E6); + #endif + } + return false; + break; + case PLOVER: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + stop_all_notes(); + PLAY_SONG(plover_song); + #endif + layer_off(_RAISE); + layer_off(_LOWER); + layer_off(_ADJUST); + layer_on(_PLOVER); + if (!eeconfig_is_enabled()) { + eeconfig_init(); + } + keymap_config.raw = eeconfig_read_keymap(); + keymap_config.nkro = 1; + eeconfig_update_keymap(keymap_config.raw); + } + return false; + break; + case EXT_PLV: + if (record->event.pressed) { + #ifdef AUDIO_ENABLE + PLAY_SONG(plover_gb_song); + #endif + layer_off(_PLOVER); + } + return false; + break; + } + return true; +} + +bool muse_mode = false; +uint8_t last_muse_note = 0; +uint16_t muse_counter = 0; +uint8_t muse_offset = 70; +uint16_t muse_tempo = 50; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (muse_mode) { + if (IS_LAYER_ON(_RAISE)) { + if (clockwise) { + muse_offset++; + } else { + muse_offset--; + } + } else { + if (clockwise) { + muse_tempo+=1; + } else { + muse_tempo-=1; + } + } + } else { + if (clockwise) { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_DOWN); + #else + tap_code(KC_PGDN); + #endif + } else { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_UP); + #else + tap_code(KC_PGUP); + #endif + } + } + return true; +} + +bool dip_switch_update_user(uint8_t index, bool active) { + switch (index) { + case 0: { +#ifdef AUDIO_ENABLE + static bool play_sound = false; +#endif + if (active) { +#ifdef AUDIO_ENABLE + if (play_sound) { PLAY_SONG(plover_song); } +#endif + layer_on(_ADJUST); + } else { +#ifdef AUDIO_ENABLE + if (play_sound) { PLAY_SONG(plover_gb_song); } +#endif + layer_off(_ADJUST); + } +#ifdef AUDIO_ENABLE + play_sound = true; +#endif + break; + } + case 1: + if (active) { + muse_mode = true; + } else { + muse_mode = false; + } + } + return true; +} + +void matrix_scan_user(void) { +#ifdef AUDIO_ENABLE + if (muse_mode) { + if (muse_counter == 0) { + uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()]; + if (muse_note != last_muse_note) { + stop_note(compute_freq_for_midi_note(last_muse_note)); + play_note(compute_freq_for_midi_note(muse_note), 0xF); + last_muse_note = muse_note; + } + } + muse_counter = (muse_counter + 1) % muse_tempo; + } else { + if (muse_counter) { + stop_all_notes(); + muse_counter = 0; + } + } +#endif +} + +bool music_mask_user(uint16_t keycode) { + switch (keycode) { + case RAISE: + case LOWER: + return false; + default: + return true; + } +} diff --git a/keyboards/planck/keymaps/tomkonidas/readme.md b/keyboards/planck/keymaps/tomkonidas/readme.md new file mode 100644 index 0000000000..34c2147604 --- /dev/null +++ b/keyboards/planck/keymaps/tomkonidas/readme.md @@ -0,0 +1,101 @@ +# Planck Rev6 Layers + +``` + Dvorak + ,-----------------------------------------------------------------------------------. + | Tab | " | , | . | P | Y | F | G | C | R | L | Bksp | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Esc | A | O | E | U | I | D | H | T | N | S | / | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Shift| ; | Q | J | K | X | B | M | W | V | Z |Enter | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + `-----------------------------------------------------------------------------------' + +``` + +``` + Qwerty + ,-----------------------------------------------------------------------------------. + | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Esc | A | S | D | F | G | H | J | K | L | ; | " | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + `-----------------------------------------------------------------------------------' + +``` + +``` + Colemak + ,-----------------------------------------------------------------------------------. + | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Esc | A | R | S | T | D | H | N | E | I | O | " | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Ctrl | Alt | Brite | GUI |Lower |Space |Space |Raise | Left | Down | Up |Right | + `-----------------------------------------------------------------------------------' + +``` + +``` + Lower + ,-----------------------------------------------------------------------------------. + | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | | Next | Vol- | Vol+ | Play | + `-----------------------------------------------------------------------------------' + +``` + +``` + Raise + ,-----------------------------------------------------------------------------------. + | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | | Next | Vol- | Vol+ | Play | + `-----------------------------------------------------------------------------------' + +``` + + +``` + Adjust (Lower + Raise) + v------------------------RGB CONTROL--------------------v + ,-----------------------------------------------------------------------------------. + | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | |MUSmod|Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk|Dvorak|Plover| | + |------+------+------+------+------+------+------+------+------+------+------+------| + | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof|TermOn|TermOf| | | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | | | | | | + `-----------------------------------------------------------------------------------' + +``` + +``` + Plover layer (http://opensteno.org) + ,-----------------------------------------------------------------------------------. + | # | # | # | # | # | # | # | # | # | # | # | # | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | S | T | P | H | * | * | F | P | L | T | D | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | S | K | W | R | * | * | R | B | G | S | Z | + |------+------+------+------+------+------+------+------+------+------+------+------| + | Exit | | | A | O | | | E | U | | | | + `-----------------------------------------------------------------------------------' + +``` diff --git a/keyboards/planck/keymaps/tomkonidas/rules.mk b/keyboards/planck/keymaps/tomkonidas/rules.mk new file mode 100644 index 0000000000..dcf16bef39 --- /dev/null +++ b/keyboards/planck/keymaps/tomkonidas/rules.mk @@ -0,0 +1 @@ +SRC += muse.c From 77aafd80562e0a3d4b91f1077f029e47ffb852f1 Mon Sep 17 00:00:00 2001 From: Moritz Date: Tue, 15 Mar 2022 23:58:16 +0100 Subject: [PATCH 131/699] [Keyboard] Add Dolice keyboard (#16186) --- keyboards/linworks/dolice/config.h | 47 +++ keyboards/linworks/dolice/dolice.c | 16 + keyboards/linworks/dolice/dolice.h | 93 ++++++ keyboards/linworks/dolice/info.json | 282 ++++++++++++++++++ .../linworks/dolice/keymaps/default/keymap.c | 33 ++ .../linworks/dolice/keymaps/via/keymap.c | 47 +++ .../linworks/dolice/keymaps/via/rules.mk | 1 + keyboards/linworks/dolice/readme.md | 21 ++ keyboards/linworks/dolice/rules.mk | 18 ++ 9 files changed, 558 insertions(+) create mode 100644 keyboards/linworks/dolice/config.h create mode 100644 keyboards/linworks/dolice/dolice.c create mode 100644 keyboards/linworks/dolice/dolice.h create mode 100644 keyboards/linworks/dolice/info.json create mode 100644 keyboards/linworks/dolice/keymaps/default/keymap.c create mode 100644 keyboards/linworks/dolice/keymaps/via/keymap.c create mode 100644 keyboards/linworks/dolice/keymaps/via/rules.mk create mode 100644 keyboards/linworks/dolice/readme.md create mode 100644 keyboards/linworks/dolice/rules.mk diff --git a/keyboards/linworks/dolice/config.h b/keyboards/linworks/dolice/config.h new file mode 100644 index 0000000000..b42fda933f --- /dev/null +++ b/keyboards/linworks/dolice/config.h @@ -0,0 +1,47 @@ +/* +Copyright 2021 Moritz Plattner +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4C58 //"LX" +#define PRODUCT_ID 0x0004 +#define DEVICE_VER 0x0001 +#define MANUFACTURER KLC +#define PRODUCT Dolice + +/* Set 1 kHz polling rate and force USB NKRO */ +#define USB_POLLING_INTERVAL_MS 1 +#define FORCE_NKRO + +/* key matrix size */ +#define MATRIX_ROWS 9 +#define MATRIX_COLS 8 + +#define MATRIX_ROW_PINS { F5, F4, F6, F7, B0, B7, D7, D6, D4 } +#define MATRIX_COL_PINS { E6, F0, F1, B4, D5, D3, D2, B2 } +#define UNUSED_PINS { B1, B3, D0, D1, E2 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* Backlight */ +#define BACKLIGHT_PIN B5 // Timer 1 on mega32u4 +#define BACKLIGHT_BREATHING +#define BACKLIGHT_ON_STATE 1 diff --git a/keyboards/linworks/dolice/dolice.c b/keyboards/linworks/dolice/dolice.c new file mode 100644 index 0000000000..febac2099f --- /dev/null +++ b/keyboards/linworks/dolice/dolice.c @@ -0,0 +1,16 @@ +/* Copyright 2021 Moritz Plattner + * + * 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 . + */ +#include "dolice.h" diff --git a/keyboards/linworks/dolice/dolice.h b/keyboards/linworks/dolice/dolice.h new file mode 100644 index 0000000000..22a9338cf3 --- /dev/null +++ b/keyboards/linworks/dolice/dolice.h @@ -0,0 +1,93 @@ +/* Copyright 221 Moritz Plattner + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_alice( \ + K00, K10, K01, K11, K02, K12, K03, K13, K14, K05, K15, K06, K16, K07, K17, \ + K20, K30, K21, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K27, K37, \ + K40, K50, K41, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, K47, \ + K70, K61, K62, K72, K63, K73, K64, K74, K65, K75, K66, K76, K67, K77, \ + K80, K81, K82, K83, K84, K85, K87 \ +) { \ + { K00, K01, K02, K03, KC_NO, K05, K06, K07, }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, }, \ + { K50, KC_NO, K52, K53, K54, K55, K56, KC_NO, }, \ + { KC_NO, K61, K62, K63, K64, K65, K66, K67, }, \ + { K70, KC_NO, K72, K73, K74, K75, K76, K77, }, \ + { K80, K81, K82, K83, K84, K85, KC_NO, K87 } \ +} + +#define LAYOUT_alice_split_bs( \ + K00, K10, K01, K11, K02, K12, K03, K13, K14, K05, K15, K06, K16, K07, K17, K57, \ + K20, K30, K21, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K27, K37, \ + K40, K50, K41, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, K47, \ + K70, K61, K62, K72, K63, K73, K64, K74, K65, K75, K66, K76, K67, K77, \ + K80, K81, K82, K83, K84, K85, K87 \ +) { \ + { K00, K01, K02, K03, KC_NO, K05, K06, K07, }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, }, \ + { K50, KC_NO, K52, K53, K54, K55, K56, K57, }, \ + { KC_NO, K61, K62, K63, K64, K65, K66, K67, }, \ + { K70, KC_NO, K72, K73, K74, K75, K76, K77, }, \ + { K80, K81, K82, K83, K84, K85, KC_NO, K87 } \ +} + +#define LAYOUT_long_rshift( \ + K00, K10, K01, K11, K02, K12, K03, K13, K14, K05, K15, K06, K16, K07, K17, \ + K20, K30, K21, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K27, K37, \ + K40, K50, K41, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, K47, \ + K70, K61, K62, K72, K63, K73, K64, K74, K65, K75, K66, K76, K67, \ + K80, K81, K82, K83, K84, K85, K87 \ +) { \ + { K00, K01, K02, K03, KC_NO, K05, K06, K07, }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, }, \ + { K50, KC_NO, K52, K53, K54, K55, K56, KC_NO, }, \ + { KC_NO, K61, K62, K63, K64, K65, K66, K67, }, \ + { K70, KC_NO, K72, K73, K74, K75, K76, KC_NO, }, \ + { K80, K81, K82, K83, K84, K85, KC_NO, K87 } \ +} + +#define LAYOUT_long_rshift_split_bs( \ + K00, K10, K01, K11, K02, K12, K03, K13, K14, K05, K15, K06, K16, K07, K17, K57, \ + K20, K30, K21, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K27, K37, \ + K40, K50, K41, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, K47, \ + K70, K61, K62, K72, K63, K73, K64, K74, K65, K75, K66, K76, K67, \ + K80, K81, K82, K83, K84, K85, K87 \ +) { \ + { K00, K01, K02, K03, KC_NO, K05, K06, K07, }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, }, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, }, \ + { K50, KC_NO, K52, K53, K54, K55, K56, K57, }, \ + { KC_NO, K61, K62, K63, K64, K65, K66, K67, }, \ + { K70, KC_NO, K72, K73, K74, K75, K76, KC_NO, }, \ + { K80, K81, K82, K83, K84, K85, KC_NO, K87 } \ +} + +#define LAYOUT_all LAYOUT_alice_split_bs \ No newline at end of file diff --git a/keyboards/linworks/dolice/info.json b/keyboards/linworks/dolice/info.json new file mode 100644 index 0000000000..5a72496f1c --- /dev/null +++ b/keyboards/linworks/dolice/info.json @@ -0,0 +1,282 @@ +{ + "keyboard_name": "Dolice", + "maintainer": "ebastler", + "layouts": { + "LAYOUT_alice": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.25, "y":0}, + {"x":6.25, "y":0}, + {"x":7.25, "y":0}, + {"x":10.25, "y":0}, + {"x":11.25, "y":0}, + {"x":12.25, "y":0}, + {"x":13.25, "y":0}, + {"x":14.25, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0, "w": 2}, + {"x":0, "y":1}, + {"x":1.25, "y":1, "w":1.5}, + {"x":2.75, "y":1}, + {"x":3.75, "y":1}, + {"x":4.75, "y":1}, + {"x":5.75, "y":1}, + {"x":6.75, "y":1}, + {"x":9.75, "y":1}, + {"x":10.75, "y":1}, + {"x":11.75, "y":1}, + {"x":12.75, "y":1}, + {"x":13.75, "y":1}, + {"x":14.75, "y":1}, + {"x":15.75, "y":1}, + {"x":16.75, "y":1, "w":1.5}, + {"x":0, "y":2}, + {"x":1.25, "y":2, "w":1.75}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":10, "y":2}, + {"x":11, "y":2}, + {"x":12, "y":2}, + {"x":13, "y":2}, + {"x":14, "y":2}, + {"x":15, "y":2}, + {"x":16, "y":2, "w":2.25}, + {"x":1.25, "y":3, "w":2.25}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.5, "y":3}, + {"x":7.5, "y":3}, + {"x":9.5, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":1.75}, + {"x":17.25, "y":3}, + {"x":1.25, "y":4, "w":1.5}, + {"x":4.25, "y":4, "w":1.5}, + {"x":5.75, "y":4, "w":2}, + {"x":7.75, "y":4, "w":1.25}, + {"x":9.5, "y":4, "w":2.75}, + {"x":12.25, "y":4, "w":1.5}, + {"x":16.75, "y":4, "w":1.5} + ] + }, + "LAYOUT_alice_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.25, "y":0}, + {"x":6.25, "y":0}, + {"x":7.25, "y":0}, + {"x":10.25, "y":0}, + {"x":11.25, "y":0}, + {"x":12.25, "y":0}, + {"x":13.25, "y":0}, + {"x":14.25, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + {"x":0, "y":1}, + {"x":1.25, "y":1, "w":1.5}, + {"x":2.75, "y":1}, + {"x":3.75, "y":1}, + {"x":4.75, "y":1}, + {"x":5.75, "y":1}, + {"x":6.75, "y":1}, + {"x":9.75, "y":1}, + {"x":10.75, "y":1}, + {"x":11.75, "y":1}, + {"x":12.75, "y":1}, + {"x":13.75, "y":1}, + {"x":14.75, "y":1}, + {"x":15.75, "y":1}, + {"x":16.75, "y":1, "w":1.5}, + {"x":0, "y":2}, + {"x":1.25, "y":2, "w":1.75}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":10, "y":2}, + {"x":11, "y":2}, + {"x":12, "y":2}, + {"x":13, "y":2}, + {"x":14, "y":2}, + {"x":15, "y":2}, + {"x":16, "y":2, "w":2.25}, + {"x":1.25, "y":3, "w":2.25}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.5, "y":3}, + {"x":7.5, "y":3}, + {"x":9.5, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":1.75}, + {"x":17.25, "y":3}, + {"x":1.25, "y":4, "w":1.5}, + {"x":4.25, "y":4, "w":1.5}, + {"x":5.75, "y":4, "w":2}, + {"x":7.75, "y":4, "w":1.25}, + {"x":9.5, "y":4, "w":2.75}, + {"x":12.25, "y":4, "w":1.5}, + {"x":16.75, "y":4, "w":1.5} + ] + }, + "LAYOUT_long_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.25, "y":0}, + {"x":6.25, "y":0}, + {"x":7.25, "y":0}, + {"x":10.25, "y":0}, + {"x":11.25, "y":0}, + {"x":12.25, "y":0}, + {"x":13.25, "y":0}, + {"x":14.25, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0, "w":2}, + {"x":0, "y":1}, + {"x":1.25, "y":1, "w":1.5}, + {"x":2.75, "y":1}, + {"x":3.75, "y":1}, + {"x":4.75, "y":1}, + {"x":5.75, "y":1}, + {"x":6.75, "y":1}, + {"x":9.75, "y":1}, + {"x":10.75, "y":1}, + {"x":11.75, "y":1}, + {"x":12.75, "y":1}, + {"x":13.75, "y":1}, + {"x":14.75, "y":1}, + {"x":15.75, "y":1}, + {"x":16.75, "y":1, "w":1.5}, + {"x":0, "y":2}, + {"x":1.25, "y":2, "w":1.75}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":10, "y":2}, + {"x":11, "y":2}, + {"x":12, "y":2}, + {"x":13, "y":2}, + {"x":14, "y":2}, + {"x":15, "y":2}, + {"x":16, "y":2, "w":2.25}, + {"x":1.25, "y":3, "w":2.25}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.5, "y":3}, + {"x":7.5, "y":3}, + {"x":9.5, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":2.75}, + {"x":1.25, "y":4, "w":1.5}, + {"x":4.25, "y":4, "w":1.5}, + {"x":5.75, "y":4, "w":2}, + {"x":7.75, "y":4, "w":1.25}, + {"x":9.5, "y":4, "w":2.75}, + {"x":12.25, "y":4, "w":1.5}, + {"x":16.75, "y":4, "w":1.5} + ] + }, + "LAYOUT_long_rshift_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.25, "y":0}, + {"x":6.25, "y":0}, + {"x":7.25, "y":0}, + {"x":10.25, "y":0}, + {"x":11.25, "y":0}, + {"x":12.25, "y":0}, + {"x":13.25, "y":0}, + {"x":14.25, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + {"x":0, "y":1}, + {"x":1.25, "y":1, "w":1.5}, + {"x":2.75, "y":1}, + {"x":3.75, "y":1}, + {"x":4.75, "y":1}, + {"x":5.75, "y":1}, + {"x":6.75, "y":1}, + {"x":9.75, "y":1}, + {"x":10.75, "y":1}, + {"x":11.75, "y":1}, + {"x":12.75, "y":1}, + {"x":13.75, "y":1}, + {"x":14.75, "y":1}, + {"x":15.75, "y":1}, + {"x":16.75, "y":1, "w":1.5}, + {"x":0, "y":2}, + {"x":1.25, "y":2, "w":1.75}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":10, "y":2}, + {"x":11, "y":2}, + {"x":12, "y":2}, + {"x":13, "y":2}, + {"x":14, "y":2}, + {"x":15, "y":2}, + {"x":16, "y":2, "w":2.25}, + {"x":1.25, "y":3, "w":2.25}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.5, "y":3}, + {"x":7.5, "y":3}, + {"x":9.5, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":2.75}, + {"x":1.25, "y":4, "w":1.5}, + {"x":4.25, "y":4, "w":1.5}, + {"x":5.75, "y":4, "w":2}, + {"x":7.75, "y":4, "w":1.25}, + {"x":9.5, "y":4, "w":2.75}, + {"x":12.25, "y":4, "w":1.5}, + {"x":16.75, "y":4, "w":1.5} + ] + } + } + } \ No newline at end of file diff --git a/keyboards/linworks/dolice/keymaps/default/keymap.c b/keyboards/linworks/dolice/keymaps/default/keymap.c new file mode 100644 index 0000000000..45f710a7a9 --- /dev/null +++ b/keyboards/linworks/dolice/keymaps/default/keymap.c @@ -0,0 +1,33 @@ +/* Copyright 2021 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_alice( + KC_PSCR, 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_BSPC, + KC_PGUP, 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, + KC_PGDN, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), + KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL + ), + [1] = LAYOUT_alice( + KC_TRNS, KC_GRV, 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_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; \ No newline at end of file diff --git a/keyboards/linworks/dolice/keymaps/via/keymap.c b/keyboards/linworks/dolice/keymaps/via/keymap.c new file mode 100644 index 0000000000..4879f3bad7 --- /dev/null +++ b/keyboards/linworks/dolice/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2021 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_PSCR, 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_BSPC, KC_DEL, + KC_PGUP, 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, + KC_PGDN, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(1), + KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL + ), + [1] = LAYOUT_all( + KC_TRNS, KC_GRV, 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_DEL, + KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + KC_TRNS, KC_GRV, 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_DEL, + KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + KC_TRNS, KC_GRV, 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_DEL, + KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; \ No newline at end of file diff --git a/keyboards/linworks/dolice/keymaps/via/rules.mk b/keyboards/linworks/dolice/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/linworks/dolice/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/linworks/dolice/readme.md b/keyboards/linworks/dolice/readme.md new file mode 100644 index 0000000000..e46fb8261b --- /dev/null +++ b/keyboards/linworks/dolice/readme.md @@ -0,0 +1,21 @@ +# Dolice + +The Dolice is a alice keyboard designed by Lx3 (Linworks) and yuktsi (TGR) and run by KLC. + +* Keyboard maintainer: [ebastler](https://github.com/ebastler) +* Hardware supported: Linworks/TGR/KLC Dolice +* Hardware availability: Groupbuys. Check the ongoing ones on [the KLC Discord](https://discord.gg/d2A72mGPRB) or [Webshop](https://klc-playground.com/). + +Make example for this keyboard (after setting up your build environment): + + make linworks/dolice:default + +Flash example for this keyboard: + + make linworks/dolice:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Enter the bootloader: +* **Bootmagic reset**: Hold down the top left most switch and plug in the keyboard +* **Physical reset button**: Briefly short the pads marked "RES" and "GND" on the 6-pin programming header with tweezers diff --git a/keyboards/linworks/dolice/rules.mk b/keyboards/linworks/dolice/rules.mk new file mode 100644 index 0000000000..a3d10eaaaa --- /dev/null +++ b/keyboards/linworks/dolice/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file From 8bffc6195959ceb3a0623595f3d4d5ac072af8c1 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 15 Mar 2022 23:27:55 +0000 Subject: [PATCH 132/699] Ensure dependent CI workflows run (#16662) --- .github/workflows/develop_update.yml | 1 + .github/workflows/feature_branch_update.yml | 1 + 2 files changed, 2 insertions(+) diff --git a/.github/workflows/develop_update.yml b/.github/workflows/develop_update.yml index 1f5c841bff..90159406a6 100644 --- a/.github/workflows/develop_update.yml +++ b/.github/workflows/develop_update.yml @@ -14,6 +14,7 @@ jobs: steps: - uses: actions/checkout@v2 with: + token: ${{ secrets.QMK_BOT_TOKEN }} fetch-depth: 0 - name: Checkout develop diff --git a/.github/workflows/feature_branch_update.yml b/.github/workflows/feature_branch_update.yml index fc7bbafd18..98d3616ad1 100644 --- a/.github/workflows/feature_branch_update.yml +++ b/.github/workflows/feature_branch_update.yml @@ -19,6 +19,7 @@ jobs: steps: - uses: actions/checkout@v2 with: + token: ${{ secrets.QMK_BOT_TOKEN }} fetch-depth: 0 - name: Checkout branch From f6f4d85aa5256cfeadcae0b502830342bfd0a085 Mon Sep 17 00:00:00 2001 From: an_achronism <87213873+an-achronism@users.noreply.github.com> Date: Wed, 16 Mar 2022 00:06:27 +0000 Subject: [PATCH 133/699] yugo_m enhancement: include all available key positions (#16216) * yugo_m enhancement to include all available key positions in matrix --- keyboards/yugo_m/model_m_101/config.h | 4 ++ keyboards/yugo_m/model_m_101/info.json | 4 +- .../keymaps/an_achronism_106/keymap.c | 53 ++++++++++++++ .../keymaps/an_achronism_106/readme.md | 3 + .../model_m_101/keymaps/default/keymap.c | 29 ++++---- .../model_m_101/keymaps/default/readme.md | 2 +- .../yugo_m/model_m_101/keymaps/via/keymap.c | 69 +++++++++++++++++++ .../yugo_m/model_m_101/keymaps/via/rules.mk | 1 + keyboards/yugo_m/model_m_101/model_m_101.h | 23 ++++--- keyboards/yugo_m/model_m_101/readme.md | 8 +++ keyboards/yugo_m/readme.md | 8 +++ 11 files changed, 176 insertions(+), 28 deletions(-) create mode 100644 keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/keymap.c create mode 100644 keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/readme.md create mode 100644 keyboards/yugo_m/model_m_101/keymaps/via/keymap.c create mode 100644 keyboards/yugo_m/model_m_101/keymaps/via/rules.mk diff --git a/keyboards/yugo_m/model_m_101/config.h b/keyboards/yugo_m/model_m_101/config.h index 94861a7587..e17f8310b8 100644 --- a/keyboards/yugo_m/model_m_101/config.h +++ b/keyboards/yugo_m/model_m_101/config.h @@ -1,5 +1,6 @@ /* Copyright 2020 Nidzo Tomic +Copyright 2022 an_achronism <87213873+an-achronism@users.noreply.github.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 @@ -96,3 +97,6 @@ along with this program. If not, see . //#define NO_ACTION_LAYER //#define NO_ACTION_TAPPING //#define NO_ACTION_ONESHOT + +/* redefine available (emulated) EEPROM as 4 kB rather than the default 1 kB to let VIA use more of the 8 kB of on-chip Flash of the STM32F303 to store 4 layers (since 4 layers * 8 rows * 16 columns * 2 = 1024 bytes but the default max available is 1023 bytes due to ATMEGA32U4 etc. only having 1 kB of EEPROM) */ +#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095 diff --git a/keyboards/yugo_m/model_m_101/info.json b/keyboards/yugo_m/model_m_101/info.json index ec978056d3..399307c2d0 100644 --- a/keyboards/yugo_m/model_m_101/info.json +++ b/keyboards/yugo_m/model_m_101/info.json @@ -1,10 +1,10 @@ { - "keyboard_name": "IBM Model M 101/102", + "keyboard_name": "IBM Enhanced Keyboard", "url": "https://github.com/tomic1785/qmk_firmware/tree/stm32_model_m/keyboards/yugo_m/model_m_101", "maintainer": "Nidzo Tomic", "layouts": { "LAYOUT_all": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":2, "y":0}, {"label":"F2", "x":3, "y":0}, {"label":"F3", "x":4, "y":0}, {"label":"F4", "x":5, "y":0}, {"label":"F5", "x":6.5, "y":0}, {"label":"F6", "x":7.5, "y":0}, {"label":"F7", "x":8.5, "y":0}, {"label":"F8", "x":9.5, "y":0}, {"label":"F9", "x":11, "y":0}, {"label":"F10", "x":12, "y":0}, {"label":"F11", "x":13, "y":0}, {"label":"F12", "x":14, "y":0}, {"label":"PrtSc", "x":15.25, "y":0}, {"label":"Scroll Lock", "x":16.25, "y":0}, {"label":"Pause", "x":17.25, "y":0}, {"label":"~", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"@", "x":2, "y":1.5}, {"label":"#", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":7, "y":1.5}, {"label":"*", "x":8, "y":1.5}, {"label":"(", "x":9, "y":1.5}, {"label":")", "x":10, "y":1.5}, {"label":"_", "x":11, "y":1.5}, {"label":"+", "x":12, "y":1.5}, {"label":"Backspace", "x":13, "y":1.5, "w":2}, {"label":"Insert", "x":15.25, "y":1.5}, {"label":"Home", "x":16.25, "y":1.5}, {"label":"PgUp", "x":17.25, "y":1.5}, {"label":"Num Lock", "x":18.5, "y":1.5}, {"label":"/", "x":19.5, "y":1.5}, {"label":"*", "x":20.5, "y":1.5}, {"label":"-", "x":21.5, "y":1.5}, {"label":"Tab", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":6.5, "y":2.5}, {"label":"U", "x":7.5, "y":2.5}, {"label":"I", "x":8.5, "y":2.5}, {"label":"O", "x":9.5, "y":2.5}, {"label":"P", "x":10.5, "y":2.5}, {"label":"{", "x":11.5, "y":2.5}, {"label":"}", "x":12.5, "y":2.5}, {"label":"|", "x":13.5, "y":2.5, "w":1.5}, {"label":"Delete", "x":15.25, "y":2.5}, {"label":"End", "x":16.25, "y":2.5}, {"label":"PgDn", "x":17.25, "y":2.5}, {"label":"7", "x":18.5, "y":2.5}, {"label":"8", "x":19.5, "y":2.5}, {"label":"9", "x":20.5, "y":2.5}, {"label":"+", "x":21.5, "y":2.5, "h":2}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.5}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":6.75, "y":3.5}, {"label":"J", "x":7.75, "y":3.5}, {"label":"K", "x":8.75, "y":3.5}, {"label":"L", "x":9.75, "y":3.5}, {"label":":", "x":10.75, "y":3.5}, {"label":"\"", "x":11.75, "y":3.5}, {"label":"~", "x":12.75, "y":3.5}, {"label":"Enter", "x":13.75, "y":3.5, "w":1.25}, {"label":"4", "x":18.5, "y":3.5}, {"label":"5", "x":19.5, "y":3.5}, {"label":"6", "x":20.5, "y":3.5}, {"label":"Shift", "x":0, "y":4.5, "w":1.25}, {"label":"|", "x":1.25, "y":4.5}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":7.25, "y":4.5}, {"label":"M", "x":8.25, "y":4.5}, {"label":"<", "x":9.25, "y":4.5}, {"label":">", "x":10.25, "y":4.5}, {"label":"?", "x":11.25, "y":4.5}, {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, {"label":"\u2191", "x":16.25, "y":4.5}, {"label":"1", "x":18.5, "y":4.5}, {"label":"2", "x":19.5, "y":4.5}, {"label":"3", "x":20.5, "y":4.5}, {"label":"Enter", "x":21.5, "y":4.5, "h":2}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.5}, {"label":"Alt", "x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":7}, {"label":"Alt", "x":11, "y":5.5, "w":1.5}, {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5}, {"label":"\u2190", "x":15.25, "y":5.5}, {"label":"\u2193", "x":16.25, "y":5.5}, {"label":"\u2192", "x":17.25, "y":5.5}, {"label":"0", "x":18.5, "y":5.5, "w":2}, {"label":".", "x":20.5, "y":5.5}] + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":2, "y":0}, {"label":"F2", "x":3, "y":0}, {"label":"F3", "x":4, "y":0}, {"label":"F4", "x":5, "y":0}, {"label":"F5", "x":6.5, "y":0}, {"label":"F6", "x":7.5, "y":0}, {"label":"F7", "x":8.5, "y":0}, {"label":"F8", "x":9.5, "y":0}, {"label":"F9", "x":11, "y":0}, {"label":"F10", "x":12, "y":0}, {"label":"F11", "x":13, "y":0}, {"label":"F12", "x":14, "y":0}, {"label":"Print Screen", "x":15.5, "y":0}, {"label":"Scroll Lock", "x":16.5, "y":0}, {"label":"Pause", "x":17.5, "y":0}, {"label":"\u00ac", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"\"", "x":2, "y":1.5}, {"label":"\u00a3", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":7, "y":1.5}, {"label":"\uff0a", "x":8, "y":1.5}, {"label":"(", "x":9, "y":1.5}, {"label":")", "x":10, "y":1.5}, {"label":"_", "x":11, "y":1.5}, {"label":"+", "x":12, "y":1.5}, {"label":"|", "x":13, "y":1.5}, {"label":"", "x":14, "y":1.5}, {"label":"Insert", "x":15.5, "y":1.5}, {"label":"Home", "x":16.5, "y":1.5}, {"label":"PgUp", "x":17.5, "y":1.5}, {"label":"Num Lock", "x":19, "y":1.5}, {"label":"/", "x":20, "y":1.5}, {"label":"\uff0a", "x":21, "y":1.5}, {"label":"\u2212", "x":22, "y":1.5}, {"label":"", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":6.5, "y":2.5}, {"label":"U", "x":7.5, "y":2.5}, {"label":"I", "x":8.5, "y":2.5}, {"label":"O", "x":9.5, "y":2.5}, {"label":"P", "x":10.5, "y":2.5}, {"label":"{", "x":11.5, "y":2.5}, {"label":"}", "x":12.5, "y":2.5}, {"label":"|", "x":13.5, "y":2.5, "w":1.5}, {"label":"Delete", "x":15.5, "y":2.5}, {"label":"End", "x":16.5, "y":2.5}, {"label":"PgDn", "x":17.5, "y":2.5}, {"label":"7", "x":19, "y":2.5}, {"label":"8", "x":20, "y":2.5}, {"label":"9", "x":21, "y":2.5}, {"label":"+", "x":22, "y":2.5}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.25}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":6.75, "y":3.5}, {"label":"J", "x":7.75, "y":3.5}, {"label":"K", "x":8.75, "y":3.5}, {"label":"L", "x":9.75, "y":3.5}, {"label":":", "x":10.75, "y":3.5}, {"label":"@", "x":11.75, "y":3.5}, {"label":"~", "x":12.75, "y":3.5}, {"label":"", "x":13.75, "y":3.5, "w":1.25}, {"label":"4", "x":19, "y":3.5}, {"label":"5", "x":20, "y":3.5}, {"label":"6", "x":21, "y":3.5}, {"label":"=", "x":22, "y":3.5}, {"label":"\u21e7", "x":0, "y":4.5, "w":1.25}, {"label":"|", "x":1.25, "y":4.5}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":7.25, "y":4.5}, {"label":"M", "x":8.25, "y":4.5}, {"label":"<", "x":9.25, "y":4.5}, {"label":">", "x":10.25, "y":4.5}, {"label":"?", "x":11.25, "y":4.5}, {"label":"_", "x":12.25, "y":4.5}, {"label":"\u21e7", "x":13.25, "y":4.5, "w":1.75}, {"label":"", "x":16.5, "y":4.5}, {"label":"1", "x":19, "y":4.5}, {"label":"2", "x":20, "y":4.5}, {"label":"3", "x":21, "y":4.5}, {"label":"Enter", "x":22, "y":4.5}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.5}, {"label":"Alt", "x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":7}, {"label":"Alt Gr", "x":11, "y":5.5, "w":1.5}, {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5}, {"label":"", "x":15.5, "y":5.5}, {"label":"", "x":16.5, "y":5.5}, {"label":"", "x":17.5, "y":5.5}, {"label":"0", "x":19, "y":5.5}, {"label":",", "x":20, "y":5.5}, {"label":".", "x":21, "y":5.5}, {"label":"GUI", "x":22, "y":5.5}] } } } diff --git a/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/keymap.c b/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/keymap.c new file mode 100644 index 0000000000..4b9646f9ea --- /dev/null +++ b/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/keymap.c @@ -0,0 +1,53 @@ +/* Copyright 2022 an_achronism <87213873+an-achronism@users.noreply.github.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 . + */ +#include QMK_KEYBOARD_H + +enum keyboard_layers { + _BL, // Base Layer + _FN // Function Layer +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,-------------------------------------------------------------------------------------------------. + * |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PSc|ScL|Cap| | + * | | + * |` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |- |= |BSp|Pse| |Ins|Hom|PgU| |Num|/ |* |= | + * |-----------------------------------------------------------| |-----------| |---------------| + * |Tab |Q |W |E |R |T |Y |U |I |O |P |[ |] |RCtrl| |Del|End|PgD| |7 |8 |9 |- | + * |-----------------------------------------------------------| |---------------| + * |LCtrl |A |S |D |F |G |H |J |K |L |; |' |# |Rtn | |4 |5 |6 |+ | + * |-----------------------------------------------------------| |---------------| + * |LShift|\ |Z |X |C |V |B |N |M |, |. |/ |RShift | |Up | |1 |2 |3 |Ent| + * |-----------------------------------------------------------| |---| |-----------| | + * |Esc/LAlt| |LGUI | Space |BS/Fn| |RAlt | |Lt |Dn |Rt | |0 |Fn | .| | + * `-------------------------------------------------------------------------------------------------' + */ + [_BL] = LAYOUT_all( + 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_PSCR, KC_SLCK, KC_CAPS, + KC_GRV, 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_PAUS, KC_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PEQL, + 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_RCTL, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + LALT_T(KC_ESC), KC_LGUI, KC_SPC, LT(_FN, KC_BSPC), KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, MO(_FN), KC_PDOT, KC_NO), + [_FN] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, C(KC_BRK), _______, _______, _______, KC_F10, KC_F11, KC_F12, KC_PWR, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_MPRV, KC_MNXT, KC_APP, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_SLEP, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_F4, KC_F5, KC_F6, KC_CALC, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_EJCT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/readme.md b/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/readme.md new file mode 100644 index 0000000000..6d3a7ff5d9 --- /dev/null +++ b/keyboards/yugo_m/model_m_101/keymaps/an_achronism_106/readme.md @@ -0,0 +1,3 @@ +# an_achronism's custom 106-key layout (107-key if you stick the appropriate keys on RShift and JIS backslash, which are already mapped for convenience). + +# With the exception of a single extra matrix position between LAlt and Space which only appears on certain later membranes and is almost never actually used, the only unmapped key is the bottom right corner of the numpad (the unused lower half of the vertical 2u key most commonly used as either Enter or Field +). If you like, you can easily add that into the keymap by changing the appropriate KC_NO to whatever you want. diff --git a/keyboards/yugo_m/model_m_101/keymaps/default/keymap.c b/keyboards/yugo_m/model_m_101/keymaps/default/keymap.c index 52f79457e2..d8615cb6e5 100644 --- a/keyboards/yugo_m/model_m_101/keymaps/default/keymap.c +++ b/keyboards/yugo_m/model_m_101/keymaps/default/keymap.c @@ -1,4 +1,5 @@ /* Copyright 2020 Nidzo Tomic + * Copyright 2022 an_achronism <87213873+an-achronism@users.noreply.github.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 @@ -22,24 +23,24 @@ enum keyboard_layers { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Layer 0: Default Layer * ,-------------------------------------------------------------------------------------------------. - * |Esc| | F1| F2| F3| F4| | F5| F6| F7| F8| | F9|F10|F11|F12| |PSc|ScL| Ps| | + * |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PSc|ScL|Pse| | * | | - * | `| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| BSp| |Ins|Hom|PgU| |Num| /| *| -| + * |` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |- |= |¥ |BSp| |Ins|Hom|PgU| |Num|/ |* |- | * |-----------------------------------------------------------| |-----------| |---------------| - * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \| |Del|End|PgD| | 7| 8| 9| | - * |-----------------------------------------------------------| |-----------| | - * |CapsLk| A| S| D| F| G| H| J| K| L| ;| '| #|Ent | | 4| 5| 6| +| + * |Tab |Q |W |E |R |T |Y |U |I |O |P |[ |] |\ | |Del|End|PgD| |7 |8 |9 |+ | * |-----------------------------------------------------------| |---------------| - * |Shift| \| Z| X| C| V| B| N| M| ,| .| /|Shift | | Up| | 1| 2| 3| | - * |-----------------------------------------------------------| |---| |-----------| | - * |Ctrl | |Alt | Space |Alt Gr| |Ctrl | | Lt| Dn| Rt| | 0| ,|Ent| + * |CapsLk|A |S |D |F |G |H |J |K |L |; |' |# |Ent | |4 |5 |6 |= | + * |-----------------------------------------------------------| |---------------| + * |Shift|\ |Z |X |C |V |B |N |M |, |. |/ |\ |Shift| |Up | |1 |2 |3 |Ent| + * |-----------------------------------------------------------| |---| |---------------| + * |Ctrl | |Alt | Space |Alt Gr| |Ctrl | |Lt |Dn |Rt | |0 |, |. |GUI| * `-------------------------------------------------------------------------------------------------' */ [_BL] = LAYOUT_all( - 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, - 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, - 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, - KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, + 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PEQL, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_INT6, KC_PDOT, KC_LGUI), }; diff --git a/keyboards/yugo_m/model_m_101/keymaps/default/readme.md b/keyboards/yugo_m/model_m_101/keymaps/default/readme.md index ba8b91239e..3d983cc1e7 100644 --- a/keyboards/yugo_m/model_m_101/keymaps/default/readme.md +++ b/keyboards/yugo_m/model_m_101/keymaps/default/readme.md @@ -1 +1 @@ -# The default keymap for 101/102 key keyboards. +# The default keymap for IBM/Lexmark/Unicomp Enhanced Keyboards (a.k.a. "Keyboard M", "Model M") with arrays comprising between 101 and 108 keys (unused keys can simply be ignored as they will be physically blocked by keycap stabiliser posts). As of February 2022, ANSI, ISO, and JIS key positions are all supported and mapped to the appropriate default functions. diff --git a/keyboards/yugo_m/model_m_101/keymaps/via/keymap.c b/keyboards/yugo_m/model_m_101/keymaps/via/keymap.c new file mode 100644 index 0000000000..ee3de82e3b --- /dev/null +++ b/keyboards/yugo_m/model_m_101/keymaps/via/keymap.c @@ -0,0 +1,69 @@ +/* Copyright 2022 an_achronism <87213873+an-achronism@users.noreply.github.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 . + */ +#include QMK_KEYBOARD_H + +enum keyboard_layers { + _L0, // Base Layer + _L1, + _L2, + _L3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,-------------------------------------------------------------------------------------------------. + * |Esc| |F1 |F2 |F3 |F4 | |F5 |F6 |F7 |F8 | |F9 |F10|F11|F12| |PSc|ScL|Pse| | + * | | + * |` |1 |2 |3 |4 |5 |6 |7 |8 |9 |0 |- |= |¥ |BSp| |Ins|Hom|PgU| |Num|/ |* |- | + * |-----------------------------------------------------------| |-----------| |---------------| + * |Tab |Q |W |E |R |T |Y |U |I |O |P |[ |] |\ | |Del|End|PgD| |7 |8 |9 |+ | + * |-----------------------------------------------------------| |---------------| + * |CapsLk|A |S |D |F |G |H |J |K |L |; |' |# |Ent | |4 |5 |6 |= | + * |-----------------------------------------------------------| |---------------| + * |Shift|\ |Z |X |C |V |B |N |M |, |. |/ |\ |Shift| |Up | |1 |2 |3 |Ent| + * |-----------------------------------------------------------| |---| |---------------| + * |Ctrl | |Alt | Space |Alt Gr| |Ctrl | |Lt |Dn |Rt | |0 |, |. |GUI| + * `-------------------------------------------------------------------------------------------------' + */ + [_L0] = LAYOUT_all( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INT3, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, + 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PEQL, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_INT1, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_INT6, KC_PDOT, KC_LGUI), + [_L1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), + [_L2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), + [_L3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), +}; diff --git a/keyboards/yugo_m/model_m_101/keymaps/via/rules.mk b/keyboards/yugo_m/model_m_101/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/yugo_m/model_m_101/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/yugo_m/model_m_101/model_m_101.h b/keyboards/yugo_m/model_m_101/model_m_101.h index 7ee44f367b..4b5961ee54 100644 --- a/keyboards/yugo_m/model_m_101/model_m_101.h +++ b/keyboards/yugo_m/model_m_101/model_m_101.h @@ -1,4 +1,5 @@ /* Copyright 2020 Nidzo Tomic + * Copyright 2022 an_achronism <87213873+an-achronism@users.noreply.github.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 @@ -24,22 +25,22 @@ * (where COLUMNS and ROWS crosses). */ #define LAYOUT_all( \ - K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, K5P, \ + K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5O, K5P, \ \ - K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, K4N, K4O, K4P, K4Q, K4R, K4S, K4T, K4U, \ - K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3N, K3O, K3P, K3Q, K3R, K3S, K3T, K3U, \ - K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2M, K2N, K2O, K2P, K2Q, \ - K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1L, K1M, K1N, K1O, K1P, K1Q, K1R, \ - K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J \ + K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, MK1, K4N, K4O, K4P, K4Q, K4R, K4S, K4T, K4U, \ + K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3N, K3O, K3P, K3Q, K3R, K3S, K3T, K3U, \ + K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2M, K2N, K2O, K2P, K2Q, MK2, \ + K1A, K1B, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1L, MK3, K1M, K1N, K1O, K1P, K1Q, K1R, \ + K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, MK4, K0I, K0J, MK5 \ ) \ { \ -/* 00 */ { KC_NO, KC_NO, K5A, K1B, K5E, K2F, K5F, K2G, K5G, KC_NO, K2L, KC_NO, K0I, K0J, K1N, K0B }, \ -/* 01 */ { KC_NO, K1A, K3A, K2A, K5D, K3F, K4N, K3G, K3M, K5H, K3L, K2O, K2P, K2Q, KC_NO, KC_NO }, \ +/* 00 */ { KC_NO, KC_NO, K5A, K1B, K5E, K2F, K5F, K2G, K5G, KC_NO, K2L, MK4, K0I, K0J, K1N, K0B }, \ +/* 01 */ { KC_NO, K1A, K3A, K2A, K5D, K3F, K4N, K3G, K3M, K5H, K3L, K2O, K2P, K2Q, MK2, KC_NO }, \ /* 02 */ { K0A, KC_NO, K4A, K5B, K5C, K4F, K5J, K4G, K4M, K5I, K4L, K3O, K4O, K4Q, K4P, KC_NO }, \ /* 03 */ { KC_NO, KC_NO, K4B, K4C, K4D, K4E, K5K, K4H, K4I, K4J, K4K, K5L, K5M, K3Q, K3P, K5N }, \ -/* 04 */ { KC_NO, KC_NO, K3B, K3C, K3D, K3E, KC_NO, K3H, K3I, K3J, K3K, K3R, K3S, K3T, K3U, K5O }, \ -/* 05 */ { KC_NO, KC_NO, K2B, K2C, K2D, K2E, K3N, K2H, K2I, K2J, K2K, K1O, K1P, K1Q, K1R, KC_NO }, \ +/* 04 */ { KC_NO, KC_NO, K3B, K3C, K3D, K3E, MK1, K3H, K3I, K3J, K3K, K3R, K3S, K3T, K3U, K5O }, \ +/* 05 */ { KC_NO, KC_NO, K2B, K2C, K2D, K2E, K3N, K2H, K2I, K2J, K2K, K1O, K1P, K1Q, K1R, MK5 }, \ /* 06 */ { K0E, K1M, K1C, K1D, K1E, K1F, K2N, K1I, K1J, K1K, K2M, K4R, K4S, K4T, K5P, KC_NO }, \ -/* 07 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K1G, K0C, K1H, KC_NO, KC_NO, K1L, K0G, K0H, K4U, K0F, K0D }, \ +/* 07 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K1G, K0C, K1H, MK3, KC_NO, K1L, K0G, K0H, K4U, K0F, K0D }, \ } /* 0 1 2 3 4 5 6 7 8 9 A B C D E F */ diff --git a/keyboards/yugo_m/model_m_101/readme.md b/keyboards/yugo_m/model_m_101/readme.md index 598f0fa79d..7c14dea804 100644 --- a/keyboards/yugo_m/model_m_101/readme.md +++ b/keyboards/yugo_m/model_m_101/readme.md @@ -15,3 +15,11 @@ Make example for this keyboard (after setting up your build environment): make yugo_m/model_m_101:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + + + +Note regarding 2022 matrix update: + +The original author's firmware did not make several lesser-used membrane/matrix positions available to the controller. These are useful for JIS users and/or if you simply want to create a more unique layout. I've added all of the unused membrane positions to the firmware, except for an extremely seldom used one that sits in the left side of the space bar on some later membranes (I would have added it if I knew its matrix position, but I haven't mapped that out yet). The default mappings for these additional keys follow JIS conventions, except for the extra key on the bottom right corner of the numpad (lower half of vertical 2u Enter), which I've mapped to the LGUI key a.k.a. left Windows/Command key for now. Remap as you wish! + +- an_achronism, February 2022 \ No newline at end of file diff --git a/keyboards/yugo_m/readme.md b/keyboards/yugo_m/readme.md index 557c4262d5..40c7b64073 100644 --- a/keyboards/yugo_m/readme.md +++ b/keyboards/yugo_m/readme.md @@ -9,3 +9,11 @@ Currently available only for 101/102 key keyboards. * Rev 1.1b For more info visit the project repository: [Yugo-M-controller-project](https://github.com/tomic1785/Yugo-M-controller-project) + + + +Note regarding 2022 matrix update: + +The original author's firmware did not make several lesser-used membrane/matrix positions available to the controller. These are useful for JIS users and/or if you simply want to create a more unique layout. I've added all of the unused membrane positions to the firmware, except for an extremely seldom used one that sits in the left side of the space bar on some later membranes (I would have added it if I knew its matrix position, but I haven't mapped that out yet). The default mappings for these additional keys follow JIS conventions, except for the extra key on the bottom right corner of the numpad (lower half of vertical 2u Enter), which I've mapped to the LGUI key a.k.a. left Windows/Command key for now. Remap as you wish! + +- an_achronism, February 2022 \ No newline at end of file From fded67f1a97499887857b1d2d2e226e4069ffdf5 Mon Sep 17 00:00:00 2001 From: AnthonyNguyen168 <89651736+AnthonyNguyen168@users.noreply.github.com> Date: Wed, 16 Mar 2022 10:13:14 +0700 Subject: [PATCH 134/699] [MB-65S] Change layout to follow change request from OEM (#16663) --- .../mb65s/keymaps/default/keymap.c | 24 +++++++-------- .../mechbrewery/mb65s/keymaps/iso/keymap.c | 22 +++++++------- .../mb65s/keymaps/split_bs/keymap.c | 30 +++++++++---------- 3 files changed, 38 insertions(+), 38 deletions(-) diff --git a/keyboards/mechbrewery/mb65s/keymaps/default/keymap.c b/keyboards/mechbrewery/mb65s/keymaps/default/keymap.c index 512c04a296..5625e07568 100644 --- a/keyboards/mechbrewery/mb65s/keymaps/default/keymap.c +++ b/keyboards/mechbrewery/mb65s/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap (Base Layer) Default Layer * ,---------------------------------------------------------------. - * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |Del| + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =|Backsp |Hom| * |---------------------------------------------------------------| * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]| \ |PUp| * |---------------------------------------------------------------| @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ [0] = LAYOUT_65_ansi_blocker( - 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_BSPC, KC_DEL, + 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_BSPC, KC_HOME, 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, KC_PGUP, 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_PGDN, 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, KC_END, @@ -41,23 +41,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap Fn Layer * ,---------------------------------------------------------------. - * |~ `|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Delete |Ins| + * |~ `|F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Delete | | * |---------------------------------------------------------------| - * | | |Up | | | | | |PSc|SLk|Pau|Up | | | | + * |Caps | |Up | | | | | |Ins| |PSc|SLk|Pau| | | * |---------------------------------------------------------------| - * | |Lef|Dow|Rig| | | | |Hom|PUp|Lef|Rig| Reset | | + * | |Lef|Dow|Rig| | | | | | |Hom|PUp| | | * |---------------------------------------------------------------| - * | |BL-|BLT|BL+|BLS|BLM| | |End|PDn|Dow| |PUp| | + * | | | | | | |Vo-|Vo+|Mut|End|PDn| | | | * |---------------------------------------------------------------| - * | | | | | | | |Hom|PDn|End| + * | | | | | | | | | | | * `---------------------------------------------------------------' */ [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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_INS, - _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, RESET, _______, - _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, BL_BRTG, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, - _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + KC_GRV, 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_CAPS, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, _______, + _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/mechbrewery/mb65s/keymaps/iso/keymap.c b/keyboards/mechbrewery/mb65s/keymaps/iso/keymap.c index f6101815ac..7899762838 100644 --- a/keyboards/mechbrewery/mb65s/keymaps/iso/keymap.c +++ b/keyboards/mechbrewery/mb65s/keymaps/iso/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base layer * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ - * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│Del│ + * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│Hom│ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ │PUp│ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ Ent├───┤ @@ -42,23 +42,23 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Function layer * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ - * │ § │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│Delete │Prt│ + * │ § │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│Delete │ │ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ - * │ │Prv│Pau│Nxt│ │ │ │ │ │ │ │ │ │Reset│Ins│ + * │Caps │ │Up │ │ │ │ │ │Ins│ │PSc│SLk│Pau│ │ │ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ ├───┤ - * │ │Vl-│V0 │Vl+│ │ │ │ │ │ │ │ │ │ │Hom│ + * │ │Lef│Dow│Rig│ │ │ │ │ │ │Hom│PUp│ │ │ │ * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ - * │ │BL-│BLT│BL+│BLS│BLM│ │ │ │ │ │LClick│MUp│End│ + * │ │ │ │ │ │ │Vo-│Vo+│Mut│End│PDn│ │ │ │ * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ - * │ │ │ │ │ │ │ │MLt│MDw│MRt│ + * │ │ │ │ │ │ │ │ │ │ │ * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ */ [1] = LAYOUT_65_ansi_blocker_isoenter( - KC_GRV, 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_PSCR, - _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_HOME, - _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, BL_BRTG, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_END, - _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R + KC_GRV, 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_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, _______, _______, + _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/mechbrewery/mb65s/keymaps/split_bs/keymap.c b/keyboards/mechbrewery/mb65s/keymaps/split_bs/keymap.c index 0cbb5040ea..db56fae442 100644 --- a/keyboards/mechbrewery/mb65s/keymaps/split_bs/keymap.c +++ b/keyboards/mechbrewery/mb65s/keymaps/split_bs/keymap.c @@ -20,44 +20,44 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap (Base Layer) Default Layer * ,---------------------------------------------------------------. - * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| - | = |Bsp|Del|Hom| + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| - | = |Bsp|Bsp|Hom| * |---------------------------------------------------------------| * |Tab | Q| W| E| R| T| Y| U| I| O| P| [ | ] | \ |PUp| * |---------------------------------------------------------------| * |Caps | A| S| D| F| G| H| J| K| L| ; | ' |Return |PDn| * |---------------------------------------------------------------| - * |Shift | Z| X| C| V| B| N| M| , | . | / |Shift | Up|Hom| + * |Shift | Z| X| C| V| B| N| M| , | . | / |Shift | Up|End| * |---------------------------------------------------------------| - * |Ctrl|LGUI|Alt | Space |GUI |Fn | |Lef|Dow|Rig| + * |Ctrl|LGUI|Alt | Space |Alt |Fn | |Lef|Dow|Rig| * `---------------------------------------------------------------' */ [0] = LAYOUT_all( - 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_BSPC, KC_DEL, KC_HOME, + 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_BSPC, KC_BSPC, KC_HOME, 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, KC_PGUP, 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_PGDN, 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, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI MO(1), KC_LEFT, KC_DOWN, KC_RGHT + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), /* Keymap Fn Layer * ,---------------------------------------------------------------. - * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| - | = | |Del|Ins| + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| - | = |Del|Del| | * |---------------------------------------------------------------| - * | | |Up | | | | | |PSc|SLk|Pau|Up | | | | + * |Caps | |Up | | | | | |Ins| |PSc|SLk|Pau| | | * |---------------------------------------------------------------| - * | |Lef|Dow|Rig| | | | |Hom|PUp|Lef|Rig| Reset |Vl+| + * | |Lef|Dow|Rig| | | | | | |Hom|PUp| | | * |---------------------------------------------------------------| - * | |BL-|BLT|BL+|BLS|BLM| | |End|PDn|Dow| | |Vl-| + * | | | | | | |Vo-|Vo+|Mut|End|PDn| | | | * |---------------------------------------------------------------| - * | | | | | | | |Prv|Ply|Nxt| + * | | | | | | | | | | | * `---------------------------------------------------------------' */ [1] = LAYOUT_all( - KC_GRV, 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_INS, - _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, RESET, KC_VOLU, - _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, BL_BRTG, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, KC_VOLD, - _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT + KC_GRV, 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_DEL, _______, + _______, _______, KC_UP, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, _______, _______, + _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; From a867cfc26d811367ad345f31657547e9d603d869 Mon Sep 17 00:00:00 2001 From: Yakbats Date: Tue, 15 Mar 2022 20:14:31 -0700 Subject: [PATCH 135/699] Update the AL1 Vender ID (#16660) * Add via to AL1 * Updated number of rows and columns, and applied suggestions from code review * Update Vender ID Change the Vender ID for Triangle Lab to comply with the via PR checklist. --- keyboards/al1/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/al1/config.h b/keyboards/al1/config.h index 078e9cb41e..ea6474dc18 100644 --- a/keyboards/al1/config.h +++ b/keyboards/al1/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x544C #define PRODUCT_ID 0x6050 #define DEVICE_VER 0x0104 #define MANUFACTURER Alsoran From 8c5779f7689d8e0f84f98d29e7e63f1058f30f0e Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 16 Mar 2022 14:57:47 +1100 Subject: [PATCH 136/699] Fix m3n3van and minim keyboard names in keymap JSON (#16665) --- keyboards/matthewdias/m3n3van/keymaps/default/keymap.json | 2 +- keyboards/matthewdias/minim/keymaps/default/keymap.json | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/matthewdias/m3n3van/keymaps/default/keymap.json b/keyboards/matthewdias/m3n3van/keymaps/default/keymap.json index d59debdaf1..f2e65452ca 100644 --- a/keyboards/matthewdias/m3n3van/keymaps/default/keymap.json +++ b/keyboards/matthewdias/m3n3van/keymaps/default/keymap.json @@ -1,5 +1,5 @@ { - "keyboard": "m3n3van", + "keyboard": "matthewdias/m3n3van", "keymap": "default", "layout": "LAYOUT", "layers": [ diff --git a/keyboards/matthewdias/minim/keymaps/default/keymap.json b/keyboards/matthewdias/minim/keymaps/default/keymap.json index bc7407e93a..3bb5fe1992 100644 --- a/keyboards/matthewdias/minim/keymaps/default/keymap.json +++ b/keyboards/matthewdias/minim/keymaps/default/keymap.json @@ -1,5 +1,5 @@ { - "keyboard": "minim", + "keyboard": "matthewdias/minim", "keymap": "default", "layout": "LAYOUT", "layers": [ From d5d2a01db2bc09735806fd62ef31997428885ddf Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 16 Mar 2022 15:08:52 +1100 Subject: [PATCH 137/699] gboards/butterstick: move steno rules config to keymap level (#16666) --- keyboards/gboards/butterstick/keymaps/default/rules.mk | 4 ++++ keyboards/gboards/butterstick/rules.mk | 4 ---- 2 files changed, 4 insertions(+), 4 deletions(-) create mode 100644 keyboards/gboards/butterstick/keymaps/default/rules.mk diff --git a/keyboards/gboards/butterstick/keymaps/default/rules.mk b/keyboards/gboards/butterstick/keymaps/default/rules.mk new file mode 100644 index 0000000000..6a33461108 --- /dev/null +++ b/keyboards/gboards/butterstick/keymaps/default/rules.mk @@ -0,0 +1,4 @@ +STENO_ENABLE = yes + +OPT_DEFS += -DONLYQWERTY -DDEBUG_MATRIX +SRC += sten.c diff --git a/keyboards/gboards/butterstick/rules.mk b/keyboards/gboards/butterstick/rules.mk index 4229aa7eec..e05ccd047c 100644 --- a/keyboards/gboards/butterstick/rules.mk +++ b/keyboards/gboards/butterstick/rules.mk @@ -12,8 +12,4 @@ EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = yes # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover -STENO_ENABLE = yes # Needed for chording - -OPT_DEFS += -DONLYQWERTY -DDEBUG_MATRIX -SRC += sten.c LTO_ENABLE = yes From 193dd01f4ec06c3153b23a5cd809fbd97f43012d Mon Sep 17 00:00:00 2001 From: Jay Greco Date: Wed, 16 Mar 2022 08:34:16 -0700 Subject: [PATCH 138/699] [Keyboard] Add nullbits TIDBIT (#15182) --- keyboards/nullbitsco/tidbit/config.h | 62 ++++ keyboards/nullbitsco/tidbit/info.json | 14 + .../tidbit/keymaps/default/keymap.c | 40 +++ .../nullbitsco/tidbit/keymaps/oled/keymap.c | 58 ++++ .../nullbitsco/tidbit/keymaps/oled/rules.mk | 3 + .../tidbit/keymaps/snailmap_lite/keymap.c | 283 ++++++++++++++++++ .../tidbit/keymaps/snailmap_lite/rules.mk | 6 + .../nullbitsco/tidbit/keymaps/via/keymap.c | 59 ++++ .../nullbitsco/tidbit/keymaps/via/rules.mk | 1 + keyboards/nullbitsco/tidbit/readme.md | 26 ++ keyboards/nullbitsco/tidbit/rules.mk | 26 ++ keyboards/nullbitsco/tidbit/tidbit.c | 157 ++++++++++ keyboards/nullbitsco/tidbit/tidbit.h | 37 +++ 13 files changed, 772 insertions(+) create mode 100644 keyboards/nullbitsco/tidbit/config.h create mode 100644 keyboards/nullbitsco/tidbit/info.json create mode 100644 keyboards/nullbitsco/tidbit/keymaps/default/keymap.c create mode 100644 keyboards/nullbitsco/tidbit/keymaps/oled/keymap.c create mode 100644 keyboards/nullbitsco/tidbit/keymaps/oled/rules.mk create mode 100644 keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/keymap.c create mode 100644 keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/rules.mk create mode 100644 keyboards/nullbitsco/tidbit/keymaps/via/keymap.c create mode 100644 keyboards/nullbitsco/tidbit/keymaps/via/rules.mk create mode 100644 keyboards/nullbitsco/tidbit/readme.md create mode 100644 keyboards/nullbitsco/tidbit/rules.mk create mode 100644 keyboards/nullbitsco/tidbit/tidbit.c create mode 100644 keyboards/nullbitsco/tidbit/tidbit.h diff --git a/keyboards/nullbitsco/tidbit/config.h b/keyboards/nullbitsco/tidbit/config.h new file mode 100644 index 0000000000..103dabdb96 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/config.h @@ -0,0 +1,62 @@ +/* Copyright 2021 Jay Greco + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* Used to set remote for remote KB if VUSB detect doesn't work. */ +// #define KEYBOARD_REMOTE + +// Workaround for freezing after MacOS sleep +#define USB_SUSPEND_WAKEUP_DELAY 200 + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6E61 +#define PRODUCT_ID 0x6064 +#define DEVICE_VER 0x0001 +#define MANUFACTURER nullbits +#define PRODUCT TIDBIT + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 6 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B1, E6, D7, C6, D4 } +#define MATRIX_COL_PINS { NO_PIN, NO_PIN, F4, F5, F6, F7 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* Optional SMT LED pins */ +#define RGB_DI_PIN B6 +#define RGBLED_NUM 8 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + +/* Optional encoder pins */ +// Encoders are defined in order. 1: B2 & B3, 2: B4 & B5, 3: D0 & D1, 4: D2 & D3 +#define ENCODERS_PAD_A { B2, B4, D0, D3 } +#define ENCODERS_PAD_B { B3, B5, D1, D2 } diff --git a/keyboards/nullbitsco/tidbit/info.json b/keyboards/nullbitsco/tidbit/info.json new file mode 100644 index 0000000000..5d260cc453 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/info.json @@ -0,0 +1,14 @@ +{ + "keyboard_name": "TIDBIT 19", + "url": "https://nullbits.co/tidbit/", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"/", "x":3.25, "y":0}, {"label":"*", "x":4.25, "y":0}, {"label":"-", "x":5.25, "y":0}, + {"label":"Enc 1", "x":0, "y":1}, {"label":"Enc 1", "x":1, "y":1}, {"label":"7", "x":2.25, "y":1}, {"label":"8", "x":3.25, "y":1}, {"label":"9", "x":4.25, "y":1}, {"label":"+", "x":5.25, "y":1}, + {"label":"Enc 2", "x":0, "y":2}, {"label":"Enc 2", "x":1, "y":2}, {"label":"4", "x":2.25, "y":2}, {"label":"5", "x":3.25, "y":2}, {"label":"6", "x":4.25, "y":2}, {"label":"+", "x":5.25, "y":2}, + {"label":"Enc 3", "x":0, "y":3}, {"label":"Enc 3", "x":1, "y":3}, {"label":"1", "x":2.25, "y":3}, {"label":"2", "x":3.25, "y":3}, {"label":"3", "x":4.25, "y":3}, {"label":"Enter", "x":5.25, "y":3}, + {"label":"Enc 4", "x":0, "y":4}, {"label":"Enc 4", "x":1, "y":4}, {"label":"0", "x":2.25, "y":4}, {"label":"0", "x":3.25, "y":4}, {"label":".", "x":4.25, "y":4}, {"label":"Enter", "x":5.25, "y":4}] + } + } +} diff --git a/keyboards/nullbitsco/tidbit/keymaps/default/keymap.c b/keyboards/nullbitsco/tidbit/keymaps/default/keymap.c new file mode 100644 index 0000000000..995aff8d69 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/default/keymap.c @@ -0,0 +1,40 @@ +/* Copyright 2021 Jay Greco + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _BASE = 0, + _FUNC +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_PSLS, KC_PAST, KC_PMNS, + KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_MPRV, KC_MNXT, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LEFT, KC_RGHT, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_TRNS, KC_TRNS, KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + + [_FUNC] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), +}; diff --git a/keyboards/nullbitsco/tidbit/keymaps/oled/keymap.c b/keyboards/nullbitsco/tidbit/keymaps/oled/keymap.c new file mode 100644 index 0000000000..3fbfb638ec --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/oled/keymap.c @@ -0,0 +1,58 @@ +/* Copyright 2021 Jay Greco + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _BASE = 0, + _VIA1, + _VIA2, + _VIA3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_PSLS, KC_PAST, KC_PMNS, + KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_TRNS, KC_TRNS, KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + + [_VIA1] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_VIA2] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_VIA3] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), +}; diff --git a/keyboards/nullbitsco/tidbit/keymaps/oled/rules.mk b/keyboards/nullbitsco/tidbit/keymaps/oled/rules.mk new file mode 100644 index 0000000000..ef531564fc --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/oled/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 diff --git a/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/keymap.c b/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/keymap.c new file mode 100644 index 0000000000..cfe97e30a3 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/keymap.c @@ -0,0 +1,283 @@ +/* Copyright 2021 dogspace + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _LAY0, + _LAY1, + _LAY2, + _LAY3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_LAY0] = LAYOUT( + KC_PSLS, KC_PAST, KC_PMNS, + KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_TRNS, KC_TRNS, KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + + [_LAY1] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_LAY2] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_LAY3] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), +}; + +#ifdef OLED_ENABLE +/*=========================================== OLED CONFIGURATION ===========================================*/ +#define OLED_ROTATE true // OLED rotation (flip 180* from default orientation) +#define GRAPH_DIRECTION true // Graph movement (true = right to left, false = left to right) +#define GRAPH_TOP_WPM 100.0 // Minimum WPM required to reach the top of the graph +#define GRAPH_REFRESH 1000 // In milliseconds, determines the graph-line frequency +#define ICON_MED_WPM 10 // WPM required to display the medium snail +#define ICON_FAST_WPM 25 // WPM required to display the fast snail + +// Layer names: Should be exactly 5 characters in length if vertical display, or 6 characters if horizontal +#define MA_LAYER_NAME "LAY 0" // Layer _MA name +#define L1_LAYER_NAME "LAY 1" // Layer _L1 name +#define L2_LAYER_NAME "LAY 2" // Layer _L2 name +#define L3_LAYER_NAME "LAY 3" // Layer _L3 name + +#define CAPLCK_STR "CAPLK" // Caps Lock string +#define NUMLCK_STR "NUMLK" // Num Lock string +#define SCRLK_STR "SCRLK" // Scroll Lock string +#define EMPTY_STR " " // Empty string + +/*================================================================================================================*/ + +typedef struct oled_params { + bool first_loop : 1; + uint8_t wpm_icon : 7; + uint16_t timer; + uint8_t wpm_limit; + uint8_t max_wpm; + uint8_t graph_lines[32]; +} oled_params; + +oled_params oled_data; + +void oled_init_data(void) { + // Initialize oled params + oled_data.first_loop = true; + oled_data.wpm_icon = 5; + oled_data.timer = 0; + oled_data.wpm_limit = 20; + oled_data.max_wpm = 0; + + for (int i=0; i<32; i++) { + oled_data.graph_lines[i] = 0; + } +} + +// Set OLED rotation +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + oled_init_data(); + return OLED_ROTATE ? OLED_ROTATION_270 : OLED_ROTATION_90; +} + +// Draw static background image to OLED (keyboard with no bottom row) +static void render_background(void) { + static const char PROGMEM nullbits_n_oled[] = { + 0x00, 0xe0, 0xf0, 0xf0, 0xf8, 0xf8, 0xf0, 0xf0, 0xe0, 0x80, 0x20, 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, + 0xf0, 0xf0, 0xf0, 0xf0, 0xf0, 0xe0, 0xe0, 0xe0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, + 0x1f, 0x1f, 0x1f, 0x1f, 0x3f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xfc, 0xf0, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xfe, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, + 0x00, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x0f, 0x07, 0x03, 0x00, + }; + oled_write_raw_P(nullbits_n_oled, sizeof(nullbits_n_oled)); +} + +// Toggles pixel on/off, converts horizontal coordinates to vertical equivalent if necessary +static void write_pixel(uint8_t x, uint8_t y, bool onoff) { + oled_write_pixel(y, 127 - x, onoff); +} + +// Write active layer name +static void render_layer_state(void) { + oled_set_cursor(0, 15); + switch (get_highest_layer(layer_state)) { + case _LAY0: + oled_write_P(PSTR(MA_LAYER_NAME), false); + break; + case _LAY1: + oled_write_P(PSTR(L1_LAYER_NAME), false); + break; + case _LAY2: + oled_write_P(PSTR(L2_LAYER_NAME), false); + break; + case _LAY3: + oled_write_P(PSTR(L3_LAYER_NAME), false); + break; + default: + oled_write("ERROR", false); + break; + } +} + +// Update WPM counters +static void render_wpm_counters(uint8_t current_wpm) { + uint8_t cursorposition_cur = 13; + uint8_t cursorposition_max = 14; + + oled_set_cursor(0, cursorposition_cur); + oled_write(get_u8_str(current_wpm, '0'), false); + + if (current_wpm > oled_data.max_wpm) { + oled_data.max_wpm = current_wpm; + oled_data.wpm_limit = oled_data.max_wpm + 20; + oled_set_cursor(0, cursorposition_max); + oled_write(get_u8_str(current_wpm, '0'), false); + } +} + +static void render_led_status(void) { + // Host Keyboard LED Status + uint8_t led_usb_state = host_keyboard_leds(); + oled_set_cursor(0, 8); + oled_write_P(IS_LED_ON(led_usb_state, USB_LED_CAPS_LOCK) ? PSTR(CAPLCK_STR) : PSTR(EMPTY_STR), false); + oled_set_cursor(0, 9); + oled_write_P(IS_LED_ON(led_usb_state, USB_LED_NUM_LOCK) ? PSTR(NUMLCK_STR) : PSTR(EMPTY_STR), false); + oled_set_cursor(0, 10); + oled_write_P(IS_LED_ON(led_usb_state, USB_LED_SCROLL_LOCK) ? PSTR(SCRLK_STR) : PSTR(EMPTY_STR), false); +} + +// Update WPM snail icon +static void render_wpm_icon(uint8_t current_wpm) { + // wpm_icon is used to prevent unnecessary redraw + if ((current_wpm < ICON_MED_WPM) && (oled_data.wpm_icon != 0)) { + oled_data.wpm_icon = 0; + } else if ((current_wpm >= ICON_MED_WPM) && (current_wpm < ICON_FAST_WPM) && (oled_data.wpm_icon != 1)) { + oled_data.wpm_icon = 1; + } else if ((current_wpm >= ICON_FAST_WPM) && (oled_data.wpm_icon != 2)) { + oled_data.wpm_icon = 2; + } else { + return; + } + static const char PROGMEM snails[][2][24] = { + {{0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0xA0, 0x20, 0x40, 0x40, 0x80, 0x00, 0x00, 0x00, 0x80, 0x40, 0x20, 0x50, 0x88, 0x04, 0x00, 0x00}, + {0x40, 0x60, 0x50, 0x4E, 0x51, 0x64, 0x4A, 0x51, 0x54, 0x49, 0x41, 0x62, 0x54, 0x49, 0x46, 0x41, 0x40, 0x30, 0x09, 0x04, 0x02, 0x01, 0x00, 0x00}}, + {{0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x00, 0x00, 0x00, 0x04, 0x98, 0x60, 0x80, 0x00, 0x00, 0x00, 0x00}, + {0x60, 0x50, 0x54, 0x4A, 0x51, 0x64, 0x4A, 0x51, 0x55, 0x49, 0x41, 0x62, 0x54, 0x49, 0x46, 0x41, 0x21, 0x10, 0x0A, 0x08, 0x05, 0x02, 0x00, 0x00}}, + {{0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0x40, 0x40, 0x40, 0x40, 0x80, 0x80, 0x10, 0x10, 0x10, 0x20, 0x40, 0x40, 0xC0, 0x80, 0x80, 0x00, 0x00, 0x00}, + {0x60, 0x58, 0x54, 0x62, 0x49, 0x54, 0x52, 0x51, 0x55, 0x49, 0x62, 0x52, 0x4D, 0x45, 0x46, 0x22, 0x21, 0x11, 0x10, 0x0A, 0x08, 0x05, 0x02, 0x00}} + }; + oled_set_cursor(0, 11); + oled_write_raw_P(snails[oled_data.wpm_icon][0], sizeof(snails[oled_data.wpm_icon][0])); + oled_set_cursor(0, 12); + oled_write_raw_P(snails[oled_data.wpm_icon][1], sizeof(snails[oled_data.wpm_icon][1])); +} + +// Update WPM graph +static void render_wpm_graph(uint8_t current_wpm) { + uint8_t line_height = ((current_wpm / GRAPH_TOP_WPM) * 7); + if (line_height > 7) { + line_height = 7; + } + // Count graph line pixels, return if nothing to draw + uint8_t pixel_count = line_height; + for (int i = 0; i < 31; i++) { + pixel_count += oled_data.graph_lines[i]; + } + if (pixel_count == 0) { + return; + } + // Shift array elements left or right depending on GRAPH_DIRECTION pend new graph line + if (GRAPH_DIRECTION) { + for (int i = 0; i < 31; i++) { + oled_data.graph_lines[i] = oled_data.graph_lines[i + 1]; + } + oled_data.graph_lines[31] = line_height; + } else { + for (int i = 31; i > 0; i--) { + oled_data.graph_lines[i] = oled_data.graph_lines[i - 1]; + } + oled_data.graph_lines[0] = line_height; + } + // Draw all graph lines (left to right, bottom to top) + uint16_t draw_count, arrpos; + for (int x = 1; x <= 63; x += 2) { + arrpos = x / 2; + draw_count = oled_data.graph_lines[arrpos]; + for (int y = 31; y >= 25; y--) { + if (draw_count > 0) { + write_pixel(x, y, true); + draw_count--; + } else { + write_pixel(x, y, false); + } + } + } +} + +// Call OLED functions +bool oled_task_user(void) { + // Draw OLED keyboard, prevent redraw + if (oled_data.first_loop) { + render_background(); + oled_data.first_loop = false; + } + // Get current WPM, subtract 25% for accuracy and prevent large jumps caused by simultaneous keypresses + uint8_t current_wpm = get_current_wpm(); + // Write active layer name to display + render_layer_state(); + // Update WPM counters + render_wpm_counters(current_wpm); + // Update WPM snail icon + render_wpm_icon(current_wpm); + // Update LED status + render_led_status(); + // Update WPM graph every graph_refresh milliseconds + if (timer_elapsed(oled_data.timer) > GRAPH_REFRESH) { + render_wpm_graph(current_wpm); + oled_data.timer = timer_read(); + } + return false; +} +#endif + +bool wpm_keycode_user(uint16_t keycode) { + // Count all keycodes on the macropad + return true; +} + diff --git a/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/rules.mk b/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/rules.mk new file mode 100644 index 0000000000..1b72fd006a --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/snailmap_lite/rules.mk @@ -0,0 +1,6 @@ +OLED_ENABLE = yes +WPM_ENABLE = yes +VIA_ENABLE = yes +SPACE_CADET_ENABLE = no +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no diff --git a/keyboards/nullbitsco/tidbit/keymaps/via/keymap.c b/keyboards/nullbitsco/tidbit/keymaps/via/keymap.c new file mode 100644 index 0000000000..ad3e18075c --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/via/keymap.c @@ -0,0 +1,59 @@ +/* Copyright 2021 Jay Greco + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _BASE = 0, + _VIA1, + _VIA2, + _VIA3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_PSLS, KC_PAST, KC_PMNS, + KC_VOLD, KC_VOLU, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_TRNS, KC_TRNS, KC_P0, KC_P0, KC_PDOT, KC_PENT + ), + + [_VIA1] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_VIA2] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), + + [_VIA3] = LAYOUT( + ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___, + ___, ___, ___, ___, ___, ___ + ), +}; + diff --git a/keyboards/nullbitsco/tidbit/keymaps/via/rules.mk b/keyboards/nullbitsco/tidbit/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/nullbitsco/tidbit/readme.md b/keyboards/nullbitsco/tidbit/readme.md new file mode 100644 index 0000000000..f2d0d9934b --- /dev/null +++ b/keyboards/nullbitsco/tidbit/readme.md @@ -0,0 +1,26 @@ +# TIDBIT + +![TIDBIT](https://nullbits.co/static/img/tidbit1.jpg) + +A very moddable 19-key numpad kit built by nullbits. [More info at nullbits.co](https://nullbits.co/tidbit/) + +* Keyboard Maintainer: [Jay Greco](https://github.com/jaygreco) +* Hardware Supported: TIDBIT Rev1, Pro Micro comaptible MCUs. +* Hardware Availability: [nullbits.co](https://nullbits.co/) + +Note: If you are seeing issues with MacOS and keyboard hangs after sleep, make sure `NO_USB_STARTUP_CHECK = yes` is set in your rules.mk. + +Adds experimental "Remote Keyboard" functionality, which forwards keystrokes from an external macropad, keyboard, or numpad over UART/TRRS, removing the need for an additional USB connection. + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +Make example for this keyboard (after setting up your build environment): + + make nullbitsco/tidbit:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/nullbitsco/tidbit/rules.mk b/keyboards/nullbitsco/tidbit/rules.mk new file mode 100644 index 0000000000..13893a69e2 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/rules.mk @@ -0,0 +1,26 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes +LTO_ENABLE = yes + +# Project specific files +SRC += common/bitc_led.c \ + common/remote_kb.c +QUANTUM_LIB_SRC += i2c_master.c \ + uart.c diff --git a/keyboards/nullbitsco/tidbit/tidbit.c b/keyboards/nullbitsco/tidbit/tidbit.c new file mode 100644 index 0000000000..6e7ef460e5 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/tidbit.c @@ -0,0 +1,157 @@ +/* Copyright 2021 Jay Greco +* +* 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 . +*/ + +#include QMK_KEYBOARD_H + +typedef struct PACKED { + uint8_t r; + uint8_t c; +} encodermap_t; + +// Map encoders to their respective virtual matrix entry +// Allows for encoder control using VIA +const encodermap_t encoder_map[4][2] = { + {{1, 0}, {1, 1}}, // Encoder 1 matrix location + {{2, 0}, {2, 1}}, // Encoder 2 matrix location + {{3, 0}, {3, 1}}, // Encoder 3 matrix location + {{4, 0}, {4, 1}}, // Encoder 4 matrix location +}; + +bool numlock_set = false; + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_kb(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} + +static void render_logo(void) { + static const char PROGMEM tidbit_oled[] = { + 0x00, 0x0e, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x0e, 0x00, 0x00, 0x00, 0xfe, 0xff, 0xff, 0xff, + 0xfe, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f, + 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x3e, 0x3e, 0x7e, 0xfc, 0xfc, 0xf8, 0xf0, 0xe0, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xf8, 0xfe, 0xfe, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, + 0x1f, 0x1f, 0x3f, 0x7e, 0xfe, 0xfe, 0xfc, 0xf8, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xfe, 0xff, 0xff, 0xff, 0xfe, 0x00, 0x00, 0x00, 0x0e, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, + 0x1f, 0xff, 0xff, 0xff, 0xff, 0xff, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1f, 0x1e, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xff, 0xff, 0xff, 0xff, 0xfe, 0xc0, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0xe0, 0xf0, 0xf0, 0xf8, 0xff, 0xff, 0xbf, 0x1f, 0x0f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, + 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xe0, 0xff, 0xff, 0xff, 0xff, 0x7f, 0x03, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0x03, 0x03, 0x03, 0x03, 0x03, 0x03, + 0x03, 0x03, 0x03, 0x07, 0x07, 0xbf, 0xff, 0xff, 0xff, 0xfe, 0xf0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0xff, 0xff, 0xff, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0x7f, 0xff, 0xff, 0x7f, 0x3f, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xff, + 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xf8, 0xf8, 0xf8, + 0xf8, 0xf8, 0xf8, 0x7c, 0x7c, 0x7c, 0x7e, 0x3e, 0x3f, 0x3f, 0x1f, 0x0f, 0x07, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x1f, 0x7f, 0x7f, 0x7f, 0xff, 0xff, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, 0xf8, + 0xf8, 0x7c, 0x7c, 0x7c, 0x7e, 0x3f, 0x3f, 0x1f, 0x1f, 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x7f, 0xff, 0xff, 0x7f, 0x3f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x3f, 0x7f, 0xff, 0xff, 0x7f, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00 + }; + + oled_write_raw_P(tidbit_oled, sizeof(tidbit_oled)); +}; + +bool oled_task_kb(void) { + if (!oled_task_user()) return false; + render_logo(); + return true; +} + +#endif + +static void process_encoder_matrix(encodermap_t pos) { + action_exec((keyevent_t){ + .key = (keypos_t){.row = pos.r, .col = pos.c}, .pressed = true, .time = (timer_read() | 1) /* time should not be 0 */ + }); +#if TAP_CODE_DELAY > 0 + wait_ms(TAP_CODE_DELAY); +#endif + action_exec((keyevent_t){ + .key = (keypos_t){.row = pos.r, .col = pos.c}, .pressed = false, .time = (timer_read() | 1) /* time should not be 0 */ + }); +} + +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) return false; + process_encoder_matrix(encoder_map[index][clockwise ? 0 : 1]); + return false; +} + +// Use Bit-C LED to show NUM LOCK status +bool led_update_kb(led_t led_state) { + bool res = led_update_user(led_state); + if (res) { + set_bitc_LED(led_state.num_lock ? LED_DIM : LED_OFF); + } + return res; +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + process_record_remote_kb(keycode, record); + if (!process_record_user(keycode, record)) return false; + + // Get the current NLCK status & set if not set. + // Only do this once, in case user has a NLCK key + // and wants to disable it later on. + if (!numlock_set && record->event.pressed) { + led_t led_state = host_keyboard_led_state(); + if (!led_state.num_lock) { + register_code(KC_NLCK); + } + numlock_set = true; + } + + switch (keycode) { + case RESET: + if (record->event.pressed) { + set_bitc_LED(LED_DIM); + rgblight_disable_noeeprom(); + #ifdef OLED_ENABLE + oled_off(); + #endif + bootloader_jump(); // jump to bootloader + } + return false; + + default: + break; + } + + return true; +} + +void matrix_init_kb(void) { + set_bitc_LED(LED_OFF); + matrix_init_remote_kb(); + matrix_init_user(); +} + +void matrix_scan_kb(void) { + matrix_scan_remote_kb(); + matrix_scan_user(); +} diff --git a/keyboards/nullbitsco/tidbit/tidbit.h b/keyboards/nullbitsco/tidbit/tidbit.h new file mode 100644 index 0000000000..e4e80107e3 --- /dev/null +++ b/keyboards/nullbitsco/tidbit/tidbit.h @@ -0,0 +1,37 @@ +/* Copyright 2021 Jay Greco + * + * 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 . + */ +#pragma once + +#define ___ KC_NO + +#include "quantum.h" +#include "common/remote_kb.h" +#include "common/bitc_led.h" + +#define LAYOUT( \ + K01, K02, K03, \ + E1CCW, E1CW, K10, K11, K12, K13, \ + E2CCW, E2CW, K20, K21, K22, K23, \ + E3CCW, E3CW, K30, K31, K32, K33, \ + E4CCW, E4CW, K40, K41, K42, K43 \ +) \ +{ \ + { ___, ___, ___, K01, K02, K03 }, \ + { E1CCW, E1CW, K10, K11, K12, K13 }, \ + { E2CCW, E2CW, K20, K21, K22, K23 }, \ + { E3CCW, E3CW, K30, K31, K32, K33 }, \ + { E4CCW, E4CW, K40, K41, K42, K43 } \ +} From 417f08911507307906f1dfbdb45d9d3a81232576 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 16 Mar 2022 23:45:06 +0000 Subject: [PATCH 139/699] Print out generated files during build (#16672) --- builddefs/build_keyboard.mk | 20 +++++++++++++++----- builddefs/message.mk | 1 + 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index d5efcb4193..44acd964cc 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -159,10 +159,14 @@ ifneq ("$(wildcard $(KEYMAP_JSON))", "") # Add rules to generate the keymap files - indentation here is important $(KEYMAP_OUTPUT)/src/keymap.c: $(KEYMAP_JSON) - $(QMK_BIN) json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON)) + @$(BUILD_CMD) $(KEYMAP_OUTPUT)/src/config.h: $(KEYMAP_JSON) - $(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --keymap $(KEYMAP) --output $(KEYMAP_H) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --keymap $(KEYMAP) --output $(KEYMAP_H)) + @$(BUILD_CMD) generated-files: $(KEYMAP_OUTPUT)/src/config.h $(KEYMAP_OUTPUT)/src/keymap.c @@ -326,13 +330,19 @@ endif CONFIG_H += $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h $(KEYBOARD_OUTPUT)/src/info_config.h: $(INFO_JSON_FILES) - $(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/info_config.h + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/info_config.h) + @$(BUILD_CMD) $(KEYBOARD_OUTPUT)/src/default_keyboard.h: $(INFO_JSON_FILES) - $(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.h + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.h) + @$(BUILD_CMD) $(KEYBOARD_OUTPUT)/src/layouts.h: $(INFO_JSON_FILES) - $(QMK_BIN) generate-layouts --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/layouts.h + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-layouts --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/layouts.h) + @$(BUILD_CMD) generated-files: $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/default_keyboard.h $(KEYBOARD_OUTPUT)/src/layouts.h diff --git a/builddefs/message.mk b/builddefs/message.mk index d441f560be..07d0e07ce8 100644 --- a/builddefs/message.mk +++ b/builddefs/message.mk @@ -63,6 +63,7 @@ MSG_COMPILING_CXX = Compiling: MSG_ASSEMBLING = Assembling: MSG_CLEANING = Cleaning project: MSG_CREATING_LIBRARY = Creating library: +MSG_GENERATING = Generating: MSG_SUBMODULE_DIRTY = $(WARN_COLOR)WARNING:$(NO_COLOR) Some git submodules are out of date or modified.\n\ Please consider running $(BOLD)make git-submodule$(NO_COLOR).\n\n MSG_NO_CMP = $(ERROR_COLOR)Error:$(NO_COLOR)$(BOLD) cmp command not found, please install diffutils\n$(NO_COLOR) From 02655690f48ec64ba982499cd3272ee6076b73b3 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Thu, 17 Mar 2022 14:19:34 -0700 Subject: [PATCH 140/699] [Core] Add compile/make macro to core (#15959) * [Core] Add KC_MAKE keycode to core fix linting fix testing error work around test idiocyncracies fix more lint something something stupid tests add doc * updates based on feedback * Add bad names * Fixup docs * semantics but cleaner Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> * Hide oneshot checks behind preprocessors * Move no-compile option around * Fix formatting * make shift optional * Make opt in * fix formatting * update send string function name Co-authored-by: Joel Challis Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Joel Challis --- docs/config_options.md | 2 ++ docs/keycodes.md | 11 ++++++----- docs/quantum_keycodes.md | 11 ++++++----- quantum/quantum.c | 20 ++++++++++++++++++++ quantum/quantum_keycodes.h | 2 ++ 5 files changed, 36 insertions(+), 10 deletions(-) diff --git a/docs/config_options.md b/docs/config_options.md index 838c4d86fd..8227a0e074 100644 --- a/docs/config_options.md +++ b/docs/config_options.md @@ -131,6 +131,8 @@ If you define these options you will disable the associated feature, which can s If you define these options you will enable the associated feature, which may increase your code size. +* `#define ENABLE_COMPILE_KEYCODE` + * Enables the `QK_MAKE` keycode * `#define FORCE_NKRO` * NKRO by default requires to be turned on, this forces it on during keyboard startup regardless of EEPROM setting. NKRO can still be turned off but will be turned on again if the keyboard reboots. * `#define STRICT_LAYER_RELEASE` diff --git a/docs/keycodes.md b/docs/keycodes.md index 58ce43d309..942e0a6616 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -219,11 +219,12 @@ See also: [Basic Keycodes](keycodes_basic.md) See also: [Quantum Keycodes](quantum_keycodes.md#qmk-keycodes) -|Key |Aliases |Description | -|-----------------|---------|-------------------------------------------------------| -|`QK_BOOTLOADER` |`QK_BOOT`|Put the keyboard into bootloader mode for flashing | -|`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | -|`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory)| +|Key |Aliases |Description | +|-----------------|---------|---------------------------------------------------------------------------------| +|`QK_BOOTLOADER` |`QK_BOOT`|Put the keyboard into bootloader mode for flashing | +|`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | +|`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory) | +|`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held | ## Audio Keys :id=audio-keys diff --git a/docs/quantum_keycodes.md b/docs/quantum_keycodes.md index 8e29e05886..46a8b7de19 100644 --- a/docs/quantum_keycodes.md +++ b/docs/quantum_keycodes.md @@ -8,8 +8,9 @@ On this page we have documented keycodes between `0x00FF` and `0xFFFF` which are ## QMK Keycodes :id=qmk-keycodes -|Key |Aliases |Description | -|-----------------|---------|-------------------------------------------------------| -|`QK_BOOTLOADER` |`QK_BOOT`|Put the keyboard into bootloader mode for flashing | -|`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | -|`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory)| +|Key |Aliases |Description | +|-----------------|---------|---------------------------------------------------------------------------------| +|`QK_BOOTLOADER` |`QK_BOOT`|Put the keyboard into bootloader mode for flashing | +|`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | +|`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory) | +|`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held | diff --git a/quantum/quantum.c b/quantum/quantum.c index ef6e5ac1df..d4e91ddd37 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -357,6 +357,26 @@ bool process_record_quantum(keyrecord_t *record) { case ONESHOT_DISABLE: oneshot_disable(); break; +#endif +#ifdef ENABLE_COMPILE_KEYCODE + case QK_MAKE: // Compiles the firmware, and adds the flash command based on keyboard bootloader + { +# ifdef NO_ACTION_ONESHOT + const uint8_t temp_mod = mod_config(get_mods()); +# else + const uint8_t temp_mod = mod_config(get_mods() | get_oneshot_mods()); + clear_oneshot_mods(); +# endif + clear_mods(); + + SEND_STRING_DELAY("qmk", TAP_CODE_DELAY); + if (temp_mod & MOD_MASK_SHIFT) { // if shift is held, flash rather than compile + SEND_STRING_DELAY(" flash ", TAP_CODE_DELAY); + } else { + SEND_STRING_DELAY(" compile ", TAP_CODE_DELAY); + } + SEND_STRING_DELAY("-kb " QMK_KEYBOARD " -km " QMK_KEYMAP SS_TAP(X_ENTER), TAP_CODE_DELAY); + } #endif } } diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 2552c48165..dacfe5bdcd 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -595,6 +595,8 @@ enum quantum_keycodes { MAGIC_TOGGLE_CONTROL_CAPSLOCK, + QK_MAKE, + // Start of custom keycode range for keyboards and keymaps - always leave at the end SAFE_RANGE }; From e5823b56501598c39d3f57719cf32f344212ede6 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 18 Mar 2022 01:09:29 +0000 Subject: [PATCH 141/699] [CLI] Add common util for dumping generated content (#16674) --- lib/python/qmk/cli/generate/config_h.py | 18 ++----- lib/python/qmk/cli/generate/dfu_header.py | 18 ++----- lib/python/qmk/cli/generate/keyboard_h.py | 18 ++----- lib/python/qmk/cli/generate/layouts.py | 19 ++----- lib/python/qmk/cli/generate/rules_mk.py | 14 ++--- lib/python/qmk/cli/generate/version_h.py | 44 +++++++++++----- lib/python/qmk/commands.py | 54 ++++++------------- lib/python/qmk/constants.py | 63 +++++++++++++++++++++++ 8 files changed, 132 insertions(+), 116 deletions(-) diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index 24bbbdf517..fdc76b23d4 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py @@ -9,7 +9,9 @@ from qmk.info import info_json from qmk.json_schema import json_load, validate from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.keymap import locate_keymap +from qmk.commands import dump_lines from qmk.path import normpath +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE def direct_pins(direct_pins, postfix): @@ -181,7 +183,7 @@ def generate_config_h(cli): kb_info_json = dotty(info_json(cli.args.keyboard)) # Build the info_config.h file. - config_h_lines = ['/* This file was generated by `qmk generate-config-h`. Do not edit or copy.', ' */', '', '#pragma once'] + config_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] generate_config_items(kb_info_json, config_h_lines) @@ -194,16 +196,4 @@ def generate_config_h(cli): generate_split_config(kb_info_json, config_h_lines) # Show the results - config_h = '\n'.join(config_h_lines) - - if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(config_h) - - if not cli.args.quiet: - cli.log.info('Wrote info_config.h to %s.', cli.args.output) - - else: - print(config_h) + dump_lines(cli.args.output, config_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/cli/generate/dfu_header.py b/lib/python/qmk/cli/generate/dfu_header.py index 7fb585fc7d..e873117387 100644 --- a/lib/python/qmk/cli/generate/dfu_header.py +++ b/lib/python/qmk/cli/generate/dfu_header.py @@ -7,6 +7,8 @@ from qmk.decorators import automagic_keyboard from qmk.info import info_json from qmk.path import is_keyboard, normpath from qmk.keyboard import keyboard_completer +from qmk.commands import dump_lines +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE @cli.argument('-o', '--output', arg_only=True, type=normpath, help='File to write to') @@ -30,7 +32,7 @@ def generate_dfu_header(cli): # Build the Keyboard.h file. kb_info_json = dotty(info_json(cli.config.generate_dfu_header.keyboard)) - keyboard_h_lines = ['/* This file was generated by `qmk generate-dfu-header`. Do not edit or copy.', ' */', '', '#pragma once'] + keyboard_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] keyboard_h_lines.append(f'#define MANUFACTURER {kb_info_json["manufacturer"]}') keyboard_h_lines.append(f'#define PRODUCT {kb_info_json["keyboard_name"]} Bootloader') @@ -45,16 +47,4 @@ def generate_dfu_header(cli): keyboard_h_lines.append(f'#define QMK_SPEAKER {kb_info_json["qmk_lufa_bootloader.speaker"]}') # Show the results - keyboard_h = '\n'.join(keyboard_h_lines) - - if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(keyboard_h) - - if not cli.args.quiet: - cli.log.info('Wrote Keyboard.h to %s.', cli.args.output) - - else: - print(keyboard_h) + dump_lines(cli.args.output, keyboard_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/cli/generate/keyboard_h.py b/lib/python/qmk/cli/generate/keyboard_h.py index f05178cede..2058865cbf 100755 --- a/lib/python/qmk/cli/generate/keyboard_h.py +++ b/lib/python/qmk/cli/generate/keyboard_h.py @@ -3,8 +3,10 @@ from milc import cli from qmk.info import info_json +from qmk.commands import dump_lines from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.path import normpath +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE def would_populate_layout_h(keyboard): @@ -36,22 +38,10 @@ def generate_keyboard_h(cli): has_layout_h = would_populate_layout_h(cli.args.keyboard) # Build the layouts.h file. - keyboard_h_lines = ['/* This file was generated by `qmk generate-keyboard-h`. Do not edit or copy.', ' */', '', '#pragma once', '#include "quantum.h"'] + keyboard_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once', '#include "quantum.h"'] if not has_layout_h: keyboard_h_lines.append('#pragma error(".h is only optional for data driven keyboards - kb.h == bad times")') # Show the results - keyboard_h = '\n'.join(keyboard_h_lines) + '\n' - - if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(keyboard_h) - - if not cli.args.quiet: - cli.log.info('Wrote keyboard_h to %s.', cli.args.output) - - else: - print(keyboard_h) + dump_lines(cli.args.output, keyboard_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/cli/generate/layouts.py b/lib/python/qmk/cli/generate/layouts.py index a21311bd49..193633baf6 100755 --- a/lib/python/qmk/cli/generate/layouts.py +++ b/lib/python/qmk/cli/generate/layouts.py @@ -2,11 +2,12 @@ """ from milc import cli -from qmk.constants import COL_LETTERS, ROW_LETTERS +from qmk.constants import COL_LETTERS, ROW_LETTERS, GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE from qmk.decorators import automagic_keyboard, automagic_keymap from qmk.info import info_json from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.path import is_keyboard, normpath +from qmk.commands import dump_lines usb_properties = { 'vid': 'VENDOR_ID', @@ -38,7 +39,7 @@ def generate_layouts(cli): kb_info_json = info_json(cli.config.generate_layouts.keyboard) # Build the layouts.h file. - layouts_h_lines = ['/* This file was generated by `qmk generate-layouts`. Do not edit or copy.', ' */', '', '#pragma once'] + layouts_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] if 'matrix_size' not in kb_info_json: cli.log.error('%s: Invalid matrix config.', cli.config.generate_layouts.keyboard) @@ -86,16 +87,4 @@ def generate_layouts(cli): layouts_h_lines.append('#endif') # Show the results - layouts_h = '\n'.join(layouts_h_lines) + '\n' - - if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(layouts_h) - - if not cli.args.quiet: - cli.log.info('Wrote info_config.h to %s.', cli.args.output) - - else: - print(layouts_h) + dump_lines(cli.args.output, layouts_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/cli/generate/rules_mk.py b/lib/python/qmk/cli/generate/rules_mk.py index ce824f6378..29a1130f99 100755 --- a/lib/python/qmk/cli/generate/rules_mk.py +++ b/lib/python/qmk/cli/generate/rules_mk.py @@ -9,7 +9,9 @@ from qmk.info import info_json from qmk.json_schema import json_load, validate from qmk.keyboard import keyboard_completer, keyboard_folder from qmk.keymap import locate_keymap +from qmk.commands import dump_lines from qmk.path import normpath +from qmk.constants import GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE def process_mapping_rule(kb_info_json, rules_key, info_dict): @@ -55,7 +57,7 @@ def generate_rules_mk(cli): kb_info_json = dotty(info_json(cli.args.keyboard)) info_rules_map = json_load(Path('data/mappings/info_rules.json')) - rules_mk_lines = ['# This file was generated by `qmk generate-rules-mk`. Do not edit or copy.', ''] + rules_mk_lines = [GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE] # Iterate through the info_rules map to generate basic rules for rules_key, info_dict in info_rules_map.items(): @@ -83,14 +85,9 @@ def generate_rules_mk(cli): rules_mk_lines.append('CUSTOM_MATRIX ?= yes') # Show the results - rules_mk = '\n'.join(rules_mk_lines) + '\n' + dump_lines(cli.args.output, rules_mk_lines) if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(rules_mk) - if cli.args.quiet: if cli.args.escape: print(cli.args.output.as_posix().replace(' ', '\\ ')) @@ -98,6 +95,3 @@ def generate_rules_mk(cli): print(cli.args.output) else: cli.log.info('Wrote rules.mk to %s.', cli.args.output) - - else: - print(rules_mk) diff --git a/lib/python/qmk/cli/generate/version_h.py b/lib/python/qmk/cli/generate/version_h.py index 69341e36f0..be9646748e 100644 --- a/lib/python/qmk/cli/generate/version_h.py +++ b/lib/python/qmk/cli/generate/version_h.py @@ -1,9 +1,15 @@ """Used by the make system to generate version.h for use in code. """ +from time import strftime + from milc import cli -from qmk.commands import create_version_h from qmk.path import normpath +from qmk.commands import dump_lines +from qmk.commands import get_git_version +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE + +TIME_FMT = '%Y-%m-%d-%H:%M:%S' @cli.argument('-o', '--output', arg_only=True, type=normpath, help='File to write to') @@ -17,15 +23,29 @@ def generate_version_h(cli): if cli.args.skip_all: cli.args.skip_git = True - version_h = create_version_h(cli.args.skip_git, cli.args.skip_all) - - if cli.args.output: - cli.args.output.parent.mkdir(parents=True, exist_ok=True) - if cli.args.output.exists(): - cli.args.output.replace(cli.args.output.parent / (cli.args.output.name + '.bak')) - cli.args.output.write_text(version_h) - - if not cli.args.quiet: - cli.log.info('Wrote version.h to %s.', cli.args.output) + if cli.args.skip_all: + current_time = "1970-01-01-00:00:00" else: - print(version_h) + current_time = strftime(TIME_FMT) + + if cli.args.skip_git: + git_version = "NA" + chibios_version = "NA" + chibios_contrib_version = "NA" + else: + git_version = get_git_version(current_time) + chibios_version = get_git_version(current_time, "chibios", "os") + chibios_contrib_version = get_git_version(current_time, "chibios-contrib", "os") + + # Build the version.h file. + version_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] + + version_h_lines.append(f""" +#define QMK_VERSION "{git_version}" +#define QMK_BUILDDATE "{current_time}" +#define CHIBIOS_VERSION "{chibios_version}" +#define CHIBIOS_CONTRIB_VERSION "{chibios_contrib_version}" +""") + + # Show the results + dump_lines(cli.args.output, version_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index e38f17156a..44bd97d9be 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -5,7 +5,6 @@ import sys import shutil from pathlib import Path from subprocess import DEVNULL -from time import strftime from milc import cli import jsonschema @@ -14,8 +13,6 @@ import qmk.keymap from qmk.constants import QMK_FIRMWARE, KEYBOARD_OUTPUT_PREFIX from qmk.json_schema import json_load, validate -time_fmt = '%Y-%m-%d-%H:%M:%S' - def _find_make(): """Returns the correct make command for this environment. @@ -136,37 +133,6 @@ def get_make_parallel_args(parallel=1): return parallel_args -def create_version_h(skip_git=False, skip_all=False): - """Generate version.h contents - """ - if skip_all: - current_time = "1970-01-01-00:00:00" - else: - current_time = strftime(time_fmt) - - if skip_git: - git_version = "NA" - chibios_version = "NA" - chibios_contrib_version = "NA" - else: - git_version = get_git_version(current_time) - chibios_version = get_git_version(current_time, "chibios", "os") - chibios_contrib_version = get_git_version(current_time, "chibios-contrib", "os") - - version_h_lines = f"""/* This file was automatically generated. Do not edit or copy. - */ - -#pragma once - -#define QMK_VERSION "{git_version}" -#define QMK_BUILDDATE "{current_time}" -#define CHIBIOS_VERSION "{chibios_version}" -#define CHIBIOS_CONTRIB_VERSION "{chibios_contrib_version}" -""" - - return version_h_lines - - def compile_configurator_json(user_keymap, bootloader=None, parallel=1, **env_vars): """Convert a configurator export JSON file into a C file and then compile it. @@ -201,9 +167,6 @@ def compile_configurator_json(user_keymap, bootloader=None, parallel=1, **env_va keymap_dir.mkdir(exist_ok=True, parents=True) keymap_c.write_text(c_text) - version_h = Path('quantum/version.h') - version_h.write_text(create_version_h()) - # Return a command that can be run to make the keymap and flash if given verbose = 'true' if cli.config.general.verbose else 'false' color = 'true' if cli.config.general.color else 'false' @@ -357,3 +320,20 @@ def in_virtualenv(): """ active_prefix = getattr(sys, "base_prefix", None) or getattr(sys, "real_prefix", None) or sys.prefix return active_prefix != sys.prefix + + +def dump_lines(output_file, lines, quiet=True): + """Handle dumping to stdout or file + Creates parent folders if required + """ + generated = '\n'.join(lines) + '\n' + if output_file and output_file.name != '-': + output_file.parent.mkdir(parents=True, exist_ok=True) + if output_file.exists(): + output_file.replace(output_file.parent / (output_file.name + '.bak')) + output_file.write_text(generated) + + if not quiet: + cli.log.info(f'Wrote {output_file.name} to {output_file}.') + else: + print(generated) diff --git a/lib/python/qmk/constants.py b/lib/python/qmk/constants.py index e4b699cdb1..6956b70772 100644 --- a/lib/python/qmk/constants.py +++ b/lib/python/qmk/constants.py @@ -1,6 +1,7 @@ """Information that should be available to the python library. """ from os import environ +from datetime import date from pathlib import Path # The root of the qmk_firmware tree. @@ -75,3 +76,65 @@ LED_INDICATORS = { # Constants that should match their counterparts in make BUILD_DIR = environ.get('BUILD_DIR', '.build') KEYBOARD_OUTPUT_PREFIX = f'{BUILD_DIR}/obj_' + +# Headers for generated files +GPL2_HEADER_C_LIKE = f'''\ +// Copyright {date.today().year} QMK +// SPDX-License-Identifier: GPL-2.0-or-later +''' + +GPL2_HEADER_SH_LIKE = f'''\ +# Copyright {date.today().year} QMK +# SPDX-License-Identifier: GPL-2.0-or-later +''' + +GENERATED_HEADER_C_LIKE = '''\ +/******************************************************************************* + 88888888888 888 d8b .d888 d8b 888 d8b + 888 888 Y8P d88P" Y8P 888 Y8P + 888 888 888 888 + 888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b + 888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K + 888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b. + 888 888 888 888 X88 888 888 888 Y8b. 888 X88 + 888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P' + 888 888 + 888 888 + 888 888 + .d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888 + d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888 + 888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888 + Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888 + "Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888 + 888 + Y8b d88P + "Y88P" +*******************************************************************************/ +''' + +GENERATED_HEADER_SH_LIKE = '''\ +################################################################################ +# +# 88888888888 888 d8b .d888 d8b 888 d8b +# 888 888 Y8P d88P" Y8P 888 Y8P +# 888 888 888 888 +# 888 88888b. 888 .d8888b 888888 888 888 .d88b. 888 .d8888b +# 888 888 "88b 888 88K 888 888 888 d8P Y8b 888 88K +# 888 888 888 888 "Y8888b. 888 888 888 88888888 888 "Y8888b. +# 888 888 888 888 X88 888 888 888 Y8b. 888 X88 +# 888 888 888 888 88888P' 888 888 888 "Y8888 888 88888P' +# +# 888 888 +# 888 888 +# 888 888 +# .d88b. .d88b. 88888b. .d88b. 888d888 8888b. 888888 .d88b. .d88888 +# d88P"88b d8P Y8b 888 "88b d8P Y8b 888P" "88b 888 d8P Y8b d88" 888 +# 888 888 88888888 888 888 88888888 888 .d888888 888 88888888 888 888 +# Y88b 888 Y8b. 888 888 Y8b. 888 888 888 Y88b. Y8b. Y88b 888 +# "Y88888 "Y8888 888 888 "Y8888 888 "Y888888 "Y888 "Y8888 "Y88888 +# 888 +# Y8b d88P +# "Y88P" +# +################################################################################ +''' From ed773ab73cab83b842dc62ff94ffb337ec66a5f3 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 18 Mar 2022 16:02:24 +0000 Subject: [PATCH 142/699] Relocate CLI git interactions (#16682) --- lib/python/qmk/cli/doctor/check.py | 12 --- lib/python/qmk/cli/doctor/main.py | 3 +- lib/python/qmk/cli/generate/version_h.py | 8 +- lib/python/qmk/cli/new/keyboard.py | 2 +- lib/python/qmk/commands.py | 105 +--------------------- lib/python/qmk/git.py | 110 +++++++++++++++++++++++ 6 files changed, 118 insertions(+), 122 deletions(-) create mode 100644 lib/python/qmk/git.py diff --git a/lib/python/qmk/cli/doctor/check.py b/lib/python/qmk/cli/doctor/check.py index 2d691b64b0..8a0422ba72 100644 --- a/lib/python/qmk/cli/doctor/check.py +++ b/lib/python/qmk/cli/doctor/check.py @@ -7,7 +7,6 @@ from subprocess import DEVNULL from milc import cli from qmk import submodules -from qmk.constants import QMK_FIRMWARE class CheckStatus(Enum): @@ -150,14 +149,3 @@ def is_executable(command): cli.log.error("{fg_red}Can't run `%s %s`", command, version_arg) return False - - -def check_git_repo(): - """Checks that the .git directory exists inside QMK_HOME. - - This is a decent enough indicator that the qmk_firmware directory is a - proper Git repository, rather than a .zip download from GitHub. - """ - dot_git = QMK_FIRMWARE / '.git' - - return CheckStatus.OK if dot_git.exists() else CheckStatus.WARNING diff --git a/lib/python/qmk/cli/doctor/main.py b/lib/python/qmk/cli/doctor/main.py index 2e5e221e8f..2898a9894c 100755 --- a/lib/python/qmk/cli/doctor/main.py +++ b/lib/python/qmk/cli/doctor/main.py @@ -11,7 +11,8 @@ from milc.questions import yesno from qmk import submodules from qmk.constants import QMK_FIRMWARE, QMK_FIRMWARE_UPSTREAM from .check import CheckStatus, check_binaries, check_binary_versions, check_submodules -from qmk.commands import git_check_repo, git_get_branch, git_get_tag, git_is_dirty, git_get_remotes, git_check_deviation, in_virtualenv +from qmk.git import git_check_repo, git_get_branch, git_get_tag, git_is_dirty, git_get_remotes, git_check_deviation +from qmk.commands import in_virtualenv def os_tests(): diff --git a/lib/python/qmk/cli/generate/version_h.py b/lib/python/qmk/cli/generate/version_h.py index be9646748e..a75702c529 100644 --- a/lib/python/qmk/cli/generate/version_h.py +++ b/lib/python/qmk/cli/generate/version_h.py @@ -6,7 +6,7 @@ from milc import cli from qmk.path import normpath from qmk.commands import dump_lines -from qmk.commands import get_git_version +from qmk.git import git_get_version from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE TIME_FMT = '%Y-%m-%d-%H:%M:%S' @@ -33,9 +33,9 @@ def generate_version_h(cli): chibios_version = "NA" chibios_contrib_version = "NA" else: - git_version = get_git_version(current_time) - chibios_version = get_git_version(current_time, "chibios", "os") - chibios_contrib_version = get_git_version(current_time, "chibios-contrib", "os") + git_version = git_get_version() or current_time + chibios_version = git_get_version("chibios", "os") or current_time + chibios_contrib_version = git_get_version("chibios-contrib", "os") or current_time # Build the version.h file. version_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#pragma once'] diff --git a/lib/python/qmk/cli/new/keyboard.py b/lib/python/qmk/cli/new/keyboard.py index 6fa9ad5b2c..1cdfe53206 100644 --- a/lib/python/qmk/cli/new/keyboard.py +++ b/lib/python/qmk/cli/new/keyboard.py @@ -10,7 +10,7 @@ from dotty_dict import dotty from milc import cli from milc.questions import choice, question -from qmk.commands import git_get_username +from qmk.git import git_get_username from qmk.json_schema import load_jsonschema from qmk.path import keyboard from qmk.json_encoders import InfoJSONEncoder diff --git a/lib/python/qmk/commands.py b/lib/python/qmk/commands.py index 44bd97d9be..d0bd00beb7 100644 --- a/lib/python/qmk/commands.py +++ b/lib/python/qmk/commands.py @@ -4,13 +4,12 @@ import os import sys import shutil from pathlib import Path -from subprocess import DEVNULL from milc import cli import jsonschema import qmk.keymap -from qmk.constants import QMK_FIRMWARE, KEYBOARD_OUTPUT_PREFIX +from qmk.constants import KEYBOARD_OUTPUT_PREFIX from qmk.json_schema import json_load, validate @@ -90,31 +89,6 @@ def create_make_command(keyboard, keymap, target=None, dry_run=False, parallel=1 return create_make_target(':'.join(make_args), dry_run=dry_run, parallel=parallel, **env_vars) -def get_git_version(current_time, repo_dir='.', check_dir='.'): - """Returns the current git version for a repo, or the current time. - """ - git_describe_cmd = ['git', 'describe', '--abbrev=6', '--dirty', '--always', '--tags'] - - if repo_dir != '.': - repo_dir = Path('lib') / repo_dir - - if check_dir != '.': - check_dir = repo_dir / check_dir - - if Path(check_dir).exists(): - git_describe = cli.run(git_describe_cmd, stdin=DEVNULL, cwd=repo_dir) - - if git_describe.returncode == 0: - return git_describe.stdout.strip() - - else: - cli.log.warn(f'"{" ".join(git_describe_cmd)}" returned error code {git_describe.returncode}') - print(git_describe.stderr) - return current_time - - return current_time - - def get_make_parallel_args(parallel=1): """Returns the arguments for running the specified number of parallel jobs. """ @@ -237,83 +211,6 @@ def parse_configurator_json(configurator_file): return user_keymap -def git_get_username(): - """Retrieves user's username from Git config, if set. - """ - git_username = cli.run(['git', 'config', '--get', 'user.name']) - - if git_username.returncode == 0 and git_username.stdout: - return git_username.stdout.strip() - - -def git_check_repo(): - """Checks that the .git directory exists inside QMK_HOME. - - This is a decent enough indicator that the qmk_firmware directory is a - proper Git repository, rather than a .zip download from GitHub. - """ - dot_git_dir = QMK_FIRMWARE / '.git' - - return dot_git_dir.is_dir() - - -def git_get_branch(): - """Returns the current branch for a repo, or None. - """ - git_branch = cli.run(['git', 'branch', '--show-current']) - if not git_branch.returncode != 0 or not git_branch.stdout: - # Workaround for Git pre-2.22 - git_branch = cli.run(['git', 'rev-parse', '--abbrev-ref', 'HEAD']) - - if git_branch.returncode == 0: - return git_branch.stdout.strip() - - -def git_get_tag(): - """Returns the current tag for a repo, or None. - """ - git_tag = cli.run(['git', 'describe', '--abbrev=0', '--tags']) - if git_tag.returncode == 0: - return git_tag.stdout.strip() - - -def git_is_dirty(): - """Returns 1 if repo is dirty, or 0 if clean - """ - git_diff_staged_cmd = ['git', 'diff', '--quiet'] - git_diff_unstaged_cmd = [*git_diff_staged_cmd, '--cached'] - - unstaged = cli.run(git_diff_staged_cmd) - staged = cli.run(git_diff_unstaged_cmd) - - return unstaged.returncode != 0 or staged.returncode != 0 - - -def git_get_remotes(): - """Returns the current remotes for a repo. - """ - remotes = {} - - git_remote_show_cmd = ['git', 'remote', 'show'] - git_remote_get_cmd = ['git', 'remote', 'get-url'] - - git_remote_show = cli.run(git_remote_show_cmd) - if git_remote_show.returncode == 0: - for name in git_remote_show.stdout.splitlines(): - git_remote_name = cli.run([*git_remote_get_cmd, name]) - remotes[name.strip()] = {"url": git_remote_name.stdout.strip()} - - return remotes - - -def git_check_deviation(active_branch): - """Return True if branch has custom commits - """ - cli.run(['git', 'fetch', 'upstream', active_branch]) - deviations = cli.run(['git', '--no-pager', 'log', f'upstream/{active_branch}...{active_branch}']) - return bool(deviations.returncode) - - def in_virtualenv(): """Check if running inside a virtualenv. Based on https://stackoverflow.com/a/1883251 diff --git a/lib/python/qmk/git.py b/lib/python/qmk/git.py new file mode 100644 index 0000000000..beeb689144 --- /dev/null +++ b/lib/python/qmk/git.py @@ -0,0 +1,110 @@ +"""Functions for working with the QMK repo. +""" +from subprocess import DEVNULL +from pathlib import Path + +from milc import cli + +from qmk.constants import QMK_FIRMWARE + + +def git_get_version(repo_dir='.', check_dir='.'): + """Returns the current git version for a repo, or None. + """ + git_describe_cmd = ['git', 'describe', '--abbrev=6', '--dirty', '--always', '--tags'] + + if repo_dir != '.': + repo_dir = Path('lib') / repo_dir + + if check_dir != '.': + check_dir = repo_dir / check_dir + + if Path(check_dir).exists(): + git_describe = cli.run(git_describe_cmd, stdin=DEVNULL, cwd=repo_dir) + + if git_describe.returncode == 0: + return git_describe.stdout.strip() + + else: + cli.log.warn(f'"{" ".join(git_describe_cmd)}" returned error code {git_describe.returncode}') + print(git_describe.stderr) + return None + + return None + + +def git_get_username(): + """Retrieves user's username from Git config, if set. + """ + git_username = cli.run(['git', 'config', '--get', 'user.name']) + + if git_username.returncode == 0 and git_username.stdout: + return git_username.stdout.strip() + + +def git_get_branch(): + """Returns the current branch for a repo, or None. + """ + git_branch = cli.run(['git', 'branch', '--show-current']) + if not git_branch.returncode != 0 or not git_branch.stdout: + # Workaround for Git pre-2.22 + git_branch = cli.run(['git', 'rev-parse', '--abbrev-ref', 'HEAD']) + + if git_branch.returncode == 0: + return git_branch.stdout.strip() + + +def git_get_tag(): + """Returns the current tag for a repo, or None. + """ + git_tag = cli.run(['git', 'describe', '--abbrev=0', '--tags']) + if git_tag.returncode == 0: + return git_tag.stdout.strip() + + +def git_get_remotes(): + """Returns the current remotes for a repo. + """ + remotes = {} + + git_remote_show_cmd = ['git', 'remote', 'show'] + git_remote_get_cmd = ['git', 'remote', 'get-url'] + + git_remote_show = cli.run(git_remote_show_cmd) + if git_remote_show.returncode == 0: + for name in git_remote_show.stdout.splitlines(): + git_remote_name = cli.run([*git_remote_get_cmd, name]) + remotes[name.strip()] = {"url": git_remote_name.stdout.strip()} + + return remotes + + +def git_is_dirty(): + """Returns 1 if repo is dirty, or 0 if clean + """ + git_diff_staged_cmd = ['git', 'diff', '--quiet'] + git_diff_unstaged_cmd = [*git_diff_staged_cmd, '--cached'] + + unstaged = cli.run(git_diff_staged_cmd) + staged = cli.run(git_diff_unstaged_cmd) + + return unstaged.returncode != 0 or staged.returncode != 0 + + +def git_check_repo(): + """Checks that the .git directory exists inside QMK_HOME. + + This is a decent enough indicator that the qmk_firmware directory is a + proper Git repository, rather than a .zip download from GitHub. + """ + dot_git_dir = QMK_FIRMWARE / '.git' + + return dot_git_dir.is_dir() + + +def git_check_deviation(active_branch): + """Return True if branch has custom commits + """ + cli.run(['git', 'fetch', 'upstream', active_branch]) + deviations = cli.run(['git', '--no-pager', 'log', f'upstream/{active_branch}...{active_branch}']) + return bool(deviations.returncode) From 773242503ca7e12f7a77a588789640d0dbde8c04 Mon Sep 17 00:00:00 2001 From: Florian Date: Fri, 18 Mar 2022 18:24:43 +0100 Subject: [PATCH 143/699] annepro2: Add more LED functionalities to default-layer-indicators (#16676) --- keyboards/annepro2/annepro2.c | 9 +++++++++ keyboards/annepro2/annepro2.h | 1 + .../annepro2/keymaps/default-layer-indicators/keymap.c | 9 +++++++-- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/keyboards/annepro2/annepro2.c b/keyboards/annepro2/annepro2.c index 8767265315..0f49f93104 100644 --- a/keyboards/annepro2/annepro2.c +++ b/keyboards/annepro2/annepro2.c @@ -192,6 +192,15 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { ap2_led_reset_foreground_color(); break; + case KC_AP_LED_TOG: + if (ap2_led_status.matrix_enabled) { + ap2_led_disable(); + } else { + ap2_led_enable(); + ap2_led_reset_foreground_color(); + } + break; + case KC_AP_LED_NEXT_PROFILE: ap2_led_next_profile(); ap2_led_reset_foreground_color(); diff --git a/keyboards/annepro2/annepro2.h b/keyboards/annepro2/annepro2.h index 1b5933f577..143904b6ad 100644 --- a/keyboards/annepro2/annepro2.h +++ b/keyboards/annepro2/annepro2.h @@ -53,6 +53,7 @@ enum AP2KeyCodes { KC_AP2_USB, KC_AP_LED_ON, KC_AP_LED_OFF, + KC_AP_LED_TOG, KC_AP_LED_NEXT_PROFILE, KC_AP_LED_PREV_PROFILE, KC_AP_LED_NEXT_INTENSITY, diff --git a/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c index 405769466a..1fd97c584e 100644 --- a/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c +++ b/keyboards/annepro2/keymaps/default-layer-indicators/keymap.c @@ -83,7 +83,7 @@ enum anne_pro_layers { /* * Layer FN2 * ,-----------------------------------------------------------------------------------------. - * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 |LEDOF|LEDON| F10 | F11 | F12 | Bksp | + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 | F8 |LEDTG|LEDI+|LEDPV|LEDNX| Bksp | * |-----------------------------------------------------------------------------------------+ * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | * |-----------------------------------------------------------------------------------------+ @@ -96,7 +96,7 @@ enum anne_pro_layers { * */ [FN2] = LAYOUT_60_ansi( /* FN2 */ - _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, _______, KC_AP_LED_OFF, KC_AP_LED_ON, _______, _______, _______, _______, + _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, _______, _______, KC_AP_LED_TOG, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_PREV_PROFILE, KC_AP_LED_NEXT_PROFILE, _______, MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, @@ -105,6 +105,11 @@ enum anne_pro_layers { }; // clang-format on +void keyboard_post_init_user(void) { + ap2_led_enable(); + ap2_led_set_profile(7); +} + layer_state_t layer_state_set_user(layer_state_t state) { switch (get_highest_layer(state)) { case FN1: From 61c644f6d00cc107e9079aa5e87716174ad77d44 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Fri, 18 Mar 2022 11:49:22 -0700 Subject: [PATCH 144/699] [Keyboard] Update Tractyl Manuform config files (#16684) --- .../tractyl_manuform/5x6_right/f411/chconf.h | 38 ------------------- .../tractyl_manuform/5x6_right/f411/config.h | 8 ---- 2 files changed, 46 deletions(-) delete mode 100644 keyboards/handwired/tractyl_manuform/5x6_right/f411/chconf.h diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/chconf.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/chconf.h deleted file mode 100644 index 8b55eaeef0..0000000000 --- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/chconf.h +++ /dev/null @@ -1,38 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/onekey/blackpill_f411/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_FREQUENCY 10000 - -#define CH_CFG_FACTORY_OBJECTS_REGISTRY TRUE - -#define CH_CFG_FACTORY_GENERIC_BUFFERS TRUE - -#define CH_CFG_FACTORY_SEMAPHORES TRUE - -#define CH_CFG_FACTORY_MAILBOXES TRUE - -#define CH_CFG_FACTORY_OBJ_FIFOS TRUE - -#define CH_CFG_FACTORY_PIPES TRUE - -#include_next diff --git a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h index 87c3239057..6f19332a62 100644 --- a/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h +++ b/keyboards/handwired/tractyl_manuform/5x6_right/f411/config.h @@ -100,14 +100,6 @@ along with this program. If not, see . /* eeprom config */ #define EXTERNAL_EEPROM_SPI_SLAVE_SELECT_PIN A4 #define EXTERNAL_EEPROM_SPI_CLOCK_DIVISOR 64 -// #define EXTERNAL_EEPROM_BYTE_COUNT 8196 -// #define EXTERNAL_EEPROM_PAGE_SIZE 32 -// #define EXTERNAL_EEPROM_ADDRESS_SIZE 2 -// #define DEBUG_EEPROM_OUTPUT - -#ifdef EEPROM_SPI -# define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8195 -#endif /* pmw3360 config */ #define PMW3360_CS_PIN B0 From 06b6729b168334c6496288acf6734aa586d335e2 Mon Sep 17 00:00:00 2001 From: stanrc85 <47038504+stanrc85@users.noreply.github.com> Date: Sat, 19 Mar 2022 02:52:33 -0400 Subject: [PATCH 145/699] [Keymap] Update some code and keyboard rules (#16680) --- users/stanrc85/config.h | 6 ++++++ users/stanrc85/rules.mk | 4 +++- users/stanrc85/stanrc85.c | 4 ++-- 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/users/stanrc85/config.h b/users/stanrc85/config.h index b883a21dd2..e12beedb90 100644 --- a/users/stanrc85/config.h +++ b/users/stanrc85/config.h @@ -15,6 +15,12 @@ #define INDICATOR_PIN_2 D4 #endif +#ifdef KEYBOARD_mechlovin_adelais_standard_led_arm_rev4_stm32f303 + #define INDICATOR_PIN_0 B2 + #define INDICATOR_PIN_1 C15 + #define INDICATOR_PIN_2 B9 +#endif + #ifdef KEYBOARD_boardsource_the_mark #define RGB_MATRIX_KEYPRESSES #endif diff --git a/users/stanrc85/rules.mk b/users/stanrc85/rules.mk index 16cf1ace5d..94f4027b96 100644 --- a/users/stanrc85/rules.mk +++ b/users/stanrc85/rules.mk @@ -36,8 +36,10 @@ ifeq ($(strip $(KEYBOARD)), jacky_studio/bear_65) endif ifeq ($(strip $(KEYBOARD)), mechlovin/adelais/rgb_led/rev2) SRC += rgb_layers.c + SRC += rgb_timeout.c endif ifeq ($(strip $(KEYBOARD)), mechlovin/adelais/standard_led/arm/rev4/stm32f303) + OPT_DEFS += -DHAS_INDICATORS SRC += rgb_timeout.c - SRC += layer_rgb.c + SRC += indicator_layers_sneakbox.c endif diff --git a/users/stanrc85/stanrc85.c b/users/stanrc85/stanrc85.c index f8555d87bd..56e67e52b1 100644 --- a/users/stanrc85/stanrc85.c +++ b/users/stanrc85/stanrc85.c @@ -68,7 +68,7 @@ void lock_unlock (qk_tap_dance_state_t *state, void *user_data) { tap_code16(KC_CAD); #if defined(HAS_INDICATORS) led_user = 0; - #if defined(KEYBOARD_sneakbox_aliceclone) + #if defined(KEYBOARD_sneakbox_aliceclone) || defined(KEYBOARD_mechlovin_adelais_standard_led_arm_rev4_stm32f303) led_user = 1; #endif writePin(INDICATOR_PIN_0, !led_user); @@ -84,7 +84,7 @@ void lock_unlock (qk_tap_dance_state_t *state, void *user_data) { tap_code16(KC_LOCK); #if defined(HAS_INDICATORS) led_user = 1; - #if defined(KEYBOARD_sneakbox_aliceclone) + #if defined(KEYBOARD_sneakbox_aliceclone) || defined(KEYBOARD_mechlovin_adelais_standard_led_arm_rev4_stm32f303) led_user = 0; #endif writePin(INDICATOR_PIN_2, !led_user); From 9ee2effe8e61d32524b11092a0d04a96972c1493 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 19 Mar 2022 17:57:22 +1100 Subject: [PATCH 146/699] HD44780 driver rework (#16370) --- builddefs/common_features.mk | 3 +- docs/_summary.md | 2 +- docs/feature_hd44780.md | 337 +++++++++++++++++--- drivers/lcd/hd44780.c | 284 +++++++++++++++++ drivers/lcd/hd44780.h | 220 +++++++++++++ platforms/avr/drivers/hd44780.c | 542 -------------------------------- platforms/avr/drivers/hd44780.h | 348 -------------------- 7 files changed, 796 insertions(+), 940 deletions(-) create mode 100644 drivers/lcd/hd44780.c create mode 100644 drivers/lcd/hd44780.h delete mode 100644 platforms/avr/drivers/hd44780.c delete mode 100644 platforms/avr/drivers/hd44780.h diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index 08d186d656..a1793f91a5 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -646,8 +646,9 @@ ifeq ($(strip $(HAPTIC_ENABLE)),yes) endif ifeq ($(strip $(HD44780_ENABLE)), yes) - SRC += platforms/avr/drivers/hd44780.c OPT_DEFS += -DHD44780_ENABLE + COMMON_VPATH += $(DRIVER_PATH)/lcd + SRC += hd44780.c endif VALID_OLED_DRIVER_TYPES := SSD1306 custom diff --git a/docs/_summary.md b/docs/_summary.md index 250a48fe6b..249bfcd9ed 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -94,7 +94,7 @@ * Hardware Features * Displays - * [HD44780 LCD Controller](feature_hd44780.md) + * [HD44780 LCD Driver](feature_hd44780.md) * [ST7565 LCD Driver](feature_st7565.md) * [OLED Driver](feature_oled_driver.md) * Lighting diff --git a/docs/feature_hd44780.md b/docs/feature_hd44780.md index dc476c734f..4ade640baa 100644 --- a/docs/feature_hd44780.md +++ b/docs/feature_hd44780.md @@ -1,57 +1,298 @@ -# HD44780 LCD Displays +# HD44780 LCD Driver -This is an integration of Peter Fleury's LCD library. This page will explain the basics. [For in depth documentation visit his page.](http://www.peterfleury.epizy.com/doxygen/avr-gcc-libraries/group__pfleury__lcd.html) +## Supported Hardware -You can enable support for HD44780 Displays by setting the `HD44780_ENABLE` flag in your keyboards `rules.mk` to yes. +LCD modules using [HD44780U](https://www.sparkfun.com/datasheets/LCD/HD44780.pdf) IC or equivalent, communicating in 4-bit mode. -## Configuration +|Module|Size |Notes | +|------|--------------|---------------------------------| +|1602A |16x2, 5x8 dots| | +|2004A |20x4, 5x8 dots|Untested, not currently supported| -You will need to configure the pins used by your display, and its number of lines and columns in your keyboard's `config.h`. - - -Uncomment the section labled HD44780 and change the parameters as needed. -```` -/* - * 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 -```` - -Should you need to configure other properties you can copy them from `quantum/hd44780.h` and set them in your `config.h` +To run these modules at 3.3V, an additional MAX660 voltage converter IC must be soldered on, along with two 10µF capacitors. See [this page](https://www.codrey.com/electronic-circuits/hack-your-16x2-lcd/) for more details. ## Usage -To initialize your display, call `lcd_init()` with one of these parameters: -```` -LCD_DISP_OFF : display off -LCD_DISP_ON : display on, cursor off -LCD_DISP_ON_CURSOR : display on, cursor on -LCD_DISP_ON_CURSOR_BLINK : display on, cursor on flashing -```` -This is best done in your keyboards `matrix_init_kb` or your keymaps `matrix_init_user`. -It is advised to clear the display before use. -To do so call `lcd_clrscr()`. +Add the following to your `rules.mk`: -To now print something to your Display you first call `lcd_gotoxy(column, line)`. To go to the start of the first line you would call `lcd_gotoxy(0, 0)` and then print a string with `lcd_puts("example string")`. +```make +HD44780_ENABLE = yes +``` -There are more methods available to control the display. [For in depth documentation please visit the linked page.](http://www.peterfleury.epizy.com/doxygen/avr-gcc-libraries/group__pfleury__lcd.html) +## Basic Configuration + +Add the following to your `config.h`: + +|Define |Default |Description | +|-----------------------|--------------|-----------------------------------------------------------------------------------------------------| +|`HD44780_DATA_PINS` |*Not defined* |(Required) An array of four GPIO pins connected to the display's D4-D7 pins, eg. `{ B1, B3, B2, B6 }`| +|`HD44780_RS_PIN` |*Not defined* |(Required) The GPIO connected to the display's RS pin | +|`HD44780_RW_PIN` |*Not defined* |(Required) The GPIO connected to the display's RW pin | +|`HD44780_E_PIN` |*Not defined* |(Required) The GPIO connected to the display's E pin | +|`HD44780_DISPLAY_COLS` |`16` |The number of visible characters on a single line of the display | +|`HD44780_DISPLAY_LINES`|`2` |The number of visible lines on the display | +|`HD44780_WRAP_LINES` |*Not defined* |If defined, input characters will wrap to the next line | + +## Examples + +### Hello World + +Add the following to your `keymap.c`: + +```c +void keyboard_post_init_user(void) { + hd44780_init(true, true); // Show blinking cursor + hd44780_puts_P(PSTR("Hello, world!\n")); +} +``` + +### Custom Character Definition + +Up to eight custom characters can be defined. This data is stored in the Character Generator RAM (CGRAM), and is not persistent across power cycles. + +This example defines the QMK Psi as the first custom character. The first 16 positions in the character set are reserved for the eight custom characters duplicated. + +``` +Byte | 16 8 4 2 1 + 1 | x x x ■ □ ■ □ ■ + 2 | x x x ■ □ ■ □ ■ + 3 | x x x ■ □ ■ □ ■ + 4 | x x x □ ■ ■ ■ □ + 5 | x x x □ □ ■ □ □ + 6 | x x x □ □ ■ □ □ + 7 | x x x □ □ ■ □ □ + 8 | x x x □ □ □ □ □ +``` + +```c +const uint8_t PROGMEM psi[8] = { 0x15, 0x15, 0x15, 0x0E, 0x04, 0x04, 0x04, 0x00 }; + +void keyboard_post_init_user(void) { + hd44780_init(false, false); + hd44780_define_char_P(0, psi); + // Cursor is incremented while defining characters so must be reset + hd44780_home(); + // 0x08 to avoid null terminator + hd44780_puts_P(PSTR("\x08 QMK Firmware")); +} +``` + +## API + +### `void hd44780_init(bool cursor, bool blink)` + +Initialize the display. + +This function should be called only once, before any of the other functions can be called. + +#### Arguments + + - `bool cursor` + Whether to show the cursor. + - `bool blink` + Whether to blink the cursor, if shown. + +--- + +### `void hd44780_clear(void)` + +Clear the display. + +This function is called on init. + +--- + +### `void hd44780_home(void)` + +Move the cursor to the home position. + +This function is called on init. + +--- + +### `void hd44780_on(bool cursor, bool blink)` + +Turn the display on, and/or set the cursor properties. + +This function is called on init. + +#### Arguments + + - `bool cursor` + Whether to show the cursor. + - `bool blink` + Whether to blink the cursor, if shown. + +--- + +### `void hd44780_off(void)` + +Turn the display off. + +--- + +### `void hd44780_set_cursor(uint8_t col, uint8_t line)` + +Move the cursor to the specified position on the display. + +#### Arguments + + - `uint8_t col` + The column number to move to, from 0 to 15 on 16x2 displays. + - `bool line` + The line number to move to, either 0 or 1 on 16x2 displays. + +--- + +### `void hd44780_putc(char c)` + +Print a character to the display. The newline character `\n` will move the cursor to the start of the next line. + +The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set. + +#### Arguments + + - `char c` + The character to print. + +--- + +### `void hd44780_puts(const char *s)` + +Print a string of characters to the display. + +#### Arguments + + - `const char *s` + The string to print. + +--- + +### `void hd44780_puts_P(const char *s)` + +Print a string of characters from PROGMEM to the display. + +On ARM devices, this function is simply an alias of `hd44780_puts()`. + +#### Arguments + + - `const char *s` + The PROGMEM string to print (ie. `PSTR("Hello")`). + +--- + +### `void hd44780_define_char(uint8_t index, uint8_t *data)` + +Define a custom character. + +#### Arguments + + - `uint8_t index` + The index of the custom character to define, from 0 to 7. + - `uint8_t *data` + An array of 8 bytes containing the 5-bit row data of the character, where the first byte is the topmost row, and the least significant bit of each byte is the rightmost column. + +--- + +### `void hd44780_define_char_P(uint8_t index, const uint8_t *data)` + +Define a custom character from PROGMEM. + +On ARM devices, this function is simply an alias of `hd44780_define_char()`. + +#### Arguments + + - `uint8_t index` + The index of the custom character to define, from 0 to 7. + - `const uint8_t *data` + A PROGMEM array of 8 bytes containing the 5-bit row data of the character, where the first byte is the topmost row, and the least significant bit of each byte is the rightmost column. + +--- + +### `bool hd44780_busy(void)` + +Indicates whether the display is currently processing, and cannot accept instructions. + +#### Return Value + +`true` if the display is busy. + +--- + +### `void hd44780_write(uint8_t data, bool isData)` + +Write a byte to the display. + +#### Arguments + + - `uint8_t data` + The byte to send to the display. + - `bool isData` + Whether the byte is an instruction or character data. + +--- + +### `uint8_t hd44780_read(bool isData)` + +Read a byte from the display. + +#### Arguments + + - `bool isData` + Whether to read the current cursor position, or the character at the cursor. + +#### Return Value + +If `isData` is `true`, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag. + +--- + +### `void hd44780_command(uint8_t command)` + +Send a command to the display. Refer to the datasheet and `hd44780.h` for the valid commands and defines. + +This function waits for the display to clear the busy flag before sending the command. + +#### Arguments + + - `uint8_t command` + The command to send. + +--- + +### `void hd44780_data(uint8_t data)` + +Send a byte of data to the display. + +This function waits for the display to clear the busy flag before sending the data. + +#### Arguments + + - `uint8_t data` + The byte of data to send. + +--- + +### `void hd44780_set_cgram_address(uint8_t address)` + +Set the CGRAM address. + +This function is used when defining custom characters. + +#### Arguments + + - `uint8_t address` + The CGRAM address to move to, from `0x00` to `0x3F`. + +--- + +### `void hd44780_set_ddram_address(uint8_t address)` + +Set the DDRAM address. + +This function is used when printing characters to the display, and setting the cursor. + +#### Arguments + + - `uint8_t address` + The DDRAM address to move to, from `0x00` to `0x7F`. diff --git a/drivers/lcd/hd44780.c b/drivers/lcd/hd44780.c new file mode 100644 index 0000000000..c988ebe56c --- /dev/null +++ b/drivers/lcd/hd44780.c @@ -0,0 +1,284 @@ +/* +Copyright 2022 + +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 . +*/ + +#include "hd44780.h" +#include "gpio.h" +#include "progmem.h" +#include "wait.h" + +#ifndef HD44780_DATA_PINS +# error hd44780: no data pins defined! +#endif + +#ifndef HD44780_RS_PIN +# error hd44780: no RS pin defined! +#endif + +#ifndef HD44780_RW_PIN +# error hd44780: no R/W pin defined! +#endif + +#ifndef HD44780_E_PIN +# error hd44780: no E pin defined! +#endif + +static const pin_t data_pins[4] = HD44780_DATA_PINS; + +#ifndef HD44780_DISPLAY_COLS +# define HD44780_DISPLAY_COLS 16 +#endif + +#ifndef HD44780_DISPLAY_LINES +# define HD44780_DISPLAY_LINES 2 +#endif + +#ifndef HD44780_DDRAM_LINE0_ADDR +# define HD44780_DDRAM_LINE0_ADDR 0x00 +#endif +#ifndef HD44780_DDRAM_LINE1_ADDR +# define HD44780_DDRAM_LINE1_ADDR 0x40 +#endif + +#define HD44780_INIT_DELAY_MS 16 +#define HD44780_ENABLE_DELAY_US 1 + +static void hd44780_latch(void) { + writePinHigh(HD44780_E_PIN); + wait_us(HD44780_ENABLE_DELAY_US); + writePinLow(HD44780_E_PIN); +} + +void hd44780_write(uint8_t data, bool isData) { + writePin(HD44780_RS_PIN, isData); + writePinLow(HD44780_RW_PIN); + + for (int i = 0; i < 4; i++) { + setPinOutput(data_pins[i]); + } + + // Write high nibble + for (int i = 0; i < 4; i++) { + writePin(data_pins[i], (data >> 4) & (1 << i)); + } + hd44780_latch(); + + // Write low nibble + for (int i = 0; i < 4; i++) { + writePin(data_pins[i], data & (1 << i)); + } + hd44780_latch(); + + for (int i = 0; i < 4; i++) { + writePinHigh(data_pins[i]); + } +} + +uint8_t hd44780_read(bool isData) { + uint8_t data = 0; + + writePin(HD44780_RS_PIN, isData); + writePinHigh(HD44780_RW_PIN); + + for (int i = 0; i < 4; i++) { + setPinInput(data_pins[i]); + } + + writePinHigh(HD44780_E_PIN); + wait_us(HD44780_ENABLE_DELAY_US); + + // Read high nibble + for (int i = 0; i < 4; i++) { + data |= (readPin(data_pins[i]) << i); + } + + data <<= 4; + + writePinLow(HD44780_E_PIN); + wait_us(HD44780_ENABLE_DELAY_US); + writePinHigh(HD44780_E_PIN); + wait_us(HD44780_ENABLE_DELAY_US); + + // Read low nibble + for (int i = 0; i < 4; i++) { + data |= (readPin(data_pins[i]) << i); + } + + writePinLow(HD44780_E_PIN); + + return data; +} + +bool hd44780_busy(void) { + return hd44780_read(false) & HD44780_BUSY_FLAG; +} + +void hd44780_command(uint8_t command) { + while (hd44780_busy()) + ; + hd44780_write(command, false); +} + +void hd44780_data(uint8_t data) { + while (hd44780_busy()) + ; + hd44780_write(data, true); +} + +void hd44780_clear(void) { + hd44780_command(HD44780_CMD_CLEAR_DISPLAY); +} + +void hd44780_home(void) { + hd44780_command(HD44780_CMD_RETURN_HOME); +} + +void hd44780_on(bool cursor, bool blink) { + if (cursor) { + if (blink) { + hd44780_command(HD44780_CMD_DISPLAY | HD44780_DISPLAY_ON | HD44780_DISPLAY_CURSOR | HD44780_DISPLAY_BLINK); + } else { + hd44780_command(HD44780_CMD_DISPLAY | HD44780_DISPLAY_ON | HD44780_DISPLAY_CURSOR); + } + } else { + hd44780_command(HD44780_CMD_DISPLAY | HD44780_DISPLAY_ON); + } +} + +void hd44780_off() { + hd44780_command(HD44780_CMD_DISPLAY); +} + +void hd44780_set_cgram_address(uint8_t address) { + hd44780_command(HD44780_CMD_SET_CGRAM_ADDRESS + (address & 0x3F)); +} + +void hd44780_set_ddram_address(uint8_t address) { + hd44780_command(HD44780_CMD_SET_DDRAM_ADDRESS + (address & 0x7F)); +} + +void hd44780_init(bool cursor, bool blink) { + setPinOutput(HD44780_RS_PIN); + setPinOutput(HD44780_RW_PIN); + setPinOutput(HD44780_E_PIN); + + for (int i = 0; i < 4; i++) { + setPinOutput(data_pins[i]); + } + + wait_ms(HD44780_INIT_DELAY_MS); + + // Manually configure for 4-bit mode - can't use hd44780_command() yet + // HD44780U datasheet, Fig. 24 (p46) + writePinHigh(data_pins[0]); // Function set + writePinHigh(data_pins[1]); // DL = 1 + hd44780_latch(); + wait_ms(5); + // Send again + hd44780_latch(); + wait_us(64); + // And again (?) + hd44780_latch(); + wait_us(64); + + writePinLow(data_pins[0]); // DL = 0 + hd44780_latch(); + wait_us(64); + +#if HD44780_DISPLAY_LINES == 1 + hd44780_command(HD44780_CMD_FUNCTION); // 4 bit, 1 line, 5x8 dots +#else + hd44780_command(HD44780_CMD_FUNCTION | HD44780_FUNCTION_2_LINES); // 4 bit, 2 lines, 5x8 dots +#endif + hd44780_on(cursor, blink); + hd44780_clear(); + hd44780_home(); + hd44780_command(HD44780_CMD_ENTRY_MODE | HD44780_ENTRY_MODE_INC); +} + +void hd44780_set_cursor(uint8_t col, uint8_t line) { + register uint8_t address = col; + +#if HD44780_DISPLAY_LINES == 1 + address += HD44780_DDRAM_LINE0_ADDR; +#elif HD44780_DISPLAY_LINES == 2 + if (line == 0) { + address += HD44780_DDRAM_LINE0_ADDR; + } else { + address += HD44780_DDRAM_LINE1_ADDR; + } +#endif + + hd44780_set_ddram_address(address); +} + +void hd44780_define_char(uint8_t index, uint8_t *data) { + hd44780_set_cgram_address((index & 0x7) << 3); + for (uint8_t i = 0; i < 8; i++) { + hd44780_data(data[i]); + } +} + +void hd44780_putc(char c) { + while (hd44780_busy()) + ; + uint8_t current_position = hd44780_read(false); + + if (c == '\n') { + hd44780_set_cursor(0, current_position < HD44780_DDRAM_LINE1_ADDR ? 1 : 0); + } else { +#if defined(HD44780_WRAP_LINES) +# if HD44780_DISPLAY_LINES == 1 + if (current_position == HD44780_DDRAM_LINE0_ADDR + HD44780_DISPLAY_COLS) { + // Go to start of line + hd44780_set_cursor(0, 0); + } +# elif HD44780_DISPLAY_LINES == 2 + if (current_position == HD44780_DDRAM_LINE0_ADDR + HD44780_DISPLAY_COLS) { + // Go to start of second line + hd44780_set_cursor(0, 1); + } else if (current_position == HD44780_DDRAM_LINE1_ADDR + HD44780_DISPLAY_COLS) { + // Go to start of first line + hd44780_set_cursor(0, 0); + } +# endif +#endif + hd44780_data(c); + } +} + +void hd44780_puts(const char *s) { + register char c; + while ((c = *s++)) { + hd44780_putc(c); + } +} + +#if defined(__AVR__) +void hd44780_define_char_P(uint8_t index, const uint8_t *data) { + hd44780_set_cgram_address(index << 3); + for (uint8_t i = 0; i < 8; i++) { + hd44780_data(pgm_read_byte(data++)); + } +} + +void hd44780_puts_P(const char *s) { + register char c; + while ((c = pgm_read_byte(s++))) { + hd44780_putc(c); + } +} +#endif diff --git a/drivers/lcd/hd44780.h b/drivers/lcd/hd44780.h new file mode 100644 index 0000000000..d4b8f9ea76 --- /dev/null +++ b/drivers/lcd/hd44780.h @@ -0,0 +1,220 @@ +/* +Copyright 2022 + +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 . +*/ + +#pragma once + +#include +#include + +/** + * \defgroup hd44780 + * + * HD44780 Character LCD Driver + * \{ + */ + +/* + * HD44780 instructions + * https://www.sparkfun.com/datasheets/LCD/HD44780.pdf + * Table 6 (p24) + */ +// Clear display +#define HD44780_CMD_CLEAR_DISPLAY 0x01 +// Return home +#define HD44780_CMD_RETURN_HOME 0x02 +// Entry mode set +#define HD44780_CMD_ENTRY_MODE 0x04 +#define HD44780_ENTRY_MODE_INC 0x02 // I/D +#define HD44780_ENTRY_MODE_SHIFT 0x01 // S +// Display on/off control +#define HD44780_CMD_DISPLAY 0x08 +#define HD44780_DISPLAY_ON 0x04 // D +#define HD44780_DISPLAY_CURSOR 0x02 // C +#define HD44780_DISPLAY_BLINK 0x01 // B +// Cursor or display shift +#define HD44780_CMD_MOVE 0x10 +#define HD44780_MOVE_DISPLAY 0x08 // S/C +#define HD44780_MOVE_RIGHT 0x04 // R/L +// Function set +#define HD44780_CMD_FUNCTION 0x20 +#define HD44780_FUNCTION_8_BIT 0x10 // DL +#define HD44780_FUNCTION_2_LINES 0x08 // N +#define HD44780_FUNCTION_5X10_DOTS 0x04 // F +// Set CGRAM address +#define HD44780_CMD_SET_CGRAM_ADDRESS 0x40 +// Set DDRAM address +#define HD44780_CMD_SET_DDRAM_ADDRESS 0x80 + +// Bitmask for busy flag when reading +#define HD44780_BUSY_FLAG 0x80 + +/** + * \brief Write a byte to the display. + * + * \param data The byte to send to the display. + * \param isData Whether the byte is an instruction or character data. + */ +void hd44780_write(uint8_t data, bool isData); + +/** + * \brief Read a byte from the display. + * + * \param isData Whether to read the current cursor position, or the character at the cursor. + * + * \return If `isData` is `true`, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag. + */ +uint8_t hd44780_read(bool isData); + +/** + * \brief Indicates whether the display is currently processing, and cannot accept instructions. + * + * \return `true` if the display is busy. + */ +bool hd44780_busy(void); + +/** + * \brief Send a command to the display. Refer to the datasheet for the valid commands. + * + * This function waits for the display to clear the busy flag before sending the command. + * + * \param command The command to send. + */ +void hd44780_command(uint8_t command); + +/** + * \brief Send a byte of data to the display. + * + * This function waits for the display to clear the busy flag before sending the data. + * + * \param data The byte of data to send. + */ +void hd44780_data(uint8_t data); + +/** + * \brief Clear the display. + * + * This function is called on init. + */ +void hd44780_clear(void); + +/** + * \brief Move the cursor to the home position. + * + * This function is called on init. + */ +void hd44780_home(void); + +/** + * \brief Turn the display on, and/or set the cursor position. + * + * This function is called on init. + * + * \param cursor Whether to show the cursor. + * \param blink Whether to blink the cursor, if shown. + */ +void hd44780_on(bool cursor, bool blink); + +/** + * \brief Turn the display off. + */ +void hd44780_off(void); + +/** + * \brief Set the CGRAM address. + * + * This function is used when defining custom characters. + * + * \param address The CGRAM address to move to, from `0x00` to `0x3F`. + */ +void hd44780_set_cgram_address(uint8_t address); + +/** + * \brief Set the DDRAM address. + * + * This function is used when printing characters to the display, and setting the cursor. + * + * \param address The DDRAM address to move to, from `0x00` to `0x7F`. + */ +void hd44780_set_ddram_address(uint8_t address); + +/** + * \brief Initialize the display. + * + * This function should be called only once, before any of the other functions can be called. + * + * \param cursor Whether to show the cursor. + * \param blink Whether to blink the cursor, if shown. + */ +void hd44780_init(bool cursor, bool blink); + +/** + * \brief Move the cursor to the specified position on the display. + * + * \param col The column number to move to, from 0 to 15 on 16x2 displays. + * \param line The line number to move to, either 0 or 1 on 16x2 displays. + */ +void hd44780_set_cursor(uint8_t col, uint8_t line); + +/** + * \brief Define a custom character. + * + * \param index The index of the custom character to define, from 0 to 7. + * \param data An array of 8 bytes containing the 5-bit row data of the character, where the first byte is the topmost row, and the least significant bit of each byte is the rightmost column. + */ +void hd44780_define_char(uint8_t index, uint8_t *data); + +/** + * \brief Print a character to the display. The newline character will move the cursor to the start of the next line. + * + * The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set. + * + * \param c The character to print. + */ +void hd44780_putc(char c); + +/** + * \brief Print a string of characters to the display. + * + * \param s The string to print. + */ +void hd44780_puts(const char *s); + +#if defined(__AVR__) || defined(__DOXYGEN__) +/** + * \brief Define a custom character from PROGMEM. + * + * On ARM devices, this function is simply an alias of hd44780_define_char(). + * + * \param index The index of the custom character to define, from 0 to 7. + * \param data A PROGMEM array of 8 bytes containing the 5-bit row data of the character, where the first byte is the topmost row, and the least significant bit of each byte is the rightmost column. + */ +void hd44780_define_char_P(uint8_t index, const uint8_t *data); + +/** + * \brief Print a string of characters from PROGMEM to the display. + * + * On ARM devices, this function is simply an alias of hd44780_puts(). + * + * \param s The PROGMEM string to print. + */ +void hd44780_puts_P(const char *s); +#else +# define hd44780_define_char_P(index, data) hd44780_define_char(index, data) +# define hd44780_puts_P(s) hd44780_puts(s) +#endif + +/** \} */ diff --git a/platforms/avr/drivers/hd44780.c b/platforms/avr/drivers/hd44780.c deleted file mode 100644 index f15d7d0da8..0000000000 --- a/platforms/avr/drivers/hd44780.c +++ /dev/null @@ -1,542 +0,0 @@ -/**************************************************************************** - Title: HD44780U LCD library - Author: Peter Fleury http://tinyurl.com/peterfleury - License: GNU General Public License Version 3 - File: $Id: lcd.c,v 1.15.2.2 2015/01/17 12:16:05 peter Exp $ - Software: AVR-GCC 3.3 - Target: any AVR device, memory mapped mode only for AT90S4414/8515/Mega - - DESCRIPTION - Basic routines for interfacing a HD44780U-based text lcd display - - Originally based on Volker Oth's lcd library, - changed lcd_init(), added additional constants for lcd_command(), - added 4-bit I/O mode, improved and optimized code. - - Library can be operated in memory mapped mode (LCD_IO_MODE=0) or in - 4-bit IO port mode (LCD_IO_MODE=1). 8-bit IO port mode not supported. - - Memory mapped mode compatible with Kanda STK200, but supports also - generation of R/W signal through A8 address line. - - USAGE - See the C include lcd.h file for a description of each function - -*****************************************************************************/ -#include -#include -#include -#include -#include "hd44780.h" - -/* -** constants/macros -*/ -#define DDR(x) (*(&x - 1)) /* address of data direction register of port x */ -#if defined(__AVR_ATmega64__) || defined(__AVR_ATmega128__) -/* on ATmega64/128 PINF is on port 0x00 and not 0x60 */ -# define PIN(x) (&PORTF == &(x) ? _SFR_IO8(0x00) : (*(&x - 2))) -#else -# define PIN(x) (*(&x - 2)) /* address of input register of port x */ -#endif - -#if LCD_IO_MODE -# define lcd_e_delay() _delay_us(LCD_DELAY_ENABLE_PULSE) -# define lcd_e_high() LCD_E_PORT |= _BV(LCD_E_PIN); -# define lcd_e_low() LCD_E_PORT &= ~_BV(LCD_E_PIN); -# define lcd_e_toggle() toggle_e() -# define lcd_rw_high() LCD_RW_PORT |= _BV(LCD_RW_PIN) -# define lcd_rw_low() LCD_RW_PORT &= ~_BV(LCD_RW_PIN) -# define lcd_rs_high() LCD_RS_PORT |= _BV(LCD_RS_PIN) -# define lcd_rs_low() LCD_RS_PORT &= ~_BV(LCD_RS_PIN) -#endif - -#if LCD_IO_MODE -# if LCD_LINES == 1 -# define LCD_FUNCTION_DEFAULT LCD_FUNCTION_4BIT_1LINE -# else -# define LCD_FUNCTION_DEFAULT LCD_FUNCTION_4BIT_2LINES -# endif -#else -# if LCD_LINES == 1 -# define LCD_FUNCTION_DEFAULT LCD_FUNCTION_8BIT_1LINE -# else -# define LCD_FUNCTION_DEFAULT LCD_FUNCTION_8BIT_2LINES -# endif -#endif - -#if LCD_CONTROLLER_KS0073 -# if LCD_LINES == 4 - -# define KS0073_EXTENDED_FUNCTION_REGISTER_ON 0x2C /* |0|010|1100 4-bit mode, extension-bit RE = 1 */ -# define KS0073_EXTENDED_FUNCTION_REGISTER_OFF 0x28 /* |0|010|1000 4-bit mode, extension-bit RE = 0 */ -# define KS0073_4LINES_MODE 0x09 /* |0|000|1001 4 lines mode */ - -# endif -#endif - -/* -** function prototypes -*/ -#if LCD_IO_MODE -static void toggle_e(void); -#endif - -/* -** local functions -*/ - -/************************************************************************* -delay for a minimum of microseconds -the number of loops is calculated at compile-time from MCU clock frequency -*************************************************************************/ -#define delay(us) _delay_us(us) - -#if LCD_IO_MODE -/* toggle Enable Pin to initiate write */ -static void toggle_e(void) { - lcd_e_high(); - lcd_e_delay(); - lcd_e_low(); -} -#endif - -/************************************************************************* -Low-level function to write byte to LCD controller -Input: data byte to write to LCD - rs 1: write data - 0: write instruction -Returns: none -*************************************************************************/ -#if LCD_IO_MODE -static void lcd_write(uint8_t data, uint8_t rs) { - unsigned char dataBits; - - if (rs) { /* write data (RS=1, RW=0) */ - lcd_rs_high(); - } else { /* write instruction (RS=0, RW=0) */ - lcd_rs_low(); - } - lcd_rw_low(); /* RW=0 write mode */ - - if ((&LCD_DATA0_PORT == &LCD_DATA1_PORT) && (&LCD_DATA1_PORT == &LCD_DATA2_PORT) && (&LCD_DATA2_PORT == &LCD_DATA3_PORT) && (LCD_DATA0_PIN == 0) && (LCD_DATA1_PIN == 1) && (LCD_DATA2_PIN == 2) && (LCD_DATA3_PIN == 3)) { - /* configure data pins as output */ - DDR(LCD_DATA0_PORT) |= 0x0F; - - /* output high nibble first */ - dataBits = LCD_DATA0_PORT & 0xF0; - LCD_DATA0_PORT = dataBits | ((data >> 4) & 0x0F); - lcd_e_toggle(); - - /* output low nibble */ - LCD_DATA0_PORT = dataBits | (data & 0x0F); - lcd_e_toggle(); - - /* all data pins high (inactive) */ - LCD_DATA0_PORT = dataBits | 0x0F; - } else { - /* configure data pins as output */ - DDR(LCD_DATA0_PORT) |= _BV(LCD_DATA0_PIN); - DDR(LCD_DATA1_PORT) |= _BV(LCD_DATA1_PIN); - DDR(LCD_DATA2_PORT) |= _BV(LCD_DATA2_PIN); - DDR(LCD_DATA3_PORT) |= _BV(LCD_DATA3_PIN); - - /* output high nibble first */ - LCD_DATA3_PORT &= ~_BV(LCD_DATA3_PIN); - LCD_DATA2_PORT &= ~_BV(LCD_DATA2_PIN); - LCD_DATA1_PORT &= ~_BV(LCD_DATA1_PIN); - LCD_DATA0_PORT &= ~_BV(LCD_DATA0_PIN); - if (data & 0x80) LCD_DATA3_PORT |= _BV(LCD_DATA3_PIN); - if (data & 0x40) LCD_DATA2_PORT |= _BV(LCD_DATA2_PIN); - if (data & 0x20) LCD_DATA1_PORT |= _BV(LCD_DATA1_PIN); - if (data & 0x10) LCD_DATA0_PORT |= _BV(LCD_DATA0_PIN); - lcd_e_toggle(); - - /* output low nibble */ - LCD_DATA3_PORT &= ~_BV(LCD_DATA3_PIN); - LCD_DATA2_PORT &= ~_BV(LCD_DATA2_PIN); - LCD_DATA1_PORT &= ~_BV(LCD_DATA1_PIN); - LCD_DATA0_PORT &= ~_BV(LCD_DATA0_PIN); - if (data & 0x08) LCD_DATA3_PORT |= _BV(LCD_DATA3_PIN); - if (data & 0x04) LCD_DATA2_PORT |= _BV(LCD_DATA2_PIN); - if (data & 0x02) LCD_DATA1_PORT |= _BV(LCD_DATA1_PIN); - if (data & 0x01) LCD_DATA0_PORT |= _BV(LCD_DATA0_PIN); - lcd_e_toggle(); - - /* all data pins high (inactive) */ - LCD_DATA0_PORT |= _BV(LCD_DATA0_PIN); - LCD_DATA1_PORT |= _BV(LCD_DATA1_PIN); - LCD_DATA2_PORT |= _BV(LCD_DATA2_PIN); - LCD_DATA3_PORT |= _BV(LCD_DATA3_PIN); - } -} -#else -# define lcd_write(d, rs) \ - if (rs) \ - *(volatile uint8_t *)(LCD_IO_DATA) = d; \ - else \ - *(volatile uint8_t *)(LCD_IO_FUNCTION) = d; -/* rs==0 -> write instruction to LCD_IO_FUNCTION */ -/* rs==1 -> write data to LCD_IO_DATA */ -#endif - -/************************************************************************* -Low-level function to read byte from LCD controller -Input: rs 1: read data - 0: read busy flag / address counter -Returns: byte read from LCD controller -*************************************************************************/ -#if LCD_IO_MODE -static uint8_t lcd_read(uint8_t rs) { - uint8_t data; - - if (rs) - lcd_rs_high(); /* RS=1: read data */ - else - lcd_rs_low(); /* RS=0: read busy flag */ - lcd_rw_high(); /* RW=1 read mode */ - - if ((&LCD_DATA0_PORT == &LCD_DATA1_PORT) && (&LCD_DATA1_PORT == &LCD_DATA2_PORT) && (&LCD_DATA2_PORT == &LCD_DATA3_PORT) && (LCD_DATA0_PIN == 0) && (LCD_DATA1_PIN == 1) && (LCD_DATA2_PIN == 2) && (LCD_DATA3_PIN == 3)) { - DDR(LCD_DATA0_PORT) &= 0xF0; /* configure data pins as input */ - - lcd_e_high(); - lcd_e_delay(); - data = PIN(LCD_DATA0_PORT) << 4; /* read high nibble first */ - lcd_e_low(); - - lcd_e_delay(); /* Enable 500ns low */ - - lcd_e_high(); - lcd_e_delay(); - data |= PIN(LCD_DATA0_PORT) & 0x0F; /* read low nibble */ - lcd_e_low(); - } else { - /* configure data pins as input */ - DDR(LCD_DATA0_PORT) &= ~_BV(LCD_DATA0_PIN); - DDR(LCD_DATA1_PORT) &= ~_BV(LCD_DATA1_PIN); - DDR(LCD_DATA2_PORT) &= ~_BV(LCD_DATA2_PIN); - DDR(LCD_DATA3_PORT) &= ~_BV(LCD_DATA3_PIN); - - /* read high nibble first */ - lcd_e_high(); - lcd_e_delay(); - data = 0; - if (PIN(LCD_DATA0_PORT) & _BV(LCD_DATA0_PIN)) data |= 0x10; - if (PIN(LCD_DATA1_PORT) & _BV(LCD_DATA1_PIN)) data |= 0x20; - if (PIN(LCD_DATA2_PORT) & _BV(LCD_DATA2_PIN)) data |= 0x40; - if (PIN(LCD_DATA3_PORT) & _BV(LCD_DATA3_PIN)) data |= 0x80; - lcd_e_low(); - - lcd_e_delay(); /* Enable 500ns low */ - - /* read low nibble */ - lcd_e_high(); - lcd_e_delay(); - if (PIN(LCD_DATA0_PORT) & _BV(LCD_DATA0_PIN)) data |= 0x01; - if (PIN(LCD_DATA1_PORT) & _BV(LCD_DATA1_PIN)) data |= 0x02; - if (PIN(LCD_DATA2_PORT) & _BV(LCD_DATA2_PIN)) data |= 0x04; - if (PIN(LCD_DATA3_PORT) & _BV(LCD_DATA3_PIN)) data |= 0x08; - lcd_e_low(); - } - return data; -} -#else -# define lcd_read(rs) (rs) ? *(volatile uint8_t *)(LCD_IO_DATA + LCD_IO_READ) : *(volatile uint8_t *)(LCD_IO_FUNCTION + LCD_IO_READ) -/* rs==0 -> read instruction from LCD_IO_FUNCTION */ -/* rs==1 -> read data from LCD_IO_DATA */ -#endif - -/************************************************************************* -loops while lcd is busy, returns address counter -*************************************************************************/ -static uint8_t lcd_waitbusy(void) - -{ - register uint8_t c; - - /* wait until busy flag is cleared */ - while ((c = lcd_read(0)) & (1 << LCD_BUSY)) { - } - - /* the address counter is updated 4us after the busy flag is cleared */ - delay(LCD_DELAY_BUSY_FLAG); - - /* now read the address counter */ - return (lcd_read(0)); // return address counter - -} /* lcd_waitbusy */ - -/************************************************************************* -Move cursor to the start of next line or to the first line if the cursor -is already on the last line. -*************************************************************************/ -static inline void lcd_newline(uint8_t pos) { - register uint8_t addressCounter; - -#if LCD_LINES == 1 - addressCounter = 0; -#endif -#if LCD_LINES == 2 - if (pos < (LCD_START_LINE2)) - addressCounter = LCD_START_LINE2; - else - addressCounter = LCD_START_LINE1; -#endif -#if LCD_LINES == 4 -# if KS0073_4LINES_MODE - if (pos < LCD_START_LINE2) - addressCounter = LCD_START_LINE2; - else if ((pos >= LCD_START_LINE2) && (pos < LCD_START_LINE3)) - addressCounter = LCD_START_LINE3; - else if ((pos >= LCD_START_LINE3) && (pos < LCD_START_LINE4)) - addressCounter = LCD_START_LINE4; - else - addressCounter = LCD_START_LINE1; -# else - if (pos < LCD_START_LINE3) - addressCounter = LCD_START_LINE2; - else if ((pos >= LCD_START_LINE2) && (pos < LCD_START_LINE4)) - addressCounter = LCD_START_LINE3; - else if ((pos >= LCD_START_LINE3) && (pos < LCD_START_LINE2)) - addressCounter = LCD_START_LINE4; - else - addressCounter = LCD_START_LINE1; -# endif -#endif - lcd_command((1 << LCD_DDRAM) + addressCounter); - -} /* lcd_newline */ - -/* -** PUBLIC FUNCTIONS -*/ - -/************************************************************************* -Send LCD controller instruction command -Input: instruction to send to LCD controller, see HD44780 data sheet -Returns: none -*************************************************************************/ -void lcd_command(uint8_t cmd) { - lcd_waitbusy(); - lcd_write(cmd, 0); -} - -/************************************************************************* -Send data byte to LCD controller -Input: data to send to LCD controller, see HD44780 data sheet -Returns: none -*************************************************************************/ -void lcd_data(uint8_t data) { - lcd_waitbusy(); - lcd_write(data, 1); -} - -/************************************************************************* -Set cursor to specified position -Input: x horizontal position (0: left most position) - y vertical position (0: first line) -Returns: none -*************************************************************************/ -void lcd_gotoxy(uint8_t x, uint8_t y) { -#if LCD_LINES == 1 - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE1 + x); -#endif -#if LCD_LINES == 2 - if (y == 0) - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE1 + x); - else - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE2 + x); -#endif -#if LCD_LINES == 4 - if (y == 0) - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE1 + x); - else if (y == 1) - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE2 + x); - else if (y == 2) - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE3 + x); - else /* y==3 */ - lcd_command((1 << LCD_DDRAM) + LCD_START_LINE4 + x); -#endif - -} /* lcd_gotoxy */ - -/************************************************************************* -*************************************************************************/ -int lcd_getxy(void) { - return lcd_waitbusy(); -} - -/************************************************************************* -Clear display and set cursor to home position -*************************************************************************/ -void lcd_clrscr(void) { - lcd_command(1 << LCD_CLR); -} - -/************************************************************************* -Set cursor to home position -*************************************************************************/ -void lcd_home(void) { - lcd_command(1 << LCD_HOME); -} - -/************************************************************************* -Display character at current cursor position -Input: character to be displayed -Returns: none -*************************************************************************/ -void lcd_putc(char c) { - uint8_t pos; - - pos = lcd_waitbusy(); // read busy-flag and address counter - if (c == '\n') { - lcd_newline(pos); - } else { -#if LCD_WRAP_LINES == 1 -# if LCD_LINES == 1 - if (pos == LCD_START_LINE1 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE1, 0); - } -# elif LCD_LINES == 2 - if (pos == LCD_START_LINE1 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE2, 0); - } else if (pos == LCD_START_LINE2 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE1, 0); - } -# elif LCD_LINES == 4 - if (pos == LCD_START_LINE1 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE2, 0); - } else if (pos == LCD_START_LINE2 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE3, 0); - } else if (pos == LCD_START_LINE3 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE4, 0); - } else if (pos == LCD_START_LINE4 + LCD_DISP_LENGTH) { - lcd_write((1 << LCD_DDRAM) + LCD_START_LINE1, 0); - } -# endif - lcd_waitbusy(); -#endif - lcd_write(c, 1); - } - -} /* lcd_putc */ - -/************************************************************************* -Display string without auto linefeed -Input: string to be displayed -Returns: none -*************************************************************************/ -void lcd_puts(const char *s) -/* print string on lcd (no auto linefeed) */ -{ - register char c; - - while ((c = *s++)) { - lcd_putc(c); - } - -} /* lcd_puts */ - -/************************************************************************* -Display string from program memory without auto linefeed -Input: string from program memory be be displayed -Returns: none -*************************************************************************/ -void lcd_puts_p(const char *progmem_s) -/* print string from program memory on lcd (no auto linefeed) */ -{ - register char c; - - while ((c = pgm_read_byte(progmem_s++))) { - lcd_putc(c); - } - -} /* lcd_puts_p */ - -/************************************************************************* -Initialize display and select type of cursor -Input: dispAttr LCD_DISP_OFF display off - LCD_DISP_ON display on, cursor off - LCD_DISP_ON_CURSOR display on, cursor on - LCD_DISP_CURSOR_BLINK display on, cursor on flashing -Returns: none -*************************************************************************/ -void lcd_init(uint8_t dispAttr) { -#if LCD_IO_MODE - /* - * Initialize LCD to 4 bit I/O mode - */ - - if ((&LCD_DATA0_PORT == &LCD_DATA1_PORT) && (&LCD_DATA1_PORT == &LCD_DATA2_PORT) && (&LCD_DATA2_PORT == &LCD_DATA3_PORT) && (&LCD_RS_PORT == &LCD_DATA0_PORT) && (&LCD_RW_PORT == &LCD_DATA0_PORT) && (&LCD_E_PORT == &LCD_DATA0_PORT) && (LCD_DATA0_PIN == 0) && (LCD_DATA1_PIN == 1) && (LCD_DATA2_PIN == 2) && (LCD_DATA3_PIN == 3) && (LCD_RS_PIN == 4) && (LCD_RW_PIN == 5) && (LCD_E_PIN == 6)) { - /* configure all port bits as output (all LCD lines on same port) */ - DDR(LCD_DATA0_PORT) |= 0x7F; - } else if ((&LCD_DATA0_PORT == &LCD_DATA1_PORT) && (&LCD_DATA1_PORT == &LCD_DATA2_PORT) && (&LCD_DATA2_PORT == &LCD_DATA3_PORT) && (LCD_DATA0_PIN == 0) && (LCD_DATA1_PIN == 1) && (LCD_DATA2_PIN == 2) && (LCD_DATA3_PIN == 3)) { - /* configure all port bits as output (all LCD data lines on same port, but control lines on different ports) */ - DDR(LCD_DATA0_PORT) |= 0x0F; - DDR(LCD_RS_PORT) |= _BV(LCD_RS_PIN); - DDR(LCD_RW_PORT) |= _BV(LCD_RW_PIN); - DDR(LCD_E_PORT) |= _BV(LCD_E_PIN); - } else { - /* configure all port bits as output (LCD data and control lines on different ports */ - DDR(LCD_RS_PORT) |= _BV(LCD_RS_PIN); - DDR(LCD_RW_PORT) |= _BV(LCD_RW_PIN); - DDR(LCD_E_PORT) |= _BV(LCD_E_PIN); - DDR(LCD_DATA0_PORT) |= _BV(LCD_DATA0_PIN); - DDR(LCD_DATA1_PORT) |= _BV(LCD_DATA1_PIN); - DDR(LCD_DATA2_PORT) |= _BV(LCD_DATA2_PIN); - DDR(LCD_DATA3_PORT) |= _BV(LCD_DATA3_PIN); - } - delay(LCD_DELAY_BOOTUP); /* wait 16ms or more after power-on */ - - /* initial write to lcd is 8bit */ - LCD_DATA1_PORT |= _BV(LCD_DATA1_PIN); // LCD_FUNCTION>>4; - LCD_DATA0_PORT |= _BV(LCD_DATA0_PIN); // LCD_FUNCTION_8BIT>>4; - lcd_e_toggle(); - delay(LCD_DELAY_INIT); /* delay, busy flag can't be checked here */ - - /* repeat last command */ - lcd_e_toggle(); - delay(LCD_DELAY_INIT_REP); /* delay, busy flag can't be checked here */ - - /* repeat last command a third time */ - lcd_e_toggle(); - delay(LCD_DELAY_INIT_REP); /* delay, busy flag can't be checked here */ - - /* now configure for 4bit mode */ - LCD_DATA0_PORT &= ~_BV(LCD_DATA0_PIN); // LCD_FUNCTION_4BIT_1LINE>>4 - lcd_e_toggle(); - delay(LCD_DELAY_INIT_4BIT); /* some displays need this additional delay */ - - /* from now the LCD only accepts 4 bit I/O, we can use lcd_command() */ -#else - /* - * Initialize LCD to 8 bit memory mapped mode - */ - - /* enable external SRAM (memory mapped lcd) and one wait state */ - MCUCR = _BV(SRE) | _BV(SRW); - - /* reset LCD */ - delay(LCD_DELAY_BOOTUP); /* wait 16ms after power-on */ - lcd_write(LCD_FUNCTION_8BIT_1LINE, 0); /* function set: 8bit interface */ - delay(LCD_DELAY_INIT); /* wait 5ms */ - lcd_write(LCD_FUNCTION_8BIT_1LINE, 0); /* function set: 8bit interface */ - delay(LCD_DELAY_INIT_REP); /* wait 64us */ - lcd_write(LCD_FUNCTION_8BIT_1LINE, 0); /* function set: 8bit interface */ - delay(LCD_DELAY_INIT_REP); /* wait 64us */ -#endif - -#if KS0073_4LINES_MODE - /* Display with KS0073 controller requires special commands for enabling 4 line mode */ - lcd_command(KS0073_EXTENDED_FUNCTION_REGISTER_ON); - lcd_command(KS0073_4LINES_MODE); - lcd_command(KS0073_EXTENDED_FUNCTION_REGISTER_OFF); -#else - lcd_command(LCD_FUNCTION_DEFAULT); /* function set: display lines */ -#endif - lcd_command(LCD_DISP_OFF); /* display off */ - lcd_clrscr(); /* display clear */ - lcd_command(LCD_MODE_DEFAULT); /* set entry mode */ - lcd_command(dispAttr); /* display/cursor control */ - -} /* lcd_init */ diff --git a/platforms/avr/drivers/hd44780.h b/platforms/avr/drivers/hd44780.h deleted file mode 100644 index 08e60f8a44..0000000000 --- a/platforms/avr/drivers/hd44780.h +++ /dev/null @@ -1,348 +0,0 @@ -/************************************************************************* - Title : C include file for the HD44780U LCD library (lcd.c) - Author: Peter Fleury http://tinyurl.com/peterfleury - License: GNU General Public License Version 3 - File: $Id: lcd.h,v 1.14.2.4 2015/01/20 17:16:07 peter Exp $ - Software: AVR-GCC 4.x - Hardware: any AVR device, memory mapped mode only for AVR with - memory mapped interface (AT90S8515/ATmega8515/ATmega128) -***************************************************************************/ - -/** - @mainpage - Collection of libraries for AVR-GCC - @author Peter Fleury pfleury@gmx.ch http://tinyurl.com/peterfleury - @copyright (C) 2015 Peter Fleury, GNU General Public License Version 3 - - @file - @defgroup pfleury_lcd LCD library - @code #include @endcode - - @brief Basic routines for interfacing a HD44780U-based character LCD display - - LCD character displays can be found in many devices, like espresso machines, laser printers. - The Hitachi HD44780 controller and its compatible controllers like Samsung KS0066U have become an industry standard for these types of displays. - - This library allows easy interfacing with a HD44780 compatible display and can be - operated in memory mapped mode (LCD_IO_MODE defined as 0 in the include file lcd.h.) or in - 4-bit IO port mode (LCD_IO_MODE defined as 1). 8-bit IO port mode is not supported. - - Memory mapped mode is compatible with old Kanda STK200 starter kit, but also supports - generation of R/W signal through A8 address line. - - @see The chapter Interfacing a HD44780 Based LCD to an AVR - on my home page, which shows example circuits how to connect an LCD to an AVR controller. - - @author Peter Fleury pfleury@gmx.ch http://tinyurl.com/peterfleury - - @version 2.0 - - @copyright (C) 2015 Peter Fleury, GNU General Public License Version 3 - -*/ - -#pragma once - -#include -#include - -#if (__GNUC__ * 100 + __GNUC_MINOR__) < 405 -# error "This library requires AVR-GCC 4.5 or later, update to newer AVR-GCC compiler !" -#endif - -/**@{*/ - -/* - * LCD and target specific definitions below can be defined in a separate include file with name lcd_definitions.h instead modifying this file - * by adding -D_LCD_DEFINITIONS_FILE to the CDEFS section in the Makefile - * All definitions added to the file lcd_definitions.h will override the default definitions from lcd.h - */ -#ifdef _LCD_DEFINITIONS_FILE -# include "lcd_definitions.h" -#endif - -/** - * @name Definition for LCD controller type - * Use 0 for HD44780 controller, change to 1 for displays with KS0073 controller. - */ -#ifndef LCD_CONTROLLER_KS0073 -# define LCD_CONTROLLER_KS0073 0 /**< Use 0 for HD44780 controller, 1 for KS0073 controller */ -#endif - -/** - * @name Definitions for Display Size - * Change these definitions to adapt setting to your display - * - * These definitions can be defined in a separate include file \b lcd_definitions.h instead modifying this file by - * adding -D_LCD_DEFINITIONS_FILE to the CDEFS section in the Makefile. - * All definitions added to the file lcd_definitions.h will override the default definitions from lcd.h - * - */ -#ifndef LCD_LINES -# define LCD_LINES 2 /**< number of visible lines of the display */ -#endif -#ifndef LCD_DISP_LENGTH -# define LCD_DISP_LENGTH 16 /**< visibles characters per line of the display */ -#endif -#ifndef LCD_LINE_LENGTH -# define LCD_LINE_LENGTH 0x40 /**< internal line length of the display */ -#endif -#ifndef LCD_START_LINE1 -# define LCD_START_LINE1 0x00 /**< DDRAM address of first char of line 1 */ -#endif -#ifndef LCD_START_LINE2 -# define LCD_START_LINE2 0x40 /**< DDRAM address of first char of line 2 */ -#endif -#ifndef LCD_START_LINE3 -# define LCD_START_LINE3 0x14 /**< DDRAM address of first char of line 3 */ -#endif -#ifndef LCD_START_LINE4 -# define LCD_START_LINE4 0x54 /**< DDRAM address of first char of line 4 */ -#endif -#ifndef LCD_WRAP_LINES -# define LCD_WRAP_LINES 0 /**< 0: no wrap, 1: wrap at end of visibile line */ -#endif - -/** - * @name Definitions for 4-bit IO mode - * - * The four LCD data lines and the three control lines RS, RW, E can be on the - * same port or on different ports. - * Change LCD_RS_PORT, LCD_RW_PORT, LCD_E_PORT if you want the control lines on - * different ports. - * - * Normally the four data lines should be mapped to bit 0..3 on one port, but it - * is possible to connect these data lines in different order or even on different - * ports by adapting the LCD_DATAx_PORT and LCD_DATAx_PIN definitions. - * - * Adjust these definitions to your target.\n - * These definitions can be defined in a separate include file \b lcd_definitions.h instead modifying this file by - * adding \b -D_LCD_DEFINITIONS_FILE to the \b CDEFS section in the Makefile. - * All definitions added to the file lcd_definitions.h will override the default definitions from lcd.h - * - */ -#define LCD_IO_MODE 1 /**< 0: memory mapped mode, 1: IO port mode */ - -#if LCD_IO_MODE - -# ifndef LCD_PORT -# define LCD_PORT PORTA /**< port for the LCD lines */ -# endif -# ifndef LCD_DATA0_PORT -# define LCD_DATA0_PORT LCD_PORT /**< port for 4bit data bit 0 */ -# endif -# ifndef LCD_DATA1_PORT -# define LCD_DATA1_PORT LCD_PORT /**< port for 4bit data bit 1 */ -# endif -# ifndef LCD_DATA2_PORT -# define LCD_DATA2_PORT LCD_PORT /**< port for 4bit data bit 2 */ -# endif -# ifndef LCD_DATA3_PORT -# define LCD_DATA3_PORT LCD_PORT /**< port for 4bit data bit 3 */ -# endif -# ifndef LCD_DATA0_PIN -# define LCD_DATA0_PIN 4 /**< pin for 4bit data bit 0 */ -# endif -# ifndef LCD_DATA1_PIN -# define LCD_DATA1_PIN 5 /**< pin for 4bit data bit 1 */ -# endif -# ifndef LCD_DATA2_PIN -# define LCD_DATA2_PIN 6 /**< pin for 4bit data bit 2 */ -# endif -# ifndef LCD_DATA3_PIN -# define LCD_DATA3_PIN 7 /**< pin for 4bit data bit 3 */ -# endif -# ifndef LCD_RS_PORT -# define LCD_RS_PORT LCD_PORT /**< port for RS line */ -# endif -# ifndef LCD_RS_PIN -# define LCD_RS_PIN 3 /**< pin for RS line */ -# endif -# ifndef LCD_RW_PORT -# define LCD_RW_PORT LCD_PORT /**< port for RW line */ -# endif -# ifndef LCD_RW_PIN -# define LCD_RW_PIN 2 /**< pin for RW line */ -# endif -# ifndef LCD_E_PORT -# define LCD_E_PORT LCD_PORT /**< port for Enable line */ -# endif -# ifndef LCD_E_PIN -# define LCD_E_PIN 1 /**< pin for Enable line */ -# endif - -#elif defined(__AVR_AT90S4414__) || defined(__AVR_AT90S8515__) || defined(__AVR_ATmega64__) || defined(__AVR_ATmega8515__) || defined(__AVR_ATmega103__) || defined(__AVR_ATmega128__) || defined(__AVR_ATmega161__) || defined(__AVR_ATmega162__) -/* - * memory mapped mode is only supported when the device has an external data memory interface - */ -# define LCD_IO_DATA 0xC000 /* A15=E=1, A14=RS=1 */ -# define LCD_IO_FUNCTION 0x8000 /* A15=E=1, A14=RS=0 */ -# define LCD_IO_READ 0x0100 /* A8 =R/W=1 (R/W: 1=Read, 0=Write */ - -#else -# error "external data memory interface not available for this device, use 4-bit IO port mode" - -#endif - -/** - * @name Definitions of delays - * Used to calculate delay timers. - * Adapt the F_CPU define in the Makefile to the clock frequency in Hz of your target - * - * These delay times can be adjusted, if some displays require different delays.\n - * These definitions can be defined in a separate include file \b lcd_definitions.h instead modifying this file by - * adding \b -D_LCD_DEFINITIONS_FILE to the \b CDEFS section in the Makefile. - * All definitions added to the file lcd_definitions.h will override the default definitions from lcd.h - */ -#ifndef LCD_DELAY_BOOTUP -# define LCD_DELAY_BOOTUP 16000 /**< delay in micro seconds after power-on */ -#endif -#ifndef LCD_DELAY_INIT -# define LCD_DELAY_INIT 5000 /**< delay in micro seconds after initialization command sent */ -#endif -#ifndef LCD_DELAY_INIT_REP -# define LCD_DELAY_INIT_REP 64 /**< delay in micro seconds after initialization command repeated */ -#endif -#ifndef LCD_DELAY_INIT_4BIT -# define LCD_DELAY_INIT_4BIT 64 /**< delay in micro seconds after setting 4-bit mode */ -#endif -#ifndef LCD_DELAY_BUSY_FLAG -# define LCD_DELAY_BUSY_FLAG 4 /**< time in micro seconds the address counter is updated after busy flag is cleared */ -#endif -#ifndef LCD_DELAY_ENABLE_PULSE -# define LCD_DELAY_ENABLE_PULSE 1 /**< enable signal pulse width in micro seconds */ -#endif - -/** - * @name Definitions for LCD command instructions - * The constants define the various LCD controller instructions which can be passed to the - * function lcd_command(), see HD44780 data sheet for a complete description. - */ - -/* instruction register bit positions, see HD44780U data sheet */ -#define LCD_CLR 0 /* DB0: clear display */ -#define LCD_HOME 1 /* DB1: return to home position */ -#define LCD_ENTRY_MODE 2 /* DB2: set entry mode */ -#define LCD_ENTRY_INC 1 /* DB1: 1=increment, 0=decrement */ -#define LCD_ENTRY_SHIFT 0 /* DB2: 1=display shift on */ -#define LCD_ON 3 /* DB3: turn lcd/cursor on */ -#define LCD_ON_DISPLAY 2 /* DB2: turn display on */ -#define LCD_ON_CURSOR 1 /* DB1: turn cursor on */ -#define LCD_ON_BLINK 0 /* DB0: blinking cursor ? */ -#define LCD_MOVE 4 /* DB4: move cursor/display */ -#define LCD_MOVE_DISP 3 /* DB3: move display (0-> cursor) ? */ -#define LCD_MOVE_RIGHT 2 /* DB2: move right (0-> left) ? */ -#define LCD_FUNCTION 5 /* DB5: function set */ -#define LCD_FUNCTION_8BIT 4 /* DB4: set 8BIT mode (0->4BIT mode) */ -#define LCD_FUNCTION_2LINES 3 /* DB3: two lines (0->one line) */ -#define LCD_FUNCTION_10DOTS 2 /* DB2: 5x10 font (0->5x7 font) */ -#define LCD_CGRAM 6 /* DB6: set CG RAM address */ -#define LCD_DDRAM 7 /* DB7: set DD RAM address */ -#define LCD_BUSY 7 /* DB7: LCD is busy */ - -/* set entry mode: display shift on/off, dec/inc cursor move direction */ -#define LCD_ENTRY_DEC 0x04 /* display shift off, dec cursor move dir */ -#define LCD_ENTRY_DEC_SHIFT 0x05 /* display shift on, dec cursor move dir */ -#define LCD_ENTRY_INC_ 0x06 /* display shift off, inc cursor move dir */ -#define LCD_ENTRY_INC_SHIFT 0x07 /* display shift on, inc cursor move dir */ - -/* display on/off, cursor on/off, blinking char at cursor position */ -#define LCD_DISP_OFF 0x08 /* display off */ -#define LCD_DISP_ON 0x0C /* display on, cursor off */ -#define LCD_DISP_ON_BLINK 0x0D /* display on, cursor off, blink char */ -#define LCD_DISP_ON_CURSOR 0x0E /* display on, cursor on */ -#define LCD_DISP_ON_CURSOR_BLINK 0x0F /* display on, cursor on, blink char */ - -/* move cursor/shift display */ -#define LCD_MOVE_CURSOR_LEFT 0x10 /* move cursor left (decrement) */ -#define LCD_MOVE_CURSOR_RIGHT 0x14 /* move cursor right (increment) */ -#define LCD_MOVE_DISP_LEFT 0x18 /* shift display left */ -#define LCD_MOVE_DISP_RIGHT 0x1C /* shift display right */ - -/* function set: set interface data length and number of display lines */ -#define LCD_FUNCTION_4BIT_1LINE 0x20 /* 4-bit interface, single line, 5x7 dots */ -#define LCD_FUNCTION_4BIT_2LINES 0x28 /* 4-bit interface, dual line, 5x7 dots */ -#define LCD_FUNCTION_8BIT_1LINE 0x30 /* 8-bit interface, single line, 5x7 dots */ -#define LCD_FUNCTION_8BIT_2LINES 0x38 /* 8-bit interface, dual line, 5x7 dots */ - -#define LCD_MODE_DEFAULT ((1 << LCD_ENTRY_MODE) | (1 << LCD_ENTRY_INC)) - -/** - * @name Functions - */ - -/** - @brief Initialize display and select type of cursor - @param dispAttr \b LCD_DISP_OFF display off\n - \b LCD_DISP_ON display on, cursor off\n - \b LCD_DISP_ON_CURSOR display on, cursor on\n - \b LCD_DISP_ON_CURSOR_BLINK display on, cursor on flashing - @return none -*/ -extern void lcd_init(uint8_t dispAttr); - -/** - @brief Clear display and set cursor to home position - @return none -*/ -extern void lcd_clrscr(void); - -/** - @brief Set cursor to home position - @return none -*/ -extern void lcd_home(void); - -/** - @brief Set cursor to specified position - - @param x horizontal position\n (0: left most position) - @param y vertical position\n (0: first line) - @return none -*/ -extern void lcd_gotoxy(uint8_t x, uint8_t y); - -/** - @brief Display character at current cursor position - @param c character to be displayed - @return none -*/ -extern void lcd_putc(char c); - -/** - @brief Display string without auto linefeed - @param s string to be displayed - @return none -*/ -extern void lcd_puts(const char *s); - -/** - @brief Display string from program memory without auto linefeed - @param progmem_s string from program memory be be displayed - @return none - @see lcd_puts_P -*/ -extern void lcd_puts_p(const char *progmem_s); - -/** - @brief Send LCD controller instruction command - @param cmd instruction to send to LCD controller, see HD44780 data sheet - @return none -*/ -extern void lcd_command(uint8_t cmd); - -/** - @brief Send data byte to LCD controller - - Similar to lcd_putc(), but without interpreting LF - @param data byte to send to LCD controller, see HD44780 data sheet - @return none -*/ -extern void lcd_data(uint8_t data); - -/** - @brief macros for automatically storing string constant in program memory -*/ -#define lcd_puts_P(__s) lcd_puts_p(PSTR(__s)) - -/**@}*/ From 98e783cc3ca76b542093bab9b0939030fd3cfba7 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Sat, 19 Mar 2022 04:52:03 -0700 Subject: [PATCH 147/699] Format code according to conventions (#16686) --- drivers/lcd/hd44780.h | 46 +++++++++++++++++++++---------------------- 1 file changed, 23 insertions(+), 23 deletions(-) diff --git a/drivers/lcd/hd44780.h b/drivers/lcd/hd44780.h index d4b8f9ea76..9e43339344 100644 --- a/drivers/lcd/hd44780.h +++ b/drivers/lcd/hd44780.h @@ -33,34 +33,34 @@ along with this program. If not, see . * Table 6 (p24) */ // Clear display -#define HD44780_CMD_CLEAR_DISPLAY 0x01 +#define HD44780_CMD_CLEAR_DISPLAY 0x01 // Return home -#define HD44780_CMD_RETURN_HOME 0x02 +#define HD44780_CMD_RETURN_HOME 0x02 // Entry mode set -#define HD44780_CMD_ENTRY_MODE 0x04 -#define HD44780_ENTRY_MODE_INC 0x02 // I/D -#define HD44780_ENTRY_MODE_SHIFT 0x01 // S +#define HD44780_CMD_ENTRY_MODE 0x04 +#define HD44780_ENTRY_MODE_INC 0x02 // I/D +#define HD44780_ENTRY_MODE_SHIFT 0x01 // S // Display on/off control -#define HD44780_CMD_DISPLAY 0x08 -#define HD44780_DISPLAY_ON 0x04 // D -#define HD44780_DISPLAY_CURSOR 0x02 // C -#define HD44780_DISPLAY_BLINK 0x01 // B +#define HD44780_CMD_DISPLAY 0x08 +#define HD44780_DISPLAY_ON 0x04 // D +#define HD44780_DISPLAY_CURSOR 0x02 // C +#define HD44780_DISPLAY_BLINK 0x01 // B // Cursor or display shift -#define HD44780_CMD_MOVE 0x10 -#define HD44780_MOVE_DISPLAY 0x08 // S/C -#define HD44780_MOVE_RIGHT 0x04 // R/L +#define HD44780_CMD_MOVE 0x10 +#define HD44780_MOVE_DISPLAY 0x08 // S/C +#define HD44780_MOVE_RIGHT 0x04 // R/L // Function set -#define HD44780_CMD_FUNCTION 0x20 -#define HD44780_FUNCTION_8_BIT 0x10 // DL -#define HD44780_FUNCTION_2_LINES 0x08 // N -#define HD44780_FUNCTION_5X10_DOTS 0x04 // F +#define HD44780_CMD_FUNCTION 0x20 +#define HD44780_FUNCTION_8_BIT 0x10 // DL +#define HD44780_FUNCTION_2_LINES 0x08 // N +#define HD44780_FUNCTION_5X10_DOTS 0x04 // F // Set CGRAM address -#define HD44780_CMD_SET_CGRAM_ADDRESS 0x40 +#define HD44780_CMD_SET_CGRAM_ADDRESS 0x40 // Set DDRAM address -#define HD44780_CMD_SET_DDRAM_ADDRESS 0x80 +#define HD44780_CMD_SET_DDRAM_ADDRESS 0x80 // Bitmask for busy flag when reading -#define HD44780_BUSY_FLAG 0x80 +#define HD44780_BUSY_FLAG 0x80 /** * \brief Write a byte to the display. @@ -72,7 +72,7 @@ void hd44780_write(uint8_t data, bool isData); /** * \brief Read a byte from the display. - * + * * \param isData Whether to read the current cursor position, or the character at the cursor. * * \return If `isData` is `true`, the returned byte will be the character at the current DDRAM address. Otherwise, it will be the current DDRAM address and the busy flag. @@ -90,7 +90,7 @@ bool hd44780_busy(void); * \brief Send a command to the display. Refer to the datasheet for the valid commands. * * This function waits for the display to clear the busy flag before sending the command. - * + * * \param command The command to send. */ void hd44780_command(uint8_t command); @@ -163,7 +163,7 @@ void hd44780_init(bool cursor, bool blink); /** * \brief Move the cursor to the specified position on the display. - * + * * \param col The column number to move to, from 0 to 15 on 16x2 displays. * \param line The line number to move to, either 0 or 1 on 16x2 displays. */ @@ -179,7 +179,7 @@ void hd44780_define_char(uint8_t index, uint8_t *data); /** * \brief Print a character to the display. The newline character will move the cursor to the start of the next line. - * + * * The exact character shown may depend on the ROM code of your particular display - refer to the datasheet for the full character set. * * \param c The character to print. From e354cbe7820cec45f0514de930ba60b3c19cb290 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 19 Mar 2022 22:52:40 +1100 Subject: [PATCH 148/699] `device_ver` -> `device_version` for some more boards (#16685) --- keyboards/dyz/dyz40/info.json | 2 +- keyboards/dyz/dyz_tkl/info.json | 2 +- keyboards/dyz/selka40/info.json | 2 +- keyboards/dyz/synthesis60/info.json | 2 +- keyboards/handwired/3dortho14u/rev1/info.json | 4 ++-- keyboards/handwired/3dortho14u/rev2/info.json | 4 ++-- keyboards/handwired/baredev/rev1/info.json | 2 +- keyboards/handwired/hillside/0_1/info.json | 2 +- keyboards/handwired/pytest/info.json | 2 +- keyboards/handwired/wakizashi40/info.json | 4 ++-- keyboards/karlb/kbic65/info.json | 2 +- keyboards/splitography/info.json | 2 +- 12 files changed, 15 insertions(+), 15 deletions(-) diff --git a/keyboards/dyz/dyz40/info.json b/keyboards/dyz/dyz40/info.json index 2a30ca0bb2..db525a4707 100644 --- a/keyboards/dyz/dyz40/info.json +++ b/keyboards/dyz/dyz40/info.json @@ -20,7 +20,7 @@ "usb": { "vid": "0xD772", "pid": "0x000B", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT_all": { diff --git a/keyboards/dyz/dyz_tkl/info.json b/keyboards/dyz/dyz_tkl/info.json index 8cba9c24e7..07a1a7cb7b 100644 --- a/keyboards/dyz/dyz_tkl/info.json +++ b/keyboards/dyz/dyz_tkl/info.json @@ -17,7 +17,7 @@ "usb": { "vid": "0xD772", "pid": "0x000C", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT_all": { diff --git a/keyboards/dyz/selka40/info.json b/keyboards/dyz/selka40/info.json index b947bbb59a..740eb0d5f1 100644 --- a/keyboards/dyz/selka40/info.json +++ b/keyboards/dyz/selka40/info.json @@ -20,7 +20,7 @@ "usb": { "vid": "0xD772", "pid": "0x0012", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT_all": { diff --git a/keyboards/dyz/synthesis60/info.json b/keyboards/dyz/synthesis60/info.json index 381e7efb36..c0d9baf560 100644 --- a/keyboards/dyz/synthesis60/info.json +++ b/keyboards/dyz/synthesis60/info.json @@ -35,7 +35,7 @@ "usb": { "vid": "0xD772", "pid": "0x0017", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT_all": { diff --git a/keyboards/handwired/3dortho14u/rev1/info.json b/keyboards/handwired/3dortho14u/rev1/info.json index 72ed95e5f4..bd9220281c 100644 --- a/keyboards/handwired/3dortho14u/rev1/info.json +++ b/keyboards/handwired/3dortho14u/rev1/info.json @@ -28,9 +28,9 @@ "rows": ["B0", "B1", "B2", "B3", "B7"] }, "usb": { - "device_ver": "0x0001", + "vid": "0x6662", "pid": "0x3D14", - "vid": "0x6662" + "device_version": "0.0.1" }, "layouts": { "LAYOUT": { diff --git a/keyboards/handwired/3dortho14u/rev2/info.json b/keyboards/handwired/3dortho14u/rev2/info.json index 705d6b5570..7f241f35ff 100644 --- a/keyboards/handwired/3dortho14u/rev2/info.json +++ b/keyboards/handwired/3dortho14u/rev2/info.json @@ -28,9 +28,9 @@ "rows": ["D3", "D2", "D1", "D0", "D4", "C6", "D7", "E6", "B4", "B5"] }, "usb": { - "device_ver": "0x0001", + "vid": "0x6662", "pid": "0x3D14", - "vid": "0x6662" + "device_version": "0.0.1" }, "layouts": { "LAYOUT": { diff --git a/keyboards/handwired/baredev/rev1/info.json b/keyboards/handwired/baredev/rev1/info.json index 601b5df128..6292817538 100644 --- a/keyboards/handwired/baredev/rev1/info.json +++ b/keyboards/handwired/baredev/rev1/info.json @@ -44,7 +44,7 @@ "usb": { "vid": "0x1209", "pid": "0x4126", - "device_ver": "0x0001", + "device_version": "0.0.1", "polling_interval": 1, "shared_endpoint": { "keyboard": true diff --git a/keyboards/handwired/hillside/0_1/info.json b/keyboards/handwired/hillside/0_1/info.json index 8c00f70366..7e128d5191 100644 --- a/keyboards/handwired/hillside/0_1/info.json +++ b/keyboards/handwired/hillside/0_1/info.json @@ -18,7 +18,7 @@ "usb": { "vid": "0xFEED", "pid": "0x67C0", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "features": { diff --git a/keyboards/handwired/pytest/info.json b/keyboards/handwired/pytest/info.json index 5c941af9bf..331472762c 100644 --- a/keyboards/handwired/pytest/info.json +++ b/keyboards/handwired/pytest/info.json @@ -5,6 +5,6 @@ "usb": { "vid": "0xFEED", "pid": "0x6465", - "device_ver": "0x0001" + "device_version": "0.0.1" } } diff --git a/keyboards/handwired/wakizashi40/info.json b/keyboards/handwired/wakizashi40/info.json index b64ab55116..58eadb29e6 100644 --- a/keyboards/handwired/wakizashi40/info.json +++ b/keyboards/handwired/wakizashi40/info.json @@ -24,9 +24,9 @@ "rows": ["C0", "C1", "C2", "C3"] }, "usb": { - "device_ver": "0x0001", + "vid": "0x6662", "pid": "0x7740", - "vid": "0x6662" + "device_version": "0.0.1" }, "layout_aliases": { "LAYOUT": "LAYOUT_all" diff --git a/keyboards/karlb/kbic65/info.json b/keyboards/karlb/kbic65/info.json index 560e162a3e..857f8d3cc5 100644 --- a/keyboards/karlb/kbic65/info.json +++ b/keyboards/karlb/kbic65/info.json @@ -29,7 +29,7 @@ "usb": { "vid": "0x424B", "pid": "0xD87A", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT": { diff --git a/keyboards/splitography/info.json b/keyboards/splitography/info.json index 2d07607c29..a7f8bb7c95 100644 --- a/keyboards/splitography/info.json +++ b/keyboards/splitography/info.json @@ -23,7 +23,7 @@ "usb": { "vid": "0xFEED", "pid": "0x6060", - "device_ver": "0x0001" + "device_version": "0.0.1" }, "layouts": { "LAYOUT": { From 3502bbbd16feff23ac020ed561ebfef95cc271e8 Mon Sep 17 00:00:00 2001 From: leviport Date: Sat, 19 Mar 2022 10:37:35 -0600 Subject: [PATCH 149/699] Fix typo in docs/ref_functions.md (#16690) --- docs/ref_functions.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/ref_functions.md b/docs/ref_functions.md index 209dcef722..a25c326b43 100644 --- a/docs/ref_functions.md +++ b/docs/ref_functions.md @@ -1,6 +1,6 @@ # List of Useful Core Functions To Make Your Keyboard Better -There are a lot of hidden functions in QMK that are incredible useful, or may add a bit of functionality that you've been wanting. Functions that are specific to certain features are not included here, as those will be on their respective feature page. +There are a lot of hidden functions in QMK that are incredibly useful, or may add a bit of functionality that you've been wanting. Functions that are specific to certain features are not included here, as those will be on their respective feature page. ## (OLKB) Tri Layers :id=olkb-tri-layers From 047ef3cd121e6bed3702eaf7ed3e96cf1e765ec5 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 19 Mar 2022 17:40:47 +0000 Subject: [PATCH 150/699] VUSB - Use correct endpoint poll for VIA (#16691) --- tmk_core/protocol/vusb/protocol.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tmk_core/protocol/vusb/protocol.c b/tmk_core/protocol/vusb/protocol.c index 20d0530483..ae99680ce4 100644 --- a/tmk_core/protocol/vusb/protocol.c +++ b/tmk_core/protocol/vusb/protocol.c @@ -158,7 +158,7 @@ void protocol_task(void) { #ifdef RAW_ENABLE usbPoll(); - if (usbConfiguration && usbInterruptIsReady3()) { + if (usbConfiguration && usbInterruptIsReady4()) { raw_hid_task(); } #endif From 2f095b8925df98cf2c8c818c8fc44a9015efd6be Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 20 Mar 2022 07:58:30 +1100 Subject: [PATCH 151/699] qmk.path.FileType: fix argument handling (#16693) * qmk.path.FileType: pass in mode as first argument * Better solution * Grammar... --- lib/python/qmk/path.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/python/qmk/path.py b/lib/python/qmk/path.py index 9b94abbc12..556d0eefc8 100644 --- a/lib/python/qmk/path.py +++ b/lib/python/qmk/path.py @@ -70,9 +70,11 @@ def normpath(path): class FileType(argparse.FileType): - def __init__(self, encoding='UTF-8'): + def __init__(self, *args, **kwargs): # Use UTF8 by default for stdin - return super().__init__(encoding=encoding) + if 'encoding' not in kwargs: + kwargs['encoding'] = 'UTF-8' + return super().__init__(*args, **kwargs) def __call__(self, string): """normalize and check exists From cfe28937d51748e180e31c7939fe9e2749524877 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 20 Mar 2022 15:19:46 +1100 Subject: [PATCH 152/699] MS Sculpt Mobile refactor (#16038) --- .../handwired/ms_sculpt_mobile/astar/config.h | 6 + .../handwired/ms_sculpt_mobile/astar/rules.mk | 5 + keyboards/handwired/ms_sculpt_mobile/config.h | 17 -- .../handwired/ms_sculpt_mobile/info.json | 187 +++++++++--------- .../ms_sculpt_mobile/keymaps/default/rules.mk | 10 +- .../handwired/ms_sculpt_mobile/readme.md | 2 - keyboards/handwired/ms_sculpt_mobile/rules.mk | 20 +- .../ms_sculpt_mobile/teensy2pp/config.h | 6 + .../ms_sculpt_mobile/teensy2pp/rules.mk | 5 + 9 files changed, 124 insertions(+), 134 deletions(-) create mode 100644 keyboards/handwired/ms_sculpt_mobile/astar/config.h create mode 100644 keyboards/handwired/ms_sculpt_mobile/astar/rules.mk create mode 100644 keyboards/handwired/ms_sculpt_mobile/teensy2pp/config.h create mode 100644 keyboards/handwired/ms_sculpt_mobile/teensy2pp/rules.mk diff --git a/keyboards/handwired/ms_sculpt_mobile/astar/config.h b/keyboards/handwired/ms_sculpt_mobile/astar/config.h new file mode 100644 index 0000000000..c34b86acb2 --- /dev/null +++ b/keyboards/handwired/ms_sculpt_mobile/astar/config.h @@ -0,0 +1,6 @@ +#pragma once + +#define PRODUCT sculpt mobile astar + +#define MATRIX_ROW_PINS { D7, C6, D4, D0, D1, D3, D2, E2 } +#define MATRIX_COL_PINS { B4, B5, E6, B7, B6, D6, C7, F7, F6, F4, F5, F1, F0, D5, B0, B1, B2, B3 } diff --git a/keyboards/handwired/ms_sculpt_mobile/astar/rules.mk b/keyboards/handwired/ms_sculpt_mobile/astar/rules.mk new file mode 100644 index 0000000000..cf663a7ed6 --- /dev/null +++ b/keyboards/handwired/ms_sculpt_mobile/astar/rules.mk @@ -0,0 +1,5 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina diff --git a/keyboards/handwired/ms_sculpt_mobile/config.h b/keyboards/handwired/ms_sculpt_mobile/config.h index 13f5a588b6..df478e6d8a 100644 --- a/keyboards/handwired/ms_sculpt_mobile/config.h +++ b/keyboards/handwired/ms_sculpt_mobile/config.h @@ -29,23 +29,6 @@ along with this program. If not, see . #define MATRIX_ROWS 8 #define MATRIX_COLS 18 -#ifdef ASTAR -#define PRODUCT sculpt mobile astar - /*0 1 2 3 4 5 6 7 8 */ -#define MATRIX_ROW_PINS {D7, C6, D4, D0, D1, D3, D2, E2} -/* A B C D E F G H I J K L M N O P Q R */ -#define MATRIX_COL_PINS {B4, B5, E6, B7, B6, D6, C7, F7, F6, F4,F5, F1,F0, D5, B0, B1, B2, B3} - -#else -#define PRODUCT sculpt mobile teensypp -/* 0 1 2 3 4 5 6 7 */ -#define MATRIX_ROW_PINS { F7,F6,F4,F5,F3,F2,F1,F0} -/* A B C D E F G H I J K L M N O P Q R */ -#define MATRIX_COL_PINS { B7, D0, D1, D2, D3, D4, D5, D6, D7, E0,E1,C1, C0, C3, C2, C5, C4,C7} -#define UNUSED_PINS { B6,B5,B4,B3,B2,B1,B0 } - -#endif - /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION ROW2COL diff --git a/keyboards/handwired/ms_sculpt_mobile/info.json b/keyboards/handwired/ms_sculpt_mobile/info.json index 98137e84f8..1c171af8f3 100644 --- a/keyboards/handwired/ms_sculpt_mobile/info.json +++ b/keyboards/handwired/ms_sculpt_mobile/info.json @@ -1,94 +1,99 @@ { - "keyboard_name": "MS Sculpt Mobile", - "url": "", - "maintainer": "qmk", - "layouts": { - "LAYOUT": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":1, "y":0}, - {"label":"F2", "x":2, "y":0}, - {"label":"F3", "x":3, "y":0}, - {"label":"F4", "x":4, "y":0}, - {"label":"F5", "x":5, "y":0}, - {"label":"F6", "x":6, "y":0}, - {"label":"F7", "x":7, "y":0}, - {"label":"F8", "x":8, "y":0}, - {"label":"F9", "x":9, "y":0}, - {"label":"F10", "x":10, "y":0}, - {"label":"F11", "x":11, "y":0}, - {"label":"F12", "x":12, "y":0}, - {"label":"PrtSc", "x":13, "y":0}, - {"label":"Home", "x":14, "y":0}, - {"label":"End", "x":15, "y":0}, - {"label":"`", "x":0, "y":1}, - {"label":"1", "x":1, "y":1}, - {"label":"2", "x":2, "y":1}, - {"label":"3", "x":3, "y":1}, - {"label":"4", "x":4, "y":1}, - {"label":"5", "x":5, "y":1}, - {"label":"6", "x":6, "y":1}, - {"label":"7", "x":7, "y":1}, - {"label":"8", "x":8, "y":1}, - {"label":"9", "x":9, "y":1}, - {"label":"0", "x":10, "y":1}, - {"label":"-", "x":11, "y":1}, - {"label":"=", "x":12, "y":1}, - {"label":"Backspace", "x":13, "y":1, "w":2}, - {"label":"Del", "x":15, "y":1, "h":1.6}, - {"label":"Tab", "x":0, "y":2, "w":1.5}, - {"label":"Q", "x":1.5, "y":2}, - {"label":"W", "x":2.5, "y":2}, - {"label":"E", "x":3.5, "y":2}, - {"label":"R", "x":4.5, "y":2}, - {"label":"T", "x":5.5, "y":2}, - {"label":"Y", "x":6.5, "y":2}, - {"label":"U", "x":7.5, "y":2}, - {"label":"I", "x":8.5, "y":2}, - {"label":"O", "x":9.5, "y":2}, - {"label":"P", "x":10.5, "y":2}, - {"label":"[", "x":11.5, "y":2}, - {"label":"]", "x":12.5, "y":2}, - {"label":"\\", "x":13.5, "y":2, "w":1.5}, - {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, - {"label":"A", "x":1.75, "y":3}, - {"label":"S", "x":2.75, "y":3}, - {"label":"D", "x":3.75, "y":3}, - {"label":"F", "x":4.75, "y":3}, - {"label":"G", "x":5.75, "y":3}, - {"label":"H", "x":6.75, "y":3}, - {"label":"J", "x":7.75, "y":3}, - {"label":"K", "x":8.75, "y":3}, - {"label":"L", "x":9.75, "y":3}, - {"label":";", "x":10.75, "y":3}, - {"label":"'", "x":11.75, "y":3}, - {"label":"Enter", "x":12.75, "y":3, "w":2.25}, - {"label":"PgUp", "x":15, "y":2.6, "h":1.2}, - {"label":"LShift", "x":0, "y":4, "w":2.25}, - {"label":"Z", "x":2.25, "y":4}, - {"label":"X", "x":3.25, "y":4}, - {"label":"C", "x":4.25, "y":4}, - {"label":"V", "x":5.25, "y":4}, - {"label":"B", "x":6.25, "y":4}, - {"label":"N", "x":7.25, "y":4}, - {"label":"M", "x":8.25, "y":4}, - {"label":",", "x":9.25, "y":4}, - {"label":".", "x":10.25, "y":4}, - {"label":"/", "x":11.25, "y":4}, - {"label":"RShift", "x":12.25, "y":4, "w":1.75}, - {"label":"Up", "x":14, "y":4}, - {"label":"PgDn", "x":15, "y":3.8, "h":1.2}, - {"label":"LCtrl", "x":0, "y":5, "w":1.25}, - {"label":"LWin", "x":1.25, "y":5, "w":1.25}, - {"label":"LAlt", "x":2.5, "y":5, "w":1.25}, - {"label":"Space", "x":3.75, "y":5, "w":5.5}, - {"label":"RAlt", "x":9.25, "y":5, "w":1.25}, - {"label":"Fn", "x":10.5, "y":5, "w":1.25}, - {"label":"RCtrl", "x":11.75, "y":5, "w":1.25}, - {"label":"Left", "x":13, "y":5}, - {"label":"Down", "x":14, "y":5}, - {"label":"Right", "x":15, "y":5} - ] + "keyboard_name": "MS Sculpt Mobile", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6, "y": 0}, + {"x": 7, "y": 0}, + {"x": 8, "y": 0}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + {"x": 15, "y": 0}, + + {"x": 0, "y": 1}, + {"x": 1, "y": 1}, + {"x": 2, "y": 1}, + {"x": 3, "y": 1}, + {"x": 4, "y": 1}, + {"x": 5, "y": 1}, + {"x": 6, "y": 1}, + {"x": 7, "y": 1}, + {"x": 8, "y": 1}, + {"x": 9, "y": 1}, + {"x": 10, "y": 1}, + {"x": 11, "y": 1}, + {"x": 12, "y": 1}, + {"x": 13, "y": 1, "w": 2}, + {"x": 15, "y": 1, "h": 1.6}, + + {"x": 0, "y": 2, "w": 1.5}, + {"x": 1.5, "y": 2}, + {"x": 2.5, "y": 2}, + {"x": 3.5, "y": 2}, + {"x": 4.5, "y": 2}, + {"x": 5.5, "y": 2}, + {"x": 6.5, "y": 2}, + {"x": 7.5, "y": 2}, + {"x": 8.5, "y": 2}, + {"x": 9.5, "y": 2}, + {"x": 10.5, "y": 2}, + {"x": 11.5, "y": 2}, + {"x": 12.5, "y": 2}, + {"x": 13.5, "y": 2, "w": 1.5}, + + {"x": 0, "y": 3, "w": 1.75}, + {"x": 1.75, "y": 3}, + {"x": 2.75, "y": 3}, + {"x": 3.75, "y": 3}, + {"x": 4.75, "y": 3}, + {"x": 5.75, "y": 3}, + {"x": 6.75, "y": 3}, + {"x": 7.75, "y": 3}, + {"x": 8.75, "y": 3}, + {"x": 9.75, "y": 3}, + {"x": 10.75, "y": 3}, + {"x": 11.75, "y": 3}, + {"x": 12.75, "y": 3, "w": 2.25}, + {"x": 15, "y": 2.6, "h": 1.2}, + + {"x": 0, "y": 4, "w": 2.25}, + {"x": 2.25, "y": 4}, + {"x": 3.25, "y": 4}, + {"x": 4.25, "y": 4}, + {"x": 5.25, "y": 4}, + {"x": 6.25, "y": 4}, + {"x": 7.25, "y": 4}, + {"x": 8.25, "y": 4}, + {"x": 9.25, "y": 4}, + {"x": 10.25, "y": 4}, + {"x": 11.25, "y": 4}, + {"x": 12.25, "y": 4, "w": 1.75}, + {"x": 14, "y": 4}, + {"x": 15, "y": 3.8, "h": 1.2}, + + {"x": 0, "y": 5, "w": 1.25}, + {"x": 1.25, "y": 5, "w": 1.25}, + {"x": 2.5, "y": 5, "w": 1.25}, + {"x": 3.75, "y": 5, "w": 5.5}, + {"x": 9.25, "y": 5, "w": 1.25}, + {"x": 10.5, "y": 5, "w": 1.25}, + {"x": 11.75, "y": 5, "w": 1.25}, + {"x": 13, "y": 5}, + {"x": 14, "y": 5}, + {"x": 15, "y": 5} + ] + } } - } } diff --git a/keyboards/handwired/ms_sculpt_mobile/keymaps/default/rules.mk b/keyboards/handwired/ms_sculpt_mobile/keymaps/default/rules.mk index 3224016bbe..a9c1087a2a 100644 --- a/keyboards/handwired/ms_sculpt_mobile/keymaps/default/rules.mk +++ b/keyboards/handwired/ms_sculpt_mobile/keymaps/default/rules.mk @@ -1,9 +1,3 @@ -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys(+4700) -EXTRAKEY_ENABLE = yes # Audio control and System control(+450) -CONSOLE_ENABLE = no # Console for debug(+400) -COMMAND_ENABLE = yes # Commands for debug and configuration +MOUSEKEY_ENABLE = yes +CONSOLE_ENABLE = no NKRO_ENABLE = yes -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -AUDIO_ENABLE = no # Audio output -RGBLIGHT_ENABLE = no # Enable WS2812 RGB underlight. diff --git a/keyboards/handwired/ms_sculpt_mobile/readme.md b/keyboards/handwired/ms_sculpt_mobile/readme.md index 98fd1f8d1a..0345ded36b 100644 --- a/keyboards/handwired/ms_sculpt_mobile/readme.md +++ b/keyboards/handwired/ms_sculpt_mobile/readme.md @@ -46,8 +46,6 @@ The Astar mini has all pins exposed , so you can do 18x8 If you want a speaker, LEDs, etc., you'll need to free up a pin. I recommend joining columns R and L to the same pin. -Building - add ASTAR=1 to the compile line or leave out for teensy2++ - Make example for this keyboard (after setting up your build environment): make handwired/ms_sculpt_mobile:default diff --git a/keyboards/handwired/ms_sculpt_mobile/rules.mk b/keyboards/handwired/ms_sculpt_mobile/rules.mk index 6498fa6c76..6fd84c8244 100644 --- a/keyboards/handwired/ms_sculpt_mobile/rules.mk +++ b/keyboards/handwired/ms_sculpt_mobile/rules.mk @@ -1,26 +1,14 @@ -# MCU name -ifdef ASTAR - MCU = atmega32u4 - CFLAGS = -D ASTAR -else - MCU = at90usb1286 -endif - -# Bootloader selection -ifdef ASTAR - BOOTLOADER = caterina -else - BOOTLOADER = atmel-dfu -endif - # Build Options # change yes to no to disable # BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = no # Mouse keys +MOUSEKEY_ENABLE = no # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = yes # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +DEFAULT_FOLDER = handwired/ms_sculpt_mobile/teensy2pp diff --git a/keyboards/handwired/ms_sculpt_mobile/teensy2pp/config.h b/keyboards/handwired/ms_sculpt_mobile/teensy2pp/config.h new file mode 100644 index 0000000000..a69d3fd3b0 --- /dev/null +++ b/keyboards/handwired/ms_sculpt_mobile/teensy2pp/config.h @@ -0,0 +1,6 @@ +#pragma once + +#define PRODUCT sculpt mobile teensypp + +#define MATRIX_ROW_PINS { F7, F6, F4, F5, F3, F2, F1, F0 } +#define MATRIX_COL_PINS { B7, D0, D1, D2, D3, D4, D5, D6, D7, E0, E1, C1, C0, C3, C2, C5, C4, C7 } diff --git a/keyboards/handwired/ms_sculpt_mobile/teensy2pp/rules.mk b/keyboards/handwired/ms_sculpt_mobile/teensy2pp/rules.mk new file mode 100644 index 0000000000..149471682d --- /dev/null +++ b/keyboards/handwired/ms_sculpt_mobile/teensy2pp/rules.mk @@ -0,0 +1,5 @@ +# MCU name +MCU = at90usb1286 + +# Bootloader selection +BOOTLOADER = halfkay From 6125f7bf4d15b4ab9403186a5282bb75bc00bd07 Mon Sep 17 00:00:00 2001 From: Joshua Barber Date: Sun, 20 Mar 2022 17:02:46 +0000 Subject: [PATCH 153/699] Add MutePad keyboard (Handwired) (#16590) * Add MutePad keyboard * Update info.json and readme * Move mutepad to handwired folder * Address PR comments --- keyboards/handwired/mutepad/config.h | 90 +++++++++++++++++++ keyboards/handwired/mutepad/info.json | 15 ++++ .../mutepad/keymaps/default/keymap.c | 43 +++++++++ .../mutepad/keymaps/default/readme.md | 1 + keyboards/handwired/mutepad/mutepad.c | 4 + keyboards/handwired/mutepad/mutepad.h | 19 ++++ keyboards/handwired/mutepad/readme.md | 33 +++++++ keyboards/handwired/mutepad/rules.mk | 19 ++++ 8 files changed, 224 insertions(+) create mode 100644 keyboards/handwired/mutepad/config.h create mode 100644 keyboards/handwired/mutepad/info.json create mode 100644 keyboards/handwired/mutepad/keymaps/default/keymap.c create mode 100644 keyboards/handwired/mutepad/keymaps/default/readme.md create mode 100644 keyboards/handwired/mutepad/mutepad.c create mode 100644 keyboards/handwired/mutepad/mutepad.h create mode 100644 keyboards/handwired/mutepad/readme.md create mode 100644 keyboards/handwired/mutepad/rules.mk diff --git a/keyboards/handwired/mutepad/config.h b/keyboards/handwired/mutepad/config.h new file mode 100644 index 0000000000..7113063223 --- /dev/null +++ b/keyboards/handwired/mutepad/config.h @@ -0,0 +1,90 @@ +// Copyright 2022 JoshwJB (@JoshwJB) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER JoshwJB +#define PRODUCT MutePad + +/* key matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 4 + +/* + * 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 \ + { F6 } +#define MATRIX_COL_PINS \ + { B1, B3, B2, B6 } +#define UNUSED_PINS + +/* encoder support */ +#define ENCODERS_PAD_A \ + { F4 } +#define ENCODERS_PAD_B \ + { F5 } + +#define ENCODER_RESOLUTION 2 + +#define TAP_CODE_DELAY 10 + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +/* + * 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 + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +//#define NO_DEBUG + +/* disable print */ +//#define NO_PRINT + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/handwired/mutepad/info.json b/keyboards/handwired/mutepad/info.json new file mode 100644 index 0000000000..b4a75a10e2 --- /dev/null +++ b/keyboards/handwired/mutepad/info.json @@ -0,0 +1,15 @@ +{ + "keyboard_name": "MutePad", + "url": "https://github.com/JoshwJB/MutePad", + "maintainer": "JoshwJB", + "layouts": { + "LAYOUT": { + "layout": [ + {"label": "k00", "x": 0, "y": 0}, + {"label": "k01", "x": 1, "y": 0}, + {"label": "k02", "x": 2, "y": 0}, + {"label": "k03", "x": 3, "y": 0}, + ] + } + } +} diff --git a/keyboards/handwired/mutepad/keymaps/default/keymap.c b/keyboards/handwired/mutepad/keymaps/default/keymap.c new file mode 100644 index 0000000000..d26e230e53 --- /dev/null +++ b/keyboards/handwired/mutepad/keymaps/default/keymap.c @@ -0,0 +1,43 @@ +// Copyright 2022 Joshua Barber (@JoshwJB) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { _BASE }; + +enum custom_keycodes { MUTE_GOOGLE_MEET = 0, MUTE_TEAMS = 1 }; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case MUTE_GOOGLE_MEET: + if (record->event.pressed) { + tap_code16(G(KC_D)); + } + break; + case MUTE_TEAMS: + if (record->event.pressed) { + tap_code16(C(S(KC_M))); + } + break; + } + + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT(MUTE_TEAMS, KC_F23, KC_F24, KC_MPLY)}; + +#ifdef ENCODER_ENABLE + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + return true; +} + +#endif diff --git a/keyboards/handwired/mutepad/keymaps/default/readme.md b/keyboards/handwired/mutepad/keymaps/default/readme.md new file mode 100644 index 0000000000..c3c9ec6aec --- /dev/null +++ b/keyboards/handwired/mutepad/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for MutePad diff --git a/keyboards/handwired/mutepad/mutepad.c b/keyboards/handwired/mutepad/mutepad.c new file mode 100644 index 0000000000..09210c3f4f --- /dev/null +++ b/keyboards/handwired/mutepad/mutepad.c @@ -0,0 +1,4 @@ +// Copyright 2022 JoshwJB (@JoshwJB) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "mutepad.h" diff --git a/keyboards/handwired/mutepad/mutepad.h b/keyboards/handwired/mutepad/mutepad.h new file mode 100644 index 0000000000..57c317cb60 --- /dev/null +++ b/keyboards/handwired/mutepad/mutepad.h @@ -0,0 +1,19 @@ +// Copyright 2022 JoshwJB (@JoshwJB) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT(K00, K01, K02, K03) \ + { \ + { K00, K01, K02, K03 } \ + } diff --git a/keyboards/handwired/mutepad/readme.md b/keyboards/handwired/mutepad/readme.md new file mode 100644 index 0000000000..cbd1c9f316 --- /dev/null +++ b/keyboards/handwired/mutepad/readme.md @@ -0,0 +1,33 @@ +# MutePad + +[MutePad Repo](https://github.com/JoshwJB/MutePad) + +A 3D printed under desk mounted keypad with rotary encoder, for muting applications (discord, zoom etc.) and adjusting volume. + +* Keyboard Maintainer: [JoshwJB](https://github.com/JoshwJB) +* Hardware Supported: ProMicro +* Hardware Availability: Handwired - see [MutePad Repo](https://github.com/JoshwJB/MutePad) + +Make example for this keyboard (after setting up your build environment): + + make handwired/mutepad:default + +Flashing example for this keyboard: + + make handwired/mutepad:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly short the ground and reset on the ProMicro + +## Images +![image](https://user-images.githubusercontent.com/15612025/157335123-a76ce059-86b4-4484-9bb2-0abff8a13cc8.png) + +### Wiring +![image](https://user-images.githubusercontent.com/15612025/157336673-ad348e3d-4314-4703-afe0-a43a6f73b892.png) +![image](https://user-images.githubusercontent.com/15612025/157335150-8491553f-a7dc-462a-a6af-bc4be223b703.png) diff --git a/keyboards/handwired/mutepad/rules.mk b/keyboards/handwired/mutepad/rules.mk new file mode 100644 index 0000000000..1a63bd74b1 --- /dev/null +++ b/keyboards/handwired/mutepad/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes From 1bc8793f83b205bb1c1dd18a6f9f3db14bbafe91 Mon Sep 17 00:00:00 2001 From: Alabahuy Date: Mon, 21 Mar 2022 00:05:56 +0700 Subject: [PATCH 154/699] Add Rart75 hotswap and support via (#16619) * Add Keyboard Rart75 Hotswap version * Update readme * Update config and readme * Update info.json * update readme and keymaps --- keyboards/rart/rart75hs/config.h | 75 ++++++++++++++ keyboards/rart/rart75hs/info.json | 99 +++++++++++++++++++ .../rart/rart75hs/keymaps/default/keymap.c | 37 +++++++ keyboards/rart/rart75hs/keymaps/via/keymap.c | 55 +++++++++++ keyboards/rart/rart75hs/keymaps/via/rules.mk | 2 + keyboards/rart/rart75hs/rart75hs.c | 31 ++++++ keyboards/rart/rart75hs/rart75hs.h | 34 +++++++ keyboards/rart/rart75hs/readme.md | 30 ++++++ keyboards/rart/rart75hs/rules.mk | 22 +++++ 9 files changed, 385 insertions(+) create mode 100644 keyboards/rart/rart75hs/config.h create mode 100644 keyboards/rart/rart75hs/info.json create mode 100644 keyboards/rart/rart75hs/keymaps/default/keymap.c create mode 100644 keyboards/rart/rart75hs/keymaps/via/keymap.c create mode 100644 keyboards/rart/rart75hs/keymaps/via/rules.mk create mode 100644 keyboards/rart/rart75hs/rart75hs.c create mode 100644 keyboards/rart/rart75hs/rart75hs.h create mode 100644 keyboards/rart/rart75hs/readme.md create mode 100644 keyboards/rart/rart75hs/rules.mk diff --git a/keyboards/rart/rart75hs/config.h b/keyboards/rart/rart75hs/config.h new file mode 100644 index 0000000000..d08e0612a2 --- /dev/null +++ b/keyboards/rart/rart75hs/config.h @@ -0,0 +1,75 @@ +/* +Copyright 2022 Alabahuy + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x414C // "AL" +#define PRODUCT_ID 0x5575 // "75" +#define DEVICE_VER 0x0003 +#define MANUFACTURER Alabahuy +#define PRODUCT RART75 Hotswap + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 16 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { D5, D6, D7, D0, C5, C4 } +#define MATRIX_COL_PINS { B4, B3, B2, B1, B0, A0, A1, A2, A3, A4, A5, A6, A7, C7, C6, C3 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + +#define LED_CAPS_LOCK_PIN D4 +#define LED_PIN_ON_STATE 0 + +#define ENCODERS_PAD_A { C1 } +#define ENCODERS_PAD_B { C2 } +#define ENCODER_RESOLUTION 4 //default/suggested + +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 1 + +#define RGB_DI_PIN C0 +#ifdef RGB_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_TWINKLE +/* You can change the number of RGB strip */ +#define RGBLED_NUM 11 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_LIMIT_VAL 240 +#define RGBLIGHT_SLEEP +#endif diff --git a/keyboards/rart/rart75hs/info.json b/keyboards/rart/rart75hs/info.json new file mode 100644 index 0000000000..2a8cae96f8 --- /dev/null +++ b/keyboards/rart/rart75hs/info.json @@ -0,0 +1,99 @@ +{ + "keyboard_name": "RART75 Hotswap", + "url": "", + "maintainer": "Alabahuy", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label" : "Esc", "x":0, "y":0}, + {"label" : "F1", "x":1.25, "y":0}, + {"label" : "F2", "x":2.25, "y":0}, + {"label" : "F3", "x":3.25, "y":0}, + {"label" : "F4", "x":4.25, "y":0}, + {"label" : "F5", "x":5.5, "y":0}, + {"label" : "F6", "x":6.5, "y":0}, + {"label" : "F7", "x":7.5, "y":0}, + {"label" : "F8", "x":8.5, "y":0}, + {"label" : "F9", "x":9.75, "y":0}, + {"label" : "F10", "x":10.75, "y":0}, + {"label" : "F11", "x":11.75, "y":0}, + {"label" : "F12", "x":12.75, "y":0}, + {"label" : "Delete", "x":14, "y":0}, + {"label" : "Encoder", "x":15.5, "y":0}, + + {"label" : "`", "x":0, "y":1.25}, + {"label" : "1", "x":1, "y":1.25}, + {"label" : "2", "x":2, "y":1.25}, + {"label" : "3", "x":3, "y":1.25}, + {"label" : "4", "x":4, "y":1.25}, + {"label" : "5", "x":5, "y":1.25}, + {"label" : "6", "x":6, "y":1.25}, + {"label" : "7", "x":7, "y":1.25}, + {"label" : "8", "x":8, "y":1.25}, + {"label" : "9", "x":9, "y":1.25}, + {"label" : "0", "x":10, "y":1.25}, + {"label" : "-", "x":11, "y":1.25}, + {"label" : "=", "x":12, "y":1.25}, + {"label" : "Backspace", "x":13, "y":1.25, "w":2}, + {"label" : "Page up", "x":15.5, "y":1.25}, + + {"label" : "Tab", "x":0, "y":2.25, "w":1.5}, + {"label" : "Q", "x":1.5, "y":2.25}, + {"label" : "W", "x":2.5, "y":2.25}, + {"label" : "E", "x":3.5, "y":2.25}, + {"label" : "R", "x":4.5, "y":2.25}, + {"label" : "T", "x":5.5, "y":2.25}, + {"label" : "Y", "x":6.5, "y":2.25}, + {"label" : "U", "x":7.5, "y":2.25}, + {"label" : "I", "x":8.5, "y":2.25}, + {"label" : "O", "x":9.5, "y":2.25}, + {"label" : "P", "x":10.5, "y":2.25}, + {"label" : "[", "x":11.5, "y":2.25}, + {"label" : "]", "x":12.5, "y":2.25}, + {"label" : "|", "x":13.5, "y":2.25, "w":1.5}, + {"label" : "Page down", "x":15.5, "y":2.25}, + + {"label" : "Caps lock", "x":0, "y":3.25, "w":1.75}, + {"label" : "A", "x":1.75, "y":3.25}, + {"label" : "S", "x":2.75, "y":3.25}, + {"label" : "D", "x":3.75, "y":3.25}, + {"label" : "F", "x":4.75, "y":3.25}, + {"label" : "G", "x":5.75, "y":3.25}, + {"label" : "H", "x":6.75, "y":3.25}, + {"label" : "J", "x":7.75, "y":3.25}, + {"label" : "K", "x":8.75, "y":3.25}, + {"label" : "L", "x":9.75, "y":3.25}, + {"label" : ";", "x":10.75, "y":3.25}, + {"label" : "'", "x":11.75, "y":3.25}, + {"label" : "Enter", "x":12.75, "y":3.25, "w":2.25}, + {"label" : "Home", "x":15.5, "y":3.25}, + + {"label" : "Shift", "x":0, "y":4.25, "w":2.25}, + {"label" : "Z", "x":2.25, "y":4.25}, + {"label" : "X", "x":3.25, "y":4.25}, + {"label" : "C", "x":4.25, "y":4.25}, + {"label" : "V", "x":5.25, "y":4.25}, + {"label" : "B", "x":6.25, "y":4.25}, + {"label" : "N", "x":7.25, "y":4.25}, + {"label" : "M", "x":8.25, "y":4.25}, + {"label" : ",", "x":9.25, "y":4.25}, + {"label" : ".", "x":10.25, "y":4.25}, + {"label" : "/", "x":11.25, "y":4.25}, + {"label" : "Shift", "x":12.25, "y":4.25, "w":1.75}, + {"label" : "Up", "x":14.25, "y":4.5}, + {"label" : "End", "x":15.5, "y":4.25}, + + {"label" : "Ctrl", "x":0, "y":5.25, "w":1.25}, + {"label" : "Windows", "x":1.25, "y":5.25, "w":1.25}, + {"label" : "Alt", "x":2.5, "y":5.25, "w":1.25}, + {"label" : "Space", "x":3.75, "y":5.25, "w":6.25}, + {"label" : "Alt", "x":10, "y":5.25 }, + {"label" : "Windows","x":11, "y":5.25 }, + {"label" : "Ctrl", "x":12, "y":5.25 }, + {"label" : "Left", "x":13.25, "y":5.5 }, + {"label" : "Down", "x":14.25, "y":5.5 }, + {"label" : "Right", "x":15.25, "y":5.5 } + ] + } + } +} diff --git a/keyboards/rart/rart75hs/keymaps/default/keymap.c b/keyboards/rart/rart75hs/keymaps/default/keymap.c new file mode 100644 index 0000000000..c6f334e98f --- /dev/null +++ b/keyboards/rart/rart75hs/keymaps/default/keymap.c @@ -0,0 +1,37 @@ +/* Copyright 2022 Alabahuy + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_INS, KC_MPLY, + KC_GRV, 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_HOME, + 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, KC_END, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/rart/rart75hs/keymaps/via/keymap.c b/keyboards/rart/rart75hs/keymaps/via/keymap.c new file mode 100644 index 0000000000..27a4f99fa6 --- /dev/null +++ b/keyboards/rart/rart75hs/keymaps/via/keymap.c @@ -0,0 +1,55 @@ +/* Copyright 2022 Alabahuy + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_INS, KC_MPLY, + KC_GRV, 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_HOME, + 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, KC_END, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; diff --git a/keyboards/rart/rart75hs/keymaps/via/rules.mk b/keyboards/rart/rart75hs/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/rart/rart75hs/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/rart/rart75hs/rart75hs.c b/keyboards/rart/rart75hs/rart75hs.c new file mode 100644 index 0000000000..f2475ab960 --- /dev/null +++ b/keyboards/rart/rart75hs/rart75hs.c @@ -0,0 +1,31 @@ +/* Copyright 2022 Alabahuy + * 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 . + */ +#include "rart75hs.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + switch (index) { + case 0: + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + break; + } + return true; +} +#endif diff --git a/keyboards/rart/rart75hs/rart75hs.h b/keyboards/rart/rart75hs/rart75hs.h new file mode 100644 index 0000000000..f3b25df1b6 --- /dev/null +++ b/keyboards/rart/rart75hs/rart75hs.h @@ -0,0 +1,34 @@ +/* Copyright 2022 Alabahuy + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4E, K4F, \ + K50, K51, K52, K54, K58, K59, K5A, K5B, K5E, K5F \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, KC_NO, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, KC_NO, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, KC_NO, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, KC_NO, KC_NO, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, KC_NO, KC_NO, K4E, K4F }, \ + { K50, K51, K52, KC_NO, K54, KC_NO, KC_NO, KC_NO, K58, K59, K5A, K5B, KC_NO, KC_NO, K5E, K5F }, \ +} diff --git a/keyboards/rart/rart75hs/readme.md b/keyboards/rart/rart75hs/readme.md new file mode 100644 index 0000000000..af8db99a02 --- /dev/null +++ b/keyboards/rart/rart75hs/readme.md @@ -0,0 +1,30 @@ +# [RART 75 Hotswap](https://github.com/alabahuy/RART/tree/master/RART75) + +![RART 75](https://i.imgur.com/FVWlm8Uh.jpeg) + +75% pcb with encoder, based on IMKG (Indonesia Mechanical Keyboard Group) + +* Keyboard Maintainer: [Alabahuy](https://github.com/alabahuy) +* Hardware Supported: RART75 PCB, Atmega32a, Type C, Encoders +* Hardware Availability: Private GB + +Make example for this keyboard (after setting up your build environment): + + make rart/rart75hs:default + +Flashing example for this keyboard: + + make rart/rart75hs:default:flash + +## Bootloader + +Enter the bootloader in 3 ways: + +* To Enter the bootloader you can short and hold boot pin, short reset pin, release reset and boot pin. + +* Bootmagic reset, hold down the key at (0,0) in the matrix (ESC) and plug in the keyboard. + +* Bootloader reset on the matrix, hold down key at (0,1) and plug in the keyboard + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/rart/rart75hs/rules.mk b/keyboards/rart/rart75hs/rules.mk new file mode 100644 index 0000000000..3a9dc7e9bc --- /dev/null +++ b/keyboards/rart/rart75hs/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32a + +# Bootloader selection +BOOTLOADER = usbasploader + +# Processor frequency +F_CPU = 16000000 + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes From 669ad3c8052fa36e03c105cb00b60b178aaf20cc Mon Sep 17 00:00:00 2001 From: Droxx <101306764+furfuzz@users.noreply.github.com> Date: Sun, 20 Mar 2022 11:24:09 -0600 Subject: [PATCH 155/699] Droxx keymap (#16607) * add droxx kaymap * add droxx keymap * fixed config.h * fixed rules.mk * fixed rules.mk * updated readme.md * Update config.h * Update keymap.c * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update readme.md * Update config.h * Update readme.md * Update keymap.c --- .../kbdfans/kbd67/rev2/keymaps/droxx/config.h | 30 ++++++++ .../kbdfans/kbd67/rev2/keymaps/droxx/keymap.c | 71 +++++++++++++++++++ .../kbd67/rev2/keymaps/droxx/readme.md | 30 ++++++++ .../kbdfans/kbd67/rev2/keymaps/droxx/rules.mk | 3 + 4 files changed, 134 insertions(+) create mode 100644 keyboards/kbdfans/kbd67/rev2/keymaps/droxx/config.h create mode 100644 keyboards/kbdfans/kbd67/rev2/keymaps/droxx/keymap.c create mode 100644 keyboards/kbdfans/kbd67/rev2/keymaps/droxx/readme.md create mode 100644 keyboards/kbdfans/kbd67/rev2/keymaps/droxx/rules.mk diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/config.h b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/config.h new file mode 100644 index 0000000000..911051c31a --- /dev/null +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/config.h @@ -0,0 +1,30 @@ +/* +Copyright 2022 Alex K + +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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#undef VENDOR_ID +#undef MANUFACTURER +#undef PRODUCT + +#define VENDOR_ID 0xAF88 +#define MANUFACTURER Droxx-FurFuzz +#define PRODUCT Carbon v2 4rk + +/* force N key rollover even on startup regardless of EEPROM setting */ +#define FORCE_NKRO diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/keymap.c new file mode 100644 index 0000000000..1c6e2b982d --- /dev/null +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/keymap.c @@ -0,0 +1,71 @@ +// KBD67 Rev 2 ANSI Layout + +/* Copyright 2022 Alex K + * + * 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 . + */ + +#include QMK_KEYBOARD_H +// #include "droxx.h" + +// make keycodes easier to change for the future +#define DRXX KC_TRNS + +// enumerate custom layer names for the keymap +enum keymap_layers { + _DRXXMAIN = 0, + _DRXXFN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Keymap Base Layer + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │Esc│! 1│@ 2│# 3│$ 4│% 5│^ 6│& 7│* 8│( 9│) 0│_ -│+ =│ BackSp│Hom│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │{ [│} ]│ BkSl│PgU│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │: ;│" '│ Enter│PgD│ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │Shift │ Z │ X │ C │ V │ B │ N │ M │< ,│> .│? /│ Shift│ ↑ │End│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * │Ctrl│ Win│ Alt│ Space │Alt│Fn │Ctl│ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ +[_DRXXMAIN] = LAYOUT_65_ansi( + 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_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_DRXXFN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + /* Keymap Fn Layer + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │~ `│ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│ Del│Ins│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │ │RM-│RB+│RM+│ │RTg│ │ │ │ │ │ │ │ │Pau│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │ │RS-│RB-│RS+│ │ │ │ │ │ │ │ │ │SLk│ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │ │ │DGu│EGu│ │ │ │ │ │ │ │ │ │PSr│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * │ │ │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ +[_DRXXFN] = LAYOUT_65_ansi( + KC_GRV, 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_INS, + DRXX , RGB_RMOD, RGB_VAI, RGB_MOD, DRXX, RGB_TOG, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, KC_PAUS, + DRXX, RGB_SPD, RGB_VAD, RGB_SPI, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, KC_SLCK, + DRXX, DRXX, GUI_OFF, GUI_ON, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, KC_PSCR, + DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX, DRXX), +}; diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/readme.md b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/readme.md new file mode 100644 index 0000000000..26d686c977 --- /dev/null +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/readme.md @@ -0,0 +1,30 @@ +## Droxx's ANSI style keymap for the KBD67 REV 2 PCB + +* An ANSI keymap layout made by Alex for the KBD67 Rev 2 +* This keymap features two layers using basic Fn alternate keys on the second layer as well as lighting control + +![KBD67Rev2 Layout](https://i.imgur.com/DPSMhIX.png) + +### Layer 0 (_DRXXMAIN) + +The base QWERTY layer + +* Basic qwerty key layout with nothing other than an Fn key +* Fn on the bottom row activates layer 1 + +### Layer 1 (_DRXXFN) + +The function layer + +* Backspace will trigger KC_DEL until I find the KC_HOME key less useful. +* Pressing T will toggle the keyboard underglow feature on and off. +* Keys Q and E are used to change the underglow style of the keyboard. +* Keys W and S modify the brightness of the underglow. +* Keys A and D change the speed of the LED RGB animation. + +~~When Fn is held on layer 0, the arrow keys become a control surface for the LED baclighting~~ +~~The up arrow is used to cycle backlight modes, down arrow for toggling the backlight on or off,~~ +~~and the right and left for increasing and decreasing the brightness respectively.~~[^note] +* X is used to disable the GUI key and C is used to enable the GUI key. + +[^note]: I don't have in-switch LEDs installed? diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/rules.mk b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/rules.mk new file mode 100644 index 0000000000..c9b5587d59 --- /dev/null +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/droxx/rules.mk @@ -0,0 +1,3 @@ +MOUSEKEY_ENABLE = no +BACKLIGHT_ENABLE = no +RGBLIGHT_ENABLE = yes From 7eb6f86bc0aac3ff83abe4365cd11c5c195dc403 Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Mon, 21 Mar 2022 17:05:38 +0900 Subject: [PATCH 156/699] [Keyboard] add oled_task_kb() into keyboards/helix/rev2/rev2.c (#16697) --- .../helix/rev2/keymaps/default/oled_display.c | 6 ++--- keyboards/helix/rev2/rev2.c | 24 +++++++++++++++++++ keyboards/helix/rev2/rev2.h | 4 ++++ 3 files changed, 30 insertions(+), 4 deletions(-) diff --git a/keyboards/helix/rev2/keymaps/default/oled_display.c b/keyboards/helix/rev2/keymaps/default/oled_display.c index 4ee3f002d6..824d2e4d86 100644 --- a/keyboards/helix/rev2/keymaps/default/oled_display.c +++ b/keyboards/helix/rev2/keymaps/default/oled_display.c @@ -74,9 +74,6 @@ void matrix_update(struct CharacterMatrix *dest, # ifdef SSD1306OLED static void render_logo(struct CharacterMatrix *matrix) { -# else -static void render_logo(void) { -# endif static const char helix_logo[] PROGMEM ={ 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, @@ -85,6 +82,7 @@ static void render_logo(void) { 0}; oled_write_P(helix_logo, false); } +# endif # ifdef SSD1306OLED static void render_rgbled_status(bool full, struct CharacterMatrix *matrix) { @@ -219,7 +217,7 @@ bool oled_task_user(void) { if (is_keyboard_master()) { render_status(); } else { - render_logo(); + render_helix_logo(); render_rgbled_status(false); render_layer_status(); } diff --git a/keyboards/helix/rev2/rev2.c b/keyboards/helix/rev2/rev2.c index f579027c71..ba29f3c7de 100644 --- a/keyboards/helix/rev2/rev2.c +++ b/keyboards/helix/rev2/rev2.c @@ -64,3 +64,27 @@ void matrix_slave_scan_user(void) { matrix_scan_user(); } #endif + +#ifdef OLED_ENABLE +void render_helix_logo(void) { + static const char helix_logo[] PROGMEM ={ + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, + 0}; + oled_write_P(helix_logo, false); +} + +bool oled_task_kb(void) { + if (oled_task_user()) { + /* keymap/user level oled_task_user() dose not exist */ + led_t led_state = host_keyboard_led_state(); + oled_write_P(led_state.num_lock ? PSTR("NUMLOCK") : PSTR(" "), false); + oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false); + oled_write_P(led_state.scroll_lock ? PSTR("SCLK") : PSTR(" "), false); + oled_write_P(PSTR("\n"), false); + render_helix_logo(); + } + return false; +} +#endif /* end of OLED_ENABLE */ diff --git a/keyboards/helix/rev2/rev2.h b/keyboards/helix/rev2/rev2.h index 5c7cc93d17..fccbaf1ac4 100644 --- a/keyboards/helix/rev2/rev2.h +++ b/keyboards/helix/rev2/rev2.h @@ -20,6 +20,10 @@ bool is_mac_mode(void); void set_mac_mode_kb(bool macmode); +#ifdef OLED_ENABLE +void render_helix_logo(void); +#endif + #ifndef SPLIT_KEYBOARD extern bool is_helix_master(void); #define is_keyboard_master() is_helix_master() From 4f8cc32cf50fb2b6eb3764a7d971c41121c9bc89 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 21 Mar 2022 10:57:41 +0000 Subject: [PATCH 157/699] Extend 'qmk info' to handle keymap level overrides (#16702) --- lib/python/qmk/cli/generate/config_h.py | 10 ++--- lib/python/qmk/cli/generate/rules_mk.py | 10 ++--- lib/python/qmk/cli/info.py | 16 ++++++-- lib/python/qmk/info.py | 49 ++++++++++++++++++++----- 4 files changed, 58 insertions(+), 27 deletions(-) diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index adefdb5732..20c9595ed7 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py @@ -5,10 +5,9 @@ from pathlib import Path from dotty_dict import dotty from milc import cli -from qmk.info import info_json -from qmk.json_schema import json_load, validate +from qmk.info import info_json, keymap_json_config +from qmk.json_schema import json_load from qmk.keyboard import keyboard_completer, keyboard_folder -from qmk.keymap import locate_keymap from qmk.commands import dump_lines from qmk.path import normpath from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE @@ -180,10 +179,7 @@ def generate_config_h(cli): """ # Determine our keyboard/keymap if cli.args.keymap: - km = locate_keymap(cli.args.keyboard, cli.args.keymap) - km_json = json_load(km) - validate(km_json, 'qmk.keymap.v1') - kb_info_json = dotty(km_json.get('config', {})) + kb_info_json = dotty(keymap_json_config(cli.args.keyboard, cli.args.keymap)) else: kb_info_json = dotty(info_json(cli.args.keyboard)) diff --git a/lib/python/qmk/cli/generate/rules_mk.py b/lib/python/qmk/cli/generate/rules_mk.py index 6f342c6567..9623d00fb5 100755 --- a/lib/python/qmk/cli/generate/rules_mk.py +++ b/lib/python/qmk/cli/generate/rules_mk.py @@ -5,10 +5,9 @@ from pathlib import Path from dotty_dict import dotty from milc import cli -from qmk.info import info_json -from qmk.json_schema import json_load, validate +from qmk.info import info_json, keymap_json_config +from qmk.json_schema import json_load from qmk.keyboard import keyboard_completer, keyboard_folder -from qmk.keymap import locate_keymap from qmk.commands import dump_lines from qmk.path import normpath from qmk.constants import GPL2_HEADER_SH_LIKE, GENERATED_HEADER_SH_LIKE @@ -51,10 +50,7 @@ def generate_rules_mk(cli): """ # Determine our keyboard/keymap if cli.args.keymap: - km = locate_keymap(cli.args.keyboard, cli.args.keymap) - km_json = json_load(km) - validate(km_json, 'qmk.keymap.v1') - kb_info_json = dotty(km_json.get('config', {})) + kb_info_json = dotty(keymap_json_config(cli.args.keyboard, cli.args.keymap)) else: kb_info_json = dotty(info_json(cli.args.keyboard)) diff --git a/lib/python/qmk/cli/info.py b/lib/python/qmk/cli/info.py index 3131d4b53f..fa5729bcc9 100755 --- a/lib/python/qmk/cli/info.py +++ b/lib/python/qmk/cli/info.py @@ -11,8 +11,8 @@ from qmk.json_encoders import InfoJSONEncoder from qmk.constants import COL_LETTERS, ROW_LETTERS from qmk.decorators import automagic_keyboard, automagic_keymap from qmk.keyboard import keyboard_completer, keyboard_folder, render_layouts, render_layout, rules_mk +from qmk.info import info_json, keymap_json from qmk.keymap import locate_keymap -from qmk.info import info_json from qmk.path import is_keyboard UNICODE_SUPPORT = sys.stdout.encoding.lower().startswith('utf') @@ -135,7 +135,7 @@ def print_parsed_rules_mk(keyboard_name): @cli.argument('-kb', '--keyboard', type=keyboard_folder, completer=keyboard_completer, help='Keyboard to show info for.') -@cli.argument('-km', '--keymap', help='Show the layers for a JSON keymap too.') +@cli.argument('-km', '--keymap', help='Keymap to show info for (Optional).') @cli.argument('-l', '--layouts', action='store_true', help='Render the layouts.') @cli.argument('-m', '--matrix', action='store_true', help='Render the layouts with matrix information.') @cli.argument('-f', '--format', default='friendly', arg_only=True, help='Format to display the data in (friendly, text, json) (Default: friendly).') @@ -161,8 +161,15 @@ def info(cli): print_parsed_rules_mk(cli.config.info.keyboard) return False + # default keymap stored in config file should be ignored + if cli.config_source.info.keymap == 'config_file': + cli.config_source.info.keymap = None + # Build the info.json file - kb_info_json = info_json(cli.config.info.keyboard) + if cli.config.info.keymap: + kb_info_json = keymap_json(cli.config.info.keyboard, cli.config.info.keymap) + else: + kb_info_json = info_json(cli.config.info.keyboard) # Output in the requested format if cli.args.format == 'json': @@ -178,11 +185,12 @@ def info(cli): cli.log.error('Unknown format: %s', cli.args.format) return False + # Output requested extras if cli.config.info.layouts: show_layouts(kb_info_json, title_caps) if cli.config.info.matrix: show_matrix(kb_info_json, title_caps) - if cli.config_source.info.keymap and cli.config_source.info.keymap != 'config_file': + if cli.config.info.keymap: show_keymap(kb_info_json, title_caps) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index c399a9f321..d104d655ef 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -8,10 +8,11 @@ from dotty_dict import dotty from milc import cli from qmk.constants import CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS -from qmk.c_parse import find_layouts +from qmk.c_parse import find_layouts, parse_config_h_file from qmk.json_schema import deep_update, json_load, validate from qmk.keyboard import config_h, rules_mk -from qmk.keymap import list_keymaps +from qmk.keymap import list_keymaps, locate_keymap +from qmk.commands import parse_configurator_json from qmk.makefile import parse_rules_mk_file from qmk.math import compute @@ -68,8 +69,8 @@ def info_json(keyboard): # Merge in the data from info.json, config.h, and rules.mk info_data = merge_info_jsons(keyboard, info_data) - info_data = _extract_rules_mk(info_data) - info_data = _extract_config_h(info_data) + info_data = _extract_rules_mk(info_data, rules_mk(str(keyboard))) + info_data = _extract_config_h(info_data, config_h(str(keyboard))) # Ensure that we have matrix row and column counts info_data = _matrix_size(info_data) @@ -400,11 +401,9 @@ def _extract_device_version(info_data): info_data['usb']['device_version'] = f'{major}.{minor}.{revision}' -def _extract_config_h(info_data): +def _extract_config_h(info_data, config_c): """Pull some keyboard information from existing config.h files """ - config_c = config_h(info_data['keyboard_folder']) - # Pull in data from the json map dotty_info = dotty(info_data) info_config_map = json_load(Path('data/mappings/info_config.json')) @@ -472,10 +471,9 @@ def _extract_config_h(info_data): return info_data -def _extract_rules_mk(info_data): +def _extract_rules_mk(info_data, rules): """Pull some keyboard information from existing rules.mk files """ - rules = rules_mk(info_data['keyboard_folder']) info_data['processor'] = rules.get('MCU', info_data.get('processor', 'atmega32u4')) if info_data['processor'] in CHIBIOS_PROCESSORS: @@ -766,3 +764,36 @@ def find_info_json(keyboard): # Return a list of the info.json files that actually exist return [info_json for info_json in info_jsons if info_json.exists()] + + +def keymap_json_config(keyboard, keymap): + """Extract keymap level config + """ + keymap_folder = locate_keymap(keyboard, keymap).parent + + km_info_json = parse_configurator_json(keymap_folder / 'keymap.json') + return km_info_json.get('config', {}) + + +def keymap_json(keyboard, keymap): + """Generate the info.json data for a specific keymap. + """ + keymap_folder = locate_keymap(keyboard, keymap).parent + + # Files to scan + keymap_config = keymap_folder / 'config.h' + keymap_rules = keymap_folder / 'rules.mk' + keymap_file = keymap_folder / 'keymap.json' + + # Build the info.json file + kb_info_json = info_json(keyboard) + + # Merge in the data from keymap.json + km_info_json = keymap_json_config(keyboard, keymap) if keymap_file.exists() else {} + deep_update(kb_info_json, km_info_json) + + # Merge in the data from config.h, and rules.mk + _extract_rules_mk(kb_info_json, parse_rules_mk_file(keymap_rules)) + _extract_config_h(kb_info_json, parse_config_h_file(keymap_config)) + + return kb_info_json From 23f365f8bc4c44a0877478aada39c5787c33846e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 22 Mar 2022 10:48:13 +0000 Subject: [PATCH 158/699] Ignore transport defaults if SPLIT_KEYBOARD is unset (#16706) * Ignore transport defaults if SPLIT_KEYBOARD is unset * keep exists check --- lib/python/qmk/info.py | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index d104d655ef..900cddaaa9 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -271,14 +271,16 @@ def _extract_split_transport(info_data, config_c): info_data['split']['transport']['protocol'] = 'i2c' - elif 'protocol' not in info_data.get('split', {}).get('transport', {}): + # Ignore transport defaults if "SPLIT_KEYBOARD" is unset + elif 'enabled' in info_data.get('split', {}): if 'split' not in info_data: info_data['split'] = {} if 'transport' not in info_data['split']: info_data['split']['transport'] = {} - info_data['split']['transport']['protocol'] = 'serial' + if 'protocol' not in info_data['split']['transport']: + info_data['split']['transport']['protocol'] = 'serial' def _extract_split_right_pins(info_data, config_c): From f610011aa3d43c41489ddc638a3a8731ae0d51bf Mon Sep 17 00:00:00 2001 From: Luc Date: Wed, 23 Mar 2022 00:38:50 +0800 Subject: [PATCH 159/699] [Keymap] personal keymap, ergodox_ez and atreus / dvorak_42_key (#16695) --- .../atreus/keymaps/dvorak_42_key/keymap.c | 32 ++++++-- .../ergodox_ez/keymaps/dvorak_42_key/keymap.c | 77 ++++++++++++++----- 2 files changed, 82 insertions(+), 27 deletions(-) diff --git a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c index dbe39a38bc..eff7c8d577 100644 --- a/keyboards/atreus/keymaps/dvorak_42_key/keymap.c +++ b/keyboards/atreus/keymaps/dvorak_42_key/keymap.c @@ -30,20 +30,23 @@ // visual studio code shortcuts #define VS_FILE LCTL(KC_P) +#define VS_OPEN_FILE LCTL(KC_O) #define VS_LINE LCTL(KC_G) #define VS_SYMBOLEDITOR LCTL(LSFT(KC_O)) -#define VS_DEFINITION KC_F12 -#define VS_IMPLEMENTATION LCTL(KC_F12) -#define VS_REFERENCES LSFT(KC_F12) +#define VS_DEFINITION MEH(KC_F5) +#define VS_IMPLEMENTATION MEH(KC_F6) +#define VS_REFERENCES MEH(KC_F7) #define VS_BACK LALT(KC_LEFT) #define VS_BRACKET LCTL(LSFT(KC_BSLS)) -#define VS_TABLEFT LCTL(KC_PGUP) -#define VS_TABRIGHT LCTL(KC_PGDN) -#define VS_CLOSETAB LCTL(KC_W) +#define VS_TABLEFT MEH(KC_F1) +#define VS_TABRIGHT MEH(KC_F2) +#define VS_CLOSETAB MEH(KC_F3) #define VS_CLOSEPANEL LCTL(LSFT(KC_W)) +#define VS_GROUP_1 LCTL(KC_1) +#define VS_GROUP_2 LCTL(KC_2) #define VS_TERMINAL LCTL(KC_GRAVE) #define VS_BUILD LCTL(LSFT(KC_B)) -#define VS_COMMANDS LCTL(LSFT(KC_P)) +#define VS_COMMANDS MEH(KC_F4) #define VS_CMT_BLOCK LSFT(LALT(KC_A)) #define VS_CMT_LINE LCTL(KC_SLSH) #define VS_DEL_LINE LCTL(LSFT(KC_K)) @@ -54,7 +57,18 @@ #define VS_BM_PREV LCTL(LALT(KC_P)) #define VS_BM_NEXT LCTL(LALT(KC_N)) #define VS_BM_TOGGLE LCTL(LALT(KC_K)) -#define VS_BM_LABEL LCTL(LALT(KC_B)) +#define VS_BM_CLEARALL LCTL(LALT(KC_C)) +// visual studio code navigation shortcuts +#define VS_FOCUS_EDITOR MEH(KC_F8) +#define VS_FOCUS_TERMINAL MEH(KC_F9) +#define VS_TOGGLE_TERMINAL MEH(KC_F10) +#define VS_CLEAR_TERMINAL MEH(KC_F11) +#define VS_TERMINAL_PREV MEH(KC_F12) +#define VS_TERMINAL_NEXT MEH(KC_F13) +#define VS_TERMINAL_NEW MEH(KC_F14) +#define VS_TERMINAL_DETACH MEH(KC_F15) +#define VS_TERMINAL_RENAME MEH(KC_F16) +#define VS_JUMPY MEH(KC_F17) /* // VS code bookmark prev/next requires the following in vscode shortcuts config @@ -80,6 +94,8 @@ enum custom_keycodes { // building/flashing instructions: // make atreus/astar:dvorak_42_key:flash +// or +// qmk compile -kb atreus -km dvorak_42_key const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = LAYOUT( diff --git a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c index 67a09188ab..fab2977356 100644 --- a/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c +++ b/keyboards/ergodox_ez/keymaps/dvorak_42_key/keymap.c @@ -79,9 +79,9 @@ enum custom_keycodes { SCREEN_READREG_1, SCREEN_READREG_2, - SCREEN_READREG_3, + SCREEN_READREG_3, SCREEN_PASTEREG_1, - SCREEN_PASTEREG_2, + SCREEN_PASTEREG_2, SCREEN_PASTEREG_3, // Windows 10 macros, @@ -101,6 +101,7 @@ enum custom_keycodes { #define COMBINED 7 // combined numbers and symbols layer #define ANDROID_STUDIO 8 // android studio specific layer #define VSCODE 9 // visual studio code specific layer +#define VSCODE_NAV 10 // visual studio code, navigation within IDE @@ -131,22 +132,22 @@ enum custom_keycodes { #define VS_OPEN_FILE LCTL(KC_O) #define VS_LINE LCTL(KC_G) #define VS_SYMBOLEDITOR LCTL(LSFT(KC_O)) -#define VS_DEFINITION KC_F12 -#define VS_IMPLEMENTATION LCTL(KC_F12) -#define VS_REFERENCES LSFT(KC_F12) +#define VS_DEFINITION MEH(KC_F5) +#define VS_IMPLEMENTATION MEH(KC_F6) +#define VS_REFERENCES MEH(KC_F7) #define VS_BACK LALT(KC_LEFT) #define VS_BRACKET LCTL(LSFT(KC_BSLS)) -#define VS_TABLEFT LCTL(KC_PGUP) -#define VS_TABRIGHT LCTL(KC_PGDN) -#define VS_CLOSETAB LCTL(KC_W) +#define VS_TABLEFT MEH(KC_F1) +#define VS_TABRIGHT MEH(KC_F2) +#define VS_CLOSETAB MEH(KC_F3) #define VS_CLOSEPANEL LCTL(LSFT(KC_W)) #define VS_GROUP_1 LCTL(KC_1) #define VS_GROUP_2 LCTL(KC_2) #define VS_TERMINAL LCTL(KC_GRAVE) #define VS_BUILD LCTL(LSFT(KC_B)) -#define VS_COMMANDS LCTL(LSFT(KC_P)) +#define VS_COMMANDS MEH(KC_F4) #define VS_CMT_BLOCK LSFT(LALT(KC_A)) -#define VS_CMT_LINE LCTL(KC_SLSH) +#define VS_CMT_LINE MEH(KC_F18) #define VS_DEL_LINE LCTL(LSFT(KC_K)) #define VS_COPYLINEDOWN LSFT(LALT(KC_DOWN)) // visual studio bookmark commands @@ -156,6 +157,18 @@ enum custom_keycodes { #define VS_BM_NEXT LCTL(LALT(KC_N)) #define VS_BM_TOGGLE LCTL(LALT(KC_K)) #define VS_BM_CLEARALL LCTL(LALT(KC_C)) +// visual studio code navigation shortcuts +#define VS_FOCUS_EDITOR MEH(KC_F8) +#define VS_FOCUS_TERMINAL MEH(KC_F9) +#define VS_TOGGLE_TERMINAL MEH(KC_F10) +#define VS_CLEAR_TERMINAL MEH(KC_F11) +#define VS_TERMINAL_PREV MEH(KC_F12) +#define VS_TERMINAL_NEXT MEH(KC_F13) +#define VS_TERMINAL_NEW MEH(KC_F14) +#define VS_TERMINAL_DETACH MEH(KC_F15) +#define VS_TERMINAL_RENAME MEH(KC_F16) +#define VS_JUMPY MEH(KC_F17) +#define VS_FIND MEH(KC_F19) #define MACRO_SCREEN_NUM(MACRO_NAME,NUM) \ @@ -204,10 +217,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [BASE] = LAYOUT_ergodox( // left hand KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, - OSL(SCREEN_NAV), KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, MO(ANDROID_STUDIO), + OSL(SCREEN_NAV), KC_QUOTE, KC_COMMA, KC_DOT, KC_P, KC_Y, MO(VSCODE_NAV), OSL(SHELL_NAV), KC_A, KC_O, KC_E, KC_U, KC_I, OSL(SHELL_SCREEN), KC_SCOLON, KC_Q, KC_J, KC_K, KC_X, MO(VSCODE), - MEH(KC_1), OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), + MEH(KC_0), OSM(MOD_LSFT), OSM(MOD_LCTL), MO(KEYSEL), MO(BROWSER_CONTROL), // left thumb cluster WINDOWS10_WORKSPACE_LEFT, WINDOWS10_WORKSPACE_RIGHT, @@ -215,14 +228,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(COMBINED),MO(KEYNAV), OSM(MOD_LALT), // right hand - KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MEH(KC_9), - MEH(KC_7), KC_F, KC_G, KC_C, KC_R, KC_L, KC_TAB, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, MEH(KC_7), + MEH(KC_1), KC_F, KC_G, KC_C, KC_R, KC_L, KC_TAB, KC_D, KC_H, KC_T, KC_N, KC_S, RCTL(KC_BSPC), - MEH(KC_8), KC_B, KC_M, KC_W, KC_V, KC_Z, MEH(KC_F3), - KC_BSPC, RCTL(KC_BSPC), KC_CAPSLOCK, OSM(MOD_LSFT),MEH(KC_F4), + MEH(KC_2), KC_B, KC_M, KC_W, KC_V, KC_Z, MEH(KC_8), + KC_BSPC, RCTL(KC_BSPC), KC_CAPSLOCK, OSM(MOD_LSFT),MEH(KC_9), // right thumb cluster - MEH(KC_F5),MEH(KC_F6),MEH(KC_F7),MEH(KC_F8),KC_ENTER,KC_SPACE + MEH(KC_3), MEH(KC_4), MEH(KC_5), MEH(KC_6),KC_ENTER,KC_SPACE ), @@ -398,7 +411,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, VS_CMT_LINE, VS_COPYLINEDOWN, VS_REFERENCES, VS_DEFINITION, VS_IMPLEMENTATION, VS_LINE, VS_BRACKET, VS_CLOSETAB, VS_TABLEFT, VS_TABRIGHT, VS_SYMBOLEDITOR, VS_FILE, VS_BACK, - VS_CMT_BLOCK, KC_TRNS, VS_BM_PREV, VS_BM_NEXT, VS_GROUP_1, VS_GROUP_2, VS_BM_TOGGLE, + VS_CMT_BLOCK, VS_FIND, VS_BM_PREV, VS_BM_NEXT, VS_GROUP_1, VS_GROUP_2, VS_BM_TOGGLE, // bottom row VS_COMMANDS, VS_BM_LIST, VS_BM_LISTALL, VS_CLOSEPANEL, VS_BM_CLEARALL, // thumb cluster @@ -407,6 +420,32 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, VS_DEL_LINE, KC_TRNS ), + // vscode navigation shortcuts + [VSCODE_NAV] = LAYOUT_ergodox( + // left hand + KC_NO, 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, + // bottom row + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, + // thumb cluster + KC_TRNS,KC_TRNS, + KC_TRNS, + KC_TRNS,KC_TRNS,KC_TRNS, + // right hand + 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, + VS_TOGGLE_TERMINAL, VS_FOCUS_TERMINAL, VS_FOCUS_EDITOR, VS_JUMPY, KC_TRNS, KC_TRNS, + KC_TRNS, VS_CLEAR_TERMINAL, VS_TERMINAL_PREV, VS_TERMINAL_NEXT, VS_TERMINAL_NEW, VS_TERMINAL_DETACH, VS_TERMINAL_RENAME, + // bottom row + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + // thumb cluster + KC_TRNS, KC_TRNS, + KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + [COMBINED] = LAYOUT_ergodox( // left hand @@ -659,7 +698,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { tap_code16(C(KC_A)); tap_code16(S(KC_SCOLON)); SEND_STRING("paste 1\n"); - break; + break; case SCREEN_PASTEREG_2: tap_code16(C(KC_A)); tap_code16(S(KC_SCOLON)); From c803c50dc069e58d0759b500f2964f6dc4f4c913 Mon Sep 17 00:00:00 2001 From: kb-elmo Date: Wed, 23 Mar 2022 06:06:26 +0100 Subject: [PATCH 160/699] [Keyboard] Add Axolstudio Foundation Gamma (#15948) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- .../axolstudio/foundation_gamma/config.h | 44 ++++ .../foundation_gamma/foundation_gamma.c | 17 ++ .../foundation_gamma/foundation_gamma.h | 53 +++++ .../axolstudio/foundation_gamma/info.json | 191 ++++++++++++++++++ .../foundation_gamma/keymaps/default/keymap.c | 35 ++++ .../foundation_gamma/keymaps/via/keymap.c | 51 +++++ .../foundation_gamma/keymaps/via/rules.mk | 2 + .../axolstudio/foundation_gamma/readme.md | 25 +++ .../axolstudio/foundation_gamma/rules.mk | 18 ++ 9 files changed, 436 insertions(+) create mode 100644 keyboards/axolstudio/foundation_gamma/config.h create mode 100644 keyboards/axolstudio/foundation_gamma/foundation_gamma.c create mode 100644 keyboards/axolstudio/foundation_gamma/foundation_gamma.h create mode 100644 keyboards/axolstudio/foundation_gamma/info.json create mode 100644 keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c create mode 100644 keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c create mode 100644 keyboards/axolstudio/foundation_gamma/keymaps/via/rules.mk create mode 100644 keyboards/axolstudio/foundation_gamma/readme.md create mode 100644 keyboards/axolstudio/foundation_gamma/rules.mk diff --git a/keyboards/axolstudio/foundation_gamma/config.h b/keyboards/axolstudio/foundation_gamma/config.h new file mode 100644 index 0000000000..6883e51d57 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2021 kb-elmo + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x525C +#define PRODUCT_ID 0xE3EB +#define DEVICE_VER 0x0001 +#define MANUFACTURER Axolstudio +#define PRODUCT Foundation Gamma + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +/* Keyboard Matrix Assignments */ +#define MATRIX_ROW_PINS { B2, B1, B0, F7, F6, F5 } +#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, D1, D0, B3, F4, F1, F0 } + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* CAPS LED */ +#define LED_CAPS_LOCK_PIN B7 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/axolstudio/foundation_gamma/foundation_gamma.c b/keyboards/axolstudio/foundation_gamma/foundation_gamma.c new file mode 100644 index 0000000000..e686d8f321 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/foundation_gamma.c @@ -0,0 +1,17 @@ +/* Copyright 2021 kb-elmo + * + * 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 . + */ + +#include "foundation_gamma.h" diff --git a/keyboards/axolstudio/foundation_gamma/foundation_gamma.h b/keyboards/axolstudio/foundation_gamma/foundation_gamma.h new file mode 100644 index 0000000000..1a96a6d813 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/foundation_gamma.h @@ -0,0 +1,53 @@ +/* Copyright 2021 kb-elmo + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ____ KC_NO + +#define LAYOUT_all( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k213, k114, k115, k116, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k313, k214, k215, k216, \ + k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, \ + k400, k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k412, k415, \ + k500, k501, k502, k506, k510, k511, k512, k514, k515, k516 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214, k215, k216 }, \ + { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, ____, ____ }, \ + { k400, k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k412, ____, ____, k415, ____ }, \ + { k500, k501, k502, ____, ____, ____, k506, ____, ____, ____, k510, k511, k512, ____, k514, k515, k516 } \ +} + +#define LAYOUT_ansi_tsangan( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k313, k214, k215, k216, \ + k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, \ + k400, k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, k415, \ + k500, k501, k502, k506, k510, k511, k512, k514, k515, k516 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, ____, k214, k215, k216 }, \ + { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, ____, ____, ____ }, \ + { k400, k401, k402, k403, k404, k405, k406, k407, k408, k409, k410, k411, ____, ____, ____, k415, ____ }, \ + { k500, k501, k502, ____, ____, ____, k506, ____, ____, ____, k510, k511, k512, ____, k514, k515, k516 } \ +} diff --git a/keyboards/axolstudio/foundation_gamma/info.json b/keyboards/axolstudio/foundation_gamma/info.json new file mode 100644 index 0000000000..62214ce80c --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/info.json @@ -0,0 +1,191 @@ +{ + "keyboard_name": "Foundation Gamma", + "url": "https://axolstudio.ca/foundation-gamma", + "maintainer": "kb-elmo", + "layouts": { + "LAYOUT_ansi_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + {"x":0, "y":1.5}, + {"x":1, "y":1.5}, + {"x":2, "y":1.5}, + {"x":3, "y":1.5}, + {"x":4, "y":1.5}, + {"x":5, "y":1.5}, + {"x":6, "y":1.5}, + {"x":7, "y":1.5}, + {"x":8, "y":1.5}, + {"x":9, "y":1.5}, + {"x":10, "y":1.5}, + {"x":11, "y":1.5}, + {"x":12, "y":1.5}, + {"x":13, "y":1.5, "w":2}, + {"x":15.25, "y":1.5}, + {"x":16.25, "y":1.5}, + {"x":17.25, "y":1.5}, + {"x":0, "y":2.5, "w":1.5}, + {"x":1.5, "y":2.5}, + {"x":2.5, "y":2.5}, + {"x":3.5, "y":2.5}, + {"x":4.5, "y":2.5}, + {"x":5.5, "y":2.5}, + {"x":6.5, "y":2.5}, + {"x":7.5, "y":2.5}, + {"x":8.5, "y":2.5}, + {"x":9.5, "y":2.5}, + {"x":10.5, "y":2.5}, + {"x":11.5, "y":2.5}, + {"x":12.5, "y":2.5}, + {"x":13.5, "y":2.5, "w":1.5}, + {"x":15.25, "y":2.5}, + {"x":16.25, "y":2.5}, + {"x":17.25, "y":2.5}, + {"x":0, "y":3.5, "w":1.75}, + {"x":1.75, "y":3.5}, + {"x":2.75, "y":3.5}, + {"x":3.75, "y":3.5}, + {"x":4.75, "y":3.5}, + {"x":5.75, "y":3.5}, + {"x":6.75, "y":3.5}, + {"x":7.75, "y":3.5}, + {"x":8.75, "y":3.5}, + {"x":9.75, "y":3.5}, + {"x":10.75, "y":3.5}, + {"x":11.75, "y":3.5}, + {"x":12.75, "y":3.5, "w":2.25}, + {"x":0, "y":4.5, "w":2.25}, + {"x":2.25, "y":4.5}, + {"x":3.25, "y":4.5}, + {"x":4.25, "y":4.5}, + {"x":5.25, "y":4.5}, + {"x":6.25, "y":4.5}, + {"x":7.25, "y":4.5}, + {"x":8.25, "y":4.5}, + {"x":9.25, "y":4.5}, + {"x":10.25, "y":4.5}, + {"x":11.25, "y":4.5}, + {"x":12.25, "y":4.5, "w":2.75}, + {"x":16.25, "y":4.5}, + {"x":0, "y":5.5, "w":1.5}, + {"x":1.5, "y":5.5}, + {"x":2.5, "y":5.5, "w":1.5}, + {"x":4, "y":5.5, "w":7}, + {"x":11, "y":5.5, "w":1.5}, + {"x":12.5, "y":5.5}, + {"x":13.5, "y":5.5, "w":1.5}, + {"x":15.25, "y":5.5}, + {"x":16.25, "y":5.5}, + {"x":17.25, "y":5.5} + ] + }, + "LAYOUT_all": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + {"x":0, "y":1.5}, + {"x":1, "y":1.5}, + {"x":2, "y":1.5}, + {"x":3, "y":1.5}, + {"x":4, "y":1.5}, + {"x":5, "y":1.5}, + {"x":6, "y":1.5}, + {"x":7, "y":1.5}, + {"x":8, "y":1.5}, + {"x":9, "y":1.5}, + {"x":10, "y":1.5}, + {"x":11, "y":1.5}, + {"x":12, "y":1.5}, + {"x":13, "y":1.5}, + {"x":14, "y":1.5}, + {"x":15.25, "y":1.5}, + {"x":16.25, "y":1.5}, + {"x":17.25, "y":1.5}, + {"x":0, "y":2.5, "w":1.5}, + {"x":1.5, "y":2.5}, + {"x":2.5, "y":2.5}, + {"x":3.5, "y":2.5}, + {"x":4.5, "y":2.5}, + {"x":5.5, "y":2.5}, + {"x":6.5, "y":2.5}, + {"x":7.5, "y":2.5}, + {"x":8.5, "y":2.5}, + {"x":9.5, "y":2.5}, + {"x":10.5, "y":2.5}, + {"x":11.5, "y":2.5}, + {"x":12.5, "y":2.5}, + {"x":13.5, "y":2.5, "w":1.5}, + {"x":15.25, "y":2.5}, + {"x":16.25, "y":2.5}, + {"x":17.25, "y":2.5}, + {"x":0, "y":3.5, "w":1.75}, + {"x":1.75, "y":3.5}, + {"x":2.75, "y":3.5}, + {"x":3.75, "y":3.5}, + {"x":4.75, "y":3.5}, + {"x":5.75, "y":3.5}, + {"x":6.75, "y":3.5}, + {"x":7.75, "y":3.5}, + {"x":8.75, "y":3.5}, + {"x":9.75, "y":3.5}, + {"x":10.75, "y":3.5}, + {"x":11.75, "y":3.5}, + {"x":12.75, "y":3.5, "w":2.25}, + {"x":0, "y":4.5, "w":2.25}, + {"x":2.25, "y":4.5}, + {"x":3.25, "y":4.5}, + {"x":4.25, "y":4.5}, + {"x":5.25, "y":4.5}, + {"x":6.25, "y":4.5}, + {"x":7.25, "y":4.5}, + {"x":8.25, "y":4.5}, + {"x":9.25, "y":4.5}, + {"x":10.25, "y":4.5}, + {"x":11.25, "y":4.5}, + {"x":12.25, "y":4.5, "w":1.75}, + {"x":14, "y":4.5}, + {"x":16.25, "y":4.5}, + {"x":0, "y":5.5, "w":1.5}, + {"x":1.5, "y":5.5}, + {"x":2.5, "y":5.5, "w":1.5}, + {"x":4, "y":5.5, "w":7}, + {"x":11, "y":5.5, "w":1.5}, + {"x":12.5, "y":5.5}, + {"x":13.5, "y":5.5, "w":1.5}, + {"x":15.25, "y":5.5}, + {"x":16.25, "y":5.5}, + {"x":17.25, "y":5.5} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c new file mode 100644 index 0000000000..9d354bd1e1 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c @@ -0,0 +1,35 @@ +/* Copyright 2021 kb-elmo + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ansi_tsangan( + 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_ansi_tsangan( + 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, KC_TRNS, KC_VOLU, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c new file mode 100644 index 0000000000..e6cad9a87a --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2021 kb-elmo + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + 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, KC_TRNS, KC_TRNS, KC_VOLU, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + 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, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, 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 + ), + [3] = LAYOUT_all( + 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, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, 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 + ) +}; diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/via/rules.mk b/keyboards/axolstudio/foundation_gamma/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/axolstudio/foundation_gamma/readme.md b/keyboards/axolstudio/foundation_gamma/readme.md new file mode 100644 index 0000000000..522ddd16c6 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/readme.md @@ -0,0 +1,25 @@ +# Axolstudio Foundation Gamma + +![foundation](https://i.imgur.com/wxLv3oGl.jpg) + +Seamless, Screwless, Gasket mounted F13 TKL + +* Keyboard Maintainer: [kb-elmo](https://github.com/kb-elmo) +* Hardware Supported: Axolstudio Foundation Gamma F13 PCB +* Hardware Availability: https://axolstudio.ca/foundation-gamma + +Make example for this keyboard (after setting up your build environment): + + make axolstudio/foundation_gamma:default + +Flashing example for this keyboard: + + make axolstudio/foundation_gamma:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +* **Bootmagic reset**: Hold down the top left key and plug in the keyboard +* **Physical reset button**: Briefly press the button labeled "SW1" on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/axolstudio/foundation_gamma/rules.mk b/keyboards/axolstudio/foundation_gamma/rules.mk new file mode 100644 index 0000000000..a95ad7bcc0 --- /dev/null +++ b/keyboards/axolstudio/foundation_gamma/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 28bd777f5899c0502cd79fbab5ee8d38fb15dd14 Mon Sep 17 00:00:00 2001 From: ChrisBeswick Date: Wed, 23 Mar 2022 06:01:55 +0000 Subject: [PATCH 161/699] [Keyboard] Graystudio Apollo80 (#16469) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/gray_studio/apollo80/apollo80.c | 18 ++++ keyboards/gray_studio/apollo80/apollo80.h | 35 ++++++ keyboards/gray_studio/apollo80/config.h | 71 ++++++++++++ keyboards/gray_studio/apollo80/info.json | 102 ++++++++++++++++++ .../apollo80/keymaps/default/config.h | 20 ++++ .../apollo80/keymaps/default/keymap.c | 51 +++++++++ .../gray_studio/apollo80/keymaps/via/config.h | 20 ++++ .../gray_studio/apollo80/keymaps/via/keymap.c | 67 ++++++++++++ .../gray_studio/apollo80/keymaps/via/rules.mk | 1 + keyboards/gray_studio/apollo80/readme.md | 26 +++++ keyboards/gray_studio/apollo80/rules.mk | 18 ++++ 11 files changed, 429 insertions(+) create mode 100644 keyboards/gray_studio/apollo80/apollo80.c create mode 100644 keyboards/gray_studio/apollo80/apollo80.h create mode 100644 keyboards/gray_studio/apollo80/config.h create mode 100644 keyboards/gray_studio/apollo80/info.json create mode 100644 keyboards/gray_studio/apollo80/keymaps/default/config.h create mode 100644 keyboards/gray_studio/apollo80/keymaps/default/keymap.c create mode 100644 keyboards/gray_studio/apollo80/keymaps/via/config.h create mode 100644 keyboards/gray_studio/apollo80/keymaps/via/keymap.c create mode 100644 keyboards/gray_studio/apollo80/keymaps/via/rules.mk create mode 100644 keyboards/gray_studio/apollo80/readme.md create mode 100644 keyboards/gray_studio/apollo80/rules.mk diff --git a/keyboards/gray_studio/apollo80/apollo80.c b/keyboards/gray_studio/apollo80/apollo80.c new file mode 100644 index 0000000000..842a63f318 --- /dev/null +++ b/keyboards/gray_studio/apollo80/apollo80.c @@ -0,0 +1,18 @@ +/* Copyright 2020 Demo Studio + * + * 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 . + */ +#include "apollo80.h" + + diff --git a/keyboards/gray_studio/apollo80/apollo80.h b/keyboards/gray_studio/apollo80/apollo80.h new file mode 100644 index 0000000000..be3a3ee54d --- /dev/null +++ b/keyboards/gray_studio/apollo80/apollo80.h @@ -0,0 +1,35 @@ +/* Copyright 2020 Demo Studio + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + K00, K02, K03, K04, K05, K07, K08, K09, K0A, K0B, K0C, K0D,K06, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K3E, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F, K5G \ +) { \ + { K00, KC_NO, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E, KC_NO, KC_NO }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F, K5G }, \ +} + diff --git a/keyboards/gray_studio/apollo80/config.h b/keyboards/gray_studio/apollo80/config.h new file mode 100644 index 0000000000..f00550fb65 --- /dev/null +++ b/keyboards/gray_studio/apollo80/config.h @@ -0,0 +1,71 @@ +/* Copyright 2020 Demo Studio + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4753 +#define PRODUCT_ID 0x3001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Graystudio +#define PRODUCT apollo80 + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +/* + * 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 { D1, D0, B3, B0, B2, B1 } +#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D4, D6, D2, D3, D5 } +#define DIODE_DIRECTION COL2ROW + +#define LED_CAPS_LOCK_PIN E6 +#define LED_PIN_ON_STATE 0 + +#define RGB_DI_PIN E2 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 22 + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 180 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ + + #define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_MOOD + /*== or choose animations ==*/ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_TWINKLE +#endif + diff --git a/keyboards/gray_studio/apollo80/info.json b/keyboards/gray_studio/apollo80/info.json new file mode 100644 index 0000000000..c0e3efdb88 --- /dev/null +++ b/keyboards/gray_studio/apollo80/info.json @@ -0,0 +1,102 @@ +{ + "keyboard_name": "apollo 80", + "url": "https://graystudio.club/products/gb-space80-apollo", + "maintainer": "qmk", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"K00 (D1,F0)", "x":0, "y":0}, + {"label":"K02 (D1,F4)", "x":2, "y":0}, + {"label":"K03 (D1,F5)", "x":3, "y":0}, + {"label":"K04 (D1,F6)", "x":4, "y":0}, + {"label":"K05 (D1,F7)", "x":5, "y":0}, + {"label":"K06 (D1,C7)", "x":6.5, "y":0}, + {"label":"K07 (D1,C6)", "x":7.5, "y":0}, + {"label":"K08 (D1,B6)", "x":8.5, "y":0}, + {"label":"K09 (D1,B5)", "x":9.5, "y":0}, + {"label":"K0A (D1,B4)", "x":11, "y":0}, + {"label":"K0B (D1,D7)", "x":12, "y":0}, + {"label":"K0C (D1,D4)", "x":13, "y":0}, + {"label":"K0D (D1,D6)", "x":14, "y":0}, + {"label":"K0E (D1,D2)", "x":15.25, "y":0}, + {"label":"K0F (D1,D3)", "x":16.25, "y":0}, + {"label":"K0G (D1,D5)", "x":17.25, "y":0}, + {"label":"K10 (D0,F0)", "x":0, "y":1.5}, + {"label":"K11 (D0,F1)", "x":1, "y":1.5}, + {"label":"K12 (D0,F4)", "x":2, "y":1.5}, + {"label":"K13 (D0,F5)", "x":3, "y":1.5}, + {"label":"K14 (D0,F6)", "x":4, "y":1.5}, + {"label":"K15 (D0,F7)", "x":5, "y":1.5}, + {"label":"K16 (D0,C7)", "x":6, "y":1.5}, + {"label":"K17 (D0,C6)", "x":7, "y":1.5}, + {"label":"K18 (D0,B6)", "x":8, "y":1.5}, + {"label":"K19 (D0,B5)", "x":9, "y":1.5}, + {"label":"K1A (D0,B4)", "x":10, "y":1.5}, + {"label":"K1B (D0,D7)", "x":11, "y":1.5}, + {"label":"K1C (D0,D4)", "x":12, "y":1.5}, + {"label":"K1D (D0,D6)", "x":13, "y":1.5}, + {"label":"K3E (B0,D2)", "x":14, "y":1.5}, + {"label":"K1E (D0,D2)", "x":15.25, "y":1.5}, + {"label":"K1F (D0,D3)", "x":16.25, "y":1.5}, + {"label":"K1G (D0,D5)", "x":17.25, "y":1.5}, + {"label":"K20 (B3,F0)", "x":0, "y":2.5, "w":1.5}, + {"label":"K21 (B3,F1)", "x":1.5, "y":2.5}, + {"label":"K22 (B3,F4)", "x":2.5, "y":2.5}, + {"label":"K23 (B3,F5)", "x":3.5, "y":2.5}, + {"label":"K24 (B3,F6)", "x":4.5, "y":2.5}, + {"label":"K25 (B3,F7)", "x":5.5, "y":2.5}, + {"label":"K26 (B3,C7)", "x":6.5, "y":2.5}, + {"label":"K27 (B3,C6)", "x":7.5, "y":2.5}, + {"label":"K28 (B3,B6)", "x":8.5, "y":2.5}, + {"label":"K29 (B3,B5)", "x":9.5, "y":2.5}, + {"label":"K2A (B3,B4)", "x":10.5, "y":2.5}, + {"label":"K2B (B3,D7)", "x":11.5, "y":2.5}, + {"label":"K2C (B3,D4)", "x":12.5, "y":2.5}, + {"label":"K2D (B3,D6)", "x":13.5, "y":2.5, "w":1.5}, + {"label":"K2E (B3,D2)", "x":15.25, "y":2.5}, + {"label":"K2F (B3,D3)", "x":16.25, "y":2.5}, + {"label":"K2G (B3,D5)", "x":17.25, "y":2.5}, + {"label":"K30 (B0,F0)", "x":0, "y":3.5, "w":1.75}, + {"label":"K31 (B0,F1)", "x":1.75, "y":3.5}, + {"label":"K32 (B0,F4)", "x":2.75, "y":3.5}, + {"label":"K33 (B0,F5)", "x":3.75, "y":3.5}, + {"label":"K34 (B0,F6)", "x":4.75, "y":3.5}, + {"label":"K35 (B0,F7)", "x":5.75, "y":3.5}, + {"label":"K36 (B0,C7)", "x":6.75, "y":3.5}, + {"label":"K37 (B0,C6)", "x":7.75, "y":3.5}, + {"label":"K38 (B0,B6)", "x":8.75, "y":3.5}, + {"label":"K39 (B0,B5)", "x":9.75, "y":3.5}, + {"label":"K3A (B0,B4)", "x":10.75, "y":3.5}, + {"label":"K3B (B0,D7)", "x":11.75, "y":3.5}, + {"label":"K3D (B0,D6)", "x":12.75, "y":3.5, "w":2.25}, + {"label":"K40 (B2,F0)", "x":0, "y":4.5, "w":1.25}, + {"label":"K41 (B2,F1)", "x":1.25, "y":4.5}, + {"label":"K42 (B2,F4)", "x":2.25, "y":4.5}, + {"label":"K43 (B2,F5)", "x":3.25, "y":4.5}, + {"label":"K44 (B2,F6)", "x":4.25, "y":4.5}, + {"label":"K45 (B2,F7)", "x":5.25, "y":4.5}, + {"label":"K46 (B2,C7)", "x":6.25, "y":4.5}, + {"label":"K47 (B2,C6)", "x":7.25, "y":4.5}, + {"label":"K48 (B2,B6)", "x":8.25, "y":4.5}, + {"label":"K49 (B2,B5)", "x":9.25, "y":4.5}, + {"label":"K4A (B2,B4)", "x":10.25, "y":4.5}, + {"label":"K4B (B2,D7)", "x":11.25, "y":4.5}, + {"label":"K4C (B2,D4)", "x":12.25, "y":4.5, "w":1.75}, + {"label":"K4D (B2,D6)", "x":14, "y":4.5}, + {"label":"K4F (B2,D3)", "x":16.25, "y":4.5}, + {"label":"K50 (B1,F0)", "x":0, "y":5.5, "w":1.25}, + {"label":"K51 (B1,F1)", "x":1.25, "y":5.5, "w":1.25}, + {"label":"K52 (B1,F4)", "x":2.5, "y":5.5, "w":1.25}, + {"label":"K56 (B1,C7)", "x":3.75, "y":5.5, "w":6.25}, + {"label":"K5A (B1,B4)", "x":10, "y":5.5, "w":1.25}, + {"label":"K5B (B1,D7)", "x":11.25, "y":5.5, "w":1.25}, + {"label":"K5C (B1,D4)", "x":12.5, "y":5.5, "w":1.25}, + {"label":"K5D (B1,D6)", "x":13.75, "y":5.5, "w":1.25}, + {"label":"K5E (B1,D2)", "x":15.25, "y":5.5}, + {"label":"K5F (B1,D3)", "x":16.25, "y":5.5}, + {"label":"K5G (B1,D5)", "x":17.25, "y":5.5} + ] + } + } + +} diff --git a/keyboards/gray_studio/apollo80/keymaps/default/config.h b/keyboards/gray_studio/apollo80/keymaps/default/config.h new file mode 100644 index 0000000000..68ad650de4 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/default/config.h @@ -0,0 +1,20 @@ +/* Copyright 2020 Demo Studio + +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 . +*/ + +#pragma once + +#define RGBLIGHT_LAYERS +#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF diff --git a/keyboards/gray_studio/apollo80/keymaps/default/keymap.c b/keyboards/gray_studio/apollo80/keymaps/default/keymap.c new file mode 100644 index 0000000000..b4eb52630e --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/default/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2020 Demo Studio + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT( + RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______,_______,_______,_______,_______,_______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +}; +const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0,4, HSV_WHITE} +); +const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_capslock_layer +); + +void keyboard_post_init_user(void) { + // Enable the LED layers + rgblight_layers = my_rgb_layers; +} +bool led_update_user(led_t led_state) { + rgblight_set_layer_state(0, led_state.caps_lock); + return true; +} diff --git a/keyboards/gray_studio/apollo80/keymaps/via/config.h b/keyboards/gray_studio/apollo80/keymaps/via/config.h new file mode 100644 index 0000000000..68ad650de4 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* Copyright 2020 Demo Studio + +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 . +*/ + +#pragma once + +#define RGBLIGHT_LAYERS +#define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF diff --git a/keyboards/gray_studio/apollo80/keymaps/via/keymap.c b/keyboards/gray_studio/apollo80/keymaps/via/keymap.c new file mode 100644 index 0000000000..27f0a2c2c0 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/via/keymap.c @@ -0,0 +1,67 @@ +/* Copyright 2020 Demo Studio + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT( + RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______,_______,_______,_______,_______,_______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + +}; +const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0,4, HSV_WHITE} +); +const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_capslock_layer +); + +void keyboard_post_init_user(void) { + // Enable the LED layers + rgblight_layers = my_rgb_layers; +} +bool led_update_user(led_t led_state) { + rgblight_set_layer_state(0, led_state.caps_lock); + return true; +} \ No newline at end of file diff --git a/keyboards/gray_studio/apollo80/keymaps/via/rules.mk b/keyboards/gray_studio/apollo80/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/gray_studio/apollo80/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/gray_studio/apollo80/readme.md b/keyboards/gray_studio/apollo80/readme.md new file mode 100644 index 0000000000..e70e104ef3 --- /dev/null +++ b/keyboards/gray_studio/apollo80/readme.md @@ -0,0 +1,26 @@ +# APOLLO 80 + +80% / TKL keyboard with a 5.5 degree angle ran by Airpotter. PCB Manufactured by DEMO Studio and Keyboard manufactured by Gray Studio. + +- Keyboard Maintainer: [Chris Beswick](https://github.com/ChrisBeswick/) +- Hardware Supported: Stock / Default Apollo80 PCB +- Hardware Availability: [Geekhack GB](https://geekhack.org/index.php?topic=110033.0) +- Group Buy Location: [Graystudio.club](https://graystudio.club/products/gb-space80-apollo) + +How to build this firmware using QMK MSYS + + qmk compile -kb gray_studio/apollo80 -km default + +Make example for this keyboard (after setting up your build environment using make): + + make gray_studio/apollo80:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +- **Physical reset button**: Bridge the pads labelled 'RE' underneath the Space Bar. +- **Keycode in layout**: Hold MO(1) and press ESC (If you've changed bindings from the default, this may not be the case) diff --git a/keyboards/gray_studio/apollo80/rules.mk b/keyboards/gray_studio/apollo80/rules.mk new file mode 100644 index 0000000000..cb5238f27d --- /dev/null +++ b/keyboards/gray_studio/apollo80/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file From a772a7f3a796d29aa830769d7629ed8cd8cb5f0d Mon Sep 17 00:00:00 2001 From: Dan Beste Date: Wed, 23 Mar 2022 11:33:30 -0500 Subject: [PATCH 162/699] [Keymap] Input Club's Whitefox "True Fox" (#16711) --- .../whitefox/keymaps/truefox/keymap.c | 60 +++++++++++++++++++ 1 file changed, 60 insertions(+) create mode 100644 keyboards/input_club/whitefox/keymaps/truefox/keymap.c diff --git a/keyboards/input_club/whitefox/keymaps/truefox/keymap.c b/keyboards/input_club/whitefox/keymaps/truefox/keymap.c new file mode 100644 index 0000000000..2af5467311 --- /dev/null +++ b/keyboards/input_club/whitefox/keymaps/truefox/keymap.c @@ -0,0 +1,60 @@ +/* +Copyright 2015 Jun Wako + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ ~ │ \ │PrS│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Backs│Del│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │Enter │PgU│ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │ ↑ │PgD│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │Ctrl│GUI │Alt │ │Alt │Fn │ │ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + [0] = LAYOUT_65_ansi_blocker_split_bs( + 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_GRV, KC_BSLS, KC_PSCR, + 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_DEL, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + /* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Fla│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│PrS│ \ │Mut│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │Delet│Del│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │Enter │Vl+│ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │PgU│Vl-│ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │Ctrl│GUI │Alt │ │Alt │Fn │ │Hom│PgD│End│ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + [1] = LAYOUT_65_ansi_blocker_split_bs( + QK_BOOT, 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_MUTE, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_VOLD, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ) +}; From 74f4682309d23f347d51f2d64481d7f231697133 Mon Sep 17 00:00:00 2001 From: 4pplet Date: Wed, 23 Mar 2022 17:34:07 +0100 Subject: [PATCH 163/699] [Keyboard] Waffling60 - readme update (#16707) Co-authored-by: Drashna Jaelre Co-authored-by: 4pplet <4pplet@protonmail.com> Co-authored-by: 4pplet --- keyboards/4pplet/waffling60/readme.md | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/keyboards/4pplet/waffling60/readme.md b/keyboards/4pplet/waffling60/readme.md index bf5fda8803..374b56ffba 100644 --- a/keyboards/4pplet/waffling60/readme.md +++ b/keyboards/4pplet/waffling60/readme.md @@ -11,5 +11,12 @@ Make example for this keyboard (after setting up your build environment): make 4pplet/waffling60/rev_a:default make 4pplet/waffling60/rev_b:default + make 4pplet/waffling60/rev_c:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Tap the physical reset button or short the reset-header (labled RESET) on tha back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware. From 92d38c37ec06aba943464a272886c70ba88e5f68 Mon Sep 17 00:00:00 2001 From: Dan Hertz Date: Wed, 23 Mar 2022 09:34:42 -0700 Subject: [PATCH 164/699] [Keymap] Add dhertz keychron map v0 (#16571) --- keyboards/keychron/q2/rev_0113/config.h | 2 +- .../q2/rev_0113/keymaps/dhertz/keymap.c | 94 +++++++++++++++++++ .../q2/rev_0113/keymaps/dhertz/rules.mk | 1 + users/dhertz/dhertz.c | 9 ++ users/dhertz/dhertz.h | 5 + 5 files changed, 110 insertions(+), 1 deletion(-) create mode 100644 keyboards/keychron/q2/rev_0113/keymaps/dhertz/keymap.c create mode 100644 keyboards/keychron/q2/rev_0113/keymaps/dhertz/rules.mk diff --git a/keyboards/keychron/q2/rev_0113/config.h b/keyboards/keychron/q2/rev_0113/config.h index 92b9c2e364..486d3fd3b8 100644 --- a/keyboards/keychron/q2/rev_0113/config.h +++ b/keyboards/keychron/q2/rev_0113/config.h @@ -30,4 +30,4 @@ #define ENCODERS_PAD_B { B5 } /* Specifies the number of pulses the encoder registers between each detent */ -#define ENCODER_RESOLUTION 2 +#define ENCODER_RESOLUTION 4 diff --git a/keyboards/keychron/q2/rev_0113/keymaps/dhertz/keymap.c b/keyboards/keychron/q2/rev_0113/keymaps/dhertz/keymap.c new file mode 100644 index 0000000000..16c2a6d784 --- /dev/null +++ b/keyboards/keychron/q2/rev_0113/keymaps/dhertz/keymap.c @@ -0,0 +1,94 @@ +// Copyright 2022 Dan Hertz (@dhertz) +// SPDX-License-Identifier: GPL-3.0 + +#include QMK_KEYBOARD_H +#include "dhertz.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Layer 0: Default Layer + * ,---------------------------------------------------------------. + * |Esc| 1| 2| 3| 4| 5| 6| 7| 8| 9| 0| -| =| Backsp|( )| + * |---------------------------------------------------------------| + * |Tab | Q| W| E| R| T| Y| U| I| O| P| [| ]|Enter|Del| + * |------------------------------------------------------` |---| + * |SrCtl | A| S| D| F| G| H| J| K| L| ;| '| \| |Hom| + * |---------------------------------------------------------------| + * |Shif| #| Z| X| C| V| B| N| M| ,| .| /|Shift |Up | | + * |---------------------------------------------------------------| + * |NcCtl| Alt| CTab| LyrSpc |CGv|Alt|CSL|Lef|Dow|Rig| + * `---------------------------------------------------------------' + */ + [0] = LAYOUT_iso_68( + 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_BSPC, KC_MUTE, + 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_DEL, + SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_HOME, + KC_LSFT, HSH_TLD, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + NC_CTL, KC_LALT, CMD_TAB_CMD, LYR_SPC, CMD_GRV_CMD, KC_RALT, CMD_SFT_ALT_A, KC_LEFT, KC_DOWN, KC_RIGHT + ), + /* Layer 1: Special + * ,---------------------------------------------------------------. + * | §| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| |( )| + * |---------------------------------------------------------------| + * | | | | | | | | | | | | | | | | + * |------------------------------------------------------` |---| + * | | | | | | | | | |CSL| | | `| | | + * |---------------------------------------------------------------| + * | | `| | |CAC| | | | | | | | |PgU| | + * |---------------------------------------------------------------| + * | | | | | | | |Hom|PgD|End| + * `---------------------------------------------------------------' + */ + [1] = LAYOUT_iso_68( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F10, KC_F11, KC_TRNS, CMD_SFT_A, + 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, CMD_SFT_L, KC_TRNS, KC_TRNS, KC_NUBS, KC_TRNS, KC_END, + KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS, CMD_ALT_C, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDOWN, KC_END + ), +}; + +void keyboard_post_init_user(void) { + rgb_matrix_mode(RGB_MATRIX_NONE); + rgb_matrix_set_color_all(RGB_BLACK); +} + +uint32_t cancel_cmd(uint32_t trigger_time, void *cb_arg) { + if (get_highest_layer(layer_state|default_layer_state) > 0) { + return 20; + } + unregister_code(KC_LCMD); + return 0; +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (get_highest_layer(layer_state|default_layer_state) == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } else { + if ((get_mods() & MOD_BIT(KC_LCMD)) != MOD_BIT(KC_LCMD)) { + register_code(KC_LCMD); + defer_exec(20, cancel_cmd, NULL); + } + if (clockwise) { + tap_code(KC_TAB); + } else { + tap_code16(S(KC_TAB)); + } + } + return false; +} + +void rgb_matrix_indicators_kb(void) { + switch(get_highest_layer(layer_state|default_layer_state)) { + case 1: + rgb_matrix_set_color_all(RGB_BLACK); + rgb_matrix_set_color_all(25, 25, 112); + break; + default: + rgb_matrix_set_color_all(RGB_BLACK); + break; + } +} diff --git a/keyboards/keychron/q2/rev_0113/keymaps/dhertz/rules.mk b/keyboards/keychron/q2/rev_0113/keymaps/dhertz/rules.mk new file mode 100644 index 0000000000..199bad85f3 --- /dev/null +++ b/keyboards/keychron/q2/rev_0113/keymaps/dhertz/rules.mk @@ -0,0 +1 @@ +DEFERRED_EXEC_ENABLE = yes diff --git a/users/dhertz/dhertz.c b/users/dhertz/dhertz.c index f33981e15b..163b1cb644 100644 --- a/users/dhertz/dhertz.c +++ b/users/dhertz/dhertz.c @@ -1,3 +1,6 @@ +// Copyright 2022 Dan Hertz (@dhertz) +// SPDX-License-Identifier: GPL-3.0 + #include "dhertz.h" // Add reconfigurable functions here, for keymap customization @@ -63,6 +66,12 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { case CMD_SFT_L: SEND_STRING(SS_LGUI("L")); break; + case CMD_SFT_A: + SEND_STRING(SS_LGUI("A")); + break; + case CMD_SFT_ALT_A: + SEND_STRING(SS_LGUI(SS_LALT("A"))); + break; case ISO_COUNTRY_CODE: SEND_STRING("country_iso_alpha2_code"); break; diff --git a/users/dhertz/dhertz.h b/users/dhertz/dhertz.h index aef613f55d..f980329fa5 100644 --- a/users/dhertz/dhertz.h +++ b/users/dhertz/dhertz.h @@ -1,3 +1,6 @@ +// Copyright 2022 Dan Hertz (@dhertz) +// SPDX-License-Identifier: GPL-3.0 + #ifndef USERSPACE #define USERSPACE @@ -15,6 +18,8 @@ enum custom_keycodes { ISO_COUNTRY_CODE, CMD_TAB_CMD, CMD_GRV_CMD, + CMD_SFT_A, + CMD_SFT_ALT_A, NEW_SAFE_RANGE, }; From 08aa54b66f0177648c4077bc3e6d4534c8dc4ad7 Mon Sep 17 00:00:00 2001 From: Minna Pallari Date: Wed, 23 Mar 2022 18:35:14 +0200 Subject: [PATCH 165/699] [Keymap] Xiudi XD75 Finnish/Swedish keymap (#16311) --- keyboards/xiudi/xd75/keymaps/minna/config.h | 7 ++ keyboards/xiudi/xd75/keymaps/minna/keymap.c | 79 ++++++++++++++++++++ keyboards/xiudi/xd75/keymaps/minna/readme.md | 13 ++++ keyboards/xiudi/xd75/keymaps/minna/rules.mk | 1 + 4 files changed, 100 insertions(+) create mode 100644 keyboards/xiudi/xd75/keymaps/minna/config.h create mode 100644 keyboards/xiudi/xd75/keymaps/minna/keymap.c create mode 100644 keyboards/xiudi/xd75/keymaps/minna/readme.md create mode 100644 keyboards/xiudi/xd75/keymaps/minna/rules.mk diff --git a/keyboards/xiudi/xd75/keymaps/minna/config.h b/keyboards/xiudi/xd75/keymaps/minna/config.h new file mode 100644 index 0000000000..27975f0e24 --- /dev/null +++ b/keyboards/xiudi/xd75/keymaps/minna/config.h @@ -0,0 +1,7 @@ +// Copyright 2022 Minna Pallari (@pallarim) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// place overrides here +#define UNICODE_SELECTED_MODES UC_WINC, UC_LNX, UC_MAC \ No newline at end of file diff --git a/keyboards/xiudi/xd75/keymaps/minna/keymap.c b/keyboards/xiudi/xd75/keymaps/minna/keymap.c new file mode 100644 index 0000000000..ef3f400bc1 --- /dev/null +++ b/keyboards/xiudi/xd75/keymaps/minna/keymap.c @@ -0,0 +1,79 @@ +// Copyright 2022 Minna Pallari (@pallarim) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H +#include "keymap_finnish.h" + +enum unicode_names { + BEER, + BEERS +}; + +enum custom_keycodes { + QMKBEST = SAFE_RANGE, +}; + +const uint32_t PROGMEM unicode_map[] = { + [BEER] = 0x1F37A, // 🍺 + [BEERS] = 0x1F37B // 🍻 +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + switch(keycode) { + case QMKBEST: + SEND_STRING(SS_LGUI("r") SS_DELAY(500) "calc\n" SS_DELAY(1000) "1337"); + break; + } + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │ESC│ § | 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ + │ ´ │BS │ + * ├───|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │TAB   | Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ Å │ ¨ │ │ + * ├───|───|───|───|───|───|───|───|───|───|───|───|───|───|ENT| + * │CPS    │ A │ S │ D │ F │ G │ H │ J │ K │ L │ Ö │ Ä │ ' │ │ + * ├───|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │SFT│ < │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ - │SFT|UP |   │ + * ├───|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │CTR│FN │WIN│ALT│BER│ SPC │ SPC │AGR│MNU│CTR│LF │DN │RG │ + * └───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ + */ + + [0] = LAYOUT_ortho_5x15( + KC_ESC, FI_SECT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, FI_PLUS, FI_ACUT, KC_BSPC, + KC_TAB, KC_NO, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, FI_ARNG, FI_DIAE, KC_ENT, + KC_CAPS, KC_NO, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, FI_ODIA, FI_ADIA, FI_QUOT, KC_NO, + KC_LSFT, FI_LABK, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, FI_MINS, KC_RSFT, KC_UP, KC_NO, + KC_LCTL, MO(1), KC_LGUI, KC_LALT, XP(BEER, BEERS), KC_SPC, KC_NO, KC_SPC, KC_NO, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +/* + * ┌────┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │Mute│CAL| F1│F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│DEL│ + * ├────|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │MSel   |My │Ma │RGB│RGB│Cal│ 7 │ 8 │ 9 │ - │   │Prn│SL │ P │ + * │   |Cmp│il │HUD│HUI│ │   │   │   │   │  │Scr│CK │ a │ + * ├────|───|───|───|───|───|───|───|───|───|───|───|───|───| u | + * │MPrev   │  │  │RGB│RGB│  │ 4 │ 5 │ 6 │ + │RST│   │   │ s │ + * │    │NXT│STP│SAD│SAI│PLY│   │   │   │   │   │   │   │ e │ + * ├────|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │Vo- │Mte│Vo+│App│RGB│RGB│   │ 1 │ 2 │ 3 │ENT│   │ | |   │ + * │ │ │ │   │VAD│VAI│   │ 1 │ 2 │ 3 │ENT│   │ | |   │ + * ├────|───|───|───|───|───|───|───|───|───|───|───|───|───|───| + * │ │FN │RGB│ │RMR│RGB_MOD│ 0 │ . │ENT│ENT│FN │UCR│UCM│ + * └────┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┴───┘ + */ + + [1] = LAYOUT_ortho_5x15( + KC_MUTE, QMKBEST, 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_MSEL, KC_NO, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_CALC, KC_P7, KC_P8, KC_P9, KC_MINS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, + KC_MPRV, KC_NO, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_MPLY, KC_P4, KC_P5, KC_P6, KC_PLUS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, + KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_NO, KC_P1, KC_P2, KC_P3, KC_PENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, MO(1), RGB_TOG, KC_NO, RGB_RMOD,RGB_MOD, KC_NO, KC_P0, KC_NO, KC_PDOT, KC_PENT, KC_PENT, MO(1), UC_RMOD, UC_MOD) +}; + diff --git a/keyboards/xiudi/xd75/keymaps/minna/readme.md b/keyboards/xiudi/xd75/keymaps/minna/readme.md new file mode 100644 index 0000000000..0291fd3a85 --- /dev/null +++ b/keyboards/xiudi/xd75/keymaps/minna/readme.md @@ -0,0 +1,13 @@ +# XD75 Fi/Sv board with some extras + +## Keymap + +### Base & Function Layer + +![Base layer](https://i.imgur.com/x8VFgYg.png) + +## Build + +To build the default keymap, simply run: + + make xiudi/xd75/minna diff --git a/keyboards/xiudi/xd75/keymaps/minna/rules.mk b/keyboards/xiudi/xd75/keymaps/minna/rules.mk new file mode 100644 index 0000000000..0517619ed1 --- /dev/null +++ b/keyboards/xiudi/xd75/keymaps/minna/rules.mk @@ -0,0 +1 @@ +UNICODEMAP_ENABLE = yes \ No newline at end of file From 4a3b4104feb7f0948a8b9f97b39534fc68c62e73 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Wed, 23 Mar 2022 09:38:51 -0700 Subject: [PATCH 166/699] [Bug] Fix unused variable error when using ChibiOS Bitbang serial driver (#16709) --- platforms/chibios/drivers/serial.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/platforms/chibios/drivers/serial.c b/platforms/chibios/drivers/serial.c index 6db5d85250..bb7b3c0554 100644 --- a/platforms/chibios/drivers/serial.c +++ b/platforms/chibios/drivers/serial.c @@ -171,7 +171,8 @@ void interrupt_handler(void *arg) { checksum_computed += split_trans_initiator2target_buffer(trans)[i]; } checksum_computed ^= 7; - uint8_t checksum_received = serial_read_byte(); + + serial_read_byte(); sync_send(); // wait for the sync to finish sending From 55b3b2b8487ff9008806d41bd77a10fc796c4103 Mon Sep 17 00:00:00 2001 From: kopibeng <52724926+kopibeng@users.noreply.github.com> Date: Thu, 24 Mar 2022 02:42:54 +0800 Subject: [PATCH 167/699] [Keyboard] Add support for XT60 (#16708) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/kopibeng/xt60/config.h | 81 +++++++++++++++++++ keyboards/kopibeng/xt60/info.json | 81 +++++++++++++++++++ .../kopibeng/xt60/keymaps/default/keymap.c | 57 +++++++++++++ keyboards/kopibeng/xt60/keymaps/via/keymap.c | 57 +++++++++++++ keyboards/kopibeng/xt60/keymaps/via/rules.mk | 2 + keyboards/kopibeng/xt60/readme.md | 21 +++++ keyboards/kopibeng/xt60/rules.mk | 18 +++++ keyboards/kopibeng/xt60/xt60.c | 17 ++++ keyboards/kopibeng/xt60/xt60.h | 55 +++++++++++++ 9 files changed, 389 insertions(+) create mode 100644 keyboards/kopibeng/xt60/config.h create mode 100644 keyboards/kopibeng/xt60/info.json create mode 100644 keyboards/kopibeng/xt60/keymaps/default/keymap.c create mode 100644 keyboards/kopibeng/xt60/keymaps/via/keymap.c create mode 100644 keyboards/kopibeng/xt60/keymaps/via/rules.mk create mode 100644 keyboards/kopibeng/xt60/readme.md create mode 100644 keyboards/kopibeng/xt60/rules.mk create mode 100644 keyboards/kopibeng/xt60/xt60.c create mode 100644 keyboards/kopibeng/xt60/xt60.h diff --git a/keyboards/kopibeng/xt60/config.h b/keyboards/kopibeng/xt60/config.h new file mode 100644 index 0000000000..30aff4955e --- /dev/null +++ b/keyboards/kopibeng/xt60/config.h @@ -0,0 +1,81 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B50 // 'KP' kopibeng +#define PRODUCT_ID 0x0600 +#define DEVICE_VER 0x0002 +#define MANUFACTURER kopibeng +#define PRODUCT XT60 + +/* 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 { F7, F4, D0, B3, B7 } +#define MATRIX_COL_PINS { C7, F5, F1, F0, C6, B6, B5, B4, D7, D6, D5, D3, D2, D1 } + +#define LED_CAPS_LOCK_PIN D4 + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define RGB_DI_PIN F6 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 14 + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/info.json b/keyboards/kopibeng/xt60/info.json new file mode 100644 index 0000000000..fbd8904a7f --- /dev/null +++ b/keyboards/kopibeng/xt60/info.json @@ -0,0 +1,81 @@ +{ + "keyboard_name": "XT60", + "maintainer": "Kopibeng", + "url": "", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "0,0", "x": 0, "y": 0 }, + { "label": "0,1", "x": 1, "y": 0 }, + { "label": "0,2", "x": 2, "y": 0 }, + { "label": "0,3", "x": 3, "y": 0 }, + { "label": "0,4", "x": 4, "y": 0 }, + { "label": "0,5", "x": 5, "y": 0 }, + { "label": "0,6", "x": 6, "y": 0 }, + { "label": "0,7", "x": 7, "y": 0 }, + { "label": "0,8", "x": 8, "y": 0 }, + { "label": "0,9", "x": 9, "y": 0 }, + { "label": "0,A", "x": 10, "y": 0 }, + { "label": "0,B", "x": 11, "y": 0 }, + { "label": "0,C", "x": 12, "y": 0 }, + { "label": "0,D", "x": 13, "y": 0 }, + { "label": "1,D", "x": 14, "y": 0 }, + + { "label": "1,0", "w": 1.5, "x": 0, "y": 1 }, + { "label": "1,1", "x": 1.5, "y": 1 }, + { "label": "1,2", "x": 2.5, "y": 1 }, + { "label": "1,3", "x": 3.5, "y": 1 }, + { "label": "1,4", "x": 4.5, "y": 1 }, + { "label": "1,5", "x": 5.5, "y": 1 }, + { "label": "1,6", "x": 6.5, "y": 1 }, + { "label": "1,7", "x": 7.5, "y": 1 }, + { "label": "1,8", "x": 8.5, "y": 1 }, + { "label": "1,9", "x": 9.5, "y": 1 }, + { "label": "1,A", "x": 10.5, "y": 1 }, + { "label": "1,B", "x": 11.5, "y": 1 }, + { "label": "1,C", "x": 12.5, "y": 1 }, + { "label": "2,C", "w": 1.5, "x": 13.5, "y": 1 }, + + { "label": "2,0", "w": 1.75, "x": 0, "y": 2 }, + { "label": "2,1", "x": 1.75, "y": 2 }, + { "label": "2,2", "x": 2.75, "y": 2 }, + { "label": "2,3", "x": 3.75, "y": 2 }, + { "label": "2,4", "x": 4.75, "y": 2 }, + { "label": "2,5", "x": 5.75, "y": 2 }, + { "label": "2,6", "x": 6.75, "y": 2 }, + { "label": "2,7", "x": 7.75, "y": 2 }, + { "label": "2,8", "x": 8.75, "y": 2 }, + { "label": "2,9", "x": 9.75, "y": 2 }, + { "label": "2,A", "x": 10.75, "y": 2 }, + { "label": "2,B", "x": 11.75, "y": 2 }, + { "label": "2,D", "w": 2.25, "x": 12.75, "y": 2 }, + + { "label": "3,0", "w": 1.25, "x": 0, "y": 3 }, + { "label": "3,1", "x": 1.25, "y": 3 }, + { "label": "3,2", "x": 2.25, "y": 3 }, + { "label": "3,3", "x": 3.25, "y": 3 }, + { "label": "3,4", "x": 4.25, "y": 3 }, + { "label": "3,5", "x": 5.25, "y": 3 }, + { "label": "3,6", "x": 6.25, "y": 3 }, + { "label": "3,7", "x": 7.25, "y": 3 }, + { "label": "3,8", "x": 8.25, "y": 3 }, + { "label": "3,9", "x": 9.25, "y": 3 }, + { "label": "3,A", "x": 10.25, "y": 3 }, + { "label": "3,B", "x": 11.25, "y": 3 }, + { "label": "3,C", "w": 1.75, "x": 12.25, "y": 3 }, + { "label": "3,D", "x": 14, "y": 3 }, + + { "label": "4,0", "w": 1.25, "x": 0, "y": 4 }, + { "label": "4,1", "w": 1.25, "x": 1.25, "y": 4 }, + { "label": "4,2", "w": 1.25, "x": 2.5, "y": 4 }, + { "label": "4,4", "w": 2.25, "x": 3.75, "y": 4 }, + { "label": "4,6", "w": 1.25, "x": 6, "y": 4 }, + { "label": "4,8", "w": 2.75, "x": 7.25, "y": 4 }, + { "label": "4,A", "w": 1.25, "x": 10, "y": 4 }, + { "label": "4,B", "w": 1.25, "x": 11.25, "y": 4 }, + { "label": "4,C", "w": 1.25, "x": 12.5, "y": 4 }, + { "label": "4,D", "w": 1.25, "x": 13.75, "y": 4 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/keymaps/default/keymap.c b/keyboards/kopibeng/xt60/keymaps/default/keymap.c new file mode 100644 index 0000000000..337ec2836f --- /dev/null +++ b/keyboards/kopibeng/xt60/keymaps/default/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_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, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(2), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(2), KC_RALT, MO(1), KC_RCTL + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, 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 + ), + + // Fn2 Layer + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS + ), + + // Fn3 Layer + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS + ), +}; + diff --git a/keyboards/kopibeng/xt60/keymaps/via/keymap.c b/keyboards/kopibeng/xt60/keymaps/via/keymap.c new file mode 100644 index 0000000000..337ec2836f --- /dev/null +++ b/keyboards/kopibeng/xt60/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // Default layer + [0] = LAYOUT_all( + KC_GESC, 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_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, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(2), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(2), KC_RALT, MO(1), KC_RCTL + ), + + // Fn1 Layer + [1] = LAYOUT_all( + KC_TRNS, 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, RESET, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, 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 + ), + + // Fn2 Layer + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS + ), + + // Fn3 Layer + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS + ), +}; + diff --git a/keyboards/kopibeng/xt60/keymaps/via/rules.mk b/keyboards/kopibeng/xt60/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/kopibeng/xt60/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/readme.md b/keyboards/kopibeng/xt60/readme.md new file mode 100644 index 0000000000..177b22be4c --- /dev/null +++ b/keyboards/kopibeng/xt60/readme.md @@ -0,0 +1,21 @@ +# XT60 + +![XT60](https://i.imgur.com/n1arBEw.png) + +A QMK-powered, VIA-enabled universal 60% PCB with support for ANSI/ISO layouts, split Backspace, split Right Shift, stepped Caps Lock, 6.25U/7U bottom row, split Spacebar and RGB underglow. + +* Keyboard Maintainer: kopibeng +* Hardware Supported: A 60% keyboard with ATMEGA32U4 +* Hardware Availability: N/A + +Make example for this keyboard (after setting up your build environment): + + make kopibeng/xt60:via + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +* Physical reset button: Press the RESET switch on top side of PCB. +* Bootmagic reset: Unplug keyboard, hold down ESC key and plug in the keyboard. +* Keycode reset: Press the RESET keycode (default: MO(1) + R keys) in layout if available. \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/rules.mk b/keyboards/kopibeng/xt60/rules.mk new file mode 100644 index 0000000000..72ab2800c5 --- /dev/null +++ b/keyboards/kopibeng/xt60/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/xt60.c b/keyboards/kopibeng/xt60/xt60.c new file mode 100644 index 0000000000..db8993d58b --- /dev/null +++ b/keyboards/kopibeng/xt60/xt60.c @@ -0,0 +1,17 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#include "xt60.h" \ No newline at end of file diff --git a/keyboards/kopibeng/xt60/xt60.h b/keyboards/kopibeng/xt60/xt60.h new file mode 100644 index 0000000000..0e4b4ea2aa --- /dev/null +++ b/keyboards/kopibeng/xt60/xt60.h @@ -0,0 +1,55 @@ +/* Copyright 2021 Samuel Lu + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │1D │ │1D │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ┌──┴┐2D │ ISO Enter + * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │ │2C │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌─┴───┴────┤ + * │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │ │3C │ 2.75u RShift + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴───┼───┴┬────┬┴───┤ └──────────┘ + * │40 │41 │42 │44 │46 │48 │4A │4B │4C │4D │ 2.25u/1.25u/2.75u Split Spacebar + * └────┴────┴────┴────────┴────┴──────────┴────┴────┴────┴────┘ + * ┌────┬────┬────┬────────────────────────┬────┬────┬────┬────┐ + * │40 │41 │42 │46 │4A │4B │4C │4D │ ANSI 6.25u + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐ + * │40 │41 │42 │46 │4B │4C │4D │ 7u/WKL + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ + */ + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K1D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K44, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + {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, K2D}, \ + {K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D}, \ + {K40, K41, K42, ___, K44, ___, K46, ___, K48, ___, K4A, K4B, K4C, K4D} \ +} From e335d62eda6f9c295c1717cf7511dfb74a436f03 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Wed, 23 Mar 2022 23:23:40 -0600 Subject: [PATCH 168/699] [Keyboard] Add keyboard level encoder function for GMMK Pro (#16721) --- keyboards/gmmk/pro/pro.c | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/keyboards/gmmk/pro/pro.c b/keyboards/gmmk/pro/pro.c index 816d089a58..6aed1d6e18 100644 --- a/keyboards/gmmk/pro/pro.c +++ b/keyboards/gmmk/pro/pro.c @@ -14,3 +14,17 @@ * along with this program. If not, see . */ #include "pro.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { + return false; + } + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + return false; +} +#endif From 980a1b05629e351d19ff9ddc1bb5a1d38bab6414 Mon Sep 17 00:00:00 2001 From: Nathan Johnson Date: Thu, 24 Mar 2022 00:24:02 -0500 Subject: [PATCH 169/699] [Keymap] ergodox: updating osx_whiskey_tango_foxtrot_capslock to use process_record_user (#16715) --- .../keymap.c | 45 ++++++++++++++++++- .../rules.mk | 2 + 2 files changed, 46 insertions(+), 1 deletion(-) create mode 100644 layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/rules.mk diff --git a/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/keymap.c b/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/keymap.c index 54e1183e9f..2285aa4a94 100644 --- a/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/keymap.c +++ b/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/keymap.c @@ -15,6 +15,10 @@ enum layer_names { typedef enum onoff_t {OFF, ON} onoff; +#define caps_led_on ergodox_right_led_2_on +#define caps_led_off ergodox_right_led_2_off + + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap 0: Basic layer * @@ -123,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ // MEDIA AND TENKEY [MDIA] = LAYOUT_ergodox( - KC_NO, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_F14, KC_F15, + QK_BOOT, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_F14, KC_F15, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, @@ -142,6 +146,45 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS ), }; +#ifndef NO_FAKE_CAPS +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + static onoff caps_state = OFF; + + switch (keycode) { + case KC_CAPS: + if (record->event.pressed) { + if (caps_state == OFF) { + caps_led_on(); + caps_state = ON; + } else { + caps_led_off(); + caps_state = OFF; + } + } + break; + default: + if (keycode < KC_A || keycode > KC_Z) { + // This isn't an alpha or a KC_CAPS, continue on as usual. + return true; + } + if (record->event.pressed) { + bool shifted = (caps_state == ON && get_mods() == 0); + if (shifted) { + register_code(KC_LSFT); + } + register_code(keycode); + if (shifted) { + unregister_code(KC_LSFT); + } + } else { + unregister_code(keycode); + } + break; + } + // If we get here, we've already handled the keypresses. + return false; +} +#endif // Runs constantly in the background, in a loop. void matrix_scan_user(void) { diff --git a/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/rules.mk b/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/rules.mk new file mode 100644 index 0000000000..e8242c2695 --- /dev/null +++ b/layouts/community/ergodox/osx_whiskey_tango_foxtrot_capslock/rules.mk @@ -0,0 +1,2 @@ +# uncomment below to disable fake capslock +# OPT_DEFS += -DNO_FAKE_CAPS From f7a5ec2483ef05d22b6604f0da1447cea5281243 Mon Sep 17 00:00:00 2001 From: Carlo Sala Date: Thu, 24 Mar 2022 17:42:48 +0100 Subject: [PATCH 170/699] update kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala keymap (#16725) --- .../kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/config.h | 1 + .../kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/rules.mk | 1 + 2 files changed, 2 insertions(+) diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/config.h b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/config.h index b8dea6a76a..997e4015de 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/config.h +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/config.h @@ -3,4 +3,5 @@ #pragma once +#define TAPPING_TERM 150 #define UNICODE_SELECTED_MODES UC_LNX diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/rules.mk b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/rules.mk index fd581f26db..12dd57c557 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/rules.mk +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/carlosala/rules.mk @@ -1,2 +1,3 @@ MOUSEKEY_ENABLE = no +NKRO_ENABLE = yes UNICODE_ENABLE = yes From dc9eb21332b0fc274cc69358032dc923da6dc306 Mon Sep 17 00:00:00 2001 From: Simon <47527944+Frooastside@users.noreply.github.com> Date: Thu, 24 Mar 2022 19:08:22 +0100 Subject: [PATCH 171/699] add the ability to change the pwm frequency for the IS31FL3737B (#16718) --- docs/feature_rgb_matrix.md | 1 + drivers/led/issi/is31fl3737.c | 6 +++++- 2 files changed, 6 insertions(+), 1 deletion(-) diff --git a/docs/feature_rgb_matrix.md b/docs/feature_rgb_matrix.md index 87dbc5f780..a8793be328 100644 --- a/docs/feature_rgb_matrix.md +++ b/docs/feature_rgb_matrix.md @@ -171,6 +171,7 @@ Configure the hardware via your `config.h`: |----------|-------------|---------| | `ISSI_TIMEOUT` | (Optional) How long to wait for i2c messages, in milliseconds | 100 | | `ISSI_PERSISTENCE` | (Optional) Retry failed messages this many times | 0 | +| `ISSI_PWM_FREQUENCY` | (Optional) PWM Frequency Setting - IS31FL3737B only | 0 | | `ISSI_SWPULLUP` | (Optional) Set the value of the SWx lines on-chip de-ghosting resistors | PUR_0R (Disabled) | | `ISSI_CSPULLUP` | (Optional) Set the value of the CSx lines on-chip de-ghosting resistors | PUR_0R (Disabled) | | `DRIVER_COUNT` | (Required) How many RGB driver IC's are present | | diff --git a/drivers/led/issi/is31fl3737.c b/drivers/led/issi/is31fl3737.c index 9f2a13de45..bce0c34b2c 100644 --- a/drivers/led/issi/is31fl3737.c +++ b/drivers/led/issi/is31fl3737.c @@ -57,6 +57,10 @@ # define ISSI_PERSISTENCE 0 #endif +#ifndef ISSI_PWM_FREQUENCY +# define ISSI_PWM_FREQUENCY 0b000 // PFS - IS31FL3737B only +#endif + #ifndef ISSI_SWPULLUP # define ISSI_SWPULLUP PUR_0R #endif @@ -159,7 +163,7 @@ void IS31FL3737_init(uint8_t addr) { // Set global current to maximum. IS31FL3737_write_register(addr, ISSI_REG_GLOBALCURRENT, 0xFF); // Disable software shutdown. - IS31FL3737_write_register(addr, ISSI_REG_CONFIGURATION, 0x01); + IS31FL3737_write_register(addr, ISSI_REG_CONFIGURATION, ((ISSI_PWM_FREQUENCY & 0b111) << 3) | 0x01); // Wait 10ms to ensure the device has woken up. wait_ms(10); From efc9c525b19b33c6e09057218ea64f07f45f9555 Mon Sep 17 00:00:00 2001 From: Erovia Date: Thu, 24 Mar 2022 20:13:40 +0000 Subject: [PATCH 172/699] CLI: Add 'via2json' subcommand (#16468) --- docs/cli_commands.md | 17 ++++ lib/python/qmk/cli/__init__.py | 1 + lib/python/qmk/cli/via2json.py | 145 ++++++++++++++++++++++++++++++++ lib/python/qmk/json_encoders.py | 8 +- lib/python/qmk/keymap.py | 7 +- 5 files changed, 176 insertions(+), 2 deletions(-) create mode 100755 lib/python/qmk/cli/via2json.py diff --git a/docs/cli_commands.md b/docs/cli_commands.md index 93af906b8a..463abcef12 100644 --- a/docs/cli_commands.md +++ b/docs/cli_commands.md @@ -335,6 +335,23 @@ This command cleans up the `.build` folder. If `--all` is passed, any .hex or .b qmk clean [-a] ``` +## `qmk via2json` + +This command an generate a keymap.json from a VIA keymap backup. Both the layers and the macros are converted, enabling users to easily move away from a VIA-enabled firmware without writing any code or reimplementing their keymaps in QMK Configurator. + +**Usage**: + +``` +qmk via2json -kb KEYBOARD [-l LAYOUT] [-km KEYMAP] [-o OUTPUT] filename +``` + +**Example:** + +``` +$ qmk via2json -kb ai03/polaris -o polaris_keymap.json polaris_via_backup.json +Ψ Wrote keymap to /home/you/qmk_firmware/polaris_keymap.json +``` + --- # Developer Commands diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index c51eece955..5f65e677e5 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -69,6 +69,7 @@ subcommands = [ 'qmk.cli.new.keymap', 'qmk.cli.pyformat', 'qmk.cli.pytest', + 'qmk.cli.via2json', ] diff --git a/lib/python/qmk/cli/via2json.py b/lib/python/qmk/cli/via2json.py new file mode 100755 index 0000000000..6edc9dfbe5 --- /dev/null +++ b/lib/python/qmk/cli/via2json.py @@ -0,0 +1,145 @@ +"""Generate a keymap.c from a configurator export. +""" +import json +import re + +from milc import cli + +import qmk.keyboard +import qmk.path +from qmk.info import info_json +from qmk.json_encoders import KeymapJSONEncoder +from qmk.commands import parse_configurator_json, dump_lines +from qmk.keymap import generate_json, list_keymaps, locate_keymap, parse_keymap_c + + +def _find_via_layout_macro(keyboard): + keymap_layout = None + if 'via' in list_keymaps(keyboard): + keymap_path = locate_keymap(keyboard, 'via') + if keymap_path.suffix == '.json': + keymap_layout = parse_configurator_json(keymap_path)['layout'] + else: + keymap_layout = parse_keymap_c(keymap_path)['layers'][0]['layout'] + return keymap_layout + + +def _convert_macros(via_macros): + via_macros = list(filter(lambda f: bool(f), via_macros)) + if len(via_macros) == 0: + return list() + split_regex = re.compile(r'(}\,)|(\,{)') + macros = list() + for via_macro in via_macros: + # Split VIA macro to its elements + macro = split_regex.split(via_macro) + # Remove junk elements (None, '},' and ',{') + macro = list(filter(lambda f: False if f in (None, '},', ',{') else True, macro)) + macro_data = list() + for m in macro: + if '{' in m or '}' in m: + # Found keycode(s) + keycodes = m.split(',') + # Remove whitespaces and curly braces from around keycodes + keycodes = list(map(lambda s: s.strip(' {}'), keycodes)) + # Remove the KC prefix + keycodes = list(map(lambda s: s.replace('KC_', ''), keycodes)) + macro_data.append({"action": "tap", "keycodes": keycodes}) + else: + # Found text + macro_data.append(m) + macros.append(macro_data) + + return macros + + +def _fix_macro_keys(keymap_data): + macro_no = re.compile(r'MACRO0?([0-9]{1,2})') + for i in range(0, len(keymap_data)): + for j in range(0, len(keymap_data[i])): + kc = keymap_data[i][j] + m = macro_no.match(kc) + if m: + keymap_data[i][j] = f'MACRO_{m.group(1)}' + return keymap_data + + +def _via_to_keymap(via_backup, keyboard_data, keymap_layout): + # Check if passed LAYOUT is correct + layout_data = keyboard_data['layouts'].get(keymap_layout) + if not layout_data: + cli.log.error(f'LAYOUT macro {keymap_layout} is not a valid one for keyboard {cli.args.keyboard}!') + exit(1) + + layout_data = layout_data['layout'] + sorting_hat = list() + for index, data in enumerate(layout_data): + sorting_hat.append([index, data['matrix']]) + + sorting_hat.sort(key=lambda k: (k[1][0], k[1][1])) + + pos = 0 + for row_num in range(0, keyboard_data['matrix_size']['rows']): + for col_num in range(0, keyboard_data['matrix_size']['cols']): + if pos >= len(sorting_hat) or sorting_hat[pos][1][0] != row_num or sorting_hat[pos][1][1] != col_num: + sorting_hat.insert(pos, [None, [row_num, col_num]]) + else: + sorting_hat.append([None, [row_num, col_num]]) + pos += 1 + + keymap_data = list() + for layer in via_backup['layers']: + pos = 0 + layer_data = list() + for key in layer: + if sorting_hat[pos][0] is not None: + layer_data.append([sorting_hat[pos][0], key]) + pos += 1 + layer_data.sort() + layer_data = [kc[1] for kc in layer_data] + keymap_data.append(layer_data) + + return keymap_data + + +@cli.argument('-o', '--output', arg_only=True, type=qmk.path.normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('filename', type=qmk.path.FileType('r'), arg_only=True, help='VIA Backup JSON file') +@cli.argument('-kb', '--keyboard', type=qmk.keyboard.keyboard_folder, completer=qmk.keyboard.keyboard_completer, arg_only=True, required=True, help='The keyboard\'s name') +@cli.argument('-km', '--keymap', arg_only=True, default='via2json', help='The keymap\'s name') +@cli.argument('-l', '--layout', arg_only=True, help='The keymap\'s layout') +@cli.subcommand('Convert a VIA backup json to keymap.json format.') +def via2json(cli): + """Convert a VIA backup json to keymap.json format. + + This command uses the `qmk.keymap` module to generate a keymap.json from a VIA backup json. The generated keymap is written to stdout, or to a file if -o is provided. + """ + # Find appropriate layout macro + keymap_layout = cli.args.layout if cli.args.layout else _find_via_layout_macro(cli.args.keyboard) + if not keymap_layout: + cli.log.error(f"Couldn't find LAYOUT macro for keyboard {cli.args.keyboard}. Please specify it with the '-l' argument.") + exit(1) + + # Load the VIA backup json + with cli.args.filename.open('r') as fd: + via_backup = json.load(fd) + + # Generate keyboard metadata + keyboard_data = info_json(cli.args.keyboard) + + # Get keycode array + keymap_data = _via_to_keymap(via_backup, keyboard_data, keymap_layout) + + # Convert macros + macro_data = list() + if via_backup.get('macros'): + macro_data = _convert_macros(via_backup['macros']) + + # Replace VIA macro keys with JSON keymap ones + keymap_data = _fix_macro_keys(keymap_data) + + # Generate the keymap.json + keymap_json = generate_json(cli.args.keymap, cli.args.keyboard, keymap_layout, keymap_data, macro_data) + + keymap_lines = [json.dumps(keymap_json, cls=KeymapJSONEncoder)] + dump_lines(cli.args.output, keymap_lines, cli.args.quiet) diff --git a/lib/python/qmk/json_encoders.py b/lib/python/qmk/json_encoders.py index 72e91973a3..40a5c1dea8 100755 --- a/lib/python/qmk/json_encoders.py +++ b/lib/python/qmk/json_encoders.py @@ -146,7 +146,13 @@ class KeymapJSONEncoder(QMKJSONEncoder): if key == 'JSON_NEWLINE': layer.append([]) else: - layer[-1].append(f'"{key}"') + if isinstance(key, dict): + # We have a macro + + # TODO: Add proper support for nicely formatting keymap.json macros + layer[-1].append(f'{self.encode(key)}') + else: + layer[-1].append(f'"{key}"') layer = [f"{self.indent_str*indent_level}{', '.join(row)}" for row in layer] diff --git a/lib/python/qmk/keymap.py b/lib/python/qmk/keymap.py index 00b5a78a5a..ca5be0959b 100644 --- a/lib/python/qmk/keymap.py +++ b/lib/python/qmk/keymap.py @@ -158,7 +158,7 @@ def is_keymap_dir(keymap, c=True, json=True, additional_files=None): return True -def generate_json(keymap, keyboard, layout, layers): +def generate_json(keymap, keyboard, layout, layers, macros=None): """Returns a `keymap.json` for the specified keyboard, layout, and layers. Args: @@ -173,11 +173,16 @@ def generate_json(keymap, keyboard, layout, layers): layers An array of arrays describing the keymap. Each item in the inner array should be a string that is a valid QMK keycode. + + macros + A sequence of strings containing macros to implement for this keyboard. """ new_keymap = template_json(keyboard) new_keymap['keymap'] = keymap new_keymap['layout'] = layout new_keymap['layers'] = layers + if macros: + new_keymap['macros'] = macros return new_keymap From 53a88af0360c67677d3ffb9eac0d046a59baa141 Mon Sep 17 00:00:00 2001 From: Anton <14187674+antosha417@users.noreply.github.com> Date: Sat, 26 Mar 2022 03:37:05 +0300 Subject: [PATCH 173/699] [Keymap] corne and planck keyboards keymaps (#15570) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/crkbd/keymaps/antosha417/config.h | 37 ++ keyboards/crkbd/keymaps/antosha417/keymap.c | 401 ++++++++++++++++ .../crkbd/keymaps/antosha417/mod_tap_keys.h | 15 + keyboards/crkbd/keymaps/antosha417/rules.mk | 5 + keyboards/crkbd/keymaps/antosha417/todo.md | 13 + keyboards/planck/keymaps/antosha417/config.h | 34 ++ keyboards/planck/keymaps/antosha417/keymap.c | 452 ++++++++++++++++++ .../planck/keymaps/antosha417/mod_tap_keys.h | 14 + keyboards/planck/keymaps/antosha417/readme.md | 11 + keyboards/planck/keymaps/antosha417/rules.mk | 4 + 10 files changed, 986 insertions(+) create mode 100644 keyboards/crkbd/keymaps/antosha417/config.h create mode 100644 keyboards/crkbd/keymaps/antosha417/keymap.c create mode 100644 keyboards/crkbd/keymaps/antosha417/mod_tap_keys.h create mode 100644 keyboards/crkbd/keymaps/antosha417/rules.mk create mode 100644 keyboards/crkbd/keymaps/antosha417/todo.md create mode 100644 keyboards/planck/keymaps/antosha417/config.h create mode 100644 keyboards/planck/keymaps/antosha417/keymap.c create mode 100644 keyboards/planck/keymaps/antosha417/mod_tap_keys.h create mode 100644 keyboards/planck/keymaps/antosha417/readme.md create mode 100644 keyboards/planck/keymaps/antosha417/rules.mk diff --git a/keyboards/crkbd/keymaps/antosha417/config.h b/keyboards/crkbd/keymaps/antosha417/config.h new file mode 100644 index 0000000000..4b6e86fd6b --- /dev/null +++ b/keyboards/crkbd/keymaps/antosha417/config.h @@ -0,0 +1,37 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + + +/* Select hand configuration */ + +//#define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS + + +#define TAPPING_FORCE_HOLD + +#ifdef RGBLIGHT_ENABLE + #undef RGBLED_NUM + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_TWINKLE + #define RGBLED_NUM 27 + #define RGBLIGHT_LIMIT_VAL 120 + #define RGBLIGHT_HUE_STEP 10 + #define RGBLIGHT_SAT_STEP 17 + #define RGBLIGHT_VAL_STEP 17 +#endif + +#define TAPPING_TERM 200 +#define IGNORE_MOD_TAP_INTERRUPT +#define COMBO_TERM 30 + diff --git a/keyboards/crkbd/keymaps/antosha417/keymap.c b/keyboards/crkbd/keymaps/antosha417/keymap.c new file mode 100644 index 0000000000..bdee148485 --- /dev/null +++ b/keyboards/crkbd/keymaps/antosha417/keymap.c @@ -0,0 +1,401 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H +#include "sendstring_dvorak.h" + +typedef union { + uint32_t raw; + struct { + bool is_macos :1; + }; +} user_config; + +user_config config; + +enum layers { + _QWERTY, + _DVORAK, + _LOWER, + _RAISE, + _TOP, + _BOTTOM, +}; + +enum keycodes { + QWERTY = SAFE_RANGE, + + RUS_LANG, + EN_LANG, + HEB_LANG, + + VIM_SAVE, + + CHNGE_OS, + DELETE_WORD, + +#define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + keycode, +#include "mod_tap_keys.h" +#undef MOD_TAP_KEY +}; + + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define TOP MO(_TOP) +#define BOTTOM MO(_BOTTOM) +#define LANG TG(_DVORAK) +#define KC_CAD LALT(LCTL(KC_DEL)) +#define KC_CAH LALT(LCTL(KC_HOME)) + +#define E_SFT LSFT_T(KC_E) +#define D_SFT LSFT_T(KC_D) +#define A_ALT LALT_T(KC_A) +#define O_GUI LGUI_T(KC_O) +#define U_CTRL LCTL_T(KC_U) + +#define T_SFT RSFT_T(KC_T) +#define K_SFT RSFT_T(KC_K) +#define S_ALT RALT_T(KC_S) +#define N_GUI RGUI_T(KC_N) +#define H_CTRL RCTL_T(KC_H) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_QWERTY] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_ESC, A_ALTQ, S_GUIQ, D_SFT, F_CTLQ, KC_G, KC_H, J_CTLQ, K_SFT, L_GUIQ, SCLN_Q, KC_QUOT, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + BOTTOM, KC_SPC, LOWER, RAISE, KC_SPC, TOP + //`--------------------------' `--------------------------' +), + +[_DVORAK] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_BSPC, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LCTL, A_ALT, O_GUI, E_SFT, U_CTRL, KC_I, KC_D, H_CTRL, T_SFT, N_GUI, S_ALT, KC_QUOT, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_ESC, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //`--------------------------' `--------------------------' +), + +[_LOWER] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + KC_F11, KC_UNDS, KC_MINS, KC_TILD, KC_PERC, KC_QUOT, _______, KC_CIRC, KC_GRV, KC_BSLS, KC_PIPE, KC_MINS, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_DEL, KC_LBRC, KC_LCBR, KC_PLUS, KC_LPRN, KC_EQL, KC_ASTR, KC_RPRN, KC_EXLM, KC_RCBR, KC_RBRC, KC_BSPC, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_CAD, KC_CAH, _______, LANG, _______, _______,HEB_LANG, EN_LANG,RUS_LANG, _______, _______, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //`--------------------------' `--------------------------' + //^^^^^^^ +), + + +[_RAISE] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + KC_F11, _______, _______, KC_DLR, KC_AMPR, _______, KC_COLON, KC_QUES, KC_AT, KC_HASH, KC_SLSH, KC_F12, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_7, KC_5, KC_3, KC_1, KC_9, KC_0, KC_2, KC_4, KC_6, KC_8, KC_BSPC, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_F7, KC_F5, KC_F3, KC_F1, KC_F9, KC_F10, KC_F2, KC_F4, KC_F6, KC_F8, _______, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //`--------------------------' `--------------------------' + //^^^^^^^ +), + +[_TOP] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + _______,CHNGE_OS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, KC_DOWN, KC_UP, _______, _______, _______, _______, _______, _______, _______, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //`--------------------------' `--------------------------' + //^^^^^^^ +), + +[_BOTTOM] = LAYOUT_split_3x6_3( +//,-----------------------------------------------------. ,-----------------------------------------------------. + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RGHT, _______, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, KC_LEFT, _______, _______, _______, _______, +//|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, _______, _______, +//|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + //`--------------------------' `--------------------------' + //^^^^^^^ +) + +}; + +enum combo_events { + // combos for dvorak layer + RU_COMBO, + EN_COMBO, + HEB_COMBO, + ESC_COMBO, + TAB_COMBO, + ENT_COMBO, + DEL_COMBO, + SAVE_COMBO, + BSPC_COMBO, + BSPCW_COMBO, + + // combos for qwerty layer + RUQ_COMBO, + ENQ_COMBO, + HEBQ_COMBO, + ESCQ_COMBO, + TABQ_COMBO, + ENTQ_COMBO, + DELQ_COMBO, + SAVEQ_COMBO, + BSPCQ_COMBO, + BSPCWQ_COMBO, + + COMBO_LENGTH +}; +uint16_t COMBO_LEN = COMBO_LENGTH; + +const uint16_t PROGMEM ru_combo[] = {KC_R, U_CTRL, COMBO_END}; +const uint16_t PROGMEM en_combo[] = {U_CTRL, S_ALT, COMBO_END}; +const uint16_t PROGMEM heb_combo[] = {KC_I, KC_V, COMBO_END}; +const uint16_t PROGMEM esc_combo[] = {H_CTRL, U_CTRL, COMBO_END}; +const uint16_t PROGMEM tab_combo[] = {T_SFT, A_ALT, COMBO_END}; +const uint16_t PROGMEM ent_combo[]= {E_SFT, N_GUI, COMBO_END}; +const uint16_t PROGMEM del_combo[] = {KC_D, E_SFT, COMBO_END}; +const uint16_t PROGMEM bspc_combo[] = {KC_C, H_CTRL, COMBO_END}; +const uint16_t PROGMEM bspcw_combo[] = {N_GUI, U_CTRL, COMBO_END}; +const uint16_t PROGMEM save_combo[] = {O_GUI, H_CTRL, COMBO_END}; + +const uint16_t PROGMEM ruq_combo[] = {KC_O, F_CTLQ, COMBO_END}; +const uint16_t PROGMEM enq_combo[] = {F_CTLQ, SCLN_Q, COMBO_END}; +const uint16_t PROGMEM hebq_combo[] = {KC_G, KC_DOT, COMBO_END}; +const uint16_t PROGMEM escq_combo[] = {F_CTLQ, J_CTLQ, COMBO_END}; +const uint16_t PROGMEM tabq_combo[] = {K_SFT, A_ALTQ, COMBO_END}; +const uint16_t PROGMEM entq_combo[] = {D_SFT, L_GUIQ, COMBO_END}; +const uint16_t PROGMEM delq_combo[] = {KC_H, D_SFT, COMBO_END}; +const uint16_t PROGMEM bspcq_combo[] = {KC_I, J_CTLQ, COMBO_END}; +const uint16_t PROGMEM bspcwq_combo[] = {L_GUIQ, F_CTLQ, COMBO_END}; +const uint16_t PROGMEM saveq_combo[] = {S_GUIQ, J_CTLQ, COMBO_END}; + +combo_t key_combos[] = { + [RU_COMBO] = COMBO(ru_combo, RUS_LANG), + [EN_COMBO] = COMBO(en_combo, EN_LANG), + [HEB_COMBO] = COMBO(heb_combo, HEB_LANG), + [ESC_COMBO] = COMBO(esc_combo, KC_ESC), + [TAB_COMBO] = COMBO(tab_combo, KC_TAB), + [ENT_COMBO] = COMBO(ent_combo, KC_ENT), + [DEL_COMBO] = COMBO(del_combo, KC_DEL), + [BSPC_COMBO] = COMBO(bspc_combo, KC_BSPC), + [SAVE_COMBO] = COMBO(save_combo, VIM_SAVE), + [BSPCW_COMBO] = COMBO(bspcw_combo, DELETE_WORD), + + [RUQ_COMBO] = COMBO(ruq_combo, RUS_LANG), + [ENQ_COMBO] = COMBO(enq_combo, EN_LANG), + [HEBQ_COMBO] = COMBO(hebq_combo, HEB_LANG), + [ESCQ_COMBO] = COMBO(escq_combo, KC_ESC), + [TABQ_COMBO] = COMBO(tabq_combo, KC_TAB), + [ENTQ_COMBO] = COMBO(entq_combo, KC_ENT), + [DELQ_COMBO] = COMBO(delq_combo, KC_DEL), + [BSPCQ_COMBO] = COMBO(bspcq_combo, KC_BSPC), + [SAVEQ_COMBO] = COMBO(saveq_combo, VIM_SAVE), + [BSPCWQ_COMBO] = COMBO(bspcwq_combo, DELETE_WORD), +}; + + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (!is_keyboard_master()) { + return OLED_ROTATION_180; // flips the display 180 degrees if offhand + } + return rotation; +} + +void oled_render_layer_state(void) { + oled_write_P(PSTR("layer: "), false); + switch (get_highest_layer(layer_state|default_layer_state)) { + case _QWERTY: + oled_write_ln_P(PSTR("qwerty"), false); + break + case _DVORAK: + oled_write_ln_P(PSTR("dvorak"), false); + break; + case _LOWER: + oled_write_ln_P(PSTR("lower"), false); + break; + case_RAISE: + oled_write_ln_P(PSTR("raise"), false); + break; + case _TOP: + oled_write_ln_P(PSTR("top"), false); + break; + case _BOTTOM: + oled_write_ln_P(PSTR("bottom"), false); + break; + default: + oled_write_ln_P(PSTR("unknown"), false); + break; + } +} + +void render_bootmagic_status(bool status) { + /* Show Ctrl-Gui Swap options */ + static const char PROGMEM logo[][2][3] = { + {{0x97, 0x98, 0}, {0xb7, 0xb8, 0}}, + {{0x95, 0x96, 0}, {0xb5, 0xb6, 0}}, + }; + if (status) { + oled_write_ln_P(logo[0][0], false); + oled_write_ln_P(logo[0][1], false); + } else { + oled_write_ln_P(logo[1][0], false); + oled_write_ln_P(logo[1][1], false); + } +} + +void oled_render_logo(void) { + static const char PROGMEM crkbd_logo[] = { + 0x80, 0x81, 0x82, 0x83, 0x84, 0x85, 0x86, 0x87, 0x88, 0x89, 0x8a, 0x8b, 0x8c, 0x8d, 0x8e, 0x8f, 0x90, 0x91, 0x92, 0x93, 0x94, + 0xa0, 0xa1, 0xa2, 0xa3, 0xa4, 0xa5, 0xa6, 0xa7, 0xa8, 0xa9, 0xaa, 0xab, 0xac, 0xad, 0xae, 0xaf, 0xb0, 0xb1, 0xb2, 0xb3, 0xb4, + 0xc0, 0xc1, 0xc2, 0xc3, 0xc4, 0xc5, 0xc6, 0xc7, 0xc8, 0xc9, 0xca, 0xcb, 0xcc, 0xcd, 0xce, 0xcf, 0xd0, 0xd1, 0xd2, 0xd3, 0xd4, + 0}; + oled_write_P(crkbd_logo, false); +} + +bool oled_task_user(void) { + if (is_keyboard_master()) { + oled_write_ln_P(PSTR("nice cock"), false); + oled_render_layer_state(); + } else { + oled_render_logo(); + } + return false; +} + +#endif // OLED_ENABLE + +void keyboard_post_init_user(void) { + config.raw = eeconfig_read_user(); + layer_on(_DVORAK); +} + +void set_english_language(void) { + layer_on(_DVORAK); + tap_code16(LSFT(LCTL(LGUI(KC_1)))); +} + +void set_russian_language(void) { + layer_off(_DVORAK); + tap_code16(LSFT(LCTL(LGUI(KC_2)))); +} + +void set_hebrew_language(void) { + layer_off(_DVORAK); + tap_code16(LSFT(LCTL(LGUI(KC_3)))); +} + +void delete_word(void) { + if (config.is_macos) { + tap_code16(A(KC_BSPC)); + } else { + tap_code16(C(KC_BSPC)); + } +} + +#define CASE(keycode, key_pressed_action, key_released_action) \ + case (keycode): \ + if (record->event.pressed) { \ + key_pressed_action; \ + } else { \ + key_released_action; \ + } \ + return false; \ + break; + +#define CASE_PRESSED(keycode, key_pressed_action) CASE(keycode, key_pressed_action, {}); + +#define CASE_MOD_TAP_KEY(keycode, tap_action, mod_off_action) \ + CASE(keycode, { \ + keycode ## _TIMER = timer_read(); \ + IS_ ## keycode ## _ACTIVE = true; \ + }, { \ + if(IS_ ## keycode ## _MOD_ACTIVE) { \ + mod_off_action; \ + } else if (IS_ ## keycode ## _ACTIVE) { \ + tap_action; \ + } \ + IS_ ## keycode ## _MOD_ACTIVE = false; \ + IS_ ## keycode ## _ACTIVE = false; \ + }); + +#define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ +uint16_t keycode ## _TIMER = 0; \ +bool IS_ ## keycode ## _ACTIVE = false; \ +bool IS_ ## keycode ## _MOD_ACTIVE = false; +#include "mod_tap_keys.h" +#undef MOD_TAP_KEY + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + #ifdef OLED_ENABLE + if (record->event.pressed) { + set_keylog(keycode, record); + } +#endif //OLED_ENABLE + + switch (keycode) { + CASE_PRESSED(EN_LANG, set_english_language()); + CASE_PRESSED(RUS_LANG, set_russian_language()); + CASE_PRESSED(HEB_LANG, set_hebrew_language()); + + CASE_PRESSED(VIM_SAVE, {set_english_language(); SEND_STRING(SS_TAP(X_ESC)SS_LSFT(SS_TAP(X_SCLN))SS_TAP(X_W)SS_TAP(X_ENT));}); + + CASE_PRESSED(CHNGE_OS, {config.is_macos ^= 1; eeconfig_update_user(config.raw);}); + CASE_PRESSED(DELETE_WORD, delete_word()); + + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + CASE_MOD_TAP_KEY(keycode, tap_action, mod_off_action); + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY + } + + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + if (IS_ ## keycode ## _ACTIVE && !IS_ ## keycode ## _MOD_ACTIVE) { \ + if (timer_elapsed(keycode ## _TIMER) <= TAPPING_TERM) { \ + tap_action; \ + IS_ ## keycode ## _ACTIVE = false; \ + } \ + } + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY + + return true; +} + +void matrix_scan_user(void) { + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + if (IS_ ## keycode ## _ACTIVE) { \ + if (timer_elapsed(keycode ## _TIMER) > TAPPING_TERM) { \ + mod_on_action; \ + IS_ ## keycode ## _MOD_ACTIVE = true; \ + } \ + } + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY +} + diff --git a/keyboards/crkbd/keymaps/antosha417/mod_tap_keys.h b/keyboards/crkbd/keymaps/antosha417/mod_tap_keys.h new file mode 100644 index 0000000000..0d7a86b691 --- /dev/null +++ b/keyboards/crkbd/keymaps/antosha417/mod_tap_keys.h @@ -0,0 +1,15 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later + +// MOD_TAP_KEY(key, tap_action, mod_on_action, mod_off_action) + +MOD_TAP_KEY(S_GUIQ, tap_code(KC_S), {layer_on(_DVORAK); register_code(KC_LGUI);}, {layer_off(_DVORAK); unregister_code(KC_LGUI);}) +MOD_TAP_KEY(L_GUIQ, tap_code(KC_L), {layer_on(_DVORAK); register_code(KC_RGUI);}, {layer_off(_DVORAK); unregister_code(KC_RGUI);}) + +MOD_TAP_KEY(F_CTLQ, tap_code(KC_F), {layer_on(_DVORAK); register_code(KC_LCTL);}, {layer_off(_DVORAK); unregister_code(KC_LCTL);}) +MOD_TAP_KEY(J_CTLQ, tap_code(KC_J), {layer_on(_DVORAK); register_code(KC_RCTL);}, {layer_off(_DVORAK); unregister_code(KC_RCTL);}) + +MOD_TAP_KEY(A_ALTQ, tap_code(KC_A), {layer_on(_DVORAK); register_code(KC_LALT);}, {layer_off(_DVORAK); unregister_code(KC_LALT);}) +MOD_TAP_KEY(SCLN_Q, tap_code(KC_SCLN), {layer_on(_DVORAK); register_code(KC_RALT);},{layer_off(_DVORAK); unregister_code(KC_RALT);}) + + diff --git a/keyboards/crkbd/keymaps/antosha417/rules.mk b/keyboards/crkbd/keymaps/antosha417/rules.mk new file mode 100644 index 0000000000..63a3a16616 --- /dev/null +++ b/keyboards/crkbd/keymaps/antosha417/rules.mk @@ -0,0 +1,5 @@ +OLED_ENABLE = yes +COMBO_ENABLE = yes + +LTO_ENABLE = yes #enable link time optimization to reduce binary size + diff --git a/keyboards/crkbd/keymaps/antosha417/todo.md b/keyboards/crkbd/keymaps/antosha417/todo.md new file mode 100644 index 0000000000..4ee83af65d --- /dev/null +++ b/keyboards/crkbd/keymaps/antosha417/todo.md @@ -0,0 +1,13 @@ +# Notes: + * to flush firmware to keyboard use: + ``` + $ make crkbd/rev1:antosha417:avrdude-split-right + $ make crkbd/rev1:antosha417:avrdude-split-left + ``` + +# Todo: + [ ] do something with displayig symbols on oled screen + [ ] count wpm + [ ] load images + [X] figure out how to delete word on linux + [X] fix oled layer names diff --git a/keyboards/planck/keymaps/antosha417/config.h b/keyboards/planck/keymaps/antosha417/config.h new file mode 100644 index 0000000000..9bbb1192c7 --- /dev/null +++ b/keyboards/planck/keymaps/antosha417/config.h @@ -0,0 +1,34 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#ifdef AUDIO_ENABLE + #define STARTUP_SONG SONG(PLANCK_SOUND) + // #define STARTUP_SONG SONG(NO_SOUND) +#endif + +/* + * MIDI options + */ + +/* 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 + +// Most tactile encoders have detents every 4 stages +#define ENCODER_RESOLUTION 4 + +#define TAPPING_TERM 200 +#define IGNORE_MOD_TAP_INTERRUPT +#define COMBO_TERM 30 + diff --git a/keyboards/planck/keymaps/antosha417/keymap.c b/keyboards/planck/keymaps/antosha417/keymap.c new file mode 100644 index 0000000000..a3d46c2311 --- /dev/null +++ b/keyboards/planck/keymaps/antosha417/keymap.c @@ -0,0 +1,452 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H +#include "sendstring_dvorak.h" +#include "muse.h" + +enum layers { + _QWERTY, + _DVORAK, + _LOWER, + _RAISE, + _TOP, + _BOTTOM, + _ADJUST +}; + +float USSR_SONG[][2] = SONG(B__NOTE(_G6), + B__NOTE(_C7), W__NOTE(_G6), H__NOTE(_A6), + B__NOTE(_B6), W__NOTE(_E6), W__NOTE(_E6), + B__NOTE(_A6), W__NOTE(_G6), H__NOTE(_F6), + B__NOTE(_G6), W__NOTE(_C6), W__NOTE(_C6), + B__NOTE(_D6), W__NOTE(_D6), W__NOTE(_E6), + B__NOTE(_D6), W__NOTE(_D6), W__NOTE(_G6), + B__NOTE(_F6), W__NOTE(_G6), W__NOTE(_A6), + B__NOTE(_B6), + ); + +enum keycodes { + QWERTY = SAFE_RANGE, + + RUS_LANG, + EN_LANG, + HEB_LANG, + + BRUDERSCHAFT, + VIM_SAVE, + +#define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + keycode, +#include "mod_tap_keys.h" +#undef MOD_TAP_KEY +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define TOP MO(_TOP) +#define BOTTOM MO(_BOTTOM) +#define LANG TG(_DVORAK) +#define KC_CAD LALT(LCTL(KC_DEL)) +#define KC_CAH LALT(LCTL(KC_HOME)) + +#define E_SFT LSFT_T(KC_E) +#define D_SFT LSFT_T(KC_D) +#define A_ALT LALT_T(KC_A) +#define O_GUI LGUI_T(KC_O) +#define U_CTRL LCTL_T(KC_U) + +#define T_SFT RSFT_T(KC_T) +#define K_SFT RSFT_T(KC_K) +#define S_ALT RALT_T(KC_S) +#define N_GUI RGUI_T(KC_N) +#define H_CTRL RCTL_T(KC_H) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | | Q | W | E | R | T | Y | U | I | O | P | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | A | S | D | F | G | H | J | K | L | ; | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Z | X | C | V | B | N | M | , | . | / | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | |Bottom| SPC |Lower |Raise | SPC | TOP | | | | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_planck_grid( + _______, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, _______, + _______, A_ALTQ, S_GUIQ, D_SFT, F_CTLQ, KC_G, KC_H, J_CTLQ, K_SFT, L_GUIQ, SCLN_Q, _______, + _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, _______, + _______, _______, _______, BOTTOM, KC_SPC, LOWER, RAISE, KC_SPC, TOP, _______, _______, _______ +), + +/* Dvorak + * ,-----------------------------------------------------------------------------------. + * | | ' | , | . | P | Y | F | G | C | R | L | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | A | O | E | U | I | D | H | T | N | S | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | ; | Q | J | K | X | B | M | W | V | Z | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_DVORAK] = LAYOUT_planck_grid( + _______, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, _______, + _______, A_ALT, O_GUI, E_SFT, U_CTRL, KC_I, KC_D, H_CTRL, T_SFT, N_GUI, S_ALT, _______, + _______, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | F11 | _ | - | ~ | % | ' | | ^ | ` | \ | | | - | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | [ | { | + | ( | = | * | ) | ! | } | ] | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | CAD | CAH | | LANG | | | EN | HEB | RUS | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | RCTL | | | | [{}] | | | PSCR | PGDN | PGUP | | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_planck_grid( + KC_F11, KC_UNDS, KC_MINS, KC_TILD, KC_PERC, KC_QUOT, _______, KC_CIRC, KC_GRV, KC_BSLS, KC_PIPE, KC_MINS, + KC_DEL, KC_LBRC, KC_LCBR, KC_PLUS, KC_LPRN, KC_EQL, KC_ASTR, KC_RPRN, KC_EXLM, KC_RCBR, KC_RBRC, KC_BSPC, + _______, KC_CAD, KC_CAH, _______, LANG, _______, _______, HEB_LANG, EN_LANG, RUS_LANG, _______, _______, + _______, KC_RCTL, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_PGDN, KC_PGUP, _______ +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | F11 | | | $ | & | | : | ? | @ | # | / | F12 | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | 7 | 5 | 3 | 1 | 9 | 0 | 2 | 4 | 6 | 8 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F5 | F3 | F1 | F9 | F10 | F2 | F4 | F6 | F8 | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | [{}] | | Vol- | End | Home | Vol+ | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_planck_grid( + KC_F11, _______, _______, KC_DLR, KC_AMPR, _______, KC_COLON, KC_QUES, KC_AT, KC_HASH, KC_SLSH, KC_F12, + _______, KC_7, KC_5, KC_3, KC_1, KC_9, KC_0, KC_2, KC_4, KC_6, KC_8, KC_BSPC, + _______, KC_F7, KC_F5, KC_F3, KC_F1, KC_F9, KC_F10, KC_F2, KC_F4, KC_F6, KC_F8, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_END, KC_HOME, KC_VOLU +), + +/* TOP + * ,----------------------------------------------------------------------------------- + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | Down | Up | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | [{}] | | | | + * `-----------------------------------------------------------------------------------' + */ +[_TOP] = LAYOUT_planck_grid( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, KC_DOWN, KC_UP, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* BOTTOM + * ,----------------------------------------------------------------------------------- + * | | | | | | | | | | | -> | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | <- | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | vold | volu | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | [{}] | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_BOTTOM] = LAYOUT_planck_grid( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RGHT, _______, + _______, _______, _______, _______, _______, _______, _______, KC_LEFT, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* Adjust (Lower + Raise) + * v------------------------RGB CONTROL--------------------v + * ,----------------------------------------------------------------------------------- + * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | |Aud on|Audoff| | | | | | |Dvorak| | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | |Mus on|Musoff| | | | | | | | | USSR | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | [{}] | [{}] | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_planck_grid( + _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, AU_ON, AU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, BRUDERSCHAFT, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +void keyboard_post_init_user(void) { + layer_on(_DVORAK); +} + +void set_english_language(void) { + layer_on(_DVORAK); + SEND_STRING(SS_LSFT(SS_LCTL(SS_LGUI(SS_TAP(X_1))))); +} + +void set_russian_language(void) { + layer_off(_DVORAK); + SEND_STRING(SS_LSFT(SS_LCTL(SS_LGUI(SS_TAP(X_2))))); +} + +void set_hebrew_language(void) { + layer_off(_DVORAK); + SEND_STRING(SS_LSFT(SS_LCTL(SS_LGUI(SS_TAP(X_3))))); +} + + +#define CASE(keycode, key_pressed_action, key_released_action) \ + case (keycode): \ + if (record->event.pressed) { \ + key_pressed_action; \ + } else { \ + key_released_action; \ + } \ + return false; \ + break; + +#define CASE_PRESSED(keycode, key_pressed_action) CASE(keycode, key_pressed_action, {}); + +#define CASE_MOD_TAP_KEY(keycode, tap_action, mod_off_action) \ + CASE(keycode, { \ + keycode ## _TIMER = timer_read(); \ + IS_ ## keycode ## _ACTIVE = true; \ + }, { \ + if(IS_ ## keycode ## _MOD_ACTIVE) { \ + mod_off_action; \ + } else if (IS_ ## keycode ## _ACTIVE) { \ + tap_action; \ + } \ + IS_ ## keycode ## _MOD_ACTIVE = false; \ + IS_ ## keycode ## _ACTIVE = false; \ + }); + +#define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ +uint16_t keycode ## _TIMER = 0; \ +bool IS_ ## keycode ## _ACTIVE = false; \ +bool IS_ ## keycode ## _MOD_ACTIVE = false; +#include "mod_tap_keys.h" +#undef MOD_TAP_KEY + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + CASE_PRESSED(BRUDERSCHAFT, PLAY_SONG(USSR_SONG)); + + CASE_PRESSED(EN_LANG, set_english_language()); + CASE_PRESSED(RUS_LANG, set_russian_language()); + CASE_PRESSED(HEB_LANG, set_hebrew_language()); + + CASE_PRESSED(VIM_SAVE, {set_english_language(); SEND_STRING(SS_TAP(X_ESC)SS_LSFT(SS_TAP(X_SCLN))SS_TAP(X_W)SS_TAP(X_ENT));}); + + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + CASE_MOD_TAP_KEY(keycode, tap_action, mod_off_action); + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY + } + + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + if (IS_ ## keycode ## _ACTIVE && !IS_ ## keycode ## _MOD_ACTIVE) { \ + if (timer_elapsed(keycode ## _TIMER) <= TAPPING_TERM) { \ + tap_action; \ + IS_ ## keycode ## _ACTIVE = false; \ + } \ + } + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY + + return true; +} + +bool muse_mode = false; +uint8_t last_muse_note = 0; +uint16_t muse_counter = 0; +uint8_t muse_offset = 70; +uint16_t muse_tempo = 50; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (muse_mode) { + if (IS_LAYER_ON(_RAISE)) { + if (clockwise) { + muse_offset++; + } else { + muse_offset--; + } + } else { + if (clockwise) { + muse_tempo+=1; + } else { + muse_tempo-=1; + } + } + } else { + if (clockwise) { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_DOWN); + #else + tap_code(KC_PGDN); + #endif + } else { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_UP); + #else + tap_code(KC_PGUP); + #endif + } + } + return false; +} + +bool dip_switch_update_user(uint8_t index, bool active) { + switch (index) { + case 0: + if (active) { + layer_off(_ADJUST); + } + break; + case 1: + if (active) { + muse_mode = true; + } else { + muse_mode = false; + #ifdef AUDIO_ENABLE + stop_all_notes(); + #endif + } + } + return true; +} + +void matrix_scan_user(void) { + #define MOD_TAP_KEY(keycode, tap_action, mod_on_action, mod_off_action) \ + if (IS_ ## keycode ## _ACTIVE) { \ + if (timer_elapsed(keycode ## _TIMER) > TAPPING_TERM) { \ + mod_on_action; \ + IS_ ## keycode ## _MOD_ACTIVE = true; \ + } \ + } + #include "mod_tap_keys.h" + #undef MOD_TAP_KEY + + #ifdef AUDIO_ENABLE + if (muse_mode) { + if (muse_counter == 0) { + uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()]; + if (muse_note != last_muse_note) { + stop_note(compute_freq_for_midi_note(last_muse_note)); + play_note(compute_freq_for_midi_note(muse_note), 0xF); + last_muse_note = muse_note; + } + } + muse_counter = (muse_counter + 1) % muse_tempo; + } + #endif +} + +bool music_mask_user(uint16_t keycode) { + switch (keycode) { + case RAISE: + case LOWER: + return false; + default: + return true; + } +} + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +enum combo_events { + // combos for dvorak layer + RU_COMBO, + EN_COMBO, + HEB_COMBO, + ESC_COMBO, + TAB_COMBO, + ENT_COMBO, + DEL_COMBO, + SAVE_COMBO, + BSPC_COMBO, + BSPCW_COMBO, + + // combos for qwerty layer + RUQ_COMBO, + ENQ_COMBO, + HEBQ_COMBO, + ESCQ_COMBO, + TABQ_COMBO, + ENTQ_COMBO, + DELQ_COMBO, + SAVEQ_COMBO, + BSPCQ_COMBO, + BSPCWQ_COMBO, + + COMBO_LENGTH +}; +uint16_t COMBO_LEN = COMBO_LENGTH; + +const uint16_t PROGMEM ru_combo[] = {KC_R, U_CTRL, COMBO_END}; +const uint16_t PROGMEM en_combo[] = {U_CTRL, S_ALT, COMBO_END}; +const uint16_t PROGMEM heb_combo[] = {KC_I, KC_V, COMBO_END}; +const uint16_t PROGMEM esc_combo[] = {H_CTRL, U_CTRL, COMBO_END}; +const uint16_t PROGMEM tab_combo[] = {T_SFT, A_ALT, COMBO_END}; +const uint16_t PROGMEM ent_combo[] = {E_SFT, N_GUI, COMBO_END}; +const uint16_t PROGMEM del_combo[] = {KC_D, E_SFT, COMBO_END}; +const uint16_t PROGMEM bspc_combo[] = {KC_C, H_CTRL, COMBO_END}; +const uint16_t PROGMEM bspcw_combo[] = {N_GUI, U_CTRL, COMBO_END}; +const uint16_t PROGMEM save_combo[] = {O_GUI, H_CTRL, COMBO_END}; + +const uint16_t PROGMEM ruq_combo[] = {KC_O, F_CTLQ, COMBO_END}; +const uint16_t PROGMEM enq_combo[] = {F_CTLQ, SCLN_Q, COMBO_END}; +const uint16_t PROGMEM hebq_combo[] = {KC_G, KC_DOT, COMBO_END}; +const uint16_t PROGMEM escq_combo[] = {F_CTLQ, J_CTLQ, COMBO_END}; +const uint16_t PROGMEM tabq_combo[] = {K_SFT, A_ALTQ, COMBO_END}; +const uint16_t PROGMEM entq_combo[] = {D_SFT, L_GUIQ, COMBO_END}; +const uint16_t PROGMEM delq_combo[] = {KC_H, D_SFT, COMBO_END}; +const uint16_t PROGMEM bspcq_combo[] = {KC_I, J_CTLQ, COMBO_END}; +const uint16_t PROGMEM bspcwq_combo[] = {L_GUIQ, F_CTLQ, COMBO_END}; +const uint16_t PROGMEM saveq_combo[] = {S_GUIQ, J_CTLQ, COMBO_END}; + +combo_t key_combos[] = { + [RU_COMBO] = COMBO(ru_combo, RUS_LANG), + [EN_COMBO] = COMBO(en_combo, EN_LANG), + [HEB_COMBO] = COMBO(heb_combo, HEB_LANG), + [ESC_COMBO] = COMBO(esc_combo, KC_ESC), + [TAB_COMBO] = COMBO(tab_combo, KC_TAB), + [ENT_COMBO] = COMBO(ent_combo, KC_ENT), + [DEL_COMBO] = COMBO(del_combo, KC_DEL), + [BSPC_COMBO] = COMBO(bspc_combo, KC_BSPC), + [SAVE_COMBO] = COMBO(save_combo, VIM_SAVE), + [BSPCW_COMBO] = COMBO(bspcw_combo, A(KC_BSPC)), + + [RUQ_COMBO] = COMBO(ruq_combo, RUS_LANG), + [ENQ_COMBO] = COMBO(enq_combo, EN_LANG), + [HEBQ_COMBO] = COMBO(hebq_combo, HEB_LANG), + [ESCQ_COMBO] = COMBO(escq_combo, KC_ESC), + [TABQ_COMBO] = COMBO(tabq_combo, KC_TAB), + [ENTQ_COMBO] = COMBO(entq_combo, KC_ENT), + [DELQ_COMBO] = COMBO(delq_combo, KC_DEL), + [BSPCQ_COMBO] = COMBO(bspcq_combo, KC_BSPC), + [SAVEQ_COMBO] = COMBO(saveq_combo, VIM_SAVE), + [BSPCWQ_COMBO] = COMBO(bspcwq_combo, A(KC_BSPC)), +}; + + diff --git a/keyboards/planck/keymaps/antosha417/mod_tap_keys.h b/keyboards/planck/keymaps/antosha417/mod_tap_keys.h new file mode 100644 index 0000000000..aa82f9692c --- /dev/null +++ b/keyboards/planck/keymaps/antosha417/mod_tap_keys.h @@ -0,0 +1,14 @@ +// Copyright 2021 Anton Kavalkou (@antosha417) +// SPDX-License-Identifier: GPL-2.0-or-later + +// MOD_TAP_KEY(key, tap_action, mod_on_action, mod_off_action) + +MOD_TAP_KEY(S_GUIQ, tap_code(KC_S), {layer_on(_DVORAK); register_code(KC_LGUI);}, {layer_off(_DVORAK); unregister_code(KC_LGUI);}) +MOD_TAP_KEY(L_GUIQ, tap_code(KC_L), {layer_on(_DVORAK); register_code(KC_RGUI);}, {layer_off(_DVORAK); unregister_code(KC_RGUI);}) + +MOD_TAP_KEY(F_CTLQ, tap_code(KC_F), {layer_on(_DVORAK); register_code(KC_LCTL);}, {layer_off(_DVORAK); unregister_code(KC_LCTL);}) +MOD_TAP_KEY(J_CTLQ, tap_code(KC_J), {layer_on(_DVORAK); register_code(KC_RCTL);}, {layer_off(_DVORAK); unregister_code(KC_RCTL);}) + +MOD_TAP_KEY(A_ALTQ, tap_code(KC_A), {layer_on(_DVORAK); register_code(KC_LALT);}, {layer_off(_DVORAK); unregister_code(KC_LALT);}) +MOD_TAP_KEY(SCLN_Q, tap_code(KC_SCLN), {layer_on(_DVORAK); register_code(KC_RALT);}, {layer_off(_DVORAK); unregister_code(KC_RALT);}) + diff --git a/keyboards/planck/keymaps/antosha417/readme.md b/keyboards/planck/keymaps/antosha417/readme.md new file mode 100644 index 0000000000..a7adbf74bb --- /dev/null +++ b/keyboards/planck/keymaps/antosha417/readme.md @@ -0,0 +1,11 @@ +# How to install: + + make planck/rev6:antosha417:flash + +# Useful: + * [keycodes](https://docs.qmk.fm/#/keycodes) + * [string keycodes](https://github.com/qmk/qmk_firmware/blob/master/quantum/send_string_keycodes.h) + +# Todo: + [ ] sync with corne + diff --git a/keyboards/planck/keymaps/antosha417/rules.mk b/keyboards/planck/keymaps/antosha417/rules.mk new file mode 100644 index 0000000000..4697695252 --- /dev/null +++ b/keyboards/planck/keymaps/antosha417/rules.mk @@ -0,0 +1,4 @@ +SRC += muse.c +AUDIO_ENABLE = yes +COMBO_ENABLE = yes + From 7e0dde1f0009bc47430091736d7893148876b4ec Mon Sep 17 00:00:00 2001 From: somepin <79652090+somepin@users.noreply.github.com> Date: Fri, 25 Mar 2022 20:45:35 -0400 Subject: [PATCH 174/699] [Keyboard] Add YDKB Grape PCB (#16661) Co-authored-by: Drashna Jaelre --- keyboards/ydkb/grape/config.h | 57 ++++++++ keyboards/ydkb/grape/grape.c | 16 +++ keyboards/ydkb/grape/grape.h | 47 +++++++ keyboards/ydkb/grape/info.json | 130 ++++++++++++++++++ keyboards/ydkb/grape/keymaps/default/keymap.c | 29 ++++ keyboards/ydkb/grape/keymaps/via/keymap.c | 51 +++++++ keyboards/ydkb/grape/keymaps/via/rules.mk | 2 + keyboards/ydkb/grape/matrix.c | 96 +++++++++++++ keyboards/ydkb/grape/readme.md | 23 ++++ keyboards/ydkb/grape/rules.mk | 22 +++ 10 files changed, 473 insertions(+) create mode 100644 keyboards/ydkb/grape/config.h create mode 100644 keyboards/ydkb/grape/grape.c create mode 100644 keyboards/ydkb/grape/grape.h create mode 100644 keyboards/ydkb/grape/info.json create mode 100644 keyboards/ydkb/grape/keymaps/default/keymap.c create mode 100644 keyboards/ydkb/grape/keymaps/via/keymap.c create mode 100644 keyboards/ydkb/grape/keymaps/via/rules.mk create mode 100644 keyboards/ydkb/grape/matrix.c create mode 100644 keyboards/ydkb/grape/readme.md create mode 100644 keyboards/ydkb/grape/rules.mk diff --git a/keyboards/ydkb/grape/config.h b/keyboards/ydkb/grape/config.h new file mode 100644 index 0000000000..3396f18d61 --- /dev/null +++ b/keyboards/ydkb/grape/config.h @@ -0,0 +1,57 @@ +/* Copyright 2022 somepin + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5945 // "YE" +#define PRODUCT_ID 0x6772 // "GR" +#define DEVICE_VER 0x0001 +#define MANUFACTURER YDKB +#define PRODUCT Grape + +/* key matrix size */ +#define MATRIX_ROWS 7 +#define MATRIX_COLS 18 + +#define MATRIX_COL_PINS { F4, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, B3, B2, B1, B0 } + +#define SN74X138_ADDRESS_PINS { D2, D1, D0 } + +#define LED_NUM_LOCK_PIN F1 +#define LED_CAPS_LOCK_PIN F0 +#define LED_SCROLL_LOCK_PIN E6 +#define LED_PIN_ON_STATE 0 + +#define BACKLIGHT_PIN B7 +#define BACKLIGHT_BREATHING +#define BACKLIGHT_LEVELS 3 + +#ifdef RGBLIGHT_ENABLE +#define RGB_DI_PIN E6 +#define RGBLED_NUM 4 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/ydkb/grape/grape.c b/keyboards/ydkb/grape/grape.c new file mode 100644 index 0000000000..c0d33b064b --- /dev/null +++ b/keyboards/ydkb/grape/grape.c @@ -0,0 +1,16 @@ +/* Copyright 2022 somepin + * + * 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 . + */ +#include "grape.h" diff --git a/keyboards/ydkb/grape/grape.h b/keyboards/ydkb/grape/grape.h new file mode 100644 index 0000000000..0f20f7ea8a --- /dev/null +++ b/keyboards/ydkb/grape/grape.h @@ -0,0 +1,47 @@ +/* Copyright 2022 somepin + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_all( \ + K0A, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J, K0K, K0L, K0N, K0P, K0Q, K0R, K0S, \ + K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1L, K1P, K1Q, K1R, K1S, \ + K2P, K2Q, K2R, K2S, \ + K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2M, K2N, K1N, K3P, K3Q, K3R, K3S, \ + K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3N, K4P, K4Q, K4R, K4S, \ + K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4N, K5Q, K5R, K5S, \ + K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K4M, K5N, K6Q, K6R, K6S, \ + K6A, K6B, K6C, K6E, K6F, K6H, K6I, K6J, K6K, K6L, K6M, K6N, K5P, K6P \ +) { \ + { K0A, XXX, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J, K0K, K0L, XXX, K0N, K0P, K0Q, K0R, K0S }, \ + { XXX, XXX, K1C, K1D, K1E, K1F, K1G, K1H, K1I, K1J, K1K, K1L, XXX, K1N, K1P, K1Q, K1R, K1S }, \ + { K2A, K2B, K2C, K2D, K2E, K2F, K2G, K2H, K2I, K2J, K2K, K2L, K2M, K2N, K2P, K2Q, K2R, K2S }, \ + { K3A, K3B, K3C, K3D, K3E, K3F, K3G, K3H, K3I, K3J, K3K, K3L, K3M, K3N, K3P, K3Q, K3R, K3S }, \ + { K4A, K4B, K4C, K4D, K4E, K4F, K4G, K4H, K4I, K4J, K4K, K4L, K4M, K4N, K4P, K4Q, K4R, K4S }, \ + { K5A, K5B, K5C, K5D, K5E, K5F, K5G, K5H, K5I, K5J, K5K, K5L, K5M, K5N, K5P, K5Q, K5R, K5S }, \ + { K6A, K6B, K6C, XXX, K6E, K6F, XXX, K6H, K6I, K6J, K6K, K6L, K6M, K6N, K6P, K6Q, K6R, K6S } \ +} diff --git a/keyboards/ydkb/grape/info.json b/keyboards/ydkb/grape/info.json new file mode 100644 index 0000000000..9024ca4d0b --- /dev/null +++ b/keyboards/ydkb/grape/info.json @@ -0,0 +1,130 @@ +{ + "keyboard_name": "Grape", + "url": "https://item.taobao.com/item.htm?id=642205244150", + "maintainer": "Gacathon", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "Esc", "x": 0, "y": 0 }, + { "label": "F1", "x": 2, "y": 0 }, + { "label": "F2", "x": 3, "y": 0 }, + { "label": "F3", "x": 4, "y": 0 }, + { "label": "F4", "x": 5, "y": 0 }, + { "label": "F5", "x": 6, "y": 0 }, + { "label": "F6", "x": 7, "y": 0 }, + { "label": "Insert", "x": 8.5, "y": 0 }, + { "label": "Home", "x": 9.5, "y": 0 }, + { "label": "PgUp", "x": 10.5, "y": 0 }, + { "label": "PrtSc", "x": 11.5, "y": 0 }, + { "label": "Pause", "x": 13, "y": 0 }, + { "label": "Num Lock", "x": 16, "y": 0 }, + { "label": "/", "x": 17, "y": 0 }, + { "label": "*", "x": 18, "y": 0 }, + { "label": "-", "x": 19, "y": 0 }, + { "label": "F7", "x": 2, "y": 1 }, + { "label": "F8", "x": 3, "y": 1 }, + { "label": "F9", "x": 4, "y": 1 }, + { "label": "F10", "x": 5, "y": 1 }, + { "label": "F11", "x": 6, "y": 1 }, + { "label": "F12", "x": 7, "y": 1 }, + { "label": "Delete", "x": 8.5, "y": 1 }, + { "label": "End", "x": 9.5, "y": 1 }, + { "label": "PgDn", "x": 10.5, "y": 1 }, + { "label": "Scroll Lock", "x": 11.5, "y": 1 }, + { "label": "7", "x": 16, "y": 1 }, + { "label": "8", "x": 17, "y": 1 }, + { "label": "9", "x": 18, "y": 1 }, + { "label": "+", "x": 19, "y": 1 }, + { "label": "4", "x": 16, "y": 2 }, + { "label": "5", "x": 17, "y": 2 }, + { "label": "6", "x": 18, "y": 2 }, + { "label": "+", "x": 19, "y": 2 }, + { "label": "~", "x": 0, "y": 3 }, + { "label": "!", "x": 1, "y": 3 }, + { "label": "@", "x": 2, "y": 3 }, + { "label": "#", "x": 3, "y": 3 }, + { "label": "$", "x": 4, "y": 3 }, + { "label": "%", "x": 5, "y": 3 }, + { "label": "^", "x": 6, "y": 3 }, + { "label": "&", "x": 7, "y": 3 }, + { "label": "*", "x": 8, "y": 3 }, + { "label": "(", "x": 9, "y": 3 }, + { "label": ")", "x": 10, "y": 3 }, + { "label": "_", "x": 11, "y": 3 }, + { "label": "+", "x": 12, "y": 3 }, + { "label": "Bksp", "x": 13, "y": 3 }, + { "label": "Bksp", "x": 14, "y": 3 }, + { "label": "1", "x": 16, "y": 3 }, + { "label": "2", "x": 17, "y": 3 }, + { "label": "3", "x": 18, "y": 3 }, + { "label": "Enter", "x": 19, "y": 3 }, + { "label": "Tab", "x": 0, "y": 4, "w": 1.5 }, + { "label": "Q", "x": 1.5, "y": 4 }, + { "label": "W", "x": 2.5, "y": 4 }, + { "label": "E", "x": 3.5, "y": 4 }, + { "label": "R", "x": 4.5, "y": 4 }, + { "label": "T", "x": 5.5, "y": 4 }, + { "label": "Y", "x": 6.5, "y": 4 }, + { "label": "U", "x": 7.5, "y": 4 }, + { "label": "I", "x": 8.5, "y": 4 }, + { "label": "O", "x": 9.5, "y": 4 }, + { "label": "P", "x": 10.5, "y": 4 }, + { "label": "{", "x": 11.5, "y": 4 }, + { "label": "}", "x": 12.5, "y": 4 }, + { "label": "|", "x": 13.5, "y": 4, "w": 1.5 }, + { "label": "0", "x": 16, "y": 4 }, + { "label": "0", "x": 17, "y": 4 }, + { "label": ".", "x": 18, "y": 4 }, + { "label": "Enter", "x": 19, "y": 4 }, + { "label": "Caps Lock", "x": 0, "y": 5, "w": 1.75 }, + { "label": "A", "x": 1.75, "y": 5 }, + { "label": "S", "x": 2.75, "y": 5 }, + { "label": "D", "x": 3.75, "y": 5 }, + { "label": "F", "x": 4.75, "y": 5 }, + { "label": "G", "x": 5.75, "y": 5 }, + { "label": "H", "x": 6.75, "y": 5 }, + { "label": "J", "x": 7.75, "y": 5 }, + { "label": "K", "x": 8.75, "y": 5 }, + { "label": "L", "x": 9.75, "y": 5 }, + { "label": ":", "x": 10.75, "y": 5 }, + { "label": "\"", "x": 11.75, "y": 5 }, + { "label": "Enter", "x": 12.75, "y": 5, "w": 2.25 }, + { "label": "F13", "x": 16.5, "y": 5.25 }, + { "label": "F14", "x": 17.5, "y": 5.25 }, + { "label": "F15", "x": 18.5, "y": 5.25 }, + { "label": "Shift", "x": 0, "y": 6, "w": 1.25 }, + { "label": "Shift", "x": 1.25, "y": 6 }, + { "label": "Z", "x": 2.25, "y": 6 }, + { "label": "X", "x": 3.25, "y": 6 }, + { "label": "C", "x": 4.25, "y": 6 }, + { "label": "V", "x": 5.25, "y": 6 }, + { "label": "B", "x": 6.25, "y": 6 }, + { "label": "N", "x": 7.25, "y": 6 }, + { "label": "M", "x": 8.25, "y": 6 }, + { "label": "<", "x": 9.25, "y": 6 }, + { "label": ">", "x": 10.25, "y": 6 }, + { "label": "?", "x": 11.25, "y": 6 }, + { "label": "Shift", "x": 12.25, "y": 6 }, + { "label": "Shift", "x": 13.25, "y": 6 }, + { "label": "\u2191", "x": 14.5, "y": 6.25 }, + { "label": "F16", "x": 16.5, "y": 6.25 }, + { "label": "F17", "x": 17.5, "y": 6.25 }, + { "label": "F18", "x": 18.5, "y": 6.25 }, + { "label": "Ctrl", "x": 0, "y": 7 }, + { "label": "Win", "x": 1, "y": 7 }, + { "label": "Alt", "x": 2, "y": 7 }, + { "x": 3, "y": 7, "w": 3 }, + { "x": 6, "y": 7, "w": 3 }, + { "label": "Alt", "x": 9, "y": 7 }, + { "label": "Win", "x": 10, "y": 7 }, + { "label": "Menu", "x": 11, "y": 7 }, + { "label": "Ctrl", "x": 12, "y": 7 }, + { "label": "\u2190", "x": 13.5, "y": 7.25 }, + { "label": "\u2193", "x": 14.5, "y": 7.25 }, + { "label": "\u2192", "x": 15.5, "y": 7.25 }, + { "label": "BTN1", "x": 17, "y": 7.25 }, + { "label": "BTN2", "x": 18, "y": 7.25 } + ] + } + } +} diff --git a/keyboards/ydkb/grape/keymaps/default/keymap.c b/keyboards/ydkb/grape/keymaps/default/keymap.c new file mode 100644 index 0000000000..2704820ad9 --- /dev/null +++ b/keyboards/ydkb/grape/keymaps/default/keymap.c @@ -0,0 +1,29 @@ +/* Copyright 2022 somepin + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, KC_PAUS, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_END, KC_PGDN, KC_SLCK, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_GRV, 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_BSPC, KC_P1, KC_P2, KC_P3, KC_PENT, + 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, KC_P0, KC_P0, KC_PDOT, KC_PENT, + 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_F13, KC_F14, KC_F15, + KC_LSFT, 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_RSFT, KC_UP, KC_F16, KC_F17, KC_F18, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BTN1, KC_BTN2 + ) +}; diff --git a/keyboards/ydkb/grape/keymaps/via/keymap.c b/keyboards/ydkb/grape/keymaps/via/keymap.c new file mode 100644 index 0000000000..f01f63bcad --- /dev/null +++ b/keyboards/ydkb/grape/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2022 somepin + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, KC_PAUS, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_END, KC_PGDN, KC_SLCK, KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_GRV, 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_BSPC, KC_P1, KC_P2, KC_P3, KC_PENT, + 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, KC_P0, KC_P0, KC_PDOT, KC_PENT, + 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_F13, KC_F14, KC_F15, + KC_LSFT, 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_RSFT, KC_UP, KC_F16, KC_F17, KC_F18, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_BTN1, KC_BTN2 + ), + + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/ydkb/grape/keymaps/via/rules.mk b/keyboards/ydkb/grape/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/ydkb/grape/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/ydkb/grape/matrix.c b/keyboards/ydkb/grape/matrix.c new file mode 100644 index 0000000000..700761fa44 --- /dev/null +++ b/keyboards/ydkb/grape/matrix.c @@ -0,0 +1,96 @@ +/* +Copyright 2022 somepin + +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 . +*/ + +#include +#include +#include "matrix.h" +#include "quantum.h" +#include "sn74x138.h" + +static const pin_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; + +/* All rows use a 74HC138 3 to 8 bit demultiplexer. + * + * A2 A1 A0 + * D0 D1 D2 + * 0: 0 0 0 + * 1: 0 0 1 + * 2: 0 1 0 + * 3: 0 1 1 + * 4: 1 0 0 + * 5: 1 0 1 + * 6: 1 1 0 + */ +static void select_row(uint8_t row) { + sn74x138_set_addr(row); +} + +static void init_pins(void) { + for (uint8_t x = 0; x < MATRIX_COLS; x++) { + setPinInputHigh(col_pins[x]); + } +} + +static bool read_cols_on_row(matrix_row_t current_matrix[], uint8_t current_row) { + bool matrix_changed = false; + + // Store last value of row prior to reading + matrix_row_t last_row_value = current_matrix[current_row]; + + // Start with a clear matrix row + current_matrix[current_row] = 0; + + // Select row and wait for row selection to stabilize + select_row(current_row); + matrix_io_delay(); + + // For each col... + matrix_row_t row_shifter = MATRIX_ROW_SHIFTER; + for (uint8_t col_index = 0; col_index < MATRIX_COLS; col_index++) { + + // Select the col pin to read (active low) + uint8_t pin_state = readPin(col_pins[col_index]); + + // Populate the matrix row with the state of the col pin + current_matrix[current_row] |= pin_state ? 0 : (row_shifter << col_index); + } + + // Determine if matrix changed state + if ((last_row_value != current_matrix[current_row]) && !(matrix_changed)) { + matrix_changed = true; + } + + return matrix_changed; +} + +void matrix_init_custom(void) { + // initialize demultiplexer + sn74x138_init(); + // initialize key pins + init_pins(); +} + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + bool changed = false; + + // Set row, read cols + for (uint8_t current_row = 0; current_row < MATRIX_ROWS; current_row++) { + changed |= read_cols_on_row(current_matrix, current_row); + } + + return changed; +} diff --git a/keyboards/ydkb/grape/readme.md b/keyboards/ydkb/grape/readme.md new file mode 100644 index 0000000000..9024f38b58 --- /dev/null +++ b/keyboards/ydkb/grape/readme.md @@ -0,0 +1,23 @@ +# YDKB Grape + +![YDKB Grape](https://i.imgur.com/TZjgC9yh.jpg) + +The YDKB Grape is a Cherry G80-11800/11900 replacement PCB utilizing the ATmega32U4 microcontroller. + +* Keyboard Maintainer: [Gacathon](https://github.com/Gacathon) +* Hardware Supported: YDKB Grape (ATmega32U4) +* Hardware Availability: [TaoBao](https://item.taobao.com/item.htm?id=642205244150) + +Make example for this keyboard (after setting up your build environment): + + make ydkb/grape:default + +Flashing example for this keyboard: + + make ydkb/grape:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +To enter the bootloader, briefly press the physical reset button between Num Lock and Numpad 8 on the front of the PCB. diff --git a/keyboards/ydkb/grape/rules.mk b/keyboards/ydkb/grape/rules.mk new file mode 100644 index 0000000000..57b231441e --- /dev/null +++ b/keyboards/ydkb/grape/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +CUSTOM_MATRIX = lite +VPATH += drivers/gpio +SRC += matrix.c sn74x138.c From 084df6a288503709ddde2bfa0d64e1677fe32b29 Mon Sep 17 00:00:00 2001 From: Evelien Dekkers Date: Sat, 26 Mar 2022 02:06:03 +0100 Subject: [PATCH 175/699] [Keyboard] Add nt210 (#16461) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/evyd13/nt210/config.h | 20 +++++ keyboards/evyd13/nt210/info.json | 84 +++++++++++++++++++ .../evyd13/nt210/keymaps/default/keymap.c | 21 +++++ keyboards/evyd13/nt210/keymaps/via/keymap.c | 48 +++++++++++ keyboards/evyd13/nt210/keymaps/via/rules.mk | 2 + keyboards/evyd13/nt210/readme.md | 27 ++++++ keyboards/evyd13/nt210/rules.mk | 1 + 7 files changed, 203 insertions(+) create mode 100644 keyboards/evyd13/nt210/config.h create mode 100644 keyboards/evyd13/nt210/info.json create mode 100644 keyboards/evyd13/nt210/keymaps/default/keymap.c create mode 100644 keyboards/evyd13/nt210/keymaps/via/keymap.c create mode 100644 keyboards/evyd13/nt210/keymaps/via/rules.mk create mode 100644 keyboards/evyd13/nt210/readme.md create mode 100644 keyboards/evyd13/nt210/rules.mk diff --git a/keyboards/evyd13/nt210/config.h b/keyboards/evyd13/nt210/config.h new file mode 100644 index 0000000000..2155d337a8 --- /dev/null +++ b/keyboards/evyd13/nt210/config.h @@ -0,0 +1,20 @@ +// Copyright 2022 Evelien Dekkers (@evyd13) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/* + * 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 diff --git a/keyboards/evyd13/nt210/info.json b/keyboards/evyd13/nt210/info.json new file mode 100644 index 0000000000..c467ae33a1 --- /dev/null +++ b/keyboards/evyd13/nt210/info.json @@ -0,0 +1,84 @@ +{ + "manufacturer": "Evelien Dekkers", + "keyboard_name": "nt210", + "maintainer": "evyd13", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": false, + "nkro": true + }, + "matrix_pins": { + "cols": ["B0", "D6", "D5", "D4"], + "rows": ["C4", "C5", "C6", "C7", "B7", "B6"] + }, + "processor": "atmega32u2", + "url": "https://github.com/evyd13/nt-series/tree/main/nt-210", + "usb": { + "device_version": "1.0.0", + "pid": "0x4705", + "vid": "0xCC3F" + }, + "indicators": { + "num_lock": "B4" + }, + "layouts": { + "LAYOUT_numpad_6x4": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [1, 0], "x": 0, "y": 1.5 }, + { "matrix": [1, 1], "x": 1, "y": 1.5 }, + { "matrix": [1, 2], "x": 2, "y": 1.5 }, + { "matrix": [1, 3], "x": 3, "y": 1.5 }, + { "matrix": [2, 0], "x": 0, "y": 2.5 }, + { "matrix": [2, 1], "x": 1, "y": 2.5 }, + { "matrix": [2, 2], "x": 2, "y": 2.5 }, + { "h": 2, "matrix": [2, 3], "x": 3, "y": 2.5 }, + { "matrix": [3, 0], "x": 0, "y": 3.5 }, + { "matrix": [3, 1], "x": 1, "y": 3.5 }, + { "matrix": [3, 2], "x": 2, "y": 3.5 }, + { "matrix": [4, 0], "x": 0, "y": 4.5 }, + { "matrix": [4, 1], "x": 1, "y": 4.5 }, + { "matrix": [4, 2], "x": 2, "y": 4.5 }, + { "h": 2, "matrix": [4, 3], "x": 3, "y": 4.5 }, + { "matrix": [5, 0], "w": 2, "x": 0, "y": 5.5 }, + { "matrix": [5, 2], "x": 2, "y": 5.5 } + ] + }, + "LAYOUT_ortho_6x4": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [1, 0], "x": 0, "y": 1.5 }, + { "matrix": [1, 1], "x": 1, "y": 1.5 }, + { "matrix": [1, 2], "x": 2, "y": 1.5 }, + { "matrix": [1, 3], "x": 3, "y": 1.5 }, + { "matrix": [2, 0], "x": 0, "y": 2.5 }, + { "matrix": [2, 1], "x": 1, "y": 2.5 }, + { "matrix": [2, 2], "x": 2, "y": 2.5 }, + { "matrix": [2, 3], "x": 3, "y": 2.5 }, + { "matrix": [3, 0], "x": 0, "y": 3.5 }, + { "matrix": [3, 1], "x": 1, "y": 3.5 }, + { "matrix": [3, 2], "x": 2, "y": 3.5 }, + { "matrix": [3, 3], "x": 3, "y": 3.5 }, + { "matrix": [4, 0], "x": 0, "y": 4.5 }, + { "matrix": [4, 1], "x": 1, "y": 4.5 }, + { "matrix": [4, 2], "x": 2, "y": 4.5 }, + { "matrix": [4, 3], "x": 3, "y": 4.5 }, + { "matrix": [5, 0], "x": 0, "y": 5.5 }, + { "matrix": [5, 1], "x": 1, "y": 5.5 }, + { "matrix": [5, 2], "x": 2, "y": 5.5 }, + { "matrix": [5, 3], "x": 3, "y": 5.5 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/evyd13/nt210/keymaps/default/keymap.c b/keyboards/evyd13/nt210/keymaps/default/keymap.c new file mode 100644 index 0000000000..6d1ba734a8 --- /dev/null +++ b/keyboards/evyd13/nt210/keymaps/default/keymap.c @@ -0,0 +1,21 @@ +// Copyright 2022 Evelien Dekkers (@evyd13) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_BASE] = LAYOUT_ortho_6x4( + KC_ESC, KC_TAB, KC_EQL, KC_BSPC, + KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_NO, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_NO, KC_PDOT, KC_NO), + +}; diff --git a/keyboards/evyd13/nt210/keymaps/via/keymap.c b/keyboards/evyd13/nt210/keymaps/via/keymap.c new file mode 100644 index 0000000000..065fcd3a0b --- /dev/null +++ b/keyboards/evyd13/nt210/keymaps/via/keymap.c @@ -0,0 +1,48 @@ +// Copyright 2022 Evelien Dekkers (@evyd13) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_BASE] = LAYOUT_ortho_6x4( + KC_ESC, KC_TAB, KC_EQL, KC_BSPC, + KC_NUM, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, KC_NO, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_NO, KC_PDOT, KC_NO), + +[_FN1] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______), + +[_FN2] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______), + +[_FN3] = LAYOUT_ortho_6x4( + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, _______, _______), + +}; \ No newline at end of file diff --git a/keyboards/evyd13/nt210/keymaps/via/rules.mk b/keyboards/evyd13/nt210/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/evyd13/nt210/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/evyd13/nt210/readme.md b/keyboards/evyd13/nt210/readme.md new file mode 100644 index 0000000000..b6b7bc940e --- /dev/null +++ b/keyboards/evyd13/nt210/readme.md @@ -0,0 +1,27 @@ +# nt210 + +![nt120 PCB](https://i.imgur.com/DZAfoOlh.jpg) + +A custom PCB for the Leopold FC210TP. + +* Keyboard Maintainer: [Evelien Dekkers](https://github.com/evyd13) +* Hardware Supported: nt-120 PCB +* Hardware Availability: [Open source on GitHub](https://github.com/evyd13/nt-series/tree/main/nt-210) + +Make example for this keyboard (after setting up your build environment): + + make evyd13/nt210:default + +Flashing example for this keyboard: + + make evyd13/nt210:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/evyd13/nt210/rules.mk b/keyboards/evyd13/nt210/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/evyd13/nt210/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From c05e8afe454bf3706d69314c251dc5266c557007 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 27 Mar 2022 05:38:09 +1100 Subject: [PATCH 176/699] Joystick feature updates (#16732) * Joystick feature updates * Move new functions to joystick.h * Docs --- docs/feature_joystick.md | 2 + .../battleship_gamepad/battleship_gamepad.c | 2 - .../misterdeck/keymaps/default/keymap.c | 2 - .../misterdeck/keymaps/nobuttons/keymap.c | 2 - .../onekey/keymaps/joystick/keymap.c | 2 - keyboards/lime/keymaps/default/keymap.c | 1 - quantum/joystick.c | 37 ++++++++++++++++--- quantum/joystick.h | 9 +++-- quantum/process_keycode/process_joystick.c | 36 +++++------------- quantum/quantum.h | 4 ++ 10 files changed, 52 insertions(+), 45 deletions(-) diff --git a/docs/feature_joystick.md b/docs/feature_joystick.md index fe33517a16..2635298587 100644 --- a/docs/feature_joystick.md +++ b/docs/feature_joystick.md @@ -150,3 +150,5 @@ Note that the supported AVR MCUs have a 10-bit ADC, and 12-bit for most STM32 MC Joystick buttons are normal Quantum keycodes, defined as `JS_BUTTON0` to `JS_BUTTON31`, depending on the number of buttons you have configured. To trigger a joystick button, just add the corresponding keycode to your keymap. + +You can also trigger joystick buttons in code with `register_joystick_button(button)` and `unregister_joystick_button(button)`, where `button` is the 0-based button index (0 = button 1). diff --git a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c index 918a3852d0..2c9de15a9f 100644 --- a/keyboards/handwired/battleship_gamepad/battleship_gamepad.c +++ b/keyboards/handwired/battleship_gamepad/battleship_gamepad.c @@ -15,8 +15,6 @@ */ #include "battleship_gamepad.h" -#include "joystick.h" -#include "analog.h" /* joystick config */ joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = { diff --git a/keyboards/handwired/misterdeck/keymaps/default/keymap.c b/keyboards/handwired/misterdeck/keymaps/default/keymap.c index 217d25551c..b8ed3cb9d9 100644 --- a/keyboards/handwired/misterdeck/keymaps/default/keymap.c +++ b/keyboards/handwired/misterdeck/keymaps/default/keymap.c @@ -16,8 +16,6 @@ #include QMK_KEYBOARD_H -#include "joystick.h" - enum layer_names { NORMAL_LAYER = 0 }; diff --git a/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c b/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c index d4c52be35d..5c69d2bc21 100644 --- a/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c +++ b/keyboards/handwired/misterdeck/keymaps/nobuttons/keymap.c @@ -16,8 +16,6 @@ #include QMK_KEYBOARD_H -#include "joystick.h" - enum layer_names { NORMAL_LAYER = 0 }; diff --git a/keyboards/handwired/onekey/keymaps/joystick/keymap.c b/keyboards/handwired/onekey/keymaps/joystick/keymap.c index f427b9d77d..7a2f138b28 100644 --- a/keyboards/handwired/onekey/keymaps/joystick/keymap.c +++ b/keyboards/handwired/onekey/keymaps/joystick/keymap.c @@ -1,7 +1,5 @@ #include QMK_KEYBOARD_H -#include "joystick.h" - #ifndef ADC_PIN # define ADC_PIN F6 #endif diff --git a/keyboards/lime/keymaps/default/keymap.c b/keyboards/lime/keymaps/default/keymap.c index 2d904d36db..eade4d4183 100644 --- a/keyboards/lime/keymaps/default/keymap.c +++ b/keyboards/lime/keymaps/default/keymap.c @@ -17,7 +17,6 @@ #include QMK_KEYBOARD_H #ifdef JOYSTICK_ENABLE -# include "joystick.h" # include "analog.h" #endif diff --git a/quantum/joystick.c b/quantum/joystick.c index 7b87201aef..86b2c64036 100644 --- a/quantum/joystick.c +++ b/quantum/joystick.c @@ -1,13 +1,38 @@ #include "joystick.h" -joystick_t joystick_status = {.buttons = {0}, - .axes = - { +// clang-format off +joystick_t joystick_status = { + .buttons = {0}, + .axes = { #if JOYSTICK_AXES_COUNT > 0 - 0 + 0 #endif - }, - .status = 0}; + }, + .status = 0 +}; +// clang-format on // array defining the reading of analog values for each axis __attribute__((weak)) joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = {}; + +// to be implemented in the hid protocol library +void send_joystick_packet(joystick_t *joystick); + +void joystick_flush(void) { + if ((joystick_status.status & JS_UPDATED) > 0) { + send_joystick_packet(&joystick_status); + joystick_status.status &= ~JS_UPDATED; + } +} + +void register_joystick_button(uint8_t button) { + joystick_status.buttons[button / 8] |= 1 << (button % 8); + joystick_status.status |= JS_UPDATED; + joystick_flush(); +} + +void unregister_joystick_button(uint8_t button) { + joystick_status.buttons[button / 8] &= ~(1 << (button % 8)); + joystick_status.status |= JS_UPDATED; + joystick_flush(); +} diff --git a/quantum/joystick.h b/quantum/joystick.h index 9156491aca..002df3a6d9 100644 --- a/quantum/joystick.h +++ b/quantum/joystick.h @@ -1,8 +1,7 @@ #pragma once -#include "quantum.h" - #include +#include "gpio.h" #ifndef JOYSTICK_BUTTON_COUNT # define JOYSTICK_BUTTON_COUNT 8 @@ -58,5 +57,7 @@ typedef struct { extern joystick_t joystick_status; -// to be implemented in the hid protocol library -void send_joystick_packet(joystick_t *joystick); +void joystick_flush(void); + +void register_joystick_button(uint8_t button); +void unregister_joystick_button(uint8_t button); diff --git a/quantum/process_keycode/process_joystick.c b/quantum/process_keycode/process_joystick.c index 2fb092c573..8c3e71616f 100644 --- a/quantum/process_keycode/process_joystick.c +++ b/quantum/process_keycode/process_joystick.c @@ -6,41 +6,25 @@ #include #include -bool process_joystick_buttons(uint16_t keycode, keyrecord_t *record); - bool process_joystick(uint16_t keycode, keyrecord_t *record) { - if (process_joystick_buttons(keycode, record) && (joystick_status.status & JS_UPDATED) > 0) { - send_joystick_packet(&joystick_status); - joystick_status.status &= ~JS_UPDATED; + switch (keycode) { + case JS_BUTTON0 ... JS_BUTTON_MAX: + if (record->event.pressed) { + register_joystick_button(keycode - JS_BUTTON0); + } else { + unregister_joystick_button(keycode - JS_BUTTON0); + } + return false; } - return true; } __attribute__((weak)) void joystick_task(void) { - if (process_joystick_analogread() && (joystick_status.status & JS_UPDATED)) { - send_joystick_packet(&joystick_status); - joystick_status.status &= ~JS_UPDATED; + if (process_joystick_analogread()) { + joystick_flush(); } } -bool process_joystick_buttons(uint16_t keycode, keyrecord_t *record) { - if (keycode < JS_BUTTON0 || keycode > JS_BUTTON_MAX) { - return true; - } else { - uint8_t button_idx = (keycode - JS_BUTTON0); - if (record->event.pressed) { - joystick_status.buttons[button_idx / 8] |= 1 << (button_idx % 8); - } else { - joystick_status.buttons[button_idx / 8] &= ~(1 << (button_idx % 8)); - } - - joystick_status.status |= JS_UPDATED; - } - - return true; -} - uint16_t savePinState(pin_t pin) { #ifdef __AVR__ uint8_t pinNumber = pin & 0xF; diff --git a/quantum/quantum.h b/quantum/quantum.h index 020e455941..f87e5f1916 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -200,6 +200,10 @@ extern layer_state_t layer_state; # include "dynamic_keymap.h" #endif +#ifdef JOYSTICK_ENABLE +# include "joystick.h" +#endif + #ifdef VIA_ENABLE # include "via.h" #endif From 55e5daa868c692e686a96997a4a12cb65c348382 Mon Sep 17 00:00:00 2001 From: Erovia Date: Sat, 26 Mar 2022 19:15:25 +0000 Subject: [PATCH 177/699] Fix bug when 'info.json' lookup escapes keyboard dir (#16734) --- lib/python/qmk/info.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index b86eaa059f..fd8a3062b7 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -753,9 +753,9 @@ def find_info_json(keyboard): # Add in parent folders for least specific for _ in range(5): - info_jsons.append(keyboard_parent / 'info.json') - if keyboard_parent.parent == base_path: + if keyboard_parent == base_path: break + info_jsons.append(keyboard_parent / 'info.json') keyboard_parent = keyboard_parent.parent # Return a list of the info.json files that actually exist From f874984b96b273e3631bf86fb14d9468f427fa06 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?L=C3=AA=20Nguy=E1=BB=85n=20Ho=C3=A0ng=20Nh=C3=A2n?= Date: Sun, 27 Mar 2022 02:35:19 +0700 Subject: [PATCH 178/699] Fix typos in matrix/noah readme (#16735) Change "keybaord" to keyboard --- keyboards/matrix/noah/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/matrix/noah/readme.md b/keyboards/matrix/noah/readme.md index 788fc18727..5b32b15a00 100644 --- a/keyboards/matrix/noah/readme.md +++ b/keyboards/matrix/noah/readme.md @@ -10,10 +10,10 @@ This was the first 65% keyboard made by the Matrix team, it had the following fe Keyboard Maintainer: [astro](https://github.com/yulei) Hardware Supported: Matrix NOAH keyboard -Hardware Availability: [NOAH Keybaord](https://geekhack.org/index.php?topic=102300.0) +Hardware Availability: [NOAH Keyboard](https://geekhack.org/index.php?topic=102300.0) Make example for this keyboard (after setting up your build environment): make matrix/noah:default -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From 5fae1ec9c3aa105848da8fa7aa249918917b9fd6 Mon Sep 17 00:00:00 2001 From: Shandon Anderson Date: Sat, 26 Mar 2022 22:02:59 -0400 Subject: [PATCH 179/699] [Keyboard] Add Mino Hotswap PCB (#16664) Co-authored-by: Shandon Anderson --- keyboards/mino/hotswap/config.h | 56 +++++ keyboards/mino/hotswap/hotswap.c | 17 ++ keyboards/mino/hotswap/hotswap.h | 40 ++++ keyboards/mino/hotswap/info.json | 60 +++++ keyboards/mino/hotswap/rules.mk | 19 ++ keyboards/mino/keymaps/default/keymap.c | 290 +++++++++++++++++++++++ keyboards/mino/keymaps/via/keymap.c | 299 ++++++++++++++++++++++++ keyboards/mino/keymaps/via/rules.mk | 3 + keyboards/mino/mino.c | 16 ++ keyboards/mino/mino.h | 23 ++ keyboards/mino/readme.md | 27 +++ 11 files changed, 850 insertions(+) create mode 100644 keyboards/mino/hotswap/config.h create mode 100644 keyboards/mino/hotswap/hotswap.c create mode 100644 keyboards/mino/hotswap/hotswap.h create mode 100644 keyboards/mino/hotswap/info.json create mode 100644 keyboards/mino/hotswap/rules.mk create mode 100644 keyboards/mino/keymaps/default/keymap.c create mode 100644 keyboards/mino/keymaps/via/keymap.c create mode 100644 keyboards/mino/keymaps/via/rules.mk create mode 100644 keyboards/mino/mino.c create mode 100644 keyboards/mino/mino.h create mode 100644 keyboards/mino/readme.md diff --git a/keyboards/mino/hotswap/config.h b/keyboards/mino/hotswap/config.h new file mode 100644 index 0000000000..27ec49f379 --- /dev/null +++ b/keyboards/mino/hotswap/config.h @@ -0,0 +1,56 @@ +/* +Copyright 2022 ShandonCodes + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7877 +#define PRODUCT_ID 0x0002 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ShandonCodes +#define PRODUCT Mino + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* + * 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 { D3, C6, D4, D2} +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6, B5, B4, E6, D7} +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 diff --git a/keyboards/mino/hotswap/hotswap.c b/keyboards/mino/hotswap/hotswap.c new file mode 100644 index 0000000000..46f2f9aef0 --- /dev/null +++ b/keyboards/mino/hotswap/hotswap.c @@ -0,0 +1,17 @@ +/* Copyright 2022 ShandonCodes + * + * 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 . + */ + +#include "hotswap.h" diff --git a/keyboards/mino/hotswap/hotswap.h b/keyboards/mino/hotswap/hotswap.h new file mode 100644 index 0000000000..fc55cc8c2b --- /dev/null +++ b/keyboards/mino/hotswap/hotswap.h @@ -0,0 +1,40 @@ +/* Copyright 2022 ShandonCodes + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_default( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k3b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k35, k37, k38, k39, k3a \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b}, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b}, \ + { k30, k31, k32, k33, KC_NO, k35, KC_NO, k37, k38, k39, k3a, k3b}, \ +} + diff --git a/keyboards/mino/hotswap/info.json b/keyboards/mino/hotswap/info.json new file mode 100644 index 0000000000..996dcf3b62 --- /dev/null +++ b/keyboards/mino/hotswap/info.json @@ -0,0 +1,60 @@ +{ + "keyboard_name": "Mino", + "url": "https://qmk.fm/keyboards/", + "maintainer": "ShandonCodes", + "layouts": { + "LAYOUT_default": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6, "y": 0}, + {"x": 7, "y": 0}, + {"x": 8, "y": 0}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + + {"x": 0, "y": 1, "w": 1.25}, + {"x": 1.25, "y": 1}, + {"x": 2.25, "y": 1}, + {"x": 3.25, "y": 1}, + {"x": 4.25, "y": 1}, + {"x": 5.25, "y": 1}, + {"x": 6.25, "y": 1}, + {"x": 7.25, "y": 1}, + {"x": 8.25, "y": 1}, + {"x": 9.25, "y": 1}, + {"x": 10.25, "y": 1}, + {"x": 11.25, "y": 1, "w": 1.75}, + + {"x": 0, "y": 2, "w": 1.75}, + {"x": 1.75, "y": 2}, + {"x": 2.75, "y": 2}, + {"x": 3.75, "y": 2}, + {"x": 4.75, "y": 2}, + {"x": 5.75, "y": 2}, + {"x": 6.75, "y": 2}, + {"x": 7.75, "y": 2}, + {"x": 8.75, "y": 2}, + {"x": 9.75, "y": 2}, + {"x": 10.75, "y": 2}, + {"x": 11.75, "y": 2, "w": 1.25}, + + {"x": 0, "y": 3, "w": 1.25}, + {"x": 1.25, "y": 3}, + {"x": 2.25, "y": 3, "w": 1.25}, + {"x": 3.5, "y": 3, "w": 2.25}, + {"x": 5.75, "y": 3}, + {"x": 6.75, "y": 3, "w": 2.75}, + {"x": 9.5, "y": 3, "w": 1.25}, + {"x": 10.75, "y": 3}, + {"x": 11.75, "y": 3, "w": 1.25} + ] + } + } +} diff --git a/keyboards/mino/hotswap/rules.mk b/keyboards/mino/hotswap/rules.mk new file mode 100644 index 0000000000..64d04b189b --- /dev/null +++ b/keyboards/mino/hotswap/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +OLED_ENABLE = yes +WPM_ENABLE = yes diff --git a/keyboards/mino/keymaps/default/keymap.c b/keyboards/mino/keymaps/default/keymap.c new file mode 100644 index 0000000000..2c9dcecd4a --- /dev/null +++ b/keyboards/mino/keymaps/default/keymap.c @@ -0,0 +1,290 @@ +/* Copyright 2022 ShandonCodes + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _1, + _2 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_default( + KC_ESCAPE, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_GRV, KC_BSPACE, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_ENTER, + KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSHIFT, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPACE, KC_DEL, KC_SPACE, MO(_1), MO(_2), KC_RCTRL + ), + [_1] = LAYOUT_default( + XXXXXXX, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, XXXXXXX, KC_DEL, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_QUOT, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), + [_2] = LAYOUT_default( + KC_UP, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, XXXXXXX, XXXXXXX, + KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ) +}; + +#ifdef OLED_ENABLE +#define FRAMES 5 +#define ANIMATION_SIZE 512 +#define TAP_SPEED 30 + +uint8_t current_frame = 0; +uint32_t anim_timer = 0; +uint32_t anim_sleep = 0; +uint32_t ANIM_FRAME_DURATION = 1000; + +static void render_animation(void) { + static const char PROGMEM animation_frames[FRAMES][ANIMATION_SIZE] = { + // 'Base', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_1', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x4c, 0x4c, 0xfc, 0xfc, 0x4c, + 0x4c, 0xfc, 0xc0, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x04, + 0x04, 0x07, 0x07, 0x04, 0x04, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_2', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0xc0, 0x40, + 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x04, 0x04, 0x3f, 0x7f, 0x44, + 0x44, 0x7f, 0x7c, 0x44, 0x44, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_3', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x44, 0x44, 0xfc, 0xfc, 0x44, + 0x44, 0xfc, 0xc0, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x43, 0x47, 0xc4, + 0x44, 0x47, 0x47, 0xc4, 0x44, 0x47, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_4', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0xc0, 0x40, + 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xc4, 0x44, 0x7f, 0x7f, 0xe6, + 0x66, 0x7f, 0x7e, 0xe4, 0x64, 0x7c, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f} + }; + + void animate_phase(void) { + current_frame = (current_frame + 1) % FRAMES; + oled_write_raw_P(animation_frames[current_frame], ANIMATION_SIZE); + } + + if (get_current_wpm() != 000) { + oled_on(); // not essential but turns on animation OLED with any alpha keypress + if (get_current_wpm() > TAP_SPEED){ + ANIM_FRAME_DURATION = 100; + } else { + ANIM_FRAME_DURATION = 1000; + } + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animate_phase(); + } + anim_sleep = timer_read32(); + } else { + if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { + oled_off(); + } else { + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animate_phase(); + } + } + } +} + +static void render_status(void) { + // Host Keyboard Layer Status + oled_write_ln_P(PSTR("Layer"), false); + switch (get_highest_layer(layer_state)) { + case _BASE: + oled_write_ln_P(PSTR("Base"), false); + break; + case _1: + oled_write_ln_P(PSTR("1"), false); + break; + case _2: + oled_write_ln_P(PSTR("2"), false); + break; + default: + oled_write_ln_P(PSTR("Undefined"), false); + } +} + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_270; +} + +bool oled_task_user(void) { + render_animation(); + render_status(); + + oled_write_ln_P(PSTR("WPM:"), false); + oled_write_ln(get_u8_str(get_current_wpm(), '0'), false); + + return false; +} +#endif diff --git a/keyboards/mino/keymaps/via/keymap.c b/keyboards/mino/keymaps/via/keymap.c new file mode 100644 index 0000000000..597b854052 --- /dev/null +++ b/keyboards/mino/keymaps/via/keymap.c @@ -0,0 +1,299 @@ +/* Copyright 2021 ShandonCodes + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _0, + _1, + _2, + _3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_0] = LAYOUT_default( + KC_ESCAPE, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_GRV, KC_BSPACE, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCOLON, KC_ENTER, + KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMMA, KC_DOT, KC_SLASH, KC_RSHIFT, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPACE, KC_DEL, KC_SPACE, MO(_1), MO(_2), KC_RCTRL + ), + [_1] = LAYOUT_default( + XXXXXXX, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, XXXXXXX, KC_DEL, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), + [_2] = LAYOUT_default( + KC_UP, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, XXXXXXX, XXXXXXX, + KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), + [_3] = LAYOUT_default( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ) +}; + +#ifdef OLED_ENABLE +#define FRAMES 5 +#define ANIMATION_SIZE 512 +#define TAP_SPEED 30 + +uint8_t current_frame = 0; +uint32_t anim_timer = 0; +uint32_t anim_sleep = 0; +uint32_t ANIM_FRAME_DURATION = 1000; + +static void render_animation(void) { + static const char PROGMEM animation_frames[FRAMES][ANIMATION_SIZE] = { + // 'Base', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_1', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x4c, 0x4c, 0xfc, 0xfc, 0x4c, + 0x4c, 0xfc, 0xc0, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x07, 0x04, + 0x04, 0x07, 0x07, 0x04, 0x04, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_2', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0xc0, 0x40, + 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0x04, 0x04, 0x3f, 0x7f, 0x44, + 0x44, 0x7f, 0x7c, 0x44, 0x44, 0x7c, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0x40, 0xc0, + 0x40, 0x40, 0x40, 0xc0, 0x40, 0x40, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_3', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x7c, 0x44, 0x44, 0xfc, 0xfc, 0x44, + 0x44, 0xfc, 0xc0, 0x40, 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x43, 0x47, 0xc4, + 0x44, 0x47, 0x47, 0xc4, 0x44, 0x47, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f}, + + // 'Frame_4', 32x128px + {0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0x40, 0x40, 0xc0, 0xc0, 0x40, + 0x40, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xe0, 0xe0, 0xe0, + 0x03, 0x03, 0x03, 0x03, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x07, 0xc4, 0x44, 0x7f, 0x7f, 0xe6, + 0x66, 0x7f, 0x7e, 0xe4, 0x64, 0x7c, 0x40, 0xc0, 0xc0, 0x40, 0x40, 0xc1, 0xc3, 0x43, 0x43, 0xc3, + 0x00, 0x00, 0x00, 0x00, 0xfe, 0x66, 0x66, 0xe6, 0xfc, 0x20, 0x20, 0xff, 0xe6, 0x66, 0x66, 0xff, + 0xe6, 0x26, 0x26, 0x67, 0xe6, 0x26, 0x26, 0xe7, 0xff, 0x66, 0x66, 0xff, 0x7f, 0x26, 0x26, 0x3f, + 0xe0, 0x20, 0x20, 0x20, 0xff, 0x22, 0x22, 0xff, 0xff, 0x22, 0x22, 0xff, 0xe3, 0x22, 0x22, 0xe3, + 0x3f, 0x22, 0x22, 0xe2, 0x3f, 0x22, 0x22, 0x3f, 0xff, 0x22, 0x22, 0xff, 0x22, 0x00, 0x00, 0x00, + 0xff, 0x33, 0x33, 0x33, 0xff, 0x1f, 0x13, 0x13, 0xff, 0xff, 0x33, 0x33, 0xff, 0x33, 0x13, 0x13, + 0x1f, 0x02, 0x02, 0x03, 0x00, 0x00, 0x00, 0x33, 0xff, 0x33, 0x33, 0xff, 0x02, 0x00, 0x00, 0x00, + 0xff, 0x11, 0x11, 0x91, 0xff, 0xf0, 0x10, 0x10, 0xff, 0xff, 0x11, 0x11, 0xff, 0x9b, 0x11, 0x11, + 0xff, 0x91, 0x11, 0x91, 0xff, 0x11, 0x11, 0x1f, 0x1f, 0x11, 0x11, 0x1f, 0x01, 0x00, 0x00, 0x00, + 0xff, 0x99, 0x99, 0x99, 0xff, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, 0xf9, 0x99, 0x99, 0xf9, + 0x9f, 0x99, 0x99, 0xf9, 0x1f, 0x19, 0x19, 0x1f, 0xff, 0x99, 0x99, 0xff, 0xff, 0x99, 0x99, 0xff, + 0xf8, 0x88, 0x88, 0x88, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, 0xff, 0x89, 0x89, 0xff, + 0x88, 0x88, 0x88, 0xf8, 0x88, 0x88, 0x88, 0xf8, 0x80, 0x80, 0x80, 0xff, 0xc9, 0x89, 0x89, 0xff, + 0xff, 0xcc, 0xcc, 0xcc, 0xff, 0x40, 0x40, 0xcc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0xcc, 0x48, 0xc8, 0xff, 0xc8, 0xc8, 0xc8, 0xfc, 0xff, 0xcc, 0xcc, 0xff, 0xff, 0xcc, 0xcc, 0xff, + 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, + 0x7c, 0x7c, 0x7c, 0x7f, 0x7c, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f, 0x7f, 0x7c, 0x7c, 0x7f} + }; + + void animate_phase(void) { + current_frame = (current_frame + 1) % FRAMES; + oled_write_raw_P(animation_frames[current_frame], ANIMATION_SIZE); + } + + if (get_current_wpm() != 000) { + oled_on(); // not essential but turns on animation OLED with any alpha keypress + if (get_current_wpm() > TAP_SPEED){ + ANIM_FRAME_DURATION = 100; + } else { + ANIM_FRAME_DURATION = 1000; + } + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animate_phase(); + } + anim_sleep = timer_read32(); + } else { + if (timer_elapsed32(anim_sleep) > OLED_TIMEOUT) { + oled_off(); + } else { + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animate_phase(); + } + } + } +} + +static void render_status(void) { + // Host Keyboard Layer Status + oled_write_ln_P(PSTR("Layer"), false); + switch (get_highest_layer(layer_state)) { + case _0: + oled_write_ln_P(PSTR("Base"), false); + break; + case _1: + oled_write_ln_P(PSTR("1"), false); + break; + case _2: + oled_write_ln_P(PSTR("2"), false); + break; + case _3: + oled_write_ln_P(PSTR("3"), false); + break; + default: + oled_write_ln_P(PSTR("Undefined"), false); + } +} + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_270; +} + +bool oled_task_user(void) { + render_animation(); + render_status(); + + oled_write_ln_P(PSTR("WPM:"), false); + oled_write_ln(get_u8_str(get_current_wpm(), '0'), false); + + return false; +} +#endif diff --git a/keyboards/mino/keymaps/via/rules.mk b/keyboards/mino/keymaps/via/rules.mk new file mode 100644 index 0000000000..a4ac614775 --- /dev/null +++ b/keyboards/mino/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes +OLED_ENABLE = yes \ No newline at end of file diff --git a/keyboards/mino/mino.c b/keyboards/mino/mino.c new file mode 100644 index 0000000000..dc9e6d9c01 --- /dev/null +++ b/keyboards/mino/mino.c @@ -0,0 +1,16 @@ +/* Copyright 2022 ShandonCodes + * + * 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 . + */ +#include "mino.h" \ No newline at end of file diff --git a/keyboards/mino/mino.h b/keyboards/mino/mino.h new file mode 100644 index 0000000000..fa98480c27 --- /dev/null +++ b/keyboards/mino/mino.h @@ -0,0 +1,23 @@ +/* Copyright 2022 ShandonCodes + * + * 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 . + */ + + #pragma once + +#include "quantum.h" + +#ifdef KEYBOARD_mino_hotswap +# include "hotswap.h" +#endif \ No newline at end of file diff --git a/keyboards/mino/readme.md b/keyboards/mino/readme.md new file mode 100644 index 0000000000..a6a725b2a0 --- /dev/null +++ b/keyboards/mino/readme.md @@ -0,0 +1,27 @@ +# mino + +![Mino](https://i.imgur.com/f5kHu8Qh.jpg) + +A 47 key board with a retro twist. + +* Keyboard Maintainer: [ShandonCodes](https://github.com/ShandonCodes) +* Hardware Supported: Mino PCB +* Hardware Availability: Groupbuy + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. For the default keymap it is the middle spacebar on the second layer. + +Make example for this keyboard (after setting up your build environment): + + make mino/hotswap:default + +Flashing example for this keyboard: + + make mino/hotswap:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From 8c0198334c5a76b93530d6edd9b11ea99ea40018 Mon Sep 17 00:00:00 2001 From: Erovia Date: Sun, 27 Mar 2022 21:28:36 +0100 Subject: [PATCH 180/699] CLI: Lint non-data driven macros in info.json (#16739) * CLI: Lint non-data driven macros in info.json Macros in info.json should either have the "matrix" key with the matrix data or should should be also present in .h * Add verification of matrix data * Use generic '.h' in output * Add keyboard name to output * Make C layout macro finding more robust The old code missed C macros if they had whitespace between '#' and 'define' or had whitespace before '#'. --- lib/python/qmk/c_parse.py | 3 ++- lib/python/qmk/cli/lint.py | 7 +++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/lib/python/qmk/c_parse.py b/lib/python/qmk/c_parse.py index e7d44a514f..72be690019 100644 --- a/lib/python/qmk/c_parse.py +++ b/lib/python/qmk/c_parse.py @@ -10,6 +10,7 @@ from qmk.comment_remover import comment_remover default_key_entry = {'x': -1, 'y': 0, 'w': 1} single_comment_regex = re.compile(r'\s+/[/*].*$') multi_comment_regex = re.compile(r'/\*(.|\n)*?\*/', re.MULTILINE) +layout_macro_define_regex = re.compile(r'^#\s*define') def strip_line_comment(string): @@ -51,7 +52,7 @@ def find_layouts(file): file_contents = file_contents.replace('\\\n', '') for line in file_contents.split('\n'): - if line.startswith('#define') and '(' in line and 'LAYOUT' in line: + if layout_macro_define_regex.match(line.lstrip()) and '(' in line and 'LAYOUT' in line: # We've found a LAYOUT macro macro_name, layout, matrix = _parse_layout_macro(line.strip()) diff --git a/lib/python/qmk/cli/lint.py b/lib/python/qmk/cli/lint.py index 96593ed69b..af057b4110 100644 --- a/lib/python/qmk/cli/lint.py +++ b/lib/python/qmk/cli/lint.py @@ -116,6 +116,13 @@ def lint(cli): if not keymap_check(kb, cli.config.lint.keymap): ok = False + # Check if all non-data driven macros exist in + for layout, data in keyboard_info['layouts'].items(): + # Matrix data should be a list with exactly two integers: [0, 1] + if not data['c_macro'] and not all('matrix' in key_data.keys() or len(key_data) == 2 or all(isinstance(n, int) for n in key_data) for key_data in data['layout']): + cli.log.error(f'{kb}: "{layout}" has no "matrix" definition in either "info.json" or ".h"!') + ok = False + # Report status if not ok: failed.append(kb) From 119abc4375ba0cbeecb5c0394342c0260c999fba Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Mon, 28 Mar 2022 00:07:25 +0200 Subject: [PATCH 181/699] Refactor writePin to work with statements (#16738) --- platforms/chibios/gpio.h | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/platforms/chibios/gpio.h b/platforms/chibios/gpio.h index eb44a18f9c..80551abac5 100644 --- a/platforms/chibios/gpio.h +++ b/platforms/chibios/gpio.h @@ -31,7 +31,14 @@ typedef ioline_t pin_t; #define writePinHigh(pin) palSetLine(pin) #define writePinLow(pin) palClearLine(pin) -#define writePin(pin, level) ((level) ? (writePinHigh(pin)) : (writePinLow(pin))) +#define writePin(pin, level) \ + do { \ + if (level) { \ + writePinHigh(pin); \ + } else { \ + writePinLow(pin); \ + } \ + } while (0) #define readPin(pin) palReadLine(pin) From 9b24abf251b7d80c1e0006bea9a056d23dc89899 Mon Sep 17 00:00:00 2001 From: Moritz Date: Mon, 28 Mar 2022 18:46:38 +0200 Subject: [PATCH 182/699] [Keyboard] Change linworks Dolice product ID to non-duplicate value (#16745) --- keyboards/linworks/dolice/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/linworks/dolice/config.h b/keyboards/linworks/dolice/config.h index b42fda933f..1523c72702 100644 --- a/keyboards/linworks/dolice/config.h +++ b/keyboards/linworks/dolice/config.h @@ -18,7 +18,7 @@ along with this program. If not, see . /* USB Device descriptor parameter */ #define VENDOR_ID 0x4C58 //"LX" -#define PRODUCT_ID 0x0004 +#define PRODUCT_ID 0x0005 #define DEVICE_VER 0x0001 #define MANUFACTURER KLC #define PRODUCT Dolice From 6cdf230a20e34302f54db018c18063395345757f Mon Sep 17 00:00:00 2001 From: m40-dev <72697013+m40-dev@users.noreply.github.com> Date: Tue, 29 Mar 2022 21:18:39 +0200 Subject: [PATCH 183/699] [Keyboard] handwired/m40/5x5_macropad (#16288) * Adding the custom handwired 5x5 macropad. * Update keyboards/handwired/m40/5x5_macropad/readme.md * Update keyboards/handwired/m40/5x5_macropad/rules.mk * Update keyboards/handwired/m40/5x5_macropad/readme.md * Update readme.md fixed the github link to my profile * Update keyboards/handwired/m40/5x5_macropad/5x5_macropad.c * Update keyboards/handwired/m40/5x5_macropad/5x5_macropad.h * Update keyboards/handwired/m40/5x5_macropad/5x5_macropad.h * Update keyboards/handwired/m40/5x5_macropad/config.h * Update keyboards/handwired/m40/5x5_macropad/readme.md * Update keyboards/handwired/m40/5x5_macropad/config.h * Update keyboards/handwired/m40/5x5_macropad/readme.md * Update keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c * Apply suggestions from code review * added discord Id for maintainer contact * Update keyboards/handwired/m40/5x5_macropad/readme.md * Update keyboards/handwired/m40/5x5_macropad/info.json --- .../handwired/m40/5x5_macropad/5x5_macropad.c | 4 + .../handwired/m40/5x5_macropad/5x5_macropad.h | 27 ++++++ keyboards/handwired/m40/5x5_macropad/config.h | 88 +++++++++++++++++++ .../handwired/m40/5x5_macropad/info.json | 41 +++++++++ .../m40/5x5_macropad/keymaps/default/keymap.c | 26 ++++++ .../5x5_macropad/keymaps/default/readme.md | 1 + .../handwired/m40/5x5_macropad/readme.md | 26 ++++++ keyboards/handwired/m40/5x5_macropad/rules.mk | 22 +++++ 8 files changed, 235 insertions(+) create mode 100644 keyboards/handwired/m40/5x5_macropad/5x5_macropad.c create mode 100644 keyboards/handwired/m40/5x5_macropad/5x5_macropad.h create mode 100644 keyboards/handwired/m40/5x5_macropad/config.h create mode 100644 keyboards/handwired/m40/5x5_macropad/info.json create mode 100644 keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c create mode 100644 keyboards/handwired/m40/5x5_macropad/keymaps/default/readme.md create mode 100644 keyboards/handwired/m40/5x5_macropad/readme.md create mode 100644 keyboards/handwired/m40/5x5_macropad/rules.mk diff --git a/keyboards/handwired/m40/5x5_macropad/5x5_macropad.c b/keyboards/handwired/m40/5x5_macropad/5x5_macropad.c new file mode 100644 index 0000000000..d99d41a49b --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/5x5_macropad.c @@ -0,0 +1,4 @@ +// Copyright 2022 Tomek (@m40-dev) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "5x5_macropad.h" \ No newline at end of file diff --git a/keyboards/handwired/m40/5x5_macropad/5x5_macropad.h b/keyboards/handwired/m40/5x5_macropad/5x5_macropad.h new file mode 100644 index 0000000000..78e485f00e --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/5x5_macropad.h @@ -0,0 +1,27 @@ +// Copyright 2022 Tomek (@m40-dev) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_ortho_5x5( \ + K000, K001, K002, K003, K004, \ + K100, K101, K102, K103, K104, \ + K200, K201, K202, K203, K204, \ + K300, K301, K302, K303, K304, \ + K400, K401, K402, K403, K404 ) { \ + { K000, K001, K002, K003, K004 }, \ + { K100, K101, K102, K103, K104 }, \ + { K200, K201, K202, K203, K204 }, \ + { K300, K301, K302, K303, K304 }, \ + { K400, K401, K402, K403, K404 } \ +} diff --git a/keyboards/handwired/m40/5x5_macropad/config.h b/keyboards/handwired/m40/5x5_macropad/config.h new file mode 100644 index 0000000000..4f71b79d43 --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/config.h @@ -0,0 +1,88 @@ +// Copyright 2022 Tomek (@m40-dev) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER m40 +#define PRODUCT macropad + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 5 + +/* + * 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 { B5, B4, E6, D7, C6 } +#define MATRIX_COL_PINS { B6, B2, B3, B1, F7 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 diff --git a/keyboards/handwired/m40/5x5_macropad/info.json b/keyboards/handwired/m40/5x5_macropad/info.json new file mode 100644 index 0000000000..7d5ae8c6cb --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/info.json @@ -0,0 +1,41 @@ +{ + "keyboard_name": "5x5_macropad", + "url": "https://www.thingiverse.com/thing:5239739", + "maintainer": "m40-dev", + "layouts": { + "LAYOUT_ortho_5x5": { + "layout": [ + {"label":"K000", "x":0, "y":0}, + {"label":"K001", "x":1, "y":0}, + {"label":"K002", "x":2, "y":0}, + {"label":"K003", "x":3, "y":0}, + {"label":"K004", "x":4, "y":0}, + + {"label":"K100", "x":0, "y":1}, + {"label":"K101", "x":1, "y":1}, + {"label":"K102", "x":2, "y":1}, + {"label":"K103", "x":3, "y":1}, + {"label":"K104", "x":4, "y":1}, + + {"label":"K200", "x":0, "y":2}, + {"label":"K201", "x":1, "y":2}, + {"label":"K202", "x":2, "y":2}, + {"label":"K203", "x":3, "y":2}, + {"label":"K204", "x":4, "y":2}, + + {"label":"K300", "x":0, "y":3}, + {"label":"K301", "x":1, "y":3}, + {"label":"K302", "x":2, "y":3}, + {"label":"K303", "x":3, "y":3}, + {"label":"K304", "x":4, "y":3}, + + {"label":"K400", "x":0, "y":4}, + {"label":"K401", "x":1, "y":4}, + {"label":"K402", "x":2, "y":4}, + {"label":"K403", "x":3, "y":4}, + {"label":"K404", "x":4, "y":4} + + ] + } + } + } \ No newline at end of file diff --git a/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c b/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c new file mode 100644 index 0000000000..5b329dc571 --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c @@ -0,0 +1,26 @@ +// Copyright 2022 Tomek (@m40-dev) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_ortho_5x5( + //┌────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, RESET, + //├────────┼────────┼────────┼────────┬────────┤ + KC_1, KC_2, KC_3, KC_4, KC_5, + //├────────┼────────┼────────┼────────┼────────┤ + KC_1, KC_2, KC_3, KC_4, KC_5, + //├────────┼────────┼────────┼────────┼────────┤ + KC_1, KC_2, KC_3, KC_4, KC_5, + //├────────┼────────┼────────┼────────┼────────┤ + KC_1, KC_2, KC_3, KC_4, KC_5 ) + //└────────┴────────┴────────┴─────────────────┘ +}; diff --git a/keyboards/handwired/m40/5x5_macropad/keymaps/default/readme.md b/keyboards/handwired/m40/5x5_macropad/keymaps/default/readme.md new file mode 100644 index 0000000000..faaecfd9ea --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for 5x5_macropad diff --git a/keyboards/handwired/m40/5x5_macropad/readme.md b/keyboards/handwired/m40/5x5_macropad/readme.md new file mode 100644 index 0000000000..7ce38d6593 --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/readme.md @@ -0,0 +1,26 @@ +# 5x5_macropad + +![m40](https://i.imgur.com/bWXH3FVl.jpeg) + +This is very simple 5x5 macropad for general use. It does not come with any particular layout, it is assumed that layouts will be built on the qmk configurator site. Row and column pins start on the edge of Arduino, if smaller board is required, you can simply connect only first x row/column pairs to the board and get the size of the board you need. + +* Keyboard Maintainer: [Tomek](https://github.com/m40-dev) (discord: m40#4792) +* Hardware Supported: 3D Printed, handwired, using Arduino Pro-Micro (Atmega32U4) for controller +* Hardware Availability: https://www.thingiverse.com/thing:5239739 + +Make example for this keyboard (after setting up your build environment): + + make handwired/m40/5x5_macropad:default + +Flashing example for this keyboard: + + make handwired/m40/5x5_macropad:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. In default layout (if you flashed it already once) it is the top-right button. diff --git a/keyboards/handwired/m40/5x5_macropad/rules.mk b/keyboards/handwired/m40/5x5_macropad/rules.mk new file mode 100644 index 0000000000..d43ced4ed4 --- /dev/null +++ b/keyboards/handwired/m40/5x5_macropad/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Disable unsupported hardware +AUDIO_SUPPORTED = no +BACKLIGHT_SUPPORTED = no \ No newline at end of file From 38209c5c861900e94ad2a0acdc11ea50214f0400 Mon Sep 17 00:00:00 2001 From: dn9uyen Date: Wed, 30 Mar 2022 12:00:17 -0700 Subject: [PATCH 184/699] Add emulated eeprom support for STM32F303xE (#16737) Added FEE_PAGE_SIZE and FEE_MCU_FLASH_SIZE defines for the STM32F303xE --- platforms/chibios/eeprom_stm32_defs.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/platforms/chibios/eeprom_stm32_defs.h b/platforms/chibios/eeprom_stm32_defs.h index a6ceb41355..57d0440330 100644 --- a/platforms/chibios/eeprom_stm32_defs.h +++ b/platforms/chibios/eeprom_stm32_defs.h @@ -25,7 +25,7 @@ # ifndef FEE_PAGE_COUNT # define FEE_PAGE_COUNT 2 // How many pages are used # endif -# elif defined(STM32F103xE) || defined(STM32F303xC) || defined(STM32F072xB) || defined(STM32F070xB) +# elif defined(STM32F103xE) || defined(STM32F303xC) || defined(STM32F303xE) || defined(STM32F072xB) || defined(STM32F070xB) # ifndef FEE_PAGE_SIZE # define FEE_PAGE_SIZE 0x800 // Page size = 2KByte # endif @@ -51,7 +51,7 @@ # define FEE_MCU_FLASH_SIZE 128 // Size in Kb # elif defined(STM32F303xC) || defined(STM32F401xC) # define FEE_MCU_FLASH_SIZE 256 // Size in Kb -# elif defined(STM32F103xE) || defined(STM32F401xE) || defined(STM32F411xE) +# elif defined(STM32F103xE) || defined(STM32F303xE) || defined(STM32F401xE) || defined(STM32F411xE) # define FEE_MCU_FLASH_SIZE 512 // Size in Kb # elif defined(STM32F405xG) # define FEE_MCU_FLASH_SIZE 1024 // Size in Kb From 64974a7f8fbda680ea307a9a4c2cb1cfbe92c01e Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 31 Mar 2022 07:54:13 +1100 Subject: [PATCH 185/699] yapf: disable arithmetic predecence indication (#16749) --- lib/python/qmk/cli/generate/rgb_breathe_table.py | 4 ++-- lib/python/qmk/keyboard.py | 14 +++++++------- setup.cfg | 2 +- 3 files changed, 10 insertions(+), 10 deletions(-) diff --git a/lib/python/qmk/cli/generate/rgb_breathe_table.py b/lib/python/qmk/cli/generate/rgb_breathe_table.py index 7382abd68b..8cf83238e1 100644 --- a/lib/python/qmk/cli/generate/rgb_breathe_table.py +++ b/lib/python/qmk/cli/generate/rgb_breathe_table.py @@ -34,7 +34,7 @@ def generate_rgb_breathe_table(cli): """ breathe_values = [0] * 256 for pos in range(0, 256): - breathe_values[pos] = (int)((math.exp(math.sin((pos/255) * math.pi)) - cli.args.center / math.e) * (cli.args.max / (math.e - 1 / math.e))) # noqa: yapf insists there be no whitespace around / + breathe_values[pos] = (int)((math.exp(math.sin((pos / 255) * math.pi)) - cli.args.center / math.e) * (cli.args.max / (math.e - 1 / math.e))) values_template = '' for s in range(0, 3): @@ -46,7 +46,7 @@ def generate_rgb_breathe_table(cli): values_template += ' ' if pos % 8 == 0 else '' values_template += '0x{:02X}'.format(breathe_values[pos]) values_template += ',' if (pos + step) < 256 else '' - values_template += '\n' if (pos+step) % 8 == 0 else ' ' # noqa: yapf insists there be no whitespace around + + values_template += '\n' if (pos + step) % 8 == 0 else ' ' values_template += '#endif' values_template += '\n\n' if s < 2 else '' diff --git a/lib/python/qmk/keyboard.py b/lib/python/qmk/keyboard.py index 7cd0a1d5a7..e69f63aebe 100644 --- a/lib/python/qmk/keyboard.py +++ b/lib/python/qmk/keyboard.py @@ -218,7 +218,7 @@ def render_key_rect(textpad, x, y, w, h, label, style): label_blank = ' ' * label_len label_border = box_chars['h'] * label_len - label_middle = label + ' '*label_leftover # noqa: yapf insists there be no whitespace around * + label_middle = label + ' ' * label_leftover top_line = array('u', box_chars['tl'] + label_border + box_chars['tr']) lab_line = array('u', box_chars['v'] + label_middle + box_chars['v']) @@ -245,10 +245,10 @@ def render_key_isoenter(textpad, x, y, w, h, label, style): if len(label) > label_len: label = label[:label_len] - label_blank = ' ' * (label_len-1) # noqa: yapf insists there be no whitespace around - and * + label_blank = ' ' * (label_len - 1) label_border_top = box_chars['h'] * label_len - label_border_bottom = box_chars['h'] * (label_len-1) # noqa - label_middle = label + ' '*label_leftover # noqa + label_border_bottom = box_chars['h'] * (label_len - 1) + label_middle = label + ' ' * label_leftover top_line = array('u', box_chars['tl'] + label_border_top + box_chars['tr']) lab_line = array('u', box_chars['v'] + label_middle + box_chars['v']) @@ -277,10 +277,10 @@ def render_key_baenter(textpad, x, y, w, h, label, style): if len(label) > label_len: label = label[:label_len] - label_blank = ' ' * (label_len-3) # noqa: yapf insists there be no whitespace around - and * - label_border_top = box_chars['h'] * (label_len-3) # noqa + label_blank = ' ' * (label_len - 3) + label_border_top = box_chars['h'] * (label_len - 3) label_border_bottom = box_chars['h'] * label_len - label_middle = label + ' '*label_leftover # noqa + label_middle = label + ' ' * label_leftover top_line = array('u', box_chars['tl'] + label_border_top + box_chars['tr']) mid_line = array('u', box_chars['v'] + label_blank + box_chars['v']) diff --git a/setup.cfg b/setup.cfg index baa6a03967..c7d7952098 100644 --- a/setup.cfg +++ b/setup.cfg @@ -51,7 +51,7 @@ allow_split_before_dict_value=True # e = 1*2 - 3 # f = 1 + 2 + 3 + 4 # -arithmetic_precedence_indication=True +arithmetic_precedence_indication=False # Number of blank lines surrounding top-level function and class # definitions. From 11db29bedb24acc6d8c8ab30e4fa7d80b208b023 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 1 Apr 2022 10:25:43 +0100 Subject: [PATCH 186/699] Lint keyboard/project name (#16766) --- data/schemas/definitions.jsonschema | 16 ++++++++++++++++ data/schemas/keyboard.jsonschema | 1 + 2 files changed, 17 insertions(+) diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema index 46aba52cbd..cca30af827 100644 --- a/data/schemas/definitions.jsonschema +++ b/data/schemas/definitions.jsonschema @@ -71,6 +71,22 @@ "type": "number", "min": 0.25 }, + "keyboard": { + "oneOf": [ + { + "type": "string", + "enum": [ + "converter/numeric_keypad_IIe", + "emptystring/NQG", + "maple_computing/christmas_tree/V2017" + ] + }, + { + "type": "string", + "pattern": "^[0-9a-z][0-9a-z_/]*$" + } + ] + }, "mcu_pin_array": { "type": "array", "items": {"$ref": "#/mcu_pin"} diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index a8b3d06933..adb63fd13e 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -5,6 +5,7 @@ "type": "object", "properties": { "keyboard_name": {"$ref": "qmk.definitions.v1#/text_identifier"}, + "keyboard_folder": {"$ref": "qmk.definitions.v1#/keyboard"}, "maintainer": {"$ref": "qmk.definitions.v1#/text_identifier"}, "manufacturer": {"$ref": "qmk.definitions.v1#/text_identifier"}, "url": { From 1caccca1f6f2645479ba8027de996b6fc50c3f46 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 3 Apr 2022 01:53:21 +1100 Subject: [PATCH 187/699] usb-usb converter: fix layout macros (#16769) --- keyboards/converter/usb_usb/usb_usb.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/converter/usb_usb/usb_usb.h b/keyboards/converter/usb_usb/usb_usb.h index 4a25cf5d2e..99baa003cb 100644 --- a/keyboards/converter/usb_usb/usb_usb.h +++ b/keyboards/converter/usb_usb/usb_usb.h @@ -168,7 +168,7 @@ along with this program. If not, see . { XXX, XXX, XXX, XXX, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k2F }, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k4F }, \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B, k5C, k5D, k5E, k5F }, \ { k60, k61, k62, k63, k64, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ @@ -210,10 +210,10 @@ along with this program. If not, see . { XXX, XXX, XXX, XXX, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k2F }, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ + { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k4F }, \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B, k5C, k5D, k5E, k5F }, \ - { k60, k61, k62, k63, k64, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ + { k60, k61, k62, k63, XXX, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, k87, k88, k89, k8A, k8B, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ From 4f30b7a2c9d04070f1df8936bf3e75eee14558bc Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 2 Apr 2022 22:09:16 +0100 Subject: [PATCH 188/699] Automatically approve workflow runs from first time contributors (#16774) --- .github/workflows/auto_approve.yml | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 .github/workflows/auto_approve.yml diff --git a/.github/workflows/auto_approve.yml b/.github/workflows/auto_approve.yml new file mode 100644 index 0000000000..7c0a982b44 --- /dev/null +++ b/.github/workflows/auto_approve.yml @@ -0,0 +1,16 @@ +name: Automatic Approve + +on: + schedule: + - cron: "*/5 * * * *" + +jobs: + automatic_approve: + runs-on: ubuntu-latest + + steps: + uses: mheap/automatic-approve-action@v1 + with: + token: ${{ secrets.QMK_BOT_TOKEN }} + workflows: "format.yml,lint.yml,unit_test.yml" + dangerous_files: "lib/python/,Makefile,paths.mk,builddefs/" From 61bd61347ab1739524f375871407d54436f4c68e Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 2 Apr 2022 22:28:10 +0100 Subject: [PATCH 189/699] Automatically approve workflow runs from first time contributors (#16775) * Automatically approve workflow runs from first time contributors * Automatically approve workflow runs from first time contributors --- .github/workflows/auto_approve.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.github/workflows/auto_approve.yml b/.github/workflows/auto_approve.yml index 7c0a982b44..6b986ffccc 100644 --- a/.github/workflows/auto_approve.yml +++ b/.github/workflows/auto_approve.yml @@ -9,8 +9,8 @@ jobs: runs-on: ubuntu-latest steps: - uses: mheap/automatic-approve-action@v1 - with: - token: ${{ secrets.QMK_BOT_TOKEN }} - workflows: "format.yml,lint.yml,unit_test.yml" - dangerous_files: "lib/python/,Makefile,paths.mk,builddefs/" + - uses: mheap/automatic-approve-action@v1 + with: + token: ${{ secrets.QMK_BOT_TOKEN }} + workflows: "format.yml,lint.yml,unit_test.yml" + dangerous_files: "lib/python/,Makefile,paths.mk,builddefs/" From 27ae37d626ca534be196bf4a0bdffa8e03a5a159 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 3 Apr 2022 13:18:28 +0100 Subject: [PATCH 190/699] Align action workflow filenames (#16776) --- .github/workflows/{auto_tag.yaml => auto_tag.yml} | 0 .github/workflows/{format.yaml => format.yml} | 0 .github/workflows/{format_push.yaml => format_push.yml} | 0 3 files changed, 0 insertions(+), 0 deletions(-) rename .github/workflows/{auto_tag.yaml => auto_tag.yml} (100%) rename .github/workflows/{format.yaml => format.yml} (100%) rename .github/workflows/{format_push.yaml => format_push.yml} (100%) diff --git a/.github/workflows/auto_tag.yaml b/.github/workflows/auto_tag.yml similarity index 100% rename from .github/workflows/auto_tag.yaml rename to .github/workflows/auto_tag.yml diff --git a/.github/workflows/format.yaml b/.github/workflows/format.yml similarity index 100% rename from .github/workflows/format.yaml rename to .github/workflows/format.yml diff --git a/.github/workflows/format_push.yaml b/.github/workflows/format_push.yml similarity index 100% rename from .github/workflows/format_push.yaml rename to .github/workflows/format_push.yml From 1660b2d2e25f5c43306a043c372255d0f66bb925 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 3 Apr 2022 18:22:52 +0100 Subject: [PATCH 191/699] Refactor CTPC logic to allow future converters (#16621) * Refactor CTPC logic to allow future converters * Update builddefs/converters.mk Co-authored-by: Stefan Kerkmann Co-authored-by: Stefan Kerkmann --- builddefs/build_keyboard.mk | 8 +- builddefs/converters.mk | 26 + platforms/chibios/_pin_defs.h | 564 ++++++++---------- .../promicro_to_proton_c/_pin_defs.h | 41 ++ .../promicro_to_proton_c/converter.mk} | 2 - 5 files changed, 330 insertions(+), 311 deletions(-) create mode 100644 builddefs/converters.mk create mode 100644 platforms/chibios/converters/promicro_to_proton_c/_pin_defs.h rename platforms/chibios/{boards/QMK_PROTON_C/convert_to_proton_c.mk => converters/promicro_to_proton_c/converter.mk} (78%) diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index 44acd964cc..4503f018a8 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -172,13 +172,7 @@ generated-files: $(KEYMAP_OUTPUT)/src/config.h $(KEYMAP_OUTPUT)/src/keymap.c endif -ifeq ($(strip $(CTPC)), yes) - CONVERT_TO_PROTON_C=yes -endif - -ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes) - include platforms/chibios/boards/QMK_PROTON_C/convert_to_proton_c.mk -endif +include $(BUILDDEFS_PATH)/converters.mk include $(BUILDDEFS_PATH)/mcu_selection.mk diff --git a/builddefs/converters.mk b/builddefs/converters.mk new file mode 100644 index 0000000000..1b029e7225 --- /dev/null +++ b/builddefs/converters.mk @@ -0,0 +1,26 @@ +ifeq ($(strip $(CTPC)), yes) + CONVERT_TO_PROTON_C=yes +endif +ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes) + CONVERT_TO=proton_c +endif + +# TODO: opt in rather than assume everything uses a pro micro +PIN_COMPATIBLE ?= promicro +ifneq ($(CONVERT_TO),) + # glob to search each platfrorm and/or check for valid converter + CONVERTER := $(wildcard $(PLATFORM_PATH)/*/converters/$(PIN_COMPATIBLE)_to_$(CONVERT_TO)/) + ifeq ($(CONVERTER),) + $(call CATASTROPHIC_ERROR,Converting from '$(PIN_COMPATIBLE)' to '$(CONVERT_TO)' not possible!) + endif + + TARGET := $(TARGET)_$(CONVERT_TO) + + # Configure any defaults + OPT_DEFS += -DCONVERT_TO_$(strip $(shell echo $(CONVERT_TO) | tr '[:lower:]' '[:upper:]')) + OPT_DEFS += -DCONVERTER_ENABLED + VPATH += $(CONVERTER) + + # Finally run any converter specific logic + include $(CONVERTER)/converter.mk +endif diff --git a/platforms/chibios/_pin_defs.h b/platforms/chibios/_pin_defs.h index a84d931cc2..0d96e2fc3b 100644 --- a/platforms/chibios/_pin_defs.h +++ b/platforms/chibios/_pin_defs.h @@ -21,309 +21,269 @@ # include #endif -// Defines mapping for Proton C replacement -#ifdef CONVERT_TO_PROTON_C -// Left side (front) -# define D3 PAL_LINE(GPIOA, 9) -# define D2 PAL_LINE(GPIOA, 10) -// GND -// GND -# define D1 PAL_LINE(GPIOB, 7) -# define D0 PAL_LINE(GPIOB, 6) -# define D4 PAL_LINE(GPIOB, 5) -# define C6 PAL_LINE(GPIOB, 4) -# define D7 PAL_LINE(GPIOB, 3) -# define E6 PAL_LINE(GPIOB, 2) -# define B4 PAL_LINE(GPIOB, 1) -# define B5 PAL_LINE(GPIOB, 0) - -// Right side (front) -// RAW -// GND -// RESET -// VCC -# define F4 PAL_LINE(GPIOA, 2) -# define F5 PAL_LINE(GPIOA, 1) -# define F6 PAL_LINE(GPIOA, 0) -# define F7 PAL_LINE(GPIOB, 8) -# define B1 PAL_LINE(GPIOB, 13) -# define B3 PAL_LINE(GPIOB, 14) -# define B2 PAL_LINE(GPIOB, 15) -# define B6 PAL_LINE(GPIOB, 9) - -// LEDs (only D5/C13 uses an actual LED) -# ifdef CONVERT_TO_PROTON_C_RXLED -# define D5 PAL_LINE(GPIOC, 14) -# define B0 PAL_LINE(GPIOC, 13) -# else -# define D5 PAL_LINE(GPIOC, 13) -# define B0 PAL_LINE(GPIOC, 14) -# endif -#else -# define A0 PAL_LINE(GPIOA, 0) -# define A1 PAL_LINE(GPIOA, 1) -# define A2 PAL_LINE(GPIOA, 2) -# define A3 PAL_LINE(GPIOA, 3) -# define A4 PAL_LINE(GPIOA, 4) -# define A5 PAL_LINE(GPIOA, 5) -# define A6 PAL_LINE(GPIOA, 6) -# define A7 PAL_LINE(GPIOA, 7) -# define A8 PAL_LINE(GPIOA, 8) -# define A9 PAL_LINE(GPIOA, 9) -# define A10 PAL_LINE(GPIOA, 10) -# define A11 PAL_LINE(GPIOA, 11) -# define A12 PAL_LINE(GPIOA, 12) -# define A13 PAL_LINE(GPIOA, 13) -# define A14 PAL_LINE(GPIOA, 14) -# define A15 PAL_LINE(GPIOA, 15) -# define A16 PAL_LINE(GPIOA, 16) -# define A17 PAL_LINE(GPIOA, 17) -# define A18 PAL_LINE(GPIOA, 18) -# define A19 PAL_LINE(GPIOA, 19) -# define A20 PAL_LINE(GPIOA, 20) -# define A21 PAL_LINE(GPIOA, 21) -# define A22 PAL_LINE(GPIOA, 22) -# define A23 PAL_LINE(GPIOA, 23) -# define A24 PAL_LINE(GPIOA, 24) -# define A25 PAL_LINE(GPIOA, 25) -# define A26 PAL_LINE(GPIOA, 26) -# define A27 PAL_LINE(GPIOA, 27) -# define A28 PAL_LINE(GPIOA, 28) -# define A29 PAL_LINE(GPIOA, 29) -# define A30 PAL_LINE(GPIOA, 30) -# define A31 PAL_LINE(GPIOA, 31) -# define A32 PAL_LINE(GPIOA, 32) -# define B0 PAL_LINE(GPIOB, 0) -# define B1 PAL_LINE(GPIOB, 1) -# define B2 PAL_LINE(GPIOB, 2) -# define B3 PAL_LINE(GPIOB, 3) -# define B4 PAL_LINE(GPIOB, 4) -# define B5 PAL_LINE(GPIOB, 5) -# define B6 PAL_LINE(GPIOB, 6) -# define B7 PAL_LINE(GPIOB, 7) -# define B8 PAL_LINE(GPIOB, 8) -# define B9 PAL_LINE(GPIOB, 9) -# define B10 PAL_LINE(GPIOB, 10) -# define B11 PAL_LINE(GPIOB, 11) -# define B12 PAL_LINE(GPIOB, 12) -# define B13 PAL_LINE(GPIOB, 13) -# define B14 PAL_LINE(GPIOB, 14) -# define B15 PAL_LINE(GPIOB, 15) -# define B16 PAL_LINE(GPIOB, 16) -# define B17 PAL_LINE(GPIOB, 17) -# define B18 PAL_LINE(GPIOB, 18) -# define B19 PAL_LINE(GPIOB, 19) -# define B20 PAL_LINE(GPIOB, 20) -# define B21 PAL_LINE(GPIOB, 21) -# define B22 PAL_LINE(GPIOB, 22) -# define B23 PAL_LINE(GPIOB, 23) -# define B24 PAL_LINE(GPIOB, 24) -# define B25 PAL_LINE(GPIOB, 25) -# define B26 PAL_LINE(GPIOB, 26) -# define B27 PAL_LINE(GPIOB, 27) -# define B28 PAL_LINE(GPIOB, 28) -# define B29 PAL_LINE(GPIOB, 29) -# define B30 PAL_LINE(GPIOB, 30) -# define B31 PAL_LINE(GPIOB, 31) -# define B32 PAL_LINE(GPIOB, 32) -# define C0 PAL_LINE(GPIOC, 0) -# define C1 PAL_LINE(GPIOC, 1) -# define C2 PAL_LINE(GPIOC, 2) -# define C3 PAL_LINE(GPIOC, 3) -# define C4 PAL_LINE(GPIOC, 4) -# define C5 PAL_LINE(GPIOC, 5) -# define C6 PAL_LINE(GPIOC, 6) -# define C7 PAL_LINE(GPIOC, 7) -# define C8 PAL_LINE(GPIOC, 8) -# define C9 PAL_LINE(GPIOC, 9) -# define C10 PAL_LINE(GPIOC, 10) -# define C11 PAL_LINE(GPIOC, 11) -# define C12 PAL_LINE(GPIOC, 12) -# define C13 PAL_LINE(GPIOC, 13) -# define C14 PAL_LINE(GPIOC, 14) -# define C15 PAL_LINE(GPIOC, 15) -# define C16 PAL_LINE(GPIOC, 16) -# define C17 PAL_LINE(GPIOC, 17) -# define C18 PAL_LINE(GPIOC, 18) -# define C19 PAL_LINE(GPIOC, 19) -# define C20 PAL_LINE(GPIOC, 20) -# define C21 PAL_LINE(GPIOC, 21) -# define C22 PAL_LINE(GPIOC, 22) -# define C23 PAL_LINE(GPIOC, 23) -# define C24 PAL_LINE(GPIOC, 24) -# define C25 PAL_LINE(GPIOC, 25) -# define C26 PAL_LINE(GPIOC, 26) -# define C27 PAL_LINE(GPIOC, 27) -# define C28 PAL_LINE(GPIOC, 28) -# define C29 PAL_LINE(GPIOC, 29) -# define C30 PAL_LINE(GPIOC, 30) -# define C31 PAL_LINE(GPIOC, 31) -# define C32 PAL_LINE(GPIOC, 32) -# define D0 PAL_LINE(GPIOD, 0) -# define D1 PAL_LINE(GPIOD, 1) -# define D2 PAL_LINE(GPIOD, 2) -# define D3 PAL_LINE(GPIOD, 3) -# define D4 PAL_LINE(GPIOD, 4) -# define D5 PAL_LINE(GPIOD, 5) -# define D6 PAL_LINE(GPIOD, 6) -# define D7 PAL_LINE(GPIOD, 7) -# define D8 PAL_LINE(GPIOD, 8) -# define D9 PAL_LINE(GPIOD, 9) -# define D10 PAL_LINE(GPIOD, 10) -# define D11 PAL_LINE(GPIOD, 11) -# define D12 PAL_LINE(GPIOD, 12) -# define D13 PAL_LINE(GPIOD, 13) -# define D14 PAL_LINE(GPIOD, 14) -# define D15 PAL_LINE(GPIOD, 15) -# define D16 PAL_LINE(GPIOD, 16) -# define D17 PAL_LINE(GPIOD, 17) -# define D18 PAL_LINE(GPIOD, 18) -# define D19 PAL_LINE(GPIOD, 19) -# define D20 PAL_LINE(GPIOD, 20) -# define D21 PAL_LINE(GPIOD, 21) -# define D22 PAL_LINE(GPIOD, 22) -# define D23 PAL_LINE(GPIOD, 23) -# define D24 PAL_LINE(GPIOD, 24) -# define D25 PAL_LINE(GPIOD, 25) -# define D26 PAL_LINE(GPIOD, 26) -# define D27 PAL_LINE(GPIOD, 27) -# define D28 PAL_LINE(GPIOD, 28) -# define D29 PAL_LINE(GPIOD, 29) -# define D30 PAL_LINE(GPIOD, 30) -# define D31 PAL_LINE(GPIOD, 31) -# define D32 PAL_LINE(GPIOD, 32) -# define E0 PAL_LINE(GPIOE, 0) -# define E1 PAL_LINE(GPIOE, 1) -# define E2 PAL_LINE(GPIOE, 2) -# define E3 PAL_LINE(GPIOE, 3) -# define E4 PAL_LINE(GPIOE, 4) -# define E5 PAL_LINE(GPIOE, 5) -# define E6 PAL_LINE(GPIOE, 6) -# define E7 PAL_LINE(GPIOE, 7) -# define E8 PAL_LINE(GPIOE, 8) -# define E9 PAL_LINE(GPIOE, 9) -# define E10 PAL_LINE(GPIOE, 10) -# define E11 PAL_LINE(GPIOE, 11) -# define E12 PAL_LINE(GPIOE, 12) -# define E13 PAL_LINE(GPIOE, 13) -# define E14 PAL_LINE(GPIOE, 14) -# define E15 PAL_LINE(GPIOE, 15) -# define E16 PAL_LINE(GPIOE, 16) -# define E17 PAL_LINE(GPIOE, 17) -# define E18 PAL_LINE(GPIOE, 18) -# define E19 PAL_LINE(GPIOE, 19) -# define E20 PAL_LINE(GPIOE, 20) -# define E21 PAL_LINE(GPIOE, 21) -# define E22 PAL_LINE(GPIOE, 22) -# define E23 PAL_LINE(GPIOE, 23) -# define E24 PAL_LINE(GPIOE, 24) -# define E25 PAL_LINE(GPIOE, 25) -# define E26 PAL_LINE(GPIOE, 26) -# define E27 PAL_LINE(GPIOE, 27) -# define E28 PAL_LINE(GPIOE, 28) -# define E29 PAL_LINE(GPIOE, 29) -# define E30 PAL_LINE(GPIOE, 30) -# define E31 PAL_LINE(GPIOE, 31) -# define E32 PAL_LINE(GPIOE, 32) -# define F0 PAL_LINE(GPIOF, 0) -# define F1 PAL_LINE(GPIOF, 1) -# define F2 PAL_LINE(GPIOF, 2) -# define F3 PAL_LINE(GPIOF, 3) -# define F4 PAL_LINE(GPIOF, 4) -# define F5 PAL_LINE(GPIOF, 5) -# define F6 PAL_LINE(GPIOF, 6) -# define F7 PAL_LINE(GPIOF, 7) -# define F8 PAL_LINE(GPIOF, 8) -# define F9 PAL_LINE(GPIOF, 9) -# define F10 PAL_LINE(GPIOF, 10) -# define F11 PAL_LINE(GPIOF, 11) -# define F12 PAL_LINE(GPIOF, 12) -# define F13 PAL_LINE(GPIOF, 13) -# define F14 PAL_LINE(GPIOF, 14) -# define F15 PAL_LINE(GPIOF, 15) -# define G0 PAL_LINE(GPIOG, 0) -# define G1 PAL_LINE(GPIOG, 1) -# define G2 PAL_LINE(GPIOG, 2) -# define G3 PAL_LINE(GPIOG, 3) -# define G4 PAL_LINE(GPIOG, 4) -# define G5 PAL_LINE(GPIOG, 5) -# define G6 PAL_LINE(GPIOG, 6) -# define G7 PAL_LINE(GPIOG, 7) -# define G8 PAL_LINE(GPIOG, 8) -# define G9 PAL_LINE(GPIOG, 9) -# define G10 PAL_LINE(GPIOG, 10) -# define G11 PAL_LINE(GPIOG, 11) -# define G12 PAL_LINE(GPIOG, 12) -# define G13 PAL_LINE(GPIOG, 13) -# define G14 PAL_LINE(GPIOG, 14) -# define G15 PAL_LINE(GPIOG, 15) -# define H0 PAL_LINE(GPIOH, 0) -# define H1 PAL_LINE(GPIOH, 1) -# define H2 PAL_LINE(GPIOH, 2) -# define H3 PAL_LINE(GPIOH, 3) -# define H4 PAL_LINE(GPIOH, 4) -# define H5 PAL_LINE(GPIOH, 5) -# define H6 PAL_LINE(GPIOH, 6) -# define H7 PAL_LINE(GPIOH, 7) -# define H8 PAL_LINE(GPIOH, 8) -# define H9 PAL_LINE(GPIOH, 9) -# define H10 PAL_LINE(GPIOH, 10) -# define H11 PAL_LINE(GPIOH, 11) -# define H12 PAL_LINE(GPIOH, 12) -# define H13 PAL_LINE(GPIOH, 13) -# define H14 PAL_LINE(GPIOH, 14) -# define H15 PAL_LINE(GPIOH, 15) -# define I0 PAL_LINE(GPIOI, 0) -# define I1 PAL_LINE(GPIOI, 1) -# define I2 PAL_LINE(GPIOI, 2) -# define I3 PAL_LINE(GPIOI, 3) -# define I4 PAL_LINE(GPIOI, 4) -# define I5 PAL_LINE(GPIOI, 5) -# define I6 PAL_LINE(GPIOI, 6) -# define I7 PAL_LINE(GPIOI, 7) -# define I8 PAL_LINE(GPIOI, 8) -# define I9 PAL_LINE(GPIOI, 9) -# define I10 PAL_LINE(GPIOI, 10) -# define I11 PAL_LINE(GPIOI, 11) -# define I12 PAL_LINE(GPIOI, 12) -# define I13 PAL_LINE(GPIOI, 13) -# define I14 PAL_LINE(GPIOI, 14) -# define I15 PAL_LINE(GPIOI, 15) -# define J0 PAL_LINE(GPIOJ, 0) -# define J1 PAL_LINE(GPIOJ, 1) -# define J2 PAL_LINE(GPIOJ, 2) -# define J3 PAL_LINE(GPIOJ, 3) -# define J4 PAL_LINE(GPIOJ, 4) -# define J5 PAL_LINE(GPIOJ, 5) -# define J6 PAL_LINE(GPIOJ, 6) -# define J7 PAL_LINE(GPIOJ, 7) -# define J8 PAL_LINE(GPIOJ, 8) -# define J9 PAL_LINE(GPIOJ, 9) -# define J10 PAL_LINE(GPIOJ, 10) -# define J11 PAL_LINE(GPIOJ, 11) -# define J12 PAL_LINE(GPIOJ, 12) -# define J13 PAL_LINE(GPIOJ, 13) -# define J14 PAL_LINE(GPIOJ, 14) -# define J15 PAL_LINE(GPIOJ, 15) +#define A0 PAL_LINE(GPIOA, 0) +#define A1 PAL_LINE(GPIOA, 1) +#define A2 PAL_LINE(GPIOA, 2) +#define A3 PAL_LINE(GPIOA, 3) +#define A4 PAL_LINE(GPIOA, 4) +#define A5 PAL_LINE(GPIOA, 5) +#define A6 PAL_LINE(GPIOA, 6) +#define A7 PAL_LINE(GPIOA, 7) +#define A8 PAL_LINE(GPIOA, 8) +#define A9 PAL_LINE(GPIOA, 9) +#define A10 PAL_LINE(GPIOA, 10) +#define A11 PAL_LINE(GPIOA, 11) +#define A12 PAL_LINE(GPIOA, 12) +#define A13 PAL_LINE(GPIOA, 13) +#define A14 PAL_LINE(GPIOA, 14) +#define A15 PAL_LINE(GPIOA, 15) +#define A16 PAL_LINE(GPIOA, 16) +#define A17 PAL_LINE(GPIOA, 17) +#define A18 PAL_LINE(GPIOA, 18) +#define A19 PAL_LINE(GPIOA, 19) +#define A20 PAL_LINE(GPIOA, 20) +#define A21 PAL_LINE(GPIOA, 21) +#define A22 PAL_LINE(GPIOA, 22) +#define A23 PAL_LINE(GPIOA, 23) +#define A24 PAL_LINE(GPIOA, 24) +#define A25 PAL_LINE(GPIOA, 25) +#define A26 PAL_LINE(GPIOA, 26) +#define A27 PAL_LINE(GPIOA, 27) +#define A28 PAL_LINE(GPIOA, 28) +#define A29 PAL_LINE(GPIOA, 29) +#define A30 PAL_LINE(GPIOA, 30) +#define A31 PAL_LINE(GPIOA, 31) +#define A32 PAL_LINE(GPIOA, 32) +#define B0 PAL_LINE(GPIOB, 0) +#define B1 PAL_LINE(GPIOB, 1) +#define B2 PAL_LINE(GPIOB, 2) +#define B3 PAL_LINE(GPIOB, 3) +#define B4 PAL_LINE(GPIOB, 4) +#define B5 PAL_LINE(GPIOB, 5) +#define B6 PAL_LINE(GPIOB, 6) +#define B7 PAL_LINE(GPIOB, 7) +#define B8 PAL_LINE(GPIOB, 8) +#define B9 PAL_LINE(GPIOB, 9) +#define B10 PAL_LINE(GPIOB, 10) +#define B11 PAL_LINE(GPIOB, 11) +#define B12 PAL_LINE(GPIOB, 12) +#define B13 PAL_LINE(GPIOB, 13) +#define B14 PAL_LINE(GPIOB, 14) +#define B15 PAL_LINE(GPIOB, 15) +#define B16 PAL_LINE(GPIOB, 16) +#define B17 PAL_LINE(GPIOB, 17) +#define B18 PAL_LINE(GPIOB, 18) +#define B19 PAL_LINE(GPIOB, 19) +#define B20 PAL_LINE(GPIOB, 20) +#define B21 PAL_LINE(GPIOB, 21) +#define B22 PAL_LINE(GPIOB, 22) +#define B23 PAL_LINE(GPIOB, 23) +#define B24 PAL_LINE(GPIOB, 24) +#define B25 PAL_LINE(GPIOB, 25) +#define B26 PAL_LINE(GPIOB, 26) +#define B27 PAL_LINE(GPIOB, 27) +#define B28 PAL_LINE(GPIOB, 28) +#define B29 PAL_LINE(GPIOB, 29) +#define B30 PAL_LINE(GPIOB, 30) +#define B31 PAL_LINE(GPIOB, 31) +#define B32 PAL_LINE(GPIOB, 32) +#define C0 PAL_LINE(GPIOC, 0) +#define C1 PAL_LINE(GPIOC, 1) +#define C2 PAL_LINE(GPIOC, 2) +#define C3 PAL_LINE(GPIOC, 3) +#define C4 PAL_LINE(GPIOC, 4) +#define C5 PAL_LINE(GPIOC, 5) +#define C6 PAL_LINE(GPIOC, 6) +#define C7 PAL_LINE(GPIOC, 7) +#define C8 PAL_LINE(GPIOC, 8) +#define C9 PAL_LINE(GPIOC, 9) +#define C10 PAL_LINE(GPIOC, 10) +#define C11 PAL_LINE(GPIOC, 11) +#define C12 PAL_LINE(GPIOC, 12) +#define C13 PAL_LINE(GPIOC, 13) +#define C14 PAL_LINE(GPIOC, 14) +#define C15 PAL_LINE(GPIOC, 15) +#define C16 PAL_LINE(GPIOC, 16) +#define C17 PAL_LINE(GPIOC, 17) +#define C18 PAL_LINE(GPIOC, 18) +#define C19 PAL_LINE(GPIOC, 19) +#define C20 PAL_LINE(GPIOC, 20) +#define C21 PAL_LINE(GPIOC, 21) +#define C22 PAL_LINE(GPIOC, 22) +#define C23 PAL_LINE(GPIOC, 23) +#define C24 PAL_LINE(GPIOC, 24) +#define C25 PAL_LINE(GPIOC, 25) +#define C26 PAL_LINE(GPIOC, 26) +#define C27 PAL_LINE(GPIOC, 27) +#define C28 PAL_LINE(GPIOC, 28) +#define C29 PAL_LINE(GPIOC, 29) +#define C30 PAL_LINE(GPIOC, 30) +#define C31 PAL_LINE(GPIOC, 31) +#define C32 PAL_LINE(GPIOC, 32) +#define D0 PAL_LINE(GPIOD, 0) +#define D1 PAL_LINE(GPIOD, 1) +#define D2 PAL_LINE(GPIOD, 2) +#define D3 PAL_LINE(GPIOD, 3) +#define D4 PAL_LINE(GPIOD, 4) +#define D5 PAL_LINE(GPIOD, 5) +#define D6 PAL_LINE(GPIOD, 6) +#define D7 PAL_LINE(GPIOD, 7) +#define D8 PAL_LINE(GPIOD, 8) +#define D9 PAL_LINE(GPIOD, 9) +#define D10 PAL_LINE(GPIOD, 10) +#define D11 PAL_LINE(GPIOD, 11) +#define D12 PAL_LINE(GPIOD, 12) +#define D13 PAL_LINE(GPIOD, 13) +#define D14 PAL_LINE(GPIOD, 14) +#define D15 PAL_LINE(GPIOD, 15) +#define D16 PAL_LINE(GPIOD, 16) +#define D17 PAL_LINE(GPIOD, 17) +#define D18 PAL_LINE(GPIOD, 18) +#define D19 PAL_LINE(GPIOD, 19) +#define D20 PAL_LINE(GPIOD, 20) +#define D21 PAL_LINE(GPIOD, 21) +#define D22 PAL_LINE(GPIOD, 22) +#define D23 PAL_LINE(GPIOD, 23) +#define D24 PAL_LINE(GPIOD, 24) +#define D25 PAL_LINE(GPIOD, 25) +#define D26 PAL_LINE(GPIOD, 26) +#define D27 PAL_LINE(GPIOD, 27) +#define D28 PAL_LINE(GPIOD, 28) +#define D29 PAL_LINE(GPIOD, 29) +#define D30 PAL_LINE(GPIOD, 30) +#define D31 PAL_LINE(GPIOD, 31) +#define D32 PAL_LINE(GPIOD, 32) +#define E0 PAL_LINE(GPIOE, 0) +#define E1 PAL_LINE(GPIOE, 1) +#define E2 PAL_LINE(GPIOE, 2) +#define E3 PAL_LINE(GPIOE, 3) +#define E4 PAL_LINE(GPIOE, 4) +#define E5 PAL_LINE(GPIOE, 5) +#define E6 PAL_LINE(GPIOE, 6) +#define E7 PAL_LINE(GPIOE, 7) +#define E8 PAL_LINE(GPIOE, 8) +#define E9 PAL_LINE(GPIOE, 9) +#define E10 PAL_LINE(GPIOE, 10) +#define E11 PAL_LINE(GPIOE, 11) +#define E12 PAL_LINE(GPIOE, 12) +#define E13 PAL_LINE(GPIOE, 13) +#define E14 PAL_LINE(GPIOE, 14) +#define E15 PAL_LINE(GPIOE, 15) +#define E16 PAL_LINE(GPIOE, 16) +#define E17 PAL_LINE(GPIOE, 17) +#define E18 PAL_LINE(GPIOE, 18) +#define E19 PAL_LINE(GPIOE, 19) +#define E20 PAL_LINE(GPIOE, 20) +#define E21 PAL_LINE(GPIOE, 21) +#define E22 PAL_LINE(GPIOE, 22) +#define E23 PAL_LINE(GPIOE, 23) +#define E24 PAL_LINE(GPIOE, 24) +#define E25 PAL_LINE(GPIOE, 25) +#define E26 PAL_LINE(GPIOE, 26) +#define E27 PAL_LINE(GPIOE, 27) +#define E28 PAL_LINE(GPIOE, 28) +#define E29 PAL_LINE(GPIOE, 29) +#define E30 PAL_LINE(GPIOE, 30) +#define E31 PAL_LINE(GPIOE, 31) +#define E32 PAL_LINE(GPIOE, 32) +#define F0 PAL_LINE(GPIOF, 0) +#define F1 PAL_LINE(GPIOF, 1) +#define F2 PAL_LINE(GPIOF, 2) +#define F3 PAL_LINE(GPIOF, 3) +#define F4 PAL_LINE(GPIOF, 4) +#define F5 PAL_LINE(GPIOF, 5) +#define F6 PAL_LINE(GPIOF, 6) +#define F7 PAL_LINE(GPIOF, 7) +#define F8 PAL_LINE(GPIOF, 8) +#define F9 PAL_LINE(GPIOF, 9) +#define F10 PAL_LINE(GPIOF, 10) +#define F11 PAL_LINE(GPIOF, 11) +#define F12 PAL_LINE(GPIOF, 12) +#define F13 PAL_LINE(GPIOF, 13) +#define F14 PAL_LINE(GPIOF, 14) +#define F15 PAL_LINE(GPIOF, 15) +#define G0 PAL_LINE(GPIOG, 0) +#define G1 PAL_LINE(GPIOG, 1) +#define G2 PAL_LINE(GPIOG, 2) +#define G3 PAL_LINE(GPIOG, 3) +#define G4 PAL_LINE(GPIOG, 4) +#define G5 PAL_LINE(GPIOG, 5) +#define G6 PAL_LINE(GPIOG, 6) +#define G7 PAL_LINE(GPIOG, 7) +#define G8 PAL_LINE(GPIOG, 8) +#define G9 PAL_LINE(GPIOG, 9) +#define G10 PAL_LINE(GPIOG, 10) +#define G11 PAL_LINE(GPIOG, 11) +#define G12 PAL_LINE(GPIOG, 12) +#define G13 PAL_LINE(GPIOG, 13) +#define G14 PAL_LINE(GPIOG, 14) +#define G15 PAL_LINE(GPIOG, 15) +#define H0 PAL_LINE(GPIOH, 0) +#define H1 PAL_LINE(GPIOH, 1) +#define H2 PAL_LINE(GPIOH, 2) +#define H3 PAL_LINE(GPIOH, 3) +#define H4 PAL_LINE(GPIOH, 4) +#define H5 PAL_LINE(GPIOH, 5) +#define H6 PAL_LINE(GPIOH, 6) +#define H7 PAL_LINE(GPIOH, 7) +#define H8 PAL_LINE(GPIOH, 8) +#define H9 PAL_LINE(GPIOH, 9) +#define H10 PAL_LINE(GPIOH, 10) +#define H11 PAL_LINE(GPIOH, 11) +#define H12 PAL_LINE(GPIOH, 12) +#define H13 PAL_LINE(GPIOH, 13) +#define H14 PAL_LINE(GPIOH, 14) +#define H15 PAL_LINE(GPIOH, 15) +#define I0 PAL_LINE(GPIOI, 0) +#define I1 PAL_LINE(GPIOI, 1) +#define I2 PAL_LINE(GPIOI, 2) +#define I3 PAL_LINE(GPIOI, 3) +#define I4 PAL_LINE(GPIOI, 4) +#define I5 PAL_LINE(GPIOI, 5) +#define I6 PAL_LINE(GPIOI, 6) +#define I7 PAL_LINE(GPIOI, 7) +#define I8 PAL_LINE(GPIOI, 8) +#define I9 PAL_LINE(GPIOI, 9) +#define I10 PAL_LINE(GPIOI, 10) +#define I11 PAL_LINE(GPIOI, 11) +#define I12 PAL_LINE(GPIOI, 12) +#define I13 PAL_LINE(GPIOI, 13) +#define I14 PAL_LINE(GPIOI, 14) +#define I15 PAL_LINE(GPIOI, 15) +#define J0 PAL_LINE(GPIOJ, 0) +#define J1 PAL_LINE(GPIOJ, 1) +#define J2 PAL_LINE(GPIOJ, 2) +#define J3 PAL_LINE(GPIOJ, 3) +#define J4 PAL_LINE(GPIOJ, 4) +#define J5 PAL_LINE(GPIOJ, 5) +#define J6 PAL_LINE(GPIOJ, 6) +#define J7 PAL_LINE(GPIOJ, 7) +#define J8 PAL_LINE(GPIOJ, 8) +#define J9 PAL_LINE(GPIOJ, 9) +#define J10 PAL_LINE(GPIOJ, 10) +#define J11 PAL_LINE(GPIOJ, 11) +#define J12 PAL_LINE(GPIOJ, 12) +#define J13 PAL_LINE(GPIOJ, 13) +#define J14 PAL_LINE(GPIOJ, 14) +#define J15 PAL_LINE(GPIOJ, 15) // Keyboards can `#define KEYBOARD_REQUIRES_GPIOK` if they need to access GPIO-K pins. These conflict with a whole // bunch of layout definitions, so it's intentionally left out unless absolutely required -- in that case, the // keyboard designer should use a different symbol when defining their layout macros. -# ifdef KEYBOARD_REQUIRES_GPIOK -# define K0 PAL_LINE(GPIOK, 0) -# define K1 PAL_LINE(GPIOK, 1) -# define K2 PAL_LINE(GPIOK, 2) -# define K3 PAL_LINE(GPIOK, 3) -# define K4 PAL_LINE(GPIOK, 4) -# define K5 PAL_LINE(GPIOK, 5) -# define K6 PAL_LINE(GPIOK, 6) -# define K7 PAL_LINE(GPIOK, 7) -# define K8 PAL_LINE(GPIOK, 8) -# define K9 PAL_LINE(GPIOK, 9) -# define K10 PAL_LINE(GPIOK, 10) -# define K11 PAL_LINE(GPIOK, 11) -# define K12 PAL_LINE(GPIOK, 12) -# define K13 PAL_LINE(GPIOK, 13) -# define K14 PAL_LINE(GPIOK, 14) -# define K15 PAL_LINE(GPIOK, 15) -# endif +#ifdef KEYBOARD_REQUIRES_GPIOK +# define K0 PAL_LINE(GPIOK, 0) +# define K1 PAL_LINE(GPIOK, 1) +# define K2 PAL_LINE(GPIOK, 2) +# define K3 PAL_LINE(GPIOK, 3) +# define K4 PAL_LINE(GPIOK, 4) +# define K5 PAL_LINE(GPIOK, 5) +# define K6 PAL_LINE(GPIOK, 6) +# define K7 PAL_LINE(GPIOK, 7) +# define K8 PAL_LINE(GPIOK, 8) +# define K9 PAL_LINE(GPIOK, 9) +# define K10 PAL_LINE(GPIOK, 10) +# define K11 PAL_LINE(GPIOK, 11) +# define K12 PAL_LINE(GPIOK, 12) +# define K13 PAL_LINE(GPIOK, 13) +# define K14 PAL_LINE(GPIOK, 14) +# define K15 PAL_LINE(GPIOK, 15) #endif diff --git a/platforms/chibios/converters/promicro_to_proton_c/_pin_defs.h b/platforms/chibios/converters/promicro_to_proton_c/_pin_defs.h new file mode 100644 index 0000000000..ad1a81692e --- /dev/null +++ b/platforms/chibios/converters/promicro_to_proton_c/_pin_defs.h @@ -0,0 +1,41 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// Left side (front) +#define D3 PAL_LINE(GPIOA, 9) +#define D2 PAL_LINE(GPIOA, 10) +// GND +// GND +#define D1 PAL_LINE(GPIOB, 7) +#define D0 PAL_LINE(GPIOB, 6) +#define D4 PAL_LINE(GPIOB, 5) +#define C6 PAL_LINE(GPIOB, 4) +#define D7 PAL_LINE(GPIOB, 3) +#define E6 PAL_LINE(GPIOB, 2) +#define B4 PAL_LINE(GPIOB, 1) +#define B5 PAL_LINE(GPIOB, 0) + +// Right side (front) +// RAW +// GND +// RESET +// VCC +#define F4 PAL_LINE(GPIOA, 2) +#define F5 PAL_LINE(GPIOA, 1) +#define F6 PAL_LINE(GPIOA, 0) +#define F7 PAL_LINE(GPIOB, 8) +#define B1 PAL_LINE(GPIOB, 13) +#define B3 PAL_LINE(GPIOB, 14) +#define B2 PAL_LINE(GPIOB, 15) +#define B6 PAL_LINE(GPIOB, 9) + +// LEDs (only D5/C13 uses an actual LED) +#ifdef CONVERT_TO_PROTON_C_RXLED +# define D5 PAL_LINE(GPIOC, 14) +# define B0 PAL_LINE(GPIOC, 13) +#else +# define D5 PAL_LINE(GPIOC, 13) +# define B0 PAL_LINE(GPIOC, 14) +#endif diff --git a/platforms/chibios/boards/QMK_PROTON_C/convert_to_proton_c.mk b/platforms/chibios/converters/promicro_to_proton_c/converter.mk similarity index 78% rename from platforms/chibios/boards/QMK_PROTON_C/convert_to_proton_c.mk rename to platforms/chibios/converters/promicro_to_proton_c/converter.mk index 0618154678..406adae32c 100644 --- a/platforms/chibios/boards/QMK_PROTON_C/convert_to_proton_c.mk +++ b/platforms/chibios/converters/promicro_to_proton_c/converter.mk @@ -1,9 +1,7 @@ # Proton C MCU settings for converting AVR projects -TARGET := $(TARGET)_proton_c MCU := STM32F303 BOARD := QMK_PROTON_C BOOTLOADER := stm32-dfu -OPT_DEFS += -DCONVERT_TO_PROTON_C # These are defaults based on what has been implemented for ARM boards AUDIO_ENABLE ?= yes From c0ac3f73724154c02cc5072f7651294d4e9a2366 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 3 Apr 2022 18:45:10 +0100 Subject: [PATCH 192/699] Add frameworking for development board presets (#16637) * Add frameworking for development board presets * Update lib/python/qmk/info.py Co-authored-by: Nick Brassel Co-authored-by: Nick Brassel --- data/mappings/defaults.json | 17 +++++++++++++++++ data/schemas/keyboard.jsonschema | 4 ++++ lib/python/qmk/info.py | 13 +++++++++++++ 3 files changed, 34 insertions(+) create mode 100644 data/mappings/defaults.json diff --git a/data/mappings/defaults.json b/data/mappings/defaults.json new file mode 100644 index 0000000000..d3643fede8 --- /dev/null +++ b/data/mappings/defaults.json @@ -0,0 +1,17 @@ +{ + "development_board": { + "promicro": { + "processor": "atmega32u4", + "bootloader": "caterina" + }, + "elite_c": { + "processor": "atmega32u4", + "bootloader": "atmel-dfu" + }, + "proton_c": { + "processor": "STM32F303", + "bootloader": "stm32-dfu", + "board": "QMK_PROTON_C" + } + } +} \ No newline at end of file diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index adb63fd13e..f4c24c41cd 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -12,6 +12,10 @@ "type": "string", "format": "uri" }, + "development_board": { + "type": "string", + "enum": ["promicro", "elite_c", "proton_c"] + }, "processor": { "type": "string", "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK66FX1M0", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"] diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 1d81b3e94b..c5a7d33848 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -69,6 +69,7 @@ def info_json(keyboard): # Merge in the data from info.json, config.h, and rules.mk info_data = merge_info_jsons(keyboard, info_data) + info_data = _process_defaults(info_data) info_data = _extract_rules_mk(info_data, rules_mk(str(keyboard))) info_data = _extract_config_h(info_data, config_h(str(keyboard))) @@ -473,6 +474,18 @@ def _extract_config_h(info_data, config_c): return info_data +def _process_defaults(info_data): + """Process any additional defaults based on currently discovered information + """ + defaults_map = json_load(Path('data/mappings/defaults.json')) + for default_type in defaults_map.keys(): + thing_map = defaults_map[default_type] + if default_type in info_data: + for key, value in thing_map.get(info_data[default_type], {}).items(): + info_data[key] = value + return info_data + + def _extract_rules_mk(info_data, rules): """Pull some keyboard information from existing rules.mk files """ From 0c8109a1acd1cf390c9088256e2b269d6a10d39c Mon Sep 17 00:00:00 2001 From: Gompa Date: Sun, 3 Apr 2022 20:02:28 +0200 Subject: [PATCH 193/699] fix typo in ps2 set_defaults (#16767) --- drivers/ps2/ps2_mouse.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/ps2/ps2_mouse.h b/drivers/ps2/ps2_mouse.h index c97c6c893a..885eeecbd2 100644 --- a/drivers/ps2/ps2_mouse.h +++ b/drivers/ps2/ps2_mouse.h @@ -120,7 +120,7 @@ __attribute__((unused)) static enum ps2_mouse_mode_e { enum ps2_mouse_command_e { PS2_MOUSE_RESET = 0xFF, PS2_MOUSE_RESEND = 0xFE, - PS2_MOSUE_SET_DEFAULTS = 0xF6, + PS2_MOUSE_SET_DEFAULTS = 0xF6, PS2_MOUSE_DISABLE_DATA_REPORTING = 0xF5, PS2_MOUSE_ENABLE_DATA_REPORTING = 0xF4, PS2_MOUSE_SET_SAMPLE_RATE = 0xF3, From ec4f6553338919771038114c9d6e15c0be3778ec Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Mon, 4 Apr 2022 04:17:38 +1000 Subject: [PATCH 194/699] Add warning for CTCP/CONVERT_TO_PROTON_C. (#16782) --- builddefs/converters.mk | 11 +++++++++++ 1 file changed, 11 insertions(+) diff --git a/builddefs/converters.mk b/builddefs/converters.mk index 1b029e7225..b3e7bec007 100644 --- a/builddefs/converters.mk +++ b/builddefs/converters.mk @@ -1,8 +1,19 @@ +# Note for new boards -- CTPC and CONVERT_TO_PROTON_C are deprecated terms +# and should not be replicated for new boards. These will be removed from +# documentation as well as existing keymaps in due course. ifeq ($(strip $(CTPC)), yes) CONVERT_TO_PROTON_C=yes endif ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes) CONVERT_TO=proton_c + +cpfirmware: ctpc_warning +.INTERMEDIATE: ctpc_warning +ctpc_warning: elf + $(info @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@) + $(info The `CONVERT_TO_PROTON_C` and `CTPC` options are soon to be deprecated.) + $(info Boards should be changed to use `CONVERT_TO=proton_c` instead.) + $(info @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@) endif # TODO: opt in rather than assume everything uses a pro micro From 6822101f9cbdc907d30190753fe336570bab40ba Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 3 Apr 2022 22:01:16 +0100 Subject: [PATCH 195/699] Run auto approve only on qmk/qmk_firmware (#16786) --- .github/workflows/auto_approve.yml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.github/workflows/auto_approve.yml b/.github/workflows/auto_approve.yml index 6b986ffccc..dea3f017dd 100644 --- a/.github/workflows/auto_approve.yml +++ b/.github/workflows/auto_approve.yml @@ -8,6 +8,8 @@ jobs: automatic_approve: runs-on: ubuntu-latest + if: github.repository == 'qmk/qmk_firmware' + steps: - uses: mheap/automatic-approve-action@v1 with: From d59d60ff69cae8e60ed08c5bc31ee3cd7e0a5d1d Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 4 Apr 2022 11:56:20 -0700 Subject: [PATCH 196/699] Hineybush H65 Layout Additions and Configurator Update (#16779) * info.json: apply friendly formatting * h65.h: use QMK 3-character notation * h65.h: add matrix diagram * add LAYOUT_65_ansi_blocker * add LAYOUT_65_ansi_blocker_split_bs * add LAYOUT_65_ansi_blocker_tsangan * add LAYOUT_65_ansi_blocker_tsangan_split_bs * add LAYOUT_65_iso_blocker * add LAYOUT_65_iso_blocker_split_bs * add LAYOUT_65_iso_blocker_tsangan * add LAYOUT_65_iso_blocker_tsangan_split_bs * grid align keycodes in keymaps * rules.mk: align inline comments --- keyboards/hineybush/h65/h65.h | 163 ++++- keyboards/hineybush/h65/info.json | 683 +++++++++++++++++- .../hineybush/h65/keymaps/default/keymap.c | 20 +- keyboards/hineybush/h65/keymaps/via/keymap.c | 44 +- keyboards/hineybush/h65/rules.mk | 8 +- 5 files changed, 864 insertions(+), 54 deletions(-) diff --git a/keyboards/hineybush/h65/h65.h b/keyboards/hineybush/h65/h65.h index 8e82f1620f..986c071a45 100644 --- a/keyboards/hineybush/h65/h65.h +++ b/keyboards/hineybush/h65/h65.h @@ -18,24 +18,153 @@ #include "quantum.h" -/* This is a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │1E │ │0E │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │2E │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter + * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │3E │ │2C │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ + * │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │4E │ + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴┬──┴─┬─┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │43 │46 │48 │49 │4A │ │4B │4C │4D │ 2.75u/1.25u/2.25u Split Space + * └────┴────┴────┴──────────┴────┴────────┴────┴────┘ └───┴───┴───┘ + * ┌────┬────┬────┬────────┬────┬──────────┬────┬────┐ + * │40 │41 │42 │43 │46 │48 │49 │4A │ 2.25u/1.25u/2.75u Split Space + * └────┴────┴────┴────────┴────┴──────────┴────┴────┘ + * ┌────┬────┬────┬────────────────────────┬────┬────┐ + * │40 │41 │42 │46 │49 │4A │ Standard + * └────┴────┴────┴────────────────────────┴────┴────┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │40 │41 │42 │46 │4A │ Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ */ + #define LAYOUT_all( \ - k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k114, \ - k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k214, \ - k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k314, \ - k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k414, \ - k400, k401, k402, k403, k406, k408, k409, k410, k411, k412, k413 \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k43, k46, k48, k49, k4A, k4B, k4C, k4D \ ) { \ - { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ - { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114 }, \ - { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214 }, \ - { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k314 }, \ - { k400, k401, k402, k403, KC_NO,KC_NO,k406,KC_NO, k408, k409, k410, k411, k412, k413, k414 } \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, k43, ___, ___, k46, ___, k48, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker_tsangan( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker_tsangan_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, ___, k4A, k4B, k4C, k4D, k4E } \ } diff --git a/keyboards/hineybush/h65/info.json b/keyboards/hineybush/h65/info.json index 770875afae..dcca3f4868 100644 --- a/keyboards/hineybush/h65/info.json +++ b/keyboards/hineybush/h65/info.json @@ -4,7 +4,688 @@ "maintainer": "hineybush", "layouts": { "LAYOUT_all": { - "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":12.75, "y":2}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.75}, {"x":6.5, "y":4, "w":1.25}, {"x":7.75, "y":4, "w":2.25}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}] + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25}, + {"label":"End", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":2.75}, + {"label":"Space", "x":6.5, "y":4, "w":1.25}, + {"label":"Space", "x":7.75, "y":4, "w":2.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2193", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] } } } diff --git a/keyboards/hineybush/h65/keymaps/default/keymap.c b/keyboards/hineybush/h65/keymaps/default/keymap.c index f17f822f69..fba330a0cb 100644 --- a/keyboards/hineybush/h65/keymaps/default/keymap.c +++ b/keyboards/hineybush/h65/keymaps/default/keymap.c @@ -24,18 +24,18 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT_all( - 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, - 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_NUHS, KC_ENT, KC_END, - KC_LSFT, KC_NUBS, 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(_FN), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT + 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, + 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_NUHS, KC_ENT, KC_END, + KC_LSFT, KC_NUBS, 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, - 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_PGDN, - 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + 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_PGDN, + 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/hineybush/h65/keymaps/via/keymap.c b/keyboards/hineybush/h65/keymaps/via/keymap.c index 4369579675..c0abf9864a 100644 --- a/keyboards/hineybush/h65/keymaps/via/keymap.c +++ b/keyboards/hineybush/h65/keymaps/via/keymap.c @@ -26,36 +26,34 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT_all( - 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, - 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_NUHS, KC_ENT, KC_END, - KC_LSFT, KC_NUBS, 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(_FN1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT + 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, + 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_NUHS, KC_ENT, KC_END, + KC_LSFT, KC_NUBS, 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(_FN1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN1] = LAYOUT_all( - KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, - 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_PGDN, - 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + 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_PGDN, + 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [_FN2] = LAYOUT_all( - 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, 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, 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, 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, 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 ), - + [_FN3] = LAYOUT_all( - 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, 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, 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, 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, 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 ) }; - - diff --git a/keyboards/hineybush/h65/rules.mk b/keyboards/hineybush/h65/rules.mk index 702fe717f2..904686fd9c 100644 --- a/keyboards/hineybush/h65/rules.mk +++ b/keyboards/hineybush/h65/rules.mk @@ -7,12 +7,14 @@ BOOTLOADER = atmel-dfu # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_ansi_blocker_tsangan 65_iso_blocker 65_iso_blocker_split_bs From 6a156cb5cc3bebbca489688a650abf917d04f6f7 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 4 Apr 2022 12:20:10 -0700 Subject: [PATCH 197/699] Hineybush H65 Hotswap Layout Additions and Configurator Update (#16780) * info.json: apply friendly formatting * h65_hotswap.h: use QMK 3-character notation * h65_hotswap.h: add matrix diagram * rename LAYOUT to LAYOUT_all * add LAYOUT_65_ansi_blocker * add LAYOUT_65_ansi_blocker_split_bs * add LAYOUT_65_iso_blocker * add LAYOUT_65_iso_blocker_split_bs * grid align keycodes in keymaps * rules.mk: align inline comments --- keyboards/hineybush/h65_hotswap/h65_hotswap.h | 103 ++++- keyboards/hineybush/h65_hotswap/info.json | 388 +++++++++++++++++- .../h65_hotswap/keymaps/default/keymap.c | 24 +- .../h65_hotswap/keymaps/via/keymap.c | 50 ++- keyboards/hineybush/h65_hotswap/rules.mk | 8 +- 5 files changed, 512 insertions(+), 61 deletions(-) diff --git a/keyboards/hineybush/h65_hotswap/h65_hotswap.h b/keyboards/hineybush/h65_hotswap/h65_hotswap.h index a4b41be481..d2149e5215 100644 --- a/keyboards/hineybush/h65_hotswap/h65_hotswap.h +++ b/keyboards/hineybush/h65_hotswap/h65_hotswap.h @@ -18,24 +18,91 @@ #include "quantum.h" -/* This is a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │1E │ │0E │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │2E │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │3E │ │2C │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │4E │ + * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │44 │46 │47 │49 │4A │ │4B │4C │4D │ + * └────┴────┴────┴────────┴────┴──────────┴────┴────┘ └───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬────┬────┐ + * │40 │41 │42 │46 │49 │4A │ Standard + * └────┴────┴────┴────────────────────────┴────┴────┘ */ -#define LAYOUT( \ - k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k114, \ - k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k214, \ - k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k314, \ - k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k414, \ - k400, k401, k402, k404, k406, k407, k409, k410, k411, k412, k413 \ + +#define LAYOUT_all( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k44, k46, k47, k49, k4A, k4B, k4C, k4D \ ) { \ - { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ - { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114 }, \ - { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k213, k214 }, \ - { k300, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k313, k314 }, \ - { k400, k401, k402, KC_NO,k404 ,KC_NO,k406, k407, KC_NO, k409, k410, k411, k412, k413, k414 } \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, k44, ___, k46, k47, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_ansi_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2D, k3E, \ + k30, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, ___, k2D, k2E }, \ + { k30, ___, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, ___, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k1E, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k2E, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k3E, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k4E, \ + k40, k41, k42, k46, k49, k4A, k4B, k4C, k4D \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, ___, k1E }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E }, \ + { k40, k41, k42, ___, ___, ___, k46, ___, ___, k49, k4A, k4B, k4C, k4D, k4E } \ } diff --git a/keyboards/hineybush/h65_hotswap/info.json b/keyboards/hineybush/h65_hotswap/info.json index 105358b98d..46b5192d68 100644 --- a/keyboards/hineybush/h65_hotswap/info.json +++ b/keyboards/hineybush/h65_hotswap/info.json @@ -2,9 +2,393 @@ "keyboard_name": "h65 hotswap", "url": "", "maintainer": "hineybush", + "layout_aliases": { + "LAYOUT": "LAYOUT_all" + }, "layouts": { - "LAYOUT": { - "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":12.75, "y":2}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":2.75}, {"x":6.5, "y":4, "w":1.25}, {"x":7.75, "y":4, "w":2.25}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}] + "LAYOUT_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25}, + {"label":"End", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":2.75}, + {"label":"Space", "x":6.5, "y":4, "w":1.25}, + {"label":"Space", "x":7.75, "y":4, "w":2.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"End", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"End", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"End", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1", "x":1, "y":0}, + {"label":"2", "x":2, "y":0}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0}, + {"label":"5", "x":5, "y":0}, + {"label":"6", "x":6, "y":0}, + {"label":"7", "x":7, "y":0}, + {"label":"8", "x":8, "y":0}, + {"label":"9", "x":9, "y":0}, + {"label":"0", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"Home", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"End", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"GUI", "x":10, "y":4, "w":1.25}, + {"label":"Alt", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] } } } diff --git a/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c b/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c index f8af1d5d15..fba330a0cb 100644 --- a/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c +++ b/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c @@ -23,19 +23,19 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ - [_BASE] = 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, - 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_NUHS, KC_ENT, KC_END, - KC_LSFT, KC_NUBS, 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(_FN), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT + [_BASE] = LAYOUT_all( + 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, + 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_NUHS, KC_ENT, KC_END, + KC_LSFT, KC_NUBS, 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), - [_FN] = LAYOUT( - KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, - 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_PGDN, - 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + [_FN] = LAYOUT_all( + KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + 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_PGDN, + 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c b/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c index bdd6458902..c0abf9864a 100644 --- a/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c +++ b/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c @@ -25,37 +25,35 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ - [_BASE] = 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, - 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_NUHS, KC_ENT, KC_END, - KC_LSFT, KC_NUBS, 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(_FN1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT + [_BASE] = LAYOUT_all( + 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_BSPC, KC_BSPC, 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_BSLS, KC_HOME, + 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_NUHS, KC_ENT, KC_END, + KC_LSFT, KC_NUBS, 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(_FN1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), - [_FN1] = LAYOUT( - KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, - 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_PGDN, - 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + [_FN1] = LAYOUT_all( + KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + 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_PGDN, + 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [_FN2] = LAYOUT( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + [_FN2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [_FN3] = LAYOUT( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + [_FN3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; - - diff --git a/keyboards/hineybush/h65_hotswap/rules.mk b/keyboards/hineybush/h65_hotswap/rules.mk index 702fe717f2..f4afd28025 100644 --- a/keyboards/hineybush/h65_hotswap/rules.mk +++ b/keyboards/hineybush/h65_hotswap/rules.mk @@ -7,12 +7,14 @@ BOOTLOADER = atmel-dfu # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_iso_blocker 65_iso_blocker_split_bs From 8b438a9165ace0492d6e249f8064f07531ac6d15 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 4 Apr 2022 12:27:01 -0700 Subject: [PATCH 198/699] Wavtype Foundation Layout Macro Refactor and Configurator Update (#16781) * info.json: apply friendly formatting * info.json: update layout data - update labels to make them QMK CLI friendly - update key sizes and dimensions (removes key overlaps and mis-locations) * foundation.h: edit white space - convert tabs to spaces - edit alignment of arrays * foundation.h: add matrix diagram * rename LAYOUT to LAYOUT_ansi_split_bs * rename LAYOUT_tkl_ansi_7u to LAYOUT_ansi_tsangan_split_bs * rename LAYOUT_tkl_iso to LAYOUT_iso_split_bs_rshift * rename LAYOUT_tkl_iso_7u to LAYOUT_iso_tsangan_split_bs_rshift * refactor keymaps - use definitions from `layer_names` enum - use grid alignment - use QMK-native keycode aliases * add reference keymaps Add `default_ansi_tsangan_split_bs`, `default_iso_split_bs_rshift`, and `default_iso_tsangan_split_bs_rshift` keymaps. * refactor ISO layouts Edits the ISO layout macros so that the keycode for Enter is to the end of the home row. * info.json: fix LAYOUT_iso_tsangan_split_bs_rshift reference Thanks to zvecr. --- keyboards/wavtype/foundation/foundation.h | 93 +++-- keyboards/wavtype/foundation/info.json | 358 +++++++++++++++++- .../foundation/keymaps/default/keymap.c | 24 +- .../default_ansi_tsangan_split_bs/keymap.c | 28 ++ .../default_iso_split_bs_rshift/keymap.c | 28 ++ .../keymap.c | 28 ++ .../wavtype/foundation/keymaps/via/keymap.c | 48 +-- 7 files changed, 518 insertions(+), 89 deletions(-) create mode 100644 keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c create mode 100644 keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c create mode 100644 keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c diff --git a/keyboards/wavtype/foundation/foundation.h b/keyboards/wavtype/foundation/foundation.h index a01800f143..aad9f50d5b 100644 --- a/keyboards/wavtype/foundation/foundation.h +++ b/keyboards/wavtype/foundation/foundation.h @@ -7,70 +7,79 @@ #include "quantum.h" -/* This is a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. +/* + * ┌───┐ ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┐ ┌───────┐ + * │00 │ │01 │02 │03 │04 │05 │06 │07 │08 │09 │0a │0b │0c │0d │0e │2e │ │0f │0g │0h │ │0e │ 2u Backspace + * ├───┤ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┤ └─┬─────┤ + * │10 │ │11 │12 │13 │14 │15 │16 │17 │18 │19 │1a │1b │1c │1d │1e │ │1f │1g │1h │ │ │ + * 2.25u ├───┤ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ ┌──┴┐1e │ ISO Enter + * LShift │20 │ │21 │22 │23 │24 │25 │26 │27 │28 │29 │2a │2b │2c │2d │ │2d │ │ + * ┌────────┐ ├───┤ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ ┌─┴───┴────┤ + * │31 │ │30 │ │31 │32 │33 │34 │35 │36 │37 │38 │39 │3a │3b │3c │3d │3e │ │3g │ │3d │ 2.75u RShift + * └────────┘ ├───┤ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ ┌───┼───┼───┐ └──────────┘ + * │40 │ │41 │42 │43 │47 │4b │4c │4d │4e │ │4f │4g │4h │ + * └───┘ └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐ + * │41 │42 │43 │47 │4c │4d │4e │ Tsangan/WKL + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ */ -#define LAYOUT( \ + +#define LAYOUT_ansi_split_bs( \ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k2e, k0f, k0g, k0h, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ - k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3g, \ - k40, k41, k42, k43, k47, k4b, k4c, k4d, k4e, k4f, k4g, k4h \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3g, \ + k40, k41, k42, k43, k47, k4b, k4c, k4d, k4e, k4f, k4g, k4h \ ) \ { \ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, k0h }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h}, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_}, \ - { k30, k31, _x_, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, _x_, _x_, k3g, _x_}, \ - { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, k4b, k4c, k4d, k4e, k4f, k4g, k4h} \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_ }, \ + { k30, k31, _x_, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, _x_, _x_, k3g, _x_ }, \ + { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, k4b, k4c, k4d, k4e, k4f, k4g, k4h } \ } -#define LAYOUT_tkl_ansi_7u( \ +#define LAYOUT_ansi_tsangan_split_bs( \ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k2e, k0f, k0g, k0h, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ - k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3g, \ - k40, k41, k42, k43, k47, k4c, k4d, k4e, k4f, k4g, k4h \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3g, \ + k40, k41, k42, k43, k47, k4c, k4d, k4e, k4f, k4g, k4h \ ) \ { \ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, k0h }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h}, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_}, \ - { k30, k31, _x_, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, _x_, _x_, k3g, _x_}, \ - { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, _x_, k4c, k4d, k4e, k4f, k4g, k4h} \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_ }, \ + { k30, k31, _x_, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, _x_, _x_, k3g, _x_ }, \ + { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, _x_, k4c, k4d, k4e, k4f, k4g, k4h } \ } -#define LAYOUT_tkl_iso( \ +#define LAYOUT_iso_split_bs_rshift( \ k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k2e, k0f, k0g, k0h, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, k3g, \ - k40, k41, k42, k43, k47, k4b, k4c, k4d, k4e, k4f, k4g, k4h \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1f, k1g, k1h, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k1e, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, k3g, \ + k40, k41, k42, k43, k47, k4b, k4c, k4d, k4e, k4f, k4g, k4h \ ) \ { \ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, k0h }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h}, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_}, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, _x_, k3g, _x_}, \ - { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, k4b, k4c, k4d, k4e, k4f, k4g, k4h} \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_ }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, _x_, k3g, _x_ }, \ + { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, k4b, k4c, k4d, k4e, k4f, k4g, k4h } \ } -#define LAYOUT_tkl_iso_7u( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k2e, k0f, k0g, k0h, \ - k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, k3g, \ - k40, k41, k42, k43, k47, k4c, k4d, k4e, k4f, k4g, k4h \ +#define LAYOUT_iso_tsangan_split_bs_rshift( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k2e, k0f, k0g, k0h, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1f, k1g, k1h, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k1e, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, k3g, \ + k40, k41, k42, k43, k47, k4c, k4d, k4e, k4f, k4g, k4h \ ) \ { \ { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, k0c, k0d, k0e, k0f, k0g, k0h }, \ - { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h}, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_}, \ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, _x_, k3g, _x_}, \ - { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, _x_, k4c, k4d, k4e, k4f, k4g, k4h} \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, k1d, k1e, k1f, k1g, k1h }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, k2c, k2d, k2e, _x_, _x_, _x_ }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, k3d, k3e, _x_, k3g, _x_ }, \ + { k40, k41, k42, k43, _x_, _x_, _x_, k47, _x_, _x_, _x_, _x_, k4c, k4d, k4e, k4f, k4g, k4h } \ } diff --git a/keyboards/wavtype/foundation/info.json b/keyboards/wavtype/foundation/info.json index 317c5f5d14..23ae9a89c0 100644 --- a/keyboards/wavtype/foundation/info.json +++ b/keyboards/wavtype/foundation/info.json @@ -2,18 +2,354 @@ "keyboard_name": "foundation", "url": "", "maintainer": "wavtype", + "layout_aliases": { + "LAYOUT": "LAYOUT_ansi_split_bs", + "LAYOUT_tkl_ansi_7u": "LAYOUT_ansi_tsangan_split_bs", + "LAYOUT_tkl_iso": "LAYOUT_iso_split_bs_rshift", + "LAYOUT_tkl_iso_7u": "LAYOUT_iso_tsangan_split_bs_rshift" + }, "layouts": { - "LAYOUT": { - "layout": [{"label":"F1", "x":0, "y":0}, {"label":"esc", "x":1.5, "y":0}, {"label":"1", "x":2.5, "y":0}, {"label":"2", "x":3.5, "y":0}, {"label":"3", "x":4.5, "y":0}, {"label":"4", "x":5.5, "y":0}, {"label":"5", "x":6.5, "y":0}, {"label":"6", "x":7.5, "y":0}, {"label":"7", "x":8.5, "y":0}, {"label":"8", "x":9.5, "y":0}, {"label":"9", "x":10.5, "y":0}, {"label":"0", "x":11.5, "y":0}, {"label":"-", "x":12.5, "y":0}, {"label":"=", "x":13.5, "y":0}, {"label":"BckSpc", "x":14.5, "y":0, "w":2}, {"label":"split", "x":15.5, "y":0}, {"label":"ins", "x":17, "y":0}, {"label":"home", "x":18, "y":0}, {"label":"pg up", "x":19, "y":0}, {"label":"F2", "x":0, "y":1}, {"label":"tab", "x":1.5, "y":1, "w":1.5}, {"label":"q", "x":3, "y":1}, {"label":"w", "x":4, "y":1}, {"label":"e", "x":5, "y":1}, {"label":"r", "x":6, "y":1}, {"label":"t", "x":7, "y":1}, {"label":"y", "x":8, "y":1}, {"label":"u", "x":9, "y":1}, {"label":"i", "x":10, "y":1}, {"label":"o", "x":11, "y":1}, {"label":"p", "x":12, "y":1}, {"label":"[", "x":13, "y":1}, {"label":"]", "x":14, "y":1}, {"label":"\\", "x":15, "y":1, "w":1.5}, {"label":"del", "x":17, "y":1}, {"label":"end", "x":18, "y":1}, {"label":"pg dn", "x":19, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"caps", "x":1.5, "y":2, "w":1.25}, {"label":"a", "x":3.25, "y":2}, {"label":"s", "x":4.25, "y":2}, {"label":"d", "x":5.25, "y":2}, {"label":"f", "x":6.25, "y":2}, {"label":"g", "x":7.25, "y":2}, {"label":"h", "x":8.25, "y":2}, {"label":"j", "x":9.25, "y":2}, {"label":"k", "x":10.25, "y":2}, {"label":"l", "x":11.25, "y":2}, {"label":";", "x":12.25, "y":2}, {"label":"'", "x":13.25, "y":2}, {"label":"enter", "x":14.25, "y":2, "w":2.25}, {"label":"F4", "x":0, "y":3}, {"label":"lshft", "x":1.5, "y":3, "w":2.25}, {"label":"z", "x":3.75, "y":3}, {"label":"x", "x":4.75, "y":3}, {"label":"c", "x":5.75, "y":3}, {"label":"v", "x":6.75, "y":3}, {"label":"b", "x":7.75, "y":3}, {"label":"n", "x":8.75, "y":3}, {"label":"m", "x":9.75, "y":3}, {"label":",", "x":10.75, "y":3}, {"label":".", "x":11.75, "y":3}, {"label":"/", "x":12.75, "y":3}, {"label":"rshft", "x":13.75, "y":3, "w":2.75}, {"label":"up", "x":18, "y":3}, {"label":"F5", "x":0, "y":4}, {"label":"lctrl", "x":1.5, "y":4, "w":1.25}, {"label":"lwin", "x":2.75, "y":4, "w":1.25}, {"label":"lalt", "x":4, "y":4, "w":1.25}, {"label":"spce", "x":5.25, "y":4, "w":6.25}, {"label":"ralt", "x":11.5, "y":4, "w":1.25}, {"label":"fn", "x":12.75, "y":4, "w":1.25}, {"label":"rwin", "x":14, "y":4}, {"label":"rctrl", "x":15, "y":4, "w":1.5}, {"label":"left", "x":17, "y":4}, {"label":"down", "x":18, "y":4}, {"label":"right", "x":19, "y":4}] + "LAYOUT_ansi_split_bs": { + "layout": [ + {"label":"F1", "x":0, "y":0}, + {"label":"Esc", "x":1.5, "y":0}, + {"label":"1!", "x":2.5, "y":0}, + {"label":"2@", "x":3.5, "y":0}, + {"label":"3#", "x":4.5, "y":0}, + {"label":"4$", "x":5.5, "y":0}, + {"label":"5%", "x":6.5, "y":0}, + {"label":"6^", "x":7.5, "y":0}, + {"label":"7&", "x":8.5, "y":0}, + {"label":"8*", "x":9.5, "y":0}, + {"label":"9(", "x":10.5, "y":0}, + {"label":"0)", "x":11.5, "y":0}, + {"label":"-_", "x":12.5, "y":0}, + {"label":"=+", "x":13.5, "y":0}, + {"label":"Backspace", "x":14.5, "y":0}, + {"label":"Split Backspace", "x":15.5, "y":0}, + {"label":"Insert", "x":17, "y":0}, + {"label":"Home", "x":18, "y":0}, + {"label":"Page Up", "x":19, "y":0}, + + {"label":"F2", "x":0, "y":1}, + {"label":"Tab", "x":1.5, "y":1, "w":1.5}, + {"label":"Q", "x":3, "y":1}, + {"label":"W", "x":4, "y":1}, + {"label":"E", "x":5, "y":1}, + {"label":"R", "x":6, "y":1}, + {"label":"T", "x":7, "y":1}, + {"label":"Y", "x":8, "y":1}, + {"label":"U", "x":9, "y":1}, + {"label":"I", "x":10, "y":1}, + {"label":"O", "x":11, "y":1}, + {"label":"P", "x":12, "y":1}, + {"label":"[{", "x":13, "y":1}, + {"label":"]}", "x":14, "y":1}, + {"label":"\\|", "x":15, "y":1, "w":1.5}, + {"label":"Delete", "x":17, "y":1}, + {"label":"End", "x":18, "y":1}, + {"label":"Page Down", "x":19, "y":1}, + + {"label":"F3", "x":0, "y":2}, + {"label":"Caps Lock", "x":1.5, "y":2, "w":1.25}, + {"label":"A", "x":3.25, "y":2}, + {"label":"S", "x":4.25, "y":2}, + {"label":"D", "x":5.25, "y":2}, + {"label":"F", "x":6.25, "y":2}, + {"label":"G", "x":7.25, "y":2}, + {"label":"H", "x":8.25, "y":2}, + {"label":"J", "x":9.25, "y":2}, + {"label":"K", "x":10.25, "y":2}, + {"label":"L", "x":11.25, "y":2}, + {"label":";:", "x":12.25, "y":2}, + {"label":"'\"", "x":13.25, "y":2}, + {"label":"Enter", "x":14.25, "y":2, "w":2.25}, + + {"label":"F4", "x":0, "y":3}, + {"label":"Shift", "x":1.5, "y":3, "w":2.25}, + {"label":"Z", "x":3.75, "y":3}, + {"label":"X", "x":4.75, "y":3}, + {"label":"C", "x":5.75, "y":3}, + {"label":"V", "x":6.75, "y":3}, + {"label":"B", "x":7.75, "y":3}, + {"label":"N", "x":8.75, "y":3}, + {"label":"M", "x":9.75, "y":3}, + {"label":",<", "x":10.75, "y":3}, + {"label":".>", "x":11.75, "y":3}, + {"label":"/?", "x":12.75, "y":3}, + {"label":"Shift", "x":13.75, "y":3, "w":2.75}, + {"label":"\u2191", "x":18, "y":3}, + + {"label":"F5", "x":0, "y":4}, + {"label":"Ctrl", "x":1.5, "y":4, "w":1.25}, + {"label":"Win", "x":2.75, "y":4, "w":1.25}, + {"label":"Alt", "x":4, "y":4, "w":1.25}, + {"label":"Space", "x":5.25, "y":4, "w":6.25}, + {"label":"Alt", "x":11.5, "y":4, "w":1.25}, + {"label":"Win", "x":12.75, "y":4, "w":1.25}, + {"label":"Fn", "x":14, "y":4, "w":1.25}, + {"label":"Ctrl", "x":15.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":17, "y":4}, + {"label":"\u2193", "x":18, "y":4}, + {"label":"\u2192", "x":19, "y":4} + ] }, - "LAYOUT_tkl_ansi_7u": { - "layout": [{"label":"F1", "x":0, "y":0}, {"label":"esc", "x":1.5, "y":0}, {"label":"1", "x":2.5, "y":0}, {"label":"2", "x":3.5, "y":0}, {"label":"3", "x":4.5, "y":0}, {"label":"4", "x":5.5, "y":0}, {"label":"5", "x":6.5, "y":0}, {"label":"6", "x":7.5, "y":0}, {"label":"7", "x":8.5, "y":0}, {"label":"8", "x":9.5, "y":0}, {"label":"9", "x":10.5, "y":0}, {"label":"0", "x":11.5, "y":0}, {"label":"-", "x":12.5, "y":0}, {"label":"=", "x":13.5, "y":0}, {"label":"BckSpc", "x":14.5, "y":0, "w":2}, {"label":"split", "x":15.5, "y":0}, {"label":"ins", "x":17, "y":0}, {"label":"home", "x":18, "y":0}, {"label":"pg up", "x":19, "y":0}, {"label":"F2", "x":0, "y":1}, {"label":"tab", "x":1.5, "y":1, "w":1.5}, {"label":"q", "x":3, "y":1}, {"label":"w", "x":4, "y":1}, {"label":"e", "x":5, "y":1}, {"label":"r", "x":6, "y":1}, {"label":"t", "x":7, "y":1}, {"label":"y", "x":8, "y":1}, {"label":"u", "x":9, "y":1}, {"label":"i", "x":10, "y":1}, {"label":"o", "x":11, "y":1}, {"label":"p", "x":12, "y":1}, {"label":"[", "x":13, "y":1}, {"label":"]", "x":14, "y":1}, {"label":"\\", "x":15, "y":1, "w":1.5}, {"label":"del", "x":17, "y":1}, {"label":"end", "x":18, "y":1}, {"label":"pg dn", "x":19, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"caps", "x":1.5, "y":2, "w":1.25}, {"label":"a", "x":3.25, "y":2}, {"label":"s", "x":4.25, "y":2}, {"label":"d", "x":5.25, "y":2}, {"label":"f", "x":6.25, "y":2}, {"label":"g", "x":7.25, "y":2}, {"label":"h", "x":8.25, "y":2}, {"label":"j", "x":9.25, "y":2}, {"label":"k", "x":10.25, "y":2}, {"label":"l", "x":11.25, "y":2}, {"label":";", "x":12.25, "y":2}, {"label":"'", "x":13.25, "y":2}, {"label":"enter", "x":14.25, "y":2, "w":2.25}, {"label":"F4", "x":0, "y":3}, {"label":"lshft", "x":1.5, "y":3, "w":2.25}, {"label":"z", "x":3.75, "y":3}, {"label":"x", "x":4.75, "y":3}, {"label":"c", "x":5.75, "y":3}, {"label":"v", "x":6.75, "y":3}, {"label":"b", "x":7.75, "y":3}, {"label":"n", "x":8.75, "y":3}, {"label":"m", "x":9.75, "y":3}, {"label":",", "x":10.75, "y":3}, {"label":".", "x":11.75, "y":3}, {"label":"/", "x":12.75, "y":3}, {"label":"rshft", "x":13.75, "y":3, "w":2.75}, {"label":"up", "x":18, "y":3}, {"label":"F5", "x":0, "y":4}, {"label":"lctrl", "x":1.5, "y":4, "w":1.5}, {"label":"lwin", "x":3, "y":4}, {"label":"lalt", "x":4, "y":4, "w":1.5}, {"label":"spce", "x":5.5, "y":4, "w":7}, {"label":"ralt", "x":12.5, "y":4, "w":1.5}, {"label":"fn", "x":14, "y":4, "w":1.25}, {"label":"rctrl", "x":15.25, "y":4, "w":1.25}, {"label":"left", "x":17, "y":4}, {"label":"down", "x":18, "y":4}, {"label":"right", "x":19, "y":4}] - }, - "LAYOUT_tkl_iso": { - "layout": [{"label":"F1", "x":0, "y":0}, {"label":"esc", "x":1.5, "y":0}, {"label":"1", "x":2.5, "y":0}, {"label":"2", "x":3.5, "y":0}, {"label":"3", "x":4.5, "y":0}, {"label":"4", "x":5.5, "y":0}, {"label":"5", "x":6.5, "y":0}, {"label":"6", "x":7.5, "y":0}, {"label":"7", "x":8.5, "y":0}, {"label":"8", "x":9.5, "y":0}, {"label":"9", "x":10.5, "y":0}, {"label":"0", "x":11.5, "y":0}, {"label":"-", "x":12.5, "y":0}, {"label":"=", "x":13.5, "y":0}, {"label":"BckSpc", "x":14.5, "y":0, "w":2}, {"label":"split", "x":15.5, "y":0}, {"label":"ins", "x":17, "y":0}, {"label":"home", "x":18, "y":0}, {"label":"pg up", "x":19, "y":0}, {"label":"F2", "x":0, "y":1}, {"label":"tab", "x":1.5, "y":1, "w":1.5}, {"label":"q", "x":3, "y":1}, {"label":"w", "x":4, "y":1}, {"label":"e", "x":5, "y":1}, {"label":"r", "x":6, "y":1}, {"label":"t", "x":7, "y":1}, {"label":"y", "x":8, "y":1}, {"label":"u", "x":9, "y":1}, {"label":"i", "x":10, "y":1}, {"label":"o", "x":11, "y":1}, {"label":"p", "x":12, "y":1}, {"label":"[", "x":13, "y":1}, {"label":"]", "x":14, "y":1}, {"label":"iso", "x":15.25, "y":1, "w":1.25, "h":2}, {"label":"del", "x":17, "y":1}, {"label":"end", "x":18, "y":1}, {"label":"pg dn", "x":19, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"caps", "x":1.5, "y":2, "w":1.25}, {"label":"a", "x":3.25, "y":2}, {"label":"s", "x":4.25, "y":2}, {"label":"d", "x":5.25, "y":2}, {"label":"f", "x":6.25, "y":2}, {"label":"g", "x":7.25, "y":2}, {"label":"h", "x":8.25, "y":2}, {"label":"j", "x":9.25, "y":2}, {"label":"k", "x":10.25, "y":2}, {"label":"l", "x":11.25, "y":2}, {"label":";", "x":12.25, "y":2}, {"label":"'", "x":13.25, "y":2}, {"label":"\\", "x":14.25, "y":2}, {"label":"F4", "x":0, "y":3}, {"label":"ls1", "x":1.5, "y":3, "w":1.25}, {"label":"ls2", "x":2.75, "y":3}, {"label":"z", "x":3.75, "y":3}, {"label":"x", "x":4.75, "y":3}, {"label":"c", "x":5.75, "y":3}, {"label":"v", "x":6.75, "y":3}, {"label":"b", "x":7.75, "y":3}, {"label":"n", "x":8.75, "y":3}, {"label":"m", "x":9.75, "y":3}, {"label":",", "x":10.75, "y":3}, {"label":".", "x":11.75, "y":3}, {"label":"/", "x":12.75, "y":3}, {"label":"rs1", "x":13.75, "y":3, "w":1.75}, {"label":"rs2", "x":15.5, "y":3}, {"label":"up", "x":18, "y":3}, {"label":"F5", "x":0, "y":4}, {"label":"lctrl", "x":1.5, "y":4, "w":1.25}, {"label":"lwin", "x":2.75, "y":4, "w":1.25}, {"label":"lalt", "x":4, "y":4, "w":1.25}, {"label":"spce", "x":5.25, "y":4, "w":6.25}, {"label":"ralt", "x":11.5, "y":4, "w":1.25}, {"label":"fn", "x":12.75, "y":4, "w":1.25}, {"label":"rwin", "x":14, "y":4}, {"label":"rctrl", "x":15, "y":4, "w":1.5}, {"label":"left", "x":17, "y":4}, {"label":"down", "x":18, "y":4}, {"label":"right", "x":19, "y":4}] - }, - "LAYOUT_tkl_iso_7u": { - "layout": [{"label":"F1", "x":0, "y":0}, {"label":"esc", "x":1.5, "y":0}, {"label":"1", "x":2.5, "y":0}, {"label":"2", "x":3.5, "y":0}, {"label":"3", "x":4.5, "y":0}, {"label":"4", "x":5.5, "y":0}, {"label":"5", "x":6.5, "y":0}, {"label":"6", "x":7.5, "y":0}, {"label":"7", "x":8.5, "y":0}, {"label":"8", "x":9.5, "y":0}, {"label":"9", "x":10.5, "y":0}, {"label":"0", "x":11.5, "y":0}, {"label":"-", "x":12.5, "y":0}, {"label":"=", "x":13.5, "y":0}, {"label":"BckSpc", "x":14.5, "y":0, "w":2}, {"label":"split", "x":15.5, "y":0}, {"label":"ins", "x":17, "y":0}, {"label":"home", "x":18, "y":0}, {"label":"pg up", "x":19, "y":0}, {"label":"F2", "x":0, "y":1}, {"label":"tab", "x":1.5, "y":1, "w":1.5}, {"label":"q", "x":3, "y":1}, {"label":"w", "x":4, "y":1}, {"label":"e", "x":5, "y":1}, {"label":"r", "x":6, "y":1}, {"label":"t", "x":7, "y":1}, {"label":"y", "x":8, "y":1}, {"label":"u", "x":9, "y":1}, {"label":"i", "x":10, "y":1}, {"label":"o", "x":11, "y":1}, {"label":"p", "x":12, "y":1}, {"label":"[", "x":13, "y":1}, {"label":"]", "x":14, "y":1}, {"label":"iso", "x":15.25, "y":1, "w":1.25, "h":2}, {"label":"del", "x":17, "y":1}, {"label":"end", "x":18, "y":1}, {"label":"pg dn", "x":19, "y":1}, {"label":"F3", "x":0, "y":2}, {"label":"caps", "x":1.5, "y":2, "w":1.25}, {"label":"a", "x":3.25, "y":2}, {"label":"s", "x":4.25, "y":2}, {"label":"d", "x":5.25, "y":2}, {"label":"f", "x":6.25, "y":2}, {"label":"g", "x":7.25, "y":2}, {"label":"h", "x":8.25, "y":2}, {"label":"j", "x":9.25, "y":2}, {"label":"k", "x":10.25, "y":2}, {"label":"l", "x":11.25, "y":2}, {"label":";", "x":12.25, "y":2}, {"label":"'", "x":13.25, "y":2}, {"label":"13,2", "x":14.25, "y":2}, {"label":"F4", "x":0, "y":3}, {"label":"ls1", "x":1.5, "y":3, "w":1.25}, {"label":"ls2", "x":2.75, "y":3}, {"label":"z", "x":3.75, "y":3}, {"label":"x", "x":4.75, "y":3}, {"label":"c", "x":5.75, "y":3}, {"label":"v", "x":6.75, "y":3}, {"label":"b", "x":7.75, "y":3}, {"label":"n", "x":8.75, "y":3}, {"label":"m", "x":9.75, "y":3}, {"label":",", "x":10.75, "y":3}, {"label":".", "x":11.75, "y":3}, {"label":"/", "x":12.75, "y":3}, {"label":"rs1", "x":13.75, "y":3, "w":1.75}, {"label":"rs2", "x":15.5, "y":3}, {"label":"up", "x":18, "y":3}, {"label":"F5", "x":0, "y":4}, {"label":"lctrl", "x":1.5, "y":4, "w":1.5}, {"label":"lwin", "x":3, "y":4}, {"label":"lalt", "x":4, "y":4, "w":1.5}, {"label":"spce", "x":5.5, "y":4, "w":7}, {"label":"ralt", "x":12.5, "y":4, "w":1.5}, {"label":"fn", "x":14, "y":4, "w":1.25}, {"label":"rctrl", "x":15.25, "y":4, "w":1.25}, {"label":"left", "x":17, "y":4}, {"label":"down", "x":18, "y":4}, {"label":"right", "x":19, "y":4}] - } + "LAYOUT_ansi_tsangan_split_bs": { + "layout": [ + {"label":"F1", "x":0, "y":0}, + {"label":"Esc", "x":1.5, "y":0}, + {"label":"1!", "x":2.5, "y":0}, + {"label":"2@", "x":3.5, "y":0}, + {"label":"3#", "x":4.5, "y":0}, + {"label":"4$", "x":5.5, "y":0}, + {"label":"5%", "x":6.5, "y":0}, + {"label":"6^", "x":7.5, "y":0}, + {"label":"7&", "x":8.5, "y":0}, + {"label":"8*", "x":9.5, "y":0}, + {"label":"9(", "x":10.5, "y":0}, + {"label":"0)", "x":11.5, "y":0}, + {"label":"-_", "x":12.5, "y":0}, + {"label":"=+", "x":13.5, "y":0}, + {"label":"Backspace", "x":14.5, "y":0}, + {"label":"Split Backspace", "x":15.5, "y":0}, + {"label":"Insert", "x":17, "y":0}, + {"label":"Home", "x":18, "y":0}, + {"label":"Page Up", "x":19, "y":0}, + + {"label":"F2", "x":0, "y":1}, + {"label":"Tab", "x":1.5, "y":1, "w":1.5}, + {"label":"Q", "x":3, "y":1}, + {"label":"W", "x":4, "y":1}, + {"label":"E", "x":5, "y":1}, + {"label":"R", "x":6, "y":1}, + {"label":"T", "x":7, "y":1}, + {"label":"Y", "x":8, "y":1}, + {"label":"U", "x":9, "y":1}, + {"label":"I", "x":10, "y":1}, + {"label":"O", "x":11, "y":1}, + {"label":"P", "x":12, "y":1}, + {"label":"[{", "x":13, "y":1}, + {"label":"]}", "x":14, "y":1}, + {"label":"\\|", "x":15, "y":1, "w":1.5}, + {"label":"Delete", "x":17, "y":1}, + {"label":"End", "x":18, "y":1}, + {"label":"Page Down", "x":19, "y":1}, + + {"label":"F3", "x":0, "y":2}, + {"label":"Caps Lock", "x":1.5, "y":2, "w":1.25}, + {"label":"A", "x":3.25, "y":2}, + {"label":"S", "x":4.25, "y":2}, + {"label":"D", "x":5.25, "y":2}, + {"label":"F", "x":6.25, "y":2}, + {"label":"G", "x":7.25, "y":2}, + {"label":"H", "x":8.25, "y":2}, + {"label":"J", "x":9.25, "y":2}, + {"label":"K", "x":10.25, "y":2}, + {"label":"L", "x":11.25, "y":2}, + {"label":";:", "x":12.25, "y":2}, + {"label":"'\"", "x":13.25, "y":2}, + {"label":"Enter", "x":14.25, "y":2, "w":2.25}, + + {"label":"F4", "x":0, "y":3}, + {"label":"Shift", "x":1.5, "y":3, "w":2.25}, + {"label":"Z", "x":3.75, "y":3}, + {"label":"X", "x":4.75, "y":3}, + {"label":"C", "x":5.75, "y":3}, + {"label":"V", "x":6.75, "y":3}, + {"label":"B", "x":7.75, "y":3}, + {"label":"N", "x":8.75, "y":3}, + {"label":"M", "x":9.75, "y":3}, + {"label":",<", "x":10.75, "y":3}, + {"label":".>", "x":11.75, "y":3}, + {"label":"/?", "x":12.75, "y":3}, + {"label":"Shift", "x":13.75, "y":3, "w":2.75}, + {"label":"\u2191", "x":18, "y":3}, + + {"label":"F5", "x":0, "y":4}, + {"label":"Ctrl", "x":1.5, "y":4, "w":1.5}, + {"label":"Win", "x":3, "y":4}, + {"label":"Alt", "x":4, "y":4, "w":1.5}, + {"label":"Space", "x":5.5, "y":4, "w":7}, + {"label":"Alt", "x":12.5, "y":4, "w":1.5}, + {"label":"Fn", "x":14, "y":4}, + {"label":"Ctrl", "x":15, "y":4, "w":1.5}, + {"label":"\u2190", "x":17, "y":4}, + {"label":"\u2193", "x":18, "y":4}, + {"label":"\u2192", "x":19, "y":4} + ] + }, + "LAYOUT_iso_split_bs_rshift": { + "layout": [ + {"label":"F1", "x":0, "y":0}, + {"label":"Esc", "x":1.5, "y":0}, + {"label":"1!", "x":2.5, "y":0}, + {"label":"2\"", "x":3.5, "y":0}, + {"label":"3#", "x":4.5, "y":0}, + {"label":"4\u00a3", "x":5.5, "y":0}, + {"label":"5%", "x":6.5, "y":0}, + {"label":"6^", "x":7.5, "y":0}, + {"label":"7&", "x":8.5, "y":0}, + {"label":"8*", "x":9.5, "y":0}, + {"label":"9(", "x":10.5, "y":0}, + {"label":"0)", "x":11.5, "y":0}, + {"label":"-_", "x":12.5, "y":0}, + {"label":"=+", "x":13.5, "y":0}, + {"label":"Backspace", "x":14.5, "y":0}, + {"label":"Split Backspace", "x":15.5, "y":0}, + {"label":"Insert", "x":17, "y":0}, + {"label":"Home", "x":18, "y":0}, + {"label":"Page Up", "x":19, "y":0}, + + {"label":"F2", "x":0, "y":1}, + {"label":"Tab", "x":1.5, "y":1, "w":1.5}, + {"label":"Q", "x":3, "y":1}, + {"label":"W", "x":4, "y":1}, + {"label":"E", "x":5, "y":1}, + {"label":"R", "x":6, "y":1}, + {"label":"T", "x":7, "y":1}, + {"label":"Y", "x":8, "y":1}, + {"label":"U", "x":9, "y":1}, + {"label":"I", "x":10, "y":1}, + {"label":"O", "x":11, "y":1}, + {"label":"P", "x":12, "y":1}, + {"label":"[{", "x":13, "y":1}, + {"label":"]}", "x":14, "y":1}, + {"label":"Delete", "x":17, "y":1}, + {"label":"End", "x":18, "y":1}, + {"label":"Page Down", "x":19, "y":1}, + + {"label":"F3", "x":0, "y":2}, + {"label":"Caps Lock", "x":1.5, "y":2, "w":1.25}, + {"label":"A", "x":3.25, "y":2}, + {"label":"S", "x":4.25, "y":2}, + {"label":"D", "x":5.25, "y":2}, + {"label":"F", "x":6.25, "y":2}, + {"label":"G", "x":7.25, "y":2}, + {"label":"H", "x":8.25, "y":2}, + {"label":"J", "x":9.25, "y":2}, + {"label":"K", "x":10.25, "y":2}, + {"label":"L", "x":11.25, "y":2}, + {"label":";:", "x":12.25, "y":2}, + {"label":"'@", "x":13.25, "y":2}, + {"label":"#~", "x":14.25, "y":2}, + {"label":"Enter", "x":15.25, "y":1, "w":1.25, "h":2}, + + {"label":"F4", "x":0, "y":3}, + {"label":"Shift", "x":1.5, "y":3, "w":1.25}, + {"label":"\\|", "x":2.75, "y":3}, + {"label":"Z", "x":3.75, "y":3}, + {"label":"X", "x":4.75, "y":3}, + {"label":"C", "x":5.75, "y":3}, + {"label":"V", "x":6.75, "y":3}, + {"label":"B", "x":7.75, "y":3}, + {"label":"N", "x":8.75, "y":3}, + {"label":"M", "x":9.75, "y":3}, + {"label":",<", "x":10.75, "y":3}, + {"label":".>", "x":11.75, "y":3}, + {"label":"/?", "x":12.75, "y":3}, + {"label":"Shift", "x":13.75, "y":3, "w":1.75}, + {"label":"Shift 2", "x":15.5, "y":3}, + {"label":"\u2191", "x":18, "y":3}, + + {"label":"F5", "x":0, "y":4}, + {"label":"Ctrl", "x":1.5, "y":4, "w":1.25}, + {"label":"Win", "x":2.75, "y":4, "w":1.25}, + {"label":"Alt", "x":4, "y":4, "w":1.25}, + {"label":"Space", "x":5.25, "y":4, "w":6.25}, + {"label":"Alt", "x":11.5, "y":4, "w":1.25}, + {"label":"Fn", "x":12.75, "y":4, "w":1.25}, + {"label":"Win", "x":14, "y":4, "w":1.25}, + {"label":"Ctrl", "x":15.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":17, "y":4}, + {"label":"\u2193", "x":18, "y":4}, + {"label":"\u2192", "x":19, "y":4} + ] + }, + "LAYOUT_iso_tsangan_split_bs_rshift": { + "layout": [ + {"label":"F1", "x":0, "y":0}, + {"label":"Esc", "x":1.5, "y":0}, + {"label":"1!", "x":2.5, "y":0}, + {"label":"2\"", "x":3.5, "y":0}, + {"label":"3#", "x":4.5, "y":0}, + {"label":"4\u00a3", "x":5.5, "y":0}, + {"label":"5%", "x":6.5, "y":0}, + {"label":"6^", "x":7.5, "y":0}, + {"label":"7&", "x":8.5, "y":0}, + {"label":"8*", "x":9.5, "y":0}, + {"label":"9(", "x":10.5, "y":0}, + {"label":"0)", "x":11.5, "y":0}, + {"label":"-_", "x":12.5, "y":0}, + {"label":"=+", "x":13.5, "y":0}, + {"label":"Backspace", "x":14.5, "y":0}, + {"label":"Split Backspace", "x":15.5, "y":0}, + {"label":"Insert", "x":17, "y":0}, + {"label":"Home", "x":18, "y":0}, + {"label":"Page Up", "x":19, "y":0}, + + {"label":"F2", "x":0, "y":1}, + {"label":"Tab", "x":1.5, "y":1, "w":1.5}, + {"label":"Q", "x":3, "y":1}, + {"label":"W", "x":4, "y":1}, + {"label":"E", "x":5, "y":1}, + {"label":"R", "x":6, "y":1}, + {"label":"T", "x":7, "y":1}, + {"label":"Y", "x":8, "y":1}, + {"label":"U", "x":9, "y":1}, + {"label":"I", "x":10, "y":1}, + {"label":"O", "x":11, "y":1}, + {"label":"P", "x":12, "y":1}, + {"label":"[{", "x":13, "y":1}, + {"label":"]}", "x":14, "y":1}, + {"label":"Delete", "x":17, "y":1}, + {"label":"End", "x":18, "y":1}, + {"label":"Page Down", "x":19, "y":1}, + + {"label":"F3", "x":0, "y":2}, + {"label":"Caps Lock", "x":1.5, "y":2, "w":1.25}, + {"label":"A", "x":3.25, "y":2}, + {"label":"S", "x":4.25, "y":2}, + {"label":"D", "x":5.25, "y":2}, + {"label":"F", "x":6.25, "y":2}, + {"label":"G", "x":7.25, "y":2}, + {"label":"H", "x":8.25, "y":2}, + {"label":"J", "x":9.25, "y":2}, + {"label":"K", "x":10.25, "y":2}, + {"label":"L", "x":11.25, "y":2}, + {"label":";:", "x":12.25, "y":2}, + {"label":"'@", "x":13.25, "y":2}, + {"label":"#~", "x":14.25, "y":2}, + {"label":"Enter", "x":15.25, "y":1, "w":1.25, "h":2}, + + {"label":"F4", "x":0, "y":3}, + {"label":"Shift", "x":1.5, "y":3, "w":1.25}, + {"label":"\\|", "x":2.75, "y":3}, + {"label":"Z", "x":3.75, "y":3}, + {"label":"X", "x":4.75, "y":3}, + {"label":"C", "x":5.75, "y":3}, + {"label":"V", "x":6.75, "y":3}, + {"label":"B", "x":7.75, "y":3}, + {"label":"N", "x":8.75, "y":3}, + {"label":"M", "x":9.75, "y":3}, + {"label":",<", "x":10.75, "y":3}, + {"label":".>", "x":11.75, "y":3}, + {"label":"/?", "x":12.75, "y":3}, + {"label":"Shift", "x":13.75, "y":3, "w":1.75}, + {"label":"Shift2", "x":15.5, "y":3}, + {"label":"\u2191", "x":18, "y":3}, + + {"label":"F5", "x":0, "y":4}, + {"label":"Ctrl", "x":1.5, "y":4, "w":1.5}, + {"label":"Win", "x":3, "y":4}, + {"label":"Alt", "x":4, "y":4, "w":1.5}, + {"label":"Space", "x":5.5, "y":4, "w":7}, + {"label":"Alt", "x":12.5, "y":4, "w":1.5}, + {"label":"Fn", "x":14, "y":4}, + {"label":"Ctrl", "x":15, "y":4, "w":1.5}, + {"label":"\u2190", "x":17, "y":4}, + {"label":"\u2193", "x":18, "y":4}, + {"label":"\u2192", "x":19, "y":4} + ] + } } } diff --git a/keyboards/wavtype/foundation/keymaps/default/keymap.c b/keyboards/wavtype/foundation/keymaps/default/keymap.c index eea83c9889..1e9bd709f7 100644 --- a/keyboards/wavtype/foundation/keymaps/default/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/default/keymap.c @@ -11,18 +11,18 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ - [0] = LAYOUT( - KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, - KC_F2, 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, KC_DEL, KC_DEL, KC_PGDN, - KC_F3, 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_F4, KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT, KC_UP, - KC_F5, KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RIGHT + [_BASE] = LAYOUT_ansi_split_bs( + KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, + KC_F2, 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, KC_DEL, KC_DEL, KC_PGDN, + KC_F3, 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_F4, 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, + KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT( - RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_HUI, 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, - RGB_SAI, 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_VOLU, - RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + [_FN] = LAYOUT_ansi_split_bs( + RGB_TOG, 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_INS, KC_HOME, KC_PGUP, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_HUI, 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, + RGB_SAI, 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_VOLU, + RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ) }; diff --git a/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c b/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c new file mode 100644 index 0000000000..304517d43a --- /dev/null +++ b/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c @@ -0,0 +1,28 @@ +// Copyright 2022 wavtype (@wavtype) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_ansi_tsangan_split_bs( + KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, + KC_F2, 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, KC_DEL, KC_DEL, KC_PGDN, + KC_F3, 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_F4, 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, + KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN] = LAYOUT_ansi_tsangan_split_bs( + RGB_TOG, 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_INS, KC_HOME, KC_PGUP, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_HUI, 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, + RGB_SAI, 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_VOLU, + RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; diff --git a/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c b/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..e93a0771e3 --- /dev/null +++ b/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c @@ -0,0 +1,28 @@ +// Copyright 2022 wavtype (@wavtype) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_iso_split_bs_rshift( + KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, + KC_F2, 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_DEL, KC_DEL, KC_PGDN, + KC_F3, 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_NUHS, KC_ENT, + KC_F4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, + KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN] = LAYOUT_iso_split_bs_rshift( + RGB_TOG, 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_INS, KC_HOME, KC_PGUP, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_HUI, 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, + RGB_SAI, 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_VOLU, + RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; diff --git a/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c b/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..b9561bc39b --- /dev/null +++ b/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c @@ -0,0 +1,28 @@ +// Copyright 2022 wavtype (@wavtype) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + [_BASE] = LAYOUT_iso_tsangan_split_bs_rshift( + KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, + KC_F2, 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_DEL, KC_DEL, KC_PGDN, + KC_F3, 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_NUHS, KC_ENT, + KC_F4, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, + KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN] = LAYOUT_iso_tsangan_split_bs_rshift( + RGB_TOG, 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_INS, KC_HOME, KC_PGUP, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_HUI, 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, + RGB_SAI, 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_VOLU, + RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; diff --git a/keyboards/wavtype/foundation/keymaps/via/keymap.c b/keyboards/wavtype/foundation/keymaps/via/keymap.c index 2dcb0bebc8..ba8929c1a9 100644 --- a/keyboards/wavtype/foundation/keymaps/via/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/via/keymap.c @@ -11,32 +11,32 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ - [0] = LAYOUT( - KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, - KC_F2, 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, KC_DEL, KC_DEL, KC_PGDN, - KC_F3, 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_F4, KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT, KC_UP, - KC_F5, KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RIGHT + [_BASE] = LAYOUT_ansi_split_bs( + KC_F1, 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_BSPC, KC_DEL, KC_INS, KC_HOME, KC_PGUP, + KC_F2, 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, KC_DEL, KC_DEL, KC_PGDN, + KC_F3, 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_F4, 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, + KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT( - RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RGB_HUI, 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, - RGB_SAI, 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_VOLU, - RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + [_FN] = LAYOUT_ansi_split_bs( + RGB_TOG, 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_INS, KC_HOME, KC_PGUP, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_HUI, 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, + RGB_SAI, 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_VOLU, + RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), - [2] = LAYOUT( - 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, 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, 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 + [2] = LAYOUT_ansi_split_bs( + 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, 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, 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 ), - [3] = LAYOUT( - 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, 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, 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 + [3] = LAYOUT_ansi_split_bs( + 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, 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, 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 ) }; From aec9942f37ba57a8b5ac02b13ebcc1d0fd496581 Mon Sep 17 00:00:00 2001 From: eason <98533237+EasonQian1@users.noreply.github.com> Date: Wed, 6 Apr 2022 02:06:05 +0800 Subject: [PATCH 199/699] add folders and capsule65 (#16687) --- keyboards/eason/capsule65/capsule65.c | 17 ++++ keyboards/eason/capsule65/capsule65.h | 48 +++++++++++ keyboards/eason/capsule65/config.h | 63 +++++++++++++++ keyboards/eason/capsule65/info.json | 81 +++++++++++++++++++ .../eason/capsule65/keymaps/default/keymap.c | 39 +++++++++ .../eason/capsule65/keymaps/via/keymap.c | 57 +++++++++++++ .../eason/capsule65/keymaps/via/rules.mk | 2 + keyboards/eason/capsule65/readme.md | 17 ++++ keyboards/eason/capsule65/rules.mk | 18 +++++ 9 files changed, 342 insertions(+) create mode 100644 keyboards/eason/capsule65/capsule65.c create mode 100644 keyboards/eason/capsule65/capsule65.h create mode 100644 keyboards/eason/capsule65/config.h create mode 100644 keyboards/eason/capsule65/info.json create mode 100644 keyboards/eason/capsule65/keymaps/default/keymap.c create mode 100644 keyboards/eason/capsule65/keymaps/via/keymap.c create mode 100644 keyboards/eason/capsule65/keymaps/via/rules.mk create mode 100644 keyboards/eason/capsule65/readme.md create mode 100644 keyboards/eason/capsule65/rules.mk diff --git a/keyboards/eason/capsule65/capsule65.c b/keyboards/eason/capsule65/capsule65.c new file mode 100644 index 0000000000..c04abea9e4 --- /dev/null +++ b/keyboards/eason/capsule65/capsule65.c @@ -0,0 +1,17 @@ +/* Copyright 2022 EASON + * + * 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 . + */ + +#include "capsule65.h" diff --git a/keyboards/eason/capsule65/capsule65.h b/keyboards/eason/capsule65/capsule65.h new file mode 100644 index 0000000000..c7923f1226 --- /dev/null +++ b/keyboards/eason/capsule65/capsule65.h @@ -0,0 +1,48 @@ +/* Copyright 2022 EASON XIAOXUXK@YEAH.NET + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2F │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴┬───────┬───┤───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B│3C │3D │3F │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┼───┬───┼───┤───┤ + * │40 │41 │42 │45 │49 │4A │4B │4C │4D │4F │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘───┘ + */ + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ +} diff --git a/keyboards/eason/capsule65/config.h b/keyboards/eason/capsule65/config.h new file mode 100644 index 0000000000..9228330e8a --- /dev/null +++ b/keyboards/eason/capsule65/config.h @@ -0,0 +1,63 @@ +/* Copyright 2022 EASON XIAOXUXK@YEAH.NET + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xF21E +#define PRODUCT_ID 0x6E6E +#define DEVICE_VER 0x0001 +#define MANUFACTURER eason +#define PRODUCT capsule65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { F4, D1, B7, D0, F5 } +#define MATRIX_COL_PINS { D5, D2, D3, D4, D6, D7, B4, B5, B6, C6, C7, E2, B3, B1, B0, B2 } + +#define DIODE_DIRECTION COL2ROW + +#define LED_CAPS_LOCK_PIN F6 + +#define RGB_DI_PIN F7 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLED_NUM 6 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/eason/capsule65/info.json b/keyboards/eason/capsule65/info.json new file mode 100644 index 0000000000..2a625b5c84 --- /dev/null +++ b/keyboards/eason/capsule65/info.json @@ -0,0 +1,81 @@ +{ + "keyboard_name": "CAPSULE65", + "url": "", + "maintainer": "eason", + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "K00 (F4,D5)", "x": 0, "y": 0 }, + { "label": "K01 (F4,D2)", "x": 1, "y": 0 }, + { "label": "K02 (F4,D3)", "x": 2, "y": 0 }, + { "label": "K03 (F4,D4)", "x": 3, "y": 0 }, + { "label": "K04 (F4,D6)", "x": 4, "y": 0 }, + { "label": "K05 (F4,D7)", "x": 5, "y": 0 }, + { "label": "K06 (F4,B4)", "x": 6, "y": 0 }, + { "label": "K07 (F4,B5)", "x": 7, "y": 0 }, + { "label": "K08 (F4,B6)", "x": 8, "y": 0 }, + { "label": "K09 (F4,C6)", "x": 9, "y": 0 }, + { "label": "K0A (F4,C7)", "x": 10, "y": 0 }, + { "label": "K0B (F4,E2)", "x": 11, "y": 0 }, + { "label": "K0C (F4,B3)", "x": 12, "y": 0 }, + { "label": "K0D (F4,B1)", "x": 13, "y": 0 }, + { "label": "K0E (F4,B0)", "x": 14, "y": 0 }, + { "label": "K0F (F4,B2)", "x": 15, "y": 0 }, + { "label": "K10 (D1,D5)", "x": 0, "y": 1 ,"w":1.5}, + { "label": "K11 (D1,D2)", "x": 1.5, "y": 1}, + { "label": "K12 (D1,D3)", "x": 2.5, "y": 1 }, + { "label": "K13 (D1,D4)", "x": 3.5, "y": 1 }, + { "label": "K14 (D1,D6)", "x": 4.5, "y": 1 }, + { "label": "K15 (D1,D7)", "x": 5.5, "y": 1 }, + { "label": "K16 (D1,B4)", "x": 6.5, "y": 1 }, + { "label": "K17 (D1,B5)", "x": 7.5, "y": 1 }, + { "label": "K18 (D1,B6)", "x": 8.5, "y": 1 }, + { "label": "K19 (D1,C6)", "x": 9.5, "y": 1 }, + { "label": "K1A (D1,C7)", "x": 10.5, "y": 1 }, + { "label": "K1B (D1,E2)", "x": 11.5, "y": 1 }, + { "label": "K1C (D1,B3)", "x": 12.5, "y": 1 }, + { "label": "K1D (D1,B1)", "x": 13.5, "y": 1 ,"w":1.5}, + { "label": "K1F (D1,B2)", "x": 15, "y": 1 }, + { "label": "K20 (B7,D5)", "x": 0, "y": 2,"w":1.75 }, + { "label": "K21 (B7,D2)", "x": 1.75, "y": 2 }, + { "label": "K22 (B7,D3)", "x": 2.75, "y": 2 }, + { "label": "K23 (B7,D4)", "x": 3.75, "y": 2 }, + { "label": "K24 (B7,D6)", "x": 4.75, "y": 2 }, + { "label": "K25 (B7,D7)", "x": 5.75, "y": 2 }, + { "label": "K26 (B7,B4)", "x": 6.75, "y": 2 }, + { "label": "K27 (B7,B5)", "x": 7.75, "y": 2 }, + { "label": "K28 (B7,B6)", "x": 8.75, "y": 2 }, + { "label": "K29 (B7,C6)", "x": 9.75, "y": 2 }, + { "label": "K2A (B7,C7)", "x": 10.75, "y": 2 }, + { "label": "K2B (B7,E2)", "x": 11.75, "y": 2 }, + { "label": "K2C (B7,B3)", "x": 12.75, "y": 2 ,"w":2.25}, + { "label": "K2F (B7,B2)", "x": 15, "y": 2 }, + { "label": "K30 (D0,D5)", "x": 0, "y": 3 ,"w":1.25}, + { "label": "K31 (D0,D2)", "x": 1.25, "y": 3 }, + { "label": "K32 (D0,D3)", "x": 2.25, "y": 3 }, + { "label": "K33 (D0,D4)", "x": 3.25, "y": 3 }, + { "label": "K34 (D0,D6)", "x": 4.25, "y": 3 }, + { "label": "K35 (D0,D7)", "x": 5.25, "y": 3 }, + { "label": "K36 (D0,B4)", "x": 6.25, "y": 3 }, + { "label": "K37 (D0,B5)", "x": 7.25, "y": 3 }, + { "label": "K38 (D0,B6)", "x": 8.25, "y": 3 }, + { "label": "K39 (D0,C6)", "x": 9.25, "y": 3 }, + { "label": "K3A (D0,C7)", "x": 10.25, "y": 3 }, + { "label": "K3B (D0,E2)", "x": 11.25, "y": 3 }, + { "label": "K3C (D0,B3)", "x": 12.25, "y": 3 ,"w":1.75 }, + { "label": "K3D (D0,B1)", "x": 14, "y": 3 }, + { "label": "K3F (D0,B2)", "x": 15, "y": 3 }, + { "label": "K40 (F5,D5)", "x": 0, "y": 4 ,"w":1.25}, + { "label": "K41 (F5,D2)", "x": 1.25, "y": 4 ,"w":1.25}, + { "label": "K42 (F5,D3)", "x": 2.5, "y": 4 ,"w":1.25}, + { "label": "K45 (F5,D7)", "x": 3.75, "y": 4,"w":6.25 }, + { "label": "K49 (F5,C6)", "x": 10, "y": 4 }, + { "label": "K4A (F5,C7)", "x": 11, "y": 4 }, + { "label": "K4B (F5,E2)", "x": 12, "y": 4 }, + { "label": "K4C (F5,B3)", "x": 13, "y": 4 }, + { "label": "K4D (F5,B1)", "x": 14, "y": 4 }, + { "label": "K4F (F5,B2)", "x": 15, "y": 4 } + ] + } + } +} diff --git a/keyboards/eason/capsule65/keymaps/default/keymap.c b/keyboards/eason/capsule65/keymaps/default/keymap.c new file mode 100644 index 0000000000..5825f3a8ac --- /dev/null +++ b/keyboards/eason/capsule65/keymaps/default/keymap.c @@ -0,0 +1,39 @@ +/* Copyright 2022 EASON + * + * 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 . + */ + +#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_BSPC, KC_HOME, 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_BSLS, KC_END, + 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_PGUP, + KC_LSFT, KC_SPC, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, RGB_TOG, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + + RESET, 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, RGB_MOD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RGB_VAI, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, RGB_VAD, RGB_HUD + ), + +}; diff --git a/keyboards/eason/capsule65/keymaps/via/keymap.c b/keyboards/eason/capsule65/keymaps/via/keymap.c new file mode 100644 index 0000000000..7df223dcf5 --- /dev/null +++ b/keyboards/eason/capsule65/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* Copyright 2022 EASON + * + * 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 . + */ + +#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_BSPC, KC_HOME, 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_BSLS, KC_END, + 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_PGUP, + KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, RGB_TOG, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + + RESET, 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, RGB_MOD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RGB_VAI, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, RGB_VAD, RGB_HUD + ), + + [2] = LAYOUT( + + RESET, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT( + + RESET, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; diff --git a/keyboards/eason/capsule65/keymaps/via/rules.mk b/keyboards/eason/capsule65/keymaps/via/rules.mk new file mode 100644 index 0000000000..a2d6d0a96e --- /dev/null +++ b/keyboards/eason/capsule65/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/eason/capsule65/readme.md b/keyboards/eason/capsule65/readme.md new file mode 100644 index 0000000000..87576e34fa --- /dev/null +++ b/keyboards/eason/capsule65/readme.md @@ -0,0 +1,17 @@ +# capsule65 +A customizable soldering 65% keyboard. +Support left shift, backspace split +* Keyboard Maintainer: [eason](https://github.com/EasonQian1) +* Hardware Supported: capsule65 +* Hardware Availability: [eason](https://github.com/EasonQian1) + +Make example for this keyboard (after setting up your build environment): + + make eason/capsule65:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader Enter the bootloader in 3 ways: +* **Bootmagic reset**: Hold down esc in the keyboard then replug +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` diff --git a/keyboards/eason/capsule65/rules.mk b/keyboards/eason/capsule65/rules.mk new file mode 100644 index 0000000000..744a272535 --- /dev/null +++ b/keyboards/eason/capsule65/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 69be0dc97cd6a4e2f9bcae2ce994519051531b32 Mon Sep 17 00:00:00 2001 From: Erovia Date: Tue, 5 Apr 2022 19:13:00 +0100 Subject: [PATCH 200/699] Fix lineendings for eason/capsule65 (#16801) --- keyboards/eason/capsule65/config.h | 126 +++++++++++----------- keyboards/eason/capsule65/info.json | 162 ++++++++++++++-------------- 2 files changed, 144 insertions(+), 144 deletions(-) diff --git a/keyboards/eason/capsule65/config.h b/keyboards/eason/capsule65/config.h index 9228330e8a..34efb3f2a5 100644 --- a/keyboards/eason/capsule65/config.h +++ b/keyboards/eason/capsule65/config.h @@ -1,63 +1,63 @@ -/* Copyright 2022 EASON XIAOXUXK@YEAH.NET - * - * 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 . - */ - -#pragma once - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xF21E -#define PRODUCT_ID 0x6E6E -#define DEVICE_VER 0x0001 -#define MANUFACTURER eason -#define PRODUCT capsule65 - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 16 - -/* - * 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 { F4, D1, B7, D0, F5 } -#define MATRIX_COL_PINS { D5, D2, D3, D4, D6, D7, B4, B5, B6, C6, C7, E2, B3, B1, B0, B2 } - -#define DIODE_DIRECTION COL2ROW - -#define LED_CAPS_LOCK_PIN F6 - -#define RGB_DI_PIN F7 -#define RGBLIGHT_EFFECT_BREATHING -#define RGBLIGHT_EFFECT_RAINBOW_MOOD -#define RGBLIGHT_EFFECT_RAINBOW_SWIRL -#define RGBLIGHT_EFFECT_SNAKE -#define RGBLIGHT_EFFECT_KNIGHT -#define RGBLIGHT_EFFECT_CHRISTMAS -#define RGBLIGHT_EFFECT_STATIC_GRADIENT -#define RGBLIGHT_EFFECT_RGB_TEST -#define RGBLIGHT_EFFECT_ALTERNATING -#define RGBLIGHT_EFFECT_TWINKLE -#define RGBLED_NUM 6 -#define RGBLIGHT_HUE_STEP 8 -#define RGBLIGHT_SAT_STEP 8 -#define RGBLIGHT_VAL_STEP 8 +/* Copyright 2022 EASON XIAOXUXK@YEAH.NET + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xF21E +#define PRODUCT_ID 0x6E6E +#define DEVICE_VER 0x0001 +#define MANUFACTURER eason +#define PRODUCT capsule65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 16 + +/* + * 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 { F4, D1, B7, D0, F5 } +#define MATRIX_COL_PINS { D5, D2, D3, D4, D6, D7, B4, B5, B6, C6, C7, E2, B3, B1, B0, B2 } + +#define DIODE_DIRECTION COL2ROW + +#define LED_CAPS_LOCK_PIN F6 + +#define RGB_DI_PIN F7 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLED_NUM 6 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/eason/capsule65/info.json b/keyboards/eason/capsule65/info.json index 2a625b5c84..1783d4f2ae 100644 --- a/keyboards/eason/capsule65/info.json +++ b/keyboards/eason/capsule65/info.json @@ -1,81 +1,81 @@ -{ - "keyboard_name": "CAPSULE65", - "url": "", - "maintainer": "eason", - "layouts": { - "LAYOUT": { - "layout": [ - { "label": "K00 (F4,D5)", "x": 0, "y": 0 }, - { "label": "K01 (F4,D2)", "x": 1, "y": 0 }, - { "label": "K02 (F4,D3)", "x": 2, "y": 0 }, - { "label": "K03 (F4,D4)", "x": 3, "y": 0 }, - { "label": "K04 (F4,D6)", "x": 4, "y": 0 }, - { "label": "K05 (F4,D7)", "x": 5, "y": 0 }, - { "label": "K06 (F4,B4)", "x": 6, "y": 0 }, - { "label": "K07 (F4,B5)", "x": 7, "y": 0 }, - { "label": "K08 (F4,B6)", "x": 8, "y": 0 }, - { "label": "K09 (F4,C6)", "x": 9, "y": 0 }, - { "label": "K0A (F4,C7)", "x": 10, "y": 0 }, - { "label": "K0B (F4,E2)", "x": 11, "y": 0 }, - { "label": "K0C (F4,B3)", "x": 12, "y": 0 }, - { "label": "K0D (F4,B1)", "x": 13, "y": 0 }, - { "label": "K0E (F4,B0)", "x": 14, "y": 0 }, - { "label": "K0F (F4,B2)", "x": 15, "y": 0 }, - { "label": "K10 (D1,D5)", "x": 0, "y": 1 ,"w":1.5}, - { "label": "K11 (D1,D2)", "x": 1.5, "y": 1}, - { "label": "K12 (D1,D3)", "x": 2.5, "y": 1 }, - { "label": "K13 (D1,D4)", "x": 3.5, "y": 1 }, - { "label": "K14 (D1,D6)", "x": 4.5, "y": 1 }, - { "label": "K15 (D1,D7)", "x": 5.5, "y": 1 }, - { "label": "K16 (D1,B4)", "x": 6.5, "y": 1 }, - { "label": "K17 (D1,B5)", "x": 7.5, "y": 1 }, - { "label": "K18 (D1,B6)", "x": 8.5, "y": 1 }, - { "label": "K19 (D1,C6)", "x": 9.5, "y": 1 }, - { "label": "K1A (D1,C7)", "x": 10.5, "y": 1 }, - { "label": "K1B (D1,E2)", "x": 11.5, "y": 1 }, - { "label": "K1C (D1,B3)", "x": 12.5, "y": 1 }, - { "label": "K1D (D1,B1)", "x": 13.5, "y": 1 ,"w":1.5}, - { "label": "K1F (D1,B2)", "x": 15, "y": 1 }, - { "label": "K20 (B7,D5)", "x": 0, "y": 2,"w":1.75 }, - { "label": "K21 (B7,D2)", "x": 1.75, "y": 2 }, - { "label": "K22 (B7,D3)", "x": 2.75, "y": 2 }, - { "label": "K23 (B7,D4)", "x": 3.75, "y": 2 }, - { "label": "K24 (B7,D6)", "x": 4.75, "y": 2 }, - { "label": "K25 (B7,D7)", "x": 5.75, "y": 2 }, - { "label": "K26 (B7,B4)", "x": 6.75, "y": 2 }, - { "label": "K27 (B7,B5)", "x": 7.75, "y": 2 }, - { "label": "K28 (B7,B6)", "x": 8.75, "y": 2 }, - { "label": "K29 (B7,C6)", "x": 9.75, "y": 2 }, - { "label": "K2A (B7,C7)", "x": 10.75, "y": 2 }, - { "label": "K2B (B7,E2)", "x": 11.75, "y": 2 }, - { "label": "K2C (B7,B3)", "x": 12.75, "y": 2 ,"w":2.25}, - { "label": "K2F (B7,B2)", "x": 15, "y": 2 }, - { "label": "K30 (D0,D5)", "x": 0, "y": 3 ,"w":1.25}, - { "label": "K31 (D0,D2)", "x": 1.25, "y": 3 }, - { "label": "K32 (D0,D3)", "x": 2.25, "y": 3 }, - { "label": "K33 (D0,D4)", "x": 3.25, "y": 3 }, - { "label": "K34 (D0,D6)", "x": 4.25, "y": 3 }, - { "label": "K35 (D0,D7)", "x": 5.25, "y": 3 }, - { "label": "K36 (D0,B4)", "x": 6.25, "y": 3 }, - { "label": "K37 (D0,B5)", "x": 7.25, "y": 3 }, - { "label": "K38 (D0,B6)", "x": 8.25, "y": 3 }, - { "label": "K39 (D0,C6)", "x": 9.25, "y": 3 }, - { "label": "K3A (D0,C7)", "x": 10.25, "y": 3 }, - { "label": "K3B (D0,E2)", "x": 11.25, "y": 3 }, - { "label": "K3C (D0,B3)", "x": 12.25, "y": 3 ,"w":1.75 }, - { "label": "K3D (D0,B1)", "x": 14, "y": 3 }, - { "label": "K3F (D0,B2)", "x": 15, "y": 3 }, - { "label": "K40 (F5,D5)", "x": 0, "y": 4 ,"w":1.25}, - { "label": "K41 (F5,D2)", "x": 1.25, "y": 4 ,"w":1.25}, - { "label": "K42 (F5,D3)", "x": 2.5, "y": 4 ,"w":1.25}, - { "label": "K45 (F5,D7)", "x": 3.75, "y": 4,"w":6.25 }, - { "label": "K49 (F5,C6)", "x": 10, "y": 4 }, - { "label": "K4A (F5,C7)", "x": 11, "y": 4 }, - { "label": "K4B (F5,E2)", "x": 12, "y": 4 }, - { "label": "K4C (F5,B3)", "x": 13, "y": 4 }, - { "label": "K4D (F5,B1)", "x": 14, "y": 4 }, - { "label": "K4F (F5,B2)", "x": 15, "y": 4 } - ] - } - } -} +{ + "keyboard_name": "CAPSULE65", + "url": "", + "maintainer": "eason", + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "K00 (F4,D5)", "x": 0, "y": 0 }, + { "label": "K01 (F4,D2)", "x": 1, "y": 0 }, + { "label": "K02 (F4,D3)", "x": 2, "y": 0 }, + { "label": "K03 (F4,D4)", "x": 3, "y": 0 }, + { "label": "K04 (F4,D6)", "x": 4, "y": 0 }, + { "label": "K05 (F4,D7)", "x": 5, "y": 0 }, + { "label": "K06 (F4,B4)", "x": 6, "y": 0 }, + { "label": "K07 (F4,B5)", "x": 7, "y": 0 }, + { "label": "K08 (F4,B6)", "x": 8, "y": 0 }, + { "label": "K09 (F4,C6)", "x": 9, "y": 0 }, + { "label": "K0A (F4,C7)", "x": 10, "y": 0 }, + { "label": "K0B (F4,E2)", "x": 11, "y": 0 }, + { "label": "K0C (F4,B3)", "x": 12, "y": 0 }, + { "label": "K0D (F4,B1)", "x": 13, "y": 0 }, + { "label": "K0E (F4,B0)", "x": 14, "y": 0 }, + { "label": "K0F (F4,B2)", "x": 15, "y": 0 }, + { "label": "K10 (D1,D5)", "x": 0, "y": 1 ,"w":1.5}, + { "label": "K11 (D1,D2)", "x": 1.5, "y": 1}, + { "label": "K12 (D1,D3)", "x": 2.5, "y": 1 }, + { "label": "K13 (D1,D4)", "x": 3.5, "y": 1 }, + { "label": "K14 (D1,D6)", "x": 4.5, "y": 1 }, + { "label": "K15 (D1,D7)", "x": 5.5, "y": 1 }, + { "label": "K16 (D1,B4)", "x": 6.5, "y": 1 }, + { "label": "K17 (D1,B5)", "x": 7.5, "y": 1 }, + { "label": "K18 (D1,B6)", "x": 8.5, "y": 1 }, + { "label": "K19 (D1,C6)", "x": 9.5, "y": 1 }, + { "label": "K1A (D1,C7)", "x": 10.5, "y": 1 }, + { "label": "K1B (D1,E2)", "x": 11.5, "y": 1 }, + { "label": "K1C (D1,B3)", "x": 12.5, "y": 1 }, + { "label": "K1D (D1,B1)", "x": 13.5, "y": 1 ,"w":1.5}, + { "label": "K1F (D1,B2)", "x": 15, "y": 1 }, + { "label": "K20 (B7,D5)", "x": 0, "y": 2,"w":1.75 }, + { "label": "K21 (B7,D2)", "x": 1.75, "y": 2 }, + { "label": "K22 (B7,D3)", "x": 2.75, "y": 2 }, + { "label": "K23 (B7,D4)", "x": 3.75, "y": 2 }, + { "label": "K24 (B7,D6)", "x": 4.75, "y": 2 }, + { "label": "K25 (B7,D7)", "x": 5.75, "y": 2 }, + { "label": "K26 (B7,B4)", "x": 6.75, "y": 2 }, + { "label": "K27 (B7,B5)", "x": 7.75, "y": 2 }, + { "label": "K28 (B7,B6)", "x": 8.75, "y": 2 }, + { "label": "K29 (B7,C6)", "x": 9.75, "y": 2 }, + { "label": "K2A (B7,C7)", "x": 10.75, "y": 2 }, + { "label": "K2B (B7,E2)", "x": 11.75, "y": 2 }, + { "label": "K2C (B7,B3)", "x": 12.75, "y": 2 ,"w":2.25}, + { "label": "K2F (B7,B2)", "x": 15, "y": 2 }, + { "label": "K30 (D0,D5)", "x": 0, "y": 3 ,"w":1.25}, + { "label": "K31 (D0,D2)", "x": 1.25, "y": 3 }, + { "label": "K32 (D0,D3)", "x": 2.25, "y": 3 }, + { "label": "K33 (D0,D4)", "x": 3.25, "y": 3 }, + { "label": "K34 (D0,D6)", "x": 4.25, "y": 3 }, + { "label": "K35 (D0,D7)", "x": 5.25, "y": 3 }, + { "label": "K36 (D0,B4)", "x": 6.25, "y": 3 }, + { "label": "K37 (D0,B5)", "x": 7.25, "y": 3 }, + { "label": "K38 (D0,B6)", "x": 8.25, "y": 3 }, + { "label": "K39 (D0,C6)", "x": 9.25, "y": 3 }, + { "label": "K3A (D0,C7)", "x": 10.25, "y": 3 }, + { "label": "K3B (D0,E2)", "x": 11.25, "y": 3 }, + { "label": "K3C (D0,B3)", "x": 12.25, "y": 3 ,"w":1.75 }, + { "label": "K3D (D0,B1)", "x": 14, "y": 3 }, + { "label": "K3F (D0,B2)", "x": 15, "y": 3 }, + { "label": "K40 (F5,D5)", "x": 0, "y": 4 ,"w":1.25}, + { "label": "K41 (F5,D2)", "x": 1.25, "y": 4 ,"w":1.25}, + { "label": "K42 (F5,D3)", "x": 2.5, "y": 4 ,"w":1.25}, + { "label": "K45 (F5,D7)", "x": 3.75, "y": 4,"w":6.25 }, + { "label": "K49 (F5,C6)", "x": 10, "y": 4 }, + { "label": "K4A (F5,C7)", "x": 11, "y": 4 }, + { "label": "K4B (F5,E2)", "x": 12, "y": 4 }, + { "label": "K4C (F5,B3)", "x": 13, "y": 4 }, + { "label": "K4D (F5,B1)", "x": 14, "y": 4 }, + { "label": "K4F (F5,B2)", "x": 15, "y": 4 } + ] + } + } +} From c0216e92fa752afb54a75df386174ddbaec61fef Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Tue, 5 Apr 2022 11:21:05 -0700 Subject: [PATCH 201/699] Format code according to conventions (#16802) --- keyboards/eason/capsule65/keymaps/via/rules.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/eason/capsule65/keymaps/via/rules.mk b/keyboards/eason/capsule65/keymaps/via/rules.mk index a2d6d0a96e..36b7ba9cbc 100644 --- a/keyboards/eason/capsule65/keymaps/via/rules.mk +++ b/keyboards/eason/capsule65/keymaps/via/rules.mk @@ -1,2 +1,2 @@ -VIA_ENABLE = yes -LTO_ENABLE = yes +VIA_ENABLE = yes +LTO_ENABLE = yes From 2f917dd768fda45d73ab8fd67138f7ab7d23c76c Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 5 Apr 2022 11:45:18 -0700 Subject: [PATCH 202/699] Cutie Club Novus Layout Macro Updates (#16792) * info.json: apply friendly formatting * rename LAYOUT_all to LAYOUT_60_ansi_split_bs_rshift Maintains `LAYOUT_all` as an alias to `LAYOUT_60_ansi_split_bs_rshift`. * novus.h: use QMK 3-character notation * novus.h: add matrix diagram * add LAYOUT_60_ansi * add LAYOUT_60_ansi_tsangan * refactor keymaps - update grid alignment - use QMK-native keycode aliases * add LAYOUT_60_ansi_tsangan_split_bs_rshift * rules.mk: update Community Layouts list --- keyboards/cutie_club/novus/info.json | 547 +++++++++--------- .../cutie_club/novus/keymaps/default/keymap.c | 24 +- .../cutie_club/novus/keymaps/via/keymap.c | 48 +- keyboards/cutie_club/novus/novus.h | 83 ++- keyboards/cutie_club/novus/rules.mk | 2 + 5 files changed, 389 insertions(+), 315 deletions(-) diff --git a/keyboards/cutie_club/novus/info.json b/keyboards/cutie_club/novus/info.json index cae4e25c89..d4ab2c2b06 100644 --- a/keyboards/cutie_club/novus/info.json +++ b/keyboards/cutie_club/novus/info.json @@ -2,276 +2,287 @@ "keyboard_name": "Novus", "url": "", "maintainer": "Cutie Club", + "layout_aliases": { + "LAYOUT_all": "LAYOUT_60_ansi_split_bs_rshift" + }, "layouts": { - "LAYOUT_all": { + "LAYOUT_60_ansi": { "layout": [ - { - "x": 0, - "y": 0 - }, - { - "x": 1, - "y": 0 - }, - { - "x": 2, - "y": 0 - }, - { - "x": 3, - "y": 0 - }, - { - "x": 4, - "y": 0 - }, - { - "x": 5, - "y": 0 - }, - { - "x": 6, - "y": 0 - }, - { - "x": 7, - "y": 0 - }, - { - "x": 8, - "y": 0 - }, - { - "x": 9, - "y": 0 - }, - { - "x": 10, - "y": 0 - }, - { - "x": 11, - "y": 0 - }, - { - "x": 12, - "y": 0 - }, - { - "x": 13, - "y": 0 - }, - { - "x": 14, - "y": 0 - }, - { - "x": 0, - "y": 1, - "w": 1.5 - }, - { - "x": 1.5, - "y": 1 - }, - { - "x": 2.5, - "y": 1 - }, - { - "x": 3.5, - "y": 1 - }, - { - "x": 4.5, - "y": 1 - }, - { - "x": 5.5, - "y": 1 - }, - { - "x": 6.5, - "y": 1 - }, - { - "x": 7.5, - "y": 1 - }, - { - "x": 8.5, - "y": 1 - }, - { - "x": 9.5, - "y": 1 - }, - { - "x": 10.5, - "y": 1 - }, - { - "x": 11.5, - "y": 1 - }, - { - "x": 12.5, - "y": 1 - }, - { - "x": 13.5, - "y": 1, - "w": 1.5 - }, - { - "x": 0, - "y": 2, - "w": 1.75 - }, - { - "x": 1.75, - "y": 2 - }, - { - "x": 2.75, - "y": 2 - }, - { - "x": 3.75, - "y": 2 - }, - { - "x": 4.75, - "y": 2 - }, - { - "x": 5.75, - "y": 2 - }, - { - "x": 6.75, - "y": 2 - }, - { - "x": 7.75, - "y": 2 - }, - { - "x": 8.75, - "y": 2 - }, - { - "x": 9.75, - "y": 2 - }, - { - "x": 10.75, - "y": 2 - }, - { - "x": 11.75, - "y": 2 - }, - { - "x": 12.75, - "y": 2, - "w": 2.25 - }, - { - "x": 0, - "y": 3, - "w": 2.25 - }, - { - "x": 2.25, - "y": 3 - }, - { - "x": 3.25, - "y": 3 - }, - { - "x": 4.25, - "y": 3 - }, - { - "x": 5.25, - "y": 3 - }, - { - "x": 6.25, - "y": 3 - }, - { - "x": 7.25, - "y": 3 - }, - { - "x": 8.25, - "y": 3 - }, - { - "x": 9.25, - "y": 3 - }, - { - "x": 10.25, - "y": 3 - }, - { - "x": 11.25, - "y": 3 - }, - { - "x": 12.25, - "y": 3, - "w": 1.75 - }, - { - "x": 14, - "y": 3 - }, - { - "x": 0, - "y": 4, - "w": 1.25 - }, - { - "x": 1.25, - "y": 4, - "w": 1.25 - }, - { - "x": 2.5, - "y": 4, - "w": 1.25 - }, - { - "x": 3.75, - "y": 4, - "w": 6.25 - }, - { - "x": 10, - "y": 4, - "w": 1.25 - }, - { - "x": 11.25, - "y": 4, - "w": 1.25 - }, - { - "x": 12.5, - "y": 4, - "w": 1.25 - }, - { - "x": 13.75, - "y": 4, - "w": 1.25 - } + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":2.75}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":12.5, "y":4, "w":1.25}, + {"x":13.75, "y":4, "w":1.25} + ] + }, + "LAYOUT_60_ansi_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":12.5, "y":4, "w":1.25}, + {"x":13.75, "y":4, "w":1.25} + ] + }, + "LAYOUT_60_ansi_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":2.75}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":12.5, "y":4}, + {"x":13.5, "y":4, "w":1.5} + ] + } + "LAYOUT_60_ansi_tsangan_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":12.5, "y":4}, + {"x":13.5, "y":4, "w":1.5} ] } } -} \ No newline at end of file +} diff --git a/keyboards/cutie_club/novus/keymaps/default/keymap.c b/keyboards/cutie_club/novus/keymaps/default/keymap.c index feeb27de8c..71644146d1 100644 --- a/keyboards/cutie_club/novus/keymaps/default/keymap.c +++ b/keyboards/cutie_club/novus/keymaps/default/keymap.c @@ -16,18 +16,18 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( - 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_BSPC, 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, - 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL + [0] = LAYOUT_60_ansi_split_bs_rshift( + 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_BSPC, 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, + 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), - [1] = LAYOUT_all( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [1] = LAYOUT_60_ansi_split_bs_rshift( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/cutie_club/novus/keymaps/via/keymap.c b/keyboards/cutie_club/novus/keymaps/via/keymap.c index 24e55dc1cf..c46017b44f 100644 --- a/keyboards/cutie_club/novus/keymaps/via/keymap.c +++ b/keyboards/cutie_club/novus/keymaps/via/keymap.c @@ -16,32 +16,32 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( - 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_BSPC, 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, - 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL + [0] = LAYOUT_60_ansi_split_bs_rshift( + 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_BSPC, 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, + 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_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), - [1] = LAYOUT_all( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [1] = LAYOUT_60_ansi_split_bs_rshift( + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [2] = LAYOUT_60_ansi_split_bs_rshift( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ), - [3] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______ + [3] = LAYOUT_60_ansi_split_bs_rshift( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/cutie_club/novus/novus.h b/keyboards/cutie_club/novus/novus.h index 31ed6a8ac6..faea80fd5a 100644 --- a/keyboards/cutie_club/novus/novus.h +++ b/keyboards/cutie_club/novus/novus.h @@ -18,16 +18,77 @@ #include "quantum.h" -#define LAYOUT_all( \ - k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14, \ - k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, \ - k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, \ - k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, \ - k04_00, k04_01, k04_02, k04_05, k04_09, k04_10, k04_11, k04_12 \ +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │ │0D │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ └───────┘ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌──────────┐ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │ │3B │ 2.75u RShift + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ └──────────┘ + * │40 │41 │42 │45 │49 │4A │4B │4C │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┬───┬─────┐ + * │40 │41 │42 │45 │4A │4B │4C │ Tsangan/WKL + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ + */ + +#define LAYOUT_60_ansi( \ + 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, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \ + k40, k41, k42, k45, k49, k4A, k4B, k4C \ ) { \ - { k00_00, k00_01, k00_02, k00_03, k00_04, k00_05, k00_06, k00_07, k00_08, k00_09, k00_10, k00_11, k00_12, k00_13, k00_14 }, \ - { k01_00, k01_01, k01_02, k01_03, k01_04, k01_05, k01_06, k01_07, k01_08, k01_09, k01_10, k01_11, k01_12, k01_13, KC_NO }, \ - { k02_00, k02_01, k02_02, k02_03, k02_04, k02_05, k02_06, k02_07, k02_08, k02_09, k02_10, k02_11, k02_12, KC_NO, KC_NO }, \ - { k03_00, k03_01, k03_02, k03_03, k03_04, k03_05, k03_06, k03_07, k03_08, k03_09, k03_10, k03_11, k03_12, KC_NO, KC_NO }, \ - { k04_00, k04_01, k04_02, KC_NO, KC_NO, k04_05, KC_NO, KC_NO, KC_NO, k04_09, k04_10, k04_11, k04_12, KC_NO, KC_NO } \ + { 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, ___, ___ }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, ___, ___, ___ }, \ + { k40, k41, k42, ___, ___, k45, ___, ___, ___, k49, k4A, k4B, k4C, ___, ___ } \ +} + +#define LAYOUT_60_ansi_split_bs_rshift( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \ + 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, k45, k49, k4A, k4B, k4C \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { 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, ___, ___, k45, ___, ___, ___, k49, k4A, k4B, k4C, ___, ___ } \ +} + +#define LAYOUT_60_ansi_tsangan( \ + 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, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \ + k40, k41, k42, k45, 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, ___, ___ }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, ___, ___, ___ }, \ + { k40, k41, k42, ___, ___, k45, ___, ___, ___, ___, k4A, k4B, k4C, ___, ___ } \ +} + +#define LAYOUT_60_ansi_tsangan_split_bs_rshift( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, \ + 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, k45, k4A, k4B, k4C \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E }, \ + { 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, ___, ___, k45, ___, ___, ___, ___, k4A, k4B, k4C, ___, ___ } \ } diff --git a/keyboards/cutie_club/novus/rules.mk b/keyboards/cutie_club/novus/rules.mk index 1275531ef6..b86bc438dd 100644 --- a/keyboards/cutie_club/novus/rules.mk +++ b/keyboards/cutie_club/novus/rules.mk @@ -16,3 +16,5 @@ NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 60_ansi 60_ansi_split_bs_rshift 60_ansi_tsangan From 67bb6e19458e49008ee11fbce3a26e1967edffe4 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 5 Apr 2022 12:13:45 -0700 Subject: [PATCH 203/699] RGBKB Sol 3 rev1: Configurator Data and Readme (#16798) * add QMK Configurator data * add readme file --- keyboards/rgbkb/sol3/readme.md | 26 ++++++ keyboards/rgbkb/sol3/rev1/info.json | 118 ++++++++++++++++++++++++++++ 2 files changed, 144 insertions(+) create mode 100644 keyboards/rgbkb/sol3/readme.md create mode 100644 keyboards/rgbkb/sol3/rev1/info.json diff --git a/keyboards/rgbkb/sol3/readme.md b/keyboards/rgbkb/sol3/readme.md new file mode 100644 index 0000000000..c896f7c0cd --- /dev/null +++ b/keyboards/rgbkb/sol3/readme.md @@ -0,0 +1,26 @@ +# Sol 3 + +![Sol 3](https://raw.githubusercontent.com/noroadsleft/qmk_images/master/keyboards/rgbkb/sol3/rev1/rgbkb_sol3_rev1_01.jpg) + +An extensible split keyboard with hotswap sockets and per-key RGB lighting. + +* Keyboard Maintainer: [XScorpion2](https://github.com/XScorpion2), [RGBKB](https://github.com/rgbkb) +* Hardware Supported: RGBKB Sol 3 rev1 (STM32F303) +* Hardware Availability: [RGBKB.net](https://www.rgbkb.net/collections/sol-3) + +Make example for this keyboard (after setting up your build environment): + + make rgbkb/sol3/rev1:default + +Flashing example for this keyboard: + + make rgbkb/sol3/rev1:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +To reset the board into bootloader mode, do one of the following: + +* **Keycode in layout**: Press the key mapped to `RESET` if it is available (Adjust + R by default) +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard (also erases persistent settings) diff --git a/keyboards/rgbkb/sol3/rev1/info.json b/keyboards/rgbkb/sol3/rev1/info.json new file mode 100644 index 0000000000..7003726b7f --- /dev/null +++ b/keyboards/rgbkb/sol3/rev1/info.json @@ -0,0 +1,118 @@ +{ + "keyboard_name": "Sol 3 rev1", + "url": "", + "maintainer": "XScorpion2, rgbkb", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0, "w":1.5}, + {"x":1.5, "y":0}, + {"x":2.5, "y":0}, + {"x":3.5, "y":0}, + {"x":4.5, "y":0}, + {"x":5.5, "y":0}, + {"x":6.75, "y":0}, + + {"x":9.25, "y":0}, + {"x":10.5, "y":0}, + {"x":11.5, "y":0}, + {"x":12.5, "y":0}, + {"x":13.5, "y":0}, + {"x":14.5, "y":0}, + {"x":15.5, "y":0, "w":1.5}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.75, "y":1}, + + {"x":9.25, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1}, + {"x":14.5, "y":1}, + {"x":15.5, "y":1, "w":1.5}, + + {"x":0, "y":2, "w":1.5}, + {"x":1.5, "y":2}, + {"x":2.5, "y":2}, + {"x":3.5, "y":2}, + {"x":4.5, "y":2}, + {"x":5.5, "y":2}, + {"x":6.75, "y":2}, + + {"x":9.25, "y":2}, + {"x":10.5, "y":2}, + {"x":11.5, "y":2}, + {"x":12.5, "y":2}, + {"x":13.5, "y":2}, + {"x":14.5, "y":2}, + {"x":15.5, "y":2, "w":1.5}, + + {"x":0, "y":3, "w":1.5}, + {"x":1.5, "y":3}, + {"x":2.5, "y":3}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.75, "y":3}, + + {"x":9.25, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":1.5}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4}, + {"x":3.5, "y":4}, + {"x":4.5, "y":4}, + {"x":6, "y":4.5, "h":2}, + {"x":7, "y":4.5}, + {"x":7, "y":5.5}, + + {"x":9, "y":5.5}, + {"x":9, "y":4.5}, + {"x":10, "y":4.5, "h":2}, + {"x":11.5, "y":4}, + {"x":12.5, "y":4}, + {"x":13.5, "y":4}, + {"x":14.5, "y":4}, + {"x":15.5, "y":4, "w":1.5}, + + {"x":0, "y":7, "w":0.8, "h":0.8}, + {"x":0.8, "y":7, "w":0.8, "h":0.8}, + {"x":1.6, "y":7, "w":0.8, "h":0.8}, + {"x":2.4, "y":7, "w":0.8, "h":0.8}, + {"x":3.2, "y":7, "w":0.8, "h":0.8}, + {"x":4, "y":7, "w":0.8, "h":0.8}, + + {"x":12.2, "y":7, "w":0.8, "h":0.8}, + {"x":13, "y":7, "w":0.8, "h":0.8}, + {"x":13.8, "y":7, "w":0.8, "h":0.8}, + {"x":14.6, "y":7, "w":0.8, "h":0.8}, + {"x":15.4, "y":7, "w":0.8, "h":0.8}, + {"x":16.2, "y":7, "w":0.8, "h":0.8}, + + {"x":0, "y":7.8, "w":0.8, "h":0.8}, + {"x":0.8, "y":7.8, "w":0.8, "h":0.8}, + {"x":1.6, "y":7.8, "w":0.8, "h":0.8}, + {"x":2.4, "y":7.8, "w":0.8, "h":0.8}, + {"x":3.2, "y":7.8, "w":0.8, "h":0.8}, + + {"x":13, "y":7.8, "w":0.8, "h":0.8}, + {"x":13.8, "y":7.8, "w":0.8, "h":0.8}, + {"x":14.6, "y":7.8, "w":0.8, "h":0.8}, + {"x":15.4, "y":7.8, "w":0.8, "h":0.8}, + {"x":16.2, "y":7.8, "w":0.8, "h":0.8} + ] + } + } +} From 563c4dbb09fcb3ff76bd453d8780f398e57c2ada Mon Sep 17 00:00:00 2001 From: Danny Date: Tue, 5 Apr 2022 17:14:07 -0400 Subject: [PATCH 204/699] Add Iris Rev 6.1 (#16722) --- keyboards/keebio/iris/iris.h | 2 + keyboards/keebio/iris/rev6a/config.h | 134 +++++++++++++++++++++++++ keyboards/keebio/iris/rev6a/rev6a.c | 141 +++++++++++++++++++++++++++ keyboards/keebio/iris/rev6a/rev6a.h | 42 ++++++++ keyboards/keebio/iris/rev6a/rules.mk | 24 +++++ 5 files changed, 343 insertions(+) create mode 100644 keyboards/keebio/iris/rev6a/config.h create mode 100644 keyboards/keebio/iris/rev6a/rev6a.c create mode 100644 keyboards/keebio/iris/rev6a/rev6a.h create mode 100644 keyboards/keebio/iris/rev6a/rules.mk diff --git a/keyboards/keebio/iris/iris.h b/keyboards/keebio/iris/iris.h index db0440a126..e17b3b69c6 100644 --- a/keyboards/keebio/iris/iris.h +++ b/keyboards/keebio/iris/iris.h @@ -14,6 +14,8 @@ #include "rev5.h" #elif defined(KEYBOARD_keebio_iris_rev6) #include "rev6.h" +#elif defined(KEYBOARD_keebio_iris_rev6a) + #include "rev6a.h" #endif #include "quantum.h" diff --git a/keyboards/keebio/iris/rev6a/config.h b/keyboards/keebio/iris/rev6a/config.h new file mode 100644 index 0000000000..06c1f38e11 --- /dev/null +++ b/keyboards/keebio/iris/rev6a/config.h @@ -0,0 +1,134 @@ +/* +Copyright 2021 Danny Nguyen + +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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xCB10 +#define PRODUCT_ID 0x6356 +#define DEVICE_VER 0x0610 +#define MANUFACTURER Keebio +#define PRODUCT Iris Rev. 6.1 + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 10 +#define MATRIX_COLS 6 + +// wiring of each half +#define MATRIX_ROW_PINS { B1, F0, F5, B4, D7 } +#define MATRIX_COL_PINS { F1, F4, B5, C7, D4, D6 } +#define MATRIX_ROW_PINS_RIGHT { B1, F0, F5, B4, B5 } +#define MATRIX_COL_PINS_RIGHT { D4, D6, D7, C7, F1, F4 } +#define SPLIT_HAND_PIN D5 + +#define ENCODERS_PAD_A { B3 } +#define ENCODERS_PAD_B { B2 } +#define ENCODERS_PAD_A_RIGHT { B3 } +#define ENCODERS_PAD_B_RIGHT { B2 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* number of backlight levels */ +// #define BACKLIGHT_LEVELS 3 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* serial.c configuration for split keyboard */ +#define SOFT_SERIAL_PIN D0 + +/* ws2812 RGB LED */ +#define RGB_DI_PIN E6 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 68 +# define RGBLED_SPLIT { 34, 34 } +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== enabled animations ==*/ +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_SNAKE +# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +# define RGBLIGHT_EFFECT_RGB_TEST +# define RGBLIGHT_EFFECT_ALTERNATING +# define RGBLIGHT_EFFECT_TWINKLE +# define RGBLIGHT_DEFAULT_VAL 120 +# define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_MODE_RAINBOW_SWIRL + 2) +// RGB Matrix +//# ifdef RGB_MATRIX_ENABLE +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 160 +# define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +# define DRIVER_LED_TOTAL RGBLED_NUM +# define RGB_MATRIX_SPLIT { 34, 34 } +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define RGB_MATRIX_KEYPRESSES +//# endif +#endif + +#define VIA_QMK_RGBLIGHT_ENABLE + +// Enable the workaround for the speed parameter mismatch between RGBLIGHT and +// RGB Matrix, so that the speed slider in VIA behaves in a more useful way. +#define VIA_CUSTOM_LIGHTING_ENABLE diff --git a/keyboards/keebio/iris/rev6a/rev6a.c b/keyboards/keebio/iris/rev6a/rev6a.c new file mode 100644 index 0000000000..cc9c3f6b8f --- /dev/null +++ b/keyboards/keebio/iris/rev6a/rev6a.c @@ -0,0 +1,141 @@ +/* +Copyright 2021 Danny Nguyen +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 . +*/ +#include "rev6a.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + // Key Matrix to LED Index + // Left Half + { 0, 1, 2, 3, 4, 5 }, + { 11, 10, 9, 8, 7, 6 }, + { 12, 13, 14, 15, 16, 17 }, + { 23, 22, 21, 20, 19, 18 }, + { NO_LED, NO_LED, 24, 25, 26, 27 }, + // Right Half + { 34, 35, 36, 37, 38, 39 }, + { 45, 44, 43, 42, 41, 40 }, + { 46, 47, 48, 49, 50, 51 }, + { 57, 56, 55, 54, 53, 52 }, + { NO_LED, NO_LED, 58, 59, 60, 61 } +}, { + // LED Index to Physical Position + // Left Half + { 0, 5 }, { 16, 5 }, { 32, 2 }, { 48, 0 }, { 64, 2 }, { 80, 3 }, + { 80, 17 }, { 64, 15 }, { 48, 13 }, { 32, 15 }, { 16, 18 }, { 0, 18 }, + { 0, 32 }, { 16, 32 }, { 32, 28 }, { 48, 27 }, { 64, 28 }, { 80, 30 }, + { 80, 43 }, { 64, 42 }, { 48, 40 }, { 32, 42 }, { 16, 45 }, { 0, 45 }, + { 56, 47 }, { 72, 58 }, { 90, 64 }, { 98, 52 }, + { 80, 58 }, { 40, 50 }, { 8, 43 }, { 8, 5 }, { 40, 1 }, { 72, 3 }, + // Right Half + { 224, 5 }, { 208, 5 }, { 192, 2 }, { 176, 0 }, { 160, 2 }, { 144, 3 }, + { 144, 18 }, { 160, 18 }, { 176, 15 }, { 192, 13 }, { 208, 15 }, { 244, 17 }, + { 224, 32 }, { 208, 32 }, { 192, 28 }, { 176, 27 }, { 160, 28 }, { 144, 30 }, + { 144, 45 }, { 160, 45 }, { 176, 42 }, { 192, 40 }, { 208, 42 }, { 244, 43 }, + { 168, 47 }, { 152, 58 }, { 134, 64 }, { 126, 52 }, + { 144, 58 }, { 184, 50 }, { 216, 43 }, { 216, 5 }, { 184, 1 }, { 152, 3 } +}, { + // LED Index to Flag + // Left Half + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, + 2, 2, 2, 2, 2, 2, + // Right Half + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, + 2, 2, 2, 2, 2, 2 + +} }; + + +# if defined(VIA_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) + +// VIA supports only 4 discrete values for effect speed; map these to some +// useful speed values for RGB Matrix. +enum speed_values { + RGBLIGHT_SPEED_0 = UINT8_MAX / 16, // not 0 to avoid really slow effects + RGBLIGHT_SPEED_1 = UINT8_MAX / 4, + RGBLIGHT_SPEED_2 = UINT8_MAX / 2, // matches the default value + RGBLIGHT_SPEED_3 = UINT8_MAX / 4 * 3, // UINT8_MAX is really fast +}; + +static uint8_t speed_from_rgblight(uint8_t rgblight_speed) { + switch (rgblight_speed) { + case 0: + return RGBLIGHT_SPEED_0; + case 1: + return RGBLIGHT_SPEED_1; + case 2: + default: + return RGBLIGHT_SPEED_2; + case 3: + return RGBLIGHT_SPEED_3; + } +} + +static uint8_t speed_to_rgblight(uint8_t rgb_matrix_speed) { + if (rgb_matrix_speed < ((RGBLIGHT_SPEED_0 + RGBLIGHT_SPEED_1) / 2)) { + return 0; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_1 + RGBLIGHT_SPEED_2) / 2)) { + return 1; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_2 + RGBLIGHT_SPEED_3) / 2)) { + return 2; + } else { + return 3; + } +} + +void raw_hid_receive_kb(uint8_t *data, uint8_t length) { + switch (data[0]) { + case id_lighting_get_value: + if (data[1] == id_qmk_rgblight_effect_speed) { + data[2] = speed_to_rgblight(rgb_matrix_get_speed()); + } + break; + case id_lighting_set_value: + if (data[1] == id_qmk_rgblight_effect_speed) { + rgb_matrix_set_speed_noeeprom(speed_from_rgblight(data[2])); + } + break; + } +} + +# endif // defined(VIA_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) + +#endif + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (index == 1) { + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return false; +} +#endif diff --git a/keyboards/keebio/iris/rev6a/rev6a.h b/keyboards/keebio/iris/rev6a/rev6a.h new file mode 100644 index 0000000000..d13e24410e --- /dev/null +++ b/keyboards/keebio/iris/rev6a/rev6a.h @@ -0,0 +1,42 @@ +/* +Copyright 2021 Danny Nguyen + +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 . +*/ + +#pragma once + +#include "iris.h" +#include "quantum.h" + + +#define LAYOUT( \ + LA1, LA2, LA3, LA4, LA5, LA6, RA6, RA5, RA4, RA3, RA2, RA1, \ + LB1, LB2, LB3, LB4, LB5, LB6, RB6, RB5, RB4, RB3, RB2, RB1, \ + LC1, LC2, LC3, LC4, LC5, LC6, RC6, RC5, RC4, RC3, RC2, RC1, \ + LD1, LD2, LD3, LD4, LD5, LD6, LE6, RE6, RD6, RD5, RD4, RD3, RD2, RD1, \ + LE3, LE4, LE5, RE5, RE4, RE3 \ + ) \ + { \ + { LA1, LA2, LA3, LA4, LA5, LA6 }, \ + { LB1, LB2, LB3, LB4, LB5, LB6 }, \ + { LC1, LC2, LC3, LC4, LC5, LC6 }, \ + { LD1, LD2, LD3, LD4, LD5, LD6 }, \ + { KC_NO, KC_NO, LE3, LE4, LE5, LE6 }, \ + { RA1, RA2, RA3, RA4, RA5, RA6 }, \ + { RB1, RB2, RB3, RB4, RB5, RB6 }, \ + { RC1, RC2, RC3, RC4, RC5, RC6 }, \ + { RD1, RD2, RD3, RD4, RD5, RD6 }, \ + { KC_NO, KC_NO, RE3, RE4, RE5, RE6 } \ + } diff --git a/keyboards/keebio/iris/rev6a/rules.mk b/keyboards/keebio/iris/rev6a/rules.mk new file mode 100644 index 0000000000..87f19b5fc1 --- /dev/null +++ b/keyboards/keebio/iris/rev6a/rules.mk @@ -0,0 +1,24 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +SPLIT_KEYBOARD = yes +ENCODER_ENABLE = yes +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 + +LTO_ENABLE = yes From 45504bb0949f4bddd5679bde0076f10512303e3a Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 6 Apr 2022 01:08:38 +0100 Subject: [PATCH 205/699] Add mechanism to limit available converters (#16783) --- data/mappings/defaults.json | 9 ++++++--- data/mappings/info_rules.json | 1 + data/schemas/keyboard.jsonschema | 4 ++++ 3 files changed, 11 insertions(+), 3 deletions(-) diff --git a/data/mappings/defaults.json b/data/mappings/defaults.json index d3643fede8..3d3d915c0e 100644 --- a/data/mappings/defaults.json +++ b/data/mappings/defaults.json @@ -2,16 +2,19 @@ "development_board": { "promicro": { "processor": "atmega32u4", - "bootloader": "caterina" + "bootloader": "caterina", + "pin_compatible": "promicro" }, "elite_c": { "processor": "atmega32u4", - "bootloader": "atmel-dfu" + "bootloader": "atmel-dfu", + "pin_compatible": "promicro" }, "proton_c": { "processor": "STM32F303", "bootloader": "stm32-dfu", - "board": "QMK_PROTON_C" + "board": "QMK_PROTON_C", + "pin_compatible": "promicro" } } } \ No newline at end of file diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json index f03cadcd44..237e9f1024 100644 --- a/data/mappings/info_rules.json +++ b/data/mappings/info_rules.json @@ -19,6 +19,7 @@ "MCU": {"info_key": "processor", "warn_duplicate": false}, "MOUSEKEY_ENABLE": {"info_key": "mouse_key.enabled", "value_type": "bool"}, "NO_USB_STARTUP_CHECK": {"info_key": "usb.no_startup_check", "value_type": "bool"}, + "PIN_COMPATIBLE": {"info_key": "pin_compatible"}, "SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"}, "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false}, "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"} diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index f4c24c41cd..9af3ef5981 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -16,6 +16,10 @@ "type": "string", "enum": ["promicro", "elite_c", "proton_c"] }, + "pin_compatible": { + "type": "string", + "enum": ["promicro"] + }, "processor": { "type": "string", "enum": ["cortex-m0", "cortex-m0plus", "cortex-m3", "cortex-m4", "MKL26Z64", "MK20DX128", "MK20DX256", "MK66FX1M0", "STM32F042", "STM32F072", "STM32F103", "STM32F303", "STM32F401", "STM32F405", "STM32F407", "STM32F411", "STM32F446", "STM32G431", "STM32G474", "STM32L412", "STM32L422", "STM32L432", "STM32L433", "STM32L442", "STM32L443", "GD32VF103", "WB32F3G71", "atmega16u2", "atmega32u2", "atmega16u4", "atmega32u4", "at90usb162", "at90usb646", "at90usb647", "at90usb1286", "at90usb1287", "atmega32a", "atmega328p", "atmega328", "attiny85", "unknown"] From a5e810b86cff89faa082c3ff71b69cda0709ab79 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 6 Apr 2022 01:23:04 +0100 Subject: [PATCH 206/699] Add non blackpill F4x1 config files (#16600) * Add non blackpill F4x1 config files * Move ld files * Remove f401 i2c bodges * more bodge? * Update to recommended defaults --- .../onekey/blackpill_f401/blackpill_f401.c | 23 -- keyboards/handwired/uthol/rev3/rev3.c | 2 - keyboards/mechwild/obe/obe.c | 6 - keyboards/mechwild/waka60/waka60.c | 6 +- keyboards/mode/m65ha_alpha/m65ha_alpha.c | 1 - keyboards/mode/m65hi_alpha/m65hi_alpha.c | 1 - keyboards/mode/m65s/m65s.c | 1 - keyboards/mode/m75h/m75h.c | 1 - keyboards/mode/m75s/m75s.c | 1 - .../BLACKPILL_STM32_F401/configs/board.h | 57 ++++ .../GENERIC_STM32_F401XC/board/board.mk | 9 + .../GENERIC_STM32_F401XC/configs/board.h | 77 ++++++ .../GENERIC_STM32_F401XC/configs/config.h | 22 ++ .../GENERIC_STM32_F401XC/configs/mcuconf.h | 244 +++++++++++++++++ .../GENERIC_STM32_F411XE/board/board.mk | 9 + .../GENERIC_STM32_F411XE/configs/board.h | 20 ++ .../GENERIC_STM32_F411XE/configs/config.h | 22 ++ .../GENERIC_STM32_F411XE/configs/mcuconf.h | 252 ++++++++++++++++++ .../ld/STM32F401xC_tinyuf2.ld | 0 .../ld/STM32F401xE_tinyuf2.ld | 0 .../ld/STM32F411xC_tinyuf2.ld | 0 .../ld/STM32F411xE_tinyuf2.ld | 0 22 files changed, 713 insertions(+), 41 deletions(-) delete mode 100644 keyboards/handwired/onekey/blackpill_f401/blackpill_f401.c create mode 100644 platforms/chibios/boards/GENERIC_STM32_F401XC/board/board.mk create mode 100644 platforms/chibios/boards/GENERIC_STM32_F401XC/configs/board.h create mode 100644 platforms/chibios/boards/GENERIC_STM32_F401XC/configs/config.h create mode 100644 platforms/chibios/boards/GENERIC_STM32_F401XC/configs/mcuconf.h create mode 100644 platforms/chibios/boards/GENERIC_STM32_F411XE/board/board.mk create mode 100644 platforms/chibios/boards/GENERIC_STM32_F411XE/configs/board.h create mode 100644 platforms/chibios/boards/GENERIC_STM32_F411XE/configs/config.h create mode 100644 platforms/chibios/boards/GENERIC_STM32_F411XE/configs/mcuconf.h rename platforms/chibios/boards/{BLACKPILL_STM32_F401 => common}/ld/STM32F401xC_tinyuf2.ld (100%) rename platforms/chibios/boards/{BLACKPILL_STM32_F401 => common}/ld/STM32F401xE_tinyuf2.ld (100%) rename platforms/chibios/boards/{BLACKPILL_STM32_F411 => common}/ld/STM32F411xC_tinyuf2.ld (100%) rename platforms/chibios/boards/{BLACKPILL_STM32_F411 => common}/ld/STM32F411xE_tinyuf2.ld (100%) diff --git a/keyboards/handwired/onekey/blackpill_f401/blackpill_f401.c b/keyboards/handwired/onekey/blackpill_f401/blackpill_f401.c deleted file mode 100644 index 1287614a8b..0000000000 --- a/keyboards/handwired/onekey/blackpill_f401/blackpill_f401.c +++ /dev/null @@ -1,23 +0,0 @@ -/* Copyright 2020 Sergey Vlasov (sigprof) - * - * 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 . - */ - -#include QMK_KEYBOARD_H - -void board_init(void) { - // B9 is configured as I2C1_SDA_PIN in the board file; that function must be - // disabled before using B7 as I2C1_SDA. - setPinInputHigh(B9); -} diff --git a/keyboards/handwired/uthol/rev3/rev3.c b/keyboards/handwired/uthol/rev3/rev3.c index 2ababdfbe8..6c06387ee8 100644 --- a/keyboards/handwired/uthol/rev3/rev3.c +++ b/keyboards/handwired/uthol/rev3/rev3.c @@ -16,5 +16,3 @@ */ #include QMK_KEYBOARD_H - -void board_init(void) { setPinInputHigh(B9); } diff --git a/keyboards/mechwild/obe/obe.c b/keyboards/mechwild/obe/obe.c index 8612764ae5..195d4a7679 100644 --- a/keyboards/mechwild/obe/obe.c +++ b/keyboards/mechwild/obe/obe.c @@ -16,12 +16,6 @@ #include "obe.h" -void board_init(void) { - // B9 is configured as I2C1_SDA in the board file; that function must be - // disabled before using B7 as I2C1_SDA. - setPinInputHigh(B9); -} - #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } diff --git a/keyboards/mechwild/waka60/waka60.c b/keyboards/mechwild/waka60/waka60.c index 1b6eec1f44..180d0a6786 100644 --- a/keyboards/mechwild/waka60/waka60.c +++ b/keyboards/mechwild/waka60/waka60.c @@ -15,11 +15,7 @@ */ #include "waka60.h" -void board_init(void) { - // B9 is configured as I2C1_SDA in the board file; that function must be - // disabled before using B7 as I2C1_SDA. - setPinInputHigh(B9); -} + #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { if (!encoder_update_user(index, clockwise)) { return false; } diff --git a/keyboards/mode/m65ha_alpha/m65ha_alpha.c b/keyboards/mode/m65ha_alpha/m65ha_alpha.c index 93e0c06b73..4160ffed95 100644 --- a/keyboards/mode/m65ha_alpha/m65ha_alpha.c +++ b/keyboards/mode/m65ha_alpha/m65ha_alpha.c @@ -18,7 +18,6 @@ along with this program. If not, see . #include "m65ha_alpha.h" void board_init(void) { - setPinInput(B9); setPinInput(B10); } diff --git a/keyboards/mode/m65hi_alpha/m65hi_alpha.c b/keyboards/mode/m65hi_alpha/m65hi_alpha.c index db0ab7ca9a..42c88ba354 100644 --- a/keyboards/mode/m65hi_alpha/m65hi_alpha.c +++ b/keyboards/mode/m65hi_alpha/m65hi_alpha.c @@ -18,7 +18,6 @@ along with this program. If not, see . #include "m65hi_alpha.h" void board_init(void) { - setPinInput(B9); setPinInput(B10); } diff --git a/keyboards/mode/m65s/m65s.c b/keyboards/mode/m65s/m65s.c index 298fc94140..467fc53a0e 100644 --- a/keyboards/mode/m65s/m65s.c +++ b/keyboards/mode/m65s/m65s.c @@ -18,7 +18,6 @@ along with this program. If not, see . #include "m65s.h" void board_init(void) { - setPinInput(B9); setPinInput(B10); } diff --git a/keyboards/mode/m75h/m75h.c b/keyboards/mode/m75h/m75h.c index 3306a6538b..e480ea2834 100644 --- a/keyboards/mode/m75h/m75h.c +++ b/keyboards/mode/m75h/m75h.c @@ -18,6 +18,5 @@ along with this program. If not, see . #include "m75h.h" void board_init(void) { - setPinInput(B9); setPinInput(B10); } diff --git a/keyboards/mode/m75s/m75s.c b/keyboards/mode/m75s/m75s.c index e0424a6a64..bd323a435b 100644 --- a/keyboards/mode/m75s/m75s.c +++ b/keyboards/mode/m75s/m75s.c @@ -18,6 +18,5 @@ along with this program. If not, see . #include "m75s.h" void board_init(void) { - setPinInput(B9); setPinInput(B10); } diff --git a/platforms/chibios/boards/BLACKPILL_STM32_F401/configs/board.h b/platforms/chibios/boards/BLACKPILL_STM32_F401/configs/board.h index 30af6b0c86..78dcbac05c 100644 --- a/platforms/chibios/boards/BLACKPILL_STM32_F401/configs/board.h +++ b/platforms/chibios/boards/BLACKPILL_STM32_F401/configs/board.h @@ -17,4 +17,61 @@ #include_next "board.h" +// Force B9 as input to align with qmk defaults +#undef VAL_GPIOB_MODER +#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ + PIN_MODE_INPUT(GPIOB_PIN1) | \ + PIN_MODE_INPUT(GPIOB_PIN2) | \ + PIN_MODE_ALTERNATE(GPIOB_SWO) | \ + PIN_MODE_INPUT(GPIOB_PIN4) | \ + PIN_MODE_INPUT(GPIOB_PIN5) | \ + PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ + PIN_MODE_INPUT(GPIOB_PIN7) | \ + PIN_MODE_INPUT(GPIOB_PIN8) | \ + PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ + PIN_MODE_ALTERNATE(GPIOB_MP45DT02_CLK_IN) |\ + PIN_MODE_INPUT(GPIOB_PIN11) | \ + PIN_MODE_INPUT(GPIOB_PIN12) | \ + PIN_MODE_INPUT(GPIOB_PIN13) | \ + PIN_MODE_INPUT(GPIOB_PIN14) | \ + PIN_MODE_INPUT(GPIOB_PIN15)) + +#undef VAL_GPIOB_PUPDR +#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLUP(GPIOB_PIN0) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN1) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN2) | \ + PIN_PUPDR_PULLUP(GPIOB_SWO) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN4) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN5) | \ + PIN_PUPDR_PULLUP(GPIOB_LSM303DLHC_SCL) |\ + PIN_PUPDR_PULLUP(GPIOB_PIN7) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN8) | \ + PIN_PUPDR_PULLUP(GPIOB_LSM303DLHC_SDA) |\ + PIN_PUPDR_FLOATING(GPIOB_MP45DT02_CLK_IN) |\ + PIN_PUPDR_PULLUP(GPIOB_PIN11) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN12) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN13) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN14) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN15)) + +#undef VAL_GPIOB_AFRL +#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ + PIN_AFIO_AF(GPIOB_SWO, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ + PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ + PIN_AFIO_AF(GPIOB_PIN7, 0U)) + +#undef VAL_GPIOB_AFRH +#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ + PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ + PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 5U) |\ + PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN15, 0U)) + #undef STM32_HSE_BYPASS diff --git a/platforms/chibios/boards/GENERIC_STM32_F401XC/board/board.mk b/platforms/chibios/boards/GENERIC_STM32_F401XC/board/board.mk new file mode 100644 index 0000000000..fddf7dace4 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F401XC/board/board.mk @@ -0,0 +1,9 @@ +# List of all the board related files. +BOARDSRC = $(CHIBIOS)/os/hal/boards/ST_STM32F401C_DISCOVERY/board.c + +# Required include directories +BOARDINC = $(CHIBIOS)/os/hal/boards/ST_STM32F401C_DISCOVERY + +# Shared variables +ALLCSRC += $(BOARDSRC) +ALLINC += $(BOARDINC) diff --git a/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/board.h b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/board.h new file mode 100644 index 0000000000..78dcbac05c --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/board.h @@ -0,0 +1,77 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#include_next "board.h" + +// Force B9 as input to align with qmk defaults +#undef VAL_GPIOB_MODER +#define VAL_GPIOB_MODER (PIN_MODE_INPUT(GPIOB_PIN0) | \ + PIN_MODE_INPUT(GPIOB_PIN1) | \ + PIN_MODE_INPUT(GPIOB_PIN2) | \ + PIN_MODE_ALTERNATE(GPIOB_SWO) | \ + PIN_MODE_INPUT(GPIOB_PIN4) | \ + PIN_MODE_INPUT(GPIOB_PIN5) | \ + PIN_MODE_INPUT(GPIOB_LSM303DLHC_SCL) | \ + PIN_MODE_INPUT(GPIOB_PIN7) | \ + PIN_MODE_INPUT(GPIOB_PIN8) | \ + PIN_MODE_INPUT(GPIOB_LSM303DLHC_SDA) | \ + PIN_MODE_ALTERNATE(GPIOB_MP45DT02_CLK_IN) |\ + PIN_MODE_INPUT(GPIOB_PIN11) | \ + PIN_MODE_INPUT(GPIOB_PIN12) | \ + PIN_MODE_INPUT(GPIOB_PIN13) | \ + PIN_MODE_INPUT(GPIOB_PIN14) | \ + PIN_MODE_INPUT(GPIOB_PIN15)) + +#undef VAL_GPIOB_PUPDR +#define VAL_GPIOB_PUPDR (PIN_PUPDR_PULLUP(GPIOB_PIN0) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN1) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN2) | \ + PIN_PUPDR_PULLUP(GPIOB_SWO) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN4) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN5) | \ + PIN_PUPDR_PULLUP(GPIOB_LSM303DLHC_SCL) |\ + PIN_PUPDR_PULLUP(GPIOB_PIN7) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN8) | \ + PIN_PUPDR_PULLUP(GPIOB_LSM303DLHC_SDA) |\ + PIN_PUPDR_FLOATING(GPIOB_MP45DT02_CLK_IN) |\ + PIN_PUPDR_PULLUP(GPIOB_PIN11) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN12) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN13) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN14) | \ + PIN_PUPDR_PULLUP(GPIOB_PIN15)) + +#undef VAL_GPIOB_AFRL +#define VAL_GPIOB_AFRL (PIN_AFIO_AF(GPIOB_PIN0, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN1, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN2, 0U) | \ + PIN_AFIO_AF(GPIOB_SWO, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN4, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN5, 0U) | \ + PIN_AFIO_AF(GPIOB_LSM303DLHC_SCL, 0) | \ + PIN_AFIO_AF(GPIOB_PIN7, 0U)) + +#undef VAL_GPIOB_AFRH +#define VAL_GPIOB_AFRH (PIN_AFIO_AF(GPIOB_PIN8, 0U) | \ + PIN_AFIO_AF(GPIOB_LSM303DLHC_SDA, 0) | \ + PIN_AFIO_AF(GPIOB_MP45DT02_CLK_IN, 5U) |\ + PIN_AFIO_AF(GPIOB_PIN11, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN12, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN13, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN14, 0U) | \ + PIN_AFIO_AF(GPIOB_PIN15, 0U)) + +#undef STM32_HSE_BYPASS diff --git a/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/config.h new file mode 100644 index 0000000000..e06ca0b725 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/config.h @@ -0,0 +1,22 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#define BOARD_OTG_NOVBUSSENS 1 + +#ifndef EARLY_INIT_PERFORM_BOOTLOADER_JUMP +# define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE +#endif diff --git a/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/mcuconf.h new file mode 100644 index 0000000000..24cec7137d --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F401XC/configs/mcuconf.h @@ -0,0 +1,244 @@ +/* + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#ifndef MCUCONF_H +#define MCUCONF_H + +/* + * STM32F4xx drivers configuration. + * The following settings override the default settings present in + * the various device driver implementation headers. + * Note that the settings for each driver only have effect if the whole + * driver is enabled in halconf.h. + * + * IRQ priorities: + * 15...0 Lowest...Highest. + * + * DMA priorities: + * 0...3 Lowest...Highest. + */ + +#define STM32F4xx_MCUCONF +#define STM32F401_MCUCONF + +/* + * HAL driver system settings. + */ +#define STM32_NO_INIT FALSE +#define STM32_PVD_ENABLE FALSE +#define STM32_PLS STM32_PLS_LEV0 +#define STM32_BKPRAM_ENABLE FALSE +#define STM32_HSI_ENABLED TRUE +#define STM32_LSI_ENABLED TRUE +#define STM32_HSE_ENABLED TRUE +#define STM32_LSE_ENABLED FALSE +#define STM32_CLOCK48_REQUIRED TRUE +#define STM32_SW STM32_SW_PLL +#define STM32_PLLSRC STM32_PLLSRC_HSE +#define STM32_PLLM_VALUE 4 +#define STM32_PLLN_VALUE 168 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 7 +#define STM32_HPRE STM32_HPRE_DIV1 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV1 +#define STM32_RTCSEL STM32_RTCSEL_LSI +#define STM32_RTCPRE_VALUE 8 +#define STM32_MCO1SEL STM32_MCO1SEL_HSI +#define STM32_MCO1PRE STM32_MCO1PRE_DIV1 +#define STM32_MCO2SEL STM32_MCO2SEL_SYSCLK +#define STM32_MCO2PRE STM32_MCO2PRE_DIV5 +#define STM32_I2SSRC STM32_I2SSRC_CKIN +#define STM32_PLLI2SN_VALUE 192 +#define STM32_PLLI2SR_VALUE 5 + +/* + * IRQ system settings. + */ +#define STM32_IRQ_EXTI0_PRIORITY 6 +#define STM32_IRQ_EXTI1_PRIORITY 6 +#define STM32_IRQ_EXTI2_PRIORITY 6 +#define STM32_IRQ_EXTI3_PRIORITY 6 +#define STM32_IRQ_EXTI4_PRIORITY 6 +#define STM32_IRQ_EXTI5_9_PRIORITY 6 +#define STM32_IRQ_EXTI10_15_PRIORITY 6 +#define STM32_IRQ_EXTI16_PRIORITY 6 +#define STM32_IRQ_EXTI17_PRIORITY 15 +#define STM32_IRQ_EXTI18_PRIORITY 6 +#define STM32_IRQ_EXTI19_PRIORITY 6 +#define STM32_IRQ_EXTI20_PRIORITY 6 +#define STM32_IRQ_EXTI21_PRIORITY 15 +#define STM32_IRQ_EXTI22_PRIORITY 15 + +#define STM32_IRQ_TIM1_BRK_TIM9_PRIORITY 7 +#define STM32_IRQ_TIM1_UP_TIM10_PRIORITY 7 +#define STM32_IRQ_TIM1_TRGCO_TIM11_PRIORITY 7 +#define STM32_IRQ_TIM1_CC_PRIORITY 7 +#define STM32_IRQ_TIM2_PRIORITY 7 +#define STM32_IRQ_TIM3_PRIORITY 7 +#define STM32_IRQ_TIM4_PRIORITY 7 +#define STM32_IRQ_TIM5_PRIORITY 7 + +#define STM32_IRQ_USART1_PRIORITY 12 +#define STM32_IRQ_USART2_PRIORITY 12 +#define STM32_IRQ_USART6_PRIORITY 12 + +/* + * ADC driver system settings. + */ +#define STM32_ADC_ADCPRE ADC_CCR_ADCPRE_DIV4 +#define STM32_ADC_USE_ADC1 FALSE +#define STM32_ADC_ADC1_DMA_STREAM STM32_DMA_STREAM_ID(2, 4) +#define STM32_ADC_ADC1_DMA_PRIORITY 2 +#define STM32_ADC_IRQ_PRIORITY 6 +#define STM32_ADC_ADC1_DMA_IRQ_PRIORITY 6 + +/* + * GPT driver system settings. + */ +#define STM32_GPT_USE_TIM1 FALSE +#define STM32_GPT_USE_TIM2 FALSE +#define STM32_GPT_USE_TIM3 FALSE +#define STM32_GPT_USE_TIM4 FALSE +#define STM32_GPT_USE_TIM5 FALSE +#define STM32_GPT_USE_TIM9 FALSE +#define STM32_GPT_USE_TIM10 FALSE +#define STM32_GPT_USE_TIM11 FALSE + +/* + * I2C driver system settings. + */ +#define STM32_I2C_USE_I2C1 FALSE +#define STM32_I2C_USE_I2C2 FALSE +#define STM32_I2C_USE_I2C3 FALSE +#define STM32_I2C_BUSY_TIMEOUT 50 +#define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) +#define STM32_I2C_I2C2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 2) +#define STM32_I2C_I2C2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_I2C_I2C3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 2) +#define STM32_I2C_I2C3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_I2C_I2C1_IRQ_PRIORITY 5 +#define STM32_I2C_I2C2_IRQ_PRIORITY 5 +#define STM32_I2C_I2C3_IRQ_PRIORITY 5 +#define STM32_I2C_I2C1_DMA_PRIORITY 3 +#define STM32_I2C_I2C2_DMA_PRIORITY 3 +#define STM32_I2C_I2C3_DMA_PRIORITY 3 +#define STM32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure") + +/* + * I2S driver system settings. + */ +#define STM32_I2S_USE_SPI2 FALSE +#define STM32_I2S_USE_SPI3 FALSE +#define STM32_I2S_SPI2_IRQ_PRIORITY 10 +#define STM32_I2S_SPI3_IRQ_PRIORITY 10 +#define STM32_I2S_SPI2_DMA_PRIORITY 1 +#define STM32_I2S_SPI3_DMA_PRIORITY 1 +#define STM32_I2S_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3) +#define STM32_I2S_SPI2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_I2S_SPI3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_I2S_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_I2S_DMA_ERROR_HOOK(i2sp) osalSysHalt("DMA failure") + +/* + * ICU driver system settings. + */ +#define STM32_ICU_USE_TIM1 FALSE +#define STM32_ICU_USE_TIM2 FALSE +#define STM32_ICU_USE_TIM3 FALSE +#define STM32_ICU_USE_TIM4 FALSE +#define STM32_ICU_USE_TIM5 FALSE +#define STM32_ICU_USE_TIM9 FALSE +#define STM32_ICU_USE_TIM10 FALSE +#define STM32_ICU_USE_TIM11 FALSE + +/* + * PWM driver system settings. + */ +#define STM32_PWM_USE_TIM1 FALSE +#define STM32_PWM_USE_TIM2 FALSE +#define STM32_PWM_USE_TIM3 FALSE +#define STM32_PWM_USE_TIM4 FALSE +#define STM32_PWM_USE_TIM5 FALSE +#define STM32_PWM_USE_TIM9 FALSE +#define STM32_PWM_USE_TIM10 FALSE +#define STM32_PWM_USE_TIM11 FALSE + +/* + * SERIAL driver system settings. + */ +#define STM32_SERIAL_USE_USART1 FALSE +#define STM32_SERIAL_USE_USART2 FALSE +#define STM32_SERIAL_USE_USART6 FALSE + +/* + * SPI driver system settings. + */ +#define STM32_SPI_USE_SPI1 FALSE +#define STM32_SPI_USE_SPI2 FALSE +#define STM32_SPI_USE_SPI3 FALSE +#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0) +#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) +#define STM32_SPI_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3) +#define STM32_SPI_SPI2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_SPI_SPI3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_SPI_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_SPI_SPI1_DMA_PRIORITY 1 +#define STM32_SPI_SPI2_DMA_PRIORITY 1 +#define STM32_SPI_SPI3_DMA_PRIORITY 1 +#define STM32_SPI_SPI1_IRQ_PRIORITY 10 +#define STM32_SPI_SPI2_IRQ_PRIORITY 10 +#define STM32_SPI_SPI3_IRQ_PRIORITY 10 +#define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure") + +/* + * ST driver system settings. + */ +#define STM32_ST_IRQ_PRIORITY 8 +#define STM32_ST_USE_TIMER 2 + +/* + * UART driver system settings. + */ +#define STM32_UART_USE_USART1 FALSE +#define STM32_UART_USE_USART2 FALSE +#define STM32_UART_USE_USART6 FALSE +#define STM32_UART_USART1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 5) +#define STM32_UART_USART1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) +#define STM32_UART_USART2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) +#define STM32_UART_USART2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) +#define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2) +#define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) +#define STM32_UART_USART1_DMA_PRIORITY 0 +#define STM32_UART_USART2_DMA_PRIORITY 0 +#define STM32_UART_USART6_DMA_PRIORITY 0 +#define STM32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure") + +/* + * USB driver system settings. + */ +#define STM32_USB_USE_OTG1 TRUE +#define STM32_USB_OTG1_IRQ_PRIORITY 14 +#define STM32_USB_OTG1_RX_FIFO_SIZE 512 +#define STM32_USB_HOST_WAKEUP_DURATION 2 + +/* + * WDG driver system settings. + */ +#define STM32_WDG_USE_IWDG FALSE + +#endif /* MCUCONF_H */ diff --git a/platforms/chibios/boards/GENERIC_STM32_F411XE/board/board.mk b/platforms/chibios/boards/GENERIC_STM32_F411XE/board/board.mk new file mode 100644 index 0000000000..bb00b1a2b0 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F411XE/board/board.mk @@ -0,0 +1,9 @@ +# List of all the board related files. +BOARDSRC = $(CHIBIOS)/os/hal/boards/ST_NUCLEO64_F411RE/board.c + +# Required include directories +BOARDINC = $(CHIBIOS)/os/hal/boards/ST_NUCLEO64_F411RE + +# Shared variables +ALLCSRC += $(BOARDSRC) +ALLINC += $(BOARDINC) diff --git a/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/board.h b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/board.h new file mode 100644 index 0000000000..30af6b0c86 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/board.h @@ -0,0 +1,20 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#include_next "board.h" + +#undef STM32_HSE_BYPASS diff --git a/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/config.h b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/config.h new file mode 100644 index 0000000000..e06ca0b725 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/config.h @@ -0,0 +1,22 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#define BOARD_OTG_NOVBUSSENS 1 + +#ifndef EARLY_INIT_PERFORM_BOOTLOADER_JUMP +# define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE +#endif diff --git a/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/mcuconf.h b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/mcuconf.h new file mode 100644 index 0000000000..e1d45ca487 --- /dev/null +++ b/platforms/chibios/boards/GENERIC_STM32_F411XE/configs/mcuconf.h @@ -0,0 +1,252 @@ +/* + ChibiOS - Copyright (C) 2006..2020 Giovanni Di Sirio + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +*/ + +#ifndef MCUCONF_H +#define MCUCONF_H + +/* + * STM32F4xx drivers configuration. + * The following settings override the default settings present in + * the various device driver implementation headers. + * Note that the settings for each driver only have effect if the whole + * driver is enabled in halconf.h. + * + * IRQ priorities: + * 15...0 Lowest...Highest. + * + * DMA priorities: + * 0...3 Lowest...Highest. + */ + +#define STM32F4xx_MCUCONF +#define STM32F411_MCUCONF + +/* + * HAL driver system settings. + */ +#define STM32_NO_INIT FALSE +#define STM32_PVD_ENABLE FALSE +#define STM32_PLS STM32_PLS_LEV0 +#define STM32_BKPRAM_ENABLE FALSE +#define STM32_HSI_ENABLED TRUE +#define STM32_LSI_ENABLED TRUE +#define STM32_HSE_ENABLED TRUE +#define STM32_LSE_ENABLED FALSE +#define STM32_CLOCK48_REQUIRED TRUE +#define STM32_SW STM32_SW_PLL +#define STM32_PLLSRC STM32_PLLSRC_HSE +#define STM32_PLLM_VALUE 4 +#define STM32_PLLN_VALUE 96 +#define STM32_PLLP_VALUE 2 +#define STM32_PLLQ_VALUE 4 +#define STM32_HPRE STM32_HPRE_DIV1 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV1 +#define STM32_RTCSEL STM32_RTCSEL_LSI +#define STM32_RTCPRE_VALUE 8 +#define STM32_MCO1SEL STM32_MCO1SEL_HSI +#define STM32_MCO1PRE STM32_MCO1PRE_DIV1 +#define STM32_MCO2SEL STM32_MCO2SEL_SYSCLK +#define STM32_MCO2PRE STM32_MCO2PRE_DIV5 +#define STM32_I2SSRC STM32_I2SSRC_CKIN +#define STM32_PLLI2SN_VALUE 192 +#define STM32_PLLI2SR_VALUE 5 + +/* + * IRQ system settings. + */ +#define STM32_IRQ_EXTI0_PRIORITY 6 +#define STM32_IRQ_EXTI1_PRIORITY 6 +#define STM32_IRQ_EXTI2_PRIORITY 6 +#define STM32_IRQ_EXTI3_PRIORITY 6 +#define STM32_IRQ_EXTI4_PRIORITY 6 +#define STM32_IRQ_EXTI5_9_PRIORITY 6 +#define STM32_IRQ_EXTI10_15_PRIORITY 6 +#define STM32_IRQ_EXTI16_PRIORITY 6 +#define STM32_IRQ_EXTI17_PRIORITY 15 +#define STM32_IRQ_EXTI18_PRIORITY 6 +#define STM32_IRQ_EXTI19_PRIORITY 6 +#define STM32_IRQ_EXTI20_PRIORITY 6 +#define STM32_IRQ_EXTI21_PRIORITY 15 +#define STM32_IRQ_EXTI22_PRIORITY 15 + +#define STM32_IRQ_TIM1_BRK_TIM9_PRIORITY 7 +#define STM32_IRQ_TIM1_UP_TIM10_PRIORITY 7 +#define STM32_IRQ_TIM1_TRGCO_TIM11_PRIORITY 7 +#define STM32_IRQ_TIM1_CC_PRIORITY 7 +#define STM32_IRQ_TIM2_PRIORITY 7 +#define STM32_IRQ_TIM3_PRIORITY 7 +#define STM32_IRQ_TIM4_PRIORITY 7 +#define STM32_IRQ_TIM5_PRIORITY 7 + +#define STM32_IRQ_USART1_PRIORITY 12 +#define STM32_IRQ_USART2_PRIORITY 12 +#define STM32_IRQ_USART6_PRIORITY 12 + +/* + * ADC driver system settings. + */ +#define STM32_ADC_ADCPRE ADC_CCR_ADCPRE_DIV4 +#define STM32_ADC_USE_ADC1 FALSE +#define STM32_ADC_ADC1_DMA_STREAM STM32_DMA_STREAM_ID(2, 4) +#define STM32_ADC_ADC1_DMA_PRIORITY 2 +#define STM32_ADC_IRQ_PRIORITY 6 +#define STM32_ADC_ADC1_DMA_IRQ_PRIORITY 6 + +/* + * GPT driver system settings. + */ +#define STM32_GPT_USE_TIM1 FALSE +#define STM32_GPT_USE_TIM2 FALSE +#define STM32_GPT_USE_TIM3 FALSE +#define STM32_GPT_USE_TIM4 FALSE +#define STM32_GPT_USE_TIM5 FALSE +#define STM32_GPT_USE_TIM9 FALSE +#define STM32_GPT_USE_TIM10 FALSE +#define STM32_GPT_USE_TIM11 FALSE + +/* + * I2C driver system settings. + */ +#define STM32_I2C_USE_I2C1 FALSE +#define STM32_I2C_USE_I2C2 FALSE +#define STM32_I2C_USE_I2C3 FALSE +#define STM32_I2C_BUSY_TIMEOUT 50 +#define STM32_I2C_I2C1_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_I2C_I2C1_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) +#define STM32_I2C_I2C2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 2) +#define STM32_I2C_I2C2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_I2C_I2C3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 2) +#define STM32_I2C_I2C3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_I2C_I2C1_IRQ_PRIORITY 5 +#define STM32_I2C_I2C2_IRQ_PRIORITY 5 +#define STM32_I2C_I2C3_IRQ_PRIORITY 5 +#define STM32_I2C_I2C1_DMA_PRIORITY 3 +#define STM32_I2C_I2C2_DMA_PRIORITY 3 +#define STM32_I2C_I2C3_DMA_PRIORITY 3 +#define STM32_I2C_DMA_ERROR_HOOK(i2cp) osalSysHalt("DMA failure") + +/* + * I2S driver system settings. + */ +#define STM32_I2S_USE_SPI2 FALSE +#define STM32_I2S_USE_SPI3 FALSE +#define STM32_I2S_SPI2_IRQ_PRIORITY 10 +#define STM32_I2S_SPI3_IRQ_PRIORITY 10 +#define STM32_I2S_SPI2_DMA_PRIORITY 1 +#define STM32_I2S_SPI3_DMA_PRIORITY 1 +#define STM32_I2S_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3) +#define STM32_I2S_SPI2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_I2S_SPI3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_I2S_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_I2S_DMA_ERROR_HOOK(i2sp) osalSysHalt("DMA failure") + +/* + * ICU driver system settings. + */ +#define STM32_ICU_USE_TIM1 FALSE +#define STM32_ICU_USE_TIM2 FALSE +#define STM32_ICU_USE_TIM3 FALSE +#define STM32_ICU_USE_TIM4 FALSE +#define STM32_ICU_USE_TIM5 FALSE +#define STM32_ICU_USE_TIM9 FALSE +#define STM32_ICU_USE_TIM10 FALSE +#define STM32_ICU_USE_TIM11 FALSE + +/* + * PWM driver system settings. + */ +#define STM32_PWM_USE_TIM1 FALSE +#define STM32_PWM_USE_TIM2 FALSE +#define STM32_PWM_USE_TIM3 FALSE +#define STM32_PWM_USE_TIM4 FALSE +#define STM32_PWM_USE_TIM5 FALSE +#define STM32_PWM_USE_TIM9 FALSE +#define STM32_PWM_USE_TIM10 FALSE +#define STM32_PWM_USE_TIM11 FALSE + +/* + * RTC driver system settings. + */ +#define STM32_RTC_PRESA_VALUE 32 +#define STM32_RTC_PRESS_VALUE 1024 +#define STM32_RTC_CR_INIT 0 +#define STM32_RTC_TAMPCR_INIT 0 + +/* + * SERIAL driver system settings. + */ +#define STM32_SERIAL_USE_USART1 FALSE +#define STM32_SERIAL_USE_USART2 FALSE +#define STM32_SERIAL_USE_USART6 FALSE + +/* + * SPI driver system settings. + */ +#define STM32_SPI_USE_SPI1 FALSE +#define STM32_SPI_USE_SPI2 FALSE +#define STM32_SPI_USE_SPI3 FALSE +#define STM32_SPI_SPI1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 0) +#define STM32_SPI_SPI1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 3) +#define STM32_SPI_SPI2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 3) +#define STM32_SPI_SPI2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) +#define STM32_SPI_SPI3_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 0) +#define STM32_SPI_SPI3_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 7) +#define STM32_SPI_SPI1_DMA_PRIORITY 1 +#define STM32_SPI_SPI2_DMA_PRIORITY 1 +#define STM32_SPI_SPI3_DMA_PRIORITY 1 +#define STM32_SPI_SPI1_IRQ_PRIORITY 10 +#define STM32_SPI_SPI2_IRQ_PRIORITY 10 +#define STM32_SPI_SPI3_IRQ_PRIORITY 10 +#define STM32_SPI_DMA_ERROR_HOOK(spip) osalSysHalt("DMA failure") + +/* + * ST driver system settings. + */ +#define STM32_ST_IRQ_PRIORITY 8 +#define STM32_ST_USE_TIMER 2 + +/* + * UART driver system settings. + */ +#define STM32_UART_USE_USART1 FALSE +#define STM32_UART_USE_USART2 FALSE +#define STM32_UART_USE_USART6 FALSE +#define STM32_UART_USART1_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 5) +#define STM32_UART_USART1_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) +#define STM32_UART_USART2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) +#define STM32_UART_USART2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 6) +#define STM32_UART_USART6_RX_DMA_STREAM STM32_DMA_STREAM_ID(2, 2) +#define STM32_UART_USART6_TX_DMA_STREAM STM32_DMA_STREAM_ID(2, 7) +#define STM32_UART_USART1_DMA_PRIORITY 0 +#define STM32_UART_USART2_DMA_PRIORITY 0 +#define STM32_UART_USART6_DMA_PRIORITY 0 +#define STM32_UART_DMA_ERROR_HOOK(uartp) osalSysHalt("DMA failure") + +/* + * USB driver system settings. + */ +#define STM32_USB_USE_OTG1 TRUE +#define STM32_USB_OTG1_IRQ_PRIORITY 14 +#define STM32_USB_OTG1_RX_FIFO_SIZE 512 +#define STM32_USB_HOST_WAKEUP_DURATION 2 + +/* + * WDG driver system settings. + */ +#define STM32_WDG_USE_IWDG FALSE + +#endif /* MCUCONF_H */ diff --git a/platforms/chibios/boards/BLACKPILL_STM32_F401/ld/STM32F401xC_tinyuf2.ld b/platforms/chibios/boards/common/ld/STM32F401xC_tinyuf2.ld similarity index 100% rename from platforms/chibios/boards/BLACKPILL_STM32_F401/ld/STM32F401xC_tinyuf2.ld rename to platforms/chibios/boards/common/ld/STM32F401xC_tinyuf2.ld diff --git a/platforms/chibios/boards/BLACKPILL_STM32_F401/ld/STM32F401xE_tinyuf2.ld b/platforms/chibios/boards/common/ld/STM32F401xE_tinyuf2.ld similarity index 100% rename from platforms/chibios/boards/BLACKPILL_STM32_F401/ld/STM32F401xE_tinyuf2.ld rename to platforms/chibios/boards/common/ld/STM32F401xE_tinyuf2.ld diff --git a/platforms/chibios/boards/BLACKPILL_STM32_F411/ld/STM32F411xC_tinyuf2.ld b/platforms/chibios/boards/common/ld/STM32F411xC_tinyuf2.ld similarity index 100% rename from platforms/chibios/boards/BLACKPILL_STM32_F411/ld/STM32F411xC_tinyuf2.ld rename to platforms/chibios/boards/common/ld/STM32F411xC_tinyuf2.ld diff --git a/platforms/chibios/boards/BLACKPILL_STM32_F411/ld/STM32F411xE_tinyuf2.ld b/platforms/chibios/boards/common/ld/STM32F411xE_tinyuf2.ld similarity index 100% rename from platforms/chibios/boards/BLACKPILL_STM32_F411/ld/STM32F411xE_tinyuf2.ld rename to platforms/chibios/boards/common/ld/STM32F411xE_tinyuf2.ld From d508988916cb47dcdeedd0167a48ab99ca202417 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 6 Apr 2022 03:06:27 -0700 Subject: [PATCH 207/699] QK65 Hotswap Community Layout Support (#16793) * qk65 hotswap: Community Layout support - renames `LAYOUT_hotswap` to `LAYOUT_65_ansi_blocker` - adds Community Layouts rule to `rules.mk` * refactor keymaps Edits the keymaps to align the keycodes in a grid. Whitespace-only change. --- keyboards/qwertykeys/qk65/hotswap/hotswap.h | 2 +- keyboards/qwertykeys/qk65/hotswap/info.json | 7 ++- .../qk65/hotswap/keymaps/default/keymap.c | 60 +++++++++---------- .../qk65/hotswap/keymaps/via/keymap.c | 60 +++++++++---------- keyboards/qwertykeys/qk65/hotswap/rules.mk | 4 +- 5 files changed, 69 insertions(+), 64 deletions(-) diff --git a/keyboards/qwertykeys/qk65/hotswap/hotswap.h b/keyboards/qwertykeys/qk65/hotswap/hotswap.h index 334ce82277..daa7ffd5f3 100644 --- a/keyboards/qwertykeys/qk65/hotswap/hotswap.h +++ b/keyboards/qwertykeys/qk65/hotswap/hotswap.h @@ -18,7 +18,7 @@ along with this program. If not, see . #pragma once #include "quantum.h" -#define LAYOUT_hotswap( \ +#define LAYOUT_65_ansi_blocker( \ K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, \ diff --git a/keyboards/qwertykeys/qk65/hotswap/info.json b/keyboards/qwertykeys/qk65/hotswap/info.json index 2848a3f5e8..21d30bd491 100644 --- a/keyboards/qwertykeys/qk65/hotswap/info.json +++ b/keyboards/qwertykeys/qk65/hotswap/info.json @@ -2,8 +2,11 @@ "keyboard_name": "qk65", "url": "", "maintainer": "qwertykeys", + "layout_aliases": { + "LAYOUT_hotswap": "LAYOUT_65_ansi_blocker" + }, "layouts": { - "LAYOUT_hotswap": { + "LAYOUT_65_ansi_blocker": { "layout": [ {"x":0, "y":0}, {"x":1, "y":0}, @@ -75,4 +78,4 @@ ] } } -} \ No newline at end of file +} diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c index 4c9960f29e..86799d7617 100644 --- a/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c @@ -1,4 +1,4 @@ -/* +/* Copyright 2022 qwertykeys This program is free software: you can redistribute it and/or modify @@ -19,36 +19,36 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_hotswap( - 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_BSPC, 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_BSLS, KC_PGUP, - 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_PGDN, - 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(1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = LAYOUT_65_ansi_blocker( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), - [1] = LAYOUT_hotswap( - KC_GRV, 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, RESET, - 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_HOME, - 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_END, - 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 - ), + [1] = LAYOUT_65_ansi_blocker( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), - [2] = LAYOUT_hotswap( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS - ), + [2] = LAYOUT_65_ansi_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ), - [3] = LAYOUT_hotswap( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS - ) + [3] = LAYOUT_65_ansi_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ) -}; \ No newline at end of file +}; diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c index ca81553007..67f5d38908 100644 --- a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c @@ -1,4 +1,4 @@ -/* +/* Copyright 2022 qwertykeys This program is free software: you can redistribute it and/or modify @@ -19,36 +19,36 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_hotswap( - 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_BSPC, 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_BSLS, KC_PGUP, - 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_PGDN, - 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(1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = LAYOUT_65_ansi_blocker( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), - [1] = LAYOUT_hotswap( - KC_GRV, 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, RESET, - 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_HOME, - 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_END, - 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 - ), + [1] = LAYOUT_65_ansi_blocker( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), - [2] = LAYOUT_hotswap( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS - ), + [2] = LAYOUT_65_ansi_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ), - [3] = LAYOUT_hotswap( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS - ) + [3] = LAYOUT_65_ansi_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS + ) -}; \ No newline at end of file +}; diff --git a/keyboards/qwertykeys/qk65/hotswap/rules.mk b/keyboards/qwertykeys/qk65/hotswap/rules.mk index f9417ae2bf..22b16cb763 100644 --- a/keyboards/qwertykeys/qk65/hotswap/rules.mk +++ b/keyboards/qwertykeys/qk65/hotswap/rules.mk @@ -15,4 +15,6 @@ COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output \ No newline at end of file +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker From 4a729a7be5ac52e1997d02f74e7173256ed03b93 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 6 Apr 2022 03:13:05 -0700 Subject: [PATCH 208/699] QK65 Solder Community Layout Support (#16796) * refactor solder.h - use QMK 3-character notation - convert tabs to spaces * solder.h: add matrix diagram * rename LAYOUT_solder to LAYOUT_all * rename LAYOUT_iso to LAYOUT_65_iso_blocker Also adds Community Layouts rule to `rules.mk`. * info.json: improve formatting - convert tabs to spaces - format file to four-space indent * refactor keymaps - convert tabs to spaces - update grid alignment of keycodes - remove trailing whitespace * add LAYOUT_65_ansi_blocker * add LAYOUT_65_ansi_blocker_split_bs * add LAYOUT_65_iso_blocker_split_bs * add LAYOUT_65_ansi_blocker_tsangan * add LAYOUT_65_iso_blocker_tsangan * add LAYOUT_65_ansi_blocker_tsangan_split_bs * add LAYOUT_65_iso_blocker_tsangan_split_bs * remove 65_ansi_blocker_tsangan_split_bs from `LAYOUTS` rule --- keyboards/qwertykeys/qk65/solder/info.json | 552 +++++++++++++++++- .../qk65/solder/keymaps/default/keymap.c | 59 +- .../qk65/solder/keymaps/via/keymap.c | 59 +- keyboards/qwertykeys/qk65/solder/rules.mk | 4 +- keyboards/qwertykeys/qk65/solder/solder.h | 165 +++++- 5 files changed, 749 insertions(+), 90 deletions(-) diff --git a/keyboards/qwertykeys/qk65/solder/info.json b/keyboards/qwertykeys/qk65/solder/info.json index 2251813623..53c5179f42 100644 --- a/keyboards/qwertykeys/qk65/solder/info.json +++ b/keyboards/qwertykeys/qk65/solder/info.json @@ -2,8 +2,12 @@ "keyboard_name": "qk65", "url": "", "maintainer": "qwertykeys", + "layout_aliases": { + "LAYOUT_solder": "LAYOUT_all", + "LAYOUT_iso": "LAYOUT_65_iso_blocker" + }, "layouts": { - "LAYOUT_solder": { + "LAYOUT_all": { "layout": [ {"x":0, "y":0}, {"x":1, "y":0}, @@ -21,6 +25,7 @@ {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, + {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, @@ -36,6 +41,7 @@ {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, + {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, @@ -50,6 +56,7 @@ {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, + {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, @@ -65,6 +72,7 @@ {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, + {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, @@ -72,11 +80,11 @@ {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, - {"x":14, "y":4}, + {"x":14, "y":4}, {"x":15, "y":4} ] }, - "LAYOUT_iso": { + "LAYOUT_65_ansi_blocker": { "layout": [ {"x":0, "y":0}, {"x":1, "y":0}, @@ -93,6 +101,307 @@ {"x":12, "y":0}, {"x":13, "y":0, "w":2}, {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":13.5, "y":1, "w":1.5}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2, "w":2.25}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":2.25}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, @@ -107,6 +416,7 @@ {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":15, "y":1}, + {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, @@ -122,6 +432,7 @@ {"x":12.75, "y":2}, {"x":13.75, "y":1, "w":1.25, "h":2}, {"x":15, "y":2}, + {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, @@ -137,6 +448,7 @@ {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, + {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, @@ -144,9 +456,237 @@ {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, - {"x":14, "y":4}, + {"x":14, "y":4}, {"x":15, "y":4} ] - } + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4, "w":1.25}, + {"x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"x":10, "y":4, "w":1.25}, + {"x":11.25, "y":4, "w":1.25}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0, "w":2}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan_split_bs": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6, "y":0}, + {"x":7, "y":0}, + {"x":8, "y":0}, + {"x":9, "y":0}, + {"x":10, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15, "y":0}, + + {"x":0, "y":1, "w":1.5}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":3.5, "y":1}, + {"x":4.5, "y":1}, + {"x":5.5, "y":1}, + {"x":6.5, "y":1}, + {"x":7.5, "y":1}, + {"x":8.5, "y":1}, + {"x":9.5, "y":1}, + {"x":10.5, "y":1}, + {"x":11.5, "y":1}, + {"x":12.5, "y":1}, + {"x":15, "y":1}, + + {"x":0, "y":2, "w":1.75}, + {"x":1.75, "y":2}, + {"x":2.75, "y":2}, + {"x":3.75, "y":2}, + {"x":4.75, "y":2}, + {"x":5.75, "y":2}, + {"x":6.75, "y":2}, + {"x":7.75, "y":2}, + {"x":8.75, "y":2}, + {"x":9.75, "y":2}, + {"x":10.75, "y":2}, + {"x":11.75, "y":2}, + {"x":12.75, "y":2}, + {"x":13.75, "y":1, "w":1.25, "h":2}, + {"x":15, "y":2}, + + {"x":0, "y":3, "w":1.25}, + {"x":1.25, "y":3}, + {"x":2.25, "y":3}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3}, + {"x":5.25, "y":3}, + {"x":6.25, "y":3}, + {"x":7.25, "y":3}, + {"x":8.25, "y":3}, + {"x":9.25, "y":3}, + {"x":10.25, "y":3}, + {"x":11.25, "y":3}, + {"x":12.25, "y":3, "w":1.75}, + {"x":14, "y":3}, + {"x":15, "y":3}, + + {"x":0, "y":4, "w":1.5}, + {"x":1.5, "y":4}, + {"x":2.5, "y":4, "w":1.5}, + {"x":4, "y":4, "w":7}, + {"x":11, "y":4, "w":1.5}, + {"x":13, "y":4}, + {"x":14, "y":4}, + {"x":15, "y":4} + ] + } } -} \ No newline at end of file +} diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c index 8d52b17d2a..ea9b36136f 100644 --- a/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c +++ b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c @@ -1,4 +1,4 @@ -/* +/* Copyright 2022 qwertykeys This program is free software: you can redistribute it and/or modify @@ -19,35 +19,36 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_iso( - 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_BSPC, 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_PGUP, - 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_BSLS, KC_ENT, KC_PGDN, - KC_LSFT, KC_BSLS, 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(1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = LAYOUT_65_iso_blocker( + 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_BSPC, 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_PGUP, + 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_BSLS, KC_ENT, KC_PGDN, + KC_LSFT, KC_BSLS, 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), - [1] = LAYOUT_iso( - KC_GRV, 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, RESET, - 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_HOME, - 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_END, - 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 - ), + [1] = LAYOUT_65_iso_blocker( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), - [2] = LAYOUT_iso( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), + [2] = LAYOUT_65_iso_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_65_iso_blocker( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) - [3] = LAYOUT_iso( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ) }; diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c index 88afc5984b..c1059821b1 100644 --- a/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c +++ b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c @@ -1,4 +1,4 @@ -/* +/* Copyright 2022 qwertykeys This program is free software: you can redistribute it and/or modify @@ -19,35 +19,36 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_solder( - 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_BSPC, 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_BSLS, KC_PGUP, - 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_PGDN, - KC_LSFT, KC_BSLS, 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(1), - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = LAYOUT_all( + 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_BSPC, 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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_BSLS, 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(1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), - [1] = LAYOUT_solder( - KC_GRV, 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, RESET, - 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_HOME, - 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_END, - 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 - ), + [1] = LAYOUT_all( + KC_GRV, 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, RESET, + 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_HOME, + 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_END, + 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 + ), - [2] = LAYOUT_solder( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) - [3] = LAYOUT_solder( - 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ) }; diff --git a/keyboards/qwertykeys/qk65/solder/rules.mk b/keyboards/qwertykeys/qk65/solder/rules.mk index f9417ae2bf..ac453b785b 100644 --- a/keyboards/qwertykeys/qk65/solder/rules.mk +++ b/keyboards/qwertykeys/qk65/solder/rules.mk @@ -15,4 +15,6 @@ COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output \ No newline at end of file +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi_blocker 65_ansi_blocker_split_bs 65_ansi_blocker_tsangan 65_iso_blocker 65_iso_blocker_split_bs diff --git a/keyboards/qwertykeys/qk65/solder/solder.h b/keyboards/qwertykeys/qk65/solder/solder.h index b796ae1e91..418bf45edd 100644 --- a/keyboards/qwertykeys/qk65/solder/solder.h +++ b/keyboards/qwertykeys/qk65/solder/solder.h @@ -1,4 +1,4 @@ -/* +/* Copyright 2022 qwertykeys This program is free software: you can redistribute it and/or modify @@ -16,35 +16,150 @@ along with this program. If not, see . */ #pragma once + #include "quantum.h" -#define LAYOUT_solder( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K113, K013, K014, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K212, K114, \ - K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214, \ - K300, K312, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ - K400, K401, K402, K404, K407, K408, K412, K413, K414 \ +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │1D │0D │0E │ │0D │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐2D │ ISO Enter + * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │2E │ │2C │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ └───┴────┘ + * │30 │ │30 │3C │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D │3E │ + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │44 │47 │48 │ │4C │4D │4E │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │40 │41 │42 │44 │48 │ Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ + */ + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K3C, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K47, K48, K4C, K4D, K4E \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \ - { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ - { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \ - { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, K47, K48, ___, ___, ___, K4C, K4D, K4E } \ } - - -#define LAYOUT_iso( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, \ - K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, \ - K300, K312, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, \ - K400, K401, K402, K404, K407, K408, K412, K413, K414 \ +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K47, K48, K4C, K4D, K4E \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114 }, \ - { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ - { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314 }, \ - { K400, K401, K402, KC_NO, K404, KC_NO, KC_NO, K407, K408, KC_NO, KC_NO, KC_NO, K412, K413, K414 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, K47, K48, ___, ___, ___, K4C, K4D, K4E } \ } +#define LAYOUT_65_ansi_blocker_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K47, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, K47, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, ___, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_ansi_blocker_tsangan_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, ___, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, ___, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_iso_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K3C, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K47, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, K47, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K3C, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K47, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, K47, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_iso_blocker_tsangan( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K3C, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, ___, K48, ___, ___, ___, K4C, K4D, K4E } \ +} + +#define LAYOUT_65_iso_blocker_tsangan_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K1D, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K3C, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K44, K48, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, K44, ___, ___, ___, K48, ___, ___, ___, K4C, K4D, K4E } \ +} From d8707164578790e7b4aed9767431013b6ded40cb Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 6 Apr 2022 15:46:13 +0100 Subject: [PATCH 209/699] Add bluepill/blackpill development board presets (#16806) --- data/mappings/defaults.json | 15 +++++++++++++++ data/schemas/keyboard.jsonschema | 2 +- 2 files changed, 16 insertions(+), 1 deletion(-) diff --git a/data/mappings/defaults.json b/data/mappings/defaults.json index 3d3d915c0e..e62ab688d6 100644 --- a/data/mappings/defaults.json +++ b/data/mappings/defaults.json @@ -15,6 +15,21 @@ "bootloader": "stm32-dfu", "board": "QMK_PROTON_C", "pin_compatible": "promicro" + }, + "bluepill": { + "processor": "STM32F103", + "bootloader": "stm32duino", + "board": "STM32_F103_STM32DUINO" + }, + "blackpill_f401": { + "processor": "STM32F401", + "bootloader": "stm32-dfu", + "board": "BLACKPILL_STM32_F401" + }, + "blackpill_f411": { + "processor": "STM32F411", + "bootloader": "stm32-dfu", + "board": "BLACKPILL_STM32_F411" } } } \ No newline at end of file diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 9af3ef5981..68a02420a4 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -14,7 +14,7 @@ }, "development_board": { "type": "string", - "enum": ["promicro", "elite_c", "proton_c"] + "enum": ["promicro", "elite_c", "proton_c", "bluepill", "blackpill_f401", "blackpill_f411"] }, "pin_compatible": { "type": "string", From 85de02057344fe48c9b88f43260165da100ecca7 Mon Sep 17 00:00:00 2001 From: Erovia Date: Wed, 6 Apr 2022 19:46:16 +0100 Subject: [PATCH 210/699] CLI: Bump the 'jsonschema' version (#16635) * CLI: Bump the 'jsonschema' version Update the used meta-schema from Draft 7 from 2018 to the latest one, Draft 2020-12. Currently, the validator falls back to Draft 7 if the newer validator is not available. Draft 2020-12 support was introduced to 'jsonschema' in version 4.0.0. * Fix formatting --- lib/python/qmk/json_schema.py | 6 +++++- requirements.txt | 2 +- 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/python/qmk/json_schema.py b/lib/python/qmk/json_schema.py index 2b48782fbb..682346113e 100644 --- a/lib/python/qmk/json_schema.py +++ b/lib/python/qmk/json_schema.py @@ -68,7 +68,11 @@ def create_validator(schema): schema_store = compile_schema_store() resolver = jsonschema.RefResolver.from_schema(schema_store[schema], store=schema_store) - return jsonschema.Draft7Validator(schema_store[schema], resolver=resolver).validate + # TODO: Remove this after the jsonschema>=4 requirement had time to reach users + try: + return jsonschema.Draft202012Validator(schema_store[schema], resolver=resolver).validate + except AttributeError: + return jsonschema.Draft7Validator(schema_store[schema], resolver=resolver).validate def validate(data, schema): diff --git a/requirements.txt b/requirements.txt index 92381d7d51..6d338ae1cb 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ argcomplete colorama hid hjson -jsonschema>=3 +jsonschema>=4 milc>=1.4.2 pygments pyusb From fa978542e9d0250e7b65d29a6c598d40594b1f1d Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 6 Apr 2022 14:00:59 -0700 Subject: [PATCH 211/699] Sandwich Keeb68 Layout Macro Rework and Configurator Data (#16803) * keeb68.h: use QMK 3-character notation * physically arrange layout macro Moves the keycodes for Equals and Right Bracket to their proper places on the Number and Tab rows, respectively. Also refactors the keymaps to use QMK-native keycode aliases, grid alignment, and four-space indent. * move `keymaps/grv_esc/readme.md` to `keymaps/default/` The file contents say "default keymap". * enable Community Layouts support * add QMK Configurator data * touch-up `rules.mk` --- keyboards/sandwich/keeb68/info.json | 83 +++++++++++++++++++ keyboards/sandwich/keeb68/keeb68.h | 23 ++--- .../sandwich/keeb68/keymaps/default/keymap.c | 22 +++-- .../keymaps/{grv_esc => default}/readme.md | 0 .../sandwich/keeb68/keymaps/grv_esc/keymap.c | 22 +++-- keyboards/sandwich/keeb68/rules.mk | 6 +- 6 files changed, 119 insertions(+), 37 deletions(-) create mode 100644 keyboards/sandwich/keeb68/info.json rename keyboards/sandwich/keeb68/keymaps/{grv_esc => default}/readme.md (100%) diff --git a/keyboards/sandwich/keeb68/info.json b/keyboards/sandwich/keeb68/info.json new file mode 100644 index 0000000000..c6b5cb4f53 --- /dev/null +++ b/keyboards/sandwich/keeb68/info.json @@ -0,0 +1,83 @@ +{ + "keyboard_name": "Keeb68 (PSE)", + "url": "", + "maintainer": "SandwichRising", + "layouts": { + "LAYOUT_65_ansi": { + "layout": [ + {"label":"ESC", "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}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"~", "x":15, "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":"DEL", "x":15, "y":1}, + + {"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":"PG UP", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PG DN", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4}, + {"label":"Fn", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + } +} diff --git a/keyboards/sandwich/keeb68/keeb68.h b/keyboards/sandwich/keeb68/keeb68.h index 10182dd9a1..fd5510cc3f 100644 --- a/keyboards/sandwich/keeb68/keeb68.h +++ b/keyboards/sandwich/keeb68/keeb68.h @@ -18,6 +18,8 @@ #include "quantum.h" +#define ___ KC_NO + /* This is a shortcut to help you visually see your layout. * * The first section contains all of the arguments representing the physical @@ -27,16 +29,15 @@ * represents the switch matrix. */ #define LAYOUT_65_ansi( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \ - K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, \ - K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ - K400, K401, K402, K405, K406, K407, K408, K409, K410, K411, K412, K413 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K46, K0C, K0D, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K47, K1C, K1D, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K45, K48, K49, K4A, K4B, K4C, K4D \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113 }, \ - { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213 }, \ - { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313 }, \ - { K400, K401, K402, KC_NO , KC_NO , K405 , K406, K407, K408, K409, K410, K411, K412, K413 } \ + { 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, K2D }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \ + { K40, K41, K42, ___, ___, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D } \ } - diff --git a/keyboards/sandwich/keeb68/keymaps/default/keymap.c b/keyboards/sandwich/keeb68/keymaps/default/keymap.c index ce08cceabf..4c20b53e81 100644 --- a/keyboards/sandwich/keeb68/keymaps/default/keymap.c +++ b/keyboards/sandwich/keeb68/keymaps/default/keymap.c @@ -24,19 +24,17 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT_65_ansi( - 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_BSPC, KC_GRV, - 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_BSLS, KC_DEL, - 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_PGUP, - 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, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_EQL, KC_RBRC,KC_RALT,MO(_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - + 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_BSPC, KC_GRV, + 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, KC_DEL, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_DEL, KC_PSCREEN, - _______, _______, BL_INC, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______, KC_PAUSE, - _______, BL_TOGG, BL_DEC, BL_BRTG,_______,_______,_______,_______,_______,_______,_______,_______, _______, KC_HOME, - _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______, KC_VOLU, KC_END, - _______, RESET, _______, _______,KC_F12, _______,_______,MO(_FN),_______,_______, KC_VOLD, _______ - + _______, 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_PSCR, + _______, _______, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS, + _______, BL_TOGG, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_END, + _______, RESET, _______, _______, _______, MO(_FN), _______, _______, KC_VOLD, _______ ) }; diff --git a/keyboards/sandwich/keeb68/keymaps/grv_esc/readme.md b/keyboards/sandwich/keeb68/keymaps/default/readme.md similarity index 100% rename from keyboards/sandwich/keeb68/keymaps/grv_esc/readme.md rename to keyboards/sandwich/keeb68/keymaps/default/readme.md diff --git a/keyboards/sandwich/keeb68/keymaps/grv_esc/keymap.c b/keyboards/sandwich/keeb68/keymaps/grv_esc/keymap.c index b7853b3c31..eb5452a7c4 100644 --- a/keyboards/sandwich/keeb68/keymaps/grv_esc/keymap.c +++ b/keyboards/sandwich/keeb68/keymaps/grv_esc/keymap.c @@ -24,19 +24,17 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT_65_ansi( - KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, KC_INS, - 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_BSLS, KC_DEL, - 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_PGUP, - 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, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_EQL, KC_RBRC,KC_RALT,MO(_FN),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - + KC_GESC, 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_INS, + 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, KC_DEL, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_DEL, KC_PSCREEN, - _______, _______, BL_INC, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______, KC_PAUSE, - _______, BL_TOGG, BL_DEC, BL_BRTG,_______,_______,_______,_______,_______,_______,_______,_______, _______, KC_HOME, - _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______, KC_VOLU, KC_END, - _______, RESET, _______, _______,KC_F12, _______,_______,MO(_FN),_______,_______, KC_VOLD, _______ - + _______, 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_PSCR, + _______, _______, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS, + _______, BL_TOGG, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_END, + _______, RESET, _______, _______, _______, MO(_FN), _______, _______, KC_VOLD, _______ ) }; diff --git a/keyboards/sandwich/keeb68/rules.mk b/keyboards/sandwich/keeb68/rules.mk index ba835590bb..bb1e6634d9 100644 --- a/keyboards/sandwich/keeb68/rules.mk +++ b/keyboards/sandwich/keeb68/rules.mk @@ -12,7 +12,9 @@ MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = yes # Enable N-Key Rollover -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi From d198d7924d5c881c6ce296e794990e479182db15 Mon Sep 17 00:00:00 2001 From: Laneware <68452738+Laneware@users.noreply.github.com> Date: Thu, 7 Apr 2022 15:19:24 +1000 Subject: [PATCH 212/699] Update LW-67 info.json (#16788) * Update info.json Fixed: -ISO Enter Position -Up Arrow Position -PgDn Position Cause of Error: -Keyboard Layout Editor Places Iso Enter on R1 Rather Than R2 like the ANSI Enter * Update info.json Fixed Compile Error to Previous Change * Update keyboards/lw67/info.json --- keyboards/lw67/info.json | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/lw67/info.json b/keyboards/lw67/info.json index 6bccc7bce3..ad15cc2264 100644 --- a/keyboards/lw67/info.json +++ b/keyboards/lw67/info.json @@ -4,19 +4,19 @@ "maintainer": "qmk", "layouts":{ "LAYOUT_ansi":{ - "layout": [{"label":"Esc", "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Mute", "x":16, "y":0.5}, {"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":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"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":2.75}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] + "layout": [{"label":"Esc", "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Mute", "x":16, "y":0.5}, {"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":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"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":2.75}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] }, "LAYOUT_ansi_splitbs": { - "layout": [{"label":"Esc", "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}, {"label":"~", "x":13, "y":0}, {"label":"Backspace", "x":14, "y":0}, {"label":"Mute", "x":16, "y":0.5}, {"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":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"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":2.75}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] + "layout": [{"label":"Esc", "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}, {"label":"~", "x":13, "y":0}, {"label":"Backspace", "x":14, "y":0}, {"label":"Mute", "x":16, "y":0.5}, {"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":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"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":2.75}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] }, "LAYOUT_iso": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Mute", "x":16, "y":0.5}, {"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":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"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":"~", "x":12.75, "y":2}, {"label":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"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":2.75}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Mute", "x":16, "y":0.5}, {"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":"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":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"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":2.75}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] }, "LAYOUT_iso_splitbs": { - "layout": [{"label":"Esc", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"\"", "x":2, "y":1.5}, {"label":"\u00a3", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":7, "y":1.5}, {"label":"*", "x":8, "y":1.5}, {"label":"(", "x":9, "y":1.5}, {"label":")", "x":10, "y":1.5}, {"label":"_", "x":11, "y":1.5}, {"label":"+", "x":12, "y":1.5}, {"label":"\u00ac", "x":13, "y":1.5}, {"label":"Backspace", "x":14, "y":1.5}, {"label":"Mute", "x":16, "y":2}, {"label":"Tab", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":6.5, "y":2.5}, {"label":"U", "x":7.5, "y":2.5}, {"label":"I", "x":8.5, "y":2.5}, {"label":"O", "x":9.5, "y":2.5}, {"label":"P", "x":10.5, "y":2.5}, {"label":"{", "x":11.5, "y":2.5}, {"label":"}", "x":12.5, "y":2.5}, {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":6.75, "y":3.5}, {"label":"J", "x":7.75, "y":3.5}, {"label":"K", "x":8.75, "y":3.5}, {"label":"L", "x":9.75, "y":3.5}, {"label":":", "x":10.75, "y":3.5}, {"label":"@", "x":11.75, "y":3.5}, {"label":"~", "x":12.75, "y":3.5}, {"label":"Delete", "x":15.5, "y":3.5}, {"label":"PgUp", "x":16.5, "y":3.5}, {"label":"Shift", "x":0, "y":4.5, "w":1.25}, {"label":"|", "x":1.25, "y":4.5}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":7.25, "y":4.5}, {"label":"M", "x":8.25, "y":4.5}, {"label":"<", "x":9.25, "y":4.5}, {"label":">", "x":10.25, "y":4.5}, {"label":"?", "x":11.25, "y":4.5}, {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, {"label":"PgDn", "x":16.5, "y":4.5}, {"label":"\u2191", "x":15.25, "y":4.75}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, {"label":"Win", "x":1.25, "y":5.5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, {"x":3.75, "y":5.5, "w":6.25}, {"label":"AltGr", "x":10, "y":5.5, "w":1.25}, {"label":"Win", "x":11.25, "y":5.5, "w":1.25}, {"label":"Menu", "x":12.5, "y":5.5, "w":1.25}, {"label":"\u2190", "x":14.25, "y":5.75}, {"label":"\u2193", "x":15.25, "y":5.75}, {"label":"\u2192", "x":16.25, "y":5.75}] + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"!", "x":1, "y":0}, {"label":"\"", "x":2, "y":0}, {"label":"\u00a3", "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}, {"label":"\u00ac", "x":13, "y":0}, {"label":"Backspace", "x":14, "y":0}, {"label":"Mute", "x":16, "y":0.5}, {"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":"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":"~", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, {"label":"Delete", "x":15.5, "y":2}, {"label":"PgUp", "x":16.5, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"|", "x":1.25, "y":3}, {"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":2.75}, {"label":"\u2191", "x":15.25, "y":3.25}, {"label":"PgDn", "x":16.5, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"AltGr", "x":10, "y":4, "w":1.25}, {"label":"Win", "x":11.25, "y":4, "w":1.25}, {"label":"Menu", "x":12.5, "y":4, "w":1.25}, {"label":"\u2190", "x":14.25, "y":4.25}, {"label":"\u2193", "x":15.25, "y":4.25}, {"label":"\u2192", "x":16.25, "y":4.25}] } - } + } } From f4c6e76cf648366acb282d78a7de7f03bf4a365d Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 7 Apr 2022 05:51:17 -0700 Subject: [PATCH 213/699] io_mini1800 Configurator Fixes (#16813) * info.json: apply friendly formatting * info.json: fix key sequence errors Fixes out-of-sequence issue for the Numpad Plus key on both layouts. --- keyboards/io_mini1800/info.json | 190 ++++++++++++++++++++++++++++++-- 1 file changed, 180 insertions(+), 10 deletions(-) diff --git a/keyboards/io_mini1800/info.json b/keyboards/io_mini1800/info.json index 020a776027..13a5fb3262 100644 --- a/keyboards/io_mini1800/info.json +++ b/keyboards/io_mini1800/info.json @@ -5,20 +5,190 @@ "layouts": { "LAYOUT_625u": { "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Ins", "x":15.25, "y":0}, {"label":"Home", "x":16.25, "y":0}, {"label":"Num Lock", "x":17.5, "y":0}, {"label":"/", "x":18.5, "y":0}, {"label":"*", "x":19.5, "y":0}, {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, {"label":"Del", "x":16.25, "y":1}, {"label":"7", "x":17.5, "y":1}, {"label":"8", "x":18.5, "y":1}, {"label":"9", "x":19.5, "y":1}, {"label":"+", "x":20.5, "y":1, "h":2}, - {"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":"4", "x":17.5, "y":2}, {"label":"5", "x":18.5, "y":2}, {"label":"6", "x":19.5, "y":2}, - {"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":2.75}, {"label":"Up", "x":15.75, "y":3.5}, {"label":"1", "x":17.5, "y":3}, {"label":"2", "x":18.5, "y":3}, {"label":"3", "x":19.5, "y":3}, - {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Alt", "x":10, "y":4, "w":1.5}, {"label":"Win", "x":11.5, "y":4, "w":1.25}, {"label":"Fn", "x":12.75, "y":4, "w":1.25}, {"label":"Left", "x":14.75, "y":4.5}, {"label":"Down", "x":15.75, "y":4.5}, {"label":"Right", "x":16.75, "y":4.5}, {"label":"0", "x":18.5, "y":4}, {"label":".", "x":19.5, "y":4}, {"label":"Enter", "x":20.5, "y":3, "h":2} + {"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}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Ins", "x":15.25, "y":0}, + {"label":"Home", "x":16.25, "y":0}, + {"label":"Num Lock", "x":17.5, "y":0}, + {"label":"/", "x":18.5, "y":0}, + {"label":"*", "x":19.5, "y":0}, + {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, + {"label":"Del", "x":16.25, "y":1}, + {"label":"7", "x":17.5, "y":1}, + {"label":"8", "x":18.5, "y":1}, + {"label":"9", "x":19.5, "y":1}, + + {"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":"4", "x":17.5, "y":2}, + {"label":"5", "x":18.5, "y":2}, + {"label":"6", "x":19.5, "y":2}, + {"label":"+", "x":20.5, "y":1, "h":2}, + + {"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":2.75}, + {"label":"Up", "x":15.75, "y":3.5}, + {"label":"1", "x":17.5, "y":3}, + {"label":"2", "x":18.5, "y":3}, + {"label":"3", "x":19.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Win", "x":11.5, "y":4, "w":1.25}, + {"label":"Fn", "x":12.75, "y":4, "w":1.25}, + {"label":"Left", "x":14.75, "y":4.5}, + {"label":"Down", "x":15.75, "y":4.5}, + {"label":"Right", "x":16.75, "y":4.5}, + {"label":"0", "x":18.5, "y":4}, + {"label":".", "x":19.5, "y":4}, + {"label":"Enter", "x":20.5, "y":3, "h":2} ] }, "LAYOUT_2x3u": { "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Ins", "x":15.25, "y":0}, {"label":"Home", "x":16.25, "y":0}, {"label":"Num Lock", "x":17.5, "y":0}, {"label":"/", "x":18.5, "y":0}, {"label":"*", "x":19.5, "y":0}, {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, {"label":"Del", "x":16.25, "y":1}, {"label":"7", "x":17.5, "y":1}, {"label":"8", "x":18.5, "y":1}, {"label":"9", "x":19.5, "y":1}, {"label":"+", "x":20.5, "y":1, "h":2}, - {"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":"4", "x":17.5, "y":2}, {"label":"5", "x":18.5, "y":2}, {"label":"6", "x":19.5, "y":2}, - {"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":2.75}, {"label":"Up", "x":15.75, "y":3.5}, {"label":"1", "x":17.5, "y":3}, {"label":"2", "x":18.5, "y":3}, {"label":"3", "x":19.5, "y":3}, - {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":3}, {"x":6.75, "y":4, "w":3}, {"label":"Alt", "x":9.75, "y":4, "w":1.5}, {"label":"Win", "x":11.25, "y":4, "w":1.5}, {"label":"Fn", "x":12.75, "y":4, "w":1.25}, {"label":"Left", "x":14.75, "y":4.5}, {"label":"Down", "x":15.75, "y":4.5}, {"label":"Right", "x":16.75, "y":4.5}, {"label":"0", "x":18.5, "y":4}, {"label":".", "x":19.5, "y":4}, {"label":"Enter", "x":20.5, "y":3, "h":2}] + {"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}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Ins", "x":15.25, "y":0}, + {"label":"Home", "x":16.25, "y":0}, + {"label":"Num Lock", "x":17.5, "y":0}, + {"label":"/", "x":18.5, "y":0}, + {"label":"*", "x":19.5, "y":0}, + {"label":"-", "x":20.5, "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":"End", "x":15.25, "y":1}, + {"label":"Del", "x":16.25, "y":1}, + {"label":"7", "x":17.5, "y":1}, + {"label":"8", "x":18.5, "y":1}, + {"label":"9", "x":19.5, "y":1}, + + {"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":"4", "x":17.5, "y":2}, + {"label":"5", "x":18.5, "y":2}, + {"label":"6", "x":19.5, "y":2}, + {"label":"+", "x":20.5, "y":1, "h":2}, + + {"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":2.75}, + {"label":"Up", "x":15.75, "y":3.5}, + {"label":"1", "x":17.5, "y":3}, + {"label":"2", "x":18.5, "y":3}, + {"label":"3", "x":19.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":3}, + {"x":6.75, "y":4, "w":3}, + {"label":"Alt", "x":9.75, "y":4, "w":1.5}, + {"label":"Win", "x":11.25, "y":4, "w":1.5}, + {"label":"Fn", "x":12.75, "y":4, "w":1.25}, + {"label":"Left", "x":14.75, "y":4.5}, + {"label":"Down", "x":15.75, "y":4.5}, + {"label":"Right", "x":16.75, "y":4.5}, + {"label":"0", "x":18.5, "y":4}, + {"label":".", "x":19.5, "y":4}, + {"label":"Enter", "x":20.5, "y":3, "h":2} + ] } } } From e2ace195b0d32af381dbf18a4a5675d36c7af983 Mon Sep 17 00:00:00 2001 From: joedinkle Date: Thu, 7 Apr 2022 15:10:29 -0700 Subject: [PATCH 214/699] Header file fixes for all keymaps (#16180) --- .../eyeohdesigns/theboulevard/theboulevard.h | 120 +++++++++--------- 1 file changed, 60 insertions(+), 60 deletions(-) diff --git a/keyboards/eyeohdesigns/theboulevard/theboulevard.h b/keyboards/eyeohdesigns/theboulevard/theboulevard.h index 0b4828a1b1..30b5b2bedf 100644 --- a/keyboards/eyeohdesigns/theboulevard/theboulevard.h +++ b/keyboards/eyeohdesigns/theboulevard/theboulevard.h @@ -21,149 +21,149 @@ #define LAYOUT_ortho1( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - 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, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c \ + 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, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { 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, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c }\ + { 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, k43, k44, k45, KC_NO, k47, k48, k49, k4a, k4b, k4c }\ } #define LAYOUT_ortho2( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - 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, k43, k44, k45, k48, k49, k4a, k4b, k4c \ + 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, k43, k44, k45, k48, k49, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { 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, k43, k44, k45, KC_NO, KC_NO, k48, k49, k4a, k4b, k4c }\ + { 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, k43, k44, k45, KC_NO, KC_NO, k48, k49, k4a, k4b, k4c }\ } #define LAYOUT_ortho3( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - 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, k43, k45, k48, k4a, k4b, k4c \ + 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, k43, k45, k48, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { 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, k43, KC_NO, k45, KC_NO, KC_NO, k48, KC_NO, k4a, k4b, k4c }\ + { 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, k43, KC_NO, k45, KC_NO, KC_NO, k48, KC_NO, k4a, k4b, k4c }\ } #define LAYOUT_ortho4( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - 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 \ + 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, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { 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, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4a, k4b, k4c }\ + { 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, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4a, k4b, k4c }\ } #define LAYOUT_ortho5( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - 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, k47, k4b, k4c \ + 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, k47, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { 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, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c }\ + { 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, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c }\ } #define LAYOUT_stagger1( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - k20, k21, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ - k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ + k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ - { k40, k41, k42, k43, k44, k45, k47, k48, k49, k4a, k4b, k4c }\ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ + { k30, k31, KC_NO, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ + { k40, k41, k42, k43, k44, k45, KC_NO, k47, k48, k49, k4a, k4b, k4c }\ } #define LAYOUT_stagger2( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - k20, k21, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ - k40, k41, k42, k43, k44, k45, k48, k49, k4a, k4b, k4c \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ + k40, k41, k42, k43, k44, k45, k48, k49, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ - { k40, k41, k42, k43, k44, k45, KC_NO, KC_NO, k48, k49, k4a, k4b, k4c }\ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ + { k30, k31, KC_NO, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ + { k40, k41, k42, k43, k44, k45, KC_NO, KC_NO, k48, k49, k4a, k4b, k4c }\ } #define LAYOUT_stagger3( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - k20, k21, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ - k40, k41, k42, k43, k45, k48, k4a, k4b, k4c \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ + k40, k41, k42, k43, k45, k48, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ - { k40, k41, k42, k43, KC_NO, k45, KC_NO, KC_NO, k48, KC_NO, k4a, k4b, k4c }\ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ + { k30, k31, KC_NO, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ + { k40, k41, k42, k43, KC_NO, k45, KC_NO, KC_NO, k48, KC_NO, k4a, k4b, k4c }\ } #define LAYOUT_stagger4( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - k20, k21, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ - k40, k41, k42, k46, k4a, k4b, k4c \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ + k40, k41, k42, k46, k4a, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ - { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4a, k4b, k4c }\ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ + { k30, k31, KC_NO, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, k46, KC_NO, KC_NO, KC_NO, k4a, k4b, k4c }\ } #define LAYOUT_stagger5( \ k00, k01, k0a, k0b, k0c, \ k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c, \ - k20, k21, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ - k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ - k40, k41, k42, k47, k4b, k4c \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2c, \ + k30, k31, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c, \ + k40, k41, k42, k47, k4b, k4c \ ) \ { \ { k00, k01, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, k0a, k0b, k0c },\ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, k1c },\ - { k20, k21, KC_NO, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ - { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ - { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c }\ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, KC_NO, k2c },\ + { k30, k31, KC_NO, k33, k34, k35, k36, k37, k38, k39, k3a, k3b, k3c }, \ + { k40, k41, k42, KC_NO, KC_NO, KC_NO, KC_NO, k47, KC_NO, KC_NO, KC_NO, k4b, k4c }\ } From 2cfbc1445cfd8986a76872a30454ddc2e98f6d63 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 8 Apr 2022 20:12:32 +0100 Subject: [PATCH 215/699] Allow new-keyboard to use development_board presets (#16785) --- lib/python/qmk/cli/new/keyboard.py | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/lib/python/qmk/cli/new/keyboard.py b/lib/python/qmk/cli/new/keyboard.py index 1cdfe53206..8d4def1bef 100644 --- a/lib/python/qmk/cli/new/keyboard.py +++ b/lib/python/qmk/cli/new/keyboard.py @@ -14,7 +14,7 @@ from qmk.git import git_get_username from qmk.json_schema import load_jsonschema from qmk.path import keyboard from qmk.json_encoders import InfoJSONEncoder -from qmk.json_schema import deep_update +from qmk.json_schema import deep_update, json_load from qmk.constants import MCU2BOOTLOADER COMMUNITY = Path('layouts/default/') @@ -23,13 +23,14 @@ TEMPLATE = Path('data/templates/keyboard/') # defaults schema = dotty(load_jsonschema('keyboard')) mcu_types = sorted(schema["properties.processor.enum"], key=str.casefold) +dev_boards = sorted(schema["properties.development_board.enum"], key=str.casefold) available_layouts = sorted([x.name for x in COMMUNITY.iterdir() if x.is_dir()]) def mcu_type(mcu): """Callable for argparse validation. """ - if mcu not in mcu_types: + if mcu not in (dev_boards + mcu_types): raise ValueError return mcu @@ -176,14 +177,14 @@ https://docs.qmk.fm/#/compatible_microcontrollers MCU? """ # remove any options strictly used for compatibility - filtered_mcu = [x for x in mcu_types if not any(xs in x for xs in ['cortex', 'unknown'])] + filtered_mcu = [x for x in (dev_boards + mcu_types) if not any(xs in x for xs in ['cortex', 'unknown'])] return choice(prompt, filtered_mcu, default=filtered_mcu.index("atmega32u4")) @cli.argument('-kb', '--keyboard', help='Specify the name for the new keyboard directory', arg_only=True, type=keyboard_name) @cli.argument('-l', '--layout', help='Community layout to bootstrap with', arg_only=True, type=layout_type) -@cli.argument('-t', '--type', help='Specify the keyboard MCU type', arg_only=True, type=mcu_type) +@cli.argument('-t', '--type', help='Specify the keyboard MCU type (or "development_board" preset)', arg_only=True, type=mcu_type) @cli.argument('-u', '--username', help='Specify your username (default from Git config)', dest='name') @cli.argument('-n', '--realname', help='Specify your real name if you want to use that. Defaults to username', arg_only=True) @cli.subcommand('Creates a new keyboard directory') @@ -198,7 +199,6 @@ def new_keyboard(cli): real_name = cli.args.realname or cli.config.new_keyboard.name if cli.args.realname or cli.config.new_keyboard.name else prompt_name(user_name) default_layout = cli.args.layout if cli.args.layout else prompt_layout() mcu = cli.args.type if cli.args.type else prompt_mcu() - bootloader = select_default_bootloader(mcu) if not validate_keyboard_name(kb_name): cli.log.error('Keyboard names must contain only {fg_cyan}lowercase a-z{fg_reset}, {fg_cyan}0-9{fg_reset}, and {fg_cyan}_{fg_reset}! Please choose a different name.') @@ -208,6 +208,16 @@ def new_keyboard(cli): cli.log.error(f'Keyboard {{fg_cyan}}{kb_name}{{fg_reset}} already exists! Please choose a different name.') return 1 + # Preprocess any development_board presets + if mcu in dev_boards: + defaults_map = json_load(Path('data/mappings/defaults.json')) + board = defaults_map['development_board'][mcu] + + mcu = board['processor'] + bootloader = board['bootloader'] + else: + bootloader = select_default_bootloader(mcu) + tokens = { # Comment here is to force multiline formatting 'YEAR': str(date.today().year), 'KEYBOARD': kb_name, From 98d411232f1e94b5bbd0d6e087fccc3cb222f19a Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Sun, 10 Apr 2022 03:06:12 +0900 Subject: [PATCH 216/699] Reduce the size of the keymap helix:fraanrosi (#16717) --- keyboards/helix/rev2/keymaps/fraanrosi/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk b/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk index 4e80183863..dd0d2eba07 100644 --- a/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk +++ b/keyboards/helix/rev2/keymaps/fraanrosi/rules.mk @@ -6,7 +6,7 @@ # See TOP/docs/config_options.md for more information. # SPLIT_KEYBOARD = yes -LTO_ENABLE = no # if firmware size over limit, try this option +LTO_ENABLE = yes # if firmware size over limit, try this option MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control # AUDIO_ENABLE = yes # Audio output on port C6 From 84c9d6ff39b92892c385c320f3d36145d71c9095 Mon Sep 17 00:00:00 2001 From: Simon Arlott <70171+nomis@users.noreply.github.com> Date: Sat, 9 Apr 2022 19:49:20 +0100 Subject: [PATCH 217/699] [Bug] Fix matrix scan reporting interval (#16825) --- quantum/keyboard.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quantum/keyboard.c b/quantum/keyboard.c index ba5609f0aa..ce4f06ae69 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -149,7 +149,7 @@ void matrix_scan_perf_task(void) { matrix_scan_count++; uint32_t timer_now = timer_read32(); - if (TIMER_DIFF_32(timer_now, matrix_timer) > 1000) { + if (TIMER_DIFF_32(timer_now, matrix_timer) >= 1000) { # if defined(CONSOLE_ENABLE) dprintf("matrix scan frequency: %lu\n", matrix_scan_count); # endif From bf67abb046846e95137052b30d6aee458ad7c1f9 Mon Sep 17 00:00:00 2001 From: Sascha Date: Sun, 10 Apr 2022 00:27:02 +0200 Subject: [PATCH 218/699] Fixed usb read loops not reading until timeout (#16827) * the size variable was redeclared (hiding the variable of the outside scope) and therefore the while check was always false, so the compiler just removed the do while loop, but it would be better to read all data and only exit the task, after this is done --- tmk_core/protocol/chibios/usb_main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index d9aa351ecb..bd8af6d194 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -1074,7 +1074,7 @@ void console_task(void) { uint8_t buffer[CONSOLE_EPSIZE]; size_t size = 0; do { - size_t size = chnReadTimeout(&drivers.console_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); + size = chnReadTimeout(&drivers.console_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); if (size > 0) { console_receive(buffer, size); } @@ -1102,7 +1102,7 @@ void raw_hid_task(void) { uint8_t buffer[RAW_EPSIZE]; size_t size = 0; do { - size_t size = chnReadTimeout(&drivers.raw_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); + size = chnReadTimeout(&drivers.raw_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); if (size > 0) { raw_hid_receive(buffer, size); } @@ -1125,7 +1125,7 @@ void midi_ep_task(void) { uint8_t buffer[MIDI_STREAM_EPSIZE]; size_t size = 0; do { - size_t size = chnReadTimeout(&drivers.midi_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); + size = chnReadTimeout(&drivers.midi_driver.driver, buffer, sizeof(buffer), TIME_IMMEDIATE); if (size > 0) { MIDI_EventPacket_t event; recv_midi_packet(&event); From 3bde05c568afec6bbb45c7d07ab55a0c8b738cc0 Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Mon, 11 Apr 2022 18:09:37 +0900 Subject: [PATCH 219/699] Change helix:froggy keymap to use split_common (#16703) * create LAYOUT_half() macro into helix/rev2/keymaps/froggy/keymap.c * Makes QMK standerd OLED driver used by the helix:froggy keymap switchable. * Change helix:froggy keymap to use split_common --- keyboards/helix/rev2/keymaps/froggy/config.h | 6 + keyboards/helix/rev2/keymaps/froggy/keymap.c | 331 +++++++++++++------ keyboards/helix/rev2/keymaps/froggy/rules.mk | 9 + 3 files changed, 237 insertions(+), 109 deletions(-) diff --git a/keyboards/helix/rev2/keymaps/froggy/config.h b/keyboards/helix/rev2/keymaps/froggy/config.h index 517368ae94..fea362bcd6 100644 --- a/keyboards/helix/rev2/keymaps/froggy/config.h +++ b/keyboards/helix/rev2/keymaps/froggy/config.h @@ -26,6 +26,12 @@ along with this program. If not, see . #define ONESHOT_TAP_TOGGLE 5 /* Tapping this number of times holds the key until tapped this number of times again. */ #define ONESHOT_TIMEOUT 5000 /* Time (in ms) before the one shot key is released */ +// the froggy keymap does not use the right hand side, so sync_timer is not needed +#define DISABLE_SYNC_TIMER +// For the same reason, the following are also not needed +#undef SPLIT_LAYER_STATE_ENABLE +#undef SPLIT_LED_STATE_ENABLE + // If you need more program area, try select and reduce rgblight modes to use. // Selection of RGBLIGHT MODE to use. diff --git a/keyboards/helix/rev2/keymaps/froggy/keymap.c b/keyboards/helix/rev2/keymaps/froggy/keymap.c index 15fe1afb0c..484a0a34b9 100644 --- a/keyboards/helix/rev2/keymaps/froggy/keymap.c +++ b/keyboards/helix/rev2/keymaps/froggy/keymap.c @@ -1,24 +1,31 @@ #include QMK_KEYBOARD_H -#include "bootloader.h" -#ifdef PROTOCOL_LUFA -#include "lufa.h" -#include "split_util.h" -#endif -#ifdef AUDIO_ENABLE - #include "audio.h" -#endif +#include + +#define MIN(x, y) (((x) < (y)) ? (x) : (y)) +#define MAX(x, y) (((x) > (y)) ? (x) : (y)) + #ifdef SSD1306OLED #include "ssd1306.h" #endif -extern keymap_config_t keymap_config; - -#ifdef RGBLIGHT_ENABLE -//Following line allows macro to read current RGB settings -extern rgblight_config_t rgblight_config; -#endif - -extern uint8_t is_master; +#define LAYOUT_half( \ + L00, L01, L02, L03, L04, L05, \ + L10, L11, L12, L13, L14, L15, \ + L20, L21, L22, L23, L24, L25, \ + L30, L31, L32, L33, L34, L35, L36, \ + L40, L41, L42, L43, L44, L45, L46 \ +) { \ + { L00, L01, L02, L03, L04, L05, KC_NO }, \ + { L10, L11, L12, L13, L14, L15, KC_NO }, \ + { L20, L21, L22, L23, L24, L25, KC_NO }, \ + { L30, L31, L32, L33, L34, L35, L36 }, \ + { L40, L41, L42, L43, L44, L45, L46 }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, _______ }, \ + { _______, _______, _______, _______, _______, _______, _______ } \ +} #define DELAY_TIME 75 static uint16_t key_timer; @@ -68,108 +75,107 @@ enum macro_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base - * ,-----------------------------------------. ,-----------------------------------------. - * | C+z | ; | [ | ( | < | { | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | KANA | P | K | R | A | F | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | BS | D | T | H | E | O | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | Shift| Y | S | N | I | U |Space | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | Ctrl | Alt | Gui | Sym | Num | OPT | Ent | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | C+z | ; | [ | ( | < | { | + * |------+------+------+------+------+------| + * | KANA | P | K | R | A | F | + * |------+------+------+------+------+------| + * | BS | D | T | H | E | O | + * |------+------+------+------+------+------+------. + * | Shift| Y | S | N | I | U |Space | + * |------+------+------+------+------+------+------| + * | Ctrl | Alt | Gui | Sym | Num | OPT | Ent | + * `------------------------------------------------' */ - [_BASE] = LAYOUT( \ - LCTL(KC_Z), KC_SCLN, KC_LBRC, KC_LPRN, KC_LT, KC_LCBR, _______, _______, _______, _______, _______, _______, \ - KANA, KC_P, KC_K, KC_R, KC_A, KC_F, _______, _______, _______, _______, _______, _______, \ - KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, _______, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), MO(_SYM), MO(_NUM), OPT_TAP_SP, KC_ENT, _______, _______, _______, _______, _______, _______, _______ \ - ), + [_BASE] = LAYOUT_half( \ + LCTL(KC_Z), KC_SCLN, KC_LBRC, KC_LPRN, KC_LT, KC_LCBR, \ + KANA, KC_P, KC_K, KC_R, KC_A, KC_F, \ + KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, \ + OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, \ + OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), MO(_SYM), MO(_NUM), OPT_TAP_SP, KC_ENT ), /* Opt - * ,-----------------------------------------. ,-----------------------------------------. - * | Esc | : | ] | ) | > | } | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | EISU| J | M | B | ' | Tab | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | . | V | C | L | Z | Q | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | X | G | W | - | Del | Esc | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | , | DTOP | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | Esc | : | ] | ) | > | } | + * |------+------+------+------+------+------| + * | EISU| J | M | B | ' | Tab | + * |------+------+------+------+------+------| + * | . | V | C | L | Z | Q | + * |------+------+------+------+------+------+------. + * | | X | G | W | - | Del | Esc | + * |------+------+------+------+------+------+------| + * | | | | , | DTOP | | | + * `------------------------------------------------' */ - [_OPT] = LAYOUT( \ - KC_ESC, KC_COLN,KC_RBRC, KC_RPRN,KC_GT, KC_RCBR, _______, _______, _______, _______, _______, _______, \ - EISU, KC_J, KC_M, KC_B, KC_QUOT, KC_TAB, _______, _______, _______, _______, _______, _______, \ - KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, _______, _______, _______, _______, _______, _______, \ - _______, KC_X, KC_G, KC_W, KC_MINUS, KC_DEL, KC_ESC, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______,_______, KC_COMM,DESKTOP, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_OPT] = LAYOUT_half( \ + KC_ESC, KC_COLN,KC_RBRC, KC_RPRN,KC_GT, KC_RCBR, \ + EISU, KC_J, KC_M, KC_B, KC_QUOT, KC_TAB, \ + KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, \ + _______, KC_X, KC_G, KC_W, KC_MINUS, KC_DEL, KC_ESC, \ + _______, _______,_______, KC_COMM,DESKTOP, _______, _______ \ ), /* Func - * ,-----------------------------------------. ,-----------------------------------------. - * |RGBRST| Hue | | RST | Mac | Win | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RGB1 | VAL+ | F7 | F8 | F9 | | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RGB2 | VAL- | F4 | F5 | F6 | F12 | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | RGB3 | F10 | F1 | F2 | F3 | F11 | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * |RGBOFF| | | | | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * |RGBRST| Hue | | RST | Mac | Win | + * |------+------+------+------+------+------| + * | RGB1 | VAL+ | F7 | F8 | F9 | | + * |------+------+------+------+------+------| + * | RGB2 | VAL- | F4 | F5 | F6 | F12 | + * |------+------+------+------+------+------+------. + * | RGB3 | F10 | F1 | F2 | F3 | F11 | | + * |------+------+------+------+------+------+------| + * |RGBOFF| | | | | | | + * `------------------------------------------------' */ - [_FUNC] = LAYOUT( \ - RGBRST,RGB_HUI, _______, RESET, MAC, WIN, _______, _______, _______, _______, _______, _______, \ - RGB1, RGB_VAI, KC_F7, KC_F8, KC_F9, _______, _______, _______, _______, _______, _______, _______, \ - RGB2, RGB_VAD, KC_F4, KC_F5, KC_F6, KC_F12, _______, _______, _______, _______, _______, _______, \ - RGB3, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, _______, _______, _______, _______, _______, _______, _______, _______, \ - RGBOFF,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_FUNC] = LAYOUT_half( \ + RGBRST,RGB_HUI, _______, RESET, MAC, WIN, \ + RGB1, RGB_VAI, KC_F7, KC_F8, KC_F9, _______, \ + RGB2, RGB_VAD, KC_F4, KC_F5, KC_F6, KC_F12, \ + RGB3, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, _______, \ + RGBOFF,_______, _______, _______, _______, _______, _______ \ ), /* Sym - * ,-----------------------------------------. ,-----------------------------------------. - * | Ins | GRV | | PU | PD | ^ | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | \ | # | = | ? | % | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | $ | upA | @ | ! | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | CL | <- | dwA | -> | _ | & | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | PS | | ~ | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | Ins | GRV | | PU | PD | ^ | + * |------+------+------+------+------+------| + * | | \ | # | = | ? | % | + * |------+------+------+------+------+------| + * | | $ | upA | @ | ! | | | + * |------+------+------+------+------+------+------. + * | CL | <- | dwA | -> | _ | & | | + * |------+------+------+------+------+------+------| + * | | | PS | | ~ | | | + * `------------------------------------------------' */ - [_SYM] = LAYOUT( \ - KC_INS, KC_GRV, _______, KC_PGUP, KC_PGDN, KC_CIRC, _______, _______, _______, _______, _______, _______, \ - _______, KC_BSLS, KC_HASH, KC_EQL, KC_QUES, KC_PERC, _______, _______, _______, _______, _______, _______, \ - _______, KC_DLR, KC_UP, KC_AT, KC_EXLM, KC_PIPE, _______, _______, _______, _______, _______, _______, \ - KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_UNDS, KC_AMPR, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PSCR, _______, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_SYM] = LAYOUT_half( \ + KC_INS, KC_GRV, _______, KC_PGUP, KC_PGDN, KC_CIRC, \ + _______, KC_BSLS, KC_HASH, KC_EQL, KC_QUES, KC_PERC, \ + _______, KC_DLR, KC_UP, KC_AT, KC_EXLM, KC_PIPE, \ + KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_UNDS, KC_AMPR, _______, \ + _______, _______, KC_PSCR, _______, KC_TILD, _______, _______ \ ), /* Raise - * ,-----------------------------------------. ,-----------------------------------------. - * | | | Func | home | End | | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | * | 7 | 8 | 9 | - | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | . | / | 4 | 5 | 6 | + | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | LN | 0 | 1 | 2 | 3 |C+S+F1| | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | , | | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | | | Func | home | End | | + * |------+------+------+------+------+------| + * | | * | 7 | 8 | 9 | - | + * |------+------+------+------+------+------| + * | . | / | 4 | 5 | 6 | + | + * |------+------+------+------+------+------+------. + * | LN | 0 | 1 | 2 | 3 |C+S+F1| | + * |------+------+------+------+------+------+------| + * | | | | , | | | | + * `------------------------------------------------' */ - [_NUM] = LAYOUT( \ - _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, \ - _______, KC_ASTR, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, _______, _______, _______, _______, \ - KC_PDOT, KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, _______, _______, _______, _______, _______, \ - KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PDOT, KC_COMM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_NUM] = LAYOUT_half( \ + _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, \ + _______, KC_ASTR, KC_P7, KC_P8, KC_P9, KC_MINS, \ + KC_PDOT, KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PLUS, \ + KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, \ + _______, _______, KC_PDOT, KC_COMM, _______, _______, _______ \ ) }; #else @@ -268,7 +274,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #ifdef RGBLIGHT_ENABLE col = record->event.key.col; row = record->event.key.row; - if (record->event.pressed && ((row < 5 && is_master) || (row >= 5 && !is_master))) { + if (record->event.pressed && ((row < 5 && is_keyboard_master()) || (row >= 5 && !is_keyboard_master()))) { int end = keybuf_end; keybufs[end].col = col; keybufs[end].row = row % 5; @@ -379,7 +385,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { eeconfig_update_rgblight_default(); rgblight_enable(); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); RGBAnimation = false; } #endif @@ -396,7 +402,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { RGBAnimation = true; rgblight_mode(RGBLIGHT_MODE_RAINBOW_MOOD); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } #endif break; @@ -405,7 +411,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { RGBAnimation = true; rgblight_mode(RGBLIGHT_MODE_RAINBOW_SWIRL + 1); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } #endif break; @@ -414,7 +420,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { RGBAnimation = true; rgblight_mode(RGBLIGHT_MODE_KNIGHT); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } #endif break; @@ -447,7 +453,7 @@ void matrix_init_user(void) { startup_user(); #endif #ifdef RGBLIGHT_ENABLE - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); #endif //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h #ifdef SSD1306OLED @@ -733,10 +739,117 @@ void iota_gfx_task_user(void) { #endif matrix_clear(&matrix); - if(is_master){ + if (is_keyboard_master()) { render_status(&matrix); } matrix_update(&display, &matrix); } +#endif // end of SSD1306OLED + +//OLED update loop +#ifdef OLED_ENABLE + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_0; +} + +// Render to OLED +void render_status(void) { + + // froggy logo + static char logo[4][1][17]= + { + { + {0x65,0x66,0x67,0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0} + }, + { + {0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,0} + }, + { + {0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,0} + }, + { + {0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0} + } + }; + + static char indctr[8][2][4]= + { + // white icon + { + {0x60,0x61,0x62,0}, + {0x63,0x64,0} + }, + { + {0x80,0x81,0x82,0}, + {0x83,0x84,0} + }, + { + {0xa0,0xa1,0xa2,0}, + {0xa3,0xa4,0} + }, + { + {0xc0,0xc1,0xc2,0}, + {0xc3,0xc4,0} + }, + // Black icon + { + {0x75,0x76,0x77,0}, + {0x78,0x79,0} + }, + { + {0x95,0x96,0x97,0}, + {0x98,0x99,0} + }, + { + {0xb5,0xb6,0xb7,0}, + {0xb8,0xb9,0} + }, + { + {0xd5,0xd6,0xd7,0}, + {0xd8,0xd9,0} + }, + }; + + int rown = 0; + int rowf = 0; + int rowa = 0; + int rows = 0; + + //Set Indicator icon + if (host_keyboard_leds() & (1< Date: Mon, 11 Apr 2022 11:18:44 +0100 Subject: [PATCH 220/699] GMMK Pro return false in encoder user. (#16830) --- keyboards/gmmk/pro/ansi/keymaps/default/keymap.c | 2 +- keyboards/gmmk/pro/ansi/keymaps/via/keymap.c | 2 +- keyboards/gmmk/pro/iso/keymaps/default/keymap.c | 2 +- keyboards/gmmk/pro/iso/keymaps/via/keymap.c | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c index 65ccaf88f2..0d161e5bdd 100644 --- a/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c @@ -67,6 +67,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } else { tap_code(KC_VOLD); } - return true; + return false; } #endif // ENCODER_ENABLE diff --git a/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c index 9b13f75a85..d50bbfbf56 100644 --- a/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c @@ -84,6 +84,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } else { tap_code(KC_VOLD); } - return true; + return false; } #endif // ENCODER_ENABLE diff --git a/keyboards/gmmk/pro/iso/keymaps/default/keymap.c b/keyboards/gmmk/pro/iso/keymaps/default/keymap.c index 67b95c755f..3bdacda6c8 100644 --- a/keyboards/gmmk/pro/iso/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/iso/keymaps/default/keymap.c @@ -67,6 +67,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } else { tap_code(KC_VOLD); } - return true; + return false; } #endif diff --git a/keyboards/gmmk/pro/iso/keymaps/via/keymap.c b/keyboards/gmmk/pro/iso/keymaps/via/keymap.c index c83af17fe1..880785ebbe 100644 --- a/keyboards/gmmk/pro/iso/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/iso/keymaps/via/keymap.c @@ -86,6 +86,6 @@ bool encoder_update_user(uint8_t index, bool clockwise) { } else { tap_code(KC_VOLD); } - return true; + return false; } #endif // ENCODER_ENABLE From 0524a82a88aef8cc2036e7ab1d603b6c78c54fd9 Mon Sep 17 00:00:00 2001 From: Kamil Zielinski Date: Mon, 11 Apr 2022 15:11:14 +0200 Subject: [PATCH 221/699] Fix numbering to match the correct columns (#16831) --- keyboards/bastardkb/skeletyl/skeletyl.h | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/bastardkb/skeletyl/skeletyl.h b/keyboards/bastardkb/skeletyl/skeletyl.h index 3e90abb01d..c7ad89bd2b 100644 --- a/keyboards/bastardkb/skeletyl/skeletyl.h +++ b/keyboards/bastardkb/skeletyl/skeletyl.h @@ -23,16 +23,16 @@ k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ - k33, k34, k31, k71, k74, k73 \ + k32, k33, k30, k70, k73, k72 \ ) \ { \ { k00, k01, k02, k03, k04 }, \ { k10, k11, k12, k13, k14 }, \ { k20, k21, k22, k23, k24 }, \ - { k31, KC_NO, k33, k34, KC_NO }, \ + { k30, KC_NO, k32, k33, KC_NO }, \ { k40, k41, k42, k43, k44 }, \ { k50, k51, k52, k53, k54 }, \ { k60, k61, k62, k63, k64 }, \ - { k71, KC_NO, k73, k74, KC_NO }, \ + { k70, KC_NO, k72, k73, KC_NO }, \ } // clang-format on From a5e41615f729ab1d68e56a59f05dbcad30beadd7 Mon Sep 17 00:00:00 2001 From: Daniel Perrett Date: Wed, 13 Apr 2022 06:25:19 +0100 Subject: [PATCH 222/699] [Keyboard] Add userspace pdl and a handwired board (#14199) Co-authored-by: Drashna Jaelre Co-authored-by: Joel Challis Co-authored-by: Ryan Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> --- keyboards/crkbd/keymaps/pdl/config.h | 30 +++ keyboards/crkbd/keymaps/pdl/keymap.c | 62 +++++ .../foostan/cornelius/keymaps/pdl/config.h | 30 +++ .../foostan/cornelius/keymaps/pdl/keymap.c | 62 +++++ .../foostan/cornelius/keymaps/pdl/readme.md | 1 + keyboards/handwired/reclined/config.h | 65 ++++++ keyboards/handwired/reclined/info.json | 87 +++++++ .../reclined/keymaps/default/keymap.c | 26 +++ .../reclined/keymaps/default/readme.md | 1 + .../handwired/reclined/keymaps/pdl/config.h | 23 ++ .../handwired/reclined/keymaps/pdl/keymap.c | 69 ++++++ .../handwired/reclined/keymaps/pdl/rules.mk | 0 keyboards/handwired/reclined/readme.md | 17 ++ keyboards/handwired/reclined/reclined.c | 16 ++ keyboards/handwired/reclined/reclined.h | 35 +++ keyboards/handwired/reclined/rules.mk | 18 ++ keyboards/lets_split/keymaps/pdl/config.h | 36 +++ keyboards/lets_split/keymaps/pdl/keymap.c | 69 ++++++ keyboards/lets_split/keymaps/pdl/rules.mk | 1 + keyboards/orthodox/keymaps/pdl/config.h | 35 +++ keyboards/orthodox/keymaps/pdl/keymap.c | 68 ++++++ keyboards/orthodox/keymaps/pdl/rules.mk | 1 + users/pdl/pdl.c | 216 ++++++++++++++++++ users/pdl/pdl.h | 135 +++++++++++ users/pdl/rules.mk | 1 + 25 files changed, 1104 insertions(+) create mode 100644 keyboards/crkbd/keymaps/pdl/config.h create mode 100644 keyboards/crkbd/keymaps/pdl/keymap.c create mode 100644 keyboards/foostan/cornelius/keymaps/pdl/config.h create mode 100644 keyboards/foostan/cornelius/keymaps/pdl/keymap.c create mode 100644 keyboards/foostan/cornelius/keymaps/pdl/readme.md create mode 100644 keyboards/handwired/reclined/config.h create mode 100644 keyboards/handwired/reclined/info.json create mode 100644 keyboards/handwired/reclined/keymaps/default/keymap.c create mode 100644 keyboards/handwired/reclined/keymaps/default/readme.md create mode 100644 keyboards/handwired/reclined/keymaps/pdl/config.h create mode 100644 keyboards/handwired/reclined/keymaps/pdl/keymap.c create mode 100644 keyboards/handwired/reclined/keymaps/pdl/rules.mk create mode 100644 keyboards/handwired/reclined/readme.md create mode 100644 keyboards/handwired/reclined/reclined.c create mode 100644 keyboards/handwired/reclined/reclined.h create mode 100644 keyboards/handwired/reclined/rules.mk create mode 100644 keyboards/lets_split/keymaps/pdl/config.h create mode 100644 keyboards/lets_split/keymaps/pdl/keymap.c create mode 100644 keyboards/lets_split/keymaps/pdl/rules.mk create mode 100644 keyboards/orthodox/keymaps/pdl/config.h create mode 100644 keyboards/orthodox/keymaps/pdl/keymap.c create mode 100644 keyboards/orthodox/keymaps/pdl/rules.mk create mode 100644 users/pdl/pdl.c create mode 100644 users/pdl/pdl.h create mode 100644 users/pdl/rules.mk diff --git a/keyboards/crkbd/keymaps/pdl/config.h b/keyboards/crkbd/keymaps/pdl/config.h new file mode 100644 index 0000000000..b25d48de02 --- /dev/null +++ b/keyboards/crkbd/keymaps/pdl/config.h @@ -0,0 +1,30 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2021 Daniel Perrett + +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 . +*/ + +#pragma once + + +#define TAPPING_TOGGLE 2 +#define TAPPING_TERM 200 + +#define COMBO_PDL +#define COMBO_COUNT 28 +#define COMBO_TERM 100 diff --git a/keyboards/crkbd/keymaps/pdl/keymap.c b/keyboards/crkbd/keymaps/pdl/keymap.c new file mode 100644 index 0000000000..1060a92650 --- /dev/null +++ b/keyboards/crkbd/keymaps/pdl/keymap.c @@ -0,0 +1,62 @@ +/* Copyright 2022 Daniel Perrett + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "pdl.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + MY_FESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO, + MY_SBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_CENT, + KC_LCTL, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN + ), + [_PROXIM] = LAYOUT_wrapper( + MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC, + KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL, + MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_CENT, + KC_LCTL, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN + ), + [_NAVIGN] = LAYOUT_wrapper( + _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______ + ), + [_PUNCTN] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + ), + [_NUMBRS] = LAYOUT_wrapper( + _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______ + ), + [_CODING] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + ), + [_FUNCTN] = LAYOUT_wrapper( + _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD, + _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR, + _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/foostan/cornelius/keymaps/pdl/config.h b/keyboards/foostan/cornelius/keymaps/pdl/config.h new file mode 100644 index 0000000000..b25d48de02 --- /dev/null +++ b/keyboards/foostan/cornelius/keymaps/pdl/config.h @@ -0,0 +1,30 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2021 Daniel Perrett + +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 . +*/ + +#pragma once + + +#define TAPPING_TOGGLE 2 +#define TAPPING_TERM 200 + +#define COMBO_PDL +#define COMBO_COUNT 28 +#define COMBO_TERM 100 diff --git a/keyboards/foostan/cornelius/keymaps/pdl/keymap.c b/keyboards/foostan/cornelius/keymaps/pdl/keymap.c new file mode 100644 index 0000000000..3b71280ad8 --- /dev/null +++ b/keyboards/foostan/cornelius/keymaps/pdl/keymap.c @@ -0,0 +1,62 @@ +/* Copyright 2021 Daniel Perrett + * + * 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 . + */ +#include QMK_KEYBOARD_H +#include "pdl.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + MY_FESC, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + KC_TAB, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO, + MY_SBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_PROXIM] = LAYOUT_wrapper( + MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC, + KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL, + MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_NAVIGN] = LAYOUT_wrapper( + _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_PUNCTN] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_NUMBRS] = LAYOUT_wrapper( + _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_CODING] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTN] = LAYOUT_wrapper( + _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD, + _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR, + _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/foostan/cornelius/keymaps/pdl/readme.md b/keyboards/foostan/cornelius/keymaps/pdl/readme.md new file mode 100644 index 0000000000..59bb03d18b --- /dev/null +++ b/keyboards/foostan/cornelius/keymaps/pdl/readme.md @@ -0,0 +1 @@ +# A keymap for cornelius used by pdl diff --git a/keyboards/handwired/reclined/config.h b/keyboards/handwired/reclined/config.h new file mode 100644 index 0000000000..6f8159a236 --- /dev/null +++ b/keyboards/handwired/reclined/config.h @@ -0,0 +1,65 @@ +/* +Copyright 2018 Daniel Perrett + +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 . +*/ + +#pragma once + +#include "config_common.h" + + +/* 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 + +/* + * 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 + + +/* + * 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 diff --git a/keyboards/handwired/reclined/info.json b/keyboards/handwired/reclined/info.json new file mode 100644 index 0000000000..1398a9a2df --- /dev/null +++ b/keyboards/handwired/reclined/info.json @@ -0,0 +1,87 @@ +{ + "manufacturer": "pdl", + "keyboard_name": "handwired/reclined", + "maintainer": "qmk", + "bootloader": "atmel-dfu", + "debounce": 5, + "diode_direction": "ROW2COL", + "features": { + "audio": false, + "backlight": false, + "bootmagic": false, + "command": true, + "console": true, + "extrakey": true, + "mousekey": true, + "nkro": false, + "sleep_led": false, + "unicode": false + }, + "matrix_pins": { + "cols": ["B2", "F4", "B3", "F5", "B1", "F6", "D4", "D7", "D0", "E6", "D1", "B4"], + "rows": ["D3", "C6", "B6", "B5"] + }, + "processor": "atmega32u4", + "usb": { + "device_ver": "0x0001", + "pid": "0x0000", + "vid": "0xFEED" + }, + "community_layouts": ["ortho_4x12"], + "layouts": { + "LAYOUT_ortho_4x12": { + "c_macro": true, + "filename": "keyboards/handwired/reclined/reclined.h", + "layout": [ + { "label": "k00", "matrix": [0, 0], "w": 1, "x": 0, "y": 0 }, + { "label": "k01", "matrix": [0, 1], "w": 1, "x": 1, "y": 0 }, + { "label": "k02", "matrix": [0, 2], "w": 1, "x": 2, "y": 0 }, + { "label": "k03", "matrix": [0, 3], "w": 1, "x": 3, "y": 0 }, + { "label": "k04", "matrix": [0, 4], "w": 1, "x": 4, "y": 0 }, + { "label": "k05", "matrix": [0, 5], "w": 1, "x": 5, "y": 0 }, + { "label": "k06", "matrix": [0, 6], "w": 1, "x": 6, "y": 0 }, + { "label": "k07", "matrix": [0, 7], "w": 1, "x": 7, "y": 0 }, + { "label": "k08", "matrix": [0, 8], "w": 1, "x": 8, "y": 0 }, + { "label": "k09", "matrix": [0, 9], "w": 1, "x": 9, "y": 0 }, + { "label": "k0a", "matrix": [0, 10], "w": 1, "x": 10, "y": 0 }, + { "label": "k0b", "matrix": [0, 11], "w": 1, "x": 11, "y": 0 }, + { "label": "k10", "matrix": [1, 0], "w": 1, "x": 0, "y": 1 }, + { "label": "k11", "matrix": [1, 1], "w": 1, "x": 1, "y": 1 }, + { "label": "k12", "matrix": [1, 2], "w": 1, "x": 2, "y": 1 }, + { "label": "k13", "matrix": [1, 3], "w": 1, "x": 3, "y": 1 }, + { "label": "k14", "matrix": [1, 4], "w": 1, "x": 4, "y": 1 }, + { "label": "k15", "matrix": [1, 5], "w": 1, "x": 5, "y": 1 }, + { "label": "k16", "matrix": [1, 6], "w": 1, "x": 6, "y": 1 }, + { "label": "k17", "matrix": [1, 7], "w": 1, "x": 7, "y": 1 }, + { "label": "k18", "matrix": [1, 8], "w": 1, "x": 8, "y": 1 }, + { "label": "k19", "matrix": [1, 9], "w": 1, "x": 9, "y": 1 }, + { "label": "k1a", "matrix": [1, 10], "w": 1, "x": 10, "y": 1 }, + { "label": "k1b", "matrix": [1, 11], "w": 1, "x": 11, "y": 1 }, + { "label": "k20", "matrix": [2, 0], "w": 1, "x": 0, "y": 2 }, + { "label": "k21", "matrix": [2, 1], "w": 1, "x": 1, "y": 2 }, + { "label": "k22", "matrix": [2, 2], "w": 1, "x": 2, "y": 2 }, + { "label": "k23", "matrix": [2, 3], "w": 1, "x": 3, "y": 2 }, + { "label": "k24", "matrix": [2, 4], "w": 1, "x": 4, "y": 2 }, + { "label": "k25", "matrix": [2, 5], "w": 1, "x": 5, "y": 2 }, + { "label": "k26", "matrix": [2, 6], "w": 1, "x": 6, "y": 2 }, + { "label": "k27", "matrix": [2, 7], "w": 1, "x": 7, "y": 2 }, + { "label": "k28", "matrix": [2, 8], "w": 1, "x": 8, "y": 2 }, + { "label": "k29", "matrix": [2, 9], "w": 1, "x": 9, "y": 2 }, + { "label": "k2a", "matrix": [2, 10], "w": 1, "x": 10, "y": 2 }, + { "label": "k2b", "matrix": [2, 11], "w": 1, "x": 11, "y": 2 }, + { "label": "k30", "matrix": [3, 0], "w": 1, "x": 0, "y": 3 }, + { "label": "k31", "matrix": [3, 1], "w": 1, "x": 1, "y": 3 }, + { "label": "k32", "matrix": [3, 2], "w": 1, "x": 2, "y": 3 }, + { "label": "k33", "matrix": [3, 3], "w": 1, "x": 3, "y": 3 }, + { "label": "k34", "matrix": [3, 4], "w": 1, "x": 4, "y": 3 }, + { "label": "k35", "matrix": [3, 5], "w": 1, "x": 5, "y": 3 }, + { "label": "k36", "matrix": [3, 6], "w": 1, "x": 6, "y": 3 }, + { "label": "k37", "matrix": [3, 7], "w": 1, "x": 7, "y": 3 }, + { "label": "k38", "matrix": [3, 8], "w": 1, "x": 8, "y": 3 }, + { "label": "k39", "matrix": [3, 9], "w": 1, "x": 9, "y": 3 }, + { "label": "k3a", "matrix": [3, 10], "w": 1, "x": 10, "y": 3 }, + { "label": "k3b", "matrix": [3, 11], "w": 1, "x": 11, "y": 3 } + ] + } + } +} diff --git a/keyboards/handwired/reclined/keymaps/default/keymap.c b/keyboards/handwired/reclined/keymaps/default/keymap.c new file mode 100644 index 0000000000..d814d568c7 --- /dev/null +++ b/keyboards/handwired/reclined/keymaps/default/keymap.c @@ -0,0 +1,26 @@ +/* Copyright 2018 Daniel Perrett + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_ortho_4x12( /* Base */ + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + KC_LCTL, KC_LGUI, KC_LALT, RESET, KC_TAB, KC_SPC, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), +}; + diff --git a/keyboards/handwired/reclined/keymaps/default/readme.md b/keyboards/handwired/reclined/keymaps/default/readme.md new file mode 100644 index 0000000000..3818217ad3 --- /dev/null +++ b/keyboards/handwired/reclined/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for reclined \ No newline at end of file diff --git a/keyboards/handwired/reclined/keymaps/pdl/config.h b/keyboards/handwired/reclined/keymaps/pdl/config.h new file mode 100644 index 0000000000..3a89a0a4d2 --- /dev/null +++ b/keyboards/handwired/reclined/keymaps/pdl/config.h @@ -0,0 +1,23 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +#define TAPPING_TERM 200 diff --git a/keyboards/handwired/reclined/keymaps/pdl/keymap.c b/keyboards/handwired/reclined/keymaps/pdl/keymap.c new file mode 100644 index 0000000000..bb6976de9b --- /dev/null +++ b/keyboards/handwired/reclined/keymaps/pdl/keymap.c @@ -0,0 +1,69 @@ +/* +This is the keymap for the reclined keyboard + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2017 Art Ortenburger +Copyright 2018 Daniel Perrett + +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 . +*/ + +#include QMK_KEYBOARD_H +#include "pdl.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + MY_SESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO, + MY_CBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_SQUO, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_PROXIM] = LAYOUT_wrapper( + MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC, + KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL, + MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_SENT, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_NAVIGN] = LAYOUT_wrapper( + _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_PUNCTN] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_NUMBRS] = LAYOUT_wrapper( + _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_CODING] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTN] = LAYOUT_wrapper( + _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD, + _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR, + _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/handwired/reclined/keymaps/pdl/rules.mk b/keyboards/handwired/reclined/keymaps/pdl/rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/handwired/reclined/readme.md b/keyboards/handwired/reclined/readme.md new file mode 100644 index 0000000000..d7594798ef --- /dev/null +++ b/keyboards/handwired/reclined/readme.md @@ -0,0 +1,17 @@ +# reclined + +A custom staggered 40 percent keyboard split at 22.5 degrees. + +* Keyboard Maintainer: [pdl](https://github.com/pdl) +* Hardware Supported: Just one device +* Hardware Availability: None + +Make example for this keyboard (after setting up your build environment): + + make handwired/reclined:default + +Flashing example for this keyboard: + + make handwired/reclined:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/handwired/reclined/reclined.c b/keyboards/handwired/reclined/reclined.c new file mode 100644 index 0000000000..ca6da9de6d --- /dev/null +++ b/keyboards/handwired/reclined/reclined.c @@ -0,0 +1,16 @@ +/* Copyright 2018 Daniel Perrett + * + * 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 . + */ +#include "reclined.h" \ No newline at end of file diff --git a/keyboards/handwired/reclined/reclined.h b/keyboards/handwired/reclined/reclined.h new file mode 100644 index 0000000000..9a665f3a9b --- /dev/null +++ b/keyboards/handwired/reclined/reclined.h @@ -0,0 +1,35 @@ +/* Copyright 2018 Daniel Perrett + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The following is an example using the Planck MIT layout +// The first section contains all of the arguments +// The second converts the arguments into a two-dimensional array +#define LAYOUT_ortho_4x12( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b \ +) \ +{ \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0a, k0b }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1a, k1b }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2a, k2b }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3a, k3b } \ +} diff --git a/keyboards/handwired/reclined/rules.mk b/keyboards/handwired/reclined/rules.mk new file mode 100644 index 0000000000..64e496d030 --- /dev/null +++ b/keyboards/handwired/reclined/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/lets_split/keymaps/pdl/config.h b/keyboards/lets_split/keymaps/pdl/config.h new file mode 100644 index 0000000000..e79e132c64 --- /dev/null +++ b/keyboards/lets_split/keymaps/pdl/config.h @@ -0,0 +1,36 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2018 Daniel Perrett + +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 . +*/ + +#pragma once + + +#define TAPPING_TERM 200 + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +//#define MASTER_LEFT +#define MASTER_RIGHT +// #define EE_HANDS diff --git a/keyboards/lets_split/keymaps/pdl/keymap.c b/keyboards/lets_split/keymaps/pdl/keymap.c new file mode 100644 index 0000000000..b112e2270f --- /dev/null +++ b/keyboards/lets_split/keymaps/pdl/keymap.c @@ -0,0 +1,69 @@ +/* +This is the keymap for the keyboard + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2017 Art Ortenburger +Copyright 2018 Daniel Perrett + +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 . +*/ + +#include QMK_KEYBOARD_H +#include "pdl.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + MY_SESC, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, MY_SQUO, + MY_CBSL, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________, MY_SQUO, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_PROXIM] = LAYOUT_wrapper( + MY_FESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC, + KC_TAB, _________________PROXIM_L2_________________, _________________PROXIM_R2_________________, MY_ASCL, + MY_SBSL, _________________PROXIM_L3_________________, _________________PROXIM_R3_________________, MY_SENT, + KC_LCTL, KC_LGUI, KC_LALT, NUMBRS, NAVIGN, KC_SPC, MY_SSPC, NUMBRS, NAVIGN, MY_AMNU, FUNCTN, MY_CENT + ), + [_NAVIGN] = LAYOUT_wrapper( + _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_PUNCTN] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_NUMBRS] = LAYOUT_wrapper( + _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_CODING] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FUNCTN] = LAYOUT_wrapper( + _______, _________________FUNCTN_L1_________________, _________________FUNCTN_R1_________________, MY_CAD, + _______, _________________FUNCTN_L2_________________, _________________FUNCTN_R2_________________, KC_PSCR, + _______, _________________FUNCTN_L3_________________, _________________FUNCTN_R3_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/lets_split/keymaps/pdl/rules.mk b/keyboards/lets_split/keymaps/pdl/rules.mk new file mode 100644 index 0000000000..ae71cbf491 --- /dev/null +++ b/keyboards/lets_split/keymaps/pdl/rules.mk @@ -0,0 +1 @@ +USER_NAME = pdl diff --git a/keyboards/orthodox/keymaps/pdl/config.h b/keyboards/orthodox/keymaps/pdl/config.h new file mode 100644 index 0000000000..5fd46b41c6 --- /dev/null +++ b/keyboards/orthodox/keymaps/pdl/config.h @@ -0,0 +1,35 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2017 Art Ortenburger +Copyright 2018 Daniel Perrett + +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 . +*/ + +#pragma once + + +/* Use I2C or Serial, not both */ + +#define USE_SERIAL +// #define USE_I2C + +/* Select hand configuration */ + +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS diff --git a/keyboards/orthodox/keymaps/pdl/keymap.c b/keyboards/orthodox/keymaps/pdl/keymap.c new file mode 100644 index 0000000000..42b9e7e485 --- /dev/null +++ b/keyboards/orthodox/keymaps/pdl/keymap.c @@ -0,0 +1,68 @@ +/* +This is the keymap for the keyboard + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2017 Art Ortenburger + +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 . +*/ + +#include QMK_KEYBOARD_H +#include "pdl.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_wrapper( + KC_TAB, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, KC_BSPC, + MY_SESC, _________________QWERTY_L2_________________, KC_LALT, KC_LGUI, FUNCTN, MY_AMNU, _________________QWERTY_R2_________________, MY_SQUO, + MY_CBSL, _________________QWERTY_L3_________________, NAVIGN, KC_SPC, NUMBRS, NUMBRS, MY_SSPC, NAVIGN, _________________QWERTY_R3_________________, MY_CENT + ), + + [_PROXIM] = LAYOUT_wrapper( + MY_SESC, _________________PROXIM_L1_________________, _________________PROXIM_R1_________________, KC_BSPC, + KC_TAB, _________________PROXIM_L2_________________, KC_LALT, KC_LGUI, FUNCTN, MY_AMNU, _________________PROXIM_R2_________________, MY_SSCL, + MY_CBSL, _________________PROXIM_L3_________________, NAVIGN, KC_SPC, NUMBRS, NUMBRS, MY_SSPC, NAVIGN, _________________PROXIM_R3_________________, MY_CENT + ), + + [_NAVIGN] = LAYOUT_wrapper( + _______, _________________NAVIGN_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L2_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _________________NAVIGN_L3_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_PUNCTN] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________PUNCTN_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________PUNCTN_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________PUNCTN_R3_________________, _______ + ), + + [_NUMBRS] = LAYOUT_wrapper( + _______, _________________NUMBRS_L1_________________, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L2_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _________________NUMBRS_L3_________________, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [_CODING] = LAYOUT_wrapper( + _______, _______, _______, _______, _______, _______, _________________CODING_R1_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________CODING_R2_________________, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _________________CODING_R3_________________, _______ + ), + + [_FUNCTN] = LAYOUT_wrapper( + _______, _________________FUNCTN_L1_________________, _________________FUNCTN_L1_________________, MY_CAD, + _______, _________________FUNCTN_L2_________________, _______, _______, _______, _______, _________________FUNCTN_L2_________________, KC_PSCR, + _______, _________________FUNCTN_L3_________________, _______, _______, _______, _______, _______, _______, _________________FUNCTN_L3_________________, _______ + ) +}; + diff --git a/keyboards/orthodox/keymaps/pdl/rules.mk b/keyboards/orthodox/keymaps/pdl/rules.mk new file mode 100644 index 0000000000..ae71cbf491 --- /dev/null +++ b/keyboards/orthodox/keymaps/pdl/rules.mk @@ -0,0 +1 @@ +USER_NAME = pdl diff --git a/users/pdl/pdl.c b/users/pdl/pdl.c new file mode 100644 index 0000000000..5b90a0b310 --- /dev/null +++ b/users/pdl/pdl.c @@ -0,0 +1,216 @@ +/* +Copyright 2018-2021 Daniel Perrett + +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 . +*/ + +#include "pdl.h" + +// unshifted +// +// regardless of current mods, send this character in an unshifted state + +__attribute__ ((weak)) +bool unshifted (uint16_t keycode, keyrecord_t *record) { + uint8_t mods; + + if (record->event.pressed) { + mods = keyboard_report->mods & EITHER_SHIFT; + + if (mods) { + unregister_mods(mods); + register_code(keycode); + register_mods(mods); + } else { + register_code(keycode); + } + + return false; + } else { + return true; + } +} + +/* + * update_punctn_coding_layer_state + * + * Check NAVIGN and NUMBRS layers. If one is activated, also activate PUNCTN. If both are activated, also activate CODING. + */ + +__attribute__ ((weak)) +uint32_t update_punctn_coding_layer_state(uint32_t state) { + uint32_t maskEither = (1UL << _NAVIGN) | (1UL << _NUMBRS); + uint32_t maskPunctn = 1UL << _PUNCTN; + uint32_t maskCoding = 1UL << _CODING; + +#ifdef COMBO_PDL + return ( + (state & maskEither) + ? (state | maskPunctn) & ~maskCoding // either => punctn + : (state & ~maskCoding) & ~maskPunctn // neither => neither + ); +#endif + + return ( + (state & maskEither) + ? (state & maskEither) == maskEither + ? (state & ~maskPunctn) | maskCoding // both => coding + : (state | maskPunctn) & ~maskCoding // either => punctn + : (state & ~maskCoding) & ~maskPunctn // neither => neither + ); +} + +__attribute__ ((weak)) +uint32_t layer_state_set_user(uint32_t state) { + return update_punctn_coding_layer_state(state); +} + +__attribute__ ((weak)) +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: + if (record->event.pressed) { + // ensure that the toggled layer is switched off by a single tap + layer_off(keycode & 0xFF); + } + break; + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case PROXIM: + if (record->event.pressed) { + set_single_persistent_default_layer(_PROXIM); + } + return false; + break; + // KC_LBRC, KC_NUHS, KC_GRV, KC_RBRC [#`] + // These four keys are unshifted in the UK layout and should be sent as such. + case KU_LBRC: + return unshifted(KC_LBRC, record); + case KU_NUHS: + return unshifted(KC_NUHS, record); + case KU_GRV: + return unshifted(KC_GRV, record); + case KU_RBRC: + return unshifted(KC_RBRC, record); + case KC_ESC: + if (!record->event.pressed) { + layer_off(_NUMBRS); + layer_off(_NAVIGN); + layer_off(_PUNCTN); + layer_off(_CODING); + } + return true; + } + return true; +} + +#ifdef COMBO_PDL +enum combos { + VCOMBO_PU, + VCOMBO_NU, + VCOMBO_EU, + VCOMBO_IU, + VCOMBO_LU, + VCOMBO_PD, + VCOMBO_ND, + VCOMBO_ED, + VCOMBO_ID, + VCOMBO_LD, + HCOMBO_JR, + HCOMBO_UR, + HCOMBO_PR, + HCOMBO_MR, + HCOMBO_HR, + XCOMBO_LEFT, + XCOMBO_RIGHT, + XCOMBO_UP, + XCOMBO_DOWN, + XCOMBO_ENTER, + XCOMBO_DEL, + XCOMBO_BKSP, + XCOMBO_MINS, + XCOMBO_TAB, + XCOMBO_UNDO, + XCOMBO_REDO, + XCOMBO_PGUP, + XCOMBO_PGDN +}; + +const uint16_t PROGMEM vcombo_pu[] = {KC_J, KC_P, COMBO_END}; +const uint16_t PROGMEM vcombo_nu[] = {KC_Y, KC_N, COMBO_END}; +const uint16_t PROGMEM vcombo_eu[] = {KC_O, KC_E, COMBO_END}; +const uint16_t PROGMEM vcombo_iu[] = {KC_U, KC_I, COMBO_END}; +const uint16_t PROGMEM vcombo_lu[] = {KC_QUOT, KC_L, COMBO_END}; +const uint16_t PROGMEM vcombo_pd[] = {KC_M, KC_P, COMBO_END}; +const uint16_t PROGMEM vcombo_nd[] = {KC_H, KC_N, COMBO_END}; +const uint16_t PROGMEM vcombo_ed[] = {KC_COMM, KC_E, COMBO_END}; +const uint16_t PROGMEM vcombo_id[] = {KC_DOT, KC_I, COMBO_END}; +const uint16_t PROGMEM vcombo_ld[] = {KC_SLSH, KC_L, COMBO_END}; +const uint16_t PROGMEM hcombo_jr[] = {KC_J, KC_Y, COMBO_END}; +const uint16_t PROGMEM hcombo_ur[] = {KC_QUOT, KC_U, COMBO_END}; +const uint16_t PROGMEM hcombo_pr[] = {KC_P, KC_N, COMBO_END}; +const uint16_t PROGMEM hcombo_mr[] = {KC_M, KC_H, COMBO_END}; +const uint16_t PROGMEM hcombo_hr[] = {KC_COMM, KC_H, COMBO_END}; + +const uint16_t PROGMEM xcombo_left[] = {KC_K, KC_P, COMBO_END}; +const uint16_t PROGMEM xcombo_right[] = {KC_M, KC_G, COMBO_END}; +const uint16_t PROGMEM xcombo_up[] = {KC_B, KC_J, COMBO_END}; +const uint16_t PROGMEM xcombo_down[] = {KC_K, KC_M, COMBO_END}; +const uint16_t PROGMEM xcombo_enter[] = {KC_G, KC_P, COMBO_END}; +const uint16_t PROGMEM xcombo_del[] = {KC_M, KC_B, COMBO_END}; +const uint16_t PROGMEM xcombo_bksp[] = {KC_K, KC_J, COMBO_END}; +const uint16_t PROGMEM xcombo_mins[] = {KC_V, KC_H, COMBO_END}; +const uint16_t PROGMEM xcombo_tab[] = {KC_V, KC_K, COMBO_END}; +const uint16_t PROGMEM xcombo_undo[] = {KC_V, KC_J, COMBO_END}; +const uint16_t PROGMEM xcombo_redo[] = {KC_B, KC_H, COMBO_END}; +const uint16_t PROGMEM xcombo_pgup[] = {KC_G, KC_B, COMBO_END}; +const uint16_t PROGMEM xcombo_pgdn[] = {KC_G, KC_K, COMBO_END}; + +combo_t key_combos[COMBO_COUNT] = { + [VCOMBO_PU] = COMBO(vcombo_pu, KC_CIRC), + [VCOMBO_NU] = COMBO(vcombo_nu, KC_LBRC), + [VCOMBO_EU] = COMBO(vcombo_eu, LSFT(KC_9)), + [VCOMBO_IU] = COMBO(vcombo_iu, LSFT(KC_0)), + [VCOMBO_LU] = COMBO(vcombo_lu, KC_RBRC), + [VCOMBO_PD] = COMBO(vcombo_pd, LSFT(KC_7)), + [VCOMBO_ND] = COMBO(vcombo_nd, KC_EQL), + [VCOMBO_ED] = COMBO(vcombo_ed, KC_MINS), + [VCOMBO_ID] = COMBO(vcombo_id, LSFT(KC_1)), + [VCOMBO_LD] = COMBO(vcombo_ld, LSFT(KC_5)), + [HCOMBO_JR] = COMBO(hcombo_jr, KC_GRV), + [HCOMBO_UR] = COMBO(hcombo_ur, LSFT(KC_2)), + [HCOMBO_PR] = COMBO(hcombo_pr, LSFT(KC_8)), + [HCOMBO_MR] = COMBO(hcombo_mr, KC_NUHS), + [HCOMBO_HR] = COMBO(hcombo_hr, KC_NUBS), + + [XCOMBO_LEFT] = COMBO(xcombo_left, KC_LEFT), + [XCOMBO_RIGHT] = COMBO(xcombo_right, KC_RGHT), + [XCOMBO_UP] = COMBO(xcombo_up, KC_UP), + [XCOMBO_DOWN] = COMBO(xcombo_down, KC_DOWN), + [XCOMBO_ENTER] = COMBO(xcombo_enter, KC_ENT), + [XCOMBO_DEL] = COMBO(xcombo_del, KC_DEL), + [XCOMBO_BKSP] = COMBO(xcombo_bksp, KC_BSPC), + [XCOMBO_MINS] = COMBO(xcombo_mins, KC_MINS), + [XCOMBO_TAB] = COMBO(xcombo_tab, KC_TAB), + [XCOMBO_UNDO] = COMBO(xcombo_undo, LCTL(KC_Y)), + [XCOMBO_REDO] = COMBO(xcombo_redo, LCTL(KC_Z)), + [XCOMBO_PGUP] = COMBO(xcombo_pgup, KC_PGUP), + [XCOMBO_PGDN] = COMBO(xcombo_pgdn, KC_PGDN) +}; + +#endif diff --git a/users/pdl/pdl.h b/users/pdl/pdl.h new file mode 100644 index 0000000000..a976c71474 --- /dev/null +++ b/users/pdl/pdl.h @@ -0,0 +1,135 @@ +/* +Copyright 2018-2021 Daniel Perrett + +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 . +*/ + +#pragma once + +#include "quantum.h" + +enum userspace_layer_codes { + QWERTY = SAFE_RANGE, + PROXIM, + PUNCTN, + CODING, + KU_LBRC, + KU_NUHS, + KU_GRV, + KU_RBRC, + NEW_SAFE_RANGE +}; + +enum userspace_layers { + _PROXIM, + _QWERTY, + _NUMBRS, + _NAVIGN, + _PUNCTN, + _CODING, + _FUNCTN +}; + +#define MY_FESC LT(_FUNCTN, KC_ESC) +#define MY_SSPC MT(MOD_RSFT, KC_SPC) +#define MY_SESC MT(MOD_LSFT, KC_ESC) +#define MY_SBSL MT(MOD_LSFT, KC_NUBS) +#define MY_CBSL MT(MOD_LCTL, KC_NUBS) +#define MY_SSCL MT(MOD_RSFT, KC_SCLN) +#define MY_ASCL MT(MOD_LALT, KC_SCLN) +#define MY_SQUO MT(MOD_RSFT, KC_QUOT) +#define MY_CENT MT(MOD_RCTL, KC_ENT) +#define MY_SENT MT(MOD_RSFT, KC_ENT) +#define MY_AMNU MT(MOD_RALT, KC_APP) + +#define MY_TILD S(KC_NUHS) +#define MY_SEQL MT(MOD_RALT, KC_PEQL) +#define MY_CMIN MT(MOD_RALT, KC_MINS) +#define MY_ASLS MT(MOD_RALT, KC_SLSH) + +#define MY_UNDO LCTL(KC_Z) +#define MY_CUT LCTL(KC_X) +#define MY_COPY LCTL(KC_C) +#define MY_PASTE LCTL(KC_V) + +#define MY_AF4 LALT(KC_F4) +#define MY_CF4 LCTL(KC_F4) +#define MY_CF5 LCTL(KC_F5) +#define MY_CAD LCTL(LALT(KC_DEL)) + +#define NUMBRS TT(_NUMBRS) +#define NAVIGN TT(_NAVIGN) +#define FUNCTN TT(_FUNCTN) + +#define EITHER_SHIFT (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT)) + +// Cannot redefine this here +// #define TAPPING_TOGGLE 2 + +// Taken from drashna: +// Since our quirky block definitions are basically a list of comma separated +// arguments, we need a wrapper in order for these definitions to be +// expanded before being used as arguments to the LAYOUT_xxx macro. +#if !defined(LAYOUT) +#if defined(LAYOUT_ortho_4x12) +#define LAYOUT_wrapper_ortho_4x12(...) LAYOUT_ortho_4x12(__VA_ARGS__) +#define LAYOUT LAYOUT_ortho_4x12 +#elif defined(KEYMAP) +#define LAYOUT KEYMAP +#endif +#endif +#define KEYMAP_wrapper(...) LAYOUT(__VA_ARGS__) +#define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) + +#define ___________________________________________ _______, _______, _______, _______, _______ + +#define _________________QWERTY_L1_________________ KC_Q, KC_W, KC_E, KC_R, KC_T +#define _________________QWERTY_L2_________________ KC_A, KC_S, KC_D, KC_F, KC_G +#define _________________QWERTY_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_B + +#define _________________QWERTY_R1_________________ KC_Y, KC_U, KC_I, KC_O, KC_P +#define _________________QWERTY_R2_________________ KC_H, KC_J, KC_K, KC_L, KC_SCLN +#define _________________QWERTY_R3_________________ KC_N, KC_M, KC_COMM, KC_DOT, KC_SLASH + +#define _________________PROXIM_L1_________________ KC_Q, KC_W, KC_F, KC_R, KC_B +#define _________________PROXIM_L2_________________ KC_A, KC_S, KC_D, KC_T, KC_G +#define _________________PROXIM_L3_________________ KC_Z, KC_X, KC_C, KC_V, KC_K + +#define _________________PROXIM_R1_________________ KC_J, KC_Y, KC_O, KC_U, KC_QUOT +#define _________________PROXIM_R2_________________ KC_P, KC_N, KC_E, KC_I, KC_L +#define _________________PROXIM_R3_________________ KC_M, KC_H, KC_COMM, KC_DOT, KC_SLASH + +#define _________________PUNCTN_R1_________________ KC_NUBS, KC_NUHS, KC_LPRN, KC_RPRN, _______ +#define _________________PUNCTN_R2_________________ KC_GRV, KC_EQL, KC_MINS, KC_PLUS, KC_SLSH +#define _________________PUNCTN_R3_________________ KC_LBRC, KC_RBRC, _______, _______, _______ + +#define _________________CODING_R1_________________ KU_GRV, KC_PERC, KC_DLR, KC_AT, _______ +#define _________________CODING_R2_________________ KC_CIRC, KC_UNDS, MY_TILD, KC_AMPR, KU_NUHS +#define _________________CODING_R3_________________ KU_LBRC, KU_RBRC, _______, _______, _______ + +#define _________________NAVIGN_L1_________________ KC_DEL, KC_PGUP, KC_UP, KC_PGDN, KC_BSPC +#define _________________NAVIGN_L2_________________ KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END +#define _________________NAVIGN_L3_________________ MY_UNDO, MY_CUT, MY_COPY, MY_PASTE, KC_ENT + +#define _________________NUMBRS_L1_________________ KC_1, KC_2, KC_3, KC_4, KC_5 +#define _________________NUMBRS_L2_________________ KC_6, KC_7, KC_8, KC_9, KC_0 +#define _________________NUMBRS_L3_________________ KC_UNDO, KC_MINS, KC_EQL, KC_PDOT, KC_ENT + +#define _________________FUNCTN_L1_________________ KC_ESC, KC_F1, KC_F2, KC_F3, MY_AF4 +#define _________________FUNCTN_L2_________________ KC_APP, KC_F4, KC_F5, KC_F6, MY_CF5 +#define _________________FUNCTN_L3_________________ RESET, KC_F7, KC_F8, KC_F9, MY_CF4 + +#define _________________FUNCTN_R1_________________ KC_VOLU, KC_F10, KC_F11, KC_F12, KC_INS +#define _________________FUNCTN_R2_________________ KC_VOLD, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT +#define _________________FUNCTN_R3_________________ KC_MUTE, KC_PAUS, QWERTY, PROXIM, DEBUG diff --git a/users/pdl/rules.mk b/users/pdl/rules.mk new file mode 100644 index 0000000000..ff681299e4 --- /dev/null +++ b/users/pdl/rules.mk @@ -0,0 +1 @@ +COMBO_ENABLE = yes \ No newline at end of file From 8cc86490aac59a93ece62229cc93097a17420fa5 Mon Sep 17 00:00:00 2001 From: sol <1731279+s-ol@users.noreply.github.com> Date: Wed, 13 Apr 2022 07:46:12 +0200 Subject: [PATCH 223/699] [Keyboard] Add s-ol/0xC.pad (#16057) * [Keyboard] Add s_ol/0xc_pad * [Keyboard] add factory testing RGB_MATRIX pattern Co-authored-by: s-ol --- keyboards/s_ol/0xc_pad/0xc_pad.c | 30 ++++++++++++ keyboards/s_ol/0xc_pad/0xc_pad.h | 36 ++++++++++++++ keyboards/s_ol/0xc_pad/config.h | 49 +++++++++++++++++++ keyboards/s_ol/0xc_pad/info.json | 33 +++++++++++++ .../s_ol/0xc_pad/keymaps/default/config.h | 18 +++++++ .../s_ol/0xc_pad/keymaps/default/keymap.c | 25 ++++++++++ .../s_ol/0xc_pad/keymaps/default/readme.md | 5 ++ .../keymaps/default/rgb_matrix_user.inc | 41 ++++++++++++++++ .../s_ol/0xc_pad/keymaps/default/rules.mk | 1 + keyboards/s_ol/0xc_pad/readme.md | 24 +++++++++ keyboards/s_ol/0xc_pad/rules.mk | 22 +++++++++ keyboards/s_ol/info.json | 4 ++ 12 files changed, 288 insertions(+) create mode 100644 keyboards/s_ol/0xc_pad/0xc_pad.c create mode 100644 keyboards/s_ol/0xc_pad/0xc_pad.h create mode 100644 keyboards/s_ol/0xc_pad/config.h create mode 100644 keyboards/s_ol/0xc_pad/info.json create mode 100644 keyboards/s_ol/0xc_pad/keymaps/default/config.h create mode 100644 keyboards/s_ol/0xc_pad/keymaps/default/keymap.c create mode 100644 keyboards/s_ol/0xc_pad/keymaps/default/readme.md create mode 100644 keyboards/s_ol/0xc_pad/keymaps/default/rgb_matrix_user.inc create mode 100644 keyboards/s_ol/0xc_pad/keymaps/default/rules.mk create mode 100644 keyboards/s_ol/0xc_pad/readme.md create mode 100644 keyboards/s_ol/0xc_pad/rules.mk create mode 100644 keyboards/s_ol/info.json diff --git a/keyboards/s_ol/0xc_pad/0xc_pad.c b/keyboards/s_ol/0xc_pad/0xc_pad.c new file mode 100644 index 0000000000..b8dd2976ef --- /dev/null +++ b/keyboards/s_ol/0xc_pad/0xc_pad.c @@ -0,0 +1,30 @@ +/* Copyright 2021 s-ol + * + * 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 . + */ +#include "0xc_pad.h" + +#ifdef RGB_MATRIX_ENABLE +# define Q(...) __VA_ARGS__ + +led_config_t g_led_config = { + // indices + LAYOUT(0, 6, 1, 5, 7, 2, 4, 8, 11, 3, 9, 10), + // phys position + LED_LAYOUT(Q({96, 110}), Q({128, 110}), Q({80, 83}), Q({112, 83}), Q({144, 83}), Q({64, 55}), Q({96, 55}), Q({128, 55}), Q({160, 55}), Q({80, 28}), Q({112, 28}), Q({144, 28})), + // flags + LED_LAYOUT(4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4), +}; +# undef Q +#endif diff --git a/keyboards/s_ol/0xc_pad/0xc_pad.h b/keyboards/s_ol/0xc_pad/0xc_pad.h new file mode 100644 index 0000000000..52c9c3adfd --- /dev/null +++ b/keyboards/s_ol/0xc_pad/0xc_pad.h @@ -0,0 +1,36 @@ +/* Copyright 2021 s-ol + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + k01, k05, \ + k02, k06, k10, \ + k03, k07, k11, k15, \ + k08, k12, k16 \ +) { \ + { k01, k05, KC_NO, KC_NO }, \ + { k02, k06, k10, KC_NO }, \ + { k03, k07, k11, k15 }, \ + { KC_NO, k08, k12, k16 } \ +} + +#define LED_LAYOUT( \ + \ + k01, k05, k02, k06, k10, k03, k07, k11, k15, k08, k12, k16) \ + \ + { k01, k02, k03, k08, k07, k06, k05, k10, k11, k12, k16, k15, } diff --git a/keyboards/s_ol/0xc_pad/config.h b/keyboards/s_ol/0xc_pad/config.h new file mode 100644 index 0000000000..4260c7a07d --- /dev/null +++ b/keyboards/s_ol/0xc_pad/config.h @@ -0,0 +1,49 @@ +/* Copyright 2021 s-ol + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* ws2812 RGB LED */ +#define RGB_DI_PIN C7 +#define DRIVER_LED_TOTAL 12 +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 +#define RGB_MATRIX_CENTER \ + { 112, 63 } +#define RGB_MATRIX_KEYPRESSES +#define RGB_MATRIX_FRAMEBUFFER + +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_BAND_SAT +#define ENABLE_RGB_MATRIX_BAND_VAL +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#define ENABLE_RGB_MATRIX_HUE_BREATHING +#define ENABLE_RGB_MATRIX_HUE_WAVE + +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE +#define ENABLE_RGB_MATRIX_SPLASH diff --git a/keyboards/s_ol/0xc_pad/info.json b/keyboards/s_ol/0xc_pad/info.json new file mode 100644 index 0000000000..4462b983ec --- /dev/null +++ b/keyboards/s_ol/0xc_pad/info.json @@ -0,0 +1,33 @@ +{ + "keyboard_name": "0xC.pad", + "url": "https://s-ol.nu/0xC.pad", + "debounce": 5, + "diode_direction": "ROW2COL", + "matrix_pins": { + "rows": ["B7", "B6", "B5", "B4"], + "cols": ["D4", "D3", "D2", "D1"] + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":0.5, "y":1}, + {"x":1.5, "y":1}, + {"x":2.5, "y":1}, + {"x":0, "y":2}, + {"x":1, "y":2}, + {"x":2, "y":2}, + {"x":3, "y":2}, + {"x":0.5, "y":3}, + {"x":1.5, "y":3}, + {"x":2.5, "y":3} + ] + } + }, + "usb": { + "vid": "0x732D", + "pid": "0x0C70", + "device_version": "0.0.1" + } +} diff --git a/keyboards/s_ol/0xc_pad/keymaps/default/config.h b/keyboards/s_ol/0xc_pad/keymaps/default/config.h new file mode 100644 index 0000000000..194cb5a200 --- /dev/null +++ b/keyboards/s_ol/0xc_pad/keymaps/default/config.h @@ -0,0 +1,18 @@ +/* Copyright 2022 s-ol + * + * 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 . + */ +#pragma once + +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CUSTOM_RGB_TESTING diff --git a/keyboards/s_ol/0xc_pad/keymaps/default/keymap.c b/keyboards/s_ol/0xc_pad/keymaps/default/keymap.c new file mode 100644 index 0000000000..562d895071 --- /dev/null +++ b/keyboards/s_ol/0xc_pad/keymaps/default/keymap.c @@ -0,0 +1,25 @@ +/* Copyright 2021 s-ol + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + RGB_RMOD, RGB_MOD, + KC_CUT , KC_COPY, KC_PSTE, + KC_PGUP, KC_PGDN, KC_VOLU, KC_VOLD, + KC_1 , KC_2 , KC_3 + ), +}; diff --git a/keyboards/s_ol/0xc_pad/keymaps/default/readme.md b/keyboards/s_ol/0xc_pad/keymaps/default/readme.md new file mode 100644 index 0000000000..fb71b2bf20 --- /dev/null +++ b/keyboards/s_ol/0xc_pad/keymaps/default/readme.md @@ -0,0 +1,5 @@ +![0xC.pad Layout Image](https://i.imgur.com/pk4G33B.png) +​ +# Default 0xC.pad Layout +​ +This is a simple default layout to get you started with the 0xC.pad. diff --git a/keyboards/s_ol/0xc_pad/keymaps/default/rgb_matrix_user.inc b/keyboards/s_ol/0xc_pad/keymaps/default/rgb_matrix_user.inc new file mode 100644 index 0000000000..8acb4934bc --- /dev/null +++ b/keyboards/s_ol/0xc_pad/keymaps/default/rgb_matrix_user.inc @@ -0,0 +1,41 @@ +/* Copyright 2022 s-ol + * + * 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 . + */ +RGB_MATRIX_EFFECT(RGB_TESTING) +#ifdef RGB_MATRIX_CUSTOM_EFFECT_IMPLS + +static HSV RGB_TESTING_math(HSV hsv, uint8_t i, uint8_t time) { + hsv.v = 255; + hsv.s = 255; + + uint8_t t = (time + i * 6) % 256; + switch (t / (256 / 4)) { + case 0: + hsv.h = 0; + break; + case 1: + hsv.h = 85; + break; + case 2: + hsv.h = 170; + break; + default: + hsv.s = 0; + } + return hsv; +} + +static bool RGB_TESTING(effect_params_t* params) { return effect_runner_i(params, &RGB_TESTING_math); } +#endif diff --git a/keyboards/s_ol/0xc_pad/keymaps/default/rules.mk b/keyboards/s_ol/0xc_pad/keymaps/default/rules.mk new file mode 100644 index 0000000000..6245023e80 --- /dev/null +++ b/keyboards/s_ol/0xc_pad/keymaps/default/rules.mk @@ -0,0 +1 @@ +RGB_MATRIX_CUSTOM_USER = yes diff --git a/keyboards/s_ol/0xc_pad/readme.md b/keyboards/s_ol/0xc_pad/readme.md new file mode 100644 index 0000000000..8ca3f78d1a --- /dev/null +++ b/keyboards/s_ol/0xc_pad/readme.md @@ -0,0 +1,24 @@ +# 0xC.pad + +![0xC.pad](https://i.imgur.com/YXMKy4u.png) + +A 12-key, RGB-backlit hexagonal macropad. + +* Keyboard Maintainer: [s-ol](https://github.com/s-ol) +* Hardware Supported: "hex12pad r0", 0xC.pad r1 +* Hardware Availability: [IC form](https://s-ol.nu/0xC.pad) + +To flash the example keymap for this macropad +(after setting up your build environment): + + make s_ol/0xc_pad:default:flash + +Before flashing, the macropad must be brought into DFU mode by one of the +following means: +- holding down the top-left key (next to the USB port) while plugging it in +- bridging the two pads labeled `BOOT` on the back of the PCB with a metallic + object (tweezers, paperclip. wire) +- putting the `RESET` keycode in your keymap and pressing the corresponding key + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. +Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/s_ol/0xc_pad/rules.mk b/keyboards/s_ol/0xc_pad/rules.mk new file mode 100644 index 0000000000..1322621d85 --- /dev/null +++ b/keyboards/s_ol/0xc_pad/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +LTO_ENABLE = yes +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 +WS2812_DRIVER = bitbang diff --git a/keyboards/s_ol/info.json b/keyboards/s_ol/info.json new file mode 100644 index 0000000000..3c1c21d534 --- /dev/null +++ b/keyboards/s_ol/info.json @@ -0,0 +1,4 @@ +{ + "manufacturer": "s-ol", + "maintainer": "s-ol" +} From e1c777a1c993efa6c739fde71f995ee386456237 Mon Sep 17 00:00:00 2001 From: Nostril Date: Tue, 12 Apr 2022 22:50:38 -0700 Subject: [PATCH 224/699] [Keyboard] Add Synth Labs Solo keyboard (#16103) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/synthlabs/solo/config.h | 64 ++++++++++++++++ keyboards/synthlabs/solo/info.json | 43 +++++++++++ .../synthlabs/solo/keymaps/default/keymap.c | 12 +++ .../synthlabs/solo/keymaps/default/readme.md | 3 + .../synthlabs/solo/keymaps/gamepad/keymap.c | 35 +++++++++ .../synthlabs/solo/keymaps/gamepad/readme.md | 3 + .../synthlabs/solo/keymaps/gamepad/rules.mk | 2 + keyboards/synthlabs/solo/keymaps/via/keymap.c | 74 +++++++++++++++++++ keyboards/synthlabs/solo/keymaps/via/rules.mk | 1 + keyboards/synthlabs/solo/readme.md | 28 +++++++ keyboards/synthlabs/solo/rules.mk | 13 ++++ keyboards/synthlabs/solo/solo.c | 18 +++++ keyboards/synthlabs/solo/solo.h | 41 ++++++++++ 13 files changed, 337 insertions(+) create mode 100644 keyboards/synthlabs/solo/config.h create mode 100644 keyboards/synthlabs/solo/info.json create mode 100644 keyboards/synthlabs/solo/keymaps/default/keymap.c create mode 100644 keyboards/synthlabs/solo/keymaps/default/readme.md create mode 100644 keyboards/synthlabs/solo/keymaps/gamepad/keymap.c create mode 100644 keyboards/synthlabs/solo/keymaps/gamepad/readme.md create mode 100644 keyboards/synthlabs/solo/keymaps/gamepad/rules.mk create mode 100644 keyboards/synthlabs/solo/keymaps/via/keymap.c create mode 100644 keyboards/synthlabs/solo/keymaps/via/rules.mk create mode 100644 keyboards/synthlabs/solo/readme.md create mode 100644 keyboards/synthlabs/solo/rules.mk create mode 100644 keyboards/synthlabs/solo/solo.c create mode 100644 keyboards/synthlabs/solo/solo.h diff --git a/keyboards/synthlabs/solo/config.h b/keyboards/synthlabs/solo/config.h new file mode 100644 index 0000000000..02fbd7abe0 --- /dev/null +++ b/keyboards/synthlabs/solo/config.h @@ -0,0 +1,64 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define MANUFACTURER Synth Labs +#define PRODUCT Solo + +#define ENCODERS 1 +#define ENCODER_RESOLUTION 4 +#define ENCODERS_PAD_A { B2 } +#define ENCODERS_PAD_B { B3 } +#define ENCODERS_CW_KEY { { 2, 1 } } +#define ENCODERS_CCW_KEY { { 0, 1 } } + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 7 + +#define QMK_KEYS_PER_SCAN 17 + +/* + * 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. + * + */ + +#define BOOTMAGIC_LITE_ROW 1 +#define BOOTMAGIC_LITE_COLUMN 1 + +#define JOYSTICK_BUTTON_COUNT 8 +#define JOYSTICK_AXES_COUNT 1 +#define JOYSTICK_AXES_RESOLUTION 16 diff --git a/keyboards/synthlabs/solo/info.json b/keyboards/synthlabs/solo/info.json new file mode 100644 index 0000000000..18a144a8b3 --- /dev/null +++ b/keyboards/synthlabs/solo/info.json @@ -0,0 +1,43 @@ +{ + "keyboard_name": "Synth Labs Solo", + "url": "http://solo.synthlabs.io", + "maintainer": "hongaaronc", + "bootloader": "atmel-dfu", + "processor": "atmega32u4", + "debounce": 5, + "matrix_pins": { + "direct": [ + ["C6", "D6", "B5", "B4", "D7", "B6", "D4"], + [null, "B7", null, null, null, null, null], + ["F0", "F7", "F4", "F5", "F6", "F1", "C7"] + ] + }, + "usb": { + "vid": "0x534E", + "pid": "0x3031", + "device_ver": "0x0001" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"P2 1", "x":3, "y":0, "w":0.5, "h":1.5, "matrix":[0,0]}, + {"label":"P1 2", "x":3.5, "y":0, "w":0.5, "h":1.5, "matrix":[0,1]}, + {"label":"P2 3", "x":4, "y":0, "w":0.5, "h":1.5, "matrix":[0,2]}, + {"label":"P1 4", "x":4.5, "y":0, "w":0.5, "h":1.5, "matrix":[0,3]}, + {"label":"P2 5", "x":5, "y":0, "w":0.5, "h":1.5, "matrix":[0,4]}, + {"label":"P1 6", "x":5.5, "y":0, "w":0.5, "h":1.5, "matrix":[0,5]}, + {"label":"P2 7", "x":6, "y":0, "w":0.5, "h":1.5, "matrix":[0,6]}, + {"label":"Knob Press", "x":0.5, "y":1, "w":1.5, "h":1.5, "matrix":[1,1]}, + {"label":"Knob CCW", "x":0, "y":1.25, "w":0.5, "matrix":[1,0]}, + {"label":"Knob CW", "x":2, "y":1.25, "w":0.5, "matrix":[1,2]}, + {"label":"P1 1", "x":3, "y":2, "w":0.5, "h":1.5, "matrix":[2,0]}, + {"label":"P2 2", "x":3.5, "y":2, "w":0.5, "h":1.5, "matrix":[2,1]}, + {"label":"P1 3", "x":4, "y":2, "w":0.5, "h":1.5, "matrix":[2,2]}, + {"label":"P2 4", "x":4.5, "y":2, "w":0.5, "h":1.5, "matrix":[2,3]}, + {"label":"P1 5", "x":5, "y":2, "w":0.5, "h":1.5, "matrix":[2,4]}, + {"label":"P2 6", "x":5.5, "y":2, "w":0.5, "h":1.5, "matrix":[2,5]}, + {"label":"P1 7", "x":6, "y":2, "w":0.5, "h":1.5, "matrix":[2,6]} + ] + } + } +} diff --git a/keyboards/synthlabs/solo/keymaps/default/keymap.c b/keyboards/synthlabs/solo/keymaps/default/keymap.c new file mode 100644 index 0000000000..fa54111fe8 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/default/keymap.c @@ -0,0 +1,12 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_J, KC_U, KC_K, KC_I, KC_L, KC_O, KC_SCLN, + _______, KC_MUTE, _______, + KC_J, KC_U, KC_K, KC_I, KC_L, KC_O, KC_SCLN + ) +}; diff --git a/keyboards/synthlabs/solo/keymaps/default/readme.md b/keyboards/synthlabs/solo/keymaps/default/readme.md new file mode 100644 index 0000000000..625bd392b6 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# Default Synth Labs Solo Layout + +This keymap is intended for usage as a macropad. diff --git a/keyboards/synthlabs/solo/keymaps/gamepad/keymap.c b/keyboards/synthlabs/solo/keymaps/gamepad/keymap.c new file mode 100644 index 0000000000..3e55f346f1 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/gamepad/keymap.c @@ -0,0 +1,35 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#include "joystick.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + JS_BUTTON0,JS_BUTTON1,JS_BUTTON2,JS_BUTTON3,JS_BUTTON4,JS_BUTTON5,JS_BUTTON6, + KC_NO, JS_BUTTON7, KC_NO, + JS_BUTTON0,JS_BUTTON1,JS_BUTTON2,JS_BUTTON3,JS_BUTTON4,JS_BUTTON5,JS_BUTTON6 + ) +}; + +#if defined(JOYSTICK_ENABLE) && defined(ENCODER_ENABLE) + +int16_t joystick_position = 0; +int16_t pulses_per_revolution = 24; // Depends on encoder model. Usually 18ppr or 24ppr for Bourns EC11s. +int16_t full_joystick_value = 32767; // Equivalent to max value of int16. +full_joystick_value is +1.0 axis output. -full_joystick_value is -1.0 axis output. +joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = { + [0] = JOYSTICK_AXIS_VIRTUAL +}; + +bool encoder_update_kb(uint8_t index, bool clockwise) { + joystick_position += (clockwise ? 2 : -2) * (full_joystick_value / pulses_per_revolution); // +2 and -2 are used, since +1.0 and -1.0 axis output refers to positions at half of a full rotation + + if (joystick_position != joystick_status.axes[0]) { + joystick_status.axes[0] = joystick_position; + joystick_status.status |= JS_UPDATED; + } + return true; +} + +#endif diff --git a/keyboards/synthlabs/solo/keymaps/gamepad/readme.md b/keyboards/synthlabs/solo/keymaps/gamepad/readme.md new file mode 100644 index 0000000000..9930bb61b4 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/gamepad/readme.md @@ -0,0 +1,3 @@ +# Gamepad Synth Labs Solo Layout + +This keymap is intended for usage as a IIDX controller. The rotary encoder is mapped as a virtual 1-axis joystick. diff --git a/keyboards/synthlabs/solo/keymaps/gamepad/rules.mk b/keyboards/synthlabs/solo/keymaps/gamepad/rules.mk new file mode 100644 index 0000000000..30c23b8763 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/gamepad/rules.mk @@ -0,0 +1,2 @@ +JOYSTICK_ENABLE = yes +DEBOUNCE_TYPE = sym_eager_pk diff --git a/keyboards/synthlabs/solo/keymaps/via/keymap.c b/keyboards/synthlabs/solo/keymaps/via/keymap.c new file mode 100644 index 0000000000..7949c61375 --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/via/keymap.c @@ -0,0 +1,74 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_J, KC_U, KC_K, KC_I, KC_L, KC_O, KC_SCLN, + KC_VOLD, KC_MUTE, KC_VOLU, + KC_J, KC_U, KC_K, KC_I, KC_L, KC_O, KC_SCLN + ), + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______ + ) +}; + +#if defined(VIA_ENABLE) && defined(ENCODER_ENABLE) + +#ifdef ENCODERS +static uint8_t encoder_state[] = {0}; +static keypos_t encoder_cw[] = ENCODERS_CW_KEY; +static keypos_t encoder_ccw[] = ENCODERS_CCW_KEY; +#endif + +void encoder_action_unregister(void) { +#ifdef ENCODERS + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index]) { + keyevent_t encoder_event = (keyevent_t) { + .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index], + .pressed = false, + .time = (timer_read() | 1) + }; + encoder_state[index] = 0; + action_exec(encoder_event); + } + } +#endif +} + +void encoder_action_register(uint8_t index, bool clockwise) { +#ifdef ENCODERS + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = true, + .time = (timer_read() | 1) + }; + encoder_state[index] = (clockwise ^ 1) | (clockwise << 1); + action_exec(encoder_event); +#endif +} + +void matrix_scan_user(void) { + encoder_action_unregister(); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + return false; +} + +#endif diff --git a/keyboards/synthlabs/solo/keymaps/via/rules.mk b/keyboards/synthlabs/solo/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/synthlabs/solo/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/synthlabs/solo/readme.md b/keyboards/synthlabs/solo/readme.md new file mode 100644 index 0000000000..204bc3857f --- /dev/null +++ b/keyboards/synthlabs/solo/readme.md @@ -0,0 +1,28 @@ +# Synth Labs Solo + +![Synth Labs Solo](https://i.imgur.com/uVUtfksh.png) + +The Solo Macropad by Synth Labs. + +* Keyboard Maintainer: [Nostril](https://github.com/hongaaronc) +* Hardware Supported: Synth Labs Solo +* Hardware Availability: [https://solo.synthlabs.io/](https://solo.synthlabs.io/) + +Make example for this keyboard (after setting up your build environment): + + make synthlabs/solo:default + +Flashing example for this keyboard: + + make synthlabs/solo:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (1,1) in the matrix (the rotary encoder button) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available +* diff --git a/keyboards/synthlabs/solo/rules.mk b/keyboards/synthlabs/solo/rules.mk new file mode 100644 index 0000000000..131aa72aeb --- /dev/null +++ b/keyboards/synthlabs/solo/rules.mk @@ -0,0 +1,13 @@ +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes diff --git a/keyboards/synthlabs/solo/solo.c b/keyboards/synthlabs/solo/solo.c new file mode 100644 index 0000000000..b557a3505c --- /dev/null +++ b/keyboards/synthlabs/solo/solo.c @@ -0,0 +1,18 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "solo.h" + +#if !defined(VIA_ENABLE) && !defined(JOYSTICK_ENABLE) && defined(ENCODER_ENABLE) +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + return true; +} +#endif diff --git a/keyboards/synthlabs/solo/solo.h b/keyboards/synthlabs/solo/solo.h new file mode 100644 index 0000000000..c487446a49 --- /dev/null +++ b/keyboards/synthlabs/solo/solo.h @@ -0,0 +1,41 @@ +// Copyright 2022 Aaron Hong (@hongaaronc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +// This a shortcut to help you visually see your layout. +// The first section contains all of the arguments +// The second converts the arguments into a two-dimensional array +#define LAYOUT_all( \ + k00, k01, k02, k03, k04, k05, k06, \ + k10, k11, k12, \ + k20, k21, k22, k23, k24, k25, k26 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06 }, \ + { k10, k11, k12, XXX, XXX, XXX, XXX }, \ + { k20, k21, k22, k23, k24, k25, k26 } \ +} + +#define LAYOUT_left( \ + k01, k03, k05, \ + k10, k11, k12, \ + k20, k22, k24, k26 \ +) { \ + { XXX, k01, XXX, k03, XXX, k05, XXX }, \ + { k10, k11, k12, XXX, XXX, XXX, XXX }, \ + { k20, XXX, k22, XXX, k24, XXX, k26 } \ +} + +#define LAYOUT_right( \ + k25, k23, k21, \ + k10, k11, k12, \ + k06, k04, k02, k00 \ +) { \ + { k00, XXX, k02, XXX, k04, XXX, k06 }, \ + { k10, k11, k12, XXX, XXX, XXX, XXX }, \ + { XXX, k21, XXX, k23, XXX, k25, XXX } \ +} From 3f66e25b41cdb9192f1a9efb2771fed36559afb0 Mon Sep 17 00:00:00 2001 From: Nabos <9805355+nab-os@users.noreply.github.com> Date: Wed, 13 Apr 2022 08:03:49 +0200 Subject: [PATCH 225/699] [Keyboard] add 10k (#16531) Co-authored-by: Ryan Co-authored-by: Nicolas Ballet --- keyboards/handwired/10k/10k.c | 18 ++++++++ keyboards/handwired/10k/10k.h | 20 ++++++++ keyboards/handwired/10k/config.h | 24 ++++++++++ keyboards/handwired/10k/info.json | 46 +++++++++++++++++++ .../handwired/10k/keymaps/default/keymap.c | 42 +++++++++++++++++ keyboards/handwired/10k/keymaps/via/keymap.c | 42 +++++++++++++++++ keyboards/handwired/10k/keymaps/via/rules.mk | 1 + keyboards/handwired/10k/readme.md | 24 ++++++++++ keyboards/handwired/10k/rules.mk | 8 ++++ 9 files changed, 225 insertions(+) create mode 100644 keyboards/handwired/10k/10k.c create mode 100644 keyboards/handwired/10k/10k.h create mode 100644 keyboards/handwired/10k/config.h create mode 100644 keyboards/handwired/10k/info.json create mode 100644 keyboards/handwired/10k/keymaps/default/keymap.c create mode 100644 keyboards/handwired/10k/keymaps/via/keymap.c create mode 100644 keyboards/handwired/10k/keymaps/via/rules.mk create mode 100644 keyboards/handwired/10k/readme.md create mode 100644 keyboards/handwired/10k/rules.mk diff --git a/keyboards/handwired/10k/10k.c b/keyboards/handwired/10k/10k.c new file mode 100644 index 0000000000..bd0babd956 --- /dev/null +++ b/keyboards/handwired/10k/10k.c @@ -0,0 +1,18 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#include "10k.h" + diff --git a/keyboards/handwired/10k/10k.h b/keyboards/handwired/10k/10k.h new file mode 100644 index 0000000000..8fbabcf6ca --- /dev/null +++ b/keyboards/handwired/10k/10k.h @@ -0,0 +1,20 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#pragma once + +#include "quantum.h" + diff --git a/keyboards/handwired/10k/config.h b/keyboards/handwired/10k/config.h new file mode 100644 index 0000000000..4ec6d94128 --- /dev/null +++ b/keyboards/handwired/10k/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#pragma once +#include "config_common.h" + +/* Enables This makes it easier for fast typists to use dual-function keys */ +#define PERMISSIVE_HOLD + +#define USE_I2C +#define MASTER_RIGHT diff --git a/keyboards/handwired/10k/info.json b/keyboards/handwired/10k/info.json new file mode 100644 index 0000000000..7601788ddc --- /dev/null +++ b/keyboards/handwired/10k/info.json @@ -0,0 +1,46 @@ +{ + "keyboard_name": "10k", + "maintainer": "Nabos", + "manufacturer": "Nabos", + "debounce": 5, + "diode_direction": "COL2ROW", + "matrix_pins": { + "cols": ["C6", "D7", "E6", "B4", "B5"], + "rows": ["B6"] + }, + "features": { + "audio": false, + "backlight": false, + "bootmagic": false, + "command": false, + "console": false, + "extrakey": false, + "mousekey": false, + "nkro": false, + "rgblight": false + }, + "usb": { + "vid": "0x6869", + "pid": "0x0001", + "device_version": "0.0.1" + }, + "layout_aliases": { + "LAYOUT": "LAYOUT_split_1x5" + }, + "layouts": { + "LAYOUT_split_1x5": { + "layout": [ + {"label": "L00", "matrix": [0, 0], "x":0.4295, "y":1.011}, + {"label": "L01", "matrix": [0, 1], "x":1.445, "y":0.819}, + {"label": "L02", "matrix": [0, 2], "x":2.5385, "y":0.7555}, + {"label": "L03", "matrix": [0, 3], "x":3.568, "y":1.3745}, + {"label": "L04", "matrix": [0, 4], "x":4.2, "y":3.987}, + {"label": "R00", "matrix": [1, 0], "x":5.2, "y":3.987}, + {"label": "R01", "matrix": [1, 1], "x":5.832, "y":1.3745}, + {"label": "R02", "matrix": [1, 2], "x":6.8615, "y":0.7555}, + {"label": "R03", "matrix": [1, 3], "x":7.955, "y":0.819}, + {"label": "R04", "matrix": [1, 4], "x":8.9705, "y":1.011} + ] + } + } +} diff --git a/keyboards/handwired/10k/keymaps/default/keymap.c b/keyboards/handwired/10k/keymaps/default/keymap.c new file mode 100644 index 0000000000..3bbcff563c --- /dev/null +++ b/keyboards/handwired/10k/keymaps/default/keymap.c @@ -0,0 +1,42 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_split_1x5( + KC_A , KC_S , KC_D , KC_F ,KC_SPC , KC_SPC , KC_J , KC_K , KC_L ,KC_SCLN + ), + + [_LOWER] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ), + + [_RAISE] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ), + + [_ADJUST] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ) +}; diff --git a/keyboards/handwired/10k/keymaps/via/keymap.c b/keyboards/handwired/10k/keymaps/via/keymap.c new file mode 100644 index 0000000000..3bbcff563c --- /dev/null +++ b/keyboards/handwired/10k/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* +Copyright 2022 Nabos + +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 . +*/ +#include QMK_KEYBOARD_H + +enum layer_names { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_split_1x5( + KC_A , KC_S , KC_D , KC_F ,KC_SPC , KC_SPC , KC_J , KC_K , KC_L ,KC_SCLN + ), + + [_LOWER] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ), + + [_RAISE] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ), + + [_ADJUST] = LAYOUT_split_1x5( + _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ + ) +}; diff --git a/keyboards/handwired/10k/keymaps/via/rules.mk b/keyboards/handwired/10k/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/handwired/10k/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/handwired/10k/readme.md b/keyboards/handwired/10k/readme.md new file mode 100644 index 0000000000..270297e927 --- /dev/null +++ b/keyboards/handwired/10k/readme.md @@ -0,0 +1,24 @@ +# 10k + +Simple 10 keys chord keyboard + +* Keyboard Maintainer: [Nabos](https://github.com/nab-os) +* Hardware Supported: Tested with Elite-C V4 and ProMicro + +Make example for this keyboard (after setting up your build environment): + + make handwired/10k:default + +Flashing example for this keyboard: + + make handwired/10k:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/handwired/10k/rules.mk b/keyboards/handwired/10k/rules.mk new file mode 100644 index 0000000000..af5f432a63 --- /dev/null +++ b/keyboards/handwired/10k/rules.mk @@ -0,0 +1,8 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +SPLIT_KEYBOARD = yes +LTO_ENABLE = yes From 2d05c7fc2500582fd0605569fe929e04bb8cc8ae Mon Sep 17 00:00:00 2001 From: ziptyze Date: Wed, 13 Apr 2022 02:04:38 -0400 Subject: [PATCH 226/699] [Keyboard] super16 update (#16494) --- keyboards/1upkeyboards/super16v2/config.h | 81 ++++++++++++++----- .../super16v2/keymaps/default/keymap.c | 18 ++++- .../super16v2/keymaps/mouse/keymap.c | 50 ++++++++++++ .../super16v2/keymaps/mouse/readme.md | 1 + keyboards/1upkeyboards/super16v2/rules.mk | 5 +- keyboards/1upkeyboards/super16v2/super16v2.c | 24 ++++++ 6 files changed, 156 insertions(+), 23 deletions(-) create mode 100644 keyboards/1upkeyboards/super16v2/keymaps/mouse/keymap.c create mode 100644 keyboards/1upkeyboards/super16v2/keymaps/mouse/readme.md diff --git a/keyboards/1upkeyboards/super16v2/config.h b/keyboards/1upkeyboards/super16v2/config.h index 4685e66b2d..9832c28bef 100644 --- a/keyboards/1upkeyboards/super16v2/config.h +++ b/keyboards/1upkeyboards/super16v2/config.h @@ -22,6 +22,8 @@ #define MATRIX_ROWS 4 #define MATRIX_COLS 4 +#define MOUSEKEY_MOVE_DELTA 25 + /* * Keyboard Matrix Assignments * @@ -37,6 +39,9 @@ #define MATRIX_ROW_PINS { D1, D2, D3, D4 } #define MATRIX_COL_PINS { D5, D6, C2, D0 } +#define ENCODERS_PAD_A { B1, B3 } +#define ENCODERS_PAD_B { B2, B4 } + #define UNUSED_PINS /* COL2ROW, ROW2COL */ @@ -58,28 +63,62 @@ //#define BACKLIGHT_BREATHING #define RGB_DI_PIN B5 +#define DRIVER_LED_TOTAL 20 #ifdef RGB_DI_PIN -# define RGBLED_NUM 20 -# define RGBLIGHT_HUE_STEP 8 -# define RGBLIGHT_SAT_STEP 8 -# define RGBLIGHT_VAL_STEP 8 -# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -# define RGBLIGHT_EFFECT_BREATHING -# define RGBLIGHT_EFFECT_RAINBOW_MOOD -# define RGBLIGHT_EFFECT_RAINBOW_SWIRL -# define RGBLIGHT_EFFECT_SNAKE -# define RGBLIGHT_EFFECT_KNIGHT -# define RGBLIGHT_EFFECT_CHRISTMAS -# define RGBLIGHT_EFFECT_STATIC_GRADIENT -# define RGBLIGHT_EFFECT_RGB_TEST -# define RGBLIGHT_EFFECT_ALTERNATING -/*== customize breathing effect ==*/ -/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -/*==== use exp() and sin() ====*/ -//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +# define RGB_MATRIX_KEYPRESSES // reacts to keypresses +# define RGBLIGHT_LIMIT_VAL 255 +#endif +#ifdef RGB_MATRIX_ENABLE +# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +//# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +//# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +//# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +//# define ENABLE_RGB_MATRIX_MULTISPLASH +//# define ENABLE_RGB_MATRIX_SOLID_SPLASH +//# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH #endif /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ diff --git a/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c b/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c index dc58023a37..b80db58bae 100644 --- a/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c +++ b/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c @@ -27,8 +27,24 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_4x4( /* Fn Layer */ RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET ), }; +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { /* First encoder */ + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } else if (index == 1) { /* Second encoder */ + if (clockwise) { + rgb_matrix_increase_hue(); + } else { + rgb_matrix_decrease_hue(); + } + } + return false; +} \ No newline at end of file diff --git a/keyboards/1upkeyboards/super16v2/keymaps/mouse/keymap.c b/keyboards/1upkeyboards/super16v2/keymaps/mouse/keymap.c new file mode 100644 index 0000000000..86ea58e8a5 --- /dev/null +++ b/keyboards/1upkeyboards/super16v2/keymaps/mouse/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x4( /* Base */ + KC_TRNS, KC_DELETE, KC_BACKSPACE, KC_MUTE, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PSLS, + MO(1), KC_P0, KC_PDOT, KC_BTN3 + ), + + [1] = LAYOUT_ortho_4x4( /* Fn Layer */ + RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, + RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, + RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, RESET + ), +}; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { /* First encoder */ + if (clockwise) { + tap_code_delay(KC_MS_RIGHT, 10); + } else { + tap_code_delay(KC_MS_LEFT, 10); + } + } else if (index == 1) { /* Second encoder */ + if (clockwise) { + tap_code_delay(KC_AUDIO_VOL_UP, 10); + } else { + tap_code_delay(KC_AUDIO_VOL_DOWN, 10); + } + } + return false; +} \ No newline at end of file diff --git a/keyboards/1upkeyboards/super16v2/keymaps/mouse/readme.md b/keyboards/1upkeyboards/super16v2/keymaps/mouse/readme.md new file mode 100644 index 0000000000..e229fcba74 --- /dev/null +++ b/keyboards/1upkeyboards/super16v2/keymaps/mouse/readme.md @@ -0,0 +1 @@ +# The default keymap for Super 16 V2 diff --git a/keyboards/1upkeyboards/super16v2/rules.mk b/keyboards/1upkeyboards/super16v2/rules.mk index d31d53cead..3e20247dff 100644 --- a/keyboards/1upkeyboards/super16v2/rules.mk +++ b/keyboards/1upkeyboards/super16v2/rules.mk @@ -14,5 +14,8 @@ CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 +ENCODER_ENABLE = yes \ No newline at end of file diff --git a/keyboards/1upkeyboards/super16v2/super16v2.c b/keyboards/1upkeyboards/super16v2/super16v2.c index fc73f700c4..ff7ce33c84 100644 --- a/keyboards/1upkeyboards/super16v2/super16v2.c +++ b/keyboards/1upkeyboards/super16v2/super16v2.c @@ -15,3 +15,27 @@ */ #include "super16v2.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + // Key Matrix to LED Index + { 3, 2, 1, 0 }, + { 7, 6, 5, 4 }, + { 11, 10, 9, 8 }, + { 15, 14, 13, 12 } +}, { + // LED Index to Physical Position + { 28, 12 }, { 84, 12 }, { 140, 12 }, { 196, 12 }, + { 28, 28 }, { 84, 28 }, { 140, 28 }, { 196, 28 }, + { 28, 44 }, { 84, 44 }, { 140, 44 }, { 196, 44 }, + { 28, 60 }, { 84, 60 }, { 140, 60 }, { 196, 60 }, + { 168, 48 }, { 168, 16 }, { 58, 16 }, { 56, 48 } +}, { + // LED Index to Flag + 4, 4, 4, 4, + 4, 4, 4, 4, + 4, 4, 4, 4, + 4, 4, 4, 4, + 2, 2, 2, 2, +} }; +#endif From 9a38ebc65600b42681e86179ab2ffe39dfd9dcdb Mon Sep 17 00:00:00 2001 From: Moritz Date: Wed, 13 Apr 2022 08:20:07 +0200 Subject: [PATCH 227/699] [Keyboard] add E80-1800 PCB (#16645) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/ebastler/e80_1800/chconf.h | 21 ++++ keyboards/ebastler/e80_1800/config.h | 67 +++++++++++ keyboards/ebastler/e80_1800/e80_1800.c | 17 +++ keyboards/ebastler/e80_1800/e80_1800.h | 109 ++++++++++++++++++ keyboards/ebastler/e80_1800/halconf.h | 21 ++++ keyboards/ebastler/e80_1800/info.json | 22 ++++ .../e80_1800/keymaps/ansi_6u/keymap.c | 46 ++++++++ .../e80_1800/keymaps/ansi_7u/keymap.c | 46 ++++++++ .../e80_1800/keymaps/default/keymap.c | 46 ++++++++ .../ebastler/e80_1800/keymaps/iso_6u/keymap.c | 47 ++++++++ .../ebastler/e80_1800/keymaps/iso_7u/keymap.c | 46 ++++++++ .../ebastler/e80_1800/keymaps/via/keymap.c | 47 ++++++++ .../ebastler/e80_1800/keymaps/via/rules.mk | 1 + keyboards/ebastler/e80_1800/mcuconf.h | 32 +++++ keyboards/ebastler/e80_1800/readme.md | 25 ++++ keyboards/ebastler/e80_1800/rules.mk | 22 ++++ keyboards/ebastler/readme.md | 4 +- 17 files changed, 618 insertions(+), 1 deletion(-) create mode 100644 keyboards/ebastler/e80_1800/chconf.h create mode 100644 keyboards/ebastler/e80_1800/config.h create mode 100644 keyboards/ebastler/e80_1800/e80_1800.c create mode 100644 keyboards/ebastler/e80_1800/e80_1800.h create mode 100644 keyboards/ebastler/e80_1800/halconf.h create mode 100644 keyboards/ebastler/e80_1800/info.json create mode 100644 keyboards/ebastler/e80_1800/keymaps/ansi_6u/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/ansi_7u/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/default/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/iso_6u/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/iso_7u/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/via/keymap.c create mode 100644 keyboards/ebastler/e80_1800/keymaps/via/rules.mk create mode 100644 keyboards/ebastler/e80_1800/mcuconf.h create mode 100644 keyboards/ebastler/e80_1800/readme.md create mode 100644 keyboards/ebastler/e80_1800/rules.mk diff --git a/keyboards/ebastler/e80_1800/chconf.h b/keyboards/ebastler/e80_1800/chconf.h new file mode 100644 index 0000000000..ee4fd213a2 --- /dev/null +++ b/keyboards/ebastler/e80_1800/chconf.h @@ -0,0 +1,21 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 3 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 . + */ +#pragma once + +#define CH_CFG_ST_RESOLUTION 16 +#define CH_CFG_INTERVALS_SIZE 16 + +#include_next \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/config.h b/keyboards/ebastler/e80_1800/config.h new file mode 100644 index 0000000000..968c7a1fc7 --- /dev/null +++ b/keyboards/ebastler/e80_1800/config.h @@ -0,0 +1,67 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6562 // "eb" +#define PRODUCT_ID 0x1338 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ebastler +#define PRODUCT E80-1800 + +/* Limit layer count to fit in storage with VIA enabled */ +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 + +/* key matrix size */ +#define MATRIX_ROWS 7 +#define MATRIX_COLS 19 + +#define MATRIX_ROW_PINS { B7, B3, D2, C12, C11, C10, A15 } +#define MATRIX_COL_PINS { A1, A0, C3, C2, F1, F0, C15, C14, C13, C4, C5, B0, B1, B2, B9, A13, A8, C9, C8 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW +#define DEBOUNCE 5 + +#define LED_NUM_LOCK_PIN B6 +#define LED_CAPS_LOCK_PIN B5 +#define LED_SCROLL_LOCK_PIN B4 +#define LED_PIN_ON_STATE 0 + +/* Backlight */ +#define BACKLIGHT_PIN A9 +#define BACKLIGHT_BREATHING // don't disable even if you don't want breathing - it will not compile without +#define BACKLIGHT_PWM_DRIVER PWMD1 +#define BACKLIGHT_PWM_CHANNEL 2 +#define BACKLIGHT_PAL_MODE 2 +#define BACKLIGHT_LEVELS 5 +#define BACKLIGHT_ON_STATE 1 +#define BACKLIGHT_PWM_OUTPUT_FREQUENCY 1000 + +/* I2C for OLED */ +#define I2C_DRIVER I2CD2 +#define I2C1_SCL_PIN B10 +#define I2C1_SDA_PIN B11 +#define I2C1_SCL_PAL_MODE 1 +#define I2C1_SDA_PAL_MODE 1 +#define I2C1_TIMINGR_PRESC 0U +#define I2C1_TIMINGR_SCLDEL 3U +#define I2C1_TIMINGR_SDADEL 1U +#define I2C1_TIMINGR_SCLH 3U +#define I2C1_TIMINGR_SCLL 9U diff --git a/keyboards/ebastler/e80_1800/e80_1800.c b/keyboards/ebastler/e80_1800/e80_1800.c new file mode 100644 index 0000000000..7dd2f3edff --- /dev/null +++ b/keyboards/ebastler/e80_1800/e80_1800.c @@ -0,0 +1,17 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 . + */ + +#include "e80_1800.h" diff --git a/keyboards/ebastler/e80_1800/e80_1800.h b/keyboards/ebastler/e80_1800/e80_1800.h new file mode 100644 index 0000000000..4027c0d27e --- /dev/null +++ b/keyboards/ebastler/e80_1800/e80_1800.h @@ -0,0 +1,109 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_1800_all( \ + K000, K001, K002, K003, K004, K006, K007, K008, K009, K010, K011, K012, K013, K015, K016, K017, K018, \ + K115, K116, K117, K118, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, K216, K217, K218, \ + K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K315, K316, K317, K318, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418, \ + K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K513, K514, K515, K516, K517, K518, \ + K600, K601, K602, K606, K609, K610, K611, K612, K613, K614, K615, K616, K617 \ +) { \ + { K000, K001, K002, K003, K004, KC_NO, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, K016, K017, K018 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K115, K116, K117, K118 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215, K216, K217, K218 }, \ + { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K315, K316, K317, K318 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418 }, \ + { K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, KC_NO, K513, K514, K515, K516, K517, K518 }, \ + { K600, K601, K602, KC_NO, KC_NO, KC_NO, K606, KC_NO, KC_NO, K609, K610, K611, K612, K613, K614, K615, K616, K617, KC_NO } \ +} + +#define LAYOUT_1800_iso_6u( \ + K000, K001, K002, K003, K004, K006, K007, K008, K009, K010, K011, K012, K013, K015, K016, K017, K018, \ + K115, K116, K117, K118, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, K216, K217, K218, \ + K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, K316, K317, K318, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418, \ + K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K513, K514, K515, K516, K517, K518, \ + K600, K601, K602, K606, K609, K610, K611, K612, K613, K614, K615, K616, K617 \ +) { \ + { K000, K001, K002, K003, K004, KC_NO, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, K016, K017, K018 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K115, K116, K117, K118 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215, K216, K217, K218 }, \ + { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315, K316, K317, K318 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418 }, \ + { K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, KC_NO, K513, K514, K515, K516, K517, K518 }, \ + { K600, K601, K602, KC_NO, KC_NO, KC_NO, K606, KC_NO, KC_NO, K609, K610, K611, K612, K613, K614, K615, K616, K617, KC_NO } \ +} + +#define LAYOUT_1800_iso_7u( \ + K000, K001, K002, K003, K004, K006, K007, K008, K009, K010, K011, K012, K013, K015, K016, K017, K018, \ + K115, K116, K117, K118, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, K216, K217, K218, \ + K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, K316, K317, K318, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418, \ + K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K513, K514, K515, K516, K517, K518, \ + K600, K602, K606, K609, K612, K613, K614, K615, K616, K617 \ +) { \ + { K000, K001, K002, K003, K004, KC_NO, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, K016, K017, K018 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K115, K116, K117, K118 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215, K216, K217, K218 }, \ + { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315, K316, K317, K318 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, K418 }, \ + { K500, K501, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, KC_NO, K513, K514, K515, K516, K517, K518 }, \ + { K600, KC_NO, K602, KC_NO, KC_NO, KC_NO, K606, KC_NO, KC_NO, K609, KC_NO, KC_NO, K612, K613, K614, K615, K616, K617, KC_NO } \ +} + +#define LAYOUT_1800_ansi_6u( \ + K000, K001, K002, K003, K004, K006, K007, K008, K009, K010, K011, K012, K013, K015, K016, K017, K018, \ + K115, K116, K117, K118, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, K216, K217, K218, \ + K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K314, K315, K316, K317, K318, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K414, K415, K416, K417, K418, \ + K500, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K513, K514, K515, K516, K517, K518, \ + K600, K601, K602, K606, K609, K610, K611, K612, K613, K614, K615, K616, K617 \ +) { \ + { K000, K001, K002, K003, K004, KC_NO, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, K016, K017, K018 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K314, K115, K116, K117, K118 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215, K216, K217, K218 }, \ + { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315, K316, K317, K318 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, KC_NO, K414, K415, K416, K417, K418 }, \ + { K500, KC_NO, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, KC_NO, K513, K514, K515, K516, K517, K518 }, \ + { K600, K601, K602, KC_NO, KC_NO, KC_NO, K606, KC_NO, KC_NO, K609, K610, K611, K612, K613, K614, K615, K616, K617, KC_NO } \ +} + +#define LAYOUT_1800_ansi_7u( \ + K000, K001, K002, K003, K004, K006, K007, K008, K009, K010, K011, K012, K013, K015, K016, K017, K018, \ + K314, K115, K116, K117, K118, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K214, K215, K216, K217, K218, \ + K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, K316, K317, K318, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K414, K415, K416, K417, K418, \ + K500, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, K513, K514, K515, K516, K517, K518, \ + K600, K602, K606, K609, K612, K613, K614, K615, K616, K617 \ +) { \ + { K000, K001, K002, K003, K004, KC_NO, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, K015, K016, K017, K018 }, \ + { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, K314, K115, K116, K117, K118 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, KC_NO, K214, K215, K216, K217, K218 }, \ + { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315, K316, K317, K318 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, KC_NO, K414, K415, K416, K417, K418 }, \ + { K500, KC_NO, K502, K503, K504, K505, K506, K507, K508, K509, K510, K511, KC_NO, K513, K514, K515, K516, K517, K518 }, \ + { K600, KC_NO, K602, KC_NO, KC_NO, KC_NO, K606, KC_NO, KC_NO, K609, KC_NO, KC_NO, K612, K613, K614, K615, K616, K617, KC_NO } \ +} diff --git a/keyboards/ebastler/e80_1800/halconf.h b/keyboards/ebastler/e80_1800/halconf.h new file mode 100644 index 0000000000..974b0086ad --- /dev/null +++ b/keyboards/ebastler/e80_1800/halconf.h @@ -0,0 +1,21 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 3 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 . + */ +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_I2C TRUE + +#include_next \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/info.json b/keyboards/ebastler/e80_1800/info.json new file mode 100644 index 0000000000..503cafaa3d --- /dev/null +++ b/keyboards/ebastler/e80_1800/info.json @@ -0,0 +1,22 @@ +{ + "keyboard_name": "E80_1800", + "url": "https://github.com/ebastler/E80-1800", + "maintainer": "ebastler", + "layouts": { + "LAYOUT_1800_all": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"Insert", "x":15.5, "y":0}, {"label":"Home", "x":16.5, "y":0}, {"label":"PgUp", "x":17.5, "y":0}, {"label":"PrtSc", "x":18.5, "y":0}, {"label":"Delete", "x":15.5, "y":1}, {"label":"End", "x":16.5, "y":1}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"Scroll Lock", "x":18.5, "y":1}, {"label":"\u00ac", "x":0, "y":2}, {"label":"!", "x":1, "y":2}, {"label":"\"", "x":2, "y":2}, {"label":"\u00a7", "x":3, "y":2}, {"label":"$", "x":4, "y":2}, {"label":"%", "x":5, "y":2}, {"label":"&", "x":6, "y":2}, {"label":"/", "x":7, "y":2}, {"label":"(", "x":8, "y":2}, {"label":")", "x":9, "y":2}, {"label":"=", "x":10, "y":2}, {"label":"?", "x":11, "y":2}, {"label":"`", "x":12, "y":2}, {"label":"Backspace", "x":13, "y":2, "w":2}, {"label":"Num Lock", "x":15.5, "y":2}, {"label":"/", "x":16.5, "y":2}, {"label":"*", "x":17.5, "y":2}, {"label":"Pause", "x":18.5, "y":2}, {"label":"Tab", "x":0, "y":3, "w":1.5}, {"label":"Q", "x":1.5, "y":3}, {"label":"W", "x":2.5, "y":3}, {"label":"E", "x":3.5, "y":3}, {"label":"R", "x":4.5, "y":3}, {"label":"T", "x":5.5, "y":3}, {"label":"Y", "x":6.5, "y":3}, {"label":"U", "x":7.5, "y":3}, {"label":"I", "x":8.5, "y":3}, {"label":"O", "x":9.5, "y":3}, {"label":"P", "x":10.5, "y":3}, {"label":"{", "x":11.5, "y":3}, {"label":"}", "x":12.5, "y":3}, {"label":"|", "x":13.5, "y":3, "w":1.5}, {"label":"7", "x":15.5, "y":3}, {"label":"8", "x":16.5, "y":3}, {"label":"9", "x":17.5, "y":3}, {"label":"-", "x":18.5, "y":3}, {"label":"Caps Lock", "x":0, "y":4, "w":1.75}, {"label":"A", "x":1.75, "y":4}, {"label":"S", "x":2.75, "y":4}, {"label":"D", "x":3.75, "y":4}, {"label":"F", "x":4.75, "y":4}, {"label":"G", "x":5.75, "y":4}, {"label":"H", "x":6.75, "y":4}, {"label":"J", "x":7.75, "y":4}, {"label":"K", "x":8.75, "y":4}, {"label":"L", "x":9.75, "y":4}, {"label":":", "x":10.75, "y":4}, {"label":"@", "x":11.75, "y":4}, {"label":"~", "x":12.75, "y":4}, {"label":"Enter", "x":13.75, "y":3, "w":1.25, "h":2}, {"label":"4", "x":15.5, "y":4}, {"label":"5", "x":16.5, "y":4}, {"label":"6", "x":17.5, "y":4}, {"label":"+", "x":18.5, "y":4}, {"label":"Shift", "x":0, "y":5, "w":1.25}, {"label":"|", "x":1.25, "y":5}, {"label":"Z", "x":2.25, "y":5}, {"label":"X", "x":3.25, "y":5}, {"label":"C", "x":4.25, "y":5}, {"label":"V", "x":5.25, "y":5}, {"label":"B", "x":6.25, "y":5}, {"label":"N", "x":7.25, "y":5}, {"label":"M", "x":8.25, "y":5}, {"label":"<", "x":9.25, "y":5}, {"label":">", "x":10.25, "y":5}, {"label":"?", "x":11.25, "y":5}, {"label":"Shift", "x":12.25, "y":5, "w":1.75}, {"label":"up", "x":14.25, "y":5.25}, {"label":"1", "x":15.5, "y":5}, {"label":"2", "x":16.5, "y":5}, {"label":"3", "x":17.5, "y":5}, {"label":"Enter", "x":18.5, "y":5, "h":2}, {"label":"Ctrl", "x":0, "y":6}, {"label":"Win", "x":1, "y":6}, {"label":"Alt", "x":2, "y":6}, {"x":3, "y":6, "w":6}, {"label":"AltGr", "x":9, "y":6}, {"label":"Win", "x":10, "y":6}, {"label":"Menu", "x":11, "y":6}, {"label":"Ctrl", "x":12, "y":6}, {"label":"left", "x":13.25, "y":6.25}, {"label":"down", "x":14.25, "y":6.25}, {"label":"right", "x":15.25, "y":6.25}, {"label":"0", "x":16.5, "y":6}, {"label":".", "x":17.5, "y":6}] + }, + "LAYOUT_1800_iso_6u": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"Insert", "x":15.5, "y":0}, {"label":"Home", "x":16.5, "y":0}, {"label":"PgUp", "x":17.5, "y":0}, {"label":"PrtSc", "x":18.5, "y":0}, {"label":"Delete", "x":15.5, "y":1}, {"label":"End", "x":16.5, "y":1}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"Scroll Lock", "x":18.5, "y":1}, {"label":"\u00ac", "x":0, "y":2}, {"label":"!", "x":1, "y":2}, {"label":"\"", "x":2, "y":2}, {"label":"\u00a7", "x":3, "y":2}, {"label":"$", "x":4, "y":2}, {"label":"%", "x":5, "y":2}, {"label":"&", "x":6, "y":2}, {"label":"/", "x":7, "y":2}, {"label":"(", "x":8, "y":2}, {"label":")", "x":9, "y":2}, {"label":"=", "x":10, "y":2}, {"label":"?", "x":11, "y":2}, {"label":"`", "x":12, "y":2}, {"label":"Backspace", "x":13, "y":2, "w":2}, {"label":"Num Lock", "x":15.5, "y":2}, {"label":"/", "x":16.5, "y":2}, {"label":"*", "x":17.5, "y":2}, {"label":"Pause", "x":18.5, "y":2}, {"label":"Tab", "x":0, "y":3, "w":1.5}, {"label":"Q", "x":1.5, "y":3}, {"label":"W", "x":2.5, "y":3}, {"label":"E", "x":3.5, "y":3}, {"label":"R", "x":4.5, "y":3}, {"label":"T", "x":5.5, "y":3}, {"label":"Y", "x":6.5, "y":3}, {"label":"U", "x":7.5, "y":3}, {"label":"I", "x":8.5, "y":3}, {"label":"O", "x":9.5, "y":3}, {"label":"P", "x":10.5, "y":3}, {"label":"{", "x":11.5, "y":3}, {"label":"}", "x":12.5, "y":3}, {"label":"7", "x":15.5, "y":3}, {"label":"8", "x":16.5, "y":3}, {"label":"9", "x":17.5, "y":3}, {"label":"-", "x":18.5, "y":3}, {"label":"Caps Lock", "x":0, "y":4, "w":1.75}, {"label":"A", "x":1.75, "y":4}, {"label":"S", "x":2.75, "y":4}, {"label":"D", "x":3.75, "y":4}, {"label":"F", "x":4.75, "y":4}, {"label":"G", "x":5.75, "y":4}, {"label":"H", "x":6.75, "y":4}, {"label":"J", "x":7.75, "y":4}, {"label":"K", "x":8.75, "y":4}, {"label":"L", "x":9.75, "y":4}, {"label":":", "x":10.75, "y":4}, {"label":"@", "x":11.75, "y":4}, {"label":"~", "x":12.75, "y":4}, {"label":"Enter", "x":13.75, "y":3, "w":1.25, "h":2}, {"label":"4", "x":15.5, "y":4}, {"label":"5", "x":16.5, "y":4}, {"label":"6", "x":17.5, "y":4}, {"label":"+", "x":18.5, "y":4}, {"label":"Shift", "x":0, "y":5, "w":1.25}, {"label":"|", "x":1.25, "y":5}, {"label":"Z", "x":2.25, "y":5}, {"label":"X", "x":3.25, "y":5}, {"label":"C", "x":4.25, "y":5}, {"label":"V", "x":5.25, "y":5}, {"label":"B", "x":6.25, "y":5}, {"label":"N", "x":7.25, "y":5}, {"label":"M", "x":8.25, "y":5}, {"label":"<", "x":9.25, "y":5}, {"label":">", "x":10.25, "y":5}, {"label":"?", "x":11.25, "y":5}, {"label":"Shift", "x":12.25, "y":5, "w":1.75}, {"label":"up", "x":14.25, "y":5.25}, {"label":"1", "x":15.5, "y":5}, {"label":"2", "x":16.5, "y":5}, {"label":"3", "x":17.5, "y":5}, {"label":"Enter", "x":18.5, "y":5, "h":2}, {"label":"Ctrl", "x":0, "y":6}, {"label":"Win", "x":1, "y":6}, {"label":"Alt", "x":2, "y":6}, {"x":3, "y":6, "w":6}, {"label":"AltGr", "x":9, "y":6}, {"label":"Win", "x":10, "y":6}, {"label":"Menu", "x":11, "y":6}, {"label":"Ctrl", "x":12, "y":6}, {"label":"left", "x":13.25, "y":6.25}, {"label":"down", "x":14.25, "y":6.25}, {"label":"right", "x":15.25, "y":6.25}, {"label":"0", "x":16.5, "y":6}, {"label":".", "x":17.5, "y":6}] + }, + "LAYOUT_1800_iso_7u": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"Insert", "x":15.5, "y":0}, {"label":"Home", "x":16.5, "y":0}, {"label":"PgUp", "x":17.5, "y":0}, {"label":"PrtSc", "x":18.5, "y":0}, {"label":"Delete", "x":15.5, "y":1}, {"label":"End", "x":16.5, "y":1}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"Scroll Lock", "x":18.5, "y":1}, {"label":"\u00ac", "x":0, "y":2}, {"label":"!", "x":1, "y":2}, {"label":"\"", "x":2, "y":2}, {"label":"\u00a7", "x":3, "y":2}, {"label":"$", "x":4, "y":2}, {"label":"%", "x":5, "y":2}, {"label":"&", "x":6, "y":2}, {"label":"/", "x":7, "y":2}, {"label":"(", "x":8, "y":2}, {"label":")", "x":9, "y":2}, {"label":"=", "x":10, "y":2}, {"label":"?", "x":11, "y":2}, {"label":"`", "x":12, "y":2}, {"label":"Backspace", "x":13, "y":2, "w":2}, {"label":"Num Lock", "x":15.5, "y":2}, {"label":"/", "x":16.5, "y":2}, {"label":"*", "x":17.5, "y":2}, {"label":"Pause", "x":18.5, "y":2}, {"label":"Tab", "x":0, "y":3, "w":1.5}, {"label":"Q", "x":1.5, "y":3}, {"label":"W", "x":2.5, "y":3}, {"label":"E", "x":3.5, "y":3}, {"label":"R", "x":4.5, "y":3}, {"label":"T", "x":5.5, "y":3}, {"label":"Y", "x":6.5, "y":3}, {"label":"U", "x":7.5, "y":3}, {"label":"I", "x":8.5, "y":3}, {"label":"O", "x":9.5, "y":3}, {"label":"P", "x":10.5, "y":3}, {"label":"{", "x":11.5, "y":3}, {"label":"}", "x":12.5, "y":3}, {"label":"7", "x":15.5, "y":3}, {"label":"8", "x":16.5, "y":3}, {"label":"9", "x":17.5, "y":3}, {"label":"-", "x":18.5, "y":3}, {"label":"Caps Lock", "x":0, "y":4, "w":1.75}, {"label":"A", "x":1.75, "y":4}, {"label":"S", "x":2.75, "y":4}, {"label":"D", "x":3.75, "y":4}, {"label":"F", "x":4.75, "y":4}, {"label":"G", "x":5.75, "y":4}, {"label":"H", "x":6.75, "y":4}, {"label":"J", "x":7.75, "y":4}, {"label":"K", "x":8.75, "y":4}, {"label":"L", "x":9.75, "y":4}, {"label":":", "x":10.75, "y":4}, {"label":"@", "x":11.75, "y":4}, {"label":"~", "x":12.75, "y":4}, {"label":"Enter", "x":13.75, "y":3, "w":1.25, "h":2}, {"label":"4", "x":15.5, "y":4}, {"label":"5", "x":16.5, "y":4}, {"label":"6", "x":17.5, "y":4}, {"label":"+", "x":18.5, "y":4}, {"label":"Shift", "x":0, "y":5, "w":1.25}, {"label":"|", "x":1.25, "y":5}, {"label":"Z", "x":2.25, "y":5}, {"label":"X", "x":3.25, "y":5}, {"label":"C", "x":4.25, "y":5}, {"label":"V", "x":5.25, "y":5}, {"label":"B", "x":6.25, "y":5}, {"label":"N", "x":7.25, "y":5}, {"label":"M", "x":8.25, "y":5}, {"label":"<", "x":9.25, "y":5}, {"label":">", "x":10.25, "y":5}, {"label":"?", "x":11.25, "y":5}, {"label":"Shift", "x":12.25, "y":5, "w":1.75}, {"label":"up", "x":14.25, "y":5.25}, {"label":"1", "x":15.5, "y":5}, {"label":"2", "x":16.5, "y":5}, {"label":"3", "x":17.5, "y":5}, {"label":"Enter", "x":18.5, "y":5, "h":2}, {"label":"Ctrl", "x":0, "y":6, "w":1.5}, {"label":"Alt", "x":1.5, "y":6, "w":1.5}, {"x":3, "y":6, "w":7}, {"label":"AltGr", "x":10, "y":6, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":6, "w":1.5}, {"label":"left", "x":13.25, "y":6.25}, {"label":"down", "x":14.25, "y":6.25}, {"label":"right", "x":15.25, "y":6.25}, {"label":"0", "x":16.5, "y":6}, {"label":".", "x":17.5, "y":6}] + }, + "LAYOUT_1800_ansi_6u": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"Insert", "x":15.5, "y":0}, {"label":"Home", "x":16.5, "y":0}, {"label":"PgUp", "x":17.5, "y":0}, {"label":"PrtSc", "x":18.5, "y":0}, {"label":"Delete", "x":15.5, "y":1}, {"label":"End", "x":16.5, "y":1}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"Scroll Lock", "x":18.5, "y":1}, {"label":"~", "x":0, "y":2}, {"label":"!", "x":1, "y":2}, {"label":"@", "x":2, "y":2}, {"label":"#", "x":3, "y":2}, {"label":"$", "x":4, "y":2}, {"label":"%", "x":5, "y":2}, {"label":"^", "x":6, "y":2}, {"label":"&", "x":7, "y":2}, {"label":"*", "x":8, "y":2}, {"label":"(", "x":9, "y":2}, {"label":")", "x":10, "y":2}, {"label":"_", "x":11, "y":2}, {"label":"+", "x":12, "y":2}, {"label":"Backspace", "x":13, "y":2, "w":2}, {"label":"Num Lock", "x":15.5, "y":2}, {"label":"/", "x":16.5, "y":2}, {"label":"*", "x":17.5, "y":2}, {"label":"Pause", "x":18.5, "y":2}, {"label":"Tab", "x":0, "y":3, "w":1.5}, {"label":"Q", "x":1.5, "y":3}, {"label":"W", "x":2.5, "y":3}, {"label":"E", "x":3.5, "y":3}, {"label":"R", "x":4.5, "y":3}, {"label":"T", "x":5.5, "y":3}, {"label":"Y", "x":6.5, "y":3}, {"label":"U", "x":7.5, "y":3}, {"label":"I", "x":8.5, "y":3}, {"label":"O", "x":9.5, "y":3}, {"label":"P", "x":10.5, "y":3}, {"label":"{", "x":11.5, "y":3}, {"label":"}", "x":12.5, "y":3}, {"label":"|", "x":13.5, "y":3, "w":1.5}, {"label":"7", "x":15.5, "y":3}, {"label":"8", "x":16.5, "y":3}, {"label":"9", "x":17.5, "y":3}, {"label":"-", "x":18.5, "y":3}, {"label":"Caps Lock", "x":0, "y":4, "w":1.75}, {"label":"A", "x":1.75, "y":4}, {"label":"S", "x":2.75, "y":4}, {"label":"D", "x":3.75, "y":4}, {"label":"F", "x":4.75, "y":4}, {"label":"G", "x":5.75, "y":4}, {"label":"H", "x":6.75, "y":4}, {"label":"J", "x":7.75, "y":4}, {"label":"K", "x":8.75, "y":4}, {"label":"L", "x":9.75, "y":4}, {"label":":", "x":10.75, "y":4}, {"label":"@", "x":11.75, "y":4}, {"label":"Enter", "x":12.75, "y":4, "w":2.25}, {"label":"4", "x":15.5, "y":4}, {"label":"5", "x":16.5, "y":4}, {"label":"6", "x":17.5, "y":4}, {"label":"+", "x":18.5, "y":4}, {"label":"Shift", "x":0, "y":5, "w":2.25}, {"label":"Z", "x":2.25, "y":5}, {"label":"X", "x":3.25, "y":5}, {"label":"C", "x":4.25, "y":5}, {"label":"V", "x":5.25, "y":5}, {"label":"B", "x":6.25, "y":5}, {"label":"N", "x":7.25, "y":5}, {"label":"M", "x":8.25, "y":5}, {"label":"<", "x":9.25, "y":5}, {"label":">", "x":10.25, "y":5}, {"label":"?", "x":11.25, "y":5}, {"label":"Shift", "x":12.25, "y":5, "w":1.75}, {"label":"up", "x":14.25, "y":5.25}, {"label":"1", "x":15.5, "y":5}, {"label":"2", "x":16.5, "y":5}, {"label":"3", "x":17.5, "y":5}, {"label":"Enter", "x":18.5, "y":5, "h":2}, {"label":"Ctrl", "x":0, "y":6}, {"label":"Win", "x":1, "y":6}, {"label":"Alt", "x":2, "y":6}, {"x":3, "y":6, "w":6}, {"label":"Alt", "x":9, "y":6}, {"label":"Win", "x":10, "y":6}, {"label":"Menu", "x":11, "y":6}, {"label":"Ctrl", "x":12, "y":6}, {"label":"left", "x":13.25, "y":6.25}, {"label":"down", "x":14.25, "y":6.25}, {"label":"right", "x":15.25, "y":6.25}, {"label":"0", "x":16.5, "y":6}, {"label":".", "x":17.5, "y":6}] + }, + "LAYOUT_1800_ansi_7u": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"Insert", "x":15.5, "y":0}, {"label":"Home", "x":16.5, "y":0}, {"label":"PgUp", "x":17.5, "y":0}, {"label":"PrtSc", "x":18.5, "y":0}, {"label":"Delete", "x":15.5, "y":1}, {"label":"End", "x":16.5, "y":1}, {"label":"PgDn", "x":17.5, "y":1}, {"label":"Scroll Lock", "x":18.5, "y":1}, {"label":"~", "x":0, "y":2}, {"label":"!", "x":1, "y":2}, {"label":"@", "x":2, "y":2}, {"label":"#", "x":3, "y":2}, {"label":"$", "x":4, "y":2}, {"label":"%", "x":5, "y":2}, {"label":"^", "x":6, "y":2}, {"label":"&", "x":7, "y":2}, {"label":"*", "x":8, "y":2}, {"label":"(", "x":9, "y":2}, {"label":")", "x":10, "y":2}, {"label":"_", "x":11, "y":2}, {"label":"+", "x":12, "y":2}, {"label":"Backspace", "x":13, "y":2, "w":2}, {"label":"Num Lock", "x":15.5, "y":2}, {"label":"/", "x":16.5, "y":2}, {"label":"*", "x":17.5, "y":2}, {"label":"Pause", "x":18.5, "y":2}, {"label":"Tab", "x":0, "y":3, "w":1.5}, {"label":"Q", "x":1.5, "y":3}, {"label":"W", "x":2.5, "y":3}, {"label":"E", "x":3.5, "y":3}, {"label":"R", "x":4.5, "y":3}, {"label":"T", "x":5.5, "y":3}, {"label":"Y", "x":6.5, "y":3}, {"label":"U", "x":7.5, "y":3}, {"label":"I", "x":8.5, "y":3}, {"label":"O", "x":9.5, "y":3}, {"label":"P", "x":10.5, "y":3}, {"label":"{", "x":11.5, "y":3}, {"label":"}", "x":12.5, "y":3}, {"label":"|", "x":13.5, "y":3, "w":1.5}, {"label":"7", "x":15.5, "y":3}, {"label":"8", "x":16.5, "y":3}, {"label":"9", "x":17.5, "y":3}, {"label":"-", "x":18.5, "y":3}, {"label":"Caps Lock", "x":0, "y":4, "w":1.75}, {"label":"A", "x":1.75, "y":4}, {"label":"S", "x":2.75, "y":4}, {"label":"D", "x":3.75, "y":4}, {"label":"F", "x":4.75, "y":4}, {"label":"G", "x":5.75, "y":4}, {"label":"H", "x":6.75, "y":4}, {"label":"J", "x":7.75, "y":4}, {"label":"K", "x":8.75, "y":4}, {"label":"L", "x":9.75, "y":4}, {"label":":", "x":10.75, "y":4}, {"label":"@", "x":11.75, "y":4}, {"label":"Enter", "x":12.75, "y":4, "w":2.25}, {"label":"4", "x":15.5, "y":4}, {"label":"5", "x":16.5, "y":4}, {"label":"6", "x":17.5, "y":4}, {"label":"+", "x":18.5, "y":4}, {"label":"Shift", "x":0, "y":5, "w":2.25}, {"label":"Z", "x":2.25, "y":5}, {"label":"X", "x":3.25, "y":5}, {"label":"C", "x":4.25, "y":5}, {"label":"V", "x":5.25, "y":5}, {"label":"B", "x":6.25, "y":5}, {"label":"N", "x":7.25, "y":5}, {"label":"M", "x":8.25, "y":5}, {"label":"<", "x":9.25, "y":5}, {"label":">", "x":10.25, "y":5}, {"label":"?", "x":11.25, "y":5}, {"label":"Shift", "x":12.25, "y":5, "w":1.75}, {"label":"up", "x":14.25, "y":5.25}, {"label":"1", "x":15.5, "y":5}, {"label":"2", "x":16.5, "y":5}, {"label":"3", "x":17.5, "y":5}, {"label":"Enter", "x":18.5, "y":5, "h":2}, {"label":"Ctrl", "x":0, "y":6, "w":1.5}, {"label":"Alt", "x":1.5, "y":6, "w":1.5}, {"x":3, "y":6, "w":7}, {"label":"Alt", "x":10, "y":6, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":6, "w":1.5}, {"label":"left", "x":13.25, "y":6.25}, {"label":"down", "x":14.25, "y":6.25}, {"label":"right", "x":15.25, "y":6.25}, {"label":"0", "x":16.5, "y":6}, {"label":".", "x":17.5, "y":6}] + } + } +} \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/ansi_6u/keymap.c b/keyboards/ebastler/e80_1800/keymaps/ansi_6u/keymap.c new file mode 100644 index 0000000000..cb2ded2650 --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/ansi_6u/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2020 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_ansi_6u( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, 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_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + 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, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_ansi_6u( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, 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), + + [2] = LAYOUT_1800_ansi_6u( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/ansi_7u/keymap.c b/keyboards/ebastler/e80_1800/keymaps/ansi_7u/keymap.c new file mode 100644 index 0000000000..7e46c4589b --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/ansi_7u/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2020 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_ansi_7u( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, 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_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + 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, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, LT(1, KC_RCTL), KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_ansi_7u( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + [2] = LAYOUT_1800_ansi_7u( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/default/keymap.c b/keyboards/ebastler/e80_1800/keymaps/default/keymap.c new file mode 100644 index 0000000000..e1b6133aa6 --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/default/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2020 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_all( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_all( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, 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), + + [2] = LAYOUT_1800_all( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/iso_6u/keymap.c b/keyboards/ebastler/e80_1800/keymaps/iso_6u/keymap.c new file mode 100644 index 0000000000..723e76a9ec --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/iso_6u/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2020 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_iso_6u( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_iso_6u( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, 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), + + [2] = LAYOUT_1800_iso_6u( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; + diff --git a/keyboards/ebastler/e80_1800/keymaps/iso_7u/keymap.c b/keyboards/ebastler/e80_1800/keymaps/iso_7u/keymap.c new file mode 100644 index 0000000000..49e993a90d --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/iso_7u/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2020 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_iso_7u( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LALT, KC_SPC, KC_RALT, LT(1, KC_RCTL), KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_iso_7u( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + + [2] = LAYOUT_1800_iso_7u( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/via/keymap.c b/keyboards/ebastler/e80_1800/keymaps/via/keymap.c new file mode 100644 index 0000000000..f747ffe4b2 --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_1800_all( /* keymap for layer 0 */ + 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_INS, KC_HOME, KC_PGUP, KC_PSCR, + KC_DEL, KC_END, KC_PGDN, KC_SLCK, + KC_GRV, 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_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_KP_7, KC_KP_8, KC_KP_9, KC_PMNS, + KC_CLCK, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_NUHS, KC_ENT, KC_KP_4, KC_KP_5, KC_KP_6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_KP_1, KC_KP_2, KC_KP_3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_KP_0, KC_PDOT), + + [1] = LAYOUT_1800_all( /* keymap for layer 1 */ + 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_INC, KC_TRNS, + KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG, + 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_MPLY, + 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_VOLU, 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_MPRV, KC_MUTE, KC_MNXT, 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_VOLD, 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), + + [2] = LAYOUT_1800_all( /* keymap for layer 2 */ + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) + +}; \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/keymaps/via/rules.mk b/keyboards/ebastler/e80_1800/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/ebastler/e80_1800/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/mcuconf.h b/keyboards/ebastler/e80_1800/mcuconf.h new file mode 100644 index 0000000000..cff1dd5788 --- /dev/null +++ b/keyboards/ebastler/e80_1800/mcuconf.h @@ -0,0 +1,32 @@ +/* Copyright 2022 Moritz Plattner + * + * 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 3 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 . + */ +#pragma once + +#include_next + +/* enable TIM1, used for backlight PWM */ +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE + +/* enable I2C2, used for the OLED */ +#undef STM32_I2C_USE_I2C2 +#define STM32_I2C_USE_I2C2 TRUE + +#undef STM32_I2C_USE_DMA +#define STM32_I2C_USE_DMA TRUE + +#define STM32_I2C_I2C2_RX_DMA_STREAM STM32_DMA_STREAM_ID(1, 5) +#define STM32_I2C_I2C2_TX_DMA_STREAM STM32_DMA_STREAM_ID(1, 4) \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/readme.md b/keyboards/ebastler/e80_1800/readme.md new file mode 100644 index 0000000000..87fd9756b6 --- /dev/null +++ b/keyboards/ebastler/e80_1800/readme.md @@ -0,0 +1,25 @@ +# E80-1800 + +![E80_1800_sample_image](https://i.imgur.com/yzCfVSth.png) + +A replacement PCB for the Cherry G80-1800 keyboard. Supports ISO and ANSI, 6u offcenter or 7u bottom row, stepped and regular caps lock. Optional i2c header for OLED. Type-C on the PCB (requires some case modifications). The PCB is open source and can be found in my [Github repo](https://github.com/ebastler/E80-1800). + +* Keyboard Maintainer: [ebastler](https://github.com/ebastler) +* Hardware Supported: r1 and r1.1 PCB, see Github repo linked above +* Hardware Availability: Groupbuy, otherwise feel free to order your own boards. jlcpcb compatible gerber/BOM/CPL files are included. + +How to enter the Bootloader: +* No pre-flashed firmware, option 1: Bridge `BOOT` labeled pads below spacebar while plugging the board in +* No pre-flashed firmware, option 2: Bridge `BOOT` labeled pads below spacebar, then quickly short `RST` labeled pads +* Pre-flashed firmware: Use Bootmagic - keep the `ESC` (top left most) key pressed while plugging the board in + +Make example for this keyboard (after setting up your build environment): + + make ebastler/e80_1800:default + +Flash example for this keyboard (after setting up your build environment): + + make ebastler/e80_1800:default + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/ebastler/e80_1800/rules.mk b/keyboards/ebastler/e80_1800/rules.mk new file mode 100644 index 0000000000..25d40cb90f --- /dev/null +++ b/keyboards/ebastler/e80_1800/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE +OPT_DEFS += -DSTM32_DMA_REQUIRED=TRUE \ No newline at end of file diff --git a/keyboards/ebastler/readme.md b/keyboards/ebastler/readme.md index 00c612c23c..4b6efd2f71 100644 --- a/keyboards/ebastler/readme.md +++ b/keyboards/ebastler/readme.md @@ -1,6 +1,8 @@ # ebastler -I'm a hobbyist designing keyboards for fun. [My homepage](https://mpwr.xyz). All my personal keyboard projects are open source and can be found in my github repo(s), linked below. Commissions may remain closed source. +I'm a hobbyist designing keyboards for fun. [My homepage](https://mpwr.xyz). All my personal keyboard projects are open source and can be found in my github repos, linked below. Commissions may remain closed source. * [isometria75](isometria_75) - 75% ISO-only board with rotary encoder, RGB underglow and single color backlight. [Github repo](https://github.com/ebastler/isometria-75). + +* [E80-1800](E80_1800) - drop-in replacement PCB for the Cherry G80-1800. Requires minor case modifications, but adds backlight, native USB-C and (obviously) QMK. [Github repo](https://github.com/ebastler/E80-1800). \ No newline at end of file From f3a49876d50c7fc8d71f9718de9319321d8e94c9 Mon Sep 17 00:00:00 2001 From: melonbred <61572569+melonbred@users.noreply.github.com> Date: Tue, 12 Apr 2022 23:36:33 -0700 Subject: [PATCH 228/699] [Keyboard] add pegasus (#16701) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/pegasus/config.h | 80 ++++++++++++++++ keyboards/pegasus/info.json | 100 ++++++++++++++++++++ keyboards/pegasus/keymaps/default/config.h | 20 ++++ keyboards/pegasus/keymaps/default/keymap.c | 50 ++++++++++ keyboards/pegasus/keymaps/default/readme.md | 1 + keyboards/pegasus/keymaps/split/config.h | 20 ++++ keyboards/pegasus/keymaps/split/keymap.c | 49 ++++++++++ keyboards/pegasus/keymaps/split/readme.md | 1 + keyboards/pegasus/pegasus.c | 37 ++++++++ keyboards/pegasus/pegasus.h | 57 +++++++++++ keyboards/pegasus/readme.md | 23 +++++ keyboards/pegasus/rules.mk | 19 ++++ 12 files changed, 457 insertions(+) create mode 100644 keyboards/pegasus/config.h create mode 100644 keyboards/pegasus/info.json create mode 100644 keyboards/pegasus/keymaps/default/config.h create mode 100644 keyboards/pegasus/keymaps/default/keymap.c create mode 100644 keyboards/pegasus/keymaps/default/readme.md create mode 100644 keyboards/pegasus/keymaps/split/config.h create mode 100644 keyboards/pegasus/keymaps/split/keymap.c create mode 100644 keyboards/pegasus/keymaps/split/readme.md create mode 100644 keyboards/pegasus/pegasus.c create mode 100644 keyboards/pegasus/pegasus.h create mode 100644 keyboards/pegasus/readme.md create mode 100644 keyboards/pegasus/rules.mk diff --git a/keyboards/pegasus/config.h b/keyboards/pegasus/config.h new file mode 100644 index 0000000000..6f773da966 --- /dev/null +++ b/keyboards/pegasus/config.h @@ -0,0 +1,80 @@ +/* +Copyright 2020 melonbred + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER melonbred +#define PRODUCT Pegasus + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +/* + * 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 { F0, F1, F4, E6 } +#define MATRIX_COL_PINS { D2, D4, D6, D7, B4, B5, B6, C6, C7, F7, F6, F5 } +//#define UNUSED_PINS { B0, B1, B2, B3, B7 } + + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + + +/* 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 + + +/* Rotary Encoder Definitions */ +#define ENCODERS_PAD_A { D0, D5 } +#define ENCODERS_PAD_B { D1, D3 } + +/* + * 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 diff --git a/keyboards/pegasus/info.json b/keyboards/pegasus/info.json new file mode 100644 index 0000000000..238442b821 --- /dev/null +++ b/keyboards/pegasus/info.json @@ -0,0 +1,100 @@ +{ + "keyboard_name": "pegasus", + "url": "", + "maintainer": "melonbred", + "layouts": { + "LAYOUT_default": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"Q", "x":1, "y":0}, + {"label":"W", "x":2, "y":0}, + {"label":"E", "x":3, "y":0}, + {"label":"R", "x":4, "y":0}, + {"label":"T", "x":5, "y":0}, + {"label":"Y", "x":6, "y":0}, + {"label":"U", "x":7, "y":0}, + {"label":"I", "x":8, "y":0}, + {"label":"O", "x":9, "y":0}, + {"label":"P", "x":10, "y":0}, + {"label":"Backspace", "x":11, "y":0, "w":1.75}, + {"label":"Control", "x":0, "y":1, "w":1.25}, + {"label":"A", "x":1.25, "y":1}, + {"label":"S", "x":2.25, "y":1}, + {"label":"D", "x":3.25, "y":1}, + {"label":"F", "x":4.25, "y":1}, + {"label":"G", "x":5.25, "y":1}, + {"label":"H", "x":6.25, "y":1}, + {"label":"J", "x":7.25, "y":1}, + {"label":"K", "x":8.25, "y":1}, + {"label":"L", "x":9.25, "y":1}, + {"label":":", "x":10.25, "y":1}, + {"label":"Enter", "x":11.25, "y":1, "w":1.5}, + {"label":"Shift", "x":0, "y":2, "w":1.75}, + {"label":"Z", "x":1.75, "y":2}, + {"label":"X", "x":2.75, "y":2}, + {"label":"C", "x":3.75, "y":2}, + {"label":"V", "x":4.75, "y":2}, + {"label":"B", "x":5.75, "y":2}, + {"label":"N", "x":6.75, "y":2}, + {"label":"M", "x":7.75, "y":2}, + {"label":"<", "x":8.75, "y":2}, + {"label":">", "x":9.75, "y":2}, + {"label":"?", "x":10.75, "y":2}, + {"label":"Shift", "x":11.75, "y":2}, + {"label":"Fn", "x":0, "y":3, "w":1.25}, + {"label":"Alt", "x":2, "y":3, "w":1.25}, + {"x":3.25, "y":3, "w":6.25}, + {"label":"Alt", "x":9.5, "y":3, "w":1.25}, + {"label":"Ctrl", "x":11.5, "y":3, "w":1.25} + ] + }, + "LAYOUT_split": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"Q", "x":1, "y":0}, + {"label":"W", "x":2, "y":0}, + {"label":"E", "x":3, "y":0}, + {"label":"R", "x":4, "y":0}, + {"label":"T", "x":5, "y":0}, + {"label":"Y", "x":6, "y":0}, + {"label":"U", "x":7, "y":0}, + {"label":"I", "x":8, "y":0}, + {"label":"O", "x":9, "y":0}, + {"label":"P", "x":10, "y":0}, + {"label":"Backspace", "x":11, "y":0, "w":1.75}, + {"label":"Control", "x":0, "y":1, "w":1.25}, + {"label":"A", "x":1.25, "y":1}, + {"label":"S", "x":2.25, "y":1}, + {"label":"D", "x":3.25, "y":1}, + {"label":"F", "x":4.25, "y":1}, + {"label":"G", "x":5.25, "y":1}, + {"label":"H", "x":6.25, "y":1}, + {"label":"J", "x":7.25, "y":1}, + {"label":"K", "x":8.25, "y":1}, + {"label":"L", "x":9.25, "y":1}, + {"label":":", "x":10.25, "y":1}, + {"label":"Enter", "x":11.25, "y":1, "w":1.5}, + {"label":"Shift", "x":0, "y":2, "w":1.75}, + {"label":"Z", "x":1.75, "y":2}, + {"label":"X", "x":2.75, "y":2}, + {"label":"C", "x":3.75, "y":2}, + {"label":"V", "x":4.75, "y":2}, + {"label":"B", "x":5.75, "y":2}, + {"label":"N", "x":6.75, "y":2}, + {"label":"M", "x":7.75, "y":2}, + {"label":"<", "x":8.75, "y":2}, + {"label":">", "x":9.75, "y":2}, + {"label":"?", "x":10.75, "y":2}, + {"label":"Shift", "x":11.75, "y":2}, + {"label":"Fn", "x":0, "y":3, "w":1.25}, + {"label":"Alt", "x":2, "y":3, "w":1.25}, + {"x":3.25, "y":3}, + {"x":4.25, "y":3, "w":2}, + {"x":6.25, "y":3, "w":2.25}, + {"x":8.5, "y":3}, + {"label":"Alt", "x":9.5, "y":3, "w":1.25}, + {"label":"Ctrl", "x":11.5, "y":3, "w":1.25} + ] + } + } +} diff --git a/keyboards/pegasus/keymaps/default/config.h b/keyboards/pegasus/keymaps/default/config.h new file mode 100644 index 0000000000..d76c709440 --- /dev/null +++ b/keyboards/pegasus/keymaps/default/config.h @@ -0,0 +1,20 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ + +#pragma once + +// place overrides here +#define TAPPING_TERM 175 diff --git a/keyboards/pegasus/keymaps/default/keymap.c b/keyboards/pegasus/keymaps/default/keymap.c new file mode 100644 index 0000000000..fb2cb061ff --- /dev/null +++ b/keyboards/pegasus/keymaps/default/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LAYER1, + _LAYER2 + +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_default( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + CTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + MO(_LAYER2), KC_LALT, LT(_LAYER1, KC_SPC), KC_RALT, KC_RGUI + ), + + [_LAYER1] = LAYOUT_default( + KC_GRV, KC_QUOT, _______, KC_UP, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_DEL, + KC_CAPS, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_PSLS, KC_PMNS, KC_4, KC_5, KC_6, KC_ENT, + KC_LSFT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_PAST, KC_PPLS, KC_1, KC_2, KC_3, KC_RSFT, + _______, _______, _______, KC_0, KC_PDOT + ), + + [_LAYER2] = LAYOUT_default( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, KC_RALT, KC_RCTL, KC_DEL, KC_VOLD, + _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPLY + ), +}; + + + diff --git a/keyboards/pegasus/keymaps/default/readme.md b/keyboards/pegasus/keymaps/default/readme.md new file mode 100644 index 0000000000..170cc76269 --- /dev/null +++ b/keyboards/pegasus/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for pegasus diff --git a/keyboards/pegasus/keymaps/split/config.h b/keyboards/pegasus/keymaps/split/config.h new file mode 100644 index 0000000000..d76c709440 --- /dev/null +++ b/keyboards/pegasus/keymaps/split/config.h @@ -0,0 +1,20 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ + +#pragma once + +// place overrides here +#define TAPPING_TERM 175 diff --git a/keyboards/pegasus/keymaps/split/keymap.c b/keyboards/pegasus/keymaps/split/keymap.c new file mode 100644 index 0000000000..964cfa2df7 --- /dev/null +++ b/keyboards/pegasus/keymaps/split/keymap.c @@ -0,0 +1,49 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _LAYER1, + _LAYER2 + +}; + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_split( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + CTL_T(KC_TAB), KC_A, KC_S, KC_D, KC_F, KC_G, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + MO(_LAYER2), KC_LALT, KC_LCTL, KC_SPC, LT(_LAYER1, KC_SPC), KC_RCTL, KC_RALT, KC_RGUI + ), + + [_LAYER1] = LAYOUT_split( + KC_GRV, KC_QUOT, _______, KC_UP, _______, _______, _______, _______, KC_7, KC_8, KC_9, KC_DEL, + KC_CAPS, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_PSLS, KC_PMNS, KC_4, KC_5, KC_6, KC_ENT, + KC_LSFT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_PAST, KC_PPLS, KC_1, KC_2, KC_3, KC_RSFT, + _______, _______, _______, _______, _______, _______, KC_0, KC_PDOT + ), + + [_LAYER2] = LAYOUT_split( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, KC_RALT, KC_RCTL, KC_DEL, KC_VOLD, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPLY + ), +}; + diff --git a/keyboards/pegasus/keymaps/split/readme.md b/keyboards/pegasus/keymaps/split/readme.md new file mode 100644 index 0000000000..170cc76269 --- /dev/null +++ b/keyboards/pegasus/keymaps/split/readme.md @@ -0,0 +1 @@ +# The default keymap for pegasus diff --git a/keyboards/pegasus/pegasus.c b/keyboards/pegasus/pegasus.c new file mode 100644 index 0000000000..0800a36f9e --- /dev/null +++ b/keyboards/pegasus/pegasus.c @@ -0,0 +1,37 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ + +#include "pegasus.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (index == 1) { + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return true; +} +#endif diff --git a/keyboards/pegasus/pegasus.h b/keyboards/pegasus/pegasus.h new file mode 100644 index 0000000000..4582b2ccab --- /dev/null +++ b/keyboards/pegasus/pegasus.h @@ -0,0 +1,57 @@ +/* Copyright 2020 melonbred + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + + +#define XXX KC_NO + +#define LAYOUT_default( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K36, K39, K3B \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, XXX, XXX, XXX, XXX, K36, XXX, XXX, K39, XXX, K3B } \ +} + +#define LAYOUT_split( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K32, K34, K36, K38, K39, K3B \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, K32, XXX, K34, XXX, K36, XXX, K38, K39, XXX, K3B } \ +} diff --git a/keyboards/pegasus/readme.md b/keyboards/pegasus/readme.md new file mode 100644 index 0000000000..d164ba47ac --- /dev/null +++ b/keyboards/pegasus/readme.md @@ -0,0 +1,23 @@ +# Pegasus + +![pegasus](https://i.imgur.com/6MKJN7wh.jpg) + +Pegasus is a 40% keyboard with a 12.75u "WKL" layout with 0.75u blockers. + +* Keyboard Maintainer: [melonbred](https://github.com/melonbred) +* Hardware Supported: The PCBs, controllers supported +* Hardware Availability: Links to where you can find this hardware + +Make example for this keyboard (after setting up your build environment): + + make pegasus:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/pegasus/rules.mk b/keyboards/pegasus/rules.mk new file mode 100644 index 0000000000..50b46dc958 --- /dev/null +++ b/keyboards/pegasus/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes From 16c848ca009f01752815bca5544e406bbaced7af Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Wed, 13 Apr 2022 15:37:05 +0900 Subject: [PATCH 229/699] [Keymap] Change helix:froggy_106 keymap to use split_common (#16704) --- .../helix/rev2/keymaps/froggy_106/config.h | 6 + .../helix/rev2/keymaps/froggy_106/keymap.c | 366 ++++++++++++------ .../helix/rev2/keymaps/froggy_106/rules.mk | 11 +- 3 files changed, 270 insertions(+), 113 deletions(-) diff --git a/keyboards/helix/rev2/keymaps/froggy_106/config.h b/keyboards/helix/rev2/keymaps/froggy_106/config.h index 36c3f2a799..9affa1d296 100644 --- a/keyboards/helix/rev2/keymaps/froggy_106/config.h +++ b/keyboards/helix/rev2/keymaps/froggy_106/config.h @@ -25,6 +25,12 @@ along with this program. If not, see . #define ONESHOT_TAP_TOGGLE 5 /* Tapping this number of times holds the key until tapped this number of times again. */ #define ONESHOT_TIMEOUT 5000 /* Time (in ms) before the one shot key is released */ +// the froggy keymap does not use the right hand side, so sync_timer is not needed +#define DISABLE_SYNC_TIMER +// For the same reason, the following are also not needed +#undef SPLIT_LAYER_STATE_ENABLE +#undef SPLIT_LED_STATE_ENABLE + // If you need more program area, try select and reduce rgblight modes to use. // Selection of RGBLIGHT MODE to use. diff --git a/keyboards/helix/rev2/keymaps/froggy_106/keymap.c b/keyboards/helix/rev2/keymaps/froggy_106/keymap.c index 3a433e56fd..a92b05566e 100644 --- a/keyboards/helix/rev2/keymaps/froggy_106/keymap.c +++ b/keyboards/helix/rev2/keymaps/froggy_106/keymap.c @@ -5,7 +5,24 @@ #include "ssd1306.h" #endif -extern uint8_t is_master; +#define LAYOUT_half( \ + L00, L01, L02, L03, L04, L05, \ + L10, L11, L12, L13, L14, L15, \ + L20, L21, L22, L23, L24, L25, \ + L30, L31, L32, L33, L34, L35, L36, \ + L40, L41, L42, L43, L44, L45, L46 \ +) { \ + { L00, L01, L02, L03, L04, L05, KC_NO }, \ + { L10, L11, L12, L13, L14, L15, KC_NO }, \ + { L20, L21, L22, L23, L24, L25, KC_NO }, \ + { L30, L31, L32, L33, L34, L35, L36 }, \ + { L40, L41, L42, L43, L44, L45, L46 }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, KC_NO }, \ + { _______, _______, _______, _______, _______, _______, _______ }, \ + { _______, _______, _______, _______, _______, _______, _______ } \ +} #define DELAY_TIME 75 static uint16_t key_timer; @@ -83,136 +100,136 @@ enum macro_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base - * ,-----------------------------------------. ,-----------------------------------------. - * | C+z | ; | [ | ( | < | { | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | KANA | P | K | R | A | F | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | BS | D | T | H | E | O | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | Shift| Y | S | N | I | U |Space | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | Ctrl | Alt | Gui | Sym | Num | OPT | Ent | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | C+z | ; | [ | ( | < | { | + * |------+------+------+------+------+------| + * | KANA | P | K | R | A | F | + * |------+------+------+------+------+------| + * | BS | D | T | H | E | O | + * |------+------+------+------+------+------+------. + * | Shift| Y | S | N | I | U |Space | + * |------+------+------+------+------+------+------| + * | Ctrl | Alt | Gui | Sym | Num | OPT | Ent | + * `------------------------------------------------' */ - [_BASE] = LAYOUT( \ - LCTL(KC_Z), KC_SCLN, KC_LBRC, KC_LPRN, KC_LT, KC_LCBR, _______, _______, _______, _______, _______, _______, \ - KANA, KC_P, KC_K, KC_R, KC_A, KC_F, _______, _______, _______, _______, _______, _______, \ - KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, _______, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), L_SYM, L_NUM, OPT_TAP_SP, KC_ENT, _______, _______, _______, _______, _______, _______, _______ \ + [_BASE] = LAYOUT_half( \ + LCTL(KC_Z), KC_SCLN, KC_LBRC, KC_LPRN, KC_LT, KC_LCBR, \ + KANA, KC_P, KC_K, KC_R, KC_A, KC_F, \ + KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, \ + OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, \ + OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), L_SYM, L_NUM, OPT_TAP_SP, KC_ENT \ ), - [_BASE_106] = LAYOUT( \ - LCTL(KC_Z), JP_SCLN, JP_LBRC, JP_LPRN, JP_LABK, JP_LCBR, _______, _______, _______, _______, _______, _______, \ - KANA, KC_P, KC_K, KC_R, KC_A, KC_F, _______, _______, _______, _______, _______, _______, \ - KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, _______, _______, _______, _______, _______, _______, _______, \ - OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), L_SYM, L_NUM, OPT_TAP_SP, KC_ENT, _______, _______, _______, _______, _______, _______, _______ \ + [_BASE_106] = LAYOUT_half( \ + LCTL(KC_Z), JP_SCLN, JP_LBRC, JP_LPRN, JP_LABK, JP_LCBR, \ + KANA, KC_P, KC_K, KC_R, KC_A, KC_F, \ + KC_BSPC, KC_D, KC_T, KC_H, KC_E, KC_O, \ + OSM(MOD_LSFT), KC_Y, KC_S, KC_N, KC_I, KC_U, KC_SPC, \ + OSM(MOD_LCTL), OSM(MOD_LALT), OSM(MOD_LGUI), L_SYM, L_NUM, OPT_TAP_SP, KC_ENT \ ), /* Opt - * ,-----------------------------------------. ,-----------------------------------------. - * | Esc | : | ] | ) | > | } | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | EISU| J | M | B | ' | Tab | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | . | V | C | L | Z | Q | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | X | G | W | - | Del | Esc | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | , | DTOP | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | Esc | : | ] | ) | > | } | + * |------+------+------+------+------+------| + * | EISU| J | M | B | ' | Tab | + * |------+------+------+------+------+------| + * | . | V | C | L | Z | Q | + * |------+------+------+------+------+------+------. + * | | X | G | W | - | Del | Esc | + * |------+------+------+------+------+------+------| + * | | | | , | DTOP | | | + * `------------------------------------------------' */ - [_OPT] = LAYOUT( \ - KC_ESC, KC_COLN,KC_RBRC, KC_RPRN,KC_GT, KC_RCBR, _______, _______, _______, _______, _______, _______, \ - EISU, KC_J, KC_M, KC_B, KC_QUOT, KC_TAB, _______, _______, _______, _______, _______, _______, \ - KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, _______, _______, _______, _______, _______, _______, \ - _______, KC_X, KC_G, KC_W, KC_MINUS, KC_DEL, KC_ESC, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______,_______, KC_COMM,DESKTOP, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_OPT] = LAYOUT_half( \ + KC_ESC, KC_COLN,KC_RBRC, KC_RPRN,KC_GT, KC_RCBR, \ + EISU, KC_J, KC_M, KC_B, KC_QUOT, KC_TAB, \ + KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, \ + _______, KC_X, KC_G, KC_W, KC_MINUS, KC_DEL, KC_ESC, \ + _______, _______,_______, KC_COMM,DESKTOP, _______, _______ \ ), - [_OPT_106] = LAYOUT( \ - KC_ESC, JP_COLN,JP_RBRC, JP_RPRN,JP_RABK, JP_RCBR, _______, _______, _______, _______, _______, _______, \ - EISU, KC_J, KC_M, KC_B, JP_QUOT, KC_TAB, _______, _______, _______, _______, _______, _______, \ - KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, _______, _______, _______, _______, _______, _______, \ - _______, KC_X, KC_G, KC_W, JP_MINS, KC_DEL, KC_ESC, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______,_______, KC_COMM,DESKTOP, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_OPT_106] = LAYOUT_half( \ + KC_ESC, JP_COLN,JP_RBRC, JP_RPRN,JP_RABK, JP_RCBR, \ + EISU, KC_J, KC_M, KC_B, JP_QUOT, KC_TAB, \ + KC_DOT, KC_V, KC_C, KC_L, KC_Z, KC_Q, \ + _______, KC_X, KC_G, KC_W, JP_MINS, KC_DEL, KC_ESC, \ + _______, _______,_______, KC_COMM,DESKTOP, _______, _______ \ ), /* Sym - * ,-----------------------------------------. ,-----------------------------------------. - * | Ins | GRV | | PU | PD | ^ | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | \ | # | = | ? | % | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | $ | upA | @ | ! | | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | CL | <- | dwA | -> | _ | & | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | PS | | ~ | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | Ins | GRV | | PU | PD | ^ | + * |------+------+------+------+------+------| + * | | \ | # | = | ? | % | + * |------+------+------+------+------+------| + * | | $ | upA | @ | ! | | | + * |------+------+------+------+------+------+------. + * | CL | <- | dwA | -> | _ | & | | + * |------+------+------+------+------+------+------+ + * | | | PS | | ~ | | | + * `------------------------------------------------' */ - [_SYM] = LAYOUT( \ - KC_INS, KC_GRV, _______, KC_PGUP, KC_PGDN, KC_CIRC, _______, _______, _______, _______, _______, _______, \ - _______, KC_BSLS, KC_HASH, KC_EQL, KC_QUES, KC_PERC, _______, _______, _______, _______, _______, _______, \ - _______, KC_DLR, KC_UP, KC_AT, KC_EXLM, KC_PIPE, _______, _______, _______, _______, _______, _______, \ - KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_UNDS, KC_AMPR, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PSCR, _______, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_SYM] = LAYOUT_half( \ + KC_INS, KC_GRV, _______, KC_PGUP, KC_PGDN, KC_CIRC, \ + _______, KC_BSLS, KC_HASH, KC_EQL, KC_QUES, KC_PERC, \ + _______, KC_DLR, KC_UP, KC_AT, KC_EXLM, KC_PIPE, \ + KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_UNDS, KC_AMPR, _______, \ + _______, _______, KC_PSCR, _______, KC_TILD, _______, _______ \ ), - [_SYM_106] = LAYOUT( \ - KC_INS, JP_GRV, _______, KC_PGUP, KC_PGDN, JP_CIRC, _______, _______, _______, _______, _______, _______, \ - _______, JP_BSLS, JP_HASH, JP_EQL, JP_QUES, JP_PERC, _______, _______, _______, _______, _______, _______, \ - _______, JP_DLR, KC_UP, JP_AT, JP_EXLM, JP_PIPE, _______, _______, _______, _______, _______, _______, \ - KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,JP_UNDS, JP_AMPR, _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PSCR, _______, JP_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_SYM_106] = LAYOUT_half( \ + KC_INS, JP_GRV, _______, KC_PGUP, KC_PGDN, JP_CIRC, \ + _______, JP_BSLS, JP_HASH, JP_EQL, JP_QUES, JP_PERC, \ + _______, JP_DLR, KC_UP, JP_AT, JP_EXLM, JP_PIPE, \ + KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT,JP_UNDS, JP_AMPR, _______, \ + _______, _______, KC_PSCR, _______, JP_TILD, _______, _______ \ ), /* Raise - * ,-----------------------------------------. ,-----------------------------------------. - * | | | Func | home | End | | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | * | 7 | 8 | 9 | - | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | . | / | 4 | 5 | 6 | + | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | LN | 0 | 1 | 2 | 3 |C+S+F1| | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | . | , | | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * | | | Func | home | End | | + * |------+------+------+------+------+------| + * | | * | 7 | 8 | 9 | - | + * |------+------+------+------+------+------| + * | . | / | 4 | 5 | 6 | + | + * |------+------+------+------+------+------+------. + * | LN | 0 | 1 | 2 | 3 |C+S+F1| | + * |------+------+------+------+------+------+------| + * | | | . | , | | | | + * `------------------------------------------------' */ - [_NUM] = LAYOUT( \ - _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, \ - _______, KC_ASTR, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, _______, _______, _______, _______, \ - KC_DOT, KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, _______, _______, _______, _______, _______, \ - KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PDOT, KC_COMM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_NUM] = LAYOUT_half( \ + _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, \ + _______, KC_ASTR, KC_P7, KC_P8, KC_P9, KC_MINS, \ + KC_DOT, KC_SLSH, KC_P4, KC_P5, KC_P6, KC_PLUS, \ + KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, \ + _______, _______, KC_PDOT, KC_COMM, _______, _______, _______ \ ), - [_NUM_106] = LAYOUT( \ - _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, \ - _______, JP_ASTR, KC_P7, KC_P8, KC_P9, JP_MINS, _______, _______, _______, _______, _______, _______, \ - KC_DOT, JP_SLSH, KC_P4, KC_P5, KC_P6, JP_PLUS, _______, _______, _______, _______, _______, _______, \ - KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, _______, _______, _______, _______, _______, _______, _______, \ - _______, _______, KC_PDOT, JP_COMM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_NUM_106] = LAYOUT_half( \ + _______, _______, OSL(_FUNC), KC_HOME, KC_END, _______, \ + _______, JP_ASTR, KC_P7, KC_P8, KC_P9, JP_MINS, \ + KC_DOT, JP_SLSH, KC_P4, KC_P5, KC_P6, JP_PLUS, \ + KC_NLCK, KC_P0, KC_P1, KC_P2, KC_P3, LCTL(S(KC_F1)), _______, \ + _______, _______, KC_PDOT, JP_COMM, _______, _______, _______ \ ), /* Func - * ,-----------------------------------------. ,-----------------------------------------. - * |RGBRST| Hue |To101 | RST | Mac | Win | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RGB1 | VAL+ | F7 | F8 | F9 |To106 | | | | | | | | - * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RGB2 | VAL- | F4 | F5 | F6 | F12 | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | RGB3 | F10 | F1 | F2 | F3 | F11 | | | | | | | | | - * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * |RGBOFF| | | | | | | | | | | | | | - * `-------------------------------------------------------------------------------------------------' + * ,-----------------------------------------. + * |RGBRST| Hue |To101 | RST | Mac | Win | + * |------+------+------+------+------+------| + * | RGB1 | VAL+ | F7 | F8 | F9 |To106 | + * |------+------+------+------+------+------| + * | RGB2 | VAL- | F4 | F5 | F6 | F12 | + * |------+------+------+------+------+------+------. + * | RGB3 | F10 | F1 | F2 | F3 | F11 | | + * |------+------+------+------+------+------+------| + * |RGBOFF| | | | | | | + * `------------------------------------------------' */ - [_FUNC] = LAYOUT( \ - RGBRST,RGB_HUI, TO_101, RESET, MAC, WIN, _______, _______, _______, _______, _______, _______, \ - RGB1, RGB_VAI, KC_F7, KC_F8, KC_F9, TO_106, _______, _______, _______, _______, _______, _______, \ - RGB2, RGB_VAD, KC_F4, KC_F5, KC_F6, KC_F12, _______, _______, _______, _______, _______, _______, \ - RGB3, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, _______, _______, _______, _______, _______, _______, _______, _______, \ - RGBOFF,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ \ + [_FUNC] = LAYOUT_half( \ + RGBRST,RGB_HUI, TO_101, RESET, MAC, WIN, \ + RGB1, RGB_VAI, KC_F7, KC_F8, KC_F9, TO_106, \ + RGB2, RGB_VAD, KC_F4, KC_F5, KC_F6, KC_F12, \ + RGB3, KC_F10, KC_F1, KC_F2, KC_F3, KC_F11, _______, \ + RGBOFF,_______, _______, _______, _______, _______, _______ \ ) }; #else @@ -317,7 +334,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #ifdef RGBLIGHT_ENABLE col = record->event.key.col; row = record->event.key.row; - if (record->event.pressed && ((row < 5 && is_master) || (row >= 5 && !is_master))) { + if (record->event.pressed && ((row < 5 && is_keyboard_master()) || (row >= 5 && !is_keyboard_master()))) { int end = keybuf_end; keybufs[end].col = col; keybufs[end].row = row % 5; @@ -807,14 +824,139 @@ void iota_gfx_task_user(void) { #endif matrix_clear(&matrix); - if(is_master){ + if (is_keyboard_master()) { render_status(&matrix); } matrix_update(&display, &matrix); } +#endif // end of SSD1306OLED + +//OLED update loop +#ifdef OLED_ENABLE + +// Render to OLED +void render_status(void) { + + // froggy logo + static char logo[4][17]= + { + {0x68,0x69,0x6a,0x6b,0x6c,0x6d,0x6e,0x6f,0x70,0x71,0x72,0x73,0x74,0}, + {0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94,0}, + {0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4,0}, + {0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0}, + }; + + static char modectl[4][2][4]= + { + { + {0x65,0x66,0x67,0}, //WIN + {0x85,0x86,0x87,0}, //WIN + }, + { + {0xa5,0xa6,0xa7,0}, //US(101) + {0xc5,0xc6,0xc7,0}, //US(101) + }, + { + {0xbd,0xbe,0xbf,0}, //MAC + {0xdd,0xde,0xdf,0}, //MAC + }, + { + {0xba,0xbb,0xbc,0}, //JP(106) + {0xda,0xdb,0xdc,0}, //JP(106) + }, + }; + + static char indctr[8][2][4]= + { + // white icon + { + {0x60,0x61,0x62,0}, //NUM + {0x63,0x64,0} //FUNC + }, + { + {0x80,0x81,0x82,0}, //NUM + {0x83,0x84,0} //FUNC + }, + { + {0xa0,0xa1,0xa2,0}, //CAPS + {0xa3,0xa4,0} //SCLK + }, + { + {0xc0,0xc1,0xc2,0}, //CAPS + {0xc3,0xc4,0} //SCLK + }, + // Black icon + { + {0x75,0x76,0x77,0}, //NUM + {0x78,0x79,0} //FUNC + }, + { + {0x95,0x96,0x97,0}, //NUM + {0x98,0x99,0} //FUNC + }, + { + {0xb5,0xb6,0xb7,0}, //CAPS + {0xb8,0xb9,0} //SCLK + }, + { + {0xd5,0xd6,0xd7,0}, //CAPS + {0xd8,0xd9,0} //SCLK + }, + }; + + int rown = 0; + int rowf = 0; + int rowa = 0; + int rows = 0; + int rowm = 0; + int rowj = 1; + + //Set Indicator icon + if (host_keyboard_leds() & (1< Date: Wed, 13 Apr 2022 08:39:44 +0200 Subject: [PATCH 230/699] [Keyboard] Adding waffling80, TKL PCB (#16726) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/4pplet/waffling80/info.json | 10 ++++ .../waffling80/keymaps/default/keymap.c | 38 +++++++++++++ .../4pplet/waffling80/keymaps/via/keymap.c | 57 +++++++++++++++++++ .../4pplet/waffling80/keymaps/via/rules.mk | 1 + keyboards/4pplet/waffling80/readme.md | 18 ++++++ keyboards/4pplet/waffling80/rev_a/config.h | 53 +++++++++++++++++ keyboards/4pplet/waffling80/rev_a/readme.md | 18 ++++++ keyboards/4pplet/waffling80/rev_a/rev_a.c | 47 +++++++++++++++ keyboards/4pplet/waffling80/rev_a/rev_a.h | 50 ++++++++++++++++ keyboards/4pplet/waffling80/rev_a/rules.mk | 18 ++++++ 10 files changed, 310 insertions(+) create mode 100644 keyboards/4pplet/waffling80/info.json create mode 100644 keyboards/4pplet/waffling80/keymaps/default/keymap.c create mode 100644 keyboards/4pplet/waffling80/keymaps/via/keymap.c create mode 100644 keyboards/4pplet/waffling80/keymaps/via/rules.mk create mode 100644 keyboards/4pplet/waffling80/readme.md create mode 100644 keyboards/4pplet/waffling80/rev_a/config.h create mode 100644 keyboards/4pplet/waffling80/rev_a/readme.md create mode 100644 keyboards/4pplet/waffling80/rev_a/rev_a.c create mode 100644 keyboards/4pplet/waffling80/rev_a/rev_a.h create mode 100644 keyboards/4pplet/waffling80/rev_a/rules.mk diff --git a/keyboards/4pplet/waffling80/info.json b/keyboards/4pplet/waffling80/info.json new file mode 100644 index 0000000000..ca92728000 --- /dev/null +++ b/keyboards/4pplet/waffling80/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "waffling80 Rev A", + "url": "", + "maintainer": "4pplet", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"label":"F13", "x":14, "y":0}, {"label":"PrtSc", "x":15.25, "y":0}, {"label":"Scroll Lock", "x":16.25, "y":0}, {"label":"Pause", "x":17.25, "y":0}, {"label":"~", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"@", "x":2, "y":1.5}, {"label":"#", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":7, "y":1.5}, {"label":"*", "x":8, "y":1.5}, {"label":"(", "x":9, "y":1.5}, {"label":")", "x":10, "y":1.5}, {"label":"_", "x":11, "y":1.5}, {"label":"+", "x":12, "y":1.5}, {"label":"|", "x":13, "y":1.5}, {"label":"~", "x":14, "y":1.5}, {"label":"Insert", "x":15.25, "y":1.5}, {"label":"Home", "x":16.25, "y":1.5}, {"label":"PgUp", "x":17.25, "y":1.5}, {"label":"Tab", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":6.5, "y":2.5}, {"label":"U", "x":7.5, "y":2.5}, {"label":"I", "x":8.5, "y":2.5}, {"label":"O", "x":9.5, "y":2.5}, {"label":"P", "x":10.5, "y":2.5}, {"label":"{", "x":11.5, "y":2.5}, {"label":"}", "x":12.5, "y":2.5}, {"label":"|", "x":13.5, "y":2.5, "w":1.5}, {"label":"Delete", "x":15.25, "y":2.5}, {"label":"End", "x":16.25, "y":2.5}, {"label":"PgDn", "x":17.25, "y":2.5}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":6.75, "y":3.5}, {"label":"J", "x":7.75, "y":3.5}, {"label":"K", "x":8.75, "y":3.5}, {"label":"L", "x":9.75, "y":3.5}, {"label":":", "x":10.75, "y":3.5}, {"label":"\"", "x":11.75, "y":3.5}, {"label":"~", "x":12.75, "y":3.5}, {"label":"Enter", "x":13.75, "y":3.5, "w":1.25}, {"x":15.25, "y":3.5}, {"x":17.25, "y":3.5}, {"label":"Shift", "x":0, "y":4.5, "w":1.25}, {"label":"|", "x":1.25, "y":4.5}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":7.25, "y":4.5}, {"label":"M", "x":8.25, "y":4.5}, {"label":"<", "x":9.25, "y":4.5}, {"label":">", "x":10.25, "y":4.5}, {"label":"?", "x":11.25, "y":4.5}, {"label":"Shift", "x":12.25, "y":4.5, "w":1.75}, {"label":"Fn", "x":14, "y":4.5}, {"label":"\u2191", "x":16.25, "y":4.5}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, {"label":"Win", "x":1.25, "y":5.5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, {"x":3.75, "y":5.5, "w":2.25}, {"x":6, "y":5.5, "w":1.25}, {"x":7.25, "y":5.5, "w":2.75}, {"label":"AltGr", "x":10, "y":5.5, "w":1.25}, {"label":"Menu", "x":11.25, "y":5.5, "w":1.25}, {"label":"Win", "x":12.5, "y":5.5, "w":1.25}, {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25}, {"label":"\u2190", "x":15.25, "y":5.5}, {"label":"\u2193", "x":16.25, "y":5.5}, {"label":"\u2192", "x":17.25, "y":5.5}] + } + } +} diff --git a/keyboards/4pplet/waffling80/keymaps/default/keymap.c b/keyboards/4pplet/waffling80/keymaps/default/keymap.c new file mode 100644 index 0000000000..5331d7d3da --- /dev/null +++ b/keyboards/4pplet/waffling80/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_GRC, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, + MO(1), MO(1)) // extra keys for alps dual action switches +// basic function layer +[1] = LAYOUT_all( + RESET, 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, 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, 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), // extra keys for alps dual action switches +}; diff --git a/keyboards/4pplet/waffling80/keymaps/via/keymap.c b/keyboards/4pplet/waffling80/keymaps/via/keymap.c new file mode 100644 index 0000000000..c816d56af6 --- /dev/null +++ b/keyboards/4pplet/waffling80/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_GRV, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, + MO(1), MO(1)), // extra keys for alps dual action switches +// basic function layer +[1] = LAYOUT_all( + RESET, 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, 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, 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), // extra keys for alps dual action switches +// extra layer for VIA +[2] = LAYOUT_all( + RESET, 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, 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, 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), // extra keys for alps dual action switches + +// extra layer for VIA +[3] = LAYOUT_all( + RESET, 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, 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, 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) // extra keys for alps dual action switches +}; diff --git a/keyboards/4pplet/waffling80/keymaps/via/rules.mk b/keyboards/4pplet/waffling80/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/4pplet/waffling80/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/4pplet/waffling80/readme.md b/keyboards/4pplet/waffling80/readme.md new file mode 100644 index 0000000000..3eb0745b3f --- /dev/null +++ b/keyboards/4pplet/waffling80/readme.md @@ -0,0 +1,18 @@ +# waffling80 + +A TKL PCB attempting a87 compatibility with different switch and layout-options. + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: [waffling80](https://github.com/4pplet/waffling80) + +Make example for this keyboard (after setting up your build environment): + + make 4pplet/waffling80/rev_a:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Tap the physical reset button or short the reset-header (labled RESET) on tha back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware. diff --git a/keyboards/4pplet/waffling80/rev_a/config.h b/keyboards/4pplet/waffling80/rev_a/config.h new file mode 100644 index 0000000000..715414b641 --- /dev/null +++ b/keyboards/4pplet/waffling80/rev_a/config.h @@ -0,0 +1,53 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4444 +#define PRODUCT_ID 0x0006 +#define DEVICE_VER 0x0001 +#define MANUFACTURER 4pplet +#define PRODUCT waffling80 Rev A + +/* key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 8 + +// ROWS: Top to bottom, COLS: Left to right +#define MATRIX_ROW_PINS {C4,C5,B4,B3,B1,B0,D6,D5,D3,D4,D1,D2} +#define MATRIX_COL_PINS {C6,C7,B7,B6,B5,B2,D0,C2} + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define QMK_ESC_OUTPUT C6 // usually COL +#define QMK_ESC_INPUT C4 // usually ROW + +#define RGB_DI_PIN D7 +#define RGBLED_NUM 2 + +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/4pplet/waffling80/rev_a/readme.md b/keyboards/4pplet/waffling80/rev_a/readme.md new file mode 100644 index 0000000000..7aee23ddb4 --- /dev/null +++ b/keyboards/4pplet/waffling80/rev_a/readme.md @@ -0,0 +1,18 @@ +# waffling80 + +A TKL PCB attempting a87 and a88 compatibility with different switch and layout-options. + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: [waffling80](https://github.com/4pplet/waffling80) + +Make example for this keyboard (after setting up your build environment): + + make 4pplet/waffling80/rev_a:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Tap the physical reset button or short the reset-header (labled RESET) on tha back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware. diff --git a/keyboards/4pplet/waffling80/rev_a/rev_a.c b/keyboards/4pplet/waffling80/rev_a/rev_a.c new file mode 100644 index 0000000000..d1032e7c6c --- /dev/null +++ b/keyboards/4pplet/waffling80/rev_a/rev_a.c @@ -0,0 +1,47 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include "rev_a.h" + +bool led_update_kb(led_t led_state) { + bool res = led_update_user(led_state); + if (SCROLL_LOCK_ENABLE && res) { + if(led_state.scroll_lock) { + #ifdef SCROLL_LOCK_COLOR + rgblight_sethsv_at(SCROLL_LOCK_COLOR, 0); + #else + rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 0); + #endif + } + else { + rgblight_sethsv_at(HSV_OFF, 0); + } + } + if (CAPS_LOCK_ENABLE && res) { + if(led_state.caps_lock) { + #ifdef CAPS_LOCK_COLOR + rgblight_sethsv_at(CAPS_LOCK_COLOR, 1); + #else + rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 1); + #endif + } + else{ + rgblight_sethsv_at(HSV_OFF, 1); + } + } + return res; +} + diff --git a/keyboards/4pplet/waffling80/rev_a/rev_a.h b/keyboards/4pplet/waffling80/rev_a/rev_a.h new file mode 100644 index 0000000000..d79fa17ebe --- /dev/null +++ b/keyboards/4pplet/waffling80/rev_a/rev_a.h @@ -0,0 +1,50 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#define CAPS_LOCK_ENABLE 1 +#define SCROLL_LOCK_ENABLE 1 + +// If colors are defined, they will be static. If not defined, color for incicators can be set in VIA. +//#define CAPS_LOCK_COLOR HSV_GREEN +//#define SCROLL_LOCK_COLOR HSV_GREEN + +#include "quantum.h" + +#define LAYOUT_all( \ + k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k07, k17, k37, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k67, k27, k57, k97, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, k77, kb7, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, \ + k80, k90, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k86, k96, k87, \ + ka0, ka1, kb1, kb2, ka3, kb3, ka4, kb4, ka5, kb5, ka6, kb6, ka7, \ + kb0, ka2 \ +) \ +{ \ + {k00, k01, k02, k03, k04, k05, k06, k07}, \ + {k10, k11, k12, k13, k14, k15, k16, k17}, \ + {k20, k21, k22, k23, k24, k25, k26, k27}, \ + {k30, k31, k32, k33, k34, k35, k36, k37}, \ + {k40, k41, k42, k43, k44, k45, k46, k47}, \ + {k50, k51, k52, k53, k54, k55, k56, k57}, \ + {k60, k61, k62, k63, k64, k65, k66, k67}, \ + {k70, k71, k72, k73, k74, k75, k76, k77}, \ + {k80, k81, k82, k83, k84, k85, k86, k87}, \ + {k90, k91, k92, k93, k94, k95, k96, k97}, \ + {ka0, ka1, ka2, ka3, ka4, ka5, ka6, ka7}, \ + {kb0, kb1, kb2, kb3, kb4, kb5, kb6, kb7} \ +} diff --git a/keyboards/4pplet/waffling80/rev_a/rules.mk b/keyboards/4pplet/waffling80/rev_a/rules.mk new file mode 100644 index 0000000000..7bc59aaef6 --- /dev/null +++ b/keyboards/4pplet/waffling80/rev_a/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 6d816d94f7bf132a71cadbd08118469ac28c6480 Mon Sep 17 00:00:00 2001 From: 4pplet Date: Wed, 13 Apr 2022 08:40:20 +0200 Subject: [PATCH 231/699] [Keyboard] Add ratio65 by rationalist (#16727) Co-authored-by: Joel Challis Co-authored-by: Ryan --- .../rationalist/ratio65_hotswap/info.json | 10 +++ .../ratio65_hotswap/keymaps/default/keymap.c | 34 ++++++++++ .../ratio65_hotswap/keymaps/via/keymap.c | 48 ++++++++++++++ .../ratio65_hotswap/keymaps/via/rules.mk | 1 + .../rationalist/ratio65_hotswap/readme.md | 18 ++++++ .../ratio65_hotswap/rev_a/config.h | 63 ++++++++++++++++++ .../rationalist/ratio65_hotswap/rev_a/rev_a.c | 17 +++++ .../rationalist/ratio65_hotswap/rev_a/rev_a.h | 40 ++++++++++++ .../ratio65_hotswap/rev_a/rules.mk | 18 ++++++ .../rationalist/ratio65_solder/info.json | 10 +++ .../ratio65_solder/keymaps/default/keymap.c | 34 ++++++++++ .../ratio65_solder/keymaps/via/keymap.c | 48 ++++++++++++++ .../ratio65_solder/keymaps/via/rules.mk | 1 + .../rationalist/ratio65_solder/readme.md | 18 ++++++ .../rationalist/ratio65_solder/rev_a/config.h | 64 +++++++++++++++++++ .../rationalist/ratio65_solder/rev_a/rev_a.c | 17 +++++ .../rationalist/ratio65_solder/rev_a/rev_a.h | 40 ++++++++++++ .../rationalist/ratio65_solder/rev_a/rules.mk | 18 ++++++ 18 files changed, 499 insertions(+) create mode 100644 keyboards/rationalist/ratio65_hotswap/info.json create mode 100644 keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c create mode 100644 keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c create mode 100644 keyboards/rationalist/ratio65_hotswap/keymaps/via/rules.mk create mode 100644 keyboards/rationalist/ratio65_hotswap/readme.md create mode 100644 keyboards/rationalist/ratio65_hotswap/rev_a/config.h create mode 100644 keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.c create mode 100644 keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.h create mode 100644 keyboards/rationalist/ratio65_hotswap/rev_a/rules.mk create mode 100644 keyboards/rationalist/ratio65_solder/info.json create mode 100644 keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c create mode 100644 keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c create mode 100644 keyboards/rationalist/ratio65_solder/keymaps/via/rules.mk create mode 100644 keyboards/rationalist/ratio65_solder/readme.md create mode 100644 keyboards/rationalist/ratio65_solder/rev_a/config.h create mode 100644 keyboards/rationalist/ratio65_solder/rev_a/rev_a.c create mode 100644 keyboards/rationalist/ratio65_solder/rev_a/rev_a.h create mode 100644 keyboards/rationalist/ratio65_solder/rev_a/rules.mk diff --git a/keyboards/rationalist/ratio65_hotswap/info.json b/keyboards/rationalist/ratio65_hotswap/info.json new file mode 100644 index 0000000000..709e929fa0 --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Ratio65_HotSwap", + "url": "", + "maintainer": "4pplet", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "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}, {"label":"Backspace", "x":13, "y":0, "w":2}, {"label":"Delete", "x":15, "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":"Insert", "x":15, "y":1}, {"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":"PgUp", "x":15, "y":2}, {"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}, {"label":"\u2191", "x":14, "y":3}, {"label":"PgDn", "x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Win", "x":10, "y":4, "w":1.25}, {"label":"Fn", "x":11.25, "y":4, "w":1.25}, {"label":"\u2190", "x":13, "y":4}, {"label":"\u2193", "x":14, "y":4}, {"label":"\u2192", "x":15, "y":4}] + } + } +} diff --git a/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c b/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..1d095ea22b --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* +Copyright 2021 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_BSPC, 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_BSLS, KC_INSERT, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), +// basic function layer +[1] = LAYOUT_all( + KC_GRV, 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, RESET, + 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, 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 ) +}; diff --git a/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c b/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c new file mode 100644 index 0000000000..d677bb3c8a --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c @@ -0,0 +1,48 @@ +/* +Copyright 2021 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_BSPC, 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_BSLS, KC_INSERT, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), +// basic function layer 1 +[1] = LAYOUT_all( + KC_GRV, 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, RESET, + 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, 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 ), +// basic function layer 2 +[2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS ), +// basic function layer 3 +[3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS ) +}; diff --git a/keyboards/rationalist/ratio65_hotswap/keymaps/via/rules.mk b/keyboards/rationalist/ratio65_hotswap/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/rationalist/ratio65_hotswap/readme.md b/keyboards/rationalist/ratio65_hotswap/readme.md new file mode 100644 index 0000000000..07ff1137dd --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/readme.md @@ -0,0 +1,18 @@ +# Ratio65 + +A 65% PCB for MX switches for Rationalist keyboards + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: Ratio65 + +Make example for this keyboard (after setting up your build environment): + + make rationalist/ratio65_hotswap/rev_a:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Short the reset-header (labled RESET) on the back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware. diff --git a/keyboards/rationalist/ratio65_hotswap/rev_a/config.h b/keyboards/rationalist/ratio65_hotswap/rev_a/config.h new file mode 100644 index 0000000000..1bc8eb7fdf --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/rev_a/config.h @@ -0,0 +1,63 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4446 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER 4pplet +#define PRODUCT Ratio65 Rev A HotSwap + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 8 +// ROWS: Top to bottom, COLS: Left to right + +#define MATRIX_ROW_PINS {D1,D0,D5,D4,C7,B7,C6,C5,B0,B1} +#define MATRIX_COL_PINS {C2,D2,B6,B5,B4,B3,B2,D6} + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define QMK_ESC_OUTPUT C2 // usually COL +#define QMK_ESC_INPUT D1 // usually ROW + +#define RGB_DI_PIN D3 +#define RGBLED_NUM 18 + +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE diff --git a/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.c b/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.c new file mode 100644 index 0000000000..dc6c727fb7 --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include "rev_a.h" diff --git a/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.h b/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.h new file mode 100644 index 0000000000..a9dd39ca9f --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/rev_a/rev_a.h @@ -0,0 +1,40 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#include "quantum.h" + +// k +#define LAYOUT_all( \ + k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k07, k17,\ + k20, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k27, k37, \ + k40, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k47, k57, \ + k60, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k67, k77, \ + k80, k81, k91, k83, k94, k95, k96, k87, k97 \ +) \ +{ \ + {k00, k01, k02, k03, k04, k05, k06, k07}, \ + {k10, k11, k12, k13, k14, k15, KC_NO, k17}, \ + {k20, k21, k22, k23, k24, k25, k26, k27}, \ + {KC_NO, k31, k32, k33, k34, k35, k36, k37}, \ + {k40, k41, k42, k43, k44, k45, k46, k47}, \ + {KC_NO, k51, k52, k53, k54, k55, KC_NO, k57}, \ + {k60, k61, k62, k63, k64, k65, k66, k67}, \ + {KC_NO, k71, k72, k73, k74, k75, KC_NO, k77}, \ + {k80, k81, KC_NO, k83, KC_NO, KC_NO, KC_NO, k87}, \ + {KC_NO, k91, KC_NO, KC_NO, k94, k95, k96, k97} \ +} diff --git a/keyboards/rationalist/ratio65_hotswap/rev_a/rules.mk b/keyboards/rationalist/ratio65_hotswap/rev_a/rules.mk new file mode 100644 index 0000000000..88173a40c2 --- /dev/null +++ b/keyboards/rationalist/ratio65_hotswap/rev_a/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/rationalist/ratio65_solder/info.json b/keyboards/rationalist/ratio65_solder/info.json new file mode 100644 index 0000000000..e083099bde --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Ratio65_Solder", + "url": "", + "maintainer": "4pplet", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "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}, {"label":"~", "x":13, "y":0}, {"label":"Back", "x":14, "y":0}, {"label":"Del", "x":15, "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":"Insert", "x":15, "y":1}, {"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":"Nuhs", "x":12.75, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25}, {"label":"PgUp", "x":15, "y":2}, {"label":"Shift", "x":0, "y":3, "w":1.25}, {"label":"Nubs", "x":1.25, "y":3}, {"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}, {"label":"\u2191", "x":14, "y":3}, {"label":"PgDn", "x":15, "y":3}, {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"label":"Win", "x":10, "y":4, "w":1.25}, {"label":"Fn", "x":11.25, "y":4, "w":1.25}, {"label":"\u2190", "x":13, "y":4}, {"label":"\u2193", "x":14, "y":4}, {"label":"\u2192", "x":15, "y":4}] + } + } +} diff --git a/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c b/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c new file mode 100644 index 0000000000..892d1e8b67 --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* +Copyright 2021 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_GRV, KC_BSPC, 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_BSLS, KC_INSERT, + 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_NUHS, KC_ENT, KC_PGUP, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), +// basic function layer +[1] = LAYOUT_all( + KC_GRV, 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, RESET, + 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, 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 ) +}; diff --git a/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c b/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c new file mode 100644 index 0000000000..3310c23f4a --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c @@ -0,0 +1,48 @@ +/* +Copyright 2021 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_GRV, KC_BSPC, 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_BSLS, KC_INSERT, + 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_NUHS, KC_ENT, KC_PGUP, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), +// basic function layer 1 +[1] = LAYOUT_all( + KC_GRV, 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, RESET, + 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, 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 ), +// basic function layer 2 +[2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), +// basic function layer 3 +[3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) +}; diff --git a/keyboards/rationalist/ratio65_solder/keymaps/via/rules.mk b/keyboards/rationalist/ratio65_solder/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/rationalist/ratio65_solder/readme.md b/keyboards/rationalist/ratio65_solder/readme.md new file mode 100644 index 0000000000..1129a5fbdd --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/readme.md @@ -0,0 +1,18 @@ +# Ratio65 + +A 65% PCB for MX switches for Rationalist keyboards + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: Ratio65 + +Make example for this keyboard (after setting up your build environment): + + make rationalist/ratio65_solder/rev_a:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Short the reset-header (labled RESET) on the back of the PCB for keyboard to enter DFU. When in DFU, it's ready to flash the firmware. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. The keyboard will enter DFU and is ready to flash the firmware. diff --git a/keyboards/rationalist/ratio65_solder/rev_a/config.h b/keyboards/rationalist/ratio65_solder/rev_a/config.h new file mode 100644 index 0000000000..824ebd3cb7 --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/rev_a/config.h @@ -0,0 +1,64 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4446 +#define PRODUCT_ID 0x0002 +#define DEVICE_VER 0x0001 +#define MANUFACTURER 4pplet +#define PRODUCT Ratio65 Rev A Solder + +/* key matrix size */ +#define MATRIX_ROWS 10 +#define MATRIX_COLS 8 +// ROWS: Top to bottom, COLS: Left to right + +#define MATRIX_ROW_PINS {D1,D0,D5,D4,C7,B7,C6,C5,B0,B1} +#define MATRIX_COL_PINS {C2,D2,B6,B5,B4,B3,B2,D6} + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define QMK_ESC_OUTPUT C2 // usually COL +#define QMK_ESC_INPUT D1 // usually ROW + +#define RGB_DI_PIN D3 +#define RGBLED_NUM 18 + +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + diff --git a/keyboards/rationalist/ratio65_solder/rev_a/rev_a.c b/keyboards/rationalist/ratio65_solder/rev_a/rev_a.c new file mode 100644 index 0000000000..dc6c727fb7 --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/rev_a/rev_a.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include "rev_a.h" diff --git a/keyboards/rationalist/ratio65_solder/rev_a/rev_a.h b/keyboards/rationalist/ratio65_solder/rev_a/rev_a.h new file mode 100644 index 0000000000..ae8735335f --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/rev_a/rev_a.h @@ -0,0 +1,40 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#pragma once + +#include "quantum.h" + +// k +#define LAYOUT_all( \ + k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k07, k17,\ + k20, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k27, k37, \ + k40, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, k57, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k67, k77, \ + k80, k81, k91, k83, k94, k95, k96, k87, k97 \ +) \ +{ \ + {k00, k01, k02, k03, k04, k05, k06, k07}, \ + {k10, k11, k12, k13, k14, k15, k16, k17}, \ + {k20, k21, k22, k23, k24, k25, k26, k27}, \ + {KC_NO, k31, k32, k33, k34, k35, k36, k37}, \ + {k40, k41, k42, k43, k44, k45, k46, k47}, \ + {KC_NO, k51, k52, k53, k54, k55, k56, k57}, \ + {k60, k61, k62, k63, k64, k65, k66, k67}, \ + {k70, k71, k72, k73, k74, k75, KC_NO, k77}, \ + {k80, k81, KC_NO, k83, KC_NO, KC_NO, KC_NO, k87}, \ + {KC_NO, k91, KC_NO, KC_NO, k94, k95, k96, k97} \ +} diff --git a/keyboards/rationalist/ratio65_solder/rev_a/rules.mk b/keyboards/rationalist/ratio65_solder/rev_a/rules.mk new file mode 100644 index 0000000000..88173a40c2 --- /dev/null +++ b/keyboards/rationalist/ratio65_solder/rev_a/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 935af9e9996083c2b7e82f67072899e87c7f45ab Mon Sep 17 00:00:00 2001 From: Allen Choi <37539914+Thunderbird2086@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:03:01 +0900 Subject: [PATCH 232/699] [Keymap] fixed oled turn-off issue for crkbd:gotham (#16748) --- keyboards/crkbd/keymaps/gotham/README.md | 1 - keyboards/crkbd/keymaps/gotham/config.h | 11 ++++++++++- keyboards/crkbd/keymaps/gotham/keymap.c | 1 + keyboards/crkbd/keymaps/gotham/oled.c | 18 +++++++----------- 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/keyboards/crkbd/keymaps/gotham/README.md b/keyboards/crkbd/keymaps/gotham/README.md index 23c1d4fdd8..88120ae888 100644 --- a/keyboards/crkbd/keymaps/gotham/README.md +++ b/keyboards/crkbd/keymaps/gotham/README.md @@ -10,7 +10,6 @@ My take on the 40% layout with programming in mind. Do read about the layers, it ## Custom OLED This keymap includes custom OLED font and code. The font contains some logos and status indidcators for some of the features I use (RGB and Audio). Enable OLED in rukes.mk to check it out. Feel free to reuse the font or parts of it. -__KNOWN BUG:__ When the computer sleeps, one of the OLEDs is always on (they don't turn off on their own, and the timeout doesn't work). I haven't been able to figure out what's going on there and am open to suggestions/PRs. ## Flashing Flash using `make crkbd:gotham:avrdude` for Pro Micro and `make crkbd:gotham:dfu` for Elite-C. diff --git a/keyboards/crkbd/keymaps/gotham/config.h b/keyboards/crkbd/keymaps/gotham/config.h index 1ff008b2de..45fe8c37a8 100644 --- a/keyboards/crkbd/keymaps/gotham/config.h +++ b/keyboards/crkbd/keymaps/gotham/config.h @@ -20,7 +20,16 @@ # define AUDIO_CLICKY #endif -#define OLED_FONT_H "keyboards/crkbd/keymaps/gotham/glcdfont.c" +#ifdef OLED_ENABLE +# define OLED_FONT_H "keyboards/crkbd/keymaps/gotham/glcdfont.c" +# define SPLIT_LAYER_STATE_ENABLE +# define SPLIT_LED_STATE_ENABLE +# define SPLIT_MODS_ENABLE +# define SPLIT_OLED_ENABLE +# undef OLED_TIMEOUT + // due to timer_read() for render_prompt(), we have own implementation of oled time out +# define OLED_KEY_TIMEOUT 30000 +#endif #define RGBLIGHT_SLEEP diff --git a/keyboards/crkbd/keymaps/gotham/keymap.c b/keyboards/crkbd/keymaps/gotham/keymap.c index 7cf4b7fd50..a258794049 100644 --- a/keyboards/crkbd/keymaps/gotham/keymap.c +++ b/keyboards/crkbd/keymaps/gotham/keymap.c @@ -81,6 +81,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { #ifdef OLED_ENABLE if (record->event.pressed) { oled_timer = timer_read(); + is_key_processed = true; add_keylog(keycode); } #endif diff --git a/keyboards/crkbd/keymaps/gotham/oled.c b/keyboards/crkbd/keymaps/gotham/oled.c index baacc86b18..6bf1233659 100644 --- a/keyboards/crkbd/keymaps/gotham/oled.c +++ b/keyboards/crkbd/keymaps/gotham/oled.c @@ -144,6 +144,7 @@ void render_feature_status(void) { // Keylogger #define KEYLOGGER_LENGTH 5 static uint16_t oled_timer = 0; +static bool is_key_processed = true; static char keylog_str[KEYLOGGER_LENGTH + 1] = {"\n"}; // clang-format off static const char PROGMEM code_to_name[0xFF] = { @@ -247,18 +248,13 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { } bool oled_task_user(void) { - if (timer_elapsed(oled_timer) > 10000) { - oled_off(); - return; - } - #ifndef SPLIT_KEYBOARD - else { - oled_on(); - } - #endif - if (is_keyboard_master()) { - render_status_main(); + if (is_key_processed && (timer_elapsed(oled_timer) < OLED_KEY_TIMEOUT)) { + render_status_main(); + } else { + is_key_processed = false; + oled_off(); + } } else { render_status_secondary(); } From dfe0515a4bfda7f291e2f051cf7fe3bb6a8e0f3a Mon Sep 17 00:00:00 2001 From: PJB Keyboard Design <91110483+602studios@users.noreply.github.com> Date: Wed, 13 Apr 2022 00:04:14 -0700 Subject: [PATCH 233/699] [Keyboard] Add Eros by PJB (#16756) Co-authored-by: Ryan Co-authored-by: Joel Challis --- keyboards/pjb/eros/config.h | 39 ++++++ keyboards/pjb/eros/eros.c | 17 +++ keyboards/pjb/eros/eros.h | 134 ++++++++++++++++++++ keyboards/pjb/eros/info.json | 35 +++++ keyboards/pjb/eros/keymaps/default/keymap.c | 27 ++++ keyboards/pjb/eros/keymaps/via/keymap.c | 51 ++++++++ keyboards/pjb/eros/keymaps/via/rules.mk | 2 + keyboards/pjb/eros/readme.md | 20 +++ keyboards/pjb/eros/rules.mk | 17 +++ 9 files changed, 342 insertions(+) create mode 100644 keyboards/pjb/eros/config.h create mode 100644 keyboards/pjb/eros/eros.c create mode 100644 keyboards/pjb/eros/eros.h create mode 100644 keyboards/pjb/eros/info.json create mode 100644 keyboards/pjb/eros/keymaps/default/keymap.c create mode 100644 keyboards/pjb/eros/keymaps/via/keymap.c create mode 100644 keyboards/pjb/eros/keymaps/via/rules.mk create mode 100644 keyboards/pjb/eros/readme.md create mode 100644 keyboards/pjb/eros/rules.mk diff --git a/keyboards/pjb/eros/config.h b/keyboards/pjb/eros/config.h new file mode 100644 index 0000000000..038e13c9ad --- /dev/null +++ b/keyboards/pjb/eros/config.h @@ -0,0 +1,39 @@ +/* Copyright 2022 PJB + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +#define VENDOR_ID 0x5042 // TG +#define PRODUCT_ID 0x4552 // JC +#define DEVICE_VER 0x0200 +#define MANUFACTURER PJB +#define PRODUCT Eros + +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +#define MATRIX_ROW_PINS { B2, B1, B0, D7, B7, D1 } +#define MATRIX_COL_PINS { F0, F1, F4, F5, F6, F7, C7, C6, B6, B5, D4, D5, B4, D3, D2, E6, B3 } +#define UNUSED_PINS + +#define DIODE_DIRECTION COL2ROW +#define DEBOUNCE 5 + +#define LED_CAPS_LOCK_PIN D6 +#define LED_SCROLL_LOCK_PIN D0 +#define LED_PIN_ON_STATE 0 diff --git a/keyboards/pjb/eros/eros.c b/keyboards/pjb/eros/eros.c new file mode 100644 index 0000000000..6dd56bfa7b --- /dev/null +++ b/keyboards/pjb/eros/eros.c @@ -0,0 +1,17 @@ +/* Copyright 2022 PJB + * + * 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 . + */ + +#include "eros.h" diff --git a/keyboards/pjb/eros/eros.h b/keyboards/pjb/eros/eros.h new file mode 100644 index 0000000000..aa46d6f653 --- /dev/null +++ b/keyboards/pjb/eros/eros.h @@ -0,0 +1,134 @@ +/* Copyright 2022 PJB + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +// This a shortcut to help you visually see your layout. +// The first section contains all of the arguments +// The second converts the arguments into a two-dimensional array + +#define LAYOUT_all_f13( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K415, \ + K500, K501, K502, K505, K509, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, K509, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_f13( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K415, \ + K500, K501, K502, K505, K509, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, KC_NO, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, K509, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_f13_split_shift( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K415, \ + K500, K501, K502, K505, K509, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, K509, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_f13_split_back( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K415, \ + K500, K501, K502, K505, K509, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, KC_NO, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, K509, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_tsangan_f13( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K415, \ + K500, K501, K502, K505, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, KC_NO, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, KC_NO, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_tsangan_f13_split_shift( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K415, \ + K500, K501, K502, K505, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, KC_NO, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} + +#define LAYOUT_tkl_ansi_tsangan_f13_split_back( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K415, \ + K500, K501, K502, K505, K510, K511, K513, K514, K515, K516 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, K016 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, KC_NO, KC_NO, K415, KC_NO }, \ + { K500, K501, K502, KC_NO, KC_NO, K505, KC_NO, KC_NO, KC_NO, KC_NO, K510, K511, KC_NO, K513, K514, K515, K516 }, \ +} diff --git a/keyboards/pjb/eros/info.json b/keyboards/pjb/eros/info.json new file mode 100644 index 0000000000..7c0439e453 --- /dev/null +++ b/keyboards/pjb/eros/info.json @@ -0,0 +1,35 @@ +{ + "keyboard_name": "PJB eros", + "url": "https://github.com/602studios", + "maintainer": "PJB", + "layouts": { + "LAYOUT_all_f13": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":1.75}, {"x":14, "y":4.25}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.25}, {"x":1.25, "y":5.25, "w":1.25}, {"x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"x":10, "y":5.25, "w":1.25}, {"x":11.25, "y":5.25, "w":1.25}, {"x":12.5, "y":5.25, "w":1.25}, {"x":13.75, "y":5.25, "w":1.25}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}], + }, + + "LAYOUT_tkl_ansi_f13": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25, "w":2}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":2.75}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.25}, {"x":1.25, "y":5.25, "w":1.25}, {"x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"x":10, "y":5.25, "w":1.25}, {"x":11.25, "y":5.25, "w":1.25}, {"x":12.5, "y":5.25, "w":1.25}, {"x":13.75, "y":5.25, "w":1.25}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + "LAYOUT_tkl_ansi_f13_split_shift": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25, "w":2}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":1.75}, {"x":14, "y":4.25}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.25}, {"x":1.25, "y":5.25, "w":1.25}, {"x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"x":10, "y":5.25, "w":1.25}, {"x":11.25, "y":5.25, "w":1.25}, {"x":12.5, "y":5.25, "w":1.25}, {"x":13.75, "y":5.25, "w":1.25}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + "LAYOUT_tkl_ansi_f13_split_back": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":2.75}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.25}, {"x":1.25, "y":5.25, "w":1.25}, {"x":2.5, "y":5.25, "w":1.25}, {"x":3.75, "y":5.25, "w":6.25}, {"x":10, "y":5.25, "w":1.25}, {"x":11.25, "y":5.25, "w":1.25}, {"x":12.5, "y":5.25, "w":1.25}, {"x":13.75, "y":5.25, "w":1.25}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + "LAYOUT_tkl_ansi_tsangan_f13": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25, "w":2}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":2.75}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.5}, {"x":1.5, "y":5.25}, {"x":2.5, "y":5.25, "w":1.5}, {"x":4, "y":5.25, "w":7}, {"x":11, "y":5.25, "w":1.5}, {"x":12.5, "y":5.25}, {"x":13.5, "y":5.25, "w":1.5}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + "LAYOUT_tkl_ansi_tsangan_f13_split_shift": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25, "w":2}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":1.75}, {"x":14, "y":4.25}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.5}, {"x":1.5, "y":5.25}, {"x":2.5, "y":5.25, "w":1.5}, {"x":4, "y":5.25, "w":7}, {"x":11, "y":5.25, "w":1.5}, {"x":12.5, "y":5.25}, {"x":13.5, "y":5.25, "w":1.5}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + "LAYOUT_tkl_ansi_tsangan_f13_split_back": { + "layout": [{"x":0, "y":0}, {"x":1.25, "y":0}, {"x":2.25, "y":0}, {"x":3.25, "y":0}, {"x":4.25, "y":0}, {"x":5.5, "y":0}, {"x":6.5, "y":0}, {"x":7.5, "y":0}, {"x":8.5, "y":0}, {"x":9.75, "y":0}, {"x":10.75, "y":0}, {"x":11.75, "y":0}, {"x":12.75, "y":0}, {"x":14, "y":0}, {"x":15.25, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":5, "y":1.25}, {"x":6, "y":1.25}, {"x":7, "y":1.25}, {"x":8, "y":1.25}, {"x":9, "y":1.25}, {"x":10, "y":1.25}, {"x":11, "y":1.25}, {"x":12, "y":1.25}, {"x":13, "y":1.25}, {"x":14, "y":1.25}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25}, {"x":17.25, "y":1.25}, {"x":0, "y":2.25, "w":1.5}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":5.5, "y":2.25}, {"x":6.5, "y":2.25}, {"x":7.5, "y":2.25}, {"x":8.5, "y":2.25}, {"x":9.5, "y":2.25}, {"x":10.5, "y":2.25}, {"x":11.5, "y":2.25}, {"x":12.5, "y":2.25}, {"x":13.5, "y":2.25, "w":1.5}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25}, {"x":17.25, "y":2.25}, {"x":0, "y":3.25, "w":1.75}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":5.75, "y":3.25}, {"x":6.75, "y":3.25}, {"x":7.75, "y":3.25}, {"x":8.75, "y":3.25}, {"x":9.75, "y":3.25}, {"x":10.75, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25, "w":2.25}, {"x":0, "y":4.25, "w":2.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":6.25, "y":4.25}, {"x":7.25, "y":4.25}, {"x":8.25, "y":4.25}, {"x":9.25, "y":4.25}, {"x":10.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25, "w":2.75}, {"x":16.25, "y":4.25}, {"x":0, "y":5.25, "w":1.5}, {"x":1.5, "y":5.25}, {"x":2.5, "y":5.25, "w":1.5}, {"x":4, "y":5.25, "w":7}, {"x":11, "y":5.25, "w":1.5}, {"x":12.5, "y":5.25}, {"x":13.5, "y":5.25, "w":1.5}, {"x":15.25, "y":5.25}, {"x":16.25, "y":5.25}, {"x":17.25, "y":5.25}] + }, + + } +} diff --git a/keyboards/pjb/eros/keymaps/default/keymap.c b/keyboards/pjb/eros/keymaps/default/keymap.c new file mode 100644 index 0000000000..f54a2a2de9 --- /dev/null +++ b/keyboards/pjb/eros/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +/* Copyright 2022 PJB + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all_f13( + 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_F13, KC_PSCR,KC_SLCK,KC_PAUS, + KC_GRV, 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_INS ,KC_HOME,KC_PGUP, + 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, KC_DEL ,KC_END ,KC_PGDN, + 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_BSLS, 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_UP, + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT) +}; diff --git a/keyboards/pjb/eros/keymaps/via/keymap.c b/keyboards/pjb/eros/keymaps/via/keymap.c new file mode 100644 index 0000000000..0a6ad297ca --- /dev/null +++ b/keyboards/pjb/eros/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2022 PJB + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all_f13( + 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_F13, KC_PSCR,KC_SLCK,KC_PAUS, + KC_GRV, 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_INS ,KC_HOME,KC_PGUP, + 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, KC_DEL ,KC_END ,KC_PGDN, + 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_BSLS, 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_UP, + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI, KC_APP,KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT), + +[1] = LAYOUT_all_f13( + KC_ESC, 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,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, + 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), + +[2] = LAYOUT_all_f13( + KC_ESC, 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,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, + 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), + +[3] = LAYOUT_all_f13( + KC_ESC, 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,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, + 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), +}; diff --git a/keyboards/pjb/eros/keymaps/via/rules.mk b/keyboards/pjb/eros/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/pjb/eros/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/pjb/eros/readme.md b/keyboards/pjb/eros/readme.md new file mode 100644 index 0000000000..b72f808dce --- /dev/null +++ b/keyboards/pjb/eros/readme.md @@ -0,0 +1,20 @@ +# Eros + +TKL Custom Keyboard with F13 key + +* Keyboard Maintainer: [Phil](https://github.com/602studios) +* Hardware Supported: Eros TKL PCB +* Hardware Availability: [Geekhack Group Buy]( https://geekhack.org/index.php?topic=115569.0) + +Make example for this keyboard (after setting up your build environment): + + make pjb/eros/default + +Flashing example for this keyboard: + + make pjb/eros/default:flash + +**Reset Key**: Hold down the key located at *K00*, commonly programmed as *Esc* while plugging in the keyboard. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + diff --git a/keyboards/pjb/eros/rules.mk b/keyboards/pjb/eros/rules.mk new file mode 100644 index 0000000000..696b8ca99e --- /dev/null +++ b/keyboards/pjb/eros/rules.mk @@ -0,0 +1,17 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Enable audio output From b8cb147573b39f5c613569d19e8a9ed4f6252676 Mon Sep 17 00:00:00 2001 From: Adam Lickel Date: Wed, 13 Apr 2022 00:45:42 -0700 Subject: [PATCH 234/699] [Keymap] sinc/lickel: Use backlight keys in Fn Row (#16789) --- keyboards/keebio/bdn9/keymaps/lickel/readme.md | 2 +- keyboards/keebio/sinc/keymaps/lickel/keymap.c | 2 +- keyboards/keebio/sinc/keymaps/lickel/readme.md | 8 ++++++-- 3 files changed, 8 insertions(+), 4 deletions(-) diff --git a/keyboards/keebio/bdn9/keymaps/lickel/readme.md b/keyboards/keebio/bdn9/keymaps/lickel/readme.md index b729319b99..973cfb4a6d 100644 --- a/keyboards/keebio/bdn9/keymaps/lickel/readme.md +++ b/keyboards/keebio/bdn9/keymaps/lickel/readme.md @@ -12,6 +12,6 @@ ## Changelog -### 1/17/2022 - 1.0 +### 2022-01-17 - 1.0 - Initial release diff --git a/keyboards/keebio/sinc/keymaps/lickel/keymap.c b/keyboards/keebio/sinc/keymaps/lickel/keymap.c index abdb33e936..258e7d0128 100644 --- a/keyboards/keebio/sinc/keymaps/lickel/keymap.c +++ b/keyboards/keebio/sinc/keymaps/lickel/keymap.c @@ -32,7 +32,7 @@ enum custom_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_80_with_macro( - KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MPLY, + KC_MUTE, KC_ESC, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, BL_DEC, BL_INC, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, KC_MPLY, KC_F1, KC_F2, KC_GRV, 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_BSPC, KC_HOME, KC_F3, KC_F4, 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, KC_PGUP, KC_F5, KC_F6, 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_PGDN, diff --git a/keyboards/keebio/sinc/keymaps/lickel/readme.md b/keyboards/keebio/sinc/keymaps/lickel/readme.md index a41c16de23..7be7baae29 100644 --- a/keyboards/keebio/sinc/keymaps/lickel/readme.md +++ b/keyboards/keebio/sinc/keymaps/lickel/readme.md @@ -7,12 +7,16 @@ - Left macros are: F1->F10 - Right macros are: Play, Home, Pg Up, Pg Dn, End, Right -![Layout](https://i.imgur.com/uQnzMSe.png) +![Layout](https://i.imgur.com/0uXXrJY.png) ([KLE](http://www.keyboard-layout-editor.com/#/gists/e0350d8914cac3166abcca6abfd093b7)) ## Changelog -### 11/27/2021 - 1.0 +### 2022-03-04 - 1.1 + +- Correct function row to change LED backlights, not underglow + +### 2021-11-27 - 1.0 - Initial release From 1f2b1dedccdf21b629c45ece80b4ca32f6653296 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 13 Apr 2022 18:00:18 +1000 Subject: [PATCH 235/699] Quantum Painter (#10174) * Install dependencies before executing unit tests. * Split out UTF-8 decoder. * Fixup python formatting rules. * Add documentation for QGF/QFF and the RLE format used. * Add CLI commands for converting images and fonts. * Add stub rules.mk for QP. * Add stream type. * Add base driver and comms interfaces. * Add support for SPI, SPI+D/C comms drivers. * Include when enabled. * Add base support for SPI+D/C+RST panels, as well as concrete implementation of ST7789. * Add support for GC9A01. * Add support for ILI9341. * Add support for ILI9163. * Add support for SSD1351. * Implement qp_setpixel, including pixdata buffer management. * Implement qp_line. * Implement qp_rect. * Implement qp_circle. * Implement qp_ellipse. * Implement palette interpolation. * Allow for streams to work with either flash or RAM. * Image loading. * Font loading. * QGF palette loading. * Progressive decoder of pixel data supporting Raw+RLE, 1-,2-,4-,8-bpp monochrome and palette-based images. * Image drawing. * Animations. * Font rendering. * Check against 256 colours, dump out the loaded palette if debugging enabled. * Fix build. * AVR is not the intended audience. * `qmk format-c` * Generation fix. * First batch of docs. * More docs and examples. * Review comments. * Public API documentation. --- .github/workflows/unit_test.yml | 2 + builddefs/common_features.mk | 8 +- docs/_summary.md | 1 + docs/cli_commands.md | 12 + docs/quantum_painter.md | 705 ++++++++++++++++++ docs/quantum_painter_qff.md | 103 +++ docs/quantum_painter_qgf.md | 178 +++++ docs/quantum_painter_rle.md | 29 + drivers/painter/comms/qp_comms_spi.c | 137 ++++ drivers/painter/comms/qp_comms_spi.h | 51 ++ drivers/painter/gc9a01/qp_gc9a01.c | 150 ++++ drivers/painter/gc9a01/qp_gc9a01.h | 37 + drivers/painter/gc9a01/qp_gc9a01_opcodes.h | 78 ++ drivers/painter/ili9xxx/qp_ili9163.c | 121 +++ drivers/painter/ili9xxx/qp_ili9163.h | 37 + drivers/painter/ili9xxx/qp_ili9341.c | 128 ++++ drivers/painter/ili9xxx/qp_ili9341.h | 37 + drivers/painter/ili9xxx/qp_ili9xxx_opcodes.h | 100 +++ drivers/painter/ssd1351/qp_ssd1351.c | 125 ++++ drivers/painter/ssd1351/qp_ssd1351.h | 37 + drivers/painter/ssd1351/qp_ssd1351_opcodes.h | 48 ++ drivers/painter/st77xx/qp_st7789.c | 144 ++++ drivers/painter/st77xx/qp_st7789.h | 44 ++ drivers/painter/st77xx/qp_st7789_opcodes.h | 64 ++ drivers/painter/st77xx/qp_st77xx_opcodes.h | 51 ++ drivers/painter/tft_panel/qp_tft_panel.c | 130 ++++ drivers/painter/tft_panel/qp_tft_panel.h | 67 ++ lib/python/qmk/cli/__init__.py | 4 +- lib/python/qmk/cli/painter/__init__.py | 2 + .../qmk/cli/painter/convert_graphics.py | 86 +++ lib/python/qmk/cli/painter/make_font.py | 87 +++ lib/python/qmk/painter.py | 268 +++++++ lib/python/qmk/painter_qff.py | 401 ++++++++++ lib/python/qmk/painter_qgf.py | 408 ++++++++++ quantum/main.c | 11 +- quantum/painter/qff.c | 137 ++++ quantum/painter/qff.h | 88 +++ quantum/painter/qgf.c | 292 ++++++++ quantum/painter/qgf.h | 136 ++++ quantum/painter/qp.c | 228 ++++++ quantum/painter/qp.h | 453 +++++++++++ quantum/painter/qp_comms.c | 72 ++ quantum/painter/qp_comms.h | 25 + quantum/painter/qp_draw.h | 85 +++ quantum/painter/qp_draw_circle.c | 172 +++++ quantum/painter/qp_draw_codec.c | 142 ++++ quantum/painter/qp_draw_core.c | 294 ++++++++ quantum/painter/qp_draw_ellipse.c | 116 +++ quantum/painter/qp_draw_image.c | 382 ++++++++++ quantum/painter/qp_draw_text.c | 444 +++++++++++ quantum/painter/qp_internal.h | 33 + quantum/painter/qp_internal_driver.h | 82 ++ quantum/painter/qp_internal_formats.h | 49 ++ quantum/painter/qp_stream.c | 171 +++++ quantum/painter/qp_stream.h | 82 ++ quantum/painter/rules.mk | 116 +++ .../process_keycode/process_unicode_common.c | 30 +- quantum/quantum.h | 4 + quantum/utf8.c | 46 ++ quantum/utf8.h | 21 + requirements.txt | 1 + setup.cfg | 4 + 62 files changed, 7561 insertions(+), 35 deletions(-) create mode 100644 docs/quantum_painter.md create mode 100644 docs/quantum_painter_qff.md create mode 100644 docs/quantum_painter_qgf.md create mode 100644 docs/quantum_painter_rle.md create mode 100644 drivers/painter/comms/qp_comms_spi.c create mode 100644 drivers/painter/comms/qp_comms_spi.h create mode 100644 drivers/painter/gc9a01/qp_gc9a01.c create mode 100644 drivers/painter/gc9a01/qp_gc9a01.h create mode 100644 drivers/painter/gc9a01/qp_gc9a01_opcodes.h create mode 100644 drivers/painter/ili9xxx/qp_ili9163.c create mode 100644 drivers/painter/ili9xxx/qp_ili9163.h create mode 100644 drivers/painter/ili9xxx/qp_ili9341.c create mode 100644 drivers/painter/ili9xxx/qp_ili9341.h create mode 100644 drivers/painter/ili9xxx/qp_ili9xxx_opcodes.h create mode 100644 drivers/painter/ssd1351/qp_ssd1351.c create mode 100644 drivers/painter/ssd1351/qp_ssd1351.h create mode 100644 drivers/painter/ssd1351/qp_ssd1351_opcodes.h create mode 100644 drivers/painter/st77xx/qp_st7789.c create mode 100644 drivers/painter/st77xx/qp_st7789.h create mode 100644 drivers/painter/st77xx/qp_st7789_opcodes.h create mode 100644 drivers/painter/st77xx/qp_st77xx_opcodes.h create mode 100644 drivers/painter/tft_panel/qp_tft_panel.c create mode 100644 drivers/painter/tft_panel/qp_tft_panel.h create mode 100644 lib/python/qmk/cli/painter/__init__.py create mode 100644 lib/python/qmk/cli/painter/convert_graphics.py create mode 100644 lib/python/qmk/cli/painter/make_font.py create mode 100644 lib/python/qmk/painter.py create mode 100644 lib/python/qmk/painter_qff.py create mode 100644 lib/python/qmk/painter_qgf.py create mode 100644 quantum/painter/qff.c create mode 100644 quantum/painter/qff.h create mode 100644 quantum/painter/qgf.c create mode 100644 quantum/painter/qgf.h create mode 100644 quantum/painter/qp.c create mode 100644 quantum/painter/qp.h create mode 100644 quantum/painter/qp_comms.c create mode 100644 quantum/painter/qp_comms.h create mode 100644 quantum/painter/qp_draw.h create mode 100644 quantum/painter/qp_draw_circle.c create mode 100644 quantum/painter/qp_draw_codec.c create mode 100644 quantum/painter/qp_draw_core.c create mode 100644 quantum/painter/qp_draw_ellipse.c create mode 100644 quantum/painter/qp_draw_image.c create mode 100644 quantum/painter/qp_draw_text.c create mode 100644 quantum/painter/qp_internal.h create mode 100644 quantum/painter/qp_internal_driver.h create mode 100644 quantum/painter/qp_internal_formats.h create mode 100644 quantum/painter/qp_stream.c create mode 100644 quantum/painter/qp_stream.h create mode 100644 quantum/painter/rules.mk create mode 100644 quantum/utf8.c create mode 100644 quantum/utf8.h diff --git a/.github/workflows/unit_test.yml b/.github/workflows/unit_test.yml index 26bcb2f511..726ce19f0c 100644 --- a/.github/workflows/unit_test.yml +++ b/.github/workflows/unit_test.yml @@ -26,5 +26,7 @@ jobs: - uses: actions/checkout@v2 with: submodules: recursive + - name: Install dependencies + run: pip3 install -r requirements-dev.txt - name: Run tests run: make test:all diff --git a/builddefs/common_features.mk b/builddefs/common_features.mk index a1793f91a5..c976b8296d 100644 --- a/builddefs/common_features.mk +++ b/builddefs/common_features.mk @@ -149,6 +149,11 @@ ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes) endif endif +QUANTUM_PAINTER_ENABLE ?= no +ifeq ($(strip $(QUANTUM_PAINTER_ENABLE)), yes) + include $(QUANTUM_DIR)/painter/rules.mk +endif + VALID_EEPROM_DRIVER_TYPES := vendor custom transient i2c spi EEPROM_DRIVER ?= vendor ifeq ($(filter $(EEPROM_DRIVER),$(VALID_EEPROM_DRIVER_TYPES)),) @@ -696,7 +701,8 @@ endif ifeq ($(strip $(UNICODE_COMMON)), yes) OPT_DEFS += -DUNICODE_COMMON_ENABLE - SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c + SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c \ + $(QUANTUM_DIR)/utf8.c endif MAGIC_ENABLE ?= yes diff --git a/docs/_summary.md b/docs/_summary.md index 249bfcd9ed..786685eba4 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -94,6 +94,7 @@ * Hardware Features * Displays + * [Quantum Painter](quantum_painter.md) * [HD44780 LCD Driver](feature_hd44780.md) * [ST7565 LCD Driver](feature_st7565.md) * [OLED Driver](feature_oled_driver.md) diff --git a/docs/cli_commands.md b/docs/cli_commands.md index 463abcef12..a380d3eb2f 100644 --- a/docs/cli_commands.md +++ b/docs/cli_commands.md @@ -515,3 +515,15 @@ Run single test: qmk pytest -t qmk.tests.test_cli_commands.test_c2json qmk pytest -t qmk.tests.test_qmk_path + +## `qmk painter-convert-graphics` + +This command converts images to a format usable by QMK, i.e. the QGF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. + +## `qmk painter-make-font-image` + +This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. + +## `qmk painter-convert-font-image` + +This command converts an intermediate font image to the QFF File Format. See the [Quantum Painter](quantum_painter.md?id=quantum-painter-cli) documentation for more information on this command. diff --git a/docs/quantum_painter.md b/docs/quantum_painter.md new file mode 100644 index 0000000000..a3705b62ce --- /dev/null +++ b/docs/quantum_painter.md @@ -0,0 +1,705 @@ +# Quantum Painter :id=quantum-painter + +Quantum Painter is the standardised API for graphical displays. It currently includes support for basic drawing primitives, as well as custom images, animations, and fonts. + +Due to the complexity, there is no support for Quantum Painter on AVR-based boards. + +To enable overall Quantum Painter to be built into your firmware, add the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = ...... +``` + +You will also likely need to select an appropriate driver in `rules.mk`, which is listed below. + +!> Quantum Painter is not currently integrated with system-level operations such as disabling displays after a configurable timeout, or when the keyboard goes into suspend. Users will need to handle this manually at the current time. + +The QMK CLI can be used to convert from normal images such as PNG files or animated GIFs, as well as fonts from TTF files. + +Hardware supported: + +| Display Panel | Panel Type | Size | Comms Transport | Driver | +|---------------|--------------------|------------------|-----------------|-----------------------------------------| +| GC9A01 | RGB LCD (circular) | 240x240 | SPI + D/C + RST | `QUANTUM_PAINTER_DRIVERS = gc9a01_spi` | +| ILI9163 | RGB LCD | 128x128 | SPI + D/C + RST | `QUANTUM_PAINTER_DRIVERS = ili9163_spi` | +| ILI9341 | RGB LCD | 240x320 | SPI + D/C + RST | `QUANTUM_PAINTER_DRIVERS = ili9341_spi` | +| SSD1351 | RGB OLED | 128x128 | SPI + D/C + RST | `QUANTUM_PAINTER_DRIVERS = ssd1351_spi` | +| ST7789 | RGB LCD | 240x320, 240x240 | SPI + D/C + RST | `QUANTUM_PAINTER_DRIVERS = st7789_spi` | + +## Quantum Painter Configuration :id=quantum-painter-config + +| Option | Default | Purpose | +|-----------------------------------------|---------|---------------------------------------------------------------------------------------------------------------------------------------------| +| `QUANTUM_PAINTER_NUM_IMAGES` | `8` | The maximum number of images/animations that can be loaded at any one time. | +| `QUANTUM_PAINTER_NUM_FONTS` | `4` | The maximum number of fonts that can be loaded at any one time. | +| `QUANTUM_PAINTER_CONCURRENT_ANIMATIONS` | `4` | The maximum number of animations that can be executed at the same time. | +| `QUANTUM_PAINTER_LOAD_FONTS_TO_RAM` | `FALSE` | Whether or not fonts should be loaded to RAM. Relevant for fonts stored in off-chip persistent storage, such as external flash. | +| `QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE` | `32` | The limit of the amount of pixel data that can be transmitted in one transaction to the display. Higher values require more RAM on the MCU. | +| `QUANTUM_PAINTER_SUPPORTS_256_PALETTE` | `FALSE` | If 256-color palettes are supported. Requires significantly more RAM on the MCU. | +| `QUANTUM_PAINTER_DEBUG` | _unset_ | Prints out significant amounts of debugging information to CONSOLE output. Significant performance degradation, use only for debugging. | + +Drivers have their own set of configurable options, and are described in their respective sections. + +## Quantum Painter CLI Commands :id=quantum-painter-cli + +### `qmk painter-convert-graphics` + +This command converts images to a format usable by QMK, i.e. the QGF File Format. + +**Usage**: + +``` +usage: qmk painter-convert-graphics [-h] [-d] [-r] -f FORMAT [-o OUTPUT] -i INPUT [-v] + +optional arguments: + -h, --help show this help message and exit + -d, --no-deltas Disables the use of delta frames when encoding animations. + -r, --no-rle Disables the use of RLE when encoding images. + -f FORMAT, --format FORMAT + Output format, valid types: pal256, pal16, pal4, pal2, mono256, mono16, mono4, mono2 + -o OUTPUT, --output OUTPUT + Specify output directory. Defaults to same directory as input. + -i INPUT, --input INPUT + Specify input graphic file. + -v, --verbose Turns on verbose output. +``` + +The `INPUT` argument can be any image file loadable by Python's Pillow module. Common formats include PNG, or Animated GIF. + +The `OUTPUT` argument needs to be a directory, and will default to the same directory as the input argument. + +The `FORMAT` argument can be any of the following: + +| Format | Meaning | +|-----------|-----------------------------------------------------------------------| +| `pal256` | 256-color palette (requires `QUANTUM_PAINTER_SUPPORTS_256_PALETTE`) | +| `pal16` | 16-color palette | +| `pal4` | 4-color palette | +| `pal2` | 2-color palette | +| `mono256` | 256-shade grayscale (requires `QUANTUM_PAINTER_SUPPORTS_256_PALETTE`) | +| `mono16` | 16-shade grayscale | +| `mono4` | 4-shade grayscale | +| `mono2` | 2-shade grayscale | + +**Examples**: + +``` +$ cd /home/qmk/qmk_firmware/keyboards/my_keeb +$ qmk painter-convert-graphics -f mono16 -i my_image.gif -o ./generated/ +Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/my_image.qgf.h... +Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/my_image.qgf.c... +``` + +### `qmk painter-make-font-image` + +This command converts a TTF font to an intermediate format for editing, before converting to the QFF File Format. + +**Usage**: + +``` +usage: qmk painter-make-font-image [-h] [-a] [-u UNICODE_GLYPHS] [-n] [-s SIZE] -o OUTPUT -f FONT + +optional arguments: + -h, --help show this help message and exit + -a, --no-aa Disable anti-aliasing on fonts. + -u UNICODE_GLYPHS, --unicode-glyphs UNICODE_GLYPHS + Also generate the specified unicode glyphs. + -n, --no-ascii Disables output of the full ASCII character set (0x20..0x7E), exporting only the glyphs specified. + -s SIZE, --size SIZE Specify font size. Default 12. + -o OUTPUT, --output OUTPUT + Specify output image path. + -f FONT, --font FONT Specify input font file. +``` + +The `FONT` argument is generally a TrueType Font file (TTF). + +The `OUTPUT` argument is the output image to generate, generally something like `my_font.png`. + +The `UNICODE_GLYPHS` argument allows for specifying extra unicode glyphs to generate, and accepts a string. + +**Examples**: + +``` +$ qmk painter-make-font-image --font NotoSans-ExtraCondensedBold.ttf --size 11 -o noto11.png --unicode-glyphs "ĄȽɂɻɣɈʣ" +``` + +### `qmk painter-convert-font-image` + +This command converts an intermediate font image to the QFF File Format. + +This command expects an image that conforms to the following format: + +* Top-left pixel (at `0,0`) is the "delimiter" color: + * Each glyph in the font starts when a pixel of this color is found on the first row + * The first row is discarded when converting to the QFF format +* The number of delimited glyphs must match the supplied arguments to the command: + * The full ASCII set `0x20..0x7E` (if `--no-ascii` was not specified) + * The corresponding number of unicode glyphs if any were specified with `--unicode-glyphs` +* The order of the glyphs matches the ASCII set, if any, followed by the Unicode glyph set, if any. + +**Usage**: + +``` +usage: qmk painter-convert-font-image [-h] [-r] -f FORMAT [-u UNICODE_GLYPHS] [-n] [-o OUTPUT] [-i INPUT] + +optional arguments: + -h, --help show this help message and exit + -r, --no-rle Disable the use of RLE to minimise converted image size. + -f FORMAT, --format FORMAT + Output format, valid types: pal256, pal16, pal4, pal2, mono256, mono16, mono4, mono2 + -u UNICODE_GLYPHS, --unicode-glyphs UNICODE_GLYPHS + Also generate the specified unicode glyphs. + -n, --no-ascii Disables output of the full ASCII character set (0x20..0x7E), exporting only the glyphs specified. + -o OUTPUT, --output OUTPUT + Specify output directory. Defaults to same directory as input. + -i INPUT, --input INPUT + Specify input graphic file. +``` + +The same arguments for `--no-ascii` and `--unicode-glyphs` need to be specified, as per `qmk painter-make-font-image`. + +**Examples**: + +``` +$ cd /home/qmk/qmk_firmware/keyboards/my_keeb +$ qmk painter-convert-font-image --input noto11.png -f mono4 --unicode-glyphs "ĄȽɂɻɣɈʣ" +Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/noto11.qff.h... +Writing /home/qmk/qmk_firmware/keyboards/my_keeb/generated/noto11.qff.c... +``` + +## Quantum Painter Drawing API :id=quantum-painter-api + +All APIs require a `painter_device_t` object as their first parameter -- this object comes from the specific device initialisation, and instructions on creating it can be found in each driver's respective section. + +To use any of the APIs, you need to include `qp.h`: +```c +#include +``` + +### General Notes :id=quantum-painter-api-general + +The coordinate system used in Quantum Painter generally accepts `left`, `top`, `right`, and `bottom` instead of x/y/width/height, and each coordinate is inclusive of where pixels should be drawn. This is required as some datatypes used by display panels have a maximum value of `255` -- for any value or geometry extent that matches `256`, this would be represented as a `0`, instead. + +?> Drawing a horizontal line 8 pixels long, starting from 4 pixels inside the left side of the display, will need `left=4`, `right=11`. + +All color data matches the standard QMK HSV triplet definitions: + +* Hue is of the range `0...255` and is internally mapped to 0...360 degrees. +* Saturation is of the range `0...255` and is internally mapped to 0...100% saturation. +* Value is of the range `0...255` and is internally mapped to 0...100% brightness. + +?> Colors used in Quantum Painter are not subject to the RGB lighting CIE curve, if it is enabled. + +### Device Control :id=quantum-painter-api-device-control + +#### Display Initialisation :id=quantum-painter-api-init + +```c +bool qp_init(painter_device_t device, painter_rotation_t rotation); +``` + +The `qp_init` function is used to initialise a display device after it has been created. This accepts a rotation parameter (`QP_ROTATION_0`, `QP_ROTATION_90`, `QP_ROTATION_180`, `QP_ROTATION_270`), which makes sure that the orientation of what's drawn on the display is correct. + +```c +static painter_device_t display; +void keyboard_post_init_kb(void) { + display = qp_make_.......; // Create the display + qp_init(display, QP_ROTATION_0); // Initialise the display +} +``` + +#### Display Power :id=quantum-painter-api-power + +```c +bool qp_power(painter_device_t device, bool power_on); +``` + +The `qp_power` function instructs the display whether or not the display panel should be on or off. + +!> If there is a separate backlight controlled through the normal QMK backlight API, this is not controlled by the `qp_power` function and needs to be manually handled elsewhere. + +```c +static uint8_t last_backlight = 255; +void suspend_power_down_user(void) { + if (last_backlight == 255) { + last_backlight = get_backlight_level(); + } + backlight_set(0); + rgb_matrix_set_suspend_state(true); + qp_power(display, false); +} + +void suspend_wakeup_init_user(void) { + qp_power(display, true); + rgb_matrix_set_suspend_state(false); + if (last_backlight != 255) { + backlight_set(last_backlight); + } + last_backlight = 255; +} +``` + +#### Display Clear :id=quantum-painter-api-clear + +```c +bool qp_clear(painter_device_t device); +``` + +The `qp_clear` function clears the display's screen. + +#### Display Flush :id=quantum-painter-api-flush + +```c +bool qp_flush(painter_device_t device); +``` + +The `qp_flush` function ensures that all drawing operations are "pushed" to the display. This should be done as the last operation whenever a sequence of draws occur, and guarantees that any changes are applied. + +!> Some display panels may seem to work even without a call to `qp_flush` -- this may be because the driver cannot queue drawing operations and needs to display them immediately when invoked. In general, calling `qp_flush` at the end is still considered "best practice". + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw a rect based off the current RGB color + qp_rect(display, 0, 7, 0, 239, rgb_matrix_get_hue(), 255, 255); + qp_flush(display); + } +} +``` + +### Drawing Primitives :id=quantum-painter-api-primitives + +#### Set Pixel :id=quantum-painter-api-setpixel + +```c +bool qp_setpixel(painter_device_t device, uint16_t x, uint16_t y, uint8_t hue, uint8_t sat, uint8_t val); +``` + +The `qp_setpixel` can be used to set a specific pixel on the screen to the supplied color. + +?> Using `qp_setpixel` for large amounts of drawing operations is inefficient and should be avoided unless they cannot be achieved with other drawing APIs. + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw a 240px high vertical rainbow line on X=0: + for (int i = 0; i < 239; ++i) { + qp_setpixel(display, 0, i, i, 255, 255); + } + qp_flush(display); + } +} +``` + +#### Draw Line :id=quantum-painter-api-line + +```c +bool qp_line(painter_device_t device, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t hue, uint8_t sat, uint8_t val); +``` + +The `qp_line` can be used to draw lines on the screen with the supplied color. + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw 8px-wide rainbow down the left side of the display + for (int i = 0; i < 239; ++i) { + qp_line(display, 0, i, 7, i, i, 255, 255); + } + qp_flush(display); + } +} +``` + +#### Draw Rect :id=quantum-painter-api-rect + +```c +bool qp_rect(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint8_t hue, uint8_t sat, uint8_t val, bool filled); +``` + +The `qp_rect` can be used to draw rectangles on the screen with the supplied color, with or without a background fill. If not filled, any pixels inside the rectangle will be left as-is. + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw 8px-wide rainbow filled rectangles down the left side of the display + for (int i = 0; i < 239; i+=8) { + qp_rect(display, 0, i, 7, i+7, i, 255, 255, true); + } + qp_flush(display); + } +} +``` + +#### Draw Circle :id=quantum-painter-api-circle + +```c +bool qp_circle(painter_device_t device, uint16_t x, uint16_t y, uint16_t radius, uint8_t hue, uint8_t sat, uint8_t val, bool filled); +``` + +The `qp_circle` can be used to draw circles on the screen with the supplied color, with or without a background fill. If not filled, any pixels inside the circle will be left as-is. + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw r=4 filled circles down the left side of the display + for (int i = 0; i < 239; i+=8) { + qp_circle(display, 4, 4+i, 4, i, 255, 255, true); + } + qp_flush(display); + } +} +``` + +#### Draw Ellipse :id=quantum-painter-api-ellipse + +```c +bool qp_ellipse(painter_device_t device, uint16_t x, uint16_t y, uint16_t sizex, uint16_t sizey, uint8_t hue, uint8_t sat, uint8_t val, bool filled); +``` + +The `qp_ellipse` can be used to draw ellipses on the screen with the supplied color, with or without a background fill. If not filled, any pixels inside the ellipses will be left as-is. + +```c +void housekeeping_task_user(void) { + static uint32_t last_draw = 0; + if (timer_elapsed32(last_draw) > 33) { // Throttle to 30fps + last_draw = timer_read32(); + // Draw 16x8 filled ellipses down the left side of the display + for (int i = 0; i < 239; i+=8) { + qp_ellipse(display, 8, 4+i, 16, 8, i, 255, 255, true); + } + qp_flush(display); + } +} +``` + +### Image Functions :id=quantum-painter-api-images + +#### Load Image :id=quantum-painter-api-load-image + +```c +painter_image_handle_t qp_load_image_mem(const void *buffer); +``` + +The `qp_load_image_mem` function loads a QGF image from memory or flash. + +`qp_load_image_mem` returns a handle to the loaded image, which can then be used to draw to the screen using `qp_drawimage`, `qp_drawimage_recolor`, `qp_animate`, or `qp_animate_recolor`. If an image is no longer required, it can be unloaded by calling `qp_close_image` below. + +See the [CLI Commands](quantum_painter.md?id=quantum-painter-cli) for instructions on how to convert images to [QGF](quantum_painter_qgf.md). + +?> The total number of images available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_IMAGES` in the table above. If more images are required, the number should be increased in `config.h`. + +Image information is available through accessing the handle: + +| Property | Accessor | +|-------------|----------------------| +| Width | `image->width` | +| Height | `image->height` | +| Frame Count | `image->frame_count` | + +#### Unload Image :id=quantum-painter-api-close-image + +```c +bool qp_close_image(painter_image_handle_t image); +``` + +The `qp_close_image` function releases resources related to the loading of the supplied image. + +#### Draw image :id=quantum-painter-api-draw-image + +```c +bool qp_drawimage(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); +bool qp_drawimage_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); +``` + +The `qp_drawimage` and `qp_drawimage_recolor` functions draw the supplied image to the screen at the supplied location, with the latter function allowing for monochrome-based images to be recolored. + +```c +// Draw an image on the bottom-right of the 240x320 display on initialisation +static painter_image_handle_t my_image; +void keyboard_post_init_kb(void) { + my_image = qp_load_image_mem(gfx_my_image); + if (my_image != NULL) { + qp_drawimage(display, (239 - my_image->width), (319 - my_image->height), my_image); + } +} +``` + +#### Animate Image :id=quantum-painter-api-animate-image + +```c +deferred_token qp_animate(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); +deferred_token qp_animate_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); +``` + +The `qp_animate` and `qp_animate_recolor` functions draw the supplied image to the screen at the supplied location, with the latter function allowing for monochrome-based animations to be recolored. They also set up internal timing such that each frame is rendered at the correct time as per the animated image. + +Once an image has been set to animate, it will loop indefinitely until stopped, with no user intervention required. + +Both functions return a `deferred_token`, which can then be used to stop the animation, using `qp_stop_animation` below. + +```c +// Animate an image on the bottom-right of the 240x320 display on initialisation +static painter_image_handle_t my_image; +static deferred_token my_anim; +void keyboard_post_init_kb(void) { + my_image = qp_load_image_mem(gfx_my_image); + if (my_image != NULL) { + my_anim = qp_animate(display, (239 - my_image->width), (319 - my_image->height), my_image); + } +} +``` + +#### Stop Animation :id=quantum-painter-api-stop-animation + +```c +void qp_stop_animation(deferred_token anim_token); +``` + +The `qp_stop_animation` function stops the previously-started animation. +```c +void housekeeping_task_user(void) { + if (some_random_stop_reason) { + qp_stop_animation(my_anim); + } +} +``` + +### Font Functions :id=quantum-painter-api-fonts + +#### Load Font :id=quantum-painter-api-load-font + +```c +painter_font_handle_t qp_load_font_mem(const void *buffer); +``` + +The `qp_load_font_mem` function loads a QFF font from memory or flash. + +`qp_load_font_mem` returns a handle to the loaded font, which can then be measured using `qp_textwidth`, or drawn to the screen using `qp_drawtext`, or `qp_drawtext_recolor`. If a font is no longer required, it can be unloaded by calling `qp_close_font` below. + +See the [CLI Commands](quantum_painter.md?id=quantum-painter-cli) for instructions on how to convert TTF fonts to [QFF](quantum_painter_qff.md). + +?> The total number of fonts available to load at any one time is controlled by the configurable option `QUANTUM_PAINTER_NUM_FONTS` in the table above. If more fonts are required, the number should be increased in `config.h`. + +Font information is available through accessing the handle: + +| Property | Accessor | +|-------------|----------------------| +| Line Height | `image->line_height` | + +#### Unload Font :id=quantum-painter-api-close-font + +```c +bool qp_close_font(painter_font_handle_t font); +``` + +The `qp_close_font` function releases resources related to the loading of the supplied font. + +#### Measure Text :id=quantum-painter-api-textwidth + +```c +int16_t qp_textwidth(painter_font_handle_t font, const char *str); +``` + +The `qp_textwidth` function allows measurement of how many pixels wide the supplied string would result in, for the given font. + +#### Draw Text :id=quantum-painter-api-drawtext + +```c +int16_t qp_drawtext(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str); +int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); +``` + +The `qp_drawtext` and `qp_drawtext_recolor` functions draw the supplied string to the screen at the given location using the font supplied, with the latter function allowing for monochrome-based fonts to be recolored. + +```c +// Draw a text message on the bottom-right of the 240x320 display on initialisation +static painter_font_handle_t my_font; +void keyboard_post_init_kb(void) { + my_font = qp_load_font_mem(font_opensans); + if (my_font != NULL) { + static const char *text = "Hello from QMK!"; + int16_t width = qp_textwidth(my_font, text); + qp_drawtext(display, (239 - width), (319 - my_font->line_height), my_font, text); + } +} +``` + +### Advanced Functions :id=quantum-painter-api-advanced + +#### Get Geometry :id=quantum-painter-api-get-geometry + +```c +void qp_get_geometry(painter_device_t device, uint16_t *width, uint16_t *height, painter_rotation_t *rotation, uint16_t *offset_x, uint16_t *offset_y); +``` + +The `qp_get_geometry` function allows external code to retrieve the current width, height, rotation, and drawing offsets. + +#### Set Viewport Offsets :id=quantum-painter-api-set-viewport + +```c +void qp_set_viewport_offsets(painter_device_t device, uint16_t offset_x, uint16_t offset_y); +``` + +The `qp_set_viewport_offsets` function can be used to offset all subsequent drawing operations. For example, if a display controller is internally 240x320, but the display panel is 240x240 and has a Y offset of 80 pixels, you could invoke `qp_set_viewport_offsets(display, 0, 80);` and the drawing positioning would be corrected. + +#### Set Viewport :id=quantum-painter-api-viewport + +```c +bool qp_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom); +``` + +The `qp_viewport` function controls where raw pixel data is written to. + +#### Stream Pixel Data :id=quantum-painter-api-pixdata + +```c +bool qp_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count); +``` + +The `qp_pixdata` function allows raw pixel data to be streamed to the display. It requires a native pixel count rather than the number of bytes to transfer, to ensure display panel data alignment is respected. E.g. for display panels using RGB565 internal format, sending 10 pixels will result in 20 bytes of transfer. + +!> Under normal circumstances, users will not need to manually call either `qp_viewport` or `qp_pixdata`. These allow for writing of raw pixel information, in the display panel's native format, to the area defined by the viewport. + +## Quantum Painter Display Drivers :id=quantum-painter-drivers + +### Common: Standard TFT (SPI + D/C + RST) + +Most TFT display panels use a 5-pin interface -- SPI SCK, SPI MOSI, SPI CS, D/C, and RST pins. + +For these displays, QMK's `spi_master` must already be correctly configured for the platform you're building for. + +The pin assignments for SPI CS, D/C, and RST are specified during device construction. + +### GC9A01 :id=qp-driver-gc9a01 + +Enabling support for the GC9A01 in Quantum Painter is done by adding the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = gc9a01_spi +``` + +Creating a GC9A01 device in firmware can then be done with the following API: + +```c +painter_device_t qp_gc9a01_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +``` + +The device handle returned from the `qp_gc9a01_make_spi_device` function can be used to perform all other drawing operations. + +The maximum number of displays can be configured by changing the following in your `config.h` (default is 1): + +```c +// 3 displays: +#define GC9A01_NUM_DEVICES 3 +``` + +### ILI9163 :id=qp-driver-ili9163 + +Enabling support for the ILI9163 in Quantum Painter is done by adding the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = ili9163_spi +``` + +Creating a ILI9163 device in firmware can then be done with the following API: + +```c +painter_device_t qp_ili9163_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +``` + +The device handle returned from the `qp_ili9163_make_spi_device` function can be used to perform all other drawing operations. + +The maximum number of displays can be configured by changing the following in your `config.h` (default is 1): + +```c +// 3 displays: +#define ILI9163_NUM_DEVICES 3 +``` + +### ILI9341 :id=qp-driver-ili9341 + +Enabling support for the ILI9341 in Quantum Painter is done by adding the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = ili9341_spi +``` + +Creating a ILI9341 device in firmware can then be done with the following API: + +```c +painter_device_t qp_ili9341_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +``` + +The device handle returned from the `qp_ili9341_make_spi_device` function can be used to perform all other drawing operations. + +The maximum number of displays can be configured by changing the following in your `config.h` (default is 1): + +```c +// 3 displays: +#define ILI9341_NUM_DEVICES 3 +``` + +### SSD1351 :id=qp-driver-ssd1351 + +Enabling support for the SSD1351 in Quantum Painter is done by adding the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = ssd1351_spi +``` + +Creating a SSD1351 device in firmware can then be done with the following API: + +```c +painter_device_t qp_ssd1351_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +``` + +The device handle returned from the `qp_ssd1351_make_spi_device` function can be used to perform all other drawing operations. + +The maximum number of displays can be configured by changing the following in your `config.h` (default is 1): + +```c +// 3 displays: +#define SSD1351_NUM_DEVICES 3 +``` + +### ST7789 :id=qp-driver-st7789 + +Enabling support for the ST7789 in Quantum Painter is done by adding the following to `rules.mk`: + +```make +QUANTUM_PAINTER_ENABLE = yes +QUANTUM_PAINTER_DRIVERS = st7789_spi +``` + +Creating a ST7789 device in firmware can then be done with the following API: + +```c +painter_device_t qp_st7789_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +``` + +The device handle returned from the `qp_st7789_make_spi_device` function can be used to perform all other drawing operations. + +The maximum number of displays can be configured by changing the following in your `config.h` (default is 1): + +```c +// 3 displays: +#define ST7789_NUM_DEVICES 3 +``` + +!> Some ST7789 devices are known to have different drawing offsets -- despite being a 240x320 pixel display controller internally, some display panels are only 240x240, or smaller. These may require an offset to be applied; see `qp_set_viewport_offsets` above for information on how to override the offsets if they aren't correctly rendered. \ No newline at end of file diff --git a/docs/quantum_painter_qff.md b/docs/quantum_painter_qff.md new file mode 100644 index 0000000000..f62d59bdcb --- /dev/null +++ b/docs/quantum_painter_qff.md @@ -0,0 +1,103 @@ +# QMK Font Format :id=qmk-font-format + +QMK uses a font format _("Quantum Font Format" - QFF)_ specifically for resource-constrained systems. + +This format is capable of encoding 1-, 2-, 4-, and 8-bit-per-pixel greyscale- and palette-based images into a font. It also includes RLE for pixel data for some basic compression. + +All integer values are in little-endian format. + +The QFF is defined in terms of _blocks_ -- each _block_ contains a _header_ and an optional _blob_ of data. The _header_ contains the block's _typeid_, and the length of the _blob_ that follows. Each block type is denoted by a different _typeid_ has its own block definition below. All blocks are defined as packed structs, containing zero padding between fields. + +The general structure of the file is: + +* _Font descriptor block_ +* _ASCII glyph block_ (optional, only if ASCII glyphs are included) +* _Unicode glyph block_ (optional, only if Unicode glyphs are included) +* _Font palette block_ (optional, depending on frame format) +* _Font data block_ + +## Block Header :id=qff-block-header + +The block header is identical to [QGF's block header](quantum_painter_qgf.md#qgf-block-header), and is present for all blocks, including the font descriptor. + +## Font descriptor block :id=qff-font-descriptor + +* _typeid_ = 0x00 +* _length_ = 20 + +This block must be located at the start of the file contents, and can exist a maximum of once in an entire QGF file. It is always followed by either the _ASCII glyph table_ or the _Unicode glyph table_, depending on which glyphs are included in the font. + +_Block_ format: + +```c +typedef struct __attribute__((packed)) qff_font_descriptor_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x00, .neg_type_id = (~0x00), .length = 20 } + uint24_t magic; // constant, equal to 0x464651 ("QFF") + uint8_t qff_version; // constant, equal to 0x01 + uint32_t total_file_size; // total size of the entire file, starting at offset zero + uint32_t neg_total_file_size; // negated value of total_file_size, used for detecting parsing errors + uint8_t line_height; // glyph height in pixels + bool has_ascii_table; // whether the font has an ascii table of glyphs (0x20...0x7E) + uint16_t num_unicode_glyphs; // the number of glyphs in the unicode table -- no table specified if zero + uint8_t format; // frame format, see below. + uint8_t flags; // frame flags, see below. + uint8_t compression_scheme; // compression scheme, see below. + uint8_t transparency_index; // palette index used for transparent pixels (not yet implemented) +} qff_font_descriptor_v1_t; +// _Static_assert(sizeof(qff_font_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 20), "qff_font_descriptor_v1_t must be 25 bytes in v1 of QFF"); +``` + +The values for `format`, `flags`, `compression_scheme`, and `transparency_index` match [QGF's frame descriptor block](quantum_painter_qgf.md#qgf-frame-descriptor), with the exception that the `delta` flag is ignored by QFF. + +## ASCII glyph table :id=qff-ascii-table + +* _typeid_ = 0x01 +* _length_ = 290 + +If the font contains ascii characters, the _ASCII glyph block_ must be located directly after the _font descriptor block_. + +```c +#define QFF_GLYPH_WIDTH_BITS 6 +#define QFF_GLYPH_WIDTH_MASK ((1<= 128 + length = marker - 128 + for i = 0 ... length-1 + c = READ_OCTET() + WRITE_OCTET(c) + + else + length = marker + c = READ_OCTET() + for i = 0 ... length-1 + WRITE_OCTET(c) + +``` diff --git a/drivers/painter/comms/qp_comms_spi.c b/drivers/painter/comms/qp_comms_spi.c new file mode 100644 index 0000000000..e644ba9f84 --- /dev/null +++ b/drivers/painter/comms/qp_comms_spi.c @@ -0,0 +1,137 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#ifdef QUANTUM_PAINTER_SPI_ENABLE + +# include "spi_master.h" +# include "qp_comms_spi.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Base SPI support + +bool qp_comms_spi_init(painter_device_t device) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_config_t *comms_config = (struct qp_comms_spi_config_t *)driver->comms_config; + + // Initialize the SPI peripheral + spi_init(); + + // Set up CS as output high + setPinOutput(comms_config->chip_select_pin); + writePinHigh(comms_config->chip_select_pin); + + return true; +} + +bool qp_comms_spi_start(painter_device_t device) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_config_t *comms_config = (struct qp_comms_spi_config_t *)driver->comms_config; + + return spi_start(comms_config->chip_select_pin, comms_config->lsb_first, comms_config->mode, comms_config->divisor); +} + +uint32_t qp_comms_spi_send_data(painter_device_t device, const void *data, uint32_t byte_count) { + uint32_t bytes_remaining = byte_count; + const uint8_t *p = (const uint8_t *)data; + while (bytes_remaining > 0) { + uint32_t bytes_this_loop = bytes_remaining < 1024 ? bytes_remaining : 1024; + spi_transmit(p, bytes_this_loop); + p += bytes_this_loop; + bytes_remaining -= bytes_this_loop; + } + + return byte_count - bytes_remaining; +} + +void qp_comms_spi_stop(painter_device_t device) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_config_t *comms_config = (struct qp_comms_spi_config_t *)driver->comms_config; + spi_stop(); + writePinHigh(comms_config->chip_select_pin); +} + +const struct painter_comms_vtable_t spi_comms_vtable = { + .comms_init = qp_comms_spi_init, + .comms_start = qp_comms_spi_start, + .comms_send = qp_comms_spi_send_data, + .comms_stop = qp_comms_spi_stop, +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI with D/C and RST pins + +# ifdef QUANTUM_PAINTER_SPI_DC_RESET_ENABLE + +bool qp_comms_spi_dc_reset_init(painter_device_t device) { + if (!qp_comms_spi_init(device)) { + return false; + } + + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_dc_reset_config_t *comms_config = (struct qp_comms_spi_dc_reset_config_t *)driver->comms_config; + + // Set up D/C as output low, if specified + if (comms_config->dc_pin != NO_PIN) { + setPinOutput(comms_config->dc_pin); + writePinLow(comms_config->dc_pin); + } + + // Set up RST as output, if specified, performing a reset in the process + if (comms_config->reset_pin != NO_PIN) { + setPinOutput(comms_config->reset_pin); + writePinLow(comms_config->reset_pin); + wait_ms(20); + writePinHigh(comms_config->reset_pin); + wait_ms(20); + } + + return true; +} + +uint32_t qp_comms_spi_dc_reset_send_data(painter_device_t device, const void *data, uint32_t byte_count) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_dc_reset_config_t *comms_config = (struct qp_comms_spi_dc_reset_config_t *)driver->comms_config; + writePinHigh(comms_config->dc_pin); + return qp_comms_spi_send_data(device, data, byte_count); +} + +void qp_comms_spi_dc_reset_send_command(painter_device_t device, uint8_t cmd) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct qp_comms_spi_dc_reset_config_t *comms_config = (struct qp_comms_spi_dc_reset_config_t *)driver->comms_config; + writePinLow(comms_config->dc_pin); + spi_write(cmd); +} + +void qp_comms_spi_dc_reset_bulk_command_sequence(painter_device_t device, const uint8_t *sequence, size_t sequence_len) { + for (size_t i = 0; i < sequence_len;) { + uint8_t command = sequence[i]; + uint8_t delay = sequence[i + 1]; + uint8_t num_bytes = sequence[i + 2]; + qp_comms_spi_dc_reset_send_command(device, command); + if (num_bytes > 0) { + qp_comms_spi_dc_reset_send_data(device, &sequence[i + 3], num_bytes); + } + if (delay > 0) { + wait_ms(delay); + } + i += (3 + num_bytes); + } +} + +const struct painter_comms_with_command_vtable_t spi_comms_with_dc_vtable = { + .base = + { + .comms_init = qp_comms_spi_dc_reset_init, + .comms_start = qp_comms_spi_start, + .comms_send = qp_comms_spi_dc_reset_send_data, + .comms_stop = qp_comms_spi_stop, + }, + .send_command = qp_comms_spi_dc_reset_send_command, + .bulk_command_sequence = qp_comms_spi_dc_reset_bulk_command_sequence, +}; + +# endif // QUANTUM_PAINTER_SPI_DC_RESET_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#endif // QUANTUM_PAINTER_SPI_ENABLE diff --git a/drivers/painter/comms/qp_comms_spi.h b/drivers/painter/comms/qp_comms_spi.h new file mode 100644 index 0000000000..9989987327 --- /dev/null +++ b/drivers/painter/comms/qp_comms_spi.h @@ -0,0 +1,51 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef QUANTUM_PAINTER_SPI_ENABLE + +# include + +# include "gpio.h" +# include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Base SPI support + +struct qp_comms_spi_config_t { + pin_t chip_select_pin; + uint16_t divisor; + bool lsb_first; + int8_t mode; +}; + +bool qp_comms_spi_init(painter_device_t device); +bool qp_comms_spi_start(painter_device_t device); +uint32_t qp_comms_spi_send_data(painter_device_t device, const void* data, uint32_t byte_count); +void qp_comms_spi_stop(painter_device_t device); + +extern const struct painter_comms_vtable_t spi_comms_vtable; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI with D/C and RST pins + +# ifdef QUANTUM_PAINTER_SPI_DC_RESET_ENABLE + +struct qp_comms_spi_dc_reset_config_t { + struct qp_comms_spi_config_t spi_config; + pin_t dc_pin; + pin_t reset_pin; +}; + +void qp_comms_spi_dc_reset_send_command(painter_device_t device, uint8_t cmd); +uint32_t qp_comms_spi_dc_reset_send_data(painter_device_t device, const void* data, uint32_t byte_count); +void qp_comms_spi_dc_reset_bulk_command_sequence(painter_device_t device, const uint8_t* sequence, size_t sequence_len); + +extern const struct painter_comms_with_command_vtable_t spi_comms_with_dc_vtable; + +# endif // QUANTUM_PAINTER_SPI_DC_RESET_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +#endif // QUANTUM_PAINTER_SPI_ENABLE diff --git a/drivers/painter/gc9a01/qp_gc9a01.c b/drivers/painter/gc9a01/qp_gc9a01.c new file mode 100644 index 0000000000..ad76d58b07 --- /dev/null +++ b/drivers/painter/gc9a01/qp_gc9a01.c @@ -0,0 +1,150 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_gc9a01.h" +#include "qp_gc9a01_opcodes.h" +#include "qp_tft_panel.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver storage +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +tft_panel_dc_reset_painter_device_t gc9a01_drivers[GC9A01_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +bool qp_gc9a01_init(painter_device_t device, painter_rotation_t rotation) { + // A lot of these "unknown" opcodes are sourced from other OSS projects and are seemingly required for this display to function. + // clang-format off + const uint8_t gc9a01_init_sequence[] = { + // Command, Delay, N, Data[N] + GC9A01_SET_INTER_REG_ENABLE2, 0, 0, + 0xEB, 0, 1, 0x14, + GC9A01_SET_INTER_REG_ENABLE1, 0, 0, + GC9A01_SET_INTER_REG_ENABLE2, 0, 0, + 0xEB, 0, 1, 0x14, + 0x84, 0, 1, 0x40, + 0x85, 0, 1, 0xFF, + 0x86, 0, 1, 0xFF, + 0x87, 0, 1, 0xFF, + 0x88, 0, 1, 0x0A, + 0x89, 0, 1, 0x21, + 0x8a, 0, 1, 0x00, + 0x8b, 0, 1, 0x80, + 0x8c, 0, 1, 0x01, + 0x8d, 0, 1, 0x01, + 0x8e, 0, 1, 0xFF, + 0x8f, 0, 1, 0xFF, + GC9A01_SET_FUNCTION_CTL, 0, 2, 0x00, 0x20, + GC9A01_SET_PIX_FMT, 0, 1, 0x55, + 0x90, 0, 4, 0x08, 0x08, 0x08, 0x08, + 0xBD, 0, 1, 0x06, + 0xBC, 0, 1, 0x00, + 0xFF, 0, 3, 0x60, 0x01, 0x04, + GC9A01_SET_POWER_CTL_2, 0, 1, 0x13, + GC9A01_SET_POWER_CTL_3, 0, 1, 0x13, + GC9A01_SET_POWER_CTL_4, 0, 1, 0x22, + 0xBE, 0, 1, 0x11, + 0xE1, 0, 2, 0x10, 0x0E, + 0xDF, 0, 3, 0x21, 0x0C, 0x02, + GC9A01_SET_GAMMA1, 0, 6, 0x45, 0x09, 0x08, 0x08, 0x26, 0x2A, + GC9A01_SET_GAMMA2, 0, 6, 0x43, 0x70, 0x72, 0x36, 0x37, 0x6F, + GC9A01_SET_GAMMA3, 0, 6, 0x45, 0x09, 0x08, 0x08, 0x26, 0x2A, + GC9A01_SET_GAMMA4, 0, 6, 0x43, 0x70, 0x72, 0x36, 0x37, 0x6F, + 0xED, 0, 2, 0x1B, 0x0B, + 0xAE, 0, 1, 0x77, + 0xCD, 0, 1, 0x63, + 0x70, 0, 9, 0x07, 0x07, 0x04, 0x0E, 0x0F, 0x09, 0x07, 0x08, 0x03, + GC9A01_SET_FRAME_RATE, 0, 1, 0x34, + 0x62, 0, 12, 0x18, 0x0D, 0x71, 0xED, 0x70, 0x70, 0x18, 0x0F, 0x71, 0xEF, 0x70, 0x70, + 0x63, 0, 12, 0x18, 0x11, 0x71, 0xF1, 0x70, 0x70, 0x18, 0x13, 0x71, 0xF3, 0x70, 0x70, + 0x64, 0, 7, 0x28, 0x29, 0xF1, 0x01, 0xF1, 0x00, 0x07, + 0x66, 0, 10, 0x3C, 0x00, 0xCD, 0x67, 0x45, 0x45, 0x10, 0x00, 0x00, 0x00, + 0x67, 0, 10, 0x00, 0x3C, 0x00, 0x00, 0x00, 0x01, 0x54, 0x10, 0x32, 0x98, + 0x74, 0, 7, 0x10, 0x85, 0x80, 0x00, 0x00, 0x4E, 0x00, + 0x98, 0, 2, 0x3E, 0x07, + GC9A01_CMD_TEARING_OFF, 0, 0, + GC9A01_CMD_INVERT_OFF, 0, 0, + GC9A01_CMD_SLEEP_OFF, 120, 0, + GC9A01_CMD_DISPLAY_ON, 20, 0 + }; + // clang-format on + + // clang-format on + qp_comms_bulk_command_sequence(device, gc9a01_init_sequence, sizeof(gc9a01_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = GC9A01_MADCTL_BGR, + [QP_ROTATION_90] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MX | GC9A01_MADCTL_MV, + [QP_ROTATION_180] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MX | GC9A01_MADCTL_MY, + [QP_ROTATION_270] = GC9A01_MADCTL_BGR | GC9A01_MADCTL_MV | GC9A01_MADCTL_MY, + }; + qp_comms_command_databyte(device, GC9A01_SET_MEM_ACS_CTL, madctl[rotation]); + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +const struct tft_panel_dc_reset_painter_driver_vtable_t gc9a01_driver_vtable = { + .base = + { + .init = qp_gc9a01_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert, + .append_pixels = qp_tft_panel_append_pixels, + }, + .rgb888_to_native16bit = qp_rgb888_to_rgb565_swapped, + .num_window_bytes = 2, + .swap_window_coords = false, + .opcodes = + { + .display_on = GC9A01_CMD_DISPLAY_ON, + .display_off = GC9A01_CMD_DISPLAY_OFF, + .set_column_address = GC9A01_SET_COL_ADDR, + .set_row_address = GC9A01_SET_PAGE_ADDR, + .enable_writes = GC9A01_SET_MEM, + }, +}; + +#ifdef QUANTUM_PAINTER_GC9A01_SPI_ENABLE +// Factory function for creating a handle to the ILI9341 device +painter_device_t qp_gc9a01_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < GC9A01_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &gc9a01_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const struct painter_driver_vtable_t *)&gc9a01_driver_vtable; + driver->base.comms_vtable = (const struct painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.native_bits_per_pixel = 16; // RGB565 + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 0; + driver->base.offset_y = 0; + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_GC9A01_SPI_ENABLE diff --git a/drivers/painter/gc9a01/qp_gc9a01.h b/drivers/painter/gc9a01/qp_gc9a01.h new file mode 100644 index 0000000000..e2b1939564 --- /dev/null +++ b/drivers/painter/gc9a01/qp_gc9a01.h @@ -0,0 +1,37 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9A01 configurables (add to your keyboard's config.h) + +#ifndef GC9A01_NUM_DEVICES +/** + * @def This controls the maximum number of GC9A01 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define GC9A01_NUM_DEVICES 1 +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9A01 device factories + +#ifdef QUANTUM_PAINTER_GC9A01_SPI_ENABLE +/** + * Factory method for an GC9A01 SPI LCD device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_gc9a01_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +#endif // QUANTUM_PAINTER_GC9A01_SPI_ENABLE diff --git a/drivers/painter/gc9a01/qp_gc9a01_opcodes.h b/drivers/painter/gc9a01/qp_gc9a01_opcodes.h new file mode 100644 index 0000000000..6ff4efe7a8 --- /dev/null +++ b/drivers/painter/gc9a01/qp_gc9a01_opcodes.h @@ -0,0 +1,78 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter GC9A01 command opcodes +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Level 1 command opcodes + +#define GC9A01_GET_ID_INFO 0x04 // Get ID information +#define GC9A01_GET_STATUS 0x09 // Get status +#define GC9A01_CMD_SLEEP_ON 0x10 // Enter sleep mode +#define GC9A01_CMD_SLEEP_OFF 0x11 // Exit sleep mode +#define GC9A01_CMD_PARTIAL_ON 0x12 // Enter partial mode +#define GC9A01_CMD_PARTIAL_OFF 0x13 // Exit partial mode +#define GC9A01_CMD_INVERT_ON 0x20 // Enter inverted mode +#define GC9A01_CMD_INVERT_OFF 0x21 // Exit inverted mode +#define GC9A01_CMD_DISPLAY_OFF 0x28 // Disable display +#define GC9A01_CMD_DISPLAY_ON 0x29 // Enable display +#define GC9A01_SET_COL_ADDR 0x2A // Set column address +#define GC9A01_SET_PAGE_ADDR 0x2B // Set page address +#define GC9A01_SET_MEM 0x2C // Set memory +#define GC9A01_SET_PARTIAL_AREA 0x30 // Set partial area +#define GC9A01_SET_VSCROLL 0x33 // Set vertical scroll def +#define GC9A01_CMD_TEARING_ON 0x34 // Tearing line enabled +#define GC9A01_CMD_TEARING_OFF 0x35 // Tearing line disabled +#define GC9A01_SET_MEM_ACS_CTL 0x36 // Set mem access ctl +#define GC9A01_SET_VSCROLL_ADDR 0x37 // Set vscroll start addr +#define GC9A01_CMD_IDLE_OFF 0x38 // Exit idle mode +#define GC9A01_CMD_IDLE_ON 0x39 // Enter idle mode +#define GC9A01_SET_PIX_FMT 0x3A // Set pixel format +#define GC9A01_SET_MEM_CONT 0x3C // Set memory continue +#define GC9A01_SET_TEAR_SCANLINE 0x44 // Set tearing scanline +#define GC9A01_GET_TEAR_SCANLINE 0x45 // Get tearing scanline +#define GC9A01_SET_BRIGHTNESS 0x51 // Set brightness +#define GC9A01_SET_DISPLAY_CTL 0x53 // Set display ctl +#define GC9A01_GET_ID1 0xDA // Get ID1 +#define GC9A01_GET_ID2 0xDB // Get ID2 +#define GC9A01_GET_ID3 0xDC // Get ID3 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Level 2 command opcodes + +#define GC9A01_SET_RGB_IF_SIG_CTL 0xB0 // RGB IF signal ctl +#define GC9A01_SET_BLANKING_PORCH_CTL 0xB5 // Set blanking porch ctl +#define GC9A01_SET_FUNCTION_CTL 0xB6 // Set function ctl +#define GC9A01_SET_TEARING_EFFECT 0xBA // Set backlight ctl 3 +#define GC9A01_SET_IF_CTL 0xF6 // Set interface control + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Level 3 command opcodes + +#define GC9A01_SET_FRAME_RATE 0xE8 // Set frame rate +#define GC9A01_SET_SPI_2DATA 0xE9 // Set frame rate +#define GC9A01_SET_POWER_CTL_1 0xC1 // Set power ctl 1 +#define GC9A01_SET_POWER_CTL_2 0xC3 // Set power ctl 2 +#define GC9A01_SET_POWER_CTL_3 0xC4 // Set power ctl 3 +#define GC9A01_SET_POWER_CTL_4 0xC9 // Set power ctl 4 +#define GC9A01_SET_POWER_CTL_7 0xA7 // Set power ctl 7 +#define GC9A01_SET_INTER_REG_ENABLE1 0xFE // Enable Inter Register 1 +#define GC9A01_SET_INTER_REG_ENABLE2 0xEF // Enable Inter Register 2 +#define GC9A01_SET_GAMMA1 0xF0 // +#define GC9A01_SET_GAMMA2 0xF1 +#define GC9A01_SET_GAMMA3 0xF2 +#define GC9A01_SET_GAMMA4 0xF3 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// MADCTL Flags +#define GC9A01_MADCTL_MY 0b10000000 +#define GC9A01_MADCTL_MX 0b01000000 +#define GC9A01_MADCTL_MV 0b00100000 +#define GC9A01_MADCTL_ML 0b00010000 +#define GC9A01_MADCTL_RGB 0b00000000 +#define GC9A01_MADCTL_BGR 0b00001000 +#define GC9A01_MADCTL_MH 0b00000100 diff --git a/drivers/painter/ili9xxx/qp_ili9163.c b/drivers/painter/ili9xxx/qp_ili9163.c new file mode 100644 index 0000000000..beaac0fbb5 --- /dev/null +++ b/drivers/painter/ili9xxx/qp_ili9163.c @@ -0,0 +1,121 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_ili9163.h" +#include "qp_ili9xxx_opcodes.h" +#include "qp_tft_panel.h" + +#ifdef QUANTUM_PAINTER_ILI9163_SPI_ENABLE +# include "qp_comms_spi.h" +#endif // QUANTUM_PAINTER_ILI9163_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Common + +// Driver storage +tft_panel_dc_reset_painter_device_t ili9163_drivers[ILI9163_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization + +bool qp_ili9163_init(painter_device_t device, painter_rotation_t rotation) { + // clang-format off + const uint8_t ili9163_init_sequence[] = { + // Command, Delay, N, Data[N] + ILI9XXX_CMD_RESET, 120, 0, + ILI9XXX_CMD_SLEEP_OFF, 5, 0, + ILI9XXX_SET_PIX_FMT, 0, 1, 0x55, + ILI9XXX_SET_GAMMA, 0, 1, 0x04, + ILI9XXX_ENABLE_3_GAMMA, 0, 1, 0x01, + ILI9XXX_SET_FUNCTION_CTL, 0, 2, 0xFF, 0x06, + ILI9XXX_SET_PGAMMA, 0, 15, 0x36, 0x29, 0x12, 0x22, 0x1C, 0x15, 0x42, 0xB7, 0x2F, 0x13, 0x12, 0x0A, 0x11, 0x0B, 0x06, + ILI9XXX_SET_NGAMMA, 0, 15, 0x09, 0x16, 0x2D, 0x0D, 0x13, 0x15, 0x40, 0x48, 0x53, 0x0C, 0x1D, 0x25, 0x2E, 0x34, 0x39, + ILI9XXX_SET_FRAME_CTL_NORMAL, 0, 2, 0x08, 0x02, + ILI9XXX_SET_POWER_CTL_1, 0, 2, 0x0A, 0x02, + ILI9XXX_SET_POWER_CTL_2, 0, 1, 0x02, + ILI9XXX_SET_VCOM_CTL_1, 0, 2, 0x50, 0x63, + ILI9XXX_SET_VCOM_CTL_2, 0, 1, 0x00, + ILI9XXX_CMD_PARTIAL_OFF, 0, 0, + ILI9XXX_CMD_DISPLAY_ON, 20, 0 + }; + // clang-format on + qp_comms_bulk_command_sequence(device, ili9163_init_sequence, sizeof(ili9163_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = ILI9XXX_MADCTL_BGR, + [QP_ROTATION_90] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MX | ILI9XXX_MADCTL_MV, + [QP_ROTATION_180] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MX | ILI9XXX_MADCTL_MY, + [QP_ROTATION_270] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MV | ILI9XXX_MADCTL_MY, + }; + qp_comms_command_databyte(device, ILI9XXX_SET_MEM_ACS_CTL, madctl[rotation]); + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable + +const struct tft_panel_dc_reset_painter_driver_vtable_t ili9163_driver_vtable = { + .base = + { + .init = qp_ili9163_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert, + .append_pixels = qp_tft_panel_append_pixels, + }, + .rgb888_to_native16bit = qp_rgb888_to_rgb565_swapped, + .num_window_bytes = 2, + .swap_window_coords = false, + .opcodes = + { + .display_on = ILI9XXX_CMD_DISPLAY_ON, + .display_off = ILI9XXX_CMD_DISPLAY_OFF, + .set_column_address = ILI9XXX_SET_COL_ADDR, + .set_row_address = ILI9XXX_SET_PAGE_ADDR, + .enable_writes = ILI9XXX_SET_MEM, + }, +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI + +#ifdef QUANTUM_PAINTER_ILI9163_SPI_ENABLE + +// Factory function for creating a handle to the ILI9163 device +painter_device_t qp_ili9163_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < ILI9163_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &ili9163_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const struct painter_driver_vtable_t *)&ili9163_driver_vtable; + driver->base.comms_vtable = (const struct painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 0; + driver->base.offset_y = 0; + driver->base.native_bits_per_pixel = 16; // RGB565 + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_ILI9163_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/drivers/painter/ili9xxx/qp_ili9163.h b/drivers/painter/ili9xxx/qp_ili9163.h new file mode 100644 index 0000000000..88d23629a9 --- /dev/null +++ b/drivers/painter/ili9xxx/qp_ili9163.h @@ -0,0 +1,37 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ILI9163 configurables (add to your keyboard's config.h) + +#ifndef ILI9163_NUM_DEVICES +/** + * @def This controls the maximum number of ILI9163 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define ILI9163_NUM_DEVICES 1 +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ILI9163 device factories + +#ifdef QUANTUM_PAINTER_ILI9163_SPI_ENABLE +/** + * Factory method for an ILI9163 SPI LCD device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_ili9163_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +#endif // QUANTUM_PAINTER_ILI9163_SPI_ENABLE diff --git a/drivers/painter/ili9xxx/qp_ili9341.c b/drivers/painter/ili9xxx/qp_ili9341.c new file mode 100644 index 0000000000..1f41dcfc0b --- /dev/null +++ b/drivers/painter/ili9xxx/qp_ili9341.c @@ -0,0 +1,128 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_ili9341.h" +#include "qp_ili9xxx_opcodes.h" +#include "qp_tft_panel.h" + +#ifdef QUANTUM_PAINTER_ILI9341_SPI_ENABLE +# include +#endif // QUANTUM_PAINTER_ILI9341_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Common + +// Driver storage +tft_panel_dc_reset_painter_device_t ili9341_drivers[ILI9341_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization + +bool qp_ili9341_init(painter_device_t device, painter_rotation_t rotation) { + // clang-format off + const uint8_t ili9341_init_sequence[] = { + // Command, Delay, N, Data[N] + ILI9XXX_CMD_RESET, 120, 0, + ILI9XXX_CMD_SLEEP_OFF, 5, 0, + ILI9XXX_POWER_CTL_A, 0, 5, 0x39, 0x2C, 0x00, 0x34, 0x02, + ILI9XXX_POWER_CTL_B, 0, 3, 0x00, 0xD9, 0x30, + ILI9XXX_POWER_ON_SEQ_CTL, 0, 4, 0x64, 0x03, 0x12, 0x81, + ILI9XXX_SET_PUMP_RATIO_CTL, 0, 1, 0x20, + ILI9XXX_SET_POWER_CTL_1, 0, 1, 0x26, + ILI9XXX_SET_POWER_CTL_2, 0, 1, 0x11, + ILI9XXX_SET_VCOM_CTL_1, 0, 2, 0x35, 0x3E, + ILI9XXX_SET_VCOM_CTL_2, 0, 1, 0xBE, + ILI9XXX_DRV_TIMING_CTL_A, 0, 3, 0x85, 0x10, 0x7A, + ILI9XXX_DRV_TIMING_CTL_B, 0, 2, 0x00, 0x00, + ILI9XXX_SET_BRIGHTNESS, 0, 1, 0xFF, + ILI9XXX_ENABLE_3_GAMMA, 0, 1, 0x00, + ILI9XXX_SET_GAMMA, 0, 1, 0x01, + ILI9XXX_SET_PGAMMA, 0, 15, 0x0F, 0x29, 0x24, 0x0C, 0x0E, 0x09, 0x4E, 0x78, 0x3C, 0x09, 0x13, 0x05, 0x17, 0x11, 0x00, + ILI9XXX_SET_NGAMMA, 0, 15, 0x00, 0x16, 0x1B, 0x04, 0x11, 0x07, 0x31, 0x33, 0x42, 0x05, 0x0C, 0x0A, 0x28, 0x2F, 0x0F, + ILI9XXX_SET_PIX_FMT, 0, 1, 0x05, + ILI9XXX_SET_FRAME_CTL_NORMAL, 0, 2, 0x00, 0x1B, + ILI9XXX_SET_FUNCTION_CTL, 0, 2, 0x0A, 0xA2, + ILI9XXX_CMD_PARTIAL_OFF, 0, 0, + ILI9XXX_CMD_DISPLAY_ON, 20, 0 + }; + // clang-format on + qp_comms_bulk_command_sequence(device, ili9341_init_sequence, sizeof(ili9341_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = ILI9XXX_MADCTL_BGR, + [QP_ROTATION_90] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MX | ILI9XXX_MADCTL_MV, + [QP_ROTATION_180] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MX | ILI9XXX_MADCTL_MY, + [QP_ROTATION_270] = ILI9XXX_MADCTL_BGR | ILI9XXX_MADCTL_MV | ILI9XXX_MADCTL_MY, + }; + qp_comms_command_databyte(device, ILI9XXX_SET_MEM_ACS_CTL, madctl[rotation]); + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable + +const struct tft_panel_dc_reset_painter_driver_vtable_t ili9341_driver_vtable = { + .base = + { + .init = qp_ili9341_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert, + .append_pixels = qp_tft_panel_append_pixels, + }, + .rgb888_to_native16bit = qp_rgb888_to_rgb565_swapped, + .num_window_bytes = 2, + .swap_window_coords = false, + .opcodes = + { + .display_on = ILI9XXX_CMD_DISPLAY_ON, + .display_off = ILI9XXX_CMD_DISPLAY_OFF, + .set_column_address = ILI9XXX_SET_COL_ADDR, + .set_row_address = ILI9XXX_SET_PAGE_ADDR, + .enable_writes = ILI9XXX_SET_MEM, + }, +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI + +#ifdef QUANTUM_PAINTER_ILI9341_SPI_ENABLE + +// Factory function for creating a handle to the ILI9341 device +painter_device_t qp_ili9341_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < ILI9341_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &ili9341_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const struct painter_driver_vtable_t *)&ili9341_driver_vtable; + driver->base.comms_vtable = (const struct painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.native_bits_per_pixel = 16; // RGB565 + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 0; + driver->base.offset_y = 0; + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_ILI9341_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/drivers/painter/ili9xxx/qp_ili9341.h b/drivers/painter/ili9xxx/qp_ili9341.h new file mode 100644 index 0000000000..28b0152a84 --- /dev/null +++ b/drivers/painter/ili9xxx/qp_ili9341.h @@ -0,0 +1,37 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ILI9341 configurables (add to your keyboard's config.h) + +#ifndef ILI9341_NUM_DEVICES +/** + * @def This controls the maximum number of ILI9341 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define ILI9341_NUM_DEVICES 1 +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ILI9341 device factories + +#ifdef QUANTUM_PAINTER_ILI9341_SPI_ENABLE +/** + * Factory method for an ILI9341 SPI LCD device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_ili9341_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +#endif // QUANTUM_PAINTER_ILI9341_SPI_ENABLE diff --git a/drivers/painter/ili9xxx/qp_ili9xxx_opcodes.h b/drivers/painter/ili9xxx/qp_ili9xxx_opcodes.h new file mode 100644 index 0000000000..1fa395cb89 --- /dev/null +++ b/drivers/painter/ili9xxx/qp_ili9xxx_opcodes.h @@ -0,0 +1,100 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ILI9xxx command opcodes +#define ILI9XXX_CMD_NOP 0x00 // No operation +#define ILI9XXX_CMD_RESET 0x01 // Software reset +#define ILI9XXX_GET_ID_INFO 0x04 // Get ID information +#define ILI9XXX_GET_STATUS 0x09 // Get status +#define ILI9XXX_GET_PWR_MODE 0x0A // Get power mode +#define ILI9XXX_GET_MADCTL 0x0B // Get MADCTL +#define ILI9XXX_GET_PIX_FMT 0x0C // Get pixel format +#define ILI9XXX_GET_IMG_FMT 0x0D // Get image format +#define ILI9XXX_GET_SIG_MODE 0x0E // Get signal mode +#define ILI9XXX_GET_SELF_DIAG 0x0F // Get self-diagnostics +#define ILI9XXX_CMD_SLEEP_ON 0x10 // Enter sleep mode +#define ILI9XXX_CMD_SLEEP_OFF 0x11 // Exist sleep mode +#define ILI9XXX_CMD_PARTIAL_ON 0x12 // Enter partial mode +#define ILI9XXX_CMD_PARTIAL_OFF 0x13 // Exit partial mode +#define ILI9XXX_CMD_INVERT_ON 0x20 // Enter inverted mode +#define ILI9XXX_CMD_INVERT_OFF 0x21 // Exit inverted mode +#define ILI9XXX_SET_GAMMA 0x26 // Set gamma params +#define ILI9XXX_CMD_DISPLAY_OFF 0x28 // Disable display +#define ILI9XXX_CMD_DISPLAY_ON 0x29 // Enable display +#define ILI9XXX_SET_COL_ADDR 0x2A // Set column address +#define ILI9XXX_SET_PAGE_ADDR 0x2B // Set page address +#define ILI9XXX_SET_MEM 0x2C // Set memory +#define ILI9XXX_SET_COLOR 0x2D // Set color +#define ILI9XXX_GET_MEM 0x2E // Get memory +#define ILI9XXX_SET_PARTIAL_AREA 0x30 // Set partial area +#define ILI9XXX_SET_VSCROLL 0x33 // Set vertical scroll def +#define ILI9XXX_CMD_TEARING_ON 0x34 // Tearing line enabled +#define ILI9XXX_CMD_TEARING_OFF 0x35 // Tearing line disabled +#define ILI9XXX_SET_MEM_ACS_CTL 0x36 // Set mem access ctl +#define ILI9XXX_SET_VSCROLL_ADDR 0x37 // Set vscroll start addr +#define ILI9XXX_CMD_IDLE_OFF 0x38 // Exit idle mode +#define ILI9XXX_CMD_IDLE_ON 0x39 // Enter idle mode +#define ILI9XXX_SET_PIX_FMT 0x3A // Set pixel format +#define ILI9XXX_SET_MEM_CONT 0x3C // Set memory continue +#define ILI9XXX_GET_MEM_CONT 0x3E // Get memory continue +#define ILI9XXX_SET_TEAR_SCANLINE 0x44 // Set tearing scanline +#define ILI9XXX_GET_TEAR_SCANLINE 0x45 // Get tearing scanline +#define ILI9XXX_SET_BRIGHTNESS 0x51 // Set brightness +#define ILI9XXX_GET_BRIGHTNESS 0x52 // Get brightness +#define ILI9XXX_SET_DISPLAY_CTL 0x53 // Set display ctl +#define ILI9XXX_GET_DISPLAY_CTL 0x54 // Get display ctl +#define ILI9XXX_SET_CABC 0x55 // Set CABC +#define ILI9XXX_GET_CABC 0x56 // Get CABC +#define ILI9XXX_SET_CABC_MIN 0x5E // Set CABC min +#define ILI9XXX_GET_CABC_MIN 0x5F // Set CABC max +#define ILI9XXX_GET_ID1 0xDA // Get ID1 +#define ILI9XXX_GET_ID2 0xDB // Get ID2 +#define ILI9XXX_GET_ID3 0xDC // Get ID3 +#define ILI9XXX_SET_RGB_IF_SIG_CTL 0xB0 // RGB IF signal ctl +#define ILI9XXX_SET_FRAME_CTL_NORMAL 0xB1 // Set frame ctl (normal) +#define ILI9XXX_SET_FRAME_CTL_IDLE 0xB2 // Set frame ctl (idle) +#define ILI9XXX_SET_FRAME_CTL_PARTIAL 0xB3 // Set frame ctl (partial) +#define ILI9XXX_SET_INVERSION_CTL 0xB4 // Set inversion ctl +#define ILI9XXX_SET_BLANKING_PORCH_CTL 0xB5 // Set blanking porch ctl +#define ILI9XXX_SET_FUNCTION_CTL 0xB6 // Set function ctl +#define ILI9XXX_SET_ENTRY_MODE 0xB7 // Set entry mode +#define ILI9XXX_SET_LIGHT_CTL_1 0xB8 // Set backlight ctl 1 +#define ILI9XXX_SET_LIGHT_CTL_2 0xB9 // Set backlight ctl 2 +#define ILI9XXX_SET_LIGHT_CTL_3 0xBA // Set backlight ctl 3 +#define ILI9XXX_SET_LIGHT_CTL_4 0xBB // Set backlight ctl 4 +#define ILI9XXX_SET_LIGHT_CTL_5 0xBC // Set backlight ctl 5 +#define ILI9XXX_SET_LIGHT_CTL_7 0xBE // Set backlight ctl 7 +#define ILI9XXX_SET_LIGHT_CTL_8 0xBF // Set backlight ctl 8 +#define ILI9XXX_SET_POWER_CTL_1 0xC0 // Set power ctl 1 +#define ILI9XXX_SET_POWER_CTL_2 0xC1 // Set power ctl 2 +#define ILI9XXX_SET_VCOM_CTL_1 0xC5 // Set VCOM ctl 1 +#define ILI9XXX_SET_VCOM_CTL_2 0xC7 // Set VCOM ctl 2 +#define ILI9XXX_POWER_CTL_A 0xCB // Set power control A +#define ILI9XXX_POWER_CTL_B 0xCF // Set power control B +#define ILI9XXX_DRV_TIMING_CTL_A 0xE8 // Set driver timing control A +#define ILI9XXX_DRV_TIMING_CTL_B 0xEA // Set driver timing control B +#define ILI9XXX_POWER_ON_SEQ_CTL 0xED // Set Power on sequence control +#define ILI9XXX_SET_NVMEM 0xD0 // Set NVMEM data +#define ILI9XXX_GET_NVMEM_KEY 0xD1 // Get NVMEM protect key +#define ILI9XXX_GET_NVMEM_STATUS 0xD2 // Get NVMEM status +#define ILI9XXX_GET_ID4 0xD3 // Get ID4 +#define ILI9XXX_SET_PGAMMA 0xE0 // Set positive gamma +#define ILI9XXX_SET_NGAMMA 0xE1 // Set negative gamma +#define ILI9XXX_SET_DGAMMA_CTL_1 0xE2 // Set digital gamma ctl 1 +#define ILI9XXX_SET_DGAMMA_CTL_2 0xE3 // Set digital gamma ctl 2 +#define ILI9XXX_ENABLE_3_GAMMA 0xF2 // Enable 3 gamma +#define ILI9XXX_SET_IF_CTL 0xF6 // Set interface control +#define ILI9XXX_SET_PUMP_RATIO_CTL 0xF7 // Set pump ratio control + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// MADCTL Flags +#define ILI9XXX_MADCTL_MY 0b10000000 +#define ILI9XXX_MADCTL_MX 0b01000000 +#define ILI9XXX_MADCTL_MV 0b00100000 +#define ILI9XXX_MADCTL_ML 0b00010000 +#define ILI9XXX_MADCTL_RGB 0b00000000 +#define ILI9XXX_MADCTL_BGR 0b00001000 +#define ILI9XXX_MADCTL_MH 0b00000100 diff --git a/drivers/painter/ssd1351/qp_ssd1351.c b/drivers/painter/ssd1351/qp_ssd1351.c new file mode 100644 index 0000000000..970e7e67f3 --- /dev/null +++ b/drivers/painter/ssd1351/qp_ssd1351.c @@ -0,0 +1,125 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_ssd1351.h" +#include "qp_ssd1351_opcodes.h" +#include "qp_tft_panel.h" + +#ifdef QUANTUM_PAINTER_SSD1351_SPI_ENABLE +# include "qp_comms_spi.h" +#endif // QUANTUM_PAINTER_SSD1351_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Common + +// Driver storage +tft_panel_dc_reset_painter_device_t ssd1351_drivers[SSD1351_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization + +bool qp_ssd1351_init(painter_device_t device, painter_rotation_t rotation) { + tft_panel_dc_reset_painter_device_t *driver = (tft_panel_dc_reset_painter_device_t *)device; + + // clang-format off + const uint8_t ssd1351_init_sequence[] = { + // Command, Delay, N, Data[N] + SSD1351_COMMANDLOCK, 5, 1, 0x12, + SSD1351_COMMANDLOCK, 5, 1, 0xB1, + SSD1351_DISPLAYOFF, 5, 0, + SSD1351_CLOCKDIV, 5, 1, 0xF1, + SSD1351_MUXRATIO, 5, 1, 0x7F, + SSD1351_DISPLAYOFFSET, 5, 1, 0x00, + SSD1351_SETGPIO, 5, 1, 0x00, + SSD1351_FUNCTIONSELECT, 5, 1, 0x01, + SSD1351_PRECHARGE, 5, 1, 0x32, + SSD1351_VCOMH, 5, 1, 0x05, + SSD1351_NORMALDISPLAY, 5, 0, + SSD1351_CONTRASTABC, 5, 3, 0xC8, 0x80, 0xC8, + SSD1351_CONTRASTMASTER, 5, 1, 0x0F, + SSD1351_SETVSL, 5, 3, 0xA0, 0xB5, 0x55, + SSD1351_PRECHARGE2, 5, 1, 0x01, + SSD1351_DISPLAYON, 5, 0, + }; + // clang-format on + qp_comms_bulk_command_sequence(device, ssd1351_init_sequence, sizeof(ssd1351_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = SSD1351_MADCTL_BGR | SSD1351_MADCTL_MY, + [QP_ROTATION_90] = SSD1351_MADCTL_BGR | SSD1351_MADCTL_MX | SSD1351_MADCTL_MY | SSD1351_MADCTL_MV, + [QP_ROTATION_180] = SSD1351_MADCTL_BGR | SSD1351_MADCTL_MX, + [QP_ROTATION_270] = SSD1351_MADCTL_BGR | SSD1351_MADCTL_MV, + }; + qp_comms_command_databyte(device, SSD1351_SETREMAP, madctl[rotation]); + qp_comms_command_databyte(device, SSD1351_STARTLINE, (rotation == QP_ROTATION_0 || rotation == QP_ROTATION_90) ? driver->base.panel_height : 0); + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable + +const struct tft_panel_dc_reset_painter_driver_vtable_t ssd1351_driver_vtable = { + .base = + { + .init = qp_ssd1351_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert, + .append_pixels = qp_tft_panel_append_pixels, + }, + .rgb888_to_native16bit = qp_rgb888_to_rgb565_swapped, + .num_window_bytes = 1, + .swap_window_coords = true, + .opcodes = + { + .display_on = SSD1351_DISPLAYON, + .display_off = SSD1351_DISPLAYOFF, + .set_column_address = SSD1351_SETCOLUMN, + .set_row_address = SSD1351_SETROW, + .enable_writes = SSD1351_WRITERAM, + }, +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI + +#ifdef QUANTUM_PAINTER_SSD1351_SPI_ENABLE + +// Factory function for creating a handle to the SSD1351 device +painter_device_t qp_ssd1351_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < SSD1351_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &ssd1351_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const struct painter_driver_vtable_t *)&ssd1351_driver_vtable; + driver->base.comms_vtable = (const struct painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 0; + driver->base.offset_y = 0; + driver->base.native_bits_per_pixel = 16; // RGB565 + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_SSD1351_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/drivers/painter/ssd1351/qp_ssd1351.h b/drivers/painter/ssd1351/qp_ssd1351.h new file mode 100644 index 0000000000..0df34f204d --- /dev/null +++ b/drivers/painter/ssd1351/qp_ssd1351.h @@ -0,0 +1,37 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter SSD1351 configurables (add to your keyboard's config.h) + +#ifndef SSD1351_NUM_DEVICES +/** + * @def This controls the maximum number of SSD1351 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define SSD1351_NUM_DEVICES 1 +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter SSD1351 device factories + +#ifdef QUANTUM_PAINTER_SSD1351_SPI_ENABLE +/** + * Factory method for an SSD1351 SPI OLED device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_ssd1351_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +#endif // QUANTUM_PAINTER_SSD1351_SPI_ENABLE diff --git a/drivers/painter/ssd1351/qp_ssd1351_opcodes.h b/drivers/painter/ssd1351/qp_ssd1351_opcodes.h new file mode 100644 index 0000000000..48ed2a3a7c --- /dev/null +++ b/drivers/painter/ssd1351/qp_ssd1351_opcodes.h @@ -0,0 +1,48 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter SSD1351 command opcodes + +// System function commands +#define SSD1351_SETCOLUMN 0x15 +#define SSD1351_SETROW 0x75 +#define SSD1351_WRITERAM 0x5C +#define SSD1351_READRAM 0x5D +#define SSD1351_SETREMAP 0xA0 +#define SSD1351_STARTLINE 0xA1 +#define SSD1351_DISPLAYOFFSET 0xA2 +#define SSD1351_DISPLAYALLOFF 0xA4 +#define SSD1351_DISPLAYALLON 0xA5 +#define SSD1351_NORMALDISPLAY 0xA6 +#define SSD1351_INVERTDISPLAY 0xA7 +#define SSD1351_FUNCTIONSELECT 0xAB +#define SSD1351_DISPLAYOFF 0xAE +#define SSD1351_DISPLAYON 0xAF +#define SSD1351_PRECHARGE 0xB1 +#define SSD1351_DISPLAYENHANCE 0xB2 +#define SSD1351_CLOCKDIV 0xB3 +#define SSD1351_SETVSL 0xB4 +#define SSD1351_SETGPIO 0xB5 +#define SSD1351_PRECHARGE2 0xB6 +#define SSD1351_SETGRAY 0xB8 +#define SSD1351_USELUT 0xB9 +#define SSD1351_PRECHARGELEVEL 0xBB +#define SSD1351_VCOMH 0xBE +#define SSD1351_CONTRASTABC 0xC1 +#define SSD1351_CONTRASTMASTER 0xC7 +#define SSD1351_MUXRATIO 0xCA +#define SSD1351_COMMANDLOCK 0xFD +#define SSD1351_HORIZSCROLL 0x96 +#define SSD1351_STOPSCROLL 0x9E +#define SSD1351_STARTSCROLL 0x9F + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SETREMAP (MADCTL) Flags +#define SSD1351_MADCTL_MY 0b00010000 +#define SSD1351_MADCTL_MX 0b00000010 +#define SSD1351_MADCTL_MV 0b00000001 +#define SSD1351_MADCTL_RGB 0b01100000 +#define SSD1351_MADCTL_BGR 0b01100100 diff --git a/drivers/painter/st77xx/qp_st7789.c b/drivers/painter/st77xx/qp_st7789.c new file mode 100644 index 0000000000..d005ece050 --- /dev/null +++ b/drivers/painter/st77xx/qp_st7789.c @@ -0,0 +1,144 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_st7789.h" +#include "qp_st77xx_opcodes.h" +#include "qp_st7789_opcodes.h" +#include "qp_tft_panel.h" + +#ifdef QUANTUM_PAINTER_ST7789_SPI_ENABLE +# include "qp_comms_spi.h" +#endif // QUANTUM_PAINTER_ST7789_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Common + +// Driver storage +tft_panel_dc_reset_painter_device_t st7789_drivers[ST7789_NUM_DEVICES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Automatic viewport offsets + +#ifndef ST7789_NO_AUTOMATIC_OFFSETS +static inline void st7789_automatic_viewport_offsets(painter_device_t device, painter_rotation_t rotation) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + // clang-format off + const struct { + uint16_t offset_x; + uint16_t offset_y; + } rotation_offsets_240x240[] = { + [QP_ROTATION_0] = { .offset_x = 0, .offset_y = 0 }, + [QP_ROTATION_90] = { .offset_x = 0, .offset_y = 0 }, + [QP_ROTATION_180] = { .offset_x = 0, .offset_y = 80 }, + [QP_ROTATION_270] = { .offset_x = 80, .offset_y = 0 }, + }; + // clang-format on + + if (driver->panel_width == 240 && driver->panel_height == 240) { + driver->offset_x = rotation_offsets_240x240[rotation].offset_x; + driver->offset_y = rotation_offsets_240x240[rotation].offset_y; + } +} +#endif // ST7789_NO_AUTOMATIC_OFFSETS + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Initialization + +bool qp_st7789_init(painter_device_t device, painter_rotation_t rotation) { + // clang-format off + const uint8_t st7789_init_sequence[] = { + // Command, Delay, N, Data[N] + ST77XX_CMD_RESET, 120, 0, + ST77XX_CMD_SLEEP_OFF, 5, 0, + ST77XX_SET_PIX_FMT, 0, 1, 0x55, + ST77XX_CMD_INVERT_ON, 0, 0, + ST77XX_CMD_NORMAL_ON, 0, 0, + ST77XX_CMD_DISPLAY_ON, 20, 0 + }; + // clang-format on + qp_comms_bulk_command_sequence(device, st7789_init_sequence, sizeof(st7789_init_sequence)); + + // Configure the rotation (i.e. the ordering and direction of memory writes in GRAM) + const uint8_t madctl[] = { + [QP_ROTATION_0] = ST77XX_MADCTL_RGB, + [QP_ROTATION_90] = ST77XX_MADCTL_RGB | ST77XX_MADCTL_MX | ST77XX_MADCTL_MV, + [QP_ROTATION_180] = ST77XX_MADCTL_RGB | ST77XX_MADCTL_MX | ST77XX_MADCTL_MY, + [QP_ROTATION_270] = ST77XX_MADCTL_RGB | ST77XX_MADCTL_MV | ST77XX_MADCTL_MY, + }; + qp_comms_command_databyte(device, ST77XX_SET_MADCTL, madctl[rotation]); + +#ifndef ST7789_NO_AUTOMATIC_VIEWPORT_OFFSETS + st7789_automatic_viewport_offsets(device, rotation); +#endif // ST7789_NO_AUTOMATIC_VIEWPORT_OFFSETS + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver vtable + +const struct tft_panel_dc_reset_painter_driver_vtable_t st7789_driver_vtable = { + .base = + { + .init = qp_st7789_init, + .power = qp_tft_panel_power, + .clear = qp_tft_panel_clear, + .flush = qp_tft_panel_flush, + .pixdata = qp_tft_panel_pixdata, + .viewport = qp_tft_panel_viewport, + .palette_convert = qp_tft_panel_palette_convert, + .append_pixels = qp_tft_panel_append_pixels, + }, + .rgb888_to_native16bit = qp_rgb888_to_rgb565_swapped, + .num_window_bytes = 2, + .swap_window_coords = false, + .opcodes = + { + .display_on = ST77XX_CMD_DISPLAY_ON, + .display_off = ST77XX_CMD_DISPLAY_OFF, + .set_column_address = ST77XX_SET_COL_ADDR, + .set_row_address = ST77XX_SET_ROW_ADDR, + .enable_writes = ST77XX_SET_MEM, + }, +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// SPI + +#ifdef QUANTUM_PAINTER_ST7789_SPI_ENABLE + +// Factory function for creating a handle to the ST7789 device +painter_device_t qp_st7789_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode) { + for (uint32_t i = 0; i < ST7789_NUM_DEVICES; ++i) { + tft_panel_dc_reset_painter_device_t *driver = &st7789_drivers[i]; + if (!driver->base.driver_vtable) { + driver->base.driver_vtable = (const struct painter_driver_vtable_t *)&st7789_driver_vtable; + driver->base.comms_vtable = (const struct painter_comms_vtable_t *)&spi_comms_with_dc_vtable; + driver->base.panel_width = panel_width; + driver->base.panel_height = panel_height; + driver->base.rotation = QP_ROTATION_0; + driver->base.offset_x = 0; + driver->base.offset_y = 0; + driver->base.native_bits_per_pixel = 16; // RGB565 + + // SPI and other pin configuration + driver->base.comms_config = &driver->spi_dc_reset_config; + driver->spi_dc_reset_config.spi_config.chip_select_pin = chip_select_pin; + driver->spi_dc_reset_config.spi_config.divisor = spi_divisor; + driver->spi_dc_reset_config.spi_config.lsb_first = false; + driver->spi_dc_reset_config.spi_config.mode = spi_mode; + driver->spi_dc_reset_config.dc_pin = dc_pin; + driver->spi_dc_reset_config.reset_pin = reset_pin; + return (painter_device_t)driver; + } + } + return NULL; +} + +#endif // QUANTUM_PAINTER_ST7789_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// diff --git a/drivers/painter/st77xx/qp_st7789.h b/drivers/painter/st77xx/qp_st7789.h new file mode 100644 index 0000000000..ec61f5d70b --- /dev/null +++ b/drivers/painter/st77xx/qp_st7789.h @@ -0,0 +1,44 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "gpio.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ST7789 configurables (add to your keyboard's config.h) + +#ifndef ST7789_NUM_DEVICES +/** + * @def This controls the maximum number of ST7789 devices that Quantum Painter can communicate with at any one time. + * Increasing this number allows for multiple displays to be used. + */ +# define ST7789_NUM_DEVICES 1 +#endif + +// Additional configuration options to be copied to your keyboard's config.h (don't change here): + +// If you know exactly which offsets should be used on your panel with respect to selected rotation, then this config +// option allows you to save some flash space -- you'll need to invoke qp_set_viewport_offsets() instead from your keyboard. +// #define ST7789_NO_AUTOMATIC_VIEWPORT_OFFSETS + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ST7789 device factories + +#ifdef QUANTUM_PAINTER_ST7789_SPI_ENABLE +/** + * Factory method for an ST7789 SPI LCD device. + * + * @param panel_width[in] the width of the display panel + * @param panel_height[in] the height of the display panel + * @param chip_select_pin[in] the GPIO pin used for SPI chip select + * @param dc_pin[in] the GPIO pin used for D/C control + * @param reset_pin[in] the GPIO pin used for RST + * @param spi_divisor[in] the SPI divisor to use when communicating with the display + * @param spi_mode[in] the SPI mode to use when communicating with the display + * @return the device handle used with all drawing routines in Quantum Painter + */ +painter_device_t qp_st7789_make_spi_device(uint16_t panel_width, uint16_t panel_height, pin_t chip_select_pin, pin_t dc_pin, pin_t reset_pin, uint16_t spi_divisor, int spi_mode); +#endif // QUANTUM_PAINTER_ST7789_SPI_ENABLE diff --git a/drivers/painter/st77xx/qp_st7789_opcodes.h b/drivers/painter/st77xx/qp_st7789_opcodes.h new file mode 100644 index 0000000000..b5baba7184 --- /dev/null +++ b/drivers/painter/st77xx/qp_st7789_opcodes.h @@ -0,0 +1,64 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ST7789 additional command opcodes + +// System function commands +#define ST7789_GET_SELF_DIAG 0x0F // Get self-diagnostic result +#define ST7789_SET_VERT_SCRL 0x33 // Set vertical scroll definition +#define ST7789_SET_VERT_SCRL_ADDR 0x37 // SEt Vertical scroll start address +#define ST7789_SET_MEM_CONT 0x3C // Memory Write continue +#define ST7789_GET_MEM_CONT 0x3E // Memory Read continue +#define ST7789_SET_TEAR_LINE 0x44 // Set tear scanline +#define ST7789_GET_TEAR_LINE 0x45 // Get tear scanline +#define ST7789_SET_BRIGHTNESS 0x51 // Set display brightness +#define ST7789_GET_BRIGHTNESS 0x52 // Get display brightness +#define ST7789_SET_CTRL 0x53 // Set CTRL display +#define ST7789_GET_CTRL 0x54 // Get CTRL display value +#define ST7789_SET_CAB_COLOR 0x55 // Set content adaptive brightness control and color enhancement +#define ST7789_GET_CAB_COLOR 0x56 // Get content adaptive brightness control and color enhancement +#define ST7789_SET_CAB_BRIGHTNESS 0x5E // Set content adaptive minimum brightness +#define ST7789_GET_CAB_BRIGHTNESS 0x5F // Get content adaptive minimum brightness +#define ST7789_GET_ABC_SELF_DIAG 0x68 // Get Auto brightness control self diagnostics + +// Panel Function Commands +#define ST7789_SET_RAM_CTL 0xB0 // Set RAM control +#define ST7789_SET_RGB_CTL 0xB1 // Set RGB control +#define ST7789_SET_PORCH_CTL 0xB2 // Set Porch control +#define ST7789_SET_FRAME_RATE_CTL_1 0xB3 // Set frame rate control 1 +#define ST7789_SET_PARTIAL_CTL 0xB5 // Set Partial control +#define ST7789_SET_GATE_CTL 0xB7 // Set gate control +#define ST7789_SET_GATE_ON_TIMING 0xB8 // Set gate on timing adjustment +#define ST7789_SET_DIGITAL_GAMMA_ON 0xBA // Enable digital gamma +#define ST7789_SET_VCOM 0xBB // Set VCOM +#define ST7789_SET_POWER_SAVE 0xBC // Set power saving mode +#define ST7789_SET_DISP_OFF_POWER 0xBD // Set display off power saving +#define ST7789_SET_LCM_CTL 0xC0 // Set LCM control +#define ST7789_SET_IDS 0xC1 // Set IDs +#define ST7789_SET_VDV_VRH_ON 0xC2 // Set VDV and VRH command enable +#define ST7789_SET_VRH 0xC3 // Set VRH +#define ST7789_SET_VDV 0xC4 // Set VDV +#define ST7789_SET_VCOM_OFFSET 0xC5 // Set VCOM offset ctl +#define ST7789_SET_FRAME_RATE_CTL_2 0xC6 // Set frame rate control 2 +#define ST7789_SET_CABC_CTL 0xC7 // Set CABC Control +#define ST7789_GET_REG_1 0xC8 // Get register value selection1 +#define ST7789_GET_REG_2 0xCA // Get register value selection2 +#define ST7789_SET_PWM_FREQ 0xCC // Set PWM frequency +#define ST7789_SET_POWER_CTL_1 0xD0 // Set power ctl 1 +#define ST7789_SET_VAP_VAN_ON 0xD2 // Enable VAP/VAN signal output +#define ST7789_SET_CMD2_ENABLE 0xDF // Enable command 2 +#define ST7789_SET_PGAMMA 0xE0 // Set positive gamma +#define ST7789_SET_NGAMMA 0xE1 // Set negative gamma +#define ST7789_SET_DIGITAL_GAMMA_RED 0xE2 // Set digital gamma lookup table for red +#define ST7789_SET_DIGITAL_GAMMA_BLUE 0xE3 // Get digital gamma lookup table for blue +#define ST7789_SET_GATE_CTL_2 0xE4 // Set gate control 2 +#define ST7789_SET_SPI2_ENABLE 0xE7 // Enable SPI2 +#define ST7789_SET_POWER_CTL_2 0xE8 // Set power ctl 2 +#define ST7789_SET_EQ_TIME_CTL 0xE9 // Set equalize time control +#define ST7789_SET_PROG_CTL 0xEC // Set program control +#define ST7789_SET_PROG_MODE_ENABLE 0xFA // Set program mode enable +#define ST7789_SET_NVMEM 0xFC // Set NVMEM data +#define ST7789_SET_PROG_ACTION 0xFE // Set program action diff --git a/drivers/painter/st77xx/qp_st77xx_opcodes.h b/drivers/painter/st77xx/qp_st77xx_opcodes.h new file mode 100644 index 0000000000..131378d832 --- /dev/null +++ b/drivers/painter/st77xx/qp_st77xx_opcodes.h @@ -0,0 +1,51 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter ST77XX command opcodes + +// System function commands +#define ST77XX_CMD_NOP 0x00 // No operation +#define ST77XX_CMD_RESET 0x01 // Software reset +#define ST77XX_GET_ID_INFO 0x04 // Get ID information +#define ST77XX_GET_STATUS 0x09 // Get status +#define ST77XX_GET_PWR_MODE 0x0A // Get power mode +#define ST77XX_GET_MADCTL 0x0B // Get mem access ctl +#define ST77XX_GET_PIX_FMT 0x0C // Get pixel format +#define ST77XX_GET_IMG_FMT 0x0D // Get image format +#define ST77XX_GET_SIG_MODE 0x0E // Get signal mode +#define ST77XX_CMD_SLEEP_ON 0x10 // Enter sleep mode +#define ST77XX_CMD_SLEEP_OFF 0x11 // Exist sleep mode +#define ST77XX_CMD_PARTIAL_ON 0x12 // Enter partial mode +#define ST77XX_CMD_NORMAL_ON 0x13 // Exit partial mode +#define ST77XX_CMD_INVERT_OFF 0x20 // Exit inverted mode +#define ST77XX_CMD_INVERT_ON 0x21 // Enter inverted mode +#define ST77XX_SET_GAMMA 0x26 // Set gamma params +#define ST77XX_CMD_DISPLAY_OFF 0x28 // Disable display +#define ST77XX_CMD_DISPLAY_ON 0x29 // Enable display +#define ST77XX_SET_COL_ADDR 0x2A // Set column address +#define ST77XX_SET_ROW_ADDR 0x2B // Set page (row) address +#define ST77XX_SET_MEM 0x2C // Set memory +#define ST77XX_GET_MEM 0x2E // Get memory +#define ST77XX_SET_PARTIAL_AREA 0x30 // Set partial area +#define ST77XX_CMD_TEARING_OFF 0x34 // Tearing line disabled +#define ST77XX_CMD_TEARING_ON 0x35 // Tearing line enabled +#define ST77XX_SET_MADCTL 0x36 // Set mem access ctl +#define ST77XX_CMD_IDLE_OFF 0x38 // Exit idle mode +#define ST77XX_CMD_IDLE_ON 0x39 // Enter idle mode +#define ST77XX_SET_PIX_FMT 0x3A // Set pixel format +#define ST77XX_GET_ID1 0xDA // Get ID1 +#define ST77XX_GET_ID2 0xDB // Get ID2 +#define ST77XX_GET_ID3 0xDC // Get ID3 + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// MADCTL Flags +#define ST77XX_MADCTL_MY 0b10000000 +#define ST77XX_MADCTL_MX 0b01000000 +#define ST77XX_MADCTL_MV 0b00100000 +#define ST77XX_MADCTL_ML 0b00010000 +#define ST77XX_MADCTL_RGB 0b00000000 +#define ST77XX_MADCTL_BGR 0b00001000 +#define ST77XX_MADCTL_MH 0b00000100 diff --git a/drivers/painter/tft_panel/qp_tft_panel.c b/drivers/painter/tft_panel/qp_tft_panel.c new file mode 100644 index 0000000000..4d636c9509 --- /dev/null +++ b/drivers/painter/tft_panel/qp_tft_panel.c @@ -0,0 +1,130 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "color.h" +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_draw.h" +#include "qp_tft_panel.h" + +#define BYTE_SWAP(x) (((((uint16_t)(x)) >> 8) & 0x00FF) | ((((uint16_t)(x)) << 8) & 0xFF00)) + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Native pixel format conversion + +uint16_t qp_rgb888_to_rgb565(uint8_t r, uint8_t g, uint8_t b) { + uint16_t rgb565 = (((uint16_t)r) >> 3) << 11 | (((uint16_t)g) >> 2) << 5 | (((uint16_t)b) >> 3); + return rgb565; +} + +uint16_t qp_rgb888_to_rgb565_swapped(uint8_t r, uint8_t g, uint8_t b) { + uint16_t rgb565 = (((uint16_t)r) >> 3) << 11 | (((uint16_t)g) >> 2) << 5 | (((uint16_t)b) >> 3); + return BYTE_SWAP(rgb565); +} + +uint16_t qp_rgb888_to_bgr565(uint8_t r, uint8_t g, uint8_t b) { + uint16_t bgr565 = (((uint16_t)b) >> 3) << 11 | (((uint16_t)g) >> 2) << 5 | (((uint16_t)r) >> 3); + return bgr565; +} + +uint16_t qp_rgb888_to_bgr565_swapped(uint8_t r, uint8_t g, uint8_t b) { + uint16_t bgr565 = (((uint16_t)b) >> 3) << 11 | (((uint16_t)g) >> 2) << 5 | (((uint16_t)r) >> 3); + return BYTE_SWAP(bgr565); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter API implementations + +// Power control +bool qp_tft_panel_power(painter_device_t device, bool power_on) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct tft_panel_dc_reset_painter_driver_vtable_t *vtable = (struct tft_panel_dc_reset_painter_driver_vtable_t *)driver->driver_vtable; + qp_comms_command(device, power_on ? vtable->opcodes.display_on : vtable->opcodes.display_off); + return true; +} + +// Screen clear +bool qp_tft_panel_clear(painter_device_t device) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + driver->driver_vtable->init(device, driver->rotation); // Re-init the LCD + return true; +} + +// Screen flush +bool qp_tft_panel_flush(painter_device_t device) { + // No-op, as there's no framebuffer in RAM for this device. + return true; +} + +// Viewport to draw to +bool qp_tft_panel_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct tft_panel_dc_reset_painter_driver_vtable_t *vtable = (struct tft_panel_dc_reset_painter_driver_vtable_t *)driver->driver_vtable; + + // Fix up the drawing location if required + left += driver->offset_x; + right += driver->offset_x; + top += driver->offset_y; + bottom += driver->offset_y; + + // Check if we need to manually swap the window coordinates based on whether or not we're in a sideways rotation + if (vtable->swap_window_coords && (driver->rotation == QP_ROTATION_90 || driver->rotation == QP_ROTATION_270)) { + uint16_t temp; + + temp = left; + left = top; + top = temp; + + temp = right; + right = bottom; + bottom = temp; + } + + if (vtable->num_window_bytes == 1) { + // Set up the x-window + uint8_t xbuf[2] = {left & 0xFF, right & 0xFF}; + qp_comms_command_databuf(device, vtable->opcodes.set_column_address, xbuf, sizeof(xbuf)); + + // Set up the y-window + uint8_t ybuf[2] = {top & 0xFF, bottom & 0xFF}; + qp_comms_command_databuf(device, vtable->opcodes.set_row_address, ybuf, sizeof(ybuf)); + } else if (vtable->num_window_bytes == 2) { + // Set up the x-window + uint8_t xbuf[4] = {left >> 8, left & 0xFF, right >> 8, right & 0xFF}; + qp_comms_command_databuf(device, vtable->opcodes.set_column_address, xbuf, sizeof(xbuf)); + + // Set up the y-window + uint8_t ybuf[4] = {top >> 8, top & 0xFF, bottom >> 8, bottom & 0xFF}; + qp_comms_command_databuf(device, vtable->opcodes.set_row_address, ybuf, sizeof(ybuf)); + } + + // Lock in the window + qp_comms_command(device, vtable->opcodes.enable_writes); + return true; +} + +// Stream pixel data to the current write position in GRAM +bool qp_tft_panel_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count) { + qp_comms_send(device, pixel_data, native_pixel_count * sizeof(uint16_t)); + return true; +} + +// Convert supplied palette entries into their native equivalents +bool qp_tft_panel_palette_convert(painter_device_t device, int16_t palette_size, qp_pixel_t *palette) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct tft_panel_dc_reset_painter_driver_vtable_t *vtable = (struct tft_panel_dc_reset_painter_driver_vtable_t *)driver->driver_vtable; + for (int16_t i = 0; i < palette_size; ++i) { + RGB rgb = hsv_to_rgb_nocie((HSV){palette[i].hsv888.h, palette[i].hsv888.s, palette[i].hsv888.v}); + palette[i].rgb565 = vtable->rgb888_to_native16bit(rgb.r, rgb.g, rgb.b); + } + return true; +} + +// Append pixels to the target location, keyed by the pixel index +bool qp_tft_panel_append_pixels(painter_device_t device, uint8_t *target_buffer, qp_pixel_t *palette, uint32_t pixel_offset, uint32_t pixel_count, uint8_t *palette_indices) { + uint16_t *buf = (uint16_t *)target_buffer; + for (uint32_t i = 0; i < pixel_count; ++i) { + buf[pixel_offset + i] = palette[palette_indices[i]].rgb565; + } + return true; +} diff --git a/drivers/painter/tft_panel/qp_tft_panel.h b/drivers/painter/tft_panel/qp_tft_panel.h new file mode 100644 index 0000000000..6eddfc503d --- /dev/null +++ b/drivers/painter/tft_panel/qp_tft_panel.h @@ -0,0 +1,67 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "color.h" +#include "qp_internal.h" + +#ifdef QUANTUM_PAINTER_SPI_ENABLE +# include "qp_comms_spi.h" +#endif // QUANTUM_PAINTER_SPI_ENABLE + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Common TFT panel implementation using D/C, and RST pins. + +typedef uint16_t (*rgb888_to_native_uint16_t)(uint8_t r, uint8_t g, uint8_t b); + +// Driver vtable with extras +struct tft_panel_dc_reset_painter_driver_vtable_t { + struct painter_driver_vtable_t base; // must be first, so it can be cast to/from the painter_driver_vtable_t* type + + // Conversion function for palette entries + rgb888_to_native_uint16_t rgb888_to_native16bit; + + // Number of bytes for transmitting x/y coordinates + uint8_t num_window_bytes; + + // Whether or not the x/y coords should be swapped on 90/270 rotation + bool swap_window_coords; + + // Opcodes for normal display operation + struct { + uint8_t display_on; + uint8_t display_off; + uint8_t set_column_address; + uint8_t set_row_address; + uint8_t enable_writes; + } opcodes; +}; + +// Device definition +typedef struct tft_panel_dc_reset_painter_device_t { + struct painter_driver_t base; // must be first, so it can be cast to/from the painter_device_t* type + + union { +#ifdef QUANTUM_PAINTER_SPI_ENABLE + // SPI-based configurables + struct qp_comms_spi_dc_reset_config_t spi_dc_reset_config; +#endif // QUANTUM_PAINTER_SPI_ENABLE + + // TODO: I2C/parallel etc. + }; +} tft_panel_dc_reset_painter_device_t; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Forward declarations for injecting into concrete driver vtables + +bool qp_tft_panel_power(painter_device_t device, bool power_on); +bool qp_tft_panel_clear(painter_device_t device); +bool qp_tft_panel_flush(painter_device_t device); +bool qp_tft_panel_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom); +bool qp_tft_panel_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count); +bool qp_tft_panel_palette_convert(painter_device_t device, int16_t palette_size, qp_pixel_t *palette); +bool qp_tft_panel_append_pixels(painter_device_t device, uint8_t *target_buffer, qp_pixel_t *palette, uint32_t pixel_offset, uint32_t pixel_count, uint8_t *palette_indices); + +uint16_t qp_rgb888_to_rgb565(uint8_t r, uint8_t g, uint8_t b); +uint16_t qp_rgb888_to_rgb565_swapped(uint8_t r, uint8_t g, uint8_t b); +uint16_t qp_rgb888_to_bgr565(uint8_t r, uint8_t g, uint8_t b); +uint16_t qp_rgb888_to_bgr565_swapped(uint8_t r, uint8_t g, uint8_t b); diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index 5f65e677e5..85baa238a8 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -16,7 +16,8 @@ import_names = { # A mapping of package name to importable name 'pep8-naming': 'pep8ext_naming', 'pyusb': 'usb.core', - 'qmk-dotty-dict': 'dotty_dict' + 'qmk-dotty-dict': 'dotty_dict', + 'pillow': 'PIL' } safe_commands = [ @@ -67,6 +68,7 @@ subcommands = [ 'qmk.cli.multibuild', 'qmk.cli.new.keyboard', 'qmk.cli.new.keymap', + 'qmk.cli.painter', 'qmk.cli.pyformat', 'qmk.cli.pytest', 'qmk.cli.via2json', diff --git a/lib/python/qmk/cli/painter/__init__.py b/lib/python/qmk/cli/painter/__init__.py new file mode 100644 index 0000000000..d1a225346c --- /dev/null +++ b/lib/python/qmk/cli/painter/__init__.py @@ -0,0 +1,2 @@ +from . import convert_graphics +from . import make_font diff --git a/lib/python/qmk/cli/painter/convert_graphics.py b/lib/python/qmk/cli/painter/convert_graphics.py new file mode 100644 index 0000000000..bbc30d26ff --- /dev/null +++ b/lib/python/qmk/cli/painter/convert_graphics.py @@ -0,0 +1,86 @@ +"""This script tests QGF functionality. +""" +import re +import datetime +from io import BytesIO +from qmk.path import normpath +from qmk.painter import render_header, render_source, render_license, render_bytes, valid_formats +from milc import cli +from PIL import Image + + +@cli.argument('-v', '--verbose', arg_only=True, action='store_true', help='Turns on verbose output.') +@cli.argument('-i', '--input', required=True, help='Specify input graphic file.') +@cli.argument('-o', '--output', default='', help='Specify output directory. Defaults to same directory as input.') +@cli.argument('-f', '--format', required=True, help='Output format, valid types: %s' % (', '.join(valid_formats.keys()))) +@cli.argument('-r', '--no-rle', arg_only=True, action='store_true', help='Disables the use of RLE when encoding images.') +@cli.argument('-d', '--no-deltas', arg_only=True, action='store_true', help='Disables the use of delta frames when encoding animations.') +@cli.subcommand('Converts an input image to something QMK understands') +def painter_convert_graphics(cli): + """Converts an image file to a format that Quantum Painter understands. + + This command uses the `qmk.painter` module to generate a Quantum Painter image defintion from an image. The generated definitions are written to a files next to the input -- `INPUT.c` and `INPUT.h`. + """ + # Work out the input file + if cli.args.input != '-': + cli.args.input = normpath(cli.args.input) + + # Error checking + if not cli.args.input.exists(): + cli.log.error('Input image file does not exist!') + cli.print_usage() + return False + + # Work out the output directory + if len(cli.args.output) == 0: + cli.args.output = cli.args.input.parent + cli.args.output = normpath(cli.args.output) + + # Ensure we have a valid format + if cli.args.format not in valid_formats.keys(): + cli.log.error('Output format %s is invalid. Allowed values: %s' % (cli.args.format, ', '.join(valid_formats.keys()))) + cli.print_usage() + return False + + # Work out the encoding parameters + format = valid_formats[cli.args.format] + + # Load the input image + input_img = Image.open(cli.args.input) + + # Convert the image to QGF using PIL + out_data = BytesIO() + input_img.save(out_data, "QGF", use_deltas=(not cli.args.no_deltas), use_rle=(not cli.args.no_rle), qmk_format=format, verbose=cli.args.verbose) + out_bytes = out_data.getvalue() + + # Work out the text substitutions for rendering the output data + subs = { + 'generated_type': 'image', + 'var_prefix': 'gfx', + 'generator_command': f'qmk painter-convert-graphics -i {cli.args.input.name} -f {cli.args.format}', + 'year': datetime.date.today().strftime("%Y"), + 'input_file': cli.args.input.name, + 'sane_name': re.sub(r"[^a-zA-Z0-9]", "_", cli.args.input.stem), + 'byte_count': len(out_bytes), + 'bytes_lines': render_bytes(out_bytes), + 'format': cli.args.format, + } + + # Render the license + subs.update({'license': render_license(subs)}) + + # Render and write the header file + header_text = render_header(subs) + header_file = cli.args.output / (cli.args.input.stem + ".qgf.h") + with open(header_file, 'w') as header: + print(f"Writing {header_file}...") + header.write(header_text) + header.close() + + # Render and write the source file + source_text = render_source(subs) + source_file = cli.args.output / (cli.args.input.stem + ".qgf.c") + with open(source_file, 'w') as source: + print(f"Writing {source_file}...") + source.write(source_text) + source.close() diff --git a/lib/python/qmk/cli/painter/make_font.py b/lib/python/qmk/cli/painter/make_font.py new file mode 100644 index 0000000000..0762843fd3 --- /dev/null +++ b/lib/python/qmk/cli/painter/make_font.py @@ -0,0 +1,87 @@ +"""This script automates the conversion of font files into a format QMK firmware understands. +""" + +import re +import datetime +from io import BytesIO +from qmk.path import normpath +from qmk.painter_qff import QFFFont +from qmk.painter import render_header, render_source, render_license, render_bytes, valid_formats +from milc import cli + + +@cli.argument('-f', '--font', required=True, help='Specify input font file.') +@cli.argument('-o', '--output', required=True, help='Specify output image path.') +@cli.argument('-s', '--size', default=12, help='Specify font size. Default 12.') +@cli.argument('-n', '--no-ascii', arg_only=True, action='store_true', help='Disables output of the full ASCII character set (0x20..0x7E), exporting only the glyphs specified.') +@cli.argument('-u', '--unicode-glyphs', default='', help='Also generate the specified unicode glyphs.') +@cli.argument('-a', '--no-aa', arg_only=True, action='store_true', help='Disable anti-aliasing on fonts.') +@cli.subcommand('Converts an input font to something QMK understands') +def painter_make_font_image(cli): + # Create the font object + font = QFFFont(cli) + # Read from the input file + cli.args.font = normpath(cli.args.font) + font.generate_image(cli.args.font, cli.args.size, include_ascii_glyphs=(not cli.args.no_ascii), unicode_glyphs=cli.args.unicode_glyphs, use_aa=(False if cli.args.no_aa else True)) + # Render out the data + font.save_to_image(normpath(cli.args.output)) + + +@cli.argument('-i', '--input', help='Specify input graphic file.') +@cli.argument('-o', '--output', default='', help='Specify output directory. Defaults to same directory as input.') +@cli.argument('-n', '--no-ascii', arg_only=True, action='store_true', help='Disables output of the full ASCII character set (0x20..0x7E), exporting only the glyphs specified.') +@cli.argument('-u', '--unicode-glyphs', default='', help='Also generate the specified unicode glyphs.') +@cli.argument('-f', '--format', required=True, help='Output format, valid types: %s' % (', '.join(valid_formats.keys()))) +@cli.argument('-r', '--no-rle', arg_only=True, action='store_true', help='Disable the use of RLE to minimise converted image size.') +@cli.subcommand('Converts an input font image to something QMK firmware understands') +def painter_convert_font_image(cli): + # Work out the format + format = valid_formats[cli.args.format] + + # Create the font object + font = QFFFont(cli.log) + + # Read from the input file + cli.args.input = normpath(cli.args.input) + font.read_from_image(cli.args.input, include_ascii_glyphs=(not cli.args.no_ascii), unicode_glyphs=cli.args.unicode_glyphs) + + # Work out the output directory + if len(cli.args.output) == 0: + cli.args.output = cli.args.input.parent + cli.args.output = normpath(cli.args.output) + + # Render out the data + out_data = BytesIO() + font.save_to_qff(format, (False if cli.args.no_rle else True), out_data) + + # Work out the text substitutions for rendering the output data + subs = { + 'generated_type': 'font', + 'var_prefix': 'font', + 'generator_command': f'qmk painter-convert-font-image -i {cli.args.input.name} -f {cli.args.format}', + 'year': datetime.date.today().strftime("%Y"), + 'input_file': cli.args.input.name, + 'sane_name': re.sub(r"[^a-zA-Z0-9]", "_", cli.args.input.stem), + 'byte_count': out_data.getbuffer().nbytes, + 'bytes_lines': render_bytes(out_data.getbuffer().tobytes()), + 'format': cli.args.format, + } + + # Render the license + subs.update({'license': render_license(subs)}) + + # Render and write the header file + header_text = render_header(subs) + header_file = cli.args.output / (cli.args.input.stem + ".qff.h") + with open(header_file, 'w') as header: + print(f"Writing {header_file}...") + header.write(header_text) + header.close() + + # Render and write the source file + source_text = render_source(subs) + source_file = cli.args.output / (cli.args.input.stem + ".qff.c") + with open(source_file, 'w') as source: + print(f"Writing {source_file}...") + source.write(source_text) + source.close() diff --git a/lib/python/qmk/painter.py b/lib/python/qmk/painter.py new file mode 100644 index 0000000000..d0cc1dddec --- /dev/null +++ b/lib/python/qmk/painter.py @@ -0,0 +1,268 @@ +"""Functions that help us work with Quantum Painter's file formats. +""" +import math +import re +from string import Template +from PIL import Image, ImageOps + +# The list of valid formats Quantum Painter supports +valid_formats = { + 'pal256': { + 'image_format': 'IMAGE_FORMAT_PALETTE', + 'bpp': 8, + 'has_palette': True, + 'num_colors': 256, + 'image_format_byte': 0x07, # see qp_internal_formats.h + }, + 'pal16': { + 'image_format': 'IMAGE_FORMAT_PALETTE', + 'bpp': 4, + 'has_palette': True, + 'num_colors': 16, + 'image_format_byte': 0x06, # see qp_internal_formats.h + }, + 'pal4': { + 'image_format': 'IMAGE_FORMAT_PALETTE', + 'bpp': 2, + 'has_palette': True, + 'num_colors': 4, + 'image_format_byte': 0x05, # see qp_internal_formats.h + }, + 'pal2': { + 'image_format': 'IMAGE_FORMAT_PALETTE', + 'bpp': 1, + 'has_palette': True, + 'num_colors': 2, + 'image_format_byte': 0x04, # see qp_internal_formats.h + }, + 'mono256': { + 'image_format': 'IMAGE_FORMAT_GRAYSCALE', + 'bpp': 8, + 'has_palette': False, + 'num_colors': 256, + 'image_format_byte': 0x03, # see qp_internal_formats.h + }, + 'mono16': { + 'image_format': 'IMAGE_FORMAT_GRAYSCALE', + 'bpp': 4, + 'has_palette': False, + 'num_colors': 16, + 'image_format_byte': 0x02, # see qp_internal_formats.h + }, + 'mono4': { + 'image_format': 'IMAGE_FORMAT_GRAYSCALE', + 'bpp': 2, + 'has_palette': False, + 'num_colors': 4, + 'image_format_byte': 0x01, # see qp_internal_formats.h + }, + 'mono2': { + 'image_format': 'IMAGE_FORMAT_GRAYSCALE', + 'bpp': 1, + 'has_palette': False, + 'num_colors': 2, + 'image_format_byte': 0x00, # see qp_internal_formats.h + } +} + +license_template = """\ +// Copyright ${year} QMK -- generated source code only, ${generated_type} retains original copyright +// SPDX-License-Identifier: GPL-2.0-or-later + +// This file was auto-generated by `${generator_command}` +""" + + +def render_license(subs): + license_txt = Template(license_template) + return license_txt.substitute(subs) + + +header_file_template = """\ +${license} +#pragma once + +#include + +extern const uint32_t ${var_prefix}_${sane_name}_length; +extern const uint8_t ${var_prefix}_${sane_name}[${byte_count}]; +""" + + +def render_header(subs): + header_txt = Template(header_file_template) + return header_txt.substitute(subs) + + +source_file_template = """\ +${license} +#include + +const uint32_t ${var_prefix}_${sane_name}_length = ${byte_count}; + +// clang-format off +const uint8_t ${var_prefix}_${sane_name}[${byte_count}] = { +${bytes_lines} +}; +// clang-format on +""" + + +def render_source(subs): + source_txt = Template(source_file_template) + return source_txt.substitute(subs) + + +def render_bytes(bytes, newline_after=16): + lines = '' + for n in range(len(bytes)): + if n % newline_after == 0 and n > 0 and n != len(bytes): + lines = lines + "\n " + elif n == 0: + lines = lines + " " + lines = lines + " 0x{0:02X},".format(bytes[n]) + return lines.rstrip() + + +def clean_output(str): + str = re.sub(r'\r', '', str) + str = re.sub(r'[\n]{3,}', r'\n\n', str) + return str + + +def rescale_byte(val, maxval): + """Rescales a byte value to the supplied range, i.e. [0,255] -> [0,maxval]. + """ + return int(round(val * maxval / 255.0)) + + +def convert_requested_format(im, format): + """Convert an image to the requested format. + """ + + # Work out the requested format + ncolors = format["num_colors"] + image_format = format["image_format"] + + # Ensure we have a valid number of colors for the palette + if ncolors <= 0 or ncolors > 256 or (ncolors & (ncolors - 1) != 0): + raise ValueError("Number of colors must be 2, 4, 16, or 256.") + + # Work out where we're getting the bytes from + if image_format == 'IMAGE_FORMAT_GRAYSCALE': + # If mono, convert input to grayscale, then to RGB, then grab the raw bytes corresponding to the intensity of the red channel + im = ImageOps.grayscale(im) + im = im.convert("RGB") + elif image_format == 'IMAGE_FORMAT_PALETTE': + # If color, convert input to RGB, palettize based on the supplied number of colors, then get the raw palette bytes + im = im.convert("RGB") + im = im.convert("P", palette=Image.ADAPTIVE, colors=ncolors) + + return im + + +def convert_image_bytes(im, format): + """Convert the supplied image to the equivalent bytes required by the QMK firmware. + """ + + # Work out the requested format + ncolors = format["num_colors"] + image_format = format["image_format"] + shifter = int(math.log2(ncolors)) + pixels_per_byte = int(8 / math.log2(ncolors)) + (width, height) = im.size + expected_byte_count = ((width * height) + (pixels_per_byte - 1)) // pixels_per_byte + + if image_format == 'IMAGE_FORMAT_GRAYSCALE': + # Take the red channel + image_bytes = im.tobytes("raw", "R") + image_bytes_len = len(image_bytes) + + # No palette + palette = None + + bytearray = [] + for x in range(expected_byte_count): + byte = 0 + for n in range(pixels_per_byte): + byte_offset = x * pixels_per_byte + n + if byte_offset < image_bytes_len: + # If mono, each input byte is a grayscale [0,255] pixel -- rescale to the range we want then pack together + byte = byte | (rescale_byte(image_bytes[byte_offset], ncolors - 1) << int(n * shifter)) + bytearray.append(byte) + + elif image_format == 'IMAGE_FORMAT_PALETTE': + # Convert each pixel to the palette bytes + image_bytes = im.tobytes("raw", "P") + image_bytes_len = len(image_bytes) + + # Export the palette + palette = [] + pal = im.getpalette() + for n in range(0, ncolors * 3, 3): + palette.append((pal[n + 0], pal[n + 1], pal[n + 2])) + + bytearray = [] + for x in range(expected_byte_count): + byte = 0 + for n in range(pixels_per_byte): + byte_offset = x * pixels_per_byte + n + if byte_offset < image_bytes_len: + # If color, each input byte is the index into the color palette -- pack them together + byte = byte | ((image_bytes[byte_offset] & (ncolors - 1)) << int(n * shifter)) + bytearray.append(byte) + + if len(bytearray) != expected_byte_count: + raise Exception(f"Wrong byte count, was {len(bytearray)}, expected {expected_byte_count}") + + return (palette, bytearray) + + +def compress_bytes_qmk_rle(bytearray): + debug_dump = False + output = [] + temp = [] + repeat = False + + def append_byte(c): + if debug_dump: + print('Appending byte:', '0x{0:02X}'.format(int(c)), '=', c) + output.append(c) + + def append_range(r): + append_byte(127 + len(r)) + if debug_dump: + print('Appending {0} byte(s):'.format(len(r)), '[', ', '.join(['{0:02X}'.format(e) for e in r]), ']') + output.extend(r) + + for n in range(0, len(bytearray) + 1): + end = True if n == len(bytearray) else False + if not end: + c = bytearray[n] + temp.append(c) + if len(temp) <= 1: + continue + + if debug_dump: + print('Temp buffer state {0:3d} bytes:'.format(len(temp)), '[', ', '.join(['{0:02X}'.format(e) for e in temp]), ']') + + if repeat: + if temp[-1] != temp[-2]: + repeat = False + if not repeat or len(temp) == 128 or end: + append_byte(len(temp) if end else len(temp) - 1) + append_byte(temp[0]) + temp = [temp[-1]] + repeat = False + else: + if len(temp) >= 2 and temp[-1] == temp[-2]: + repeat = True + if len(temp) > 2: + append_range(temp[0:(len(temp) - 2)]) + temp = [temp[-1], temp[-1]] + continue + if len(temp) == 128 or end: + append_range(temp) + temp = [] + repeat = False + return output diff --git a/lib/python/qmk/painter_qff.py b/lib/python/qmk/painter_qff.py new file mode 100644 index 0000000000..746bb166e5 --- /dev/null +++ b/lib/python/qmk/painter_qff.py @@ -0,0 +1,401 @@ +# Copyright 2021 Nick Brassel (@tzarc) +# SPDX-License-Identifier: GPL-2.0-or-later + +# Quantum Font File "QFF" Font File Format. +# See https://docs.qmk.fm/#/quantum_painter_qff for more information. + +from pathlib import Path +from typing import Dict, Any +from colorsys import rgb_to_hsv +from PIL import Image, ImageDraw, ImageFont, ImageChops +from PIL._binary import o8, o16le as o16, o32le as o32 +from qmk.painter_qgf import QGFBlockHeader, QGFFramePaletteDescriptorV1 +from milc.attrdict import AttrDict +import qmk.painter + + +def o24(i): + return o16(i & 0xFFFF) + o8((i & 0xFF0000) >> 16) + + +######################################################################################################################## + + +class QFFGlyphInfo(AttrDict): + def __init__(self, *args, **kwargs): + super().__init__() + + for n, value in enumerate(args): + self[f'arg:{n}'] = value + + for key, value in kwargs.items(): + self[key] = value + + def write(self, fp, include_code_point): + if include_code_point is True: + fp.write(o24(ord(self.code_point))) + + value = ((self.data_offset << 6) & 0xFFFFC0) | (self.w & 0x3F) + fp.write(o24(value)) + + +######################################################################################################################## + + +class QFFFontDescriptor: + type_id = 0x00 + length = 20 + magic = 0x464651 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QFFFontDescriptor.type_id + self.header.length = QFFFontDescriptor.length + self.version = 1 + self.total_file_size = 0 + self.line_height = 0 + self.has_ascii_table = False + self.unicode_glyph_count = 0 + self.format = 0xFF + self.flags = 0 + self.compression = 0xFF + self.transparency_index = 0xFF # TODO: Work out how to retrieve the transparent palette entry from the PIL gif loader + + def write(self, fp): + self.header.write(fp) + fp.write( + b'' # start off with empty bytes... + + o24(QFFFontDescriptor.magic) # magic + + o8(self.version) # version + + o32(self.total_file_size) # file size + + o32((~self.total_file_size) & 0xFFFFFFFF) # negated file size + + o8(self.line_height) # line height + + o8(1 if self.has_ascii_table is True else 0) # whether or not we have an ascii table present + + o16(self.unicode_glyph_count & 0xFFFF) # number of unicode glyphs present + + o8(self.format) # format + + o8(self.flags) # flags + + o8(self.compression) # compression + + o8(self.transparency_index) # transparency index + ) + + @property + def is_transparent(self): + return (self.flags & 0x01) == 0x01 + + @is_transparent.setter + def is_transparent(self, val): + if val: + self.flags |= 0x01 + else: + self.flags &= ~0x01 + + +######################################################################################################################## + + +class QFFAsciiGlyphTableV1: + type_id = 0x01 + length = 95 * 3 # We have 95 glyphs: [0x20...0x7E] + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QFFAsciiGlyphTableV1.type_id + self.header.length = QFFAsciiGlyphTableV1.length + + # Each glyph is key=code_point, value=QFFGlyphInfo + self.glyphs = {} + + def add_glyph(self, glyph: QFFGlyphInfo): + self.glyphs[ord(glyph.code_point)] = glyph + + def write(self, fp): + self.header.write(fp) + + for n in range(0x20, 0x7F): + self.glyphs[n].write(fp, False) + + +######################################################################################################################## + + +class QFFUnicodeGlyphTableV1: + type_id = 0x02 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QFFUnicodeGlyphTableV1.type_id + self.header.length = 0 + + # Each glyph is key=code_point, value=QFFGlyphInfo + self.glyphs = {} + + def add_glyph(self, glyph: QFFGlyphInfo): + self.glyphs[ord(glyph.code_point)] = glyph + + def write(self, fp): + self.header.length = len(self.glyphs.keys()) * 6 + self.header.write(fp) + + for n in sorted(self.glyphs.keys()): + self.glyphs[n].write(fp, True) + + +######################################################################################################################## + + +class QFFFontDataDescriptorV1: + type_id = 0x04 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QFFFontDataDescriptorV1.type_id + self.data = [] + + def write(self, fp): + self.header.length = len(self.data) + self.header.write(fp) + fp.write(bytes(self.data)) + + +######################################################################################################################## + + +def _generate_font_glyphs_list(use_ascii, unicode_glyphs): + # The set of glyphs that we want to generate images for + glyphs = {} + + # Add ascii charset if requested + if use_ascii is True: + for c in range(0x20, 0x7F): # does not include 0x7F! + glyphs[chr(c)] = True + + # Append any extra unicode glyphs + unicode_glyphs = list(unicode_glyphs) + for c in unicode_glyphs: + glyphs[c] = True + + return sorted(glyphs.keys()) + + +class QFFFont: + def __init__(self, logger): + self.logger = logger + self.image = None + self.glyph_data = {} + self.glyph_height = 0 + return + + def _extract_glyphs(self, format): + total_data_size = 0 + total_rle_data_size = 0 + + converted_img = qmk.painter.convert_requested_format(self.image, format) + (self.palette, _) = qmk.painter.convert_image_bytes(converted_img, format) + + # Work out how many bytes used for RLE vs. non-RLE + for _, glyph_entry in self.glyph_data.items(): + glyph_img = converted_img.crop((glyph_entry.x, 1, glyph_entry.x + glyph_entry.w, 1 + self.glyph_height)) + (_, this_glyph_image_bytes) = qmk.painter.convert_image_bytes(glyph_img, format) + this_glyph_rle_bytes = qmk.painter.compress_bytes_qmk_rle(this_glyph_image_bytes) + total_data_size += len(this_glyph_image_bytes) + total_rle_data_size += len(this_glyph_rle_bytes) + glyph_entry['image_uncompressed_bytes'] = this_glyph_image_bytes + glyph_entry['image_compressed_bytes'] = this_glyph_rle_bytes + + return (total_data_size, total_rle_data_size) + + def _parse_image(self, img, include_ascii_glyphs: bool = True, unicode_glyphs: str = ''): + # Clear out any existing font metadata + self.image = None + # Each glyph is key=code_point, value={ x: ?, w: ? } + self.glyph_data = {} + self.glyph_height = 0 + + # Work out the list of glyphs required + glyphs = _generate_font_glyphs_list(include_ascii_glyphs, unicode_glyphs) + + # Work out the geometry + (width, height) = img.size + + # Work out the glyph offsets/widths + glyph_pixel_offsets = [] + glyph_pixel_widths = [] + pixels = img.load() + + # Run through the markers and work out where each glyph starts/stops + glyph_split_color = pixels[0, 0] # top left pixel is the marker color we're going to use to split each glyph + glyph_pixel_offsets.append(0) + last_offset = 0 + for x in range(1, width): + if pixels[x, 0] == glyph_split_color: + glyph_pixel_offsets.append(x) + glyph_pixel_widths.append(x - last_offset) + last_offset = x + glyph_pixel_widths.append(width - last_offset) + + # Make sure the number of glyphs we're attempting to generate matches the input image + if len(glyph_pixel_offsets) != len(glyphs): + self.logger.error('The number of glyphs to generate doesn\'t match the number of detected glyphs in the input image.') + return + + # Set up the required metadata for each glyph + for n in range(0, len(glyph_pixel_offsets)): + self.glyph_data[glyphs[n]] = QFFGlyphInfo(code_point=glyphs[n], x=glyph_pixel_offsets[n], w=glyph_pixel_widths[n]) + + # Parsing was successful, keep the image in this instance + self.image = img + self.glyph_height = height - 1 # subtract the line with the markers + + def generate_image(self, ttf_file: Path, font_size: int, include_ascii_glyphs: bool = True, unicode_glyphs: str = '', include_before_left: bool = False, use_aa: bool = True): + # Load the font + font = ImageFont.truetype(str(ttf_file), int(font_size)) + # Work out the max font size + max_font_size = font.font.ascent + abs(font.font.descent) + # Work out the list of glyphs required + glyphs = _generate_font_glyphs_list(include_ascii_glyphs, unicode_glyphs) + + baseline_offset = 9999999 + total_glyph_width = 0 + max_glyph_height = -1 + + # Measure each glyph to determine the overall baseline offset required + for glyph in glyphs: + (ls_l, ls_t, ls_r, ls_b) = font.getbbox(glyph, anchor='ls') + glyph_width = (ls_r - ls_l) if include_before_left else (ls_r) + glyph_height = font.getbbox(glyph, anchor='la')[3] + if max_glyph_height < glyph_height: + max_glyph_height = glyph_height + total_glyph_width += glyph_width + if baseline_offset > ls_t: + baseline_offset = ls_t + + # Create the output image + img = Image.new("RGB", (total_glyph_width + 1, max_font_size * 2 + 1), (0, 0, 0, 255)) + cur_x_pos = 0 + + # Loop through each glyph... + for glyph in glyphs: + # Work out this glyph's bounding box + (ls_l, ls_t, ls_r, ls_b) = font.getbbox(glyph, anchor='ls') + glyph_width = (ls_r - ls_l) if include_before_left else (ls_r) + glyph_height = ls_b - ls_t + x_offset = -ls_l + y_offset = ls_t - baseline_offset + + # Draw each glyph to its own image so we don't get anti-aliasing applied to the final image when straddling edges + glyph_img = Image.new("RGB", (glyph_width, max_font_size), (0, 0, 0, 255)) + glyph_draw = ImageDraw.Draw(glyph_img) + if not use_aa: + glyph_draw.fontmode = "1" + glyph_draw.text((x_offset, y_offset), glyph, font=font, anchor='lt') + + # Place the glyph-specific image in the correct location overall + img.paste(glyph_img, (cur_x_pos, 1)) + + # Set up the marker for start of each glyph + pixels = img.load() + pixels[cur_x_pos, 0] = (255, 0, 255) + + # Increment for the next glyph's position + cur_x_pos += glyph_width + + # Add the ending marker so that the difference/crop works + pixels = img.load() + pixels[cur_x_pos, 0] = (255, 0, 255) + + # Determine the usable font area + dummy_img = Image.new("RGB", (total_glyph_width + 1, max_font_size + 1), (0, 0, 0, 255)) + bbox = ImageChops.difference(img, dummy_img).getbbox() + bbox = (bbox[0], bbox[1], bbox[2] - 1, bbox[3]) # remove the unused end-marker + + # Crop and re-parse the resulting image to ensure we're generating the correct format + self._parse_image(img.crop(bbox), include_ascii_glyphs, unicode_glyphs) + + def save_to_image(self, img_file: Path): + # Drop out if there's no image loaded + if self.image is None: + self.logger.error('No image is loaded.') + return + + # Save the image to the supplied file + self.image.save(str(img_file)) + + def read_from_image(self, img_file: Path, include_ascii_glyphs: bool = True, unicode_glyphs: str = ''): + # Load and parse the supplied image file + self._parse_image(Image.open(str(img_file)), include_ascii_glyphs, unicode_glyphs) + return + + def save_to_qff(self, format: Dict[str, Any], use_rle: bool, fp): + # Drop out if there's no image loaded + if self.image is None: + self.logger.error('No image is loaded.') + return + + # Work out if we want to use RLE at all, skipping it if it's not any smaller (it's applied per-glyph) + (total_data_size, total_rle_data_size) = self._extract_glyphs(format) + if use_rle: + use_rle = (total_rle_data_size < total_data_size) + + # For each glyph, work out which image data we want to use and append it to the image buffer, recording the byte-wise offset + img_buffer = bytes() + for _, glyph_entry in self.glyph_data.items(): + glyph_entry['data_offset'] = len(img_buffer) + glyph_img_bytes = glyph_entry.image_compressed_bytes if use_rle else glyph_entry.image_uncompressed_bytes + img_buffer += bytes(glyph_img_bytes) + + font_descriptor = QFFFontDescriptor() + ascii_table = QFFAsciiGlyphTableV1() + unicode_table = QFFUnicodeGlyphTableV1() + data_descriptor = QFFFontDataDescriptorV1() + data_descriptor.data = img_buffer + + # Check if we have all the ASCII glyphs present + include_ascii_glyphs = all([chr(n) in self.glyph_data for n in range(0x20, 0x7F)]) + + # Helper for populating the blocks + for code_point, glyph_entry in self.glyph_data.items(): + if ord(code_point) >= 0x20 and ord(code_point) <= 0x7E and include_ascii_glyphs: + ascii_table.add_glyph(glyph_entry) + else: + unicode_table.add_glyph(glyph_entry) + + # Configure the font descriptor + font_descriptor.line_height = self.glyph_height + font_descriptor.has_ascii_table = include_ascii_glyphs + font_descriptor.unicode_glyph_count = len(unicode_table.glyphs.keys()) + font_descriptor.is_transparent = False + font_descriptor.format = format['image_format_byte'] + font_descriptor.compression = 0x01 if use_rle else 0x00 + + # Write a dummy font descriptor -- we'll have to come back and write it properly once we've rendered out everything else + font_descriptor_location = fp.tell() + font_descriptor.write(fp) + + # Write out the ASCII table if required + if font_descriptor.has_ascii_table: + ascii_table.write(fp) + + # Write out the unicode table if required + if font_descriptor.unicode_glyph_count > 0: + unicode_table.write(fp) + + # Write out the palette if required + if format['has_palette']: + palette_descriptor = QGFFramePaletteDescriptorV1() + + # Helper to convert from RGB888 to the QMK "dialect" of HSV888 + def rgb888_to_qmk_hsv888(e): + hsv = rgb_to_hsv(e[0] / 255.0, e[1] / 255.0, e[2] / 255.0) + return (int(hsv[0] * 255.0), int(hsv[1] * 255.0), int(hsv[2] * 255.0)) + + # Convert all palette entries to HSV888 and write to the output + palette_descriptor.palette_entries = list(map(rgb888_to_qmk_hsv888, self.palette)) + palette_descriptor.write(fp) + + # Write out the image data + data_descriptor.write(fp) + + # Now fix up the overall font descriptor, then write it in the correct location + font_descriptor.total_file_size = fp.tell() + fp.seek(font_descriptor_location, 0) + font_descriptor.write(fp) diff --git a/lib/python/qmk/painter_qgf.py b/lib/python/qmk/painter_qgf.py new file mode 100644 index 0000000000..71ce1f5a02 --- /dev/null +++ b/lib/python/qmk/painter_qgf.py @@ -0,0 +1,408 @@ +# Copyright 2021 Nick Brassel (@tzarc) +# SPDX-License-Identifier: GPL-2.0-or-later + +# Quantum Graphics File "QGF" Image File Format. +# See https://docs.qmk.fm/#/quantum_painter_qgf for more information. + +from colorsys import rgb_to_hsv +from types import FunctionType +from PIL import Image, ImageFile, ImageChops +from PIL._binary import o8, o16le as o16, o32le as o32 +import qmk.painter + + +def o24(i): + return o16(i & 0xFFFF) + o8((i & 0xFF0000) >> 16) + + +######################################################################################################################## + + +class QGFBlockHeader: + block_size = 5 + + def write(self, fp): + fp.write(b'' # start off with empty bytes... + + o8(self.type_id) # block type id + + o8((~self.type_id) & 0xFF) # negated block type id + + o24(self.length) # blob length + ) + + +######################################################################################################################## + + +class QGFGraphicsDescriptor: + type_id = 0x00 + length = 18 + magic = 0x464751 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QGFGraphicsDescriptor.type_id + self.header.length = QGFGraphicsDescriptor.length + self.version = 1 + self.total_file_size = 0 + self.image_width = 0 + self.image_height = 0 + self.frame_count = 0 + + def write(self, fp): + self.header.write(fp) + fp.write( + b'' # start off with empty bytes... + + o24(QGFGraphicsDescriptor.magic) # magic + + o8(self.version) # version + + o32(self.total_file_size) # file size + + o32((~self.total_file_size) & 0xFFFFFFFF) # negated file size + + o16(self.image_width) # width + + o16(self.image_height) # height + + o16(self.frame_count) # frame count + ) + + +######################################################################################################################## + + +class QGFFrameOffsetDescriptorV1: + type_id = 0x01 + + def __init__(self, frame_count): + self.header = QGFBlockHeader() + self.header.type_id = QGFFrameOffsetDescriptorV1.type_id + self.frame_offsets = [0xFFFFFFFF] * frame_count + self.frame_count = frame_count + + def write(self, fp): + self.header.length = len(self.frame_offsets) * 4 + self.header.write(fp) + for offset in self.frame_offsets: + fp.write(b'' # start off with empty bytes... + + o32(offset) # offset + ) + + +######################################################################################################################## + + +class QGFFrameDescriptorV1: + type_id = 0x02 + length = 6 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QGFFrameDescriptorV1.type_id + self.header.length = QGFFrameDescriptorV1.length + self.format = 0xFF + self.flags = 0 + self.compression = 0xFF + self.transparency_index = 0xFF # TODO: Work out how to retrieve the transparent palette entry from the PIL gif loader + self.delay = 1000 # Placeholder until it gets read from the animation + + def write(self, fp): + self.header.write(fp) + fp.write(b'' # start off with empty bytes... + + o8(self.format) # format + + o8(self.flags) # flags + + o8(self.compression) # compression + + o8(self.transparency_index) # transparency index + + o16(self.delay) # delay + ) + + @property + def is_transparent(self): + return (self.flags & 0x01) == 0x01 + + @is_transparent.setter + def is_transparent(self, val): + if val: + self.flags |= 0x01 + else: + self.flags &= ~0x01 + + @property + def is_delta(self): + return (self.flags & 0x02) == 0x02 + + @is_delta.setter + def is_delta(self, val): + if val: + self.flags |= 0x02 + else: + self.flags &= ~0x02 + + +######################################################################################################################## + + +class QGFFramePaletteDescriptorV1: + type_id = 0x03 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QGFFramePaletteDescriptorV1.type_id + self.header.length = 0 + self.palette_entries = [(0xFF, 0xFF, 0xFF)] * 4 + + def write(self, fp): + self.header.length = len(self.palette_entries) * 3 + self.header.write(fp) + for entry in self.palette_entries: + fp.write(b'' # start off with empty bytes... + + o8(entry[0]) # h + + o8(entry[1]) # s + + o8(entry[2]) # v + ) + + +######################################################################################################################## + + +class QGFFrameDeltaDescriptorV1: + type_id = 0x04 + length = 8 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QGFFrameDeltaDescriptorV1.type_id + self.header.length = QGFFrameDeltaDescriptorV1.length + self.left = 0 + self.top = 0 + self.right = 0 + self.bottom = 0 + + def write(self, fp): + self.header.write(fp) + fp.write(b'' # start off with empty bytes... + + o16(self.left) # left + + o16(self.top) # top + + o16(self.right) # right + + o16(self.bottom) # bottom + ) + + +######################################################################################################################## + + +class QGFFrameDataDescriptorV1: + type_id = 0x05 + + def __init__(self): + self.header = QGFBlockHeader() + self.header.type_id = QGFFrameDataDescriptorV1.type_id + self.data = [] + + def write(self, fp): + self.header.length = len(self.data) + self.header.write(fp) + fp.write(bytes(self.data)) + + +######################################################################################################################## + + +class QGFImageFile(ImageFile.ImageFile): + + format = "QGF" + format_description = "Quantum Graphics File Format" + + def _open(self): + raise NotImplementedError("Reading QGF files is not supported") + + +######################################################################################################################## + + +def _accept(prefix): + """Helper method used by PIL to work out if it can parse an input file. + + Currently unimplemented. + """ + return False + + +def _save(im, fp, filename): + """Helper method used by PIL to write to an output file. + """ + # Work out from the parameters if we need to do anything special + encoderinfo = im.encoderinfo.copy() + append_images = list(encoderinfo.get("append_images", [])) + verbose = encoderinfo.get("verbose", False) + use_deltas = encoderinfo.get("use_deltas", True) + use_rle = encoderinfo.get("use_rle", True) + + # Helper for inline verbose prints + def vprint(s): + if verbose: + print(s) + + # Helper to iterate through all frames in the input image + def _for_all_frames(x: FunctionType): + frame_num = 0 + last_frame = None + for frame in [im] + append_images: + # Get number of of frames in this image + nfr = getattr(frame, "n_frames", 1) + for idx in range(nfr): + frame.seek(idx) + frame.load() + copy = frame.copy().convert("RGB") + x(frame_num, copy, last_frame) + last_frame = copy + frame_num += 1 + + # Collect all the frame sizes + frame_sizes = [] + _for_all_frames(lambda idx, frame, last_frame: frame_sizes.append(frame.size)) + + # Make sure all frames are the same size + if len(list(set(frame_sizes))) != 1: + raise ValueError("Mismatching sizes on frames") + + # Write out the initial graphics descriptor (and write a dummy value), so that we can come back and fill in the + # correct values once we've written all the frames to the output + graphics_descriptor_location = fp.tell() + graphics_descriptor = QGFGraphicsDescriptor() + graphics_descriptor.frame_count = len(frame_sizes) + graphics_descriptor.image_width = frame_sizes[0][0] + graphics_descriptor.image_height = frame_sizes[0][1] + vprint(f'{"Graphics descriptor block":26s} {fp.tell():5d}d / {fp.tell():04X}h') + graphics_descriptor.write(fp) + + # Work out the frame offset descriptor location (and write a dummy value), so that we can come back and fill in the + # correct offsets once we've written all the frames to the output + frame_offset_location = fp.tell() + frame_offsets = QGFFrameOffsetDescriptorV1(graphics_descriptor.frame_count) + vprint(f'{"Frame offsets block":26s} {fp.tell():5d}d / {fp.tell():04X}h') + frame_offsets.write(fp) + + # Helper function to save each frame to the output file + def _write_frame(idx, frame, last_frame): + # If we replace the frame we're going to output with a delta, we can override it here + this_frame = frame + location = (0, 0) + size = frame.size + + # Work out the format we're going to use + format = encoderinfo["qmk_format"] + + # Convert the original frame so we can do comparisons + converted = qmk.painter.convert_requested_format(this_frame, format) + graphic_data = qmk.painter.convert_image_bytes(converted, format) + + # Convert the raw data to RLE-encoded if requested + raw_data = graphic_data[1] + if use_rle: + rle_data = qmk.painter.compress_bytes_qmk_rle(graphic_data[1]) + use_raw_this_frame = not use_rle or len(raw_data) <= len(rle_data) + image_data = raw_data if use_raw_this_frame else rle_data + + # Work out if a delta frame is smaller than injecting it directly + use_delta_this_frame = False + if use_deltas and last_frame is not None: + # If we want to use deltas, then find the difference + diff = ImageChops.difference(frame, last_frame) + + # Get the bounding box of those differences + bbox = diff.getbbox() + + # If we have a valid bounding box... + if bbox: + # ...create the delta frame by cropping the original. + delta_frame = frame.crop(bbox) + delta_location = (bbox[0], bbox[1]) + delta_size = (bbox[2] - bbox[0], bbox[3] - bbox[1]) + + # Convert the delta frame to the requested format + delta_converted = qmk.painter.convert_requested_format(delta_frame, format) + delta_graphic_data = qmk.painter.convert_image_bytes(delta_converted, format) + + # Work out how large the delta frame is going to be with compression etc. + delta_raw_data = delta_graphic_data[1] + if use_rle: + delta_rle_data = qmk.painter.compress_bytes_qmk_rle(delta_graphic_data[1]) + delta_use_raw_this_frame = not use_rle or len(delta_raw_data) <= len(delta_rle_data) + delta_image_data = delta_raw_data if delta_use_raw_this_frame else delta_rle_data + + # If the size of the delta frame (plus delta descriptor) is smaller than the original, use that instead + # This ensures that if a non-delta is overall smaller in size, we use that in preference due to flash + # sizing constraints. + if (len(delta_image_data) + QGFFrameDeltaDescriptorV1.length) < len(image_data): + # Copy across all the delta equivalents so that the rest of the processing acts on those + this_frame = delta_frame + location = delta_location + size = delta_size + converted = delta_converted + graphic_data = delta_graphic_data + raw_data = delta_raw_data + rle_data = delta_rle_data + use_raw_this_frame = delta_use_raw_this_frame + image_data = delta_image_data + use_delta_this_frame = True + + # Write out the frame descriptor + frame_offsets.frame_offsets[idx] = fp.tell() + vprint(f'{f"Frame {idx:3d} base":26s} {fp.tell():5d}d / {fp.tell():04X}h') + frame_descriptor = QGFFrameDescriptorV1() + frame_descriptor.is_delta = use_delta_this_frame + frame_descriptor.is_transparent = False + frame_descriptor.format = format['image_format_byte'] + frame_descriptor.compression = 0x00 if use_raw_this_frame else 0x01 # See qp.h, painter_compression_t + frame_descriptor.delay = frame.info['duration'] if 'duration' in frame.info else 1000 # If we're not an animation, just pretend we're delaying for 1000ms + frame_descriptor.write(fp) + + # Write out the palette if required + if format['has_palette']: + palette = graphic_data[0] + palette_descriptor = QGFFramePaletteDescriptorV1() + + # Helper to convert from RGB888 to the QMK "dialect" of HSV888 + def rgb888_to_qmk_hsv888(e): + hsv = rgb_to_hsv(e[0] / 255.0, e[1] / 255.0, e[2] / 255.0) + return (int(hsv[0] * 255.0), int(hsv[1] * 255.0), int(hsv[2] * 255.0)) + + # Convert all palette entries to HSV888 and write to the output + palette_descriptor.palette_entries = list(map(rgb888_to_qmk_hsv888, palette)) + vprint(f'{f"Frame {idx:3d} palette":26s} {fp.tell():5d}d / {fp.tell():04X}h') + palette_descriptor.write(fp) + + # Write out the delta info if required + if use_delta_this_frame: + # Set up the rendering location of where the delta frame should be situated + delta_descriptor = QGFFrameDeltaDescriptorV1() + delta_descriptor.left = location[0] + delta_descriptor.top = location[1] + delta_descriptor.right = location[0] + size[0] + delta_descriptor.bottom = location[1] + size[1] + + # Write the delta frame to the output + vprint(f'{f"Frame {idx:3d} delta":26s} {fp.tell():5d}d / {fp.tell():04X}h') + delta_descriptor.write(fp) + + # Write out the data for this frame to the output + data_descriptor = QGFFrameDataDescriptorV1() + data_descriptor.data = image_data + vprint(f'{f"Frame {idx:3d} data":26s} {fp.tell():5d}d / {fp.tell():04X}h') + data_descriptor.write(fp) + + # Iterate over each if the input frames, writing it to the output in the process + _for_all_frames(_write_frame) + + # Go back and update the graphics descriptor now that we can determine the final file size + graphics_descriptor.total_file_size = fp.tell() + fp.seek(graphics_descriptor_location, 0) + graphics_descriptor.write(fp) + + # Go back and update the frame offsets now that they're written to the file + fp.seek(frame_offset_location, 0) + frame_offsets.write(fp) + + +######################################################################################################################## + +# Register with PIL so that it knows about the QGF format +Image.register_open(QGFImageFile.format, QGFImageFile, _accept) +Image.register_save(QGFImageFile.format, _save) +Image.register_save_all(QGFImageFile.format, _save) +Image.register_extension(QGFImageFile.format, f".{QGFImageFile.format.lower()}") +Image.register_mime(QGFImageFile.format, f"image/{QGFImageFile.format.lower()}") diff --git a/quantum/main.c b/quantum/main.c index faba668056..2d5911b708 100644 --- a/quantum/main.c +++ b/quantum/main.c @@ -43,10 +43,6 @@ void protocol_task(void) { protocol_post_task(); } -#ifdef DEFERRED_EXEC_ENABLE -void deferred_exec_task(void); -#endif // DEFERRED_EXEC_ENABLE - /** \brief Main * * FIXME: Needs doc @@ -63,8 +59,15 @@ int main(void) { while (true) { protocol_task(); +#ifdef QUANTUM_PAINTER_ENABLE + // Run Quantum Painter animations + void qp_internal_animation_tick(void); + qp_internal_animation_tick(); +#endif + #ifdef DEFERRED_EXEC_ENABLE // Run deferred executions + void deferred_exec_task(void); deferred_exec_task(); #endif // DEFERRED_EXEC_ENABLE diff --git a/quantum/painter/qff.c b/quantum/painter/qff.c new file mode 100644 index 0000000000..cd6af788f9 --- /dev/null +++ b/quantum/painter/qff.c @@ -0,0 +1,137 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +// Quantum Font File "QFF" File Format. +// See https://docs.qmk.fm/#/quantum_painter_qff for more information. + +#include "qff.h" +#include "qp_draw.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QFF API + +bool qff_read_font_descriptor(qp_stream_t *stream, uint8_t *line_height, bool *has_ascii_table, uint16_t *num_unicode_glyphs, uint8_t *bpp, bool *has_palette, painter_compression_t *compression_scheme, uint32_t *total_bytes) { + // Seek to the start + qp_stream_setpos(stream, 0); + + // Read and validate the font descriptor + qff_font_descriptor_v1_t font_descriptor; + if (qp_stream_read(&font_descriptor, sizeof(qff_font_descriptor_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read font_descriptor, expected length was not %d\n", (int)sizeof(qff_font_descriptor_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&font_descriptor.header, QFF_FONT_DESCRIPTOR_TYPEID, (sizeof(qff_font_descriptor_v1_t) - sizeof(qgf_block_header_v1_t)))) { + return false; + } + + // Make sure the magic and version are correct + if (font_descriptor.magic != QFF_MAGIC || font_descriptor.qff_version != 0x01) { + qp_dprintf("Failed to validate font_descriptor, expected magic 0x%06X was 0x%06X, expected version = 0x%02X was 0x%02X\n", (int)QFF_MAGIC, (int)font_descriptor.magic, (int)0x01, (int)font_descriptor.qff_version); + return false; + } + + // Make sure the file length is valid + if (font_descriptor.neg_total_file_size != ~font_descriptor.total_file_size) { + qp_dprintf("Failed to validate font_descriptor, expected negated length 0x%08X was 0x%08X\n", (int)(~font_descriptor.total_file_size), (int)font_descriptor.neg_total_file_size); + return false; + } + + // Copy out the required info + if (line_height) { + *line_height = font_descriptor.line_height; + } + if (has_ascii_table) { + *has_ascii_table = font_descriptor.has_ascii_table; + } + if (num_unicode_glyphs) { + *num_unicode_glyphs = font_descriptor.num_unicode_glyphs; + } + if (bpp || has_palette) { + if (!qgf_parse_format(font_descriptor.format, bpp, has_palette)) { + return false; + } + } + if (compression_scheme) { + *compression_scheme = font_descriptor.compression_scheme; + } + if (total_bytes) { + *total_bytes = font_descriptor.total_file_size; + } + + return true; +} + +static bool qff_validate_ascii_descriptor(qp_stream_t *stream) { + // Read the raw descriptor + qff_ascii_glyph_table_v1_t ascii_descriptor; + if (qp_stream_read(&ascii_descriptor, sizeof(qff_ascii_glyph_table_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read ascii_descriptor, expected length was not %d\n", (int)sizeof(qff_ascii_glyph_table_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&ascii_descriptor.header, QFF_ASCII_GLYPH_DESCRIPTOR_TYPEID, (sizeof(qff_ascii_glyph_table_v1_t) - sizeof(qgf_block_header_v1_t)))) { + return false; + } + + return true; +} + +static bool qff_validate_unicode_descriptor(qp_stream_t *stream, uint16_t num_unicode_glyphs) { + // Read the raw descriptor + qff_unicode_glyph_table_v1_t unicode_descriptor; + if (qp_stream_read(&unicode_descriptor, sizeof(qff_unicode_glyph_table_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read unicode_descriptor, expected length was not %d\n", (int)sizeof(qff_unicode_glyph_table_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&unicode_descriptor.header, QFF_UNICODE_GLYPH_DESCRIPTOR_TYPEID, num_unicode_glyphs * 6)) { + return false; + } + + // Skip the necessary amount of data to get to the next block + qp_stream_seek(stream, num_unicode_glyphs * sizeof(qff_unicode_glyph_v1_t), SEEK_CUR); + + return true; +} + +bool qff_validate_stream(qp_stream_t *stream) { + bool has_ascii_table; + uint16_t num_unicode_glyphs; + + if (!qff_read_font_descriptor(stream, NULL, &has_ascii_table, &num_unicode_glyphs, NULL, NULL, NULL, NULL)) { + return false; + } + + if (has_ascii_table) { + if (!qff_validate_ascii_descriptor(stream)) { + return false; + } + } + + if (num_unicode_glyphs > 0) { + if (!qff_validate_unicode_descriptor(stream, num_unicode_glyphs)) { + return false; + } + } + + return true; +} + +uint32_t qff_get_total_size(qp_stream_t *stream) { + // Get the original location + uint32_t oldpos = qp_stream_tell(stream); + + // Read the font descriptor, grabbing the size + uint32_t total_size; + if (!qff_read_font_descriptor(stream, NULL, NULL, NULL, NULL, NULL, NULL, &total_size)) { + return false; + } + + // Restore the original location + qp_stream_setpos(stream, oldpos); + return total_size; +} diff --git a/quantum/painter/qff.h b/quantum/painter/qff.h new file mode 100644 index 0000000000..6f1a1fd815 --- /dev/null +++ b/quantum/painter/qff.h @@ -0,0 +1,88 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// Quantum Font File "QFF" File Format. +// See https://docs.qmk.fm/#/quantum_painter_qff for more information. + +#include +#include + +#include "qp_stream.h" +#include "qp_internal.h" +#include "qgf.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QFF structures + +///////////////////////////////////////// +// Font descriptor + +#define QFF_FONT_DESCRIPTOR_TYPEID 0x00 + +typedef struct __attribute__((packed)) qff_font_descriptor_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x00, .neg_type_id = (~0x00), .length = 20 } + uint32_t magic : 24; // constant, equal to 0x464651 ("QFF") + uint8_t qff_version; // constant, equal to 0x01 + uint32_t total_file_size; // total size of the entire file, starting at offset zero + uint32_t neg_total_file_size; // negated value of total_file_size, used for detecting parsing errors + uint8_t line_height; // glyph height in pixels + bool has_ascii_table; // whether the font has an ascii table of glyphs (0x20...0x7E) + uint16_t num_unicode_glyphs; // the number of glyphs in the unicode table -- no table specified if zero + qp_image_format_t format : 8; // Frame format, see qp.h. + uint8_t flags; // frame flags, see below. + uint8_t compression_scheme; // compression scheme, see below. + uint8_t transparency_index; // palette index used for transparent pixels (not yet implemented) +} qff_font_descriptor_v1_t; + +_Static_assert(sizeof(qff_font_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 20), "qff_font_descriptor_v1_t must be 25 bytes in v1 of QFF"); + +#define QFF_MAGIC 0x464651 + +///////////////////////////////////////// +// ASCII glyph table descriptor + +#define QFF_ASCII_GLYPH_DESCRIPTOR_TYPEID 0x01 + +#define QFF_GLYPH_WIDTH_BITS 6 +#define QFF_GLYPH_WIDTH_MASK ((1 << QFF_GLYPH_WIDTH_BITS) - 1) +#define QFF_GLYPH_OFFSET_BITS 18 +#define QFF_GLYPH_OFFSET_MASK (((1 << QFF_GLYPH_OFFSET_BITS) - 1) << QFF_GLYPH_WIDTH_BITS) + +typedef struct __attribute__((packed)) qff_ascii_glyph_v1_t { + uint32_t value : 24; // Uses QFF_GLYPH_*_(BITS|MASK) as bitfield ordering is compiler-defined +} qff_ascii_glyph_v1_t; + +_Static_assert(sizeof(qff_ascii_glyph_v1_t) == 3, "qff_ascii_glyph_v1_t must be 3 bytes in v1 of QFF"); + +typedef struct __attribute__((packed)) qff_ascii_glyph_table_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x01, .neg_type_id = (~0x01), .length = 285 } + qff_ascii_glyph_v1_t glyph[95]; // 95 glyphs, 0x20..0x7E +} qff_ascii_glyph_table_v1_t; + +_Static_assert(sizeof(qff_ascii_glyph_table_v1_t) == (sizeof(qgf_block_header_v1_t) + (95 * sizeof(qff_ascii_glyph_v1_t))), "qff_ascii_glyph_table_v1_t must be 290 bytes in v1 of QFF"); + +///////////////////////////////////////// +// Unicode glyph table descriptor + +#define QFF_UNICODE_GLYPH_DESCRIPTOR_TYPEID 0x02 + +typedef struct __attribute__((packed)) qff_unicode_glyph_v1_t { + uint32_t code_point : 24; + uint32_t value : 24; // Uses QFF_GLYPH_*_(BITS|MASK) as bitfield ordering is compiler-defined +} qff_unicode_glyph_v1_t; + +_Static_assert(sizeof(qff_unicode_glyph_v1_t) == 6, "qff_unicode_glyph_v1_t must be 6 bytes in v1 of QFF"); + +typedef struct __attribute__((packed)) qff_unicode_glyph_table_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x02, .neg_type_id = (~0x02), .length = (N * 6) } + qff_unicode_glyph_v1_t glyph[0]; // Extent of '0' signifies that this struct is immediately followed by the glyph data +} qff_unicode_glyph_table_v1_t; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QFF API + +bool qff_validate_stream(qp_stream_t *stream); +uint32_t qff_get_total_size(qp_stream_t *stream); +bool qff_read_font_descriptor(qp_stream_t *stream, uint8_t *line_height, bool *has_ascii_table, uint16_t *num_unicode_glyphs, uint8_t *bpp, bool *has_palette, painter_compression_t *compression_scheme, uint32_t *total_bytes); diff --git a/quantum/painter/qgf.c b/quantum/painter/qgf.c new file mode 100644 index 0000000000..834837105b --- /dev/null +++ b/quantum/painter/qgf.c @@ -0,0 +1,292 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +// Quantum Graphics File "QGF" File Format. +// See https://docs.qmk.fm/#/quantum_painter_qgf for more information. + +#include "qgf.h" +#include "qp_draw.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QGF API + +bool qgf_validate_block_header(qgf_block_header_v1_t *desc, uint8_t expected_typeid, int32_t expected_length) { + if (desc->type_id != expected_typeid || desc->neg_type_id != ((~expected_typeid) & 0xFF)) { + qp_dprintf("Failed to validate header, expected typeid 0x%02X, was 0x%02X, expected negated typeid 0x%02X, was 0x%02X\n", (int)expected_typeid, (int)desc->type_id, (int)((~desc->type_id) & 0xFF), (int)desc->neg_type_id); + return false; + } + + if (expected_length >= 0 && desc->length != expected_length) { + qp_dprintf("Failed to validate header (typeid 0x%02X), expected length %d, was %d\n", (int)desc->type_id, (int)expected_length, (int)desc->length); + return false; + } + + return true; +} + +bool qgf_parse_format(qp_image_format_t format, uint8_t *bpp, bool *has_palette) { + // clang-format off + static const struct QP_PACKED { + uint8_t bpp; + bool has_palette; + } formats[] = { + [GRAYSCALE_1BPP] = {.bpp = 1, .has_palette = false}, + [GRAYSCALE_2BPP] = {.bpp = 2, .has_palette = false}, + [GRAYSCALE_4BPP] = {.bpp = 4, .has_palette = false}, + [GRAYSCALE_8BPP] = {.bpp = 8, .has_palette = false}, + [PALETTE_1BPP] = {.bpp = 1, .has_palette = true}, + [PALETTE_2BPP] = {.bpp = 2, .has_palette = true}, + [PALETTE_4BPP] = {.bpp = 4, .has_palette = true}, + [PALETTE_8BPP] = {.bpp = 8, .has_palette = true}, + }; + // clang-format on + + // Copy out the required info + if (format > PALETTE_8BPP) { + qp_dprintf("Failed to parse frame_descriptor, invalid format 0x%02X\n", (int)format); + return false; + } + + // Copy out the required info + if (bpp) { + *bpp = formats[format].bpp; + } + if (has_palette) { + *has_palette = formats[format].has_palette; + } + + return true; +} + +bool qgf_parse_frame_descriptor(qgf_frame_v1_t *frame_descriptor, uint8_t *bpp, bool *has_palette, bool *is_delta, painter_compression_t *compression_scheme, uint16_t *delay) { + // Decode the format + qgf_parse_format(frame_descriptor->format, bpp, has_palette); + + // Copy out the required info + if (is_delta) { + *is_delta = (frame_descriptor->flags & QGF_FRAME_FLAG_DELTA) == QGF_FRAME_FLAG_DELTA; + } + if (compression_scheme) { + *compression_scheme = frame_descriptor->compression_scheme; + } + if (delay) { + *delay = frame_descriptor->delay; + } + + return true; +} + +bool qgf_read_graphics_descriptor(qp_stream_t *stream, uint16_t *image_width, uint16_t *image_height, uint16_t *frame_count, uint32_t *total_bytes) { + // Seek to the start + qp_stream_setpos(stream, 0); + + // Read and validate the graphics descriptor + qgf_graphics_descriptor_v1_t graphics_descriptor; + if (qp_stream_read(&graphics_descriptor, sizeof(qgf_graphics_descriptor_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read graphics_descriptor, expected length was not %d\n", (int)sizeof(qgf_graphics_descriptor_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&graphics_descriptor.header, QGF_GRAPHICS_DESCRIPTOR_TYPEID, (sizeof(qgf_graphics_descriptor_v1_t) - sizeof(qgf_block_header_v1_t)))) { + return false; + } + + // Make sure the magic and version are correct + if (graphics_descriptor.magic != QGF_MAGIC || graphics_descriptor.qgf_version != 0x01) { + qp_dprintf("Failed to validate graphics_descriptor, expected magic 0x%06X was 0x%06X, expected version = 0x%02X was 0x%02X\n", (int)QGF_MAGIC, (int)graphics_descriptor.magic, (int)0x01, (int)graphics_descriptor.qgf_version); + return false; + } + + // Make sure the file length is valid + if (graphics_descriptor.neg_total_file_size != ~graphics_descriptor.total_file_size) { + qp_dprintf("Failed to validate graphics_descriptor, expected negated length 0x%08X was 0x%08X\n", (int)(~graphics_descriptor.total_file_size), (int)graphics_descriptor.neg_total_file_size); + return false; + } + + // Copy out the required info + if (image_width) { + *image_width = graphics_descriptor.image_width; + } + if (image_height) { + *image_height = graphics_descriptor.image_height; + } + if (frame_count) { + *frame_count = graphics_descriptor.frame_count; + } + if (total_bytes) { + *total_bytes = graphics_descriptor.total_file_size; + } + + return true; +} + +static bool qgf_read_frame_offset(qp_stream_t *stream, uint16_t frame_number, uint32_t *frame_offset) { + uint16_t frame_count; + if (!qgf_read_graphics_descriptor(stream, NULL, NULL, &frame_count, NULL)) { + return false; + } + + // Read the frame offsets descriptor + qgf_frame_offsets_v1_t frame_offsets; + if (qp_stream_read(&frame_offsets, sizeof(qgf_frame_offsets_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read frame_offsets, expected length was not %d\n", (int)sizeof(qgf_frame_offsets_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&frame_offsets.header, QGF_FRAME_OFFSET_DESCRIPTOR_TYPEID, (frame_count * sizeof(uint32_t)))) { + return false; + } + + if (frame_number >= frame_count) { + qp_dprintf("Invalid frame number, was %d but only %d frames in image\n", (int)frame_number, (int)frame_count); + return false; + } + + // Skip the necessary amount of data to get to the requested frame offset + qp_stream_seek(stream, frame_number * sizeof(uint32_t), SEEK_CUR); + + // Read the frame offset + uint32_t offset = 0; + if (qp_stream_read(&offset, sizeof(uint32_t), 1, stream) != 1) { + qp_dprintf("Failed to read frame offset, expected length was not %d\n", (int)sizeof(uint32_t)); + return false; + } + + // Copy out the required info + if (frame_offset) { + *frame_offset = offset; + } + + return true; +} + +void qgf_seek_to_frame_descriptor(qp_stream_t *stream, uint16_t frame_number) { + // Read the offset + uint32_t offset = 0; + qgf_read_frame_offset(stream, frame_number, &offset); + + // Move to the offset + qp_stream_setpos(stream, offset); +} + +bool qgf_validate_frame_descriptor(qp_stream_t *stream, uint16_t frame_number, uint8_t *bpp, bool *has_palette, bool *is_delta) { + // Seek to the correct location + qgf_seek_to_frame_descriptor(stream, frame_number); + + // Read the raw descriptor + qgf_frame_v1_t frame_descriptor; + if (qp_stream_read(&frame_descriptor, sizeof(qgf_frame_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read frame_descriptor, expected length was not %d\n", (int)sizeof(qgf_frame_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&frame_descriptor.header, QGF_FRAME_DESCRIPTOR_TYPEID, (sizeof(qgf_frame_v1_t) - sizeof(qgf_block_header_v1_t)))) { + return false; + } + + return qgf_parse_frame_descriptor(&frame_descriptor, bpp, has_palette, is_delta, NULL, NULL); +} + +bool qgf_validate_palette_descriptor(qp_stream_t *stream, uint16_t frame_number, uint8_t bpp) { + // Read the palette descriptor + qgf_palette_v1_t palette_descriptor; + if (qp_stream_read(&palette_descriptor, sizeof(qgf_palette_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read palette_descriptor, expected length was not %d\n", (int)sizeof(qgf_palette_v1_t)); + return false; + } + + // Make sure this block is valid + uint32_t expected_length = (1 << bpp) * 3 * sizeof(uint8_t); + if (!qgf_validate_block_header(&palette_descriptor.header, QGF_FRAME_PALETTE_DESCRIPTOR_TYPEID, expected_length)) { + return false; + } + + // Move forward in the stream to the next block + qp_stream_seek(stream, expected_length, SEEK_CUR); + return true; +} + +bool qgf_validate_delta_descriptor(qp_stream_t *stream, uint16_t frame_number) { + // Read the delta descriptor + qgf_delta_v1_t delta_descriptor; + if (qp_stream_read(&delta_descriptor, sizeof(qgf_delta_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read delta_descriptor, expected length was not %d\n", (int)sizeof(qgf_delta_v1_t)); + return false; + } + + // Make sure this block is valid + if (!qgf_validate_block_header(&delta_descriptor.header, QGF_FRAME_DELTA_DESCRIPTOR_TYPEID, (sizeof(qgf_delta_v1_t) - sizeof(qgf_block_header_v1_t)))) { + return false; + } + + return true; +} + +bool qgf_validate_frame_data_descriptor(qp_stream_t *stream, uint16_t frame_number) { + // Read and validate the data block + qgf_data_v1_t data_descriptor; + if (qp_stream_read(&data_descriptor, sizeof(qgf_data_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read data_descriptor, expected length was not %d\n", (int)sizeof(qgf_data_v1_t)); + return false; + } + + if (!qgf_validate_block_header(&data_descriptor.header, QGF_FRAME_DATA_DESCRIPTOR_TYPEID, -1)) { + return false; + } + + return true; +} + +bool qgf_validate_stream(qp_stream_t *stream) { + uint16_t frame_count; + if (!qgf_read_graphics_descriptor(stream, NULL, NULL, &frame_count, NULL)) { + return false; + } + + // Read and validate all the frames (automatically validates the frame offset descriptor in the process) + for (uint16_t i = 0; i < frame_count; ++i) { + // Validate the frame descriptor block + uint8_t bpp; + bool has_palette; + bool has_delta; + if (!qgf_validate_frame_descriptor(stream, i, &bpp, &has_palette, &has_delta)) { + return false; + } + + // If we've got a palette block, check it + if (has_palette && !qgf_validate_palette_descriptor(stream, i, bpp)) { + return false; + } + + // If we've got a delta block, check it + if (has_delta && !qgf_validate_delta_descriptor(stream, i)) { + return false; + } + + // Check the data block + if (!qgf_validate_frame_data_descriptor(stream, i)) { + return false; + } + } + + return true; +} + +// Work out the total size of an image definition, assuming we can read far enough into the file +uint32_t qgf_get_total_size(qp_stream_t *stream) { + // Get the original location + uint32_t oldpos = qp_stream_tell(stream); + + // Read the graphics descriptor, grabbing the size + uint32_t total_size; + if (!qgf_read_graphics_descriptor(stream, NULL, NULL, NULL, &total_size)) { + return false; + } + + // Restore the original location + qp_stream_setpos(stream, oldpos); + return total_size; +} diff --git a/quantum/painter/qgf.h b/quantum/painter/qgf.h new file mode 100644 index 0000000000..54585edd04 --- /dev/null +++ b/quantum/painter/qgf.h @@ -0,0 +1,136 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +// Quantum Graphics File "QGF" File Format. +// See https://docs.qmk.fm/#/quantum_painter_qgf for more information. + +#include +#include + +#include "qp_stream.h" +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QGF structures + +///////////////////////////////////////// +// Common block header + +typedef struct QP_PACKED qgf_block_header_v1_t { + uint8_t type_id; // See each respective block type below. + uint8_t neg_type_id; // Negated type ID, used for detecting parsing errors. + uint32_t length : 24; // 24-bit blob length, allowing for block sizes of a maximum of 16MB. +} qgf_block_header_v1_t; + +_Static_assert(sizeof(qgf_block_header_v1_t) == 5, "qgf_block_header_v1_t must be 5 bytes in v1 of QGF"); + +///////////////////////////////////////// +// Graphics descriptor + +#define QGF_GRAPHICS_DESCRIPTOR_TYPEID 0x00 + +typedef struct QP_PACKED qgf_graphics_descriptor_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x00, .neg_type_id = (~0x00), .length = 18 } + uint32_t magic : 24; // constant, equal to 0x464751 ("QGF") + uint8_t qgf_version; // constant, equal to 0x01 + uint32_t total_file_size; // total size of the entire file, starting at offset zero + uint32_t neg_total_file_size; // negated value of total_file_size + uint16_t image_width; // in pixels + uint16_t image_height; // in pixels + uint16_t frame_count; // minimum of 1 +} qgf_graphics_descriptor_v1_t; + +_Static_assert(sizeof(qgf_graphics_descriptor_v1_t) == (sizeof(qgf_block_header_v1_t) + 18), "qgf_graphics_descriptor_v1_t must be 23 bytes in v1 of QGF"); + +#define QGF_MAGIC 0x464751 + +///////////////////////////////////////// +// Frame offset descriptor + +#define QGF_FRAME_OFFSET_DESCRIPTOR_TYPEID 0x01 + +typedef struct QP_PACKED qgf_frame_offsets_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x01, .neg_type_id = (~0x01), .length = (N * sizeof(uint32_t)) } + uint32_t offset[0]; // '0' signifies that this struct is immediately followed by the frame offsets +} qgf_frame_offsets_v1_t; + +_Static_assert(sizeof(qgf_frame_offsets_v1_t) == sizeof(qgf_block_header_v1_t), "qgf_frame_offsets_v1_t must only contain qgf_block_header_v1_t in v1 of QGF"); + +///////////////////////////////////////// +// Frame descriptor + +#define QGF_FRAME_DESCRIPTOR_TYPEID 0x02 + +typedef struct QP_PACKED qgf_frame_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x02, .neg_type_id = (~0x02), .length = 6 } + qp_image_format_t format : 8; // Frame format, see qp.h. + uint8_t flags; // Frame flags, see below. + painter_compression_t compression_scheme : 8; // Compression scheme, see qp.h. + uint8_t transparency_index; // palette index used for transparent pixels (not yet implemented) + uint16_t delay; // frame delay time for animations (in units of milliseconds) +} qgf_frame_v1_t; + +_Static_assert(sizeof(qgf_frame_v1_t) == (sizeof(qgf_block_header_v1_t) + 6), "qgf_frame_v1_t must be 11 bytes in v1 of QGF"); + +#define QGF_FRAME_FLAG_DELTA 0x02 +#define QGF_FRAME_FLAG_TRANSPARENT 0x01 + +///////////////////////////////////////// +// Frame palette descriptor + +#define QGF_FRAME_PALETTE_DESCRIPTOR_TYPEID 0x03 + +typedef struct QP_PACKED qgf_palette_entry_v1_t { + uint8_t h; // hue component: `[0,360)` degrees is mapped to `[0,255]` uint8_t. + uint8_t s; // saturation component: `[0,1]` is mapped to `[0,255]` uint8_t. + uint8_t v; // value component: `[0,1]` is mapped to `[0,255]` uint8_t. +} qgf_palette_entry_v1_t; + +_Static_assert(sizeof(qgf_palette_entry_v1_t) == 3, "Palette entry is not 3 bytes in size"); + +typedef struct QP_PACKED qgf_palette_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x03, .neg_type_id = (~0x03), .length = (N * 3 * sizeof(uint8_t)) } + qgf_palette_entry_v1_t hsv[0]; // N * hsv, where N is the number of palette entries depending on the frame format in the descriptor +} qgf_palette_v1_t; + +_Static_assert(sizeof(qgf_palette_v1_t) == sizeof(qgf_block_header_v1_t), "qgf_palette_v1_t must only contain qgf_block_header_v1_t in v1 of QGF"); + +///////////////////////////////////////// +// Frame delta descriptor + +#define QGF_FRAME_DELTA_DESCRIPTOR_TYPEID 0x04 + +typedef struct QP_PACKED qgf_delta_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x04, .neg_type_id = (~0x04), .length = 8 } + uint16_t left; // The left pixel location to draw the delta image + uint16_t top; // The top pixel location to draw the delta image + uint16_t right; // The right pixel location to to draw the delta image + uint16_t bottom; // The bottom pixel location to to draw the delta image +} qgf_delta_v1_t; + +_Static_assert(sizeof(qgf_delta_v1_t) == (sizeof(qgf_block_header_v1_t) + 8), "qgf_delta_v1_t must be 13 bytes in v1 of QGF"); + +///////////////////////////////////////// +// Frame data descriptor + +#define QGF_FRAME_DATA_DESCRIPTOR_TYPEID 0x05 + +typedef struct QP_PACKED qgf_data_v1_t { + qgf_block_header_v1_t header; // = { .type_id = 0x05, .neg_type_id = (~0x05), .length = N } + uint8_t data[0]; // 0 signifies that this struct is immediately followed by the length of data specified in the header +} qgf_data_v1_t; + +_Static_assert(sizeof(qgf_data_v1_t) == sizeof(qgf_block_header_v1_t), "qgf_data_v1_t must only contain qgf_block_header_v1_t in v1 of QGF"); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QGF API + +uint32_t qgf_get_total_size(qp_stream_t *stream); +bool qgf_validate_stream(qp_stream_t *stream); +bool qgf_validate_block_header(qgf_block_header_v1_t *desc, uint8_t expected_typeid, int32_t expected_length); +bool qgf_read_graphics_descriptor(qp_stream_t *stream, uint16_t *image_width, uint16_t *image_height, uint16_t *frame_count, uint32_t *total_bytes); +bool qgf_parse_format(qp_image_format_t format, uint8_t *bpp, bool *has_palette); +void qgf_seek_to_frame_descriptor(qp_stream_t *stream, uint16_t frame_number); +bool qgf_parse_frame_descriptor(qgf_frame_v1_t *frame_descriptor, uint8_t *bpp, bool *has_palette, bool *is_delta, painter_compression_t *compression_scheme, uint16_t *delay); diff --git a/quantum/painter/qp.c b/quantum/painter/qp.c new file mode 100644 index 0000000000..e292ff6497 --- /dev/null +++ b/quantum/painter/qp.c @@ -0,0 +1,228 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include +#include + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_draw.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Internal driver validation + +static bool validate_driver_vtable(struct painter_driver_t *driver) { + return (driver->driver_vtable && driver->driver_vtable->init && driver->driver_vtable->power && driver->driver_vtable->clear && driver->driver_vtable->viewport && driver->driver_vtable->pixdata && driver->driver_vtable->palette_convert && driver->driver_vtable->append_pixels) ? true : false; +} + +static bool validate_comms_vtable(struct painter_driver_t *driver) { + return (driver->comms_vtable && driver->comms_vtable->comms_init && driver->comms_vtable->comms_start && driver->comms_vtable->comms_stop && driver->comms_vtable->comms_send) ? true : false; +} + +static bool validate_driver_integrity(struct painter_driver_t *driver) { + return validate_driver_vtable(driver) && validate_comms_vtable(driver); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_init + +bool qp_init(painter_device_t device, painter_rotation_t rotation) { + qp_dprintf("qp_init: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + driver->validate_ok = false; + if (!validate_driver_integrity(driver)) { + qp_dprintf("Failed to validate driver integrity in qp_init\n"); + return false; + } + + driver->validate_ok = true; + + if (!qp_comms_init(device)) { + driver->validate_ok = false; + qp_dprintf("qp_init: fail (could not init comms)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_init: fail (could not start comms)\n"); + return false; + } + + // Set the rotation before init + driver->rotation = rotation; + + // Invoke init + bool ret = driver->driver_vtable->init(device, rotation); + qp_comms_stop(device); + qp_dprintf("qp_init: %s\n", ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_power + +bool qp_power(painter_device_t device, bool power_on) { + qp_dprintf("qp_power: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_power: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_power: fail (could not start comms)\n"); + return false; + } + + bool ret = driver->driver_vtable->power(device, power_on); + qp_comms_stop(device); + qp_dprintf("qp_power: %s\n", ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_clear + +bool qp_clear(painter_device_t device) { + qp_dprintf("qp_clear: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_clear: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_clear: fail (could not start comms)\n"); + return false; + } + + bool ret = driver->driver_vtable->clear(device); + qp_comms_stop(device); + qp_dprintf("qp_clear: %s\n", ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_flush + +bool qp_flush(painter_device_t device) { + qp_dprintf("qp_flush: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_flush: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_flush: fail (could not start comms)\n"); + return false; + } + + bool ret = driver->driver_vtable->flush(device); + qp_comms_stop(device); + qp_dprintf("qp_flush: %s\n", ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_get_geometry + +void qp_get_geometry(painter_device_t device, uint16_t *width, uint16_t *height, painter_rotation_t *rotation, uint16_t *offset_x, uint16_t *offset_y) { + qp_dprintf("qp_geometry: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + switch (driver->rotation) { + default: + case QP_ROTATION_0: + case QP_ROTATION_180: + if (width) { + *width = driver->panel_width; + } + if (height) { + *height = driver->panel_height; + } + break; + case QP_ROTATION_90: + case QP_ROTATION_270: + if (width) { + *width = driver->panel_height; + } + if (height) { + *height = driver->panel_width; + } + break; + } + + if (rotation) { + *rotation = driver->rotation; + } + + if (offset_x) { + *offset_x = driver->offset_x; + } + + if (offset_y) { + *offset_y = driver->offset_y; + } + + qp_dprintf("qp_geometry: ok\n"); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_set_viewport_offsets + +void qp_set_viewport_offsets(painter_device_t device, uint16_t offset_x, uint16_t offset_y) { + qp_dprintf("qp_set_viewport_offsets: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + driver->offset_x = offset_x; + driver->offset_y = offset_y; + + qp_dprintf("qp_set_viewport_offsets: ok\n"); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_viewport + +bool qp_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom) { + qp_dprintf("qp_viewport: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_viewport: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_viewport: fail (could not start comms)\n"); + return false; + } + + // Set the viewport + bool ret = driver->driver_vtable->viewport(device, left, top, right, bottom); + qp_dprintf("qp_viewport: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_pixdata + +bool qp_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count) { + qp_dprintf("qp_pixdata: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_pixdata: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_pixdata: fail (could not start comms)\n"); + return false; + } + + bool ret = driver->driver_vtable->pixdata(device, pixel_data, native_pixel_count); + qp_dprintf("qp_pixdata: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret; +} diff --git a/quantum/painter/qp.h b/quantum/painter/qp.h new file mode 100644 index 0000000000..e1c14d156c --- /dev/null +++ b/quantum/painter/qp.h @@ -0,0 +1,453 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include + +#include "deferred_exec.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter global configurables (add to your keyboard's config.h) + +#ifndef QUANTUM_PAINTER_NUM_IMAGES +/** + * @def This controls the maximum number of images that Quantum Painter can load at any one time. Images can be loaded + * using \ref qp_load_image_mem, and can be unloaded by calling \ref qp_close_image. Increasing this number in + * order to load more images increases the amount of RAM required. Image data is not held in RAM, just metadata. + */ +# define QUANTUM_PAINTER_NUM_IMAGES 8 +#endif // QUANTUM_PAINTER_NUM_IMAGES + +#ifndef QUANTUM_PAINTER_NUM_FONTS +/** + * @def This controls the maximum number of fonts that Quantum Painter can load. Fonts can be loaded using + * \ref qp_load_font_mem, and can be unloaded by calling \ref qp_close_font. Increasing this number in order to + * load more fonts increases the amount of RAM required. Font data is not held in RAM, unless + * \ref QUANTUM_PAINTER_LOAD_FONTS_TO_RAM is set to TRUE. + */ +# define QUANTUM_PAINTER_NUM_FONTS 4 +#endif // QUANTUM_PAINTER_NUM_FONTS + +#ifndef QUANTUM_PAINTER_LOAD_FONTS_TO_RAM +/** + * @def This controls whether or not fonts should be cached in RAM. Under normal circumstances, fonts can have quite + * random access patterns, and due to timing of flash memory or external storage, it may be a significant speedup + * moving the font into RAM before use. Defaults to "off", but if it's enabled it will fallback to reading from the + * original location if corresponding RAM could not be allocated (such as being too large). + */ +# define QUANTUM_PAINTER_LOAD_FONTS_TO_RAM FALSE +#endif + +#ifndef QUANTUM_PAINTER_CONCURRENT_ANIMATIONS +/** + * @def This controls the maximum number of animations that Quantum Painter can play simultaneously. Increasing this + * number in order to play more animations at the same time increases the amount of RAM required. + */ +# define QUANTUM_PAINTER_CONCURRENT_ANIMATIONS 4 +#endif // QUANTUM_PAINTER_CONCURRENT_ANIMATIONS + +#ifndef QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE +/** + * @def This controls the maximum size of the pixel data buffer used for single blocks of transmission. Larger buffers + * means more data is processed at one time, with less frequent transmissions, at the cost of RAM. + */ +# define QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE 32 +#endif + +#ifndef QUANTUM_PAINTER_SUPPORTS_256_PALETTE +/** + * @def This controls whether 256-color palettes are supported. This has relatively hefty requirements on RAM -- at + * least 1kB extra is required just to store the palette information, with more required for other metadata. + */ +# define QUANTUM_PAINTER_SUPPORTS_256_PALETTE FALSE +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter types + +/** + * @typedef A handle to a Quantum Painter device, such as an LCD or OLED. Most Quantum Painter APIs require this + * argument in order to perform operations on the display. + */ +typedef const void *painter_device_t; + +/** + * @typedef The desired rotation of a panel. Used as a parameter to \ref qp_init, and can be queried by + * \ref qp_get_geometry. + */ +typedef enum { QP_ROTATION_0, QP_ROTATION_90, QP_ROTATION_180, QP_ROTATION_270 } painter_rotation_t; + +/** + * @typedef A descriptor for a Quantum Painter image. + */ +typedef struct painter_image_desc_t { + uint16_t width; ///< Image width + uint16_t height; ///< Image height + uint16_t frame_count; ///< Number of frames in this image +} painter_image_desc_t; + +/** + * @typedef A handle to a Quantum Painter image. + */ +typedef const painter_image_desc_t *painter_image_handle_t; + +/** + * @typedef A descriptor for a Quantum Painter font. + */ +typedef struct painter_font_desc_t { + uint8_t line_height; ///< The number of pixels in height for each line +} painter_font_desc_t; + +/** + * @typedef A handle to a Quantum Painter font. + */ +typedef const painter_font_desc_t *painter_font_handle_t; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API + +/** + * Initialize a device and set its rotation. + * + * @param device[in] the handle of the device to initialize + * @param rotation[in] the rotation to use + * @return true if initialization succeeded + * @return false if initialization failed + */ +bool qp_init(painter_device_t device, painter_rotation_t rotation); + +/** + * Controls whether a display is on or off. + * + * @note If backlighting is used to control brightness (such as for an LCD), it will need to be handled external to + * Quantum Painter. + * + * @param device[in] the handle of the device to control + * @param power_on[in] whether or not the device should be on + * @return true if controlling the power state succeeded + * @return false if controlling the power state failed + */ +bool qp_power(painter_device_t device, bool power_on); + +/** + * Clears a device's screen. + * + * @param device[in] the handle of the device to control + * @return true if clearing the screen succeeded + * @return false if clearing the screen failed + */ +bool qp_clear(painter_device_t device); + +/** + * Transmits any outstanding data to the screen in order to persist all changes to the display. + * + * @note Drivers without internal framebuffers will likely ignore this API. + * + * @param device[in] the handle of the device to control + * @return true if flushing changes to the screen succeeded + * @return false if flushing changes to the screen failed + */ +bool qp_flush(painter_device_t device); + +/** + * Retrieves the size, rotation, and offsets for the display. + * + * @note Any arguments of NULL will be ignored. + * + * @param device[in] the handle of the device to control + * @param width[out] the device's width + * @param height[out] the device's height + * @param rotation[out] the device's rotation + * @param offset_x[out] the device's x-offset applied while drawing + * @param offset_y[out] the device's y-offset applied while drawing + */ +void qp_get_geometry(painter_device_t device, uint16_t *width, uint16_t *height, painter_rotation_t *rotation, uint16_t *offset_x, uint16_t *offset_y); + +/** + * Allows repositioning of the viewport if the panel geometry offsets are non-zero. + * + * @param device[in] the handle of the device to control + * @param offset_x[in] the device's x-offset applied while drawing + * @param offset_y[in] the device's y-offset applied while drawing + */ +void qp_set_viewport_offsets(painter_device_t device, uint16_t offset_x, uint16_t offset_y); + +/** + * Sets a pixel to the specified color. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position to draw onto the device + * @param y[in] the y-position to draw onto the device + * @param hue[in] the hue to use, with 0-360 mapped to 0-255 + * @param sat[in] the saturation to use, with 0-100% mapped to 0-255 + * @param val[in] the value to use, with 0-100% mapped to 0-255 + * @return true if setting the pixel succeeded + * @return false if setting the pixel failed + */ +bool qp_setpixel(painter_device_t device, uint16_t x, uint16_t y, uint8_t hue, uint8_t sat, uint8_t val); + +/** + * Draws a line using the specified color. + * + * @param device[in] the handle of the device to control + * @param x0[in] the device's x-position to start + * @param y0[in] the device's y-position to start + * @param x1[in] the device's x-position to finish + * @param y1[in] the device's y-position to finish + * @param hue[in] the hue to use, with 0-360 mapped to 0-255 + * @param sat[in] the saturation to use, with 0-100% mapped to 0-255 + * @param val[in] the value to use, with 0-100% mapped to 0-255 + * @return true if drawing the line succeeded + * @return false if drawing the line failed + */ +bool qp_line(painter_device_t device, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t hue, uint8_t sat, uint8_t val); + +/** + * Draws a rectangle using the specified color, optionally filled. + * + * @param device[in] the handle of the device to control + * @param left[in] the device's x-position to start + * @param top[in] the device's y-position to start + * @param right[in] the device's x-position to finish + * @param bottom[in] the device's y-position to finish + * @param hue[in] the hue to use, with 0-360 mapped to 0-255 + * @param sat[in] the saturation to use, with 0-100% mapped to 0-255 + * @param val[in] the value to use, with 0-100% mapped to 0-255 + * @param filled[in] whether the rectangle should be filled + * @return true if drawing the rectangle succeeded + * @return false if drawing the rectangle failed + */ +bool qp_rect(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint8_t hue, uint8_t sat, uint8_t val, bool filled); + +/** + * Draws a circle using the specified color, optionally filled. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position of the centre of the circle to draw onto the device + * @param y[in] the y-position of the centre of the circle to draw onto the device + * @param radius[in] the radius of the circle to draw + * @param hue[in] the hue to use, with 0-360 mapped to 0-255 + * @param sat[in] the saturation to use, with 0-100% mapped to 0-255 + * @param val[in] the value to use, with 0-100% mapped to 0-255 + * @param filled[in] whether the circle should be filled + * @return true if drawing the circle succeeded + * @return false if drawing the circle failed + */ +bool qp_circle(painter_device_t device, uint16_t x, uint16_t y, uint16_t radius, uint8_t hue, uint8_t sat, uint8_t val, bool filled); + +/** + * Draws a ellipse using the specified color, optionally filled. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position of the centre of the ellipse to draw onto the device + * @param y[in] the y-position of the centre of the ellipse to draw onto the device + * @param sizex[in] the horizontal size of the ellipse + * @param sizey[in] the vertical size of the ellipse + * @param hue[in] the hue to use, with 0-360 mapped to 0-255 + * @param sat[in] the saturation to use, with 0-100% mapped to 0-255 + * @param val[in] the value to use, with 0-100% mapped to 0-255 + * @param filled[in] whether the ellipse should be filled + * @return true if drawing the ellipse succeeded + * @return false if drawing the ellipse failed + */ +bool qp_ellipse(painter_device_t device, uint16_t x, uint16_t y, uint16_t sizex, uint16_t sizey, uint8_t hue, uint8_t sat, uint8_t val, bool filled); + +/** + * Sets up the location on the display to stream raw pixel data to the display, using \ref qp_pixdata. + * + * @note This is for advanced uses only, and should not be required for normal Quantum Painter functionality. + * + * @param device[in] the handle of the device to control + * @param left[in] the device's x-position to start + * @param top[in] the device's y-position to start + * @param right[in] the device's x-position to finish + * @param bottom[in] the device's y-position to finish + * @return true if setting the viewport succeeded + * @return false if setting the viewport failed + */ +bool qp_viewport(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom); + +/** + * Streams raw pixel data (in the native panel format) to the area previously set by \ref qp_viewport. + * + * @note This is for advanced uses only, and should not be required for normal Quantum Painter functionality. + * + * @param device[in] the handle of the device to control + * @param pixel_data[in] pointer to buffer data + * @param native_pixel_count[in] the number of pixels to transmit + * @return true if streaming of data succeeded + * @return false if streaming of data failed + */ +bool qp_pixdata(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count); + +/** + * Loads an image into memory. + * + * @note Images can be unloaded by calling \ref qp_close_image. + * + * @param buffer[in] the image data to load + * @return an image handle usable with \ref qp_drawimage, \ref qp_drawimage_recolor, \ref qp_animate, and + * \ref qp_animate_recolor. + * @return NULL if loading the image failed + */ +painter_image_handle_t qp_load_image_mem(const void *buffer); + +/** + * Closes an image handle when no longer in use. + * + * @param image[in] the handle of the image to unload + * @return true if unloading the image succeeded + * @return false if unloading the image failed + */ +bool qp_close_image(painter_image_handle_t image); + +/** + * Draws an image to the display. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the image should be drawn onto the device + * @param y[in] the y-position where the image should be drawn onto the device + * @param image[in] the handle of the image to draw + * @return true if drawing the image succeeded + * @return false if drawing the image failed + */ +bool qp_drawimage(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); + +/** + * Draws an image to the display, recoloring monochrome images to the desired foreground/background. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the image should be drawn onto the device + * @param y[in] the y-position where the image should be drawn onto the device + * @param image[in] the handle of the image to draw + * @param hue_fg[in] the foreground hue to use, with 0-360 mapped to 0-255 + * @param sat_fg[in] the foreground saturation to use, with 0-100% mapped to 0-255 + * @param val_fg[in] the foreground value to use, with 0-100% mapped to 0-255 + * @param hue_bg[in] the background hue to use, with 0-360 mapped to 0-255 + * @param sat_bg[in] the background saturation to use, with 0-100% mapped to 0-255 + * @param val_bg[in] the background value to use, with 0-100% mapped to 0-255 + * @return true if drawing the image succeeded + * @return false if drawing the image failed + */ +bool qp_drawimage_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); + +/** + * Draws an animation to the display. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the image should be drawn onto the device + * @param y[in] the y-position where the image should be drawn onto the device + * @param image[in] the handle of the image to draw + * @return the \ref deferred_token to use with \ref qp_stop_animation in order to stop animating + * @return INVALID_DEFERRED_TOKEN if animating the image failed + */ +deferred_token qp_animate(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image); + +/** + * Draws an animation to the display, recoloring monochrome images to the desired foreground/background. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the image should be drawn onto the device + * @param y[in] the y-position where the image should be drawn onto the device + * @param image[in] the handle of the image to draw + * @param hue_fg[in] the foreground hue to use, with 0-360 mapped to 0-255 + * @param sat_fg[in] the foreground saturation to use, with 0-100% mapped to 0-255 + * @param val_fg[in] the foreground value to use, with 0-100% mapped to 0-255 + * @param hue_bg[in] the background hue to use, with 0-360 mapped to 0-255 + * @param sat_bg[in] the background saturation to use, with 0-100% mapped to 0-255 + * @param val_bg[in] the background value to use, with 0-100% mapped to 0-255 + * @return the \ref deferred_token to use with \ref qp_stop_animation in order to stop animating + * @return INVALID_DEFERRED_TOKEN if animating the image failed + */ +deferred_token qp_animate_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); + +/** + * Cancels a running animation. + * + * @param anim_token[in] the animation token returned by \ref qp_animate, or \ref qp_animate_recolor. + */ +void qp_stop_animation(deferred_token anim_token); + +/** + * Loads a font into memory. + * + * @note Fonts can be unloaded by calling \ref qp_close_font. + * + * @param buffer[in] the font data to load + * @return an image handle usable with \ref qp_textwidth, \ref qp_drawtext, and \ref qp_drawtext_recolor. + * @return NULL if loading the font failed + */ +painter_font_handle_t qp_load_font_mem(const void *buffer); + +/** + * Closes a font handle when no longer in use. + * + * @param font[in] the handle of the font to unload + * @return true if unloading the font succeeded + * @return false if unloading the font failed + */ +bool qp_close_font(painter_font_handle_t font); + +/** + * Measures the width (in pixels) of the supplied string, given the specified font. + * + * @param font[in] the handle of the font + * @param str[in] the string to measure + * @return the width (in pixels) needed to draw the specified string + */ +int16_t qp_textwidth(painter_font_handle_t font, const char *str); + +/** + * Draws text to the display. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the text should be drawn onto the device + * @param y[in] the y-position where the text should be drawn onto the device + * @param font[in] the handle of the font + * @param str[in] the string to draw + * @return the width (in pixels) used when drawing the specified string + */ +int16_t qp_drawtext(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str); + +/** + * Draws text to the display, recoloring monochrome fonts to the desired foreground/background. + * + * @param device[in] the handle of the device to control + * @param x[in] the x-position where the text should be drawn onto the device + * @param y[in] the y-position where the text should be drawn onto the device + * @param font[in] the handle of the font + * @param str[in] the string to draw + * @param hue_fg[in] the foreground hue to use, with 0-360 mapped to 0-255 + * @param sat_fg[in] the foreground saturation to use, with 0-100% mapped to 0-255 + * @param val_fg[in] the foreground value to use, with 0-100% mapped to 0-255 + * @param hue_bg[in] the background hue to use, with 0-360 mapped to 0-255 + * @param sat_bg[in] the background saturation to use, with 0-100% mapped to 0-255 + * @param val_bg[in] the background value to use, with 0-100% mapped to 0-255 + * @return the width (in pixels) used when drawing the specified string + */ +int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter Drivers + +#ifdef QUANTUM_PAINTER_ILI9163_ENABLE +# include "qp_ili9163.h" +#endif // QUANTUM_PAINTER_ILI9163_ENABLE + +#ifdef QUANTUM_PAINTER_ILI9341_ENABLE +# include "qp_ili9341.h" +#endif // QUANTUM_PAINTER_ILI9341_ENABLE + +#ifdef QUANTUM_PAINTER_ST7789_ENABLE +# include "qp_st7789.h" +#endif // QUANTUM_PAINTER_ST7789_ENABLE + +#ifdef QUANTUM_PAINTER_GC9A01_ENABLE +# include "qp_gc9a01.h" +#endif // QUANTUM_PAINTER_GC9A01_ENABLE + +#ifdef QUANTUM_PAINTER_SSD1351_ENABLE +# include "qp_ssd1351.h" +#endif // QUANTUM_PAINTER_SSD1351_ENABLE diff --git a/quantum/painter/qp_comms.c b/quantum/painter/qp_comms.c new file mode 100644 index 0000000000..dc17b49460 --- /dev/null +++ b/quantum/painter/qp_comms.c @@ -0,0 +1,72 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_comms.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Base comms APIs + +bool qp_comms_init(painter_device_t device) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_comms_init: fail (validation_ok == false)\n"); + return false; + } + + return driver->comms_vtable->comms_init(device); +} + +bool qp_comms_start(painter_device_t device) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_comms_start: fail (validation_ok == false)\n"); + return false; + } + + return driver->comms_vtable->comms_start(device); +} + +void qp_comms_stop(painter_device_t device) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_comms_stop: fail (validation_ok == false)\n"); + return; + } + + driver->comms_vtable->comms_stop(device); +} + +uint32_t qp_comms_send(painter_device_t device, const void *data, uint32_t byte_count) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_comms_send: fail (validation_ok == false)\n"); + return false; + } + + return driver->comms_vtable->comms_send(device, data, byte_count); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Comms APIs that use a D/C pin + +void qp_comms_command(painter_device_t device, uint8_t cmd) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct painter_comms_with_command_vtable_t *comms_vtable = (struct painter_comms_with_command_vtable_t *)driver->comms_vtable; + comms_vtable->send_command(device, cmd); +} + +void qp_comms_command_databyte(painter_device_t device, uint8_t cmd, uint8_t data) { + qp_comms_command(device, cmd); + qp_comms_send(device, &data, sizeof(data)); +} + +uint32_t qp_comms_command_databuf(painter_device_t device, uint8_t cmd, const void *data, uint32_t byte_count) { + qp_comms_command(device, cmd); + return qp_comms_send(device, data, byte_count); +} + +void qp_comms_bulk_command_sequence(painter_device_t device, const uint8_t *sequence, size_t sequence_len) { + struct painter_driver_t * driver = (struct painter_driver_t *)device; + struct painter_comms_with_command_vtable_t *comms_vtable = (struct painter_comms_with_command_vtable_t *)driver->comms_vtable; + comms_vtable->bulk_command_sequence(device, sequence, sequence_len); +} diff --git a/quantum/painter/qp_comms.h b/quantum/painter/qp_comms.h new file mode 100644 index 0000000000..8fbf25c201 --- /dev/null +++ b/quantum/painter/qp_comms.h @@ -0,0 +1,25 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include + +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Base comms APIs + +bool qp_comms_init(painter_device_t device); +bool qp_comms_start(painter_device_t device); +void qp_comms_stop(painter_device_t device); +uint32_t qp_comms_send(painter_device_t device, const void* data, uint32_t byte_count); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Comms APIs that use a D/C pin + +void qp_comms_command(painter_device_t device, uint8_t cmd); +void qp_comms_command_databyte(painter_device_t device, uint8_t cmd, uint8_t data); +uint32_t qp_comms_command_databuf(painter_device_t device, uint8_t cmd, const void* data, uint32_t byte_count); +void qp_comms_bulk_command_sequence(painter_device_t device, const uint8_t* sequence, size_t sequence_len); diff --git a/quantum/painter/qp_draw.h b/quantum/painter/qp_draw.h new file mode 100644 index 0000000000..7094d80eaa --- /dev/null +++ b/quantum/painter/qp_draw.h @@ -0,0 +1,85 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "qp_internal.h" +#include "qp_stream.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter utility functions + +// Global variable used for native pixel data streaming. +extern uint8_t qp_internal_global_pixdata_buffer[QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE]; + +// Check if the supplied bpp is capable of being rendered +bool qp_internal_bpp_capable(uint8_t bits_per_pixel); + +// Returns the number of pixels that can fit in the pixdata buffer +uint32_t qp_internal_num_pixels_in_buffer(painter_device_t device); + +// Fills the supplied buffer with equivalent native pixels matching the supplied HSV +void qp_internal_fill_pixdata(painter_device_t device, uint32_t num_pixels, uint8_t hue, uint8_t sat, uint8_t val); + +// qp_setpixel internal implementation, but uses the global pixdata buffer with pre-converted native pixel. Only the first pixel is used. +bool qp_internal_setpixel_impl(painter_device_t device, uint16_t x, uint16_t y); + +// qp_rect internal implementation, but uses the global pixdata buffer with pre-converted native pixels. +bool qp_internal_fillrect_helper_impl(painter_device_t device, uint16_t l, uint16_t t, uint16_t r, uint16_t b); + +// Convert from input pixel data + palette to equivalent pixels +typedef int16_t (*qp_internal_byte_input_callback)(void* cb_arg); +typedef bool (*qp_internal_pixel_output_callback)(qp_pixel_t* palette, uint8_t index, void* cb_arg); +bool qp_internal_decode_palette(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_pixel_t* palette, qp_internal_pixel_output_callback output_callback, void* output_arg); +bool qp_internal_decode_grayscale(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_internal_pixel_output_callback output_callback, void* output_arg); +bool qp_internal_decode_recolor(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, qp_internal_pixel_output_callback output_callback, void* output_arg); + +// Global variable used for interpolated pixel lookup table. +#if QUANTUM_PAINTER_SUPPORTS_256_PALETTE +extern qp_pixel_t qp_internal_global_pixel_lookup_table[256]; +#else +extern qp_pixel_t qp_internal_global_pixel_lookup_table[16]; +#endif + +// Generates a color-interpolated lookup table based off the number of items, from foreground to background, for use with monochrome image rendering. +// Returns true if a palette was created, false if the palette is reused. +// As this uses a global, this may present a problem if using the same parameters but a different screen converts pixels -- use qp_internal_invalidate_palette() below to reset. +bool qp_internal_interpolate_palette(qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, int16_t steps); + +// Resets the global palette so that it can be regenerated. Only needed if the colors are identical, but a different display is used with a different internal pixel format. +void qp_internal_invalidate_palette(void); + +// Helper shared between image and font rendering -- sets up the global palette to match the palette block specified in the asset. Expects the stream to be positioned at the start of the block header. +bool qp_internal_load_qgf_palette(qp_stream_t* stream, uint8_t bpp); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter codec functions + +enum qp_internal_rle_mode_t { + MARKER_BYTE, + REPEATING_RUN, + NON_REPEATING_RUN, +}; + +struct qp_internal_byte_input_state { + painter_device_t device; + qp_stream_t* src_stream; + int16_t curr; + union { + // RLE-specific + struct { + enum qp_internal_rle_mode_t mode; + uint8_t remain; // number of bytes remaining in the current mode + } rle; + }; +}; + +struct qp_internal_pixel_output_state { + painter_device_t device; + uint32_t pixel_write_pos; + uint32_t max_pixels; +}; + +bool qp_internal_pixel_appender(qp_pixel_t* palette, uint8_t index, void* cb_arg); + +qp_internal_byte_input_callback qp_internal_prepare_input_state(struct qp_internal_byte_input_state* input_state, painter_compression_t compression); diff --git a/quantum/painter/qp_draw_circle.c b/quantum/painter/qp_draw_circle.c new file mode 100644 index 0000000000..edaae35835 --- /dev/null +++ b/quantum/painter/qp_draw_circle.c @@ -0,0 +1,172 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp.h" +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_draw.h" + +// Utilize 8-way symmetry to draw circles +static bool qp_circle_helper_impl(painter_device_t device, uint16_t centerx, uint16_t centery, uint16_t offsetx, uint16_t offsety, bool filled) { + /* + Circles have the property of 8-way symmetry, so eight pixels can be drawn + for each computed [offsetx,offsety] given the center coordinates + represented by [centerx,centery]. + + For filled circles, we can draw horizontal lines between each pair of + pixels with the same final value of y. + + Two special cases exist and have been optimized: + 1) offsetx == offsety (the final point), makes half the coordinates + equivalent, so we can omit them (and the corresponding fill lines) + 2) offsetx == 0 (the starting point) means that some horizontal lines + would be a single pixel in length, so we write individual pixels instead. + This also makes half the symmetrical points identical to their twins, + so we only need four points or two points and one line + */ + + int16_t xpx = ((int16_t)centerx) + ((int16_t)offsetx); + int16_t xmx = ((int16_t)centerx) - ((int16_t)offsetx); + int16_t xpy = ((int16_t)centerx) + ((int16_t)offsety); + int16_t xmy = ((int16_t)centerx) - ((int16_t)offsety); + int16_t ypx = ((int16_t)centery) + ((int16_t)offsetx); + int16_t ymx = ((int16_t)centery) - ((int16_t)offsetx); + int16_t ypy = ((int16_t)centery) + ((int16_t)offsety); + int16_t ymy = ((int16_t)centery) - ((int16_t)offsety); + + if (offsetx == 0) { + if (!qp_internal_setpixel_impl(device, centerx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, centerx, ymy)) { + return false; + } + if (filled) { + if (!qp_internal_fillrect_helper_impl(device, xpy, centery, xmy, centery)) { + return false; + } + } else { + if (!qp_internal_setpixel_impl(device, xpy, centery)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmy, centery)) { + return false; + } + } + } else if (offsetx == offsety) { + if (filled) { + if (!qp_internal_fillrect_helper_impl(device, xpy, ypy, xmy, ypy)) { + return false; + } + if (!qp_internal_fillrect_helper_impl(device, xpy, ymy, xmy, ymy)) { + return false; + } + } else { + if (!qp_internal_setpixel_impl(device, xpy, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmy, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpy, ymy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmy, ymy)) { + return false; + } + } + + } else { + if (filled) { + if (!qp_internal_fillrect_helper_impl(device, xpx, ypy, xmx, ypy)) { + return false; + } + if (!qp_internal_fillrect_helper_impl(device, xpx, ymy, xmx, ymy)) { + return false; + } + if (!qp_internal_fillrect_helper_impl(device, xpy, ypx, xmy, ypx)) { + return false; + } + if (!qp_internal_fillrect_helper_impl(device, xpy, ymx, xmy, ymx)) { + return false; + } + } else { + if (!qp_internal_setpixel_impl(device, xpx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpx, ymy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmx, ymy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpy, ypx)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmy, ypx)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpy, ymx)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmy, ymx)) { + return false; + } + } + } + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_circle + +bool qp_circle(painter_device_t device, uint16_t x, uint16_t y, uint16_t radius, uint8_t hue, uint8_t sat, uint8_t val, bool filled) { + qp_dprintf("qp_circle: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_circle: fail (validation_ok == false)\n"); + return false; + } + + // plot the initial set of points for x, y and r + int16_t xcalc = 0; + int16_t ycalc = (int16_t)radius; + int16_t err = ((5 - (radius >> 2)) >> 2); + + qp_internal_fill_pixdata(device, (radius * 2) + 1, hue, sat, val); + + if (!qp_comms_start(device)) { + qp_dprintf("qp_circle: fail (could not start comms)\n"); + return false; + } + + bool ret = true; + if (!qp_circle_helper_impl(device, x, y, xcalc, ycalc, filled)) { + ret = false; + } + + if (ret) { + while (xcalc < ycalc) { + xcalc++; + if (err < 0) { + err += (xcalc << 1) + 1; + } else { + ycalc--; + err += ((xcalc - ycalc) << 1) + 1; + } + if (!qp_circle_helper_impl(device, x, y, xcalc, ycalc, filled)) { + ret = false; + break; + } + } + } + + qp_dprintf("qp_circle: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret; +} diff --git a/quantum/painter/qp_draw_codec.c b/quantum/painter/qp_draw_codec.c new file mode 100644 index 0000000000..438dce3994 --- /dev/null +++ b/quantum/painter/qp_draw_codec.c @@ -0,0 +1,142 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_draw.h" +#include "qp_comms.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Palette / Monochrome-format decoder + +static const qp_pixel_t qp_pixel_white = {.hsv888 = {.h = 0, .s = 0, .v = 255}}; +static const qp_pixel_t qp_pixel_black = {.hsv888 = {.h = 0, .s = 0, .v = 0}}; + +bool qp_internal_bpp_capable(uint8_t bits_per_pixel) { +#if !(QUANTUM_PAINTER_SUPPORTS_256_PALETTE) + if (bits_per_pixel > 4) { + qp_dprintf("qp_internal_decode_palette: image bpp greater than 4\n"); + return false; + } +#endif + + if (bits_per_pixel > 8) { + qp_dprintf("qp_internal_decode_palette: image bpp greater than 8\n"); + return false; + } + + return true; +} + +bool qp_internal_decode_palette(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_pixel_t* palette, qp_internal_pixel_output_callback output_callback, void* output_arg) { + const uint8_t pixel_bitmask = (1 << bits_per_pixel) - 1; + const uint8_t pixels_per_byte = 8 / bits_per_pixel; + uint32_t remaining_pixels = pixel_count; // don't try to derive from byte_count, we may not use an entire byte + while (remaining_pixels > 0) { + uint8_t byteval = input_callback(input_arg); + if (byteval < 0) { + return false; + } + uint8_t loop_pixels = remaining_pixels < pixels_per_byte ? remaining_pixels : pixels_per_byte; + for (uint8_t q = 0; q < loop_pixels; ++q) { + if (!output_callback(palette, byteval & pixel_bitmask, output_arg)) { + return false; + } + byteval >>= bits_per_pixel; + } + remaining_pixels -= loop_pixels; + } + return true; +} + +bool qp_internal_decode_grayscale(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_internal_pixel_output_callback output_callback, void* output_arg) { + return qp_internal_decode_recolor(device, pixel_count, bits_per_pixel, input_callback, input_arg, qp_pixel_white, qp_pixel_black, output_callback, output_arg); +} + +bool qp_internal_decode_recolor(painter_device_t device, uint32_t pixel_count, uint8_t bits_per_pixel, qp_internal_byte_input_callback input_callback, void* input_arg, qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, qp_internal_pixel_output_callback output_callback, void* output_arg) { + struct painter_driver_t* driver = (struct painter_driver_t*)device; + int16_t steps = 1 << bits_per_pixel; // number of items we need to interpolate + if (qp_internal_interpolate_palette(fg_hsv888, bg_hsv888, steps)) { + if (!driver->driver_vtable->palette_convert(device, steps, qp_internal_global_pixel_lookup_table)) { + return false; + } + } + + return qp_internal_decode_palette(device, pixel_count, bits_per_pixel, input_callback, input_arg, qp_internal_global_pixel_lookup_table, output_callback, output_arg); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Progressive pull of bytes, push of pixels + +static inline int16_t qp_drawimage_byte_uncompressed_decoder(void* cb_arg) { + struct qp_internal_byte_input_state* state = (struct qp_internal_byte_input_state*)cb_arg; + state->curr = qp_stream_get(state->src_stream); + return state->curr; +} + +static inline int16_t qp_drawimage_byte_rle_decoder(void* cb_arg) { + struct qp_internal_byte_input_state* state = (struct qp_internal_byte_input_state*)cb_arg; + + // Work out if we're parsing the initial marker byte + if (state->rle.mode == MARKER_BYTE) { + uint8_t c = qp_stream_get(state->src_stream); + if (c >= 128) { + state->rle.mode = NON_REPEATING_RUN; // non-repeated run + state->rle.remain = c - 127; + } else { + state->rle.mode = REPEATING_RUN; // repeated run + state->rle.remain = c; + } + + state->curr = qp_stream_get(state->src_stream); + } + + // Work out which byte we're returning + uint8_t c = state->curr; + + // Decrement the counter of the bytes remaining + state->rle.remain--; + + if (state->rle.remain > 0) { + // If we're in a non-repeating run, queue up the next byte + if (state->rle.mode == NON_REPEATING_RUN) { + state->curr = qp_stream_get(state->src_stream); + } + } else { + // Swap back to querying the marker byte mode + state->rle.mode = MARKER_BYTE; + } + + return c; +} + +bool qp_internal_pixel_appender(qp_pixel_t* palette, uint8_t index, void* cb_arg) { + struct qp_internal_pixel_output_state* state = (struct qp_internal_pixel_output_state*)cb_arg; + struct painter_driver_t* driver = (struct painter_driver_t*)state->device; + + if (!driver->driver_vtable->append_pixels(state->device, qp_internal_global_pixdata_buffer, palette, state->pixel_write_pos++, 1, &index)) { + return false; + } + + // If we've hit the transmit limit, send out the entire buffer and reset the write position + if (state->pixel_write_pos == state->max_pixels) { + if (!driver->driver_vtable->pixdata(state->device, qp_internal_global_pixdata_buffer, state->pixel_write_pos)) { + return false; + } + state->pixel_write_pos = 0; + } + + return true; +} + +qp_internal_byte_input_callback qp_internal_prepare_input_state(struct qp_internal_byte_input_state* input_state, painter_compression_t compression) { + switch (compression) { + case IMAGE_UNCOMPRESSED: + return qp_drawimage_byte_uncompressed_decoder; + case IMAGE_COMPRESSED_RLE: + input_state->rle.mode = MARKER_BYTE; + input_state->rle.remain = 0; + return qp_drawimage_byte_rle_decoder; + default: + return NULL; + } +} diff --git a/quantum/painter/qp_draw_core.c b/quantum/painter/qp_draw_core.c new file mode 100644 index 0000000000..c31c734132 --- /dev/null +++ b/quantum/painter/qp_draw_core.c @@ -0,0 +1,294 @@ +// Copyright 2021-2022 Nick Brassel (@tzarc) +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_draw.h" +#include "qgf.h" + +_Static_assert((QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE > 0) && (QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE % 16) == 0, "QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE needs to be a non-zero multiple of 16"); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Global variables +// +// NOTE: The variables in this section are intentionally outside a stack frame. They are able to be defined with larger +// sizes than the normal stack frames would allow, and as such need to be external. +// +// **** DO NOT refactor this and decide to place the variables inside the function calling them -- you will **** +// **** very likely get artifacts rendered to the screen as a result. **** +// + +// Buffer used for transmitting native pixel data to the downstream device. +uint8_t qp_internal_global_pixdata_buffer[QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE]; + +// Static buffer to contain a generated color palette +static bool generated_palette = false; +static int16_t generated_steps = -1; +static qp_pixel_t interpolated_fg_hsv888; +static qp_pixel_t interpolated_bg_hsv888; +#if QUANTUM_PAINTER_SUPPORTS_256_PALETTE +qp_pixel_t qp_internal_global_pixel_lookup_table[256]; +#else +qp_pixel_t qp_internal_global_pixel_lookup_table[16]; +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Helpers + +uint32_t qp_internal_num_pixels_in_buffer(painter_device_t device) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + return ((QUANTUM_PAINTER_PIXDATA_BUFFER_SIZE * 8) / driver->native_bits_per_pixel); +} + +// qp_setpixel internal implementation, but accepts a buffer with pre-converted native pixel. Only the first pixel is used. +bool qp_internal_setpixel_impl(painter_device_t device, uint16_t x, uint16_t y) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + return driver->driver_vtable->viewport(device, x, y, x, y) && driver->driver_vtable->pixdata(device, qp_internal_global_pixdata_buffer, 1); +} + +// Fills the global native pixel buffer with equivalent pixels matching the supplied HSV +void qp_internal_fill_pixdata(painter_device_t device, uint32_t num_pixels, uint8_t hue, uint8_t sat, uint8_t val) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + uint32_t pixels_in_pixdata = qp_internal_num_pixels_in_buffer(device); + num_pixels = QP_MIN(pixels_in_pixdata, num_pixels); + + // Convert the color to native pixel format + qp_pixel_t color = {.hsv888 = {.h = hue, .s = sat, .v = val}}; + driver->driver_vtable->palette_convert(device, 1, &color); + + // Append the required number of pixels + uint8_t palette_idx = 0; + for (uint32_t i = 0; i < num_pixels; ++i) { + driver->driver_vtable->append_pixels(device, qp_internal_global_pixdata_buffer, &color, i, 1, &palette_idx); + } +} + +// Resets the global palette so that it can be regenerated. Only needed if the colors are identical, but a different display is used with a different internal pixel format. +void qp_internal_invalidate_palette(void) { + generated_palette = false; + generated_steps = -1; +} + +// Interpolates between two colors to generate a palette +bool qp_internal_interpolate_palette(qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, int16_t steps) { + // Check if we need to generate a new palette -- if the input parameters match then assume the palette can stay unchanged. + // This may present a problem if using the same parameters but a different screen converts pixels -- use qp_internal_invalidate_palette() to reset. + if (generated_palette == true && generated_steps == steps && memcmp(&interpolated_fg_hsv888, &fg_hsv888, sizeof(fg_hsv888)) == 0 && memcmp(&interpolated_bg_hsv888, &bg_hsv888, sizeof(bg_hsv888)) == 0) { + // We already have the correct palette, no point regenerating it. + return false; + } + + // Save the parameters so we know whether we can skip generation + generated_palette = true; + generated_steps = steps; + interpolated_fg_hsv888 = fg_hsv888; + interpolated_bg_hsv888 = bg_hsv888; + + int16_t hue_fg = fg_hsv888.hsv888.h; + int16_t hue_bg = bg_hsv888.hsv888.h; + + // Make sure we take the "shortest" route from one hue to the other + if ((hue_fg - hue_bg) >= 128) { + hue_bg += 256; + } else if ((hue_fg - hue_bg) <= -128) { + hue_bg -= 256; + } + + // Interpolate each of the lookup table entries + for (int16_t i = 0; i < steps; ++i) { + qp_internal_global_pixel_lookup_table[i].hsv888.h = (uint8_t)((hue_fg - hue_bg) * i / (steps - 1) + hue_bg); + qp_internal_global_pixel_lookup_table[i].hsv888.s = (uint8_t)((fg_hsv888.hsv888.s - bg_hsv888.hsv888.s) * i / (steps - 1) + bg_hsv888.hsv888.s); + qp_internal_global_pixel_lookup_table[i].hsv888.v = (uint8_t)((fg_hsv888.hsv888.v - bg_hsv888.hsv888.v) * i / (steps - 1) + bg_hsv888.hsv888.v); + + qp_dprintf("qp_internal_interpolate_palette: %3d of %d -- H: %3d, S: %3d, V: %3d\n", (int)(i + 1), (int)steps, (int)qp_internal_global_pixel_lookup_table[i].hsv888.h, (int)qp_internal_global_pixel_lookup_table[i].hsv888.s, (int)qp_internal_global_pixel_lookup_table[i].hsv888.v); + } + + return true; +} + +// Helper shared between image and font rendering -- sets up the global palette to match the palette block specified in the asset. Expects the stream to be positioned at the start of the block header. +bool qp_internal_load_qgf_palette(qp_stream_t *stream, uint8_t bpp) { + qgf_palette_v1_t palette_descriptor; + if (qp_stream_read(&palette_descriptor, sizeof(qgf_palette_v1_t), 1, stream) != 1) { + qp_dprintf("Failed to read palette_descriptor, expected length was not %d\n", (int)sizeof(qgf_palette_v1_t)); + return false; + } + + // BPP determines the number of palette entries, each entry is a HSV888 triplet. + const uint16_t palette_entries = 1u << bpp; + + // Ensure we aren't reusing any palette + qp_internal_invalidate_palette(); + + // Read the palette entries + for (uint16_t i = 0; i < palette_entries; ++i) { + // Read the palette entry + qgf_palette_entry_v1_t entry; + if (qp_stream_read(&entry, sizeof(qgf_palette_entry_v1_t), 1, stream) != 1) { + return false; + } + + // Update the lookup table + qp_internal_global_pixel_lookup_table[i].hsv888.h = entry.h; + qp_internal_global_pixel_lookup_table[i].hsv888.s = entry.s; + qp_internal_global_pixel_lookup_table[i].hsv888.v = entry.v; + + qp_dprintf("qp_internal_load_qgf_palette: %3d of %d -- H: %3d, S: %3d, V: %3d\n", (int)(i + 1), (int)palette_entries, (int)qp_internal_global_pixel_lookup_table[i].hsv888.h, (int)qp_internal_global_pixel_lookup_table[i].hsv888.s, (int)qp_internal_global_pixel_lookup_table[i].hsv888.v); + } + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_setpixel + +bool qp_setpixel(painter_device_t device, uint16_t x, uint16_t y, uint8_t hue, uint8_t sat, uint8_t val) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_setpixel: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("Failed to start comms in qp_setpixel\n"); + return false; + } + + qp_internal_fill_pixdata(device, 1, hue, sat, val); + bool ret = qp_internal_setpixel_impl(device, x, y); + qp_comms_stop(device); + qp_dprintf("qp_setpixel: %s\n", ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_line + +bool qp_line(painter_device_t device, uint16_t x0, uint16_t y0, uint16_t x1, uint16_t y1, uint8_t hue, uint8_t sat, uint8_t val) { + if (x0 == x1 || y0 == y1) { + qp_dprintf("qp_line(%d, %d, %d, %d): entry (deferring to qp_rect)\n", (int)x0, (int)y0, (int)x1, (int)y1); + bool ret = qp_rect(device, x0, y0, x1, y1, hue, sat, val, true); + qp_dprintf("qp_line(%d, %d, %d, %d): %s (deferred to qp_rect)\n", (int)x0, (int)y0, (int)x1, (int)y1, ret ? "ok" : "fail"); + return ret; + } + + qp_dprintf("qp_line(%d, %d, %d, %d): entry\n", (int)x0, (int)y0, (int)x1, (int)y1); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_line: fail (validation_ok == false)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("Failed to start comms in qp_line\n"); + return false; + } + + qp_internal_fill_pixdata(device, 1, hue, sat, val); + + // draw angled line using Bresenham's algo + int16_t x = ((int16_t)x0); + int16_t y = ((int16_t)y0); + int16_t slopex = ((int16_t)x0) < ((int16_t)x1) ? 1 : -1; + int16_t slopey = ((int16_t)y0) < ((int16_t)y1) ? 1 : -1; + int16_t dx = abs(((int16_t)x1) - ((int16_t)x0)); + int16_t dy = -abs(((int16_t)y1) - ((int16_t)y0)); + + int16_t e = dx + dy; + int16_t e2 = 2 * e; + + bool ret = true; + while (x != x1 || y != y1) { + if (!qp_internal_setpixel_impl(device, x, y)) { + ret = false; + break; + } + e2 = 2 * e; + if (e2 >= dy) { + e += dy; + x += slopex; + } + if (e2 <= dx) { + e += dx; + y += slopey; + } + } + // draw the last pixel + if (!qp_internal_setpixel_impl(device, x, y)) { + ret = false; + } + + qp_comms_stop(device); + qp_dprintf("qp_line(%d, %d, %d, %d): %s\n", (int)x0, (int)y0, (int)x1, (int)y1, ret ? "ok" : "fail"); + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_rect + +bool qp_internal_fillrect_helper_impl(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom) { + uint32_t pixels_in_pixdata = qp_internal_num_pixels_in_buffer(device); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + uint16_t l = QP_MIN(left, right); + uint16_t r = QP_MAX(left, right); + uint16_t t = QP_MIN(top, bottom); + uint16_t b = QP_MAX(top, bottom); + uint16_t w = r - l + 1; + uint16_t h = b - t + 1; + + uint32_t remaining = w * h; + driver->driver_vtable->viewport(device, l, t, r, b); + while (remaining > 0) { + uint32_t transmit = QP_MIN(remaining, pixels_in_pixdata); + if (!driver->driver_vtable->pixdata(device, qp_internal_global_pixdata_buffer, transmit)) { + return false; + } + remaining -= transmit; + } + return true; +} + +bool qp_rect(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom, uint8_t hue, uint8_t sat, uint8_t val, bool filled) { + qp_dprintf("qp_rect(%d, %d, %d, %d): entry\n", (int)left, (int)top, (int)right, (int)bottom); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_rect: fail (validation_ok == false)\n"); + return false; + } + + // Cater for cases where people have submitted the coordinates backwards + uint16_t l = QP_MIN(left, right); + uint16_t r = QP_MAX(left, right); + uint16_t t = QP_MIN(top, bottom); + uint16_t b = QP_MAX(top, bottom); + uint16_t w = r - l + 1; + uint16_t h = b - t + 1; + + bool ret = true; + if (!qp_comms_start(device)) { + qp_dprintf("Failed to start comms in qp_rect\n"); + return false; + } + + if (filled) { + // Fill up the pixdata buffer with the required number of native pixels + qp_internal_fill_pixdata(device, w * h, hue, sat, val); + + // Perform the draw + ret = qp_internal_fillrect_helper_impl(device, l, t, r, b); + } else { + // Fill up the pixdata buffer with the required number of native pixels + qp_internal_fill_pixdata(device, QP_MAX(w, h), hue, sat, val); + + // Draw 4x filled single-width rects to create an outline + if (!qp_internal_fillrect_helper_impl(device, l, t, r, t) || !qp_internal_fillrect_helper_impl(device, l, b, r, b) || !qp_internal_fillrect_helper_impl(device, l, t + 1, l, b - 1) || !qp_internal_fillrect_helper_impl(device, r, t + 1, r, b - 1)) { + ret = false; + } + } + + qp_comms_stop(device); + qp_dprintf("qp_rect(%d, %d, %d, %d): %s\n", (int)l, (int)t, (int)r, (int)b, ret ? "ok" : "fail"); + return ret; +} diff --git a/quantum/painter/qp_draw_ellipse.c b/quantum/painter/qp_draw_ellipse.c new file mode 100644 index 0000000000..7f2f4abcfd --- /dev/null +++ b/quantum/painter/qp_draw_ellipse.c @@ -0,0 +1,116 @@ +// Copyright 2021 Paul Cotter (@gr1mr3aver) +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_comms.h" +#include "qp_draw.h" + +// Utilize 4-way symmetry to draw an ellipse +static bool qp_ellipse_helper_impl(painter_device_t device, uint16_t centerx, uint16_t centery, uint16_t offsetx, uint16_t offsety, bool filled) { + /* + Ellipses have the property of 4-way symmetry, so four pixels can be drawn + for each computed [offsetx,offsety] given the center coordinates + represented by [centerx,centery]. + + For filled ellipses, we can draw horizontal lines between each pair of + pixels with the same final value of y. + + When offsetx == 0 only two pixels can be drawn for filled or unfilled ellipses + */ + + int16_t xpx = ((int16_t)centerx) + ((int16_t)offsetx); + int16_t xmx = ((int16_t)centerx) - ((int16_t)offsetx); + int16_t ypy = ((int16_t)centery) + ((int16_t)offsety); + int16_t ymy = ((int16_t)centery) - ((int16_t)offsety); + + if (offsetx == 0) { + if (!qp_internal_setpixel_impl(device, xpx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpx, ymy)) { + return false; + } + } else if (filled) { + if (!qp_internal_fillrect_helper_impl(device, xpx, ypy, xmx, ypy)) { + return false; + } + if (offsety > 0 && !qp_internal_fillrect_helper_impl(device, xpx, ymy, xmx, ymy)) { + return false; + } + } else { + if (!qp_internal_setpixel_impl(device, xpx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xpx, ymy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmx, ypy)) { + return false; + } + if (!qp_internal_setpixel_impl(device, xmx, ymy)) { + return false; + } + } + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_ellipse + +bool qp_ellipse(painter_device_t device, uint16_t x, uint16_t y, uint16_t sizex, uint16_t sizey, uint8_t hue, uint8_t sat, uint8_t val, bool filled) { + qp_dprintf("qp_ellipse: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_ellipse: fail (validation_ok == false)\n"); + return false; + } + + int16_t aa = ((int16_t)sizex) * ((int16_t)sizex); + int16_t bb = ((int16_t)sizey) * ((int16_t)sizey); + int16_t fa = 4 * ((int16_t)aa); + int16_t fb = 4 * ((int16_t)bb); + + int16_t dx = 0; + int16_t dy = ((int16_t)sizey); + + qp_internal_fill_pixdata(device, QP_MAX(sizex, sizey), hue, sat, val); + + if (!qp_comms_start(device)) { + qp_dprintf("qp_ellipse: fail (could not start comms)\n"); + return false; + } + + bool ret = true; + for (int16_t delta = (2 * bb) + (aa * (1 - (2 * sizey))); bb * dx <= aa * dy; dx++) { + if (!qp_ellipse_helper_impl(device, x, y, dx, dy, filled)) { + ret = false; + break; + } + if (delta >= 0) { + delta += fa * (1 - dy); + dy--; + } + delta += bb * (4 * dx + 6); + } + + dx = sizex; + dy = 0; + + for (int16_t delta = (2 * aa) + (bb * (1 - (2 * sizex))); aa * dy <= bb * dx; dy++) { + if (!qp_ellipse_helper_impl(device, x, y, dx, dy, filled)) { + ret = false; + break; + } + if (delta >= 0) { + delta += fb * (1 - dx); + dx--; + } + delta += aa * (4 * dy + 6); + } + + qp_dprintf("qp_ellipse: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret; +} diff --git a/quantum/painter/qp_draw_image.c b/quantum/painter/qp_draw_image.c new file mode 100644 index 0000000000..5134ae7e99 --- /dev/null +++ b/quantum/painter/qp_draw_image.c @@ -0,0 +1,382 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_internal.h" +#include "qp_draw.h" +#include "qp_comms.h" +#include "qgf.h" +#include "deferred_exec.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QGF image handles + +typedef struct qgf_image_handle_t { + painter_image_desc_t base; + bool validate_ok; + union { + qp_stream_t stream; + qp_memory_stream_t mem_stream; +#ifdef QP_STREAM_HAS_FILE_IO + qp_file_stream_t file_stream; +#endif // QP_STREAM_HAS_FILE_IO + }; +} qgf_image_handle_t; + +static qgf_image_handle_t image_descriptors[QUANTUM_PAINTER_NUM_IMAGES] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_load_image_mem + +painter_image_handle_t qp_load_image_mem(const void *buffer) { + qp_dprintf("qp_load_image_mem: entry\n"); + qgf_image_handle_t *image = NULL; + + // Find a free slot + for (int i = 0; i < QUANTUM_PAINTER_NUM_IMAGES; ++i) { + if (!image_descriptors[i].validate_ok) { + image = &image_descriptors[i]; + break; + } + } + + // Drop out if not found + if (!image) { + qp_dprintf("qp_load_image_mem: fail (no free slot)\n"); + return NULL; + } + + // Assume we can read the graphics descriptor + image->mem_stream = qp_make_memory_stream((void *)buffer, sizeof(qgf_graphics_descriptor_v1_t)); + + // Update the length of the stream to match, and rewind to the start + image->mem_stream.length = qgf_get_total_size(&image->stream); + image->mem_stream.position = 0; + + // Now that we know the length, validate the input data + if (!qgf_validate_stream(&image->stream)) { + qp_dprintf("qp_load_image_mem: fail (failed validation)\n"); + return NULL; + } + + // Fill out the QP image descriptor + qgf_read_graphics_descriptor(&image->stream, &image->base.width, &image->base.height, &image->base.frame_count, NULL); + + // Validation success, we can return the handle + image->validate_ok = true; + qp_dprintf("qp_load_image_mem: ok\n"); + return (painter_image_handle_t)image; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_close_image + +bool qp_close_image(painter_image_handle_t image) { + qgf_image_handle_t *qgf_image = (qgf_image_handle_t *)image; + if (!qgf_image->validate_ok) { + qp_dprintf("qp_close_image: fail (invalid image)\n"); + return false; + } + + // Free up this image for use elsewhere. + qgf_image->validate_ok = false; + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_drawimage + +bool qp_drawimage(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image) { + return qp_drawimage_recolor(device, x, y, image, 0, 0, 255, 0, 0, 0); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_drawimage_recolor + +typedef struct qgf_frame_info_t { + painter_compression_t compression_scheme; + uint8_t bpp; + bool has_palette; + bool is_delta; + uint16_t left; + uint16_t top; + uint16_t right; + uint16_t bottom; + uint16_t delay; +} qgf_frame_info_t; + +static bool qp_drawimage_prepare_frame_for_stream_read(painter_device_t device, qgf_image_handle_t *qgf_image, uint16_t frame_number, qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, qgf_frame_info_t *info) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + // Drop out if we can't actually place the data we read out anywhere + if (!info) { + qp_dprintf("Failed to prepare stream for read, output info buffer unavailable\n"); + return false; + } + + // Seek to the frame + qgf_seek_to_frame_descriptor(&qgf_image->stream, frame_number); + + // Read the frame descriptor + qgf_frame_v1_t frame_descriptor; + if (qp_stream_read(&frame_descriptor, sizeof(qgf_frame_v1_t), 1, &qgf_image->stream) != 1) { + qp_dprintf("Failed to read frame_descriptor, expected length was not %d\n", (int)sizeof(qgf_frame_v1_t)); + return false; + } + + // Parse out the frame info + if (!qgf_parse_frame_descriptor(&frame_descriptor, &info->bpp, &info->has_palette, &info->is_delta, &info->compression_scheme, &info->delay)) { + return false; + } + + // Ensure we aren't reusing any palette + qp_internal_invalidate_palette(); + + // Handle palette if needed + const uint16_t palette_entries = 1u << info->bpp; + bool needs_pixconvert = false; + if (info->has_palette) { + // Load the palette from the stream + if (!qp_internal_load_qgf_palette((qp_stream_t *)&qgf_image->stream, info->bpp)) { + return false; + } + + needs_pixconvert = true; + } else { + // Interpolate from fg/bg + needs_pixconvert = qp_internal_interpolate_palette(fg_hsv888, bg_hsv888, palette_entries); + } + + if (!qp_internal_bpp_capable(info->bpp)) { + qp_dprintf("qp_drawimage_recolor: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)info->bpp); + qp_comms_stop(device); + return false; + } + + if (needs_pixconvert) { + // Convert the palette to native format + if (!driver->driver_vtable->palette_convert(device, palette_entries, qp_internal_global_pixel_lookup_table)) { + qp_dprintf("qp_drawimage_recolor: fail (could not convert pixels to native)\n"); + qp_comms_stop(device); + return false; + } + } + + // Handle delta if needed + if (info->is_delta) { + qgf_delta_v1_t delta_descriptor; + if (qp_stream_read(&delta_descriptor, sizeof(qgf_delta_v1_t), 1, &qgf_image->stream) != 1) { + qp_dprintf("Failed to read delta_descriptor, expected length was not %d\n", (int)sizeof(qgf_delta_v1_t)); + return false; + } + + info->left = delta_descriptor.left; + info->top = delta_descriptor.top; + info->right = delta_descriptor.right; + info->bottom = delta_descriptor.bottom; + } + + // Read the data block + qgf_data_v1_t data_descriptor; + if (qp_stream_read(&data_descriptor, sizeof(qgf_data_v1_t), 1, &qgf_image->stream) != 1) { + qp_dprintf("Failed to read data_descriptor, expected length was not %d\n", (int)sizeof(qgf_data_v1_t)); + return false; + } + + // Stream is now at the point of being able to read pixdata + return true; +} + +static bool qp_drawimage_recolor_impl(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, int frame_number, qgf_frame_info_t *frame_info, qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888) { + qp_dprintf("qp_drawimage_recolor: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_drawimage_recolor: fail (validation_ok == false)\n"); + return false; + } + + qgf_image_handle_t *qgf_image = (qgf_image_handle_t *)image; + if (!qgf_image->validate_ok) { + qp_dprintf("qp_drawimage_recolor: fail (invalid image)\n"); + return false; + } + + // Read the frame info + if (!qp_drawimage_prepare_frame_for_stream_read(device, qgf_image, frame_number, fg_hsv888, bg_hsv888, frame_info)) { + qp_dprintf("qp_drawimage_recolor: fail (could not read frame %d)\n", frame_number); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_drawimage_recolor: fail (could not start comms)\n"); + return false; + } + + uint16_t l, t, r, b; + if (frame_info->is_delta) { + l = x + frame_info->left; + t = y + frame_info->top; + r = x + frame_info->right - 1; + b = y + frame_info->bottom - 1; + } else { + l = x; + t = y; + r = x + image->width - 1; + b = y + image->height - 1; + } + uint32_t pixel_count = ((uint32_t)(r - l + 1)) * (b - t + 1); + + // Configure where we're going to be rendering to + if (!driver->driver_vtable->viewport(device, l, t, r, b)) { + qp_dprintf("qp_drawimage_recolor: fail (could not set viewport)\n"); + qp_comms_stop(device); + return false; + } + + // Set up the input state + struct qp_internal_byte_input_state input_state = {.device = device, .src_stream = &qgf_image->stream}; + qp_internal_byte_input_callback input_callback = qp_internal_prepare_input_state(&input_state, frame_info->compression_scheme); + if (input_callback == NULL) { + qp_dprintf("qp_drawimage_recolor: fail (invalid image compression scheme)\n"); + qp_comms_stop(device); + return false; + } + + // Set up the output state + struct qp_internal_pixel_output_state output_state = {.device = device, .pixel_write_pos = 0, .max_pixels = qp_internal_num_pixels_in_buffer(device)}; + + // Decode the pixel data and stream to the display + bool ret = qp_internal_decode_palette(device, pixel_count, frame_info->bpp, input_callback, &input_state, qp_internal_global_pixel_lookup_table, qp_internal_pixel_appender, &output_state); + + // Any leftovers need transmission as well. + if (ret && output_state.pixel_write_pos > 0) { + ret &= driver->driver_vtable->pixdata(device, qp_internal_global_pixdata_buffer, output_state.pixel_write_pos); + } + + qp_dprintf("qp_drawimage_recolor: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret; +} + +bool qp_drawimage_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg) { + qgf_frame_info_t frame_info = {0}; + qp_pixel_t fg_hsv888 = {.hsv888 = {.h = hue_fg, .s = sat_fg, .v = val_fg}}; + qp_pixel_t bg_hsv888 = {.hsv888 = {.h = hue_bg, .s = sat_bg, .v = val_bg}}; + return qp_drawimage_recolor_impl(device, x, y, image, 0, &frame_info, fg_hsv888, bg_hsv888); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_animate + +deferred_token qp_animate(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image) { + return qp_animate_recolor(device, x, y, image, 0, 0, 255, 0, 0, 0); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_animate_recolor + +typedef struct animation_state_t { + painter_device_t device; + uint16_t x; + uint16_t y; + painter_image_handle_t image; + qp_pixel_t fg_hsv888; + qp_pixel_t bg_hsv888; + uint16_t frame_number; + deferred_token defer_token; +} animation_state_t; + +static deferred_executor_t animation_executors[QUANTUM_PAINTER_CONCURRENT_ANIMATIONS] = {0}; +static animation_state_t animation_states[QUANTUM_PAINTER_CONCURRENT_ANIMATIONS] = {0}; + +static deferred_token qp_render_animation_state(animation_state_t *state, uint16_t *delay_ms) { + qgf_frame_info_t frame_info = {0}; + qp_dprintf("qp_render_animation_state: entry (frame #%d)\n", (int)state->frame_number); + bool ret = qp_drawimage_recolor_impl(state->device, state->x, state->y, state->image, state->frame_number, &frame_info, state->fg_hsv888, state->bg_hsv888); + if (ret) { + ++state->frame_number; + if (state->frame_number >= state->image->frame_count) { + state->frame_number = 0; + } + *delay_ms = frame_info.delay; + } + qp_dprintf("qp_render_animation_state: %s (delay %dms)\n", ret ? "ok" : "fail", (int)(*delay_ms)); + return ret; +} + +static uint32_t animation_callback(uint32_t trigger_time, void *cb_arg) { + animation_state_t *state = (animation_state_t *)cb_arg; + uint16_t delay_ms; + bool ret = qp_render_animation_state(state, &delay_ms); + if (!ret) { + // Setting the device to NULL clears the animation slot + state->device = NULL; + } + // If we're successful, keep animating -- returning 0 cancels the deferred execution + return ret ? delay_ms : 0; +} + +deferred_token qp_animate_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_image_handle_t image, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg) { + qp_dprintf("qp_animate_recolor: entry\n"); + + animation_state_t *anim_state = NULL; + for (int i = 0; i < QUANTUM_PAINTER_CONCURRENT_ANIMATIONS; ++i) { + if (animation_states[i].device == NULL) { + anim_state = &animation_states[i]; + break; + } + } + + if (!anim_state) { + qp_dprintf("qp_animate_recolor: fail (could not find free animation slot)\n"); + return INVALID_DEFERRED_TOKEN; + } + + // Prepare the animation state + anim_state->device = device; + anim_state->x = x; + anim_state->y = y; + anim_state->image = image; + anim_state->fg_hsv888 = (qp_pixel_t){.hsv888 = {.h = hue_fg, .s = sat_fg, .v = val_fg}}; + anim_state->bg_hsv888 = (qp_pixel_t){.hsv888 = {.h = hue_bg, .s = sat_bg, .v = val_bg}}; + anim_state->frame_number = 0; + + // Draw the first frame + uint16_t delay_ms; + if (!qp_render_animation_state(anim_state, &delay_ms)) { + anim_state->device = NULL; // disregard the allocated animation slot + qp_dprintf("qp_animate_recolor: fail (could not render first frame)\n"); + return INVALID_DEFERRED_TOKEN; + } + + // Set up the timer + anim_state->defer_token = defer_exec_advanced(animation_executors, QUANTUM_PAINTER_CONCURRENT_ANIMATIONS, delay_ms, animation_callback, anim_state); + if (anim_state->defer_token == INVALID_DEFERRED_TOKEN) { + anim_state->device = NULL; // disregard the allocated animation slot + qp_dprintf("qp_animate_recolor: fail (could not set up animation executor)\n"); + return INVALID_DEFERRED_TOKEN; + } + + qp_dprintf("qp_animate_recolor: ok (deferred token = %d)\n", (int)anim_state->defer_token); + return anim_state->defer_token; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_stop_animation + +void qp_stop_animation(deferred_token anim_token) { + for (int i = 0; i < QUANTUM_PAINTER_CONCURRENT_ANIMATIONS; ++i) { + if (animation_states[i].defer_token == anim_token) { + cancel_deferred_exec_advanced(animation_executors, QUANTUM_PAINTER_CONCURRENT_ANIMATIONS, anim_token); + animation_states[i].device = NULL; + return; + } + } +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter Core API: qp_internal_animation_tick + +void qp_internal_animation_tick(void) { + static uint32_t last_anim_exec = 0; + deferred_exec_advanced_task(animation_executors, QUANTUM_PAINTER_CONCURRENT_ANIMATIONS, &last_anim_exec); +} diff --git a/quantum/painter/qp_draw_text.c b/quantum/painter/qp_draw_text.c new file mode 100644 index 0000000000..f99e082cad --- /dev/null +++ b/quantum/painter/qp_draw_text.c @@ -0,0 +1,444 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include +#include + +#include "qp_internal.h" +#include "qp_draw.h" +#include "qp_comms.h" +#include "qff.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// QFF font handles + +typedef struct qff_font_handle_t { + painter_font_desc_t base; + bool validate_ok; + bool has_ascii_table; + uint16_t num_unicode_glyphs; + uint8_t bpp; + bool has_palette; + painter_compression_t compression_scheme; + union { + qp_stream_t stream; + qp_memory_stream_t mem_stream; +#ifdef QP_STREAM_HAS_FILE_IO + qp_file_stream_t file_stream; +#endif // QP_STREAM_HAS_FILE_IO + }; +#if QUANTUM_PAINTER_LOAD_FONTS_TO_RAM + bool owns_buffer; + void *buffer; +#endif // QUANTUM_PAINTER_LOAD_FONTS_TO_RAM +} qff_font_handle_t; + +static qff_font_handle_t font_descriptors[QUANTUM_PAINTER_NUM_FONTS] = {0}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_load_font_mem + +painter_font_handle_t qp_load_font_mem(const void *buffer) { + qp_dprintf("qp_load_font_mem: entry\n"); + qff_font_handle_t *font = NULL; + + // Find a free slot + for (int i = 0; i < QUANTUM_PAINTER_NUM_FONTS; ++i) { + if (!font_descriptors[i].validate_ok) { + font = &font_descriptors[i]; + break; + } + } + + // Drop out if not found + if (!font) { + qp_dprintf("qp_load_font_mem: fail (no free slot)\n"); + return NULL; + } + + // Assume we can read the graphics descriptor + font->mem_stream = qp_make_memory_stream((void *)buffer, sizeof(qff_font_descriptor_v1_t)); + + // Update the length of the stream to match, and rewind to the start + font->mem_stream.length = qff_get_total_size(&font->stream); + font->mem_stream.position = 0; + + // Now that we know the length, validate the input data + if (!qff_validate_stream(&font->stream)) { + qp_dprintf("qp_load_font_mem: fail (failed validation)\n"); + return NULL; + } + +#if QUANTUM_PAINTER_LOAD_FONTS_TO_RAM + // Clear out any existing data + font->owns_buffer = false; + font->buffer = NULL; + + void *ram_buffer = malloc(font->mem_stream.length); + if (ram_buffer == NULL) { + qp_dprintf("qp_load_font_mem: could not allocate enough RAM for font, falling back to original\n"); + } else { + do { + // Copy the data into RAM + if (qp_stream_read(ram_buffer, 1, font->mem_stream.length, &font->mem_stream) != font->mem_stream.length) { + qp_dprintf("qp_load_font_mem: could not copy from flash to RAM, falling back to original\n"); + break; + } + + // Create the new stream with the new buffer + font->buffer = ram_buffer; + font->owns_buffer = true; + font->mem_stream = qp_make_memory_stream(font->buffer, font->mem_stream.length); + } while (0); + } + + // Free the buffer if we were unable to recreate the RAM copy. + if (ram_buffer != NULL && !font->owns_buffer) { + free(ram_buffer); + } +#endif // QUANTUM_PAINTER_LOAD_FONTS_TO_RAM + + // Read the info (parsing already successful above, no need to check return value) + qff_read_font_descriptor(&font->stream, &font->base.line_height, &font->has_ascii_table, &font->num_unicode_glyphs, &font->bpp, &font->has_palette, &font->compression_scheme, NULL); + + if (!qp_internal_bpp_capable(font->bpp)) { + qp_dprintf("qp_load_font_mem: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)font->bpp); + qp_close_font((painter_font_handle_t)font); + return NULL; + } + + // Validation success, we can return the handle + font->validate_ok = true; + qp_dprintf("qp_load_font_mem: ok\n"); + return (painter_font_handle_t)font; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_close_font + +bool qp_close_font(painter_font_handle_t font) { + qff_font_handle_t *qff_font = (qff_font_handle_t *)font; + if (!qff_font->validate_ok) { + qp_dprintf("qp_close_font: fail (invalid font)\n"); + return false; + } + +#if QUANTUM_PAINTER_LOAD_FONTS_TO_RAM + // Nuke the buffer, if required + if (qff_font->owns_buffer) { + free(qff_font->buffer); + qff_font->buffer = NULL; + qff_font->owns_buffer = false; + } +#endif // QUANTUM_PAINTER_LOAD_FONTS_TO_RAM + + // Free up this font for use elsewhere. + qff_font->validate_ok = false; + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Helpers + +// Callback to be invoked for each codepoint detected in the UTF8 input string +typedef bool (*code_point_handler)(qff_font_handle_t *qff_font, uint32_t code_point, uint8_t width, uint8_t height, void *cb_arg); + +// Helper that sets up the palette (if required) and returns the offset in the stream that the data starts +static inline bool qp_drawtext_prepare_font_for_render(painter_device_t device, qff_font_handle_t *qff_font, qp_pixel_t fg_hsv888, qp_pixel_t bg_hsv888, uint32_t *data_offset) { + struct painter_driver_t *driver = (struct painter_driver_t *)device; + + // Drop out if we can't actually place the data we read out anywhere + if (!data_offset) { + qp_dprintf("Failed to prepare stream for read, output info buffer unavailable\n"); + return false; + } + + // Work out where we're reading from + uint32_t offset = sizeof(qff_font_descriptor_v1_t); + if (qff_font->has_ascii_table) { + offset += sizeof(qff_ascii_glyph_table_v1_t); + } + if (qff_font->num_unicode_glyphs > 0) { + offset += sizeof(qff_unicode_glyph_table_v1_t) + (qff_font->num_unicode_glyphs * 6); + } + + // Handle palette if needed + const uint16_t palette_entries = 1u << qff_font->bpp; + bool needs_pixconvert = false; + if (qff_font->has_palette) { + // If this font has a palette, we need to read it out and set up the pixel lookup table + qp_stream_setpos(&qff_font->stream, offset); + if (!qp_internal_load_qgf_palette(&qff_font->stream, qff_font->bpp)) { + return false; + } + + // Skip this block, as far as offset calculations go + offset += sizeof(qgf_palette_v1_t) + (palette_entries * 3); + needs_pixconvert = true; + } else { + // Interpolate from fg/bg + int16_t palette_entries = 1 << qff_font->bpp; + needs_pixconvert = qp_internal_interpolate_palette(fg_hsv888, bg_hsv888, palette_entries); + } + + if (needs_pixconvert) { + // Convert the palette to native format + if (!driver->driver_vtable->palette_convert(device, palette_entries, qp_internal_global_pixel_lookup_table)) { + qp_dprintf("qp_drawtext_recolor: fail (could not convert pixels to native)\n"); + qp_comms_stop(device); + return false; + } + } + + *data_offset = offset; + return true; +} + +static inline bool qp_drawtext_prepare_glyph_for_render(qff_font_handle_t *qff_font, uint32_t code_point, uint8_t *width) { + if (code_point >= 0x20 && code_point < 0x7F && qff_font->has_ascii_table) { + // Do ascii table + qff_ascii_glyph_v1_t glyph_info; + uint32_t glyph_info_offset = sizeof(qff_font_descriptor_v1_t) // Skip the font descriptor + + sizeof(qgf_block_header_v1_t) // Skip the ascii table header + + (code_point - 0x20) * sizeof(qff_ascii_glyph_v1_t); // Jump direct to the data offset based on the glyph index + if (qp_stream_setpos(&qff_font->stream, glyph_info_offset) < 0) { + qp_dprintf("Failed to set stream position while reading ascii glyph info\n"); + return false; + } + + if (qp_stream_read(&glyph_info, sizeof(qff_ascii_glyph_v1_t), 1, &qff_font->stream) != 1) { + qp_dprintf("Failed to read glyph info\n"); + return false; + } + + uint8_t glyph_width = (uint8_t)(glyph_info.value & QFF_GLYPH_WIDTH_MASK); + uint32_t glyph_offset = ((glyph_info.value & QFF_GLYPH_OFFSET_MASK) >> QFF_GLYPH_WIDTH_BITS); + uint32_t data_offset = sizeof(qff_font_descriptor_v1_t) // Skip the font descriptor + + sizeof(qff_ascii_glyph_table_v1_t) // Skip the ascii table + + (qff_font->num_unicode_glyphs > 0 ? (sizeof(qff_unicode_glyph_table_v1_t) + (qff_font->num_unicode_glyphs * sizeof(qff_unicode_glyph_v1_t))) : 0) // Skip the unicode table + + (qff_font->has_palette ? (sizeof(qgf_palette_v1_t) + ((1 << qff_font->bpp) * sizeof(qgf_palette_entry_v1_t))) : 0) // Skip the palette + + sizeof(qgf_block_header_v1_t) // Skip the data block header + + glyph_offset; // Jump to the specified glyph offset + + if (qp_stream_setpos(&qff_font->stream, data_offset) < 0) { + qp_dprintf("Failed to set stream position while preparing ascii glyph data\n"); + return false; + } + + *width = glyph_width; + return true; + } else { + // Do unicode table, which may include singular ascii glyphs if full ascii table isn't specified + uint32_t glyph_info_offset = sizeof(qff_font_descriptor_v1_t) // Skip the font descriptor + + (qff_font->has_ascii_table ? sizeof(qff_ascii_glyph_table_v1_t) : 0) // Skip the ascii table + + sizeof(qgf_block_header_v1_t); // Skip the unicode block header + + if (qp_stream_setpos(&qff_font->stream, glyph_info_offset) < 0) { + qp_dprintf("Failed to set stream position while preparing glyph data\n"); + return false; + } + + qff_unicode_glyph_v1_t glyph_info; + for (uint16_t i = 0; i < qff_font->num_unicode_glyphs; ++i) { + if (qp_stream_read(&glyph_info, sizeof(qff_unicode_glyph_v1_t), 1, &qff_font->stream) != 1) { + qp_dprintf("Failed to set stream position while reading unicode glyph info\n"); + return false; + } + + if (glyph_info.code_point == code_point) { + uint8_t glyph_width = (uint8_t)(glyph_info.value & QFF_GLYPH_WIDTH_MASK); + uint32_t glyph_offset = ((glyph_info.value & QFF_GLYPH_OFFSET_MASK) >> QFF_GLYPH_WIDTH_BITS); + uint32_t data_offset = sizeof(qff_font_descriptor_v1_t) // Skip the font descriptor + + sizeof(qff_ascii_glyph_table_v1_t) // Skip the ascii table + + (qff_font->num_unicode_glyphs > 0 ? (sizeof(qff_unicode_glyph_table_v1_t) + (qff_font->num_unicode_glyphs * sizeof(qff_unicode_glyph_v1_t))) : 0) // Skip the unicode table + + (qff_font->has_palette ? (sizeof(qgf_palette_v1_t) + ((1 << qff_font->bpp) * sizeof(qgf_palette_entry_v1_t))) : 0) // Skip the palette + + sizeof(qgf_block_header_v1_t) // Skip the data block header + + glyph_offset; // Jump to the specified glyph offset + + if (qp_stream_setpos(&qff_font->stream, data_offset) < 0) { + qp_dprintf("Failed to set stream position while preparing unicode glyph data\n"); + return false; + } + + *width = glyph_width; + return true; + } + } + + // Not found + qp_dprintf("Failed to find unicode glyph info\n"); + return false; + } + return false; +} + +// Function to iterate over each UTF8 codepoint, invoking the callback for each decoded glyph +static inline bool qp_iterate_code_points(qff_font_handle_t *qff_font, const char *str, code_point_handler handler, void *cb_arg) { + while (*str) { + int32_t code_point = 0; + str = decode_utf8(str, &code_point); + if (code_point < 0) { + qp_dprintf("Invalid unicode code point decoded. Cannot render.\n"); + return false; + } + + uint8_t width; + if (!qp_drawtext_prepare_glyph_for_render(qff_font, code_point, &width)) { + qp_dprintf("Failed to prepare glyph for rendering.\n"); + return false; + } + + if (!handler(qff_font, code_point, width, qff_font->base.line_height, cb_arg)) { + qp_dprintf("Failed to execute glyph handler.\n"); + return false; + } + } + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// String width calculation + +// Callback state +struct code_point_iter_calcwidth_state { + int16_t width; +}; + +// Codepoint handler callback: width calc +static inline bool qp_font_code_point_handler_calcwidth(qff_font_handle_t *qff_font, uint32_t code_point, uint8_t width, uint8_t height, void *cb_arg) { + struct code_point_iter_calcwidth_state *state = (struct code_point_iter_calcwidth_state *)cb_arg; + + // Increment the overall width by this glyph's width + state->width += width; + + return true; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// String drawing implementation + +// Callback state +struct code_point_iter_drawglyph_state { + painter_device_t device; + int16_t xpos; + int16_t ypos; + qp_internal_byte_input_callback input_callback; + struct qp_internal_byte_input_state * input_state; + struct qp_internal_pixel_output_state *output_state; +}; + +// Codepoint handler callback: drawing +static inline bool qp_font_code_point_handler_drawglyph(qff_font_handle_t *qff_font, uint32_t code_point, uint8_t width, uint8_t height, void *cb_arg) { + struct code_point_iter_drawglyph_state *state = (struct code_point_iter_drawglyph_state *)cb_arg; + struct painter_driver_t * driver = (struct painter_driver_t *)state->device; + + // Reset the input state's RLE mode -- the stream should already be correctly positioned by qp_iterate_code_points() + state->input_state->rle.mode = MARKER_BYTE; // ignored if not using RLE + + // Reset the output state + state->output_state->pixel_write_pos = 0; + + // Configure where we're going to be rendering to + driver->driver_vtable->viewport(state->device, state->xpos, state->ypos, state->xpos + width - 1, state->ypos + height - 1); + + // Move the x-position for the next glyph + state->xpos += width; + + // Decode the pixel data for the glyph + uint32_t pixel_count = ((uint32_t)width) * height; + bool ret = qp_internal_decode_palette(state->device, pixel_count, qff_font->bpp, state->input_callback, state->input_state, qp_internal_global_pixel_lookup_table, qp_internal_pixel_appender, state->output_state); + + // Any leftovers need transmission as well. + if (ret && state->output_state->pixel_write_pos > 0) { + ret &= driver->driver_vtable->pixdata(state->device, qp_internal_global_pixdata_buffer, state->output_state->pixel_write_pos); + } + + return ret; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_textwidth + +int16_t qp_textwidth(painter_font_handle_t font, const char *str) { + qff_font_handle_t *qff_font = (qff_font_handle_t *)font; + if (!qff_font->validate_ok) { + qp_dprintf("qp_textwidth: fail (invalid font)\n"); + return false; + } + + // Create the codepoint iterator state + struct code_point_iter_calcwidth_state state = {.width = 0}; + // Iterate each codepoint, return the calculated width if successful. + return qp_iterate_code_points(qff_font, str, qp_font_code_point_handler_calcwidth, &state) ? state.width : 0; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_drawtext + +int16_t qp_drawtext(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str) { + // Offload to the recolor variant, substituting fg=white bg=black. + // Traditional LCDs with those colors will need to manually invoke qp_drawtext_recolor with the colors reversed. + return qp_drawtext_recolor(device, x, y, font, str, 0, 0, 255, 0, 0, 0); +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter External API: qp_drawtext_recolor + +int16_t qp_drawtext_recolor(painter_device_t device, uint16_t x, uint16_t y, painter_font_handle_t font, const char *str, uint8_t hue_fg, uint8_t sat_fg, uint8_t val_fg, uint8_t hue_bg, uint8_t sat_bg, uint8_t val_bg) { + qp_dprintf("qp_drawtext_recolor: entry\n"); + struct painter_driver_t *driver = (struct painter_driver_t *)device; + if (!driver->validate_ok) { + qp_dprintf("qp_drawtext_recolor: fail (validation_ok == false)\n"); + return 0; + } + + qff_font_handle_t *qff_font = (qff_font_handle_t *)font; + if (!qff_font->validate_ok) { + qp_dprintf("qp_drawtext_recolor: fail (invalid font)\n"); + return false; + } + + if (!qp_comms_start(device)) { + qp_dprintf("qp_drawtext_recolor: fail (could not start comms)\n"); + return 0; + } + + // Set up the byte input state and input callback + struct qp_internal_byte_input_state input_state = {.device = device, .src_stream = &qff_font->stream}; + qp_internal_byte_input_callback input_callback = qp_internal_prepare_input_state(&input_state, qff_font->compression_scheme); + if (input_callback == NULL) { + qp_dprintf("qp_drawtext_recolor: fail (invalid font compression scheme)\n"); + qp_comms_stop(device); + return false; + } + + // Set up the pixel output state + struct qp_internal_pixel_output_state output_state = {.device = device, .pixel_write_pos = 0, .max_pixels = qp_internal_num_pixels_in_buffer(device)}; + + // Set up the codepoint iteration state + struct code_point_iter_drawglyph_state state = {// Common + .device = device, + .xpos = x, + .ypos = y, + // Input + .input_callback = input_callback, + .input_state = &input_state, + // Output + .output_state = &output_state}; + + qp_pixel_t fg_hsv888 = {.hsv888 = {.h = hue_fg, .s = sat_fg, .v = val_fg}}; + qp_pixel_t bg_hsv888 = {.hsv888 = {.h = hue_bg, .s = sat_bg, .v = val_bg}}; + uint32_t data_offset; + if (!qp_drawtext_prepare_font_for_render(driver, qff_font, fg_hsv888, bg_hsv888, &data_offset)) { + qp_dprintf("qp_drawtext_recolor: fail (failed to prepare font for rendering)\n"); + qp_comms_stop(device); + return false; + } + + // Iterate the codepoints with the drawglyph callback + bool ret = qp_iterate_code_points(qff_font, str, qp_font_code_point_handler_drawglyph, &state); + + qp_dprintf("qp_drawtext_recolor: %s\n", ret ? "ok" : "fail"); + qp_comms_stop(device); + return ret ? (state.xpos - x) : 0; +} diff --git a/quantum/painter/qp_internal.h b/quantum/painter/qp_internal.h new file mode 100644 index 0000000000..e7a6d113c5 --- /dev/null +++ b/quantum/painter/qp_internal.h @@ -0,0 +1,33 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" +#include "qp.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Helpers + +// Mark certain types that there should be no padding bytes between members. +#define QP_PACKED __attribute__((packed)) + +// Min/max defines +#define QP_MIN(X, Y) (((X) < (Y)) ? (X) : (Y)) +#define QP_MAX(X, Y) (((X) > (Y)) ? (X) : (Y)) + +#ifdef QUANTUM_PAINTER_DEBUG +# include +# include +# define qp_dprintf(...) dprintf(__VA_ARGS__) +#else +# define qp_dprintf(...) \ + do { \ + } while (0) +#endif + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Specific internal definitions + +#include +#include diff --git a/quantum/painter/qp_internal_driver.h b/quantum/painter/qp_internal_driver.h new file mode 100644 index 0000000000..9e9d6bc848 --- /dev/null +++ b/quantum/painter/qp_internal_driver.h @@ -0,0 +1,82 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver callbacks + +typedef bool (*painter_driver_init_func)(painter_device_t device, painter_rotation_t rotation); +typedef bool (*painter_driver_power_func)(painter_device_t device, bool power_on); +typedef bool (*painter_driver_clear_func)(painter_device_t device); +typedef bool (*painter_driver_flush_func)(painter_device_t device); +typedef bool (*painter_driver_viewport_func)(painter_device_t device, uint16_t left, uint16_t top, uint16_t right, uint16_t bottom); +typedef bool (*painter_driver_pixdata_func)(painter_device_t device, const void *pixel_data, uint32_t native_pixel_count); +typedef bool (*painter_driver_convert_palette_func)(painter_device_t device, int16_t palette_size, qp_pixel_t *palette); +typedef bool (*painter_driver_append_pixels)(painter_device_t device, uint8_t *target_buffer, qp_pixel_t *palette, uint32_t pixel_offset, uint32_t pixel_count, uint8_t *palette_indices); + +// Driver vtable definition +struct painter_driver_vtable_t { + painter_driver_init_func init; + painter_driver_power_func power; + painter_driver_clear_func clear; + painter_driver_flush_func flush; + painter_driver_viewport_func viewport; + painter_driver_pixdata_func pixdata; + painter_driver_convert_palette_func palette_convert; + painter_driver_append_pixels append_pixels; +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Comms callbacks + +typedef bool (*painter_driver_comms_init_func)(painter_device_t device); +typedef bool (*painter_driver_comms_start_func)(painter_device_t device); +typedef void (*painter_driver_comms_stop_func)(painter_device_t device); +typedef uint32_t (*painter_driver_comms_send_func)(painter_device_t device, const void *data, uint32_t byte_count); + +struct painter_comms_vtable_t { + painter_driver_comms_init_func comms_init; + painter_driver_comms_start_func comms_start; + painter_driver_comms_stop_func comms_stop; + painter_driver_comms_send_func comms_send; +}; + +typedef void (*painter_driver_comms_send_command_func)(painter_device_t device, uint8_t cmd); +typedef void (*painter_driver_comms_bulk_command_sequence)(painter_device_t device, const uint8_t *sequence, size_t sequence_len); + +struct painter_comms_with_command_vtable_t { + struct painter_comms_vtable_t base; // must be first, so this object can be cast from the painter_comms_vtable_t* type + painter_driver_comms_send_command_func send_command; + painter_driver_comms_bulk_command_sequence bulk_command_sequence; +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Driver base definition + +struct painter_driver_t { + const struct painter_driver_vtable_t *driver_vtable; + const struct painter_comms_vtable_t * comms_vtable; + + // Flag signifying if validation was successful + bool validate_ok; + + // Panel geometry + uint16_t panel_width; + uint16_t panel_height; + + // Target drawing rotation + painter_rotation_t rotation; + + // Automated offsets for setting viewport + uint16_t offset_x; + uint16_t offset_y; + + // Number of bits per pixel, used for determining how many pixels can be sent during a transmission of the pixdata buffer + uint8_t native_bits_per_pixel; + + // Comms config pointer -- needs to point to an appropriate comms config if the comms driver requires it. + void *comms_config; +}; diff --git a/quantum/painter/qp_internal_formats.h b/quantum/painter/qp_internal_formats.h new file mode 100644 index 0000000000..a4a86f0345 --- /dev/null +++ b/quantum/painter/qp_internal_formats.h @@ -0,0 +1,49 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter pixel formats + +// Datatype containing a pixel's color. The internal member used is dependent on the external context. +typedef union QP_PACKED qp_pixel_t { + uint8_t mono; + uint8_t palette_idx; + + struct QP_PACKED { + uint8_t h; + uint8_t s; + uint8_t v; + } hsv888; + + struct QP_PACKED { + uint8_t r; + uint8_t g; + uint8_t b; + } rgb888; + + uint16_t rgb565; + + uint32_t dummy; +} qp_pixel_t; +_Static_assert(sizeof(qp_pixel_t) == 4, "Invalid size for qp_pixel_t"); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Quantum Painter image format + +typedef enum qp_image_format_t { + // Pixel formats available in the QGF frame format + GRAYSCALE_1BPP = 0x00, + GRAYSCALE_2BPP = 0x01, + GRAYSCALE_4BPP = 0x02, + GRAYSCALE_8BPP = 0x03, + PALETTE_1BPP = 0x04, + PALETTE_2BPP = 0x05, + PALETTE_4BPP = 0x06, + PALETTE_8BPP = 0x07, +} qp_image_format_t; + +typedef enum painter_compression_t { IMAGE_UNCOMPRESSED, IMAGE_COMPRESSED_RLE } painter_compression_t; diff --git a/quantum/painter/qp_stream.c b/quantum/painter/qp_stream.c new file mode 100644 index 0000000000..f00ae5ed38 --- /dev/null +++ b/quantum/painter/qp_stream.c @@ -0,0 +1,171 @@ +// Copyright 2021 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "qp_stream.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Stream API + +uint32_t qp_stream_read_impl(void *output_buf, uint32_t member_size, uint32_t num_members, qp_stream_t *stream) { + uint8_t *output_ptr = (uint8_t *)output_buf; + + uint32_t i; + for (i = 0; i < (num_members * member_size); ++i) { + int16_t c = qp_stream_get(stream); + if (c < 0) { + break; + } + + output_ptr[i] = (uint8_t)(c & 0xFF); + } + + return i / member_size; +} + +uint32_t qp_stream_write_impl(const void *input_buf, uint32_t member_size, uint32_t num_members, qp_stream_t *stream) { + uint8_t *input_ptr = (uint8_t *)input_buf; + + uint32_t i; + for (i = 0; i < (num_members * member_size); ++i) { + if (!qp_stream_put(stream, input_ptr[i])) { + break; + } + } + + return i / member_size; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Memory streams + +int16_t mem_get(qp_stream_t *stream) { + qp_memory_stream_t *s = (qp_memory_stream_t *)stream; + if (s->position >= s->length) { + s->is_eof = true; + return STREAM_EOF; + } + return s->buffer[s->position++]; +} + +bool mem_put(qp_stream_t *stream, uint8_t c) { + qp_memory_stream_t *s = (qp_memory_stream_t *)stream; + if (s->position >= s->length) { + s->is_eof = true; + return false; + } + s->buffer[s->position++] = c; + return true; +} + +int mem_seek(qp_stream_t *stream, int32_t offset, int origin) { + qp_memory_stream_t *s = (qp_memory_stream_t *)stream; + + // Handle as per fseek + int32_t position = s->position; + switch (origin) { + case SEEK_SET: + position = offset; + break; + case SEEK_CUR: + position += offset; + break; + case SEEK_END: + position = s->length + offset; + break; + default: + return -1; + } + + // If we're before the start, ignore it. + if (position < 0) { + return -1; + } + + // If we're at the end it's okay, we only care if we're after the end for failure purposes -- as per lseek() + if (position > s->length) { + return -1; + } + + // Update the offset + s->position = position; + + // Successful invocation of fseek() results in clearing of the EOF flag by default, mirror the same functionality + s->is_eof = false; + + return 0; +} + +int32_t mem_tell(qp_stream_t *stream) { + qp_memory_stream_t *s = (qp_memory_stream_t *)stream; + return s->position; +} + +bool mem_is_eof(qp_stream_t *stream) { + qp_memory_stream_t *s = (qp_memory_stream_t *)stream; + return s->is_eof; +} + +qp_memory_stream_t qp_make_memory_stream(void *buffer, int32_t length) { + qp_memory_stream_t stream = { + .base = + { + .get = mem_get, + .put = mem_put, + .seek = mem_seek, + .tell = mem_tell, + .is_eof = mem_is_eof, + }, + .buffer = (uint8_t *)buffer, + .length = length, + .position = 0, + }; + return stream; +} + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// FILE streams + +#ifdef QP_STREAM_HAS_FILE_IO + +int16_t file_get(qp_stream_t *stream) { + qp_file_stream_t *s = (qp_file_stream_t *)stream; + int c = fgetc(s->file); + if (c < 0 || feof(s->file)) return STREAM_EOF; + return (uint16_t)c; +} + +bool file_put(qp_stream_t *stream, uint8_t c) { + qp_file_stream_t *s = (qp_file_stream_t *)stream; + return fputc(c, s->file) == c; +} + +int file_seek(qp_stream_t *stream, int32_t offset, int origin) { + qp_file_stream_t *s = (qp_file_stream_t *)stream; + return fseek(s->file, offset, origin); +} + +int32_t file_tell(qp_stream_t *stream) { + qp_file_stream_t *s = (qp_file_stream_t *)stream; + return (int32_t)ftell(s->file); +} + +bool file_is_eof(qp_stream_t *stream) { + qp_file_stream_t *s = (qp_file_stream_t *)stream; + return (bool)feof(s->file); +} + +qp_file_stream_t qp_make_file_stream(FILE *f) { + qp_file_stream_t stream = { + .base = + { + .get = file_get, + .put = file_put, + .seek = file_seek, + .tell = file_tell, + .is_eof = file_is_eof, + }, + .file = f, + }; + return stream; +} +#endif // QP_STREAM_HAS_FILE_IO diff --git a/quantum/painter/qp_stream.h b/quantum/painter/qp_stream.h new file mode 100644 index 0000000000..878b9bf530 --- /dev/null +++ b/quantum/painter/qp_stream.h @@ -0,0 +1,82 @@ +/* Copyright 2021 Nick Brassel (@tzarc) + * + * 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 . + */ + +#pragma once + +#include +#include +#include +#include + +#include "qp_internal.h" + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Stream API + +typedef struct qp_stream_t qp_stream_t; + +#define qp_stream_get(stream_ptr) (((qp_stream_t *)(stream_ptr))->get((qp_stream_t *)(stream_ptr))) +#define qp_stream_put(stream_ptr, c) (((qp_stream_t *)(stream_ptr))->put((qp_stream_t *)(stream_ptr), (c))) +#define qp_stream_seek(stream_ptr, offset, origin) (((qp_stream_t *)(stream_ptr))->seek((qp_stream_t *)(stream_ptr), (offset), (origin))) +#define qp_stream_tell(stream_ptr) (((qp_stream_t *)(stream_ptr))->tell((qp_stream_t *)(stream_ptr))) +#define qp_stream_eof(stream_ptr) (((qp_stream_t *)(stream_ptr))->is_eof((qp_stream_t *)(stream_ptr))) +#define qp_stream_setpos(stream_ptr, offset) qp_stream_seek((stream_ptr), (offset), SEEK_SET) +#define qp_stream_getpos(stream_ptr) qp_stream_tell((stream_ptr)) +#define qp_stream_read(output_buf, member_size, num_members, stream_ptr) qp_stream_read_impl((output_buf), (member_size), (num_members), (qp_stream_t *)(stream_ptr)) +#define qp_stream_write(input_buf, member_size, num_members, stream_ptr) qp_stream_write_impl((input_buf), (member_size), (num_members), (qp_stream_t *)(stream_ptr)) + +uint32_t qp_stream_read_impl(void *output_buf, uint32_t member_size, uint32_t num_members, qp_stream_t *stream); +uint32_t qp_stream_write_impl(const void *input_buf, uint32_t member_size, uint32_t num_members, qp_stream_t *stream); + +#define STREAM_EOF ((int16_t)(-1)) + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Stream definition + +struct qp_stream_t { + int16_t (*get)(qp_stream_t *stream); + bool (*put)(qp_stream_t *stream, uint8_t c); + int (*seek)(qp_stream_t *stream, int32_t offset, int origin); + int32_t (*tell)(qp_stream_t *stream); + bool (*is_eof)(qp_stream_t *stream); +}; + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// Memory streams + +typedef struct qp_memory_stream_t { + qp_stream_t base; + uint8_t * buffer; + int32_t length; + int32_t position; + bool is_eof; +} qp_memory_stream_t; + +qp_memory_stream_t qp_make_memory_stream(void *buffer, int32_t length); + +//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// +// FILE streams + +#ifdef QP_STREAM_HAS_FILE_IO + +typedef struct qp_file_stream_t { + qp_stream_t base; + FILE * file; +} qp_file_stream_t; + +qp_file_stream_t qo_make_file_stream(FILE *f); + +#endif // QP_STREAM_HAS_FILE_IO diff --git a/quantum/painter/rules.mk b/quantum/painter/rules.mk new file mode 100644 index 0000000000..9115d3d406 --- /dev/null +++ b/quantum/painter/rules.mk @@ -0,0 +1,116 @@ +# Quantum Painter Configurables +QUANTUM_PAINTER_DRIVERS ?= +QUANTUM_PAINTER_ANIMATIONS_ENABLE ?= yes + +# The list of permissible drivers that can be listed in QUANTUM_PAINTER_DRIVERS +VALID_QUANTUM_PAINTER_DRIVERS := ili9163_spi ili9341_spi st7789_spi gc9a01_spi ssd1351_spi + +#------------------------------------------------------------------------------- + +OPT_DEFS += -DQUANTUM_PAINTER_ENABLE +COMMON_VPATH += $(QUANTUM_DIR)/painter +SRC += \ + $(QUANTUM_DIR)/utf8.c \ + $(QUANTUM_DIR)/color.c \ + $(QUANTUM_DIR)/painter/qp.c \ + $(QUANTUM_DIR)/painter/qp_stream.c \ + $(QUANTUM_DIR)/painter/qgf.c \ + $(QUANTUM_DIR)/painter/qff.c \ + $(QUANTUM_DIR)/painter/qp_draw_core.c \ + $(QUANTUM_DIR)/painter/qp_draw_codec.c \ + $(QUANTUM_DIR)/painter/qp_draw_circle.c \ + $(QUANTUM_DIR)/painter/qp_draw_ellipse.c \ + $(QUANTUM_DIR)/painter/qp_draw_image.c \ + $(QUANTUM_DIR)/painter/qp_draw_text.c + +# Check if people want animations... enable the defered exec if so. +ifeq ($(strip $(QUANTUM_PAINTER_ANIMATIONS_ENABLE)), yes) + DEFERRED_EXEC_ENABLE := yes + OPT_DEFS += -DQUANTUM_PAINTER_ANIMATIONS_ENABLE +endif + +# Comms flags +QUANTUM_PAINTER_NEEDS_COMMS_SPI ?= no + +# Handler for each driver +define handle_quantum_painter_driver + CURRENT_PAINTER_DRIVER := $1 + + ifeq ($$(filter $$(strip $$(CURRENT_PAINTER_DRIVER)),$$(VALID_QUANTUM_PAINTER_DRIVERS)),) + $$(error "$$(CURRENT_PAINTER_DRIVER)" is not a valid Quantum Painter driver) + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ili9163_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_ILI9163_ENABLE -DQUANTUM_PAINTER_ILI9163_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/ili9xxx + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/ili9xxx/qp_ili9163.c \ + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ili9341_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_ILI9341_ENABLE -DQUANTUM_PAINTER_ILI9341_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/ili9xxx + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/ili9xxx/qp_ili9341.c \ + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),st7789_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_ST7789_ENABLE -DQUANTUM_PAINTER_ST7789_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/st77xx + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/st77xx/qp_st7789.c + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),gc9a01_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_GC9A01_ENABLE -DQUANTUM_PAINTER_GC9A01_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/gc9a01 + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/gc9a01/qp_gc9a01.c + + else ifeq ($$(strip $$(CURRENT_PAINTER_DRIVER)),ssd1351_spi) + QUANTUM_PAINTER_NEEDS_COMMS_SPI := yes + QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET := yes + OPT_DEFS += -DQUANTUM_PAINTER_SSD1351_ENABLE -DQUANTUM_PAINTER_SSD1351_SPI_ENABLE + COMMON_VPATH += \ + $(DRIVER_PATH)/painter/tft_panel \ + $(DRIVER_PATH)/painter/ssd1351 + SRC += \ + $(DRIVER_PATH)/painter/tft_panel/qp_tft_panel.c \ + $(DRIVER_PATH)/painter/ssd1351/qp_ssd1351.c + + endif +endef + +# Iterate through the listed drivers for the build, including what's necessary +$(foreach qp_driver,$(QUANTUM_PAINTER_DRIVERS),$(eval $(call handle_quantum_painter_driver,$(qp_driver)))) + +# If SPI comms is needed, set up the required files +ifeq ($(strip $(QUANTUM_PAINTER_NEEDS_COMMS_SPI)), yes) + OPT_DEFS += -DQUANTUM_PAINTER_SPI_ENABLE + QUANTUM_LIB_SRC += spi_master.c + VPATH += $(DRIVER_PATH)/painter/comms + SRC += \ + $(QUANTUM_DIR)/painter/qp_comms.c \ + $(DRIVER_PATH)/painter/comms/qp_comms_spi.c + + ifeq ($(strip $(QUANTUM_PAINTER_NEEDS_COMMS_SPI_DC_RESET)), yes) + OPT_DEFS += -DQUANTUM_PAINTER_SPI_DC_RESET_ENABLE + endif +endif + diff --git a/quantum/process_keycode/process_unicode_common.c b/quantum/process_keycode/process_unicode_common.c index 2606ea1f37..652becbc9a 100644 --- a/quantum/process_keycode/process_unicode_common.c +++ b/quantum/process_keycode/process_unicode_common.c @@ -16,6 +16,7 @@ #include "process_unicode_common.h" #include "eeprom.h" +#include "utf8.h" unicode_config_t unicode_config; uint8_t unicode_saved_mods; @@ -229,35 +230,6 @@ void register_unicode(uint32_t code_point) { unicode_input_finish(); } -// Borrowed from https://nullprogram.com/blog/2017/10/06/ -static const char *decode_utf8(const char *str, int32_t *code_point) { - const char *next; - - if (str[0] < 0x80) { // U+0000-007F - *code_point = str[0]; - next = str + 1; - } else if ((str[0] & 0xE0) == 0xC0) { // U+0080-07FF - *code_point = ((int32_t)(str[0] & 0x1F) << 6) | ((int32_t)(str[1] & 0x3F) << 0); - next = str + 2; - } else if ((str[0] & 0xF0) == 0xE0) { // U+0800-FFFF - *code_point = ((int32_t)(str[0] & 0x0F) << 12) | ((int32_t)(str[1] & 0x3F) << 6) | ((int32_t)(str[2] & 0x3F) << 0); - next = str + 3; - } else if ((str[0] & 0xF8) == 0xF0 && (str[0] <= 0xF4)) { // U+10000-10FFFF - *code_point = ((int32_t)(str[0] & 0x07) << 18) | ((int32_t)(str[1] & 0x3F) << 12) | ((int32_t)(str[2] & 0x3F) << 6) | ((int32_t)(str[3] & 0x3F) << 0); - next = str + 4; - } else { - *code_point = -1; - next = str + 1; - } - - // part of a UTF-16 surrogate pair - invalid - if (*code_point >= 0xD800 && *code_point <= 0xDFFF) { - *code_point = -1; - } - - return next; -} - void send_unicode_string(const char *str) { if (!str) { return; diff --git a/quantum/quantum.h b/quantum/quantum.h index f87e5f1916..9ce3c1f5d6 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -188,6 +188,10 @@ extern layer_state_t layer_state; # include "st7565.h" #endif +#ifdef QUANTUM_PAINTER_ENABLE +# include "qp.h" +#endif + #ifdef DIP_SWITCH_ENABLE # include "dip_switch.h" #endif diff --git a/quantum/utf8.c b/quantum/utf8.c new file mode 100644 index 0000000000..4b2cd4d8d4 --- /dev/null +++ b/quantum/utf8.c @@ -0,0 +1,46 @@ +/* Copyright 2021 QMK + * + * 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 . + */ + +#include "utf8.h" + +// Borrowed from https://nullprogram.com/blog/2017/10/06/ +const char *decode_utf8(const char *str, int32_t *code_point) { + const char *next; + + if (str[0] < 0x80) { // U+0000-007F + *code_point = str[0]; + next = str + 1; + } else if ((str[0] & 0xE0) == 0xC0) { // U+0080-07FF + *code_point = ((int32_t)(str[0] & 0x1F) << 6) | ((int32_t)(str[1] & 0x3F) << 0); + next = str + 2; + } else if ((str[0] & 0xF0) == 0xE0) { // U+0800-FFFF + *code_point = ((int32_t)(str[0] & 0x0F) << 12) | ((int32_t)(str[1] & 0x3F) << 6) | ((int32_t)(str[2] & 0x3F) << 0); + next = str + 3; + } else if ((str[0] & 0xF8) == 0xF0 && (str[0] <= 0xF4)) { // U+10000-10FFFF + *code_point = ((int32_t)(str[0] & 0x07) << 18) | ((int32_t)(str[1] & 0x3F) << 12) | ((int32_t)(str[2] & 0x3F) << 6) | ((int32_t)(str[3] & 0x3F) << 0); + next = str + 4; + } else { + *code_point = -1; + next = str + 1; + } + + // part of a UTF-16 surrogate pair - invalid + if (*code_point >= 0xD800 && *code_point <= 0xDFFF) { + *code_point = -1; + } + + return next; +} diff --git a/quantum/utf8.h b/quantum/utf8.h new file mode 100644 index 0000000000..fb10910944 --- /dev/null +++ b/quantum/utf8.h @@ -0,0 +1,21 @@ +/* Copyright 2021 QMK + * + * 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 . + */ + +#pragma once + +#include + +const char *decode_utf8(const char *str, int32_t *code_point); \ No newline at end of file diff --git a/requirements.txt b/requirements.txt index 6d338ae1cb..e09d58d829 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,3 +9,4 @@ milc>=1.4.2 pygments pyusb qmk-dotty-dict +pillow diff --git a/setup.cfg b/setup.cfg index c7d7952098..6cbe1a616d 100644 --- a/setup.cfg +++ b/setup.cfg @@ -6,7 +6,11 @@ ignore = # Conflicts with our yapf config E231 per_file_ignores = + # Module imported but unused **/__init__.py:F401 + # Quantum Painter also outputs append data using bytes object arithmetic on multiple lines + **/painter_qgf.py:W503 + **/painter_qff.py:W503 # Let's slowly crank this down max_complexity=16 From cf152dd16bb8a0bc1aba3d98f307303d96799fa7 Mon Sep 17 00:00:00 2001 From: 4pplet Date: Wed, 13 Apr 2022 16:11:19 +0200 Subject: [PATCH 236/699] [Keyboard] Waffling60 - minor tweak, improve default behavior of caps lock indicator. (#16836) Co-authored-by: Drashna Jaelre Co-authored-by: 4pplet <4pplet@protonmail.com> Co-authored-by: 4pplet --- .../waffling60/keymaps/default/keymap.c | 6 ++--- .../4pplet/waffling60/keymaps/via/keymap.c | 26 +++++++++---------- keyboards/4pplet/waffling60/rev_b/rev_b.c | 19 +++++++------- keyboards/4pplet/waffling60/rev_b/rev_b.h | 5 ++-- keyboards/4pplet/waffling60/rev_c/rev_c.c | 15 ++++++----- keyboards/4pplet/waffling60/rev_c/rev_c.h | 5 ++-- 6 files changed, 39 insertions(+), 37 deletions(-) diff --git a/keyboards/4pplet/waffling60/keymaps/default/keymap.c b/keyboards/4pplet/waffling60/keymaps/default/keymap.c index c9ae421af1..b60a7154d7 100644 --- a/keyboards/4pplet/waffling60/keymaps/default/keymap.c +++ b/keyboards/4pplet/waffling60/keymaps/default/keymap.c @@ -20,9 +20,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // main layer [0] = LAYOUT_all( 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_NO, 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, - KC_LCTRL, 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_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, + 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, + 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_NUBS, 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_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( diff --git a/keyboards/4pplet/waffling60/keymaps/via/keymap.c b/keyboards/4pplet/waffling60/keymaps/via/keymap.c index d20c6bf06c..3e20ef9f56 100644 --- a/keyboards/4pplet/waffling60/keymaps/via/keymap.c +++ b/keyboards/4pplet/waffling60/keymaps/via/keymap.c @@ -19,10 +19,10 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // main layer [0] = LAYOUT_all( - 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_NO, 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, - KC_LCTRL, 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_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_NO, + 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_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, + 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_NUBS, 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_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( @@ -33,16 +33,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), // extra layer for VIA [2] = LAYOUT_all( - 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, 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, 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, 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), // extra layer for VIA [3] = LAYOUT_all( - 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, 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, 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, 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) -}; \ No newline at end of file +}; diff --git a/keyboards/4pplet/waffling60/rev_b/rev_b.c b/keyboards/4pplet/waffling60/rev_b/rev_b.c index 5f701b57f4..c03f3630e6 100644 --- a/keyboards/4pplet/waffling60/rev_b/rev_b.c +++ b/keyboards/4pplet/waffling60/rev_b/rev_b.c @@ -18,15 +18,16 @@ along with this program. If not, see . bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); - if(CAPS_LOCK_ENABLE){ - if(res) { - if(led_state.caps_lock){ - rgblight_enable(); - rgblight_mode(1); - rgblight_sethsv_noeeprom(CAPS_LOCK_COLOR); - } - else - rgblight_disable_noeeprom(); + if (CAPS_LOCK_ENABLE && res) { + if(led_state.caps_lock) { + #ifdef CAPS_LOCK_COLOR + rgblight_sethsv_at(CAPS_LOCK_COLOR, 0); + #else + rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 0); + #endif + } + else{ + rgblight_sethsv_at(HSV_OFF, 0); } } return res; diff --git a/keyboards/4pplet/waffling60/rev_b/rev_b.h b/keyboards/4pplet/waffling60/rev_b/rev_b.h index e6dc7a15db..e54e020354 100644 --- a/keyboards/4pplet/waffling60/rev_b/rev_b.h +++ b/keyboards/4pplet/waffling60/rev_b/rev_b.h @@ -16,9 +16,8 @@ along with this program. If not, see . */ #pragma once -// defines to set RGB-led behaviour. Off by default -#define CAPS_LOCK_ENABLE false -#define CAPS_LOCK_COLOR HSV_ORANGE +#define CAPS_LOCK_ENABLE true +//#define CAPS_LOCK_COLOR HSV_ORANGE #include "quantum.h" diff --git a/keyboards/4pplet/waffling60/rev_c/rev_c.c b/keyboards/4pplet/waffling60/rev_c/rev_c.c index f00cce06dc..fc7e99b601 100644 --- a/keyboards/4pplet/waffling60/rev_c/rev_c.c +++ b/keyboards/4pplet/waffling60/rev_c/rev_c.c @@ -19,12 +19,15 @@ along with this program. If not, see . bool led_update_kb(led_t led_state) { bool res = led_update_user(led_state); if (CAPS_LOCK_ENABLE && res) { - if (led_state.caps_lock){ - rgblight_enable(); - rgblight_mode(1); - rgblight_sethsv_noeeprom(CAPS_LOCK_COLOR); - } else { - rgblight_disable_noeeprom(); + if(led_state.caps_lock) { + #ifdef CAPS_LOCK_COLOR + rgblight_sethsv_at(CAPS_LOCK_COLOR, 0); + #else + rgblight_sethsv_at(rgblight_get_hue(),rgblight_get_sat(),rgblight_get_val(), 0); + #endif + } + else{ + rgblight_sethsv_at(HSV_OFF, 0); } } return res; diff --git a/keyboards/4pplet/waffling60/rev_c/rev_c.h b/keyboards/4pplet/waffling60/rev_c/rev_c.h index 3df9419eb9..701098df1f 100644 --- a/keyboards/4pplet/waffling60/rev_c/rev_c.h +++ b/keyboards/4pplet/waffling60/rev_c/rev_c.h @@ -16,9 +16,8 @@ along with this program. If not, see . */ #pragma once -// defines to set RGB-led behaviour. Off by default -#define CAPS_LOCK_ENABLE false -#define CAPS_LOCK_COLOR HSV_ORANGE +#define CAPS_LOCK_ENABLE true +//#define CAPS_LOCK_COLOR HSV_ORANGE #include "quantum.h" From 7216243a7a1b3e8c4268d1a9f9e03182c2cfcf41 Mon Sep 17 00:00:00 2001 From: IFo Hancroft Date: Wed, 13 Apr 2022 17:17:11 +0300 Subject: [PATCH 237/699] [Keyboard] Ported ErgoDox to VIA (#16804) --- keyboards/ergodox_ez/keymaps/via/keymap.c | 90 +++++++++++++++++++++++ keyboards/ergodox_ez/keymaps/via/rules.mk | 1 + 2 files changed, 91 insertions(+) create mode 100644 keyboards/ergodox_ez/keymaps/via/keymap.c create mode 100644 keyboards/ergodox_ez/keymaps/via/rules.mk diff --git a/keyboards/ergodox_ez/keymaps/via/keymap.c b/keyboards/ergodox_ez/keymaps/via/keymap.c new file mode 100644 index 0000000000..21ee23a3c2 --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/via/keymap.c @@ -0,0 +1,90 @@ +/* Copyright 2022 IFo Hancroft + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Default Layer + * *---------------------------------------------------------------------* *---------------------------------------------------------------------* + * | = | 1 | 2 | 3 | 4 | 5 | Left | | RIGHT | 6 | 7 | 8 | 9 | 0 | - | + * |---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------| + * | Del | Q | W | E | R | T | L1 | | L1 | Y | U | I | O | P | \ | + * |---------+---------+---------+---------+---------+---------+---------| |---------+---------+---------+---------+---------+---------+---------| + * | BkSp | A | S | D | F | G | Hyper | | Meh | H | J | K | L | ; / L2 | ' / CMD | + * |---------+---------+---------+---------+---------+---------+---------* *---------+---------+---------+---------+---------+---------+---------| + * | Shift | Z/Ctrl | X | C | V | B | | N | M | , | . | //Ctrl | Shift | + * |---------+---------+---------+---------+---------+---------* *---------+---------+---------+---------+---------+---------| + * | Grv/L1 | " | AltShf | Left | Right | | Up | Down | [ | ] | ~L1 | + * *-------------------------------------------------* *-------------------------------------------------* + * + * *-------------------* *-------------------* + * | App | LGui | | Alt | Ctrl/Esc| + * *---------+---------+---------| |---------+---------+---------* + * | | | Home | | PgUp | | | + * | Space | BkSp |---------| |---------| Tab | Enter | + * | | | End | | PgDn | | | + * *---------+---------+---------* *---------+---------+---------* + */ + + LAYOUT_ergodox_pretty( + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LEFT, KC_RGHT, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_DEL, KC_Q, KC_W, KC_E, KC_R, KC_T, TG(1), TG(1), KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(2, KC_SCLN), GUI_T(KC_QUOT), + KC_LSFT, CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, ALL_T(KC_NO), MEH_T(KC_NO), KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), KC_RSFT, + LT(0,KC_GRV), KC_QUOT, LALT(KC_LSFT), KC_LEFT, KC_RIGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, TT(1), + + ALT_T(KC_APP), KC_LGUI, KC_LALT, CTL_T(KC_ESC), + KC_HOME, KC_PGUP, + KC_SPC, KC_BSPC, KC_END, KC_PGDN, KC_TAB, KC_ENT + ), + + LAYOUT_ergodox_pretty( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + ), + + LAYOUT_ergodox_pretty( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + ), + + LAYOUT_ergodox_pretty( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + _______, _______, _______, _______, + _______, _______, + _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/ergodox_ez/keymaps/via/rules.mk b/keyboards/ergodox_ez/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/ergodox_ez/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes From e9ad400b83a05042b5054de81711b00ca69c2afc Mon Sep 17 00:00:00 2001 From: mudhead <100776178+themudhead@users.noreply.github.com> Date: Wed, 13 Apr 2022 10:18:21 -0400 Subject: [PATCH 238/699] [Keyboard] KBD67 rev1 Caps Lock LED Fix (#16790) --- keyboards/kbdfans/kbd67/rev1/config.h | 1 + 1 file changed, 1 insertion(+) diff --git a/keyboards/kbdfans/kbd67/rev1/config.h b/keyboards/kbdfans/kbd67/rev1/config.h index 72aa27afcc..b7ad8de4e2 100644 --- a/keyboards/kbdfans/kbd67/rev1/config.h +++ b/keyboards/kbdfans/kbd67/rev1/config.h @@ -48,6 +48,7 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW #define LED_CAPS_LOCK_PIN B2 +#define LED_PIN_ON_STATE 0 #define BACKLIGHT_PIN B6 #ifdef BACKLIGHT_PIN From 87777d1cdd51539ab319cc4157348d88c1bf6809 Mon Sep 17 00:00:00 2001 From: Tyler Thrailkill Date: Wed, 13 Apr 2022 08:19:24 -0600 Subject: [PATCH 239/699] [Keymap] Fix snowe keymap after updates to QMK (#16777) --- keyboards/crkbd/keymaps/snowe/config.h | 3 ++- keyboards/crkbd/keymaps/snowe/keymap.c | 19 +++++++++++++++++++ users/snowe/ocean_dream.h | 2 +- users/snowe/oled_setup.c | 24 ++++++++++++++---------- users/snowe/snowe.h | 2 +- users/snowe/wrappers.h | 2 +- 6 files changed, 38 insertions(+), 14 deletions(-) diff --git a/keyboards/crkbd/keymaps/snowe/config.h b/keyboards/crkbd/keymaps/snowe/config.h index b624b589bc..575e39892d 100644 --- a/keyboards/crkbd/keymaps/snowe/config.h +++ b/keyboards/crkbd/keymaps/snowe/config.h @@ -52,4 +52,5 @@ along with this program. If not, see . #define IGNORE_MOD_TAP_INTERRUPT //#define IGNORE_MOD_TAP_INTERRUPT_PER_KEY -#define LAYER_STATE_8BIT \ No newline at end of file +#define LAYER_STATE_8BIT +#define SPLIT_WPM_ENABLE diff --git a/keyboards/crkbd/keymaps/snowe/keymap.c b/keyboards/crkbd/keymaps/snowe/keymap.c index 4dfd6ecbeb..f5972d62db 100644 --- a/keyboards/crkbd/keymaps/snowe/keymap.c +++ b/keyboards/crkbd/keymaps/snowe/keymap.c @@ -57,6 +57,20 @@ along with this program. If not, see . ) // clang-format on #define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__) +// clang-format off +#define LAYOUT_crkbd_no_hold_shortcuts( \ + K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, \ + K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, \ + K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A \ + ) \ + LAYOUT_wrapper( \ + KC_TAB, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, KC_MINS, \ + GUI_ESC, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, KC_QUOT, \ + KC_LSFT, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, KC_BSLS, \ + KC_LCTL, LOWER, KC_BSPC, KC_ENTER, SP_RAIS, KC_LALT \ + ) +// clang-format on +#define LAYOUT_crkbd_no_hold_shortcuts_wrapper(...) LAYOUT_crkbd_no_hold_shortcuts(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // clang-format off @@ -77,6 +91,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), + [_GAMING] = LAYOUT_crkbd_no_hold_shortcuts_wrapper( + _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, + _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, + _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ + ), /* Lower * ,-----------------------------------------------. .-----------------------------------------------. diff --git a/users/snowe/ocean_dream.h b/users/snowe/ocean_dream.h index 498375559a..57e0b91557 100644 --- a/users/snowe/ocean_dream.h +++ b/users/snowe/ocean_dream.h @@ -22,7 +22,7 @@ * Features: * You can turn on and off features in this section */ -#define ENABLE_MOON // Uses 182 bytes +//#define ENABLE_MOON // Uses 182 bytes #define ENABLE_WAVE // Uses 844 bytes #define ENABLE_SHOOTING_STARS // Uses 872 bytes #define ENABLE_ISLAND diff --git a/users/snowe/oled_setup.c b/users/snowe/oled_setup.c index dfc4b085e3..be54d9f558 100644 --- a/users/snowe/oled_setup.c +++ b/users/snowe/oled_setup.c @@ -25,15 +25,16 @@ # include // for keylog? oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (!is_master) { + if (!is_keyboard_master()) { return OLED_ROTATION_270; // flips the display 180 degrees if offhand } return OLED_ROTATION_270; } # define L_BASE 0 -# define L_LOWER 2 -# define L_RAISE 4 +# define L_GAME 2 +# define L_LOWER 4 +# define L_RAISE 6 # define L_ADJUST 8 void oled_render_layer_state(void) { @@ -42,18 +43,21 @@ void oled_render_layer_state(void) { case L_BASE: oled_write_ln_P(PSTR("Main"), false); break; + case L_GAME: + oled_write_ln_P(PSTR("Game"), false); + break; case L_LOWER: oled_write_ln_P(PSTR("Bot"), false); break; case L_RAISE: oled_write_ln_P(PSTR("Top"), false); break; - case L_ADJUST: - case L_ADJUST | L_LOWER: - case L_ADJUST | L_RAISE: - case L_ADJUST | L_LOWER | L_RAISE: - oled_write_ln_P(PSTR("Comb"), false); - break; +// case L_ADJUST: +// case L_ADJUST | L_LOWER: +// case L_ADJUST | L_RAISE: +// case L_ADJUST | L_LOWER | L_RAISE: +// oled_write_ln_P(PSTR("Comb"), false); +// break; } } @@ -122,7 +126,7 @@ void render_bootmagic_status(void) { } bool oled_task_user(void) { - if (is_master) { + if (is_keyboard_master()) { oled_render_layer_state(); oled_render_keylog(); render_bootmagic_status(); diff --git a/users/snowe/snowe.h b/users/snowe/snowe.h index 21764ca507..6a2fc2aba1 100644 --- a/users/snowe/snowe.h +++ b/users/snowe/snowe.h @@ -40,4 +40,4 @@ along with this program. If not, see . #endif -enum layers { _MAIN, _LOWER, _UPPER, _ADJUST }; +enum layers { _MAIN, _GAMING, _LOWER, _UPPER, _ADJUST }; diff --git a/users/snowe/wrappers.h b/users/snowe/wrappers.h index 485f8de542..9ef7dce607 100644 --- a/users/snowe/wrappers.h +++ b/users/snowe/wrappers.h @@ -85,7 +85,7 @@ NOTE: These are all the same length. If you do a search/replace #define _________________ADJUST_L1_________________ RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG -#define _________________ADJUST_L2_________________ MU_TOG , CK_TOGG, AU_ON, AU_OFF, AG_NORM +#define _________________ADJUST_L2_________________ MU_TOG , TG(_GAMING), AU_ON, AU_OFF, AG_NORM #define _________________ADJUST_L3_________________ RGB_RMOD,RGB_HUD,RGB_SAD, RGB_VAD, _______ #define _________________ADJUST_R1_________________ _______, _______, _______, _______, _______ #define _________________ADJUST_R2_________________ RESET, CG_TOGG, _______, _______, _______ From a8e01df50fe8c88828f317903d781fe5c7d69fcc Mon Sep 17 00:00:00 2001 From: mechlovin <57231893+mechlovin@users.noreply.github.com> Date: Wed, 13 Apr 2022 21:20:00 +0700 Subject: [PATCH 240/699] [Keyboard] correct matrix for Kay65 (#16751) --- keyboards/mechlovin/kay65/info.json | 13 +++++++------ keyboards/mechlovin/kay65/kay65.h | 4 ++-- keyboards/mechlovin/kay65/keymaps/via/keymap.c | 8 ++++---- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/keyboards/mechlovin/kay65/info.json b/keyboards/mechlovin/kay65/info.json index 9a2f7dc01b..7afccc81c0 100644 --- a/keyboards/mechlovin/kay65/info.json +++ b/keyboards/mechlovin/kay65/info.json @@ -69,8 +69,9 @@ {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, - {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, - {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K49 (B4,C7)", "x":10, "y":4}, + {"label":"K4A (B4,C7)", "x":11, "y":4}, + {"label":"K4B (B4,D0)", "x":12, "y":4}, {"label":"K4C (B4,D1)", "x":13, "y":4}, {"label":"K4D (B4,D2)", "x":14, "y":4}, {"label":"K4E (B4,D3)", "x":15, "y":4} @@ -140,8 +141,8 @@ {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, - {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, - {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K49 (B4,C7)", "x":10, "y":4, "w":1.25}, + {"label":"K4A (B4,D0)", "x":11.25, "y":4, "w":1.25}, {"label":"K4C (B4,D1)", "x":13, "y":4}, {"label":"K4D (B4,D2)", "x":14, "y":4}, {"label":"K4E (B4,D3)", "x":15, "y":4} @@ -212,8 +213,8 @@ {"label":"K41 (B4,B6)", "x":1.25, "y":4, "w":1.25}, {"label":"K42 (B4,B7)", "x":2.5, "y":4, "w":1.25}, {"label":"K46 (B4,C3)", "x":3.75, "y":4, "w":6.25}, - {"label":"K4A (B4,C7)", "x":10, "y":4, "w":1.25}, - {"label":"K4B (B4,D0)", "x":11.25, "y":4, "w":1.25}, + {"label":"K49 (B4,C7)", "x":10, "y":4, "w":1.25}, + {"label":"K4A (B4,D0)", "x":11.25, "y":4, "w":1.25}, {"label":"K4C (B4,D1)", "x":13, "y":4}, {"label":"K4D (B4,D2)", "x":14, "y":4}, {"label":"K4E (B4,D3)", "x":15, "y":4} diff --git a/keyboards/mechlovin/kay65/kay65.h b/keyboards/mechlovin/kay65/kay65.h index 7da2a74969..1af2673dc1 100644 --- a/keyboards/mechlovin/kay65/kay65.h +++ b/keyboards/mechlovin/kay65/kay65.h @@ -24,13 +24,13 @@ along with this program. If not, see . K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ - K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ + K40, K41, K42, K46, K49, K4A, K4B, K4C, K4D, K4E \ ) { \ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ - { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, K49, K4A, K4B, K4C, K4D, K4E }, \ } #define LAYOUT_65_ansi_blocker( \ diff --git a/keyboards/mechlovin/kay65/keymaps/via/keymap.c b/keyboards/mechlovin/kay65/keymaps/via/keymap.c index 02e1b8578d..01a524e2a0 100644 --- a/keyboards/mechlovin/kay65/keymaps/via/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/via/keymap.c @@ -28,28 +28,28 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_PGUP, 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_PGDN, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( 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, 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, 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 ), [2] = LAYOUT_all( 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, 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, 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 ), [3] = LAYOUT_all( 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, 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, 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 ), From 3f8343e5525adb6c02c10c6659c54d18204c52fb Mon Sep 17 00:00:00 2001 From: Christian Lo Date: Wed, 13 Apr 2022 08:23:01 -0600 Subject: [PATCH 241/699] [Keyboard] Add banime40 keyboard (#16694) Co-authored-by: Ryan --- keyboards/sporewoh/banime40/banime40.c | 18 +++++ keyboards/sporewoh/banime40/banime40.h | 33 +++++++++ keyboards/sporewoh/banime40/config.h | 42 +++++++++++ keyboards/sporewoh/banime40/info.json | 50 +++++++++++++ .../banime40/keymaps/default/keymap.c | 41 +++++++++++ .../sporewoh/banime40/keymaps/via/keymap.c | 71 +++++++++++++++++++ .../sporewoh/banime40/keymaps/via/rules.mk | 2 + keyboards/sporewoh/banime40/readme.md | 27 +++++++ keyboards/sporewoh/banime40/rules.mk | 20 ++++++ 9 files changed, 304 insertions(+) create mode 100644 keyboards/sporewoh/banime40/banime40.c create mode 100644 keyboards/sporewoh/banime40/banime40.h create mode 100644 keyboards/sporewoh/banime40/config.h create mode 100644 keyboards/sporewoh/banime40/info.json create mode 100644 keyboards/sporewoh/banime40/keymaps/default/keymap.c create mode 100644 keyboards/sporewoh/banime40/keymaps/via/keymap.c create mode 100644 keyboards/sporewoh/banime40/keymaps/via/rules.mk create mode 100644 keyboards/sporewoh/banime40/readme.md create mode 100644 keyboards/sporewoh/banime40/rules.mk diff --git a/keyboards/sporewoh/banime40/banime40.c b/keyboards/sporewoh/banime40/banime40.c new file mode 100644 index 0000000000..4e55c6116e --- /dev/null +++ b/keyboards/sporewoh/banime40/banime40.c @@ -0,0 +1,18 @@ +/* +Copyright 2022 sporewoh + +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 . +*/ + +#include "banime40.h" diff --git a/keyboards/sporewoh/banime40/banime40.h b/keyboards/sporewoh/banime40/banime40.h new file mode 100644 index 0000000000..98b2bcd098 --- /dev/null +++ b/keyboards/sporewoh/banime40/banime40.h @@ -0,0 +1,33 @@ +/* +Copyright 2022 sporewoh + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_ortho_4x10( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39 \ +) \ +{ \ + {k00, k01, k02, k03, k04, k05, k06, k07, k08, k09}, \ + {k10, k11, k12, k13, k14, k15, k16, k17, k18, k19}, \ + {k20, k21, k22, k23, k24, k25, k26, k27, k28, k29}, \ + {k30, k31, k32, k33, k34, k35, k36, k37, k38, k39} \ +} diff --git a/keyboards/sporewoh/banime40/config.h b/keyboards/sporewoh/banime40/config.h new file mode 100644 index 0000000000..58173b58be --- /dev/null +++ b/keyboards/sporewoh/banime40/config.h @@ -0,0 +1,42 @@ +/* +Copyright 2022 sporewoh + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xBEAF +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0000 +#define MANUFACTURER sporewoh +#define PRODUCT banime40 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 10 + +/* pin-out for PCB */ +#define MATRIX_ROW_PINS { E6, D7, C6, D4 } +#define MATRIX_COL_PINS { B4, B5, B6, B2, B3, B1, F7, F6, F5, F4 } + +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define DYNAMIC_KEYMAP_LAYER_COUNT 10 diff --git a/keyboards/sporewoh/banime40/info.json b/keyboards/sporewoh/banime40/info.json new file mode 100644 index 0000000000..36a7ee9eb5 --- /dev/null +++ b/keyboards/sporewoh/banime40/info.json @@ -0,0 +1,50 @@ +{ + "keyboard_name": "banime40", + "url": "https://github.com/ChrisChrisLoLo/banime40", + "maintainer": "sporewoh", + "layouts": { + "LAYOUT_ortho_4x10": { + "layout": [ + {"w":1, "x":0, "y":0}, + {"w":1, "x":1, "y":0}, + {"w":1, "x":2, "y":0}, + {"w":1, "x":3, "y":0}, + {"w":1, "x":4, "y":0}, + {"w":1, "x":5, "y":0}, + {"w":1, "x":6, "y":0}, + {"w":1, "x":7, "y":0}, + {"w":1, "x":8, "y":0}, + {"w":1, "x":9, "y":0}, + {"w":1, "x":0, "y":1}, + {"w":1, "x":1, "y":1}, + {"w":1, "x":2, "y":1}, + {"w":1, "x":3, "y":1}, + {"w":1, "x":4, "y":1}, + {"w":1, "x":5, "y":1}, + {"w":1, "x":6, "y":1}, + {"w":1, "x":7, "y":1}, + {"w":1, "x":8, "y":1}, + {"w":1, "x":9, "y":1}, + {"w":1, "x":0, "y":2}, + {"w":1, "x":1, "y":2}, + {"w":1, "x":2, "y":2}, + {"w":1, "x":3, "y":2}, + {"w":1, "x":4, "y":2}, + {"w":1, "x":5, "y":2}, + {"w":1, "x":6, "y":2}, + {"w":1, "x":7, "y":2}, + {"w":1, "x":8, "y":2}, + {"w":1, "x":9, "y":2}, + {"w":1, "x":0, "y":3}, + {"w":1, "x":1, "y":3}, + {"w":1, "x":2, "y":3}, + {"w":1, "x":3, "y":3}, + {"w":1, "x":4, "y":3}, + {"w":1, "x":5, "y":3}, + {"w":1, "x":6, "y":3}, + {"w":1, "x":7, "y":3}, + {"w":1, "x":8, "y":3}, + {"w":1, "x":9, "y":3}] + } + } +} diff --git a/keyboards/sporewoh/banime40/keymaps/default/keymap.c b/keyboards/sporewoh/banime40/keymaps/default/keymap.c new file mode 100644 index 0000000000..7c6f5073f7 --- /dev/null +++ b/keyboards/sporewoh/banime40/keymaps/default/keymap.c @@ -0,0 +1,41 @@ +/* +Copyright 2022 sporewoh + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x10( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(3,KC_MINS), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LT(4,KC_SLSH), + KC_LCTL, KC_LGUI, KC_LALT, KC_LSFT, LT(2,KC_BSPC), LT(1,KC_SPC), KC_ENT, KC_APP, KC_DEL, KC_ESC), + [1] = LAYOUT_ortho_4x10( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TAB, KC_NO, KC_NO, KC_GRV, KC_LBRC, KC_RBRC, KC_BSLS, KC_SCLN, KC_QUOT, KC_MINS, + KC_NO, KC_NO, KC_NO, KC_NO, KC_EQL, KC_MINS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + [2] = LAYOUT_ortho_4x10( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + KC_TAB, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_CAPS, KC_PSCR, KC_SLCK, KC_PAUS, KC_NO, KC_NLCK, KC_NO, KC_VOLD, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [3] = LAYOUT_ortho_4x10( + KC_ESC, KC_NO, KC_NO, KC_NO, KC_NO, KC_INS, KC_PGUP, KC_UP, KC_PGDN, KC_DEL, + KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO) +}; diff --git a/keyboards/sporewoh/banime40/keymaps/via/keymap.c b/keyboards/sporewoh/banime40/keymaps/via/keymap.c new file mode 100644 index 0000000000..064b2f13c7 --- /dev/null +++ b/keyboards/sporewoh/banime40/keymaps/via/keymap.c @@ -0,0 +1,71 @@ +/* +Copyright 2022 sporewoh + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x10( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, LT(3,KC_MINS), + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, LT(4,KC_SLSH), + KC_LCTL, KC_LGUI, KC_LALT, KC_LSFT, LT(2,KC_BSPC), LT(1,KC_SPC), KC_ENT, KC_APP, KC_DEL, KC_ESC), + [1] = LAYOUT_ortho_4x10( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TAB, KC_NO, KC_NO, KC_GRV, KC_LBRC, KC_RBRC, KC_BSLS, KC_SCLN, KC_QUOT, KC_MINS, + KC_NO, KC_NO, KC_NO, KC_NO, KC_EQL, KC_MINS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + [2] = LAYOUT_ortho_4x10( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + KC_TAB, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_CAPS, KC_PSCR, KC_SLCK, KC_PAUS, KC_NO, KC_NLCK, KC_NO, KC_VOLD, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [3] = LAYOUT_ortho_4x10( + KC_ESC, KC_NO, KC_NO, KC_NO, KC_NO, KC_INS, KC_PGUP, KC_UP, KC_PGDN, KC_DEL, + KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_NO, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [4] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [5] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [6] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [7] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [8] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), + [9] = LAYOUT_ortho_4x10( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO) +}; diff --git a/keyboards/sporewoh/banime40/keymaps/via/rules.mk b/keyboards/sporewoh/banime40/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/sporewoh/banime40/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/sporewoh/banime40/readme.md b/keyboards/sporewoh/banime40/readme.md new file mode 100644 index 0000000000..cd536880ae --- /dev/null +++ b/keyboards/sporewoh/banime40/readme.md @@ -0,0 +1,27 @@ +# banime40 + +![](https://i.imgur.com/sHQyMfEh.jpeg) + +A hotswap gasket mount 4x10 that can support multiple layouts. + +* Keyboard Maintainer: [sporewoh](https://github.com/ChrisChrisLoLo) +* Hardware Supported: Open source PCB files, Pro Micro compatible +* Hardware Availability: PCBs and Case files available [here](https://github.com/ChrisChrisLoLo/banime40) + +Make example for this keyboard (after setting up your build environment): + + make sporewoh/banime40:default + +Flashing example for this keyboard: + + make sporewoh/banime40:default:flash + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead diff --git a/keyboards/sporewoh/banime40/rules.mk b/keyboards/sporewoh/banime40/rules.mk new file mode 100644 index 0000000000..8c8ea8e825 --- /dev/null +++ b/keyboards/sporewoh/banime40/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = ortho_4x10 From ad981dea72af5a2e207ed276231470a4f675e54a Mon Sep 17 00:00:00 2001 From: bwisn <56162793+bwisn@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:24:38 +0200 Subject: [PATCH 242/699] [Keyboard] annepro2: match default keymap to stock keycaps (#16724) --- keyboards/annepro2/annepro2.c | 64 +++++++++++++++++++++ keyboards/annepro2/annepro2.h | 4 ++ keyboards/annepro2/keymaps/default/keymap.c | 12 ++-- 3 files changed, 74 insertions(+), 6 deletions(-) diff --git a/keyboards/annepro2/annepro2.c b/keyboards/annepro2/annepro2.c index 0f49f93104..ef18f83329 100644 --- a/keyboards/annepro2/annepro2.c +++ b/keyboards/annepro2/annepro2.c @@ -42,6 +42,8 @@ static const SerialConfig ble_uart_config = { static uint8_t led_mcu_wakeup[11] = {0x7b, 0x10, 0x43, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x02}; +static uint8_t led_enabled = 1; + ble_capslock_t ble_capslock = {._dummy = {0}, .caps_lock = false}; #ifdef RGB_MATRIX_ENABLE @@ -226,6 +228,68 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { else ap2_led_enable(); return true; #endif + + case KC_AP_RGB_VAI: + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_hue(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_hue(); + return false; + } else { + rgb_matrix_increase_val(); + } + } + return true; + + case KC_AP_RGB_VAD: + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_sat(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_sat(); + return false; + } else { + rgb_matrix_decrease_val(); + } + } + return true; + + case KC_AP_RGB_TOG: + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_speed(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_speed(); + return false; + } else { + if (led_enabled) { + ap2_led_disable(); + rgb_matrix_disable(); + led_enabled = 0; + } else { + ap2_led_enable(); + rgb_matrix_enable(); + led_enabled = 1; + } + return true; + } + } + return true; + + case KC_AP_RGB_MOD: + if (record->event.pressed) { + if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_step_reverse(); + return false; + } else { + rgb_matrix_step(); + } + } + return true; default: break; diff --git a/keyboards/annepro2/annepro2.h b/keyboards/annepro2/annepro2.h index 143904b6ad..393d9b4731 100644 --- a/keyboards/annepro2/annepro2.h +++ b/keyboards/annepro2/annepro2.h @@ -58,6 +58,10 @@ enum AP2KeyCodes { KC_AP_LED_PREV_PROFILE, KC_AP_LED_NEXT_INTENSITY, KC_AP_LED_SPEED, + KC_AP_RGB_VAI, + KC_AP_RGB_VAD, + KC_AP_RGB_TOG, + KC_AP_RGB_MOD, AP2_SAFE_RANGE, }; diff --git a/keyboards/annepro2/keymaps/default/keymap.c b/keyboards/annepro2/keymaps/default/keymap.c index 8f5b639bb8..8af2d9a32c 100644 --- a/keyboards/annepro2/keymaps/default/keymap.c +++ b/keyboards/annepro2/keymaps/default/keymap.c @@ -83,7 +83,7 @@ enum anne_pro_layers { /* * Layer FN2 * ,-----------------------------------------------------------------------------------------. - * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | HUE | SAT | BRI | SPD | MOD | TOG | Bksp | + * | ~ | BT1 | BT2 | BT3 | BT4 | F5 | F6 | F7 | F8 | MOD | TOG | BRI- | BRI+ | Bksp | * |-----------------------------------------------------------------------------------------+ * | Tab | q | UP | e | r | t | y | u | i | o | PS | HOME | END | \ | * |-----------------------------------------------------------------------------------------+ @@ -96,11 +96,11 @@ enum anne_pro_layers { * */ [FN2] = LAYOUT_60_ansi( /* FN2 */ - _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_MOD, RGB_TOG, _______, - MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, - _______, _______, _______, _______, _______, MO(FN1), MO(FN2), _______ + _______, KC_AP2_BT1, KC_AP2_BT2, KC_AP2_BT3, KC_AP2_BT4, _______, _______, _______, _______, KC_AP_RGB_MOD, KC_AP_RGB_TOG, KC_AP_RGB_VAD, KC_AP_RGB_VAI, _______, + MO(FN2), _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_HOME, KC_END, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, _______, + _______, _______, _______, _______, _______, MO(FN1), MO(FN2), _______ ), }; // clang-format on From 84307744306e46d2699f9766be07f530af7c310e Mon Sep 17 00:00:00 2001 From: moyi4681 Date: Wed, 13 Apr 2022 07:24:56 -0700 Subject: [PATCH 243/699] [Keyboard] add tiger80 keyboard (#16742) Co-authored-by: Drashna Jaelre --- keyboards/kbdfans/tiger80/config.h | 66 +++++++++++++++++++ keyboards/kbdfans/tiger80/info.json | 10 +++ .../kbdfans/tiger80/keymaps/default/keymap.c | 37 +++++++++++ .../kbdfans/tiger80/keymaps/via/keymap.c | 63 ++++++++++++++++++ .../kbdfans/tiger80/keymaps/via/rules.mk | 2 + keyboards/kbdfans/tiger80/readme.md | 21 ++++++ keyboards/kbdfans/tiger80/rules.mk | 18 +++++ keyboards/kbdfans/tiger80/tiger80.c | 17 +++++ keyboards/kbdfans/tiger80/tiger80.h | 35 ++++++++++ 9 files changed, 269 insertions(+) create mode 100644 keyboards/kbdfans/tiger80/config.h create mode 100644 keyboards/kbdfans/tiger80/info.json create mode 100644 keyboards/kbdfans/tiger80/keymaps/default/keymap.c create mode 100644 keyboards/kbdfans/tiger80/keymaps/via/keymap.c create mode 100644 keyboards/kbdfans/tiger80/keymaps/via/rules.mk create mode 100644 keyboards/kbdfans/tiger80/readme.md create mode 100644 keyboards/kbdfans/tiger80/rules.mk create mode 100644 keyboards/kbdfans/tiger80/tiger80.c create mode 100644 keyboards/kbdfans/tiger80/tiger80.h diff --git a/keyboards/kbdfans/tiger80/config.h b/keyboards/kbdfans/tiger80/config.h new file mode 100644 index 0000000000..ea68effd4f --- /dev/null +++ b/keyboards/kbdfans/tiger80/config.h @@ -0,0 +1,66 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +#define VENDOR_ID 0x4B42 +#define PRODUCT_ID 0x0011 +#define DEVICE_VER 0x0001 +#define MANUFACTURER KBDFANS +#define PRODUCT TIGER80 + + +#define MATRIX_ROWS 6 +#define MATRIX_COLS 16 +#define MATRIX_ROW_PINS { B0, E6, B1, B4, D1, D2 } +#define MATRIX_COL_PINS { F7, F6, F5, F4, F1, F0, D3, D5, D4, D6, D7, B5, B6, C6, E2, D0 } +#define UNUSED_PINS + +#define DIODE_DIRECTION COL2ROW + +#define DEBOUNCE 5 + +#define LOCKING_SUPPORT_ENABLE +#define LOCKING_RESYNC_ENABLE + +#define LED_CAPS_LOCK_PIN C7 +#define LED_SCROLL_LOCK_PIN B2 +#define LED_PIN_ON_STATE 1 + +#define RGB_DI_PIN B3 +#ifdef RGB_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) +#define RGBLIGHT_DEFAULT_SPD 15 +#define RGBLED_NUM 20 +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 10 +#define RGBLIGHT_VAL_STEP 10 +#define RGBLIGHT_SLEEP +#endif + +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 diff --git a/keyboards/kbdfans/tiger80/info.json b/keyboards/kbdfans/tiger80/info.json new file mode 100644 index 0000000000..32709fa2d3 --- /dev/null +++ b/keyboards/kbdfans/tiger80/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "tiger80", + "url": "", + "maintainer": "kbdfans", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1.25, "y":0}, {"label":"F2", "x":2.25, "y":0}, {"label":"F3", "x":3.25, "y":0}, {"label":"F4", "x":4.25, "y":0}, {"label":"F5", "x":5.5, "y":0}, {"label":"F6", "x":6.5, "y":0}, {"label":"F7", "x":7.5, "y":0}, {"label":"F8", "x":8.5, "y":0}, {"label":"F9", "x":9.75, "y":0}, {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, {"x":14, "y":0}, {"label":"PrtSc", "x":15.25, "y":0}, {"label":"Scroll Lock", "x":16.25, "y":0}, {"label":"Pause", "x":17.25, "y":0}, {"label":"~", "x":0, "y":1.5}, {"label":"!", "x":1, "y":1.5}, {"label":"@", "x":2, "y":1.5}, {"label":"#", "x":3, "y":1.5}, {"label":"$", "x":4, "y":1.5}, {"label":"%", "x":5, "y":1.5}, {"label":"^", "x":6, "y":1.5}, {"label":"&", "x":7, "y":1.5}, {"label":"*", "x":8, "y":1.5}, {"label":"(", "x":9, "y":1.5}, {"label":")", "x":10, "y":1.5}, {"label":"_", "x":11, "y":1.5}, {"label":"+", "x":12, "y":1.5}, {"label":"Backspace", "x":13, "y":1.5, "w":2}, {"label":"Insert", "x":15.25, "y":1.5}, {"label":"Home", "x":16.25, "y":1.5}, {"label":"PgUp", "x":17.25, "y":1.5}, {"label":"Tab", "x":0, "y":2.5, "w":1.5}, {"label":"Q", "x":1.5, "y":2.5}, {"label":"W", "x":2.5, "y":2.5}, {"label":"E", "x":3.5, "y":2.5}, {"label":"R", "x":4.5, "y":2.5}, {"label":"T", "x":5.5, "y":2.5}, {"label":"Y", "x":6.5, "y":2.5}, {"label":"U", "x":7.5, "y":2.5}, {"label":"I", "x":8.5, "y":2.5}, {"label":"O", "x":9.5, "y":2.5}, {"label":"P", "x":10.5, "y":2.5}, {"label":"{", "x":11.5, "y":2.5}, {"label":"}", "x":12.5, "y":2.5}, {"label":"|", "x":13.5, "y":2.5, "w":1.5}, {"label":"Delete", "x":15.25, "y":2.5}, {"label":"End", "x":16.25, "y":2.5}, {"label":"PgDn", "x":17.25, "y":2.5}, {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, {"label":"A", "x":1.75, "y":3.5}, {"label":"S", "x":2.75, "y":3.5}, {"label":"D", "x":3.75, "y":3.5}, {"label":"F", "x":4.75, "y":3.5}, {"label":"G", "x":5.75, "y":3.5}, {"label":"H", "x":6.75, "y":3.5}, {"label":"J", "x":7.75, "y":3.5}, {"label":"K", "x":8.75, "y":3.5}, {"label":"L", "x":9.75, "y":3.5}, {"label":":", "x":10.75, "y":3.5}, {"label":"\"", "x":11.75, "y":3.5}, {"label":"Enter", "x":12.75, "y":3.5, "w":2.25}, {"label":"Shift", "x":0, "y":4.5, "w":2.25}, {"label":"Z", "x":2.25, "y":4.5}, {"label":"X", "x":3.25, "y":4.5}, {"label":"C", "x":4.25, "y":4.5}, {"label":"V", "x":5.25, "y":4.5}, {"label":"B", "x":6.25, "y":4.5}, {"label":"N", "x":7.25, "y":4.5}, {"label":"M", "x":8.25, "y":4.5}, {"label":"<", "x":9.25, "y":4.5}, {"label":">", "x":10.25, "y":4.5}, {"label":"?", "x":11.25, "y":4.5}, {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, {"label":"\u2191", "x":16.25, "y":4.5}, {"label":"Ctrl", "x":0, "y":5.5, "w":1.5}, {"label":"Win", "x":1.5, "y":5.5}, {"label":"Alt", "x":2.5, "y":5.5, "w":1.5}, {"x":4, "y":5.5, "w":7}, {"label":"Alt", "x":11, "y":5.5, "w":1.5}, {"label":"Win", "x":12.5, "y":5.5}, {"label":"Ctrl", "x":13.5, "y":5.5, "w":1.5}, {"label":"\u2190", "x":15.25, "y":5.5}, {"label":"\u2193", "x":16.25, "y":5.5}, {"label":"\u2192", "x":17.25, "y":5.5}] + } + } +} diff --git a/keyboards/kbdfans/tiger80/keymaps/default/keymap.c b/keyboards/kbdfans/tiger80/keymaps/default/keymap.c new file mode 100644 index 0000000000..94a0fb1a22 --- /dev/null +++ b/keyboards/kbdfans/tiger80/keymaps/default/keymap.c @@ -0,0 +1,37 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + +}; diff --git a/keyboards/kbdfans/tiger80/keymaps/via/keymap.c b/keyboards/kbdfans/tiger80/keymaps/via/keymap.c new file mode 100644 index 0000000000..2732c23fde --- /dev/null +++ b/keyboards/kbdfans/tiger80/keymaps/via/keymap.c @@ -0,0 +1,63 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_all( + 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, 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, + 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 + ), + + [_LAYER2] = LAYOUT_all( + 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, 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, + 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 + ), + + [_LAYER3] = LAYOUT_all( + 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, 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, + 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 + ) +}; diff --git a/keyboards/kbdfans/tiger80/keymaps/via/rules.mk b/keyboards/kbdfans/tiger80/keymaps/via/rules.mk new file mode 100644 index 0000000000..f87b150df9 --- /dev/null +++ b/keyboards/kbdfans/tiger80/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LT0_ENABLE = yes diff --git a/keyboards/kbdfans/tiger80/readme.md b/keyboards/kbdfans/tiger80/readme.md new file mode 100644 index 0000000000..60190805d7 --- /dev/null +++ b/keyboards/kbdfans/tiger80/readme.md @@ -0,0 +1,21 @@ +# TIGER80 + +A customizable 80% HOTSWAP keyboard. + +* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681) +* Hardware Supported: KBDFANS +* Hardware Availability: [kbdfans](https://kbdfans.myshopify.com/) + +Make example for this keyboard (after setting up your build environment): + + make kbdfans/tiger80:default + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/kbdfans/tiger80/rules.mk b/keyboards/kbdfans/tiger80/rules.mk new file mode 100644 index 0000000000..85eec9079f --- /dev/null +++ b/keyboards/kbdfans/tiger80/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/kbdfans/tiger80/tiger80.c b/keyboards/kbdfans/tiger80/tiger80.c new file mode 100644 index 0000000000..8348a142a2 --- /dev/null +++ b/keyboards/kbdfans/tiger80/tiger80.c @@ -0,0 +1,17 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#include "tiger80.h" diff --git a/keyboards/kbdfans/tiger80/tiger80.h b/keyboards/kbdfans/tiger80/tiger80.h new file mode 100644 index 0000000000..cc48ca1ad6 --- /dev/null +++ b/keyboards/kbdfans/tiger80/tiger80.h @@ -0,0 +1,35 @@ +/* Copyright 2022 DZTECH + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K3F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K3E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K4E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4F, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K4E, K3F }, \ + { K40, KC_NO, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, KC_NO, K4D, K4E, K4F }, \ + { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F } \ +} From 937ffcecc89070fdbd06c9bcc2ff8ce6059fef88 Mon Sep 17 00:00:00 2001 From: Simon <47527944+Frooastside@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:25:16 +0200 Subject: [PATCH 244/699] [Keyboard] Add Frooastboard Walnut (69% Keyboard) (#16743) Co-authored-by: Ryan --- keyboards/frooastboard/walnut/config.h | 55 ++++ keyboards/frooastboard/walnut/info.json | 259 ++++++++++++++++++ .../walnut/keymaps/default/keymap.c | 20 ++ .../walnut/keymaps/default_ansi/keymap.c | 20 ++ .../walnut/keymaps/default_iso/keymap.c | 20 ++ .../frooastboard/walnut/keymaps/via/config.h | 7 + .../frooastboard/walnut/keymaps/via/keymap.c | 131 +++++++++ .../frooastboard/walnut/keymaps/via/rules.mk | 1 + keyboards/frooastboard/walnut/readme.md | 27 ++ keyboards/frooastboard/walnut/rules.mk | 5 + keyboards/frooastboard/walnut/walnut.c | 86 ++++++ keyboards/frooastboard/walnut/walnut.h | 6 + 12 files changed, 637 insertions(+) create mode 100644 keyboards/frooastboard/walnut/config.h create mode 100644 keyboards/frooastboard/walnut/info.json create mode 100644 keyboards/frooastboard/walnut/keymaps/default/keymap.c create mode 100644 keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c create mode 100644 keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c create mode 100644 keyboards/frooastboard/walnut/keymaps/via/config.h create mode 100644 keyboards/frooastboard/walnut/keymaps/via/keymap.c create mode 100644 keyboards/frooastboard/walnut/keymaps/via/rules.mk create mode 100644 keyboards/frooastboard/walnut/readme.md create mode 100644 keyboards/frooastboard/walnut/rules.mk create mode 100644 keyboards/frooastboard/walnut/walnut.c create mode 100644 keyboards/frooastboard/walnut/walnut.h diff --git a/keyboards/frooastboard/walnut/config.h b/keyboards/frooastboard/walnut/config.h new file mode 100644 index 0000000000..081a084d16 --- /dev/null +++ b/keyboards/frooastboard/walnut/config.h @@ -0,0 +1,55 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#pragma once + +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + +#define ISSI_TIMEOUT 100 +#define ISSI_PERSISTENCE 0 +#define ISSI_PWM_FREQUENCY 0b010 +#define ISSI_SWPULLUP PUR_0R +#define ISSI_CSPULLUP PUR_0R +#define DRIVER_COUNT 1 +#define DRIVER_LED_TOTAL 48 +#define DRIVER_ADDR_1 0b1010000 + +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 191 + +#define RGB_DISABLE_WHEN_USB_SUSPENDED + +#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_BAND_SAT +#define ENABLE_RGB_MATRIX_BAND_VAL +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#define ENABLE_RGB_MATRIX_DUAL_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +#define ENABLE_RGB_MATRIX_RAINDROPS +#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#define ENABLE_RGB_MATRIX_HUE_BREATHING +#define ENABLE_RGB_MATRIX_HUE_PENDULUM +#define ENABLE_RGB_MATRIX_HUE_WAVE +#define ENABLE_RGB_MATRIX_PIXEL_RAIN +#define ENABLE_RGB_MATRIX_PIXEL_FLOW + +#define RGB_MATRIX_LED_FLUSH_LIMIT 16 +#define RGB_MATRIX_STARTUP_HUE 0 +#define RGB_MATRIX_STARTUP_SAT 255 +#define RGB_MATRIX_STARTUP_SPD 191 +#define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_RAINBOW_MOVING_CHEVRON diff --git a/keyboards/frooastboard/walnut/info.json b/keyboards/frooastboard/walnut/info.json new file mode 100644 index 0000000000..7a8276f3ff --- /dev/null +++ b/keyboards/frooastboard/walnut/info.json @@ -0,0 +1,259 @@ +{ + "keyboard_name": "Frooastboard Walnut", + "manufacturer": "Frooastside", + "url": "https://github.com/qmk/qmk_firmware/tree/master/keyboards/frooastboard/walnut", + "maintainer": "Frooastside", + "debounce": 5, + "diode_direction": "COL2ROW", + "processor": "atmega32u4", + "bootloader": "atmel-dfu", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": false, + "mousekey": false, + "nkro": true + }, + "build": { + "lto": true + }, + "matrix_pins": { + "cols": ["B0", "B1", "B2", "B3", "B5", "B6", "C6", "C7"], + "rows": ["B4", "D7", "D6", "D4", "D5", "D3", "D2", "F1", "F0"] + }, + "usb": { + "vid": "0x4642", + "pid": "0x776E", + "device_version": "1.0.0" + }, + "layouts": { + "LAYOUT_ansi": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [0, 4], "x": 4, "y": 0 }, + { "matrix": [0, 5], "x": 5, "y": 0 }, + { "matrix": [0, 6], "x": 6, "y": 0 }, + { "matrix": [0, 7], "x": 7, "y": 0 }, + { "matrix": [1, 0], "x": 8, "y": 0 }, + { "matrix": [1, 1], "x": 9, "y": 0 }, + { "matrix": [1, 2], "x": 10, "y": 0 }, + { "matrix": [1, 3], "x": 11, "y": 0 }, + { "matrix": [1, 4], "x": 12, "y": 0 }, + { "matrix": [1, 5], "x": 13, "y": 0, "w": 2 }, + { "matrix": [5, 5], "x": 15.5, "y": 0 }, + { "matrix": [5, 6], "x": 16.5, "y": 0 }, + { "matrix": [5, 7], "x": 17.5, "y": 0 }, + { "matrix": [2, 0], "x": 0, "y": 1, "w": 1.5 }, + { "matrix": [2, 1], "x": 1.5, "y": 1 }, + { "matrix": [2, 2], "x": 2.5, "y": 1 }, + { "matrix": [2, 3], "x": 3.5, "y": 1 }, + { "matrix": [2, 4], "x": 4.5, "y": 1 }, + { "matrix": [2, 5], "x": 5.5, "y": 1 }, + { "matrix": [2, 6], "x": 6.5, "y": 1 }, + { "matrix": [2, 7], "x": 7.5, "y": 1 }, + { "matrix": [3, 0], "x": 8.5, "y": 1 }, + { "matrix": [3, 1], "x": 9.5, "y": 1 }, + { "matrix": [3, 2], "x": 10.5, "y": 1 }, + { "matrix": [3, 3], "x": 11.5, "y": 1 }, + { "matrix": [3, 4], "x": 12.5, "y": 1 }, + { "matrix": [5, 4], "x": 13.5, "y": 1, "w": 1.5 }, + { "matrix": [7, 5], "x": 15.5, "y": 1 }, + { "matrix": [7, 6], "x": 16.5, "y": 1 }, + { "matrix": [7, 7], "x": 17.5, "y": 1 }, + { "matrix": [4, 0], "x": 0, "y": 2, "w": 1.75 }, + { "matrix": [4, 1], "x": 1.75, "y": 2 }, + { "matrix": [4, 2], "x": 2.75, "y": 2 }, + { "matrix": [4, 3], "x": 3.75, "y": 2 }, + { "matrix": [4, 4], "x": 4.75, "y": 2 }, + { "matrix": [4, 5], "x": 5.75, "y": 2 }, + { "matrix": [4, 6], "x": 6.75, "y": 2 }, + { "matrix": [4, 7], "x": 7.75, "y": 2 }, + { "matrix": [5, 0], "x": 8.75, "y": 2 }, + { "matrix": [5, 1], "x": 9.75, "y": 2 }, + { "matrix": [5, 2], "x": 10.75, "y": 2 }, + { "matrix": [5, 3], "x": 11.75, "y": 2 }, + { "matrix": [3, 5], "x": 12.75, "y": 2, "w": 2.25 }, + { "matrix": [6, 0], "x": 0, "y": 3, "w": 2.25 }, + { "matrix": [6, 2], "x": 2.25, "y": 3 }, + { "matrix": [6, 3], "x": 3.25, "y": 3 }, + { "matrix": [6, 4], "x": 4.25, "y": 3 }, + { "matrix": [6, 5], "x": 5.25, "y": 3 }, + { "matrix": [6, 6], "x": 6.25, "y": 3 }, + { "matrix": [6, 7], "x": 7.25, "y": 3 }, + { "matrix": [7, 0], "x": 8.25, "y": 3 }, + { "matrix": [7, 1], "x": 9.25, "y": 3 }, + { "matrix": [7, 2], "x": 10.25, "y": 3 }, + { "matrix": [7, 3], "x": 11.25, "y": 3 }, + { "matrix": [7, 4], "x": 12.25, "y": 3, "w": 2.75 }, + { "matrix": [3, 6], "x": 16.5, "y": 3 }, + { "matrix": [8, 0], "x": 0, "y": 4, "w": 1.25 }, + { "matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 2], "x": 2.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25 }, + { "matrix": [8, 4], "x": 10, "y": 4, "w": 1.25 }, + { "matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 6], "x": 12.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 7], "x": 13.75, "y": 4, "w": 1.25 }, + { "matrix": [1, 6], "x": 15.5, "y": 4 }, + { "matrix": [3, 7], "x": 16.5, "y": 4 }, + { "matrix": [1, 7], "x": 17.5, "y": 4 } + ] + }, + "LAYOUT_iso": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [0, 4], "x": 4, "y": 0 }, + { "matrix": [0, 5], "x": 5, "y": 0 }, + { "matrix": [0, 6], "x": 6, "y": 0 }, + { "matrix": [0, 7], "x": 7, "y": 0 }, + { "matrix": [1, 0], "x": 8, "y": 0 }, + { "matrix": [1, 1], "x": 9, "y": 0 }, + { "matrix": [1, 2], "x": 10, "y": 0 }, + { "matrix": [1, 3], "x": 11, "y": 0 }, + { "matrix": [1, 4], "x": 12, "y": 0 }, + { "matrix": [1, 5], "x": 13, "y": 0, "w": 2 }, + { "matrix": [5, 5], "x": 15.5, "y": 0 }, + { "matrix": [5, 6], "x": 16.5, "y": 0 }, + { "matrix": [5, 7], "x": 17.5, "y": 0 }, + { "matrix": [2, 0], "x": 0, "y": 1, "w": 1.5 }, + { "matrix": [2, 1], "x": 1.5, "y": 1 }, + { "matrix": [2, 2], "x": 2.5, "y": 1 }, + { "matrix": [2, 3], "x": 3.5, "y": 1 }, + { "matrix": [2, 4], "x": 4.5, "y": 1 }, + { "matrix": [2, 5], "x": 5.5, "y": 1 }, + { "matrix": [2, 6], "x": 6.5, "y": 1 }, + { "matrix": [2, 7], "x": 7.5, "y": 1 }, + { "matrix": [3, 0], "x": 8.5, "y": 1 }, + { "matrix": [3, 1], "x": 9.5, "y": 1 }, + { "matrix": [3, 2], "x": 10.5, "y": 1 }, + { "matrix": [3, 3], "x": 11.5, "y": 1 }, + { "matrix": [3, 4], "x": 12.5, "y": 1 }, + { "matrix": [3, 5], "x": 13.75, "y": 1, "w": 1.25, "h": 2 }, + { "matrix": [7, 5], "x": 15.5, "y": 1 }, + { "matrix": [7, 6], "x": 16.5, "y": 1 }, + { "matrix": [7, 7], "x": 17.5, "y": 1 }, + { "matrix": [4, 0], "x": 0, "y": 2, "w": 1.75 }, + { "matrix": [4, 1], "x": 1.75, "y": 2 }, + { "matrix": [4, 2], "x": 2.75, "y": 2 }, + { "matrix": [4, 3], "x": 3.75, "y": 2 }, + { "matrix": [4, 4], "x": 4.75, "y": 2 }, + { "matrix": [4, 5], "x": 5.75, "y": 2 }, + { "matrix": [4, 6], "x": 6.75, "y": 2 }, + { "matrix": [4, 7], "x": 7.75, "y": 2 }, + { "matrix": [5, 0], "x": 8.75, "y": 2 }, + { "matrix": [5, 1], "x": 9.75, "y": 2 }, + { "matrix": [5, 2], "x": 10.75, "y": 2 }, + { "matrix": [5, 3], "x": 11.75, "y": 2 }, + { "matrix": [5, 4], "x": 12.75, "y": 2 }, + { "matrix": [6, 0], "x": 0, "y": 3, "w": 1.25 }, + { "matrix": [6, 1], "x": 1.25, "y": 3 }, + { "matrix": [6, 2], "x": 2.25, "y": 3 }, + { "matrix": [6, 3], "x": 3.25, "y": 3 }, + { "matrix": [6, 4], "x": 4.25, "y": 3 }, + { "matrix": [6, 5], "x": 5.25, "y": 3 }, + { "matrix": [6, 6], "x": 6.25, "y": 3 }, + { "matrix": [6, 7], "x": 7.25, "y": 3 }, + { "matrix": [7, 0], "x": 8.25, "y": 3 }, + { "matrix": [7, 1], "x": 9.25, "y": 3 }, + { "matrix": [7, 2], "x": 10.25, "y": 3 }, + { "matrix": [7, 3], "x": 11.25, "y": 3 }, + { "matrix": [7, 4], "x": 12.25, "y": 3, "w": 2.75 }, + { "matrix": [3, 6], "x": 16.5, "y": 3 }, + { "matrix": [8, 0], "x": 0, "y": 4, "w": 1.25 }, + { "matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 2], "x": 2.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25 }, + { "matrix": [8, 4], "x": 10, "y": 4, "w": 1.25 }, + { "matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 6], "x": 12.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 7], "x": 13.75, "y": 4, "w": 1.25 }, + { "matrix": [1, 6], "x": 15.5, "y": 4 }, + { "matrix": [3, 7], "x": 16.5, "y": 4 }, + { "matrix": [1, 7], "x": 17.5, "y": 4 } + ] + }, + "LAYOUT_all": { + "layout": [ + { "matrix": [0, 0], "x": 0, "y": 0 }, + { "matrix": [0, 1], "x": 1, "y": 0 }, + { "matrix": [0, 2], "x": 2, "y": 0 }, + { "matrix": [0, 3], "x": 3, "y": 0 }, + { "matrix": [0, 4], "x": 4, "y": 0 }, + { "matrix": [0, 5], "x": 5, "y": 0 }, + { "matrix": [0, 6], "x": 6, "y": 0 }, + { "matrix": [0, 7], "x": 7, "y": 0 }, + { "matrix": [1, 0], "x": 8, "y": 0 }, + { "matrix": [1, 1], "x": 9, "y": 0 }, + { "matrix": [1, 2], "x": 10, "y": 0 }, + { "matrix": [1, 3], "x": 11, "y": 0 }, + { "matrix": [1, 4], "x": 12, "y": 0 }, + { "matrix": [1, 5], "x": 13, "y": 0, "w": 2 }, + { "matrix": [5, 5], "x": 15.5, "y": 0 }, + { "matrix": [5, 6], "x": 16.5, "y": 0 }, + { "matrix": [5, 7], "x": 17.5, "y": 0 }, + { "matrix": [2, 0], "x": 0, "y": 1, "w": 1.5 }, + { "matrix": [2, 1], "x": 1.5, "y": 1 }, + { "matrix": [2, 2], "x": 2.5, "y": 1 }, + { "matrix": [2, 3], "x": 3.5, "y": 1 }, + { "matrix": [2, 4], "x": 4.5, "y": 1 }, + { "matrix": [2, 5], "x": 5.5, "y": 1 }, + { "matrix": [2, 6], "x": 6.5, "y": 1 }, + { "matrix": [2, 7], "x": 7.5, "y": 1 }, + { "matrix": [3, 0], "x": 8.5, "y": 1 }, + { "matrix": [3, 1], "x": 9.5, "y": 1 }, + { "matrix": [3, 2], "x": 10.5, "y": 1 }, + { "matrix": [3, 3], "x": 11.5, "y": 1 }, + { "matrix": [3, 4], "x": 12.5, "y": 1 }, + { "matrix": [5, 4], "x": 13.5, "y": 1, "w": 1.5 }, + { "matrix": [7, 5], "x": 15.5, "y": 1 }, + { "matrix": [7, 6], "x": 16.5, "y": 1 }, + { "matrix": [7, 7], "x": 17.5, "y": 1 }, + { "matrix": [4, 0], "x": 0, "y": 2, "w": 1.75 }, + { "matrix": [4, 1], "x": 1.75, "y": 2 }, + { "matrix": [4, 2], "x": 2.75, "y": 2 }, + { "matrix": [4, 3], "x": 3.75, "y": 2 }, + { "matrix": [4, 4], "x": 4.75, "y": 2 }, + { "matrix": [4, 5], "x": 5.75, "y": 2 }, + { "matrix": [4, 6], "x": 6.75, "y": 2 }, + { "matrix": [4, 7], "x": 7.75, "y": 2 }, + { "matrix": [5, 0], "x": 8.75, "y": 2 }, + { "matrix": [5, 1], "x": 9.75, "y": 2 }, + { "matrix": [5, 2], "x": 10.75, "y": 2 }, + { "matrix": [5, 3], "x": 11.75, "y": 2 }, + { "matrix": [3, 5], "x": 12.75, "y": 2, "w": 2.25 }, + { "matrix": [6, 0], "x": 0, "y": 3, "w": 1.25 }, + { "matrix": [6, 1], "x": 1.25, "y": 3 }, + { "matrix": [6, 2], "x": 2.25, "y": 3 }, + { "matrix": [6, 3], "x": 3.25, "y": 3 }, + { "matrix": [6, 4], "x": 4.25, "y": 3 }, + { "matrix": [6, 5], "x": 5.25, "y": 3 }, + { "matrix": [6, 6], "x": 6.25, "y": 3 }, + { "matrix": [6, 7], "x": 7.25, "y": 3 }, + { "matrix": [7, 0], "x": 8.25, "y": 3 }, + { "matrix": [7, 1], "x": 9.25, "y": 3 }, + { "matrix": [7, 2], "x": 10.25, "y": 3 }, + { "matrix": [7, 3], "x": 11.25, "y": 3 }, + { "matrix": [7, 4], "x": 12.25, "y": 3, "w": 2.75 }, + { "matrix": [3, 6], "x": 16.5, "y": 3 }, + { "matrix": [8, 0], "x": 0, "y": 4, "w": 1.25 }, + { "matrix": [8, 1], "x": 1.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 2], "x": 2.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 3], "x": 3.75, "y": 4, "w": 6.25 }, + { "matrix": [8, 4], "x": 10, "y": 4, "w": 1.25 }, + { "matrix": [8, 5], "x": 11.25, "y": 4, "w": 1.25 }, + { "matrix": [8, 6], "x": 12.5, "y": 4, "w": 1.25 }, + { "matrix": [8, 7], "x": 13.75, "y": 4, "w": 1.25 }, + { "matrix": [1, 6], "x": 15.5, "y": 4 }, + { "matrix": [3, 7], "x": 16.5, "y": 4 }, + { "matrix": [1, 7], "x": 17.5, "y": 4 } + ] + } + } +} diff --git a/keyboards/frooastboard/walnut/keymaps/default/keymap.c b/keyboards/frooastboard/walnut/keymaps/default/keymap.c new file mode 100644 index 0000000000..195b3c150b --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/default/keymap.c @@ -0,0 +1,20 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT_all( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, + 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, RGB_SAI, RGB_HUI, RGB_SPI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, + 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, RGB_VAI, + KC_TRNS, GUI_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD,RGB_VAD, RGB_MOD) +}; diff --git a/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c b/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c new file mode 100644 index 0000000000..a65dfe3a6e --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c @@ -0,0 +1,20 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ansi( + 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT_ansi( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, + 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, RGB_SAI, RGB_HUI, RGB_SPI, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, + KC_TRNS, GUI_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD,RGB_VAD, RGB_MOD) +}; diff --git a/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c b/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c new file mode 100644 index 0000000000..8dd069ba3e --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c @@ -0,0 +1,20 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_iso( + 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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_ENT, KC_DEL, KC_END, KC_PGDN, + 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_BSLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT_iso( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, + 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, RGB_TOG, RGB_SAI, RGB_HUI, RGB_SPI, + 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, RGB_VAI, + KC_TRNS, GUI_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD,RGB_VAD, RGB_MOD) +}; diff --git a/keyboards/frooastboard/walnut/keymaps/via/config.h b/keyboards/frooastboard/walnut/keymaps/via/config.h new file mode 100644 index 0000000000..0ef255fb51 --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/via/config.h @@ -0,0 +1,7 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#pragma once + +#define VIA_CUSTOM_LIGHTING_ENABLE +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 diff --git a/keyboards/frooastboard/walnut/keymaps/via/keymap.c b/keyboards/frooastboard/walnut/keymaps/via/keymap.c new file mode 100644 index 0000000000..84b73e2186 --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/via/keymap.c @@ -0,0 +1,131 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + + [1] = LAYOUT_all( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, + 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, RGB_TOG, + 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, RGB_VAI, + KC_TRNS, GUI_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD,RGB_VAD, RGB_MOD) +}; + +#if defined(RGB_MATRIX_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) + +// VIA supports only 4 discrete values for effect speed; map these to some +// useful speed values for RGB Matrix. +enum speed_values { + RGBLIGHT_SPEED_0 = UINT8_MAX / 16, // not 0 to avoid really slow effects + RGBLIGHT_SPEED_1 = UINT8_MAX / 4, + RGBLIGHT_SPEED_2 = UINT8_MAX / 2, // matches the default value + RGBLIGHT_SPEED_3 = UINT8_MAX / 4 * 3, // UINT8_MAX is really fast +}; + +static uint8_t speed_from_rgblight(uint8_t rgblight_speed) { + switch (rgblight_speed) { + case 0: + return RGBLIGHT_SPEED_0; + case 1: + return RGBLIGHT_SPEED_1; + case 2: + default: + return RGBLIGHT_SPEED_2; + case 3: + return RGBLIGHT_SPEED_3; + } +} + +static uint8_t speed_to_rgblight(uint8_t rgb_matrix_speed) { + if (rgb_matrix_speed < ((RGBLIGHT_SPEED_0 + RGBLIGHT_SPEED_1) / 2)) { + return 0; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_1 + RGBLIGHT_SPEED_2) / 2)) { + return 1; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_2 + RGBLIGHT_SPEED_3) / 2)) { + return 2; + } else { + return 3; + } +} + +void via_qmk_rgblight_get_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: { + value_data[0] = rgb_matrix_get_val(); + break; + } + case id_qmk_rgblight_effect: { + value_data[0] = rgb_matrix_is_enabled() ? rgb_matrix_get_mode() : 0; + break; + } + case id_qmk_rgblight_effect_speed: { + value_data[0] = speed_to_rgblight(rgb_matrix_get_speed()); + break; + } + case id_qmk_rgblight_color: { + value_data[0] = rgb_matrix_get_hue(); + value_data[1] = rgb_matrix_get_sat(); + break; + } + } +} + +void via_qmk_rgblight_set_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: { + rgb_matrix_sethsv_noeeprom(rgblight_get_hue(), rgblight_get_sat(), value_data[0]); + break; + } + case id_qmk_rgblight_effect: { + if (value_data[0] == 0) { + rgb_matrix_disable_noeeprom(); + } else { + rgb_matrix_enable_noeeprom(); + rgb_matrix_mode_noeeprom(value_data[0]); + } + break; + } + case id_qmk_rgblight_effect_speed: { + rgb_matrix_set_speed_noeeprom(speed_from_rgblight(value_data[0])); + break; + } + case id_qmk_rgblight_color: { + rgb_matrix_sethsv_noeeprom(value_data[0], value_data[1], rgblight_get_val()); + break; + } + } +} + +void raw_hid_receive_kb(uint8_t *data, uint8_t length) { + uint8_t *command_id = &(data[0]); + uint8_t *command_data = &(data[1]); + switch (*command_id) { + case id_lighting_set_value: + via_qmk_rgblight_set_value(command_data); + break; + case id_lighting_get_value: + via_qmk_rgblight_get_value(command_data); + break; + case id_lighting_save: + eeconfig_update_rgb_matrix(); + break; + default: + // Unhandled message. + *command_id = id_unhandled; + break; + } +} + +#endif // defined(RGB_MATRIX_ENABLE) && defined(VIA_CUSTOM_LIGHTING_ENABLE) diff --git a/keyboards/frooastboard/walnut/keymaps/via/rules.mk b/keyboards/frooastboard/walnut/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/frooastboard/walnut/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/frooastboard/walnut/readme.md b/keyboards/frooastboard/walnut/readme.md new file mode 100644 index 0000000000..c4baa40ce4 --- /dev/null +++ b/keyboards/frooastboard/walnut/readme.md @@ -0,0 +1,27 @@ +# Frooastboard Walnut + +![frooastboard/walnut](https://i.imgur.com/4erTDZqh.jpg) + +This is the Frooastboard Walnut keyboard. It is made of walnut wood, has 48 underglow LEDs and a solid aluminum base plate. It uses a USB Type-C connector and will likely be available for sale soon. + +* Keyboard Maintainer: [Frooastside](https://github.com/Frooastside) +* Hardware Supported: Frooastboard Walnut +* Hardware Availability: [Frooastboard Github](https://github.com/Frooastside/Frooastboard) + +Make example for this keyboard (after setting up your build environment): + + make frooastboard/walnut:default + +Flashing example for this keyboard: + + make frooastboard/walnut:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/frooastboard/walnut/rules.mk b/keyboards/frooastboard/walnut/rules.mk new file mode 100644 index 0000000000..d0bb93e136 --- /dev/null +++ b/keyboards/frooastboard/walnut/rules.mk @@ -0,0 +1,5 @@ +# Build Options +# change yes to no to disable +# +RGB_MATRIX_ENABLE = yes # Enable keyboard RGB matrix +RGB_MATRIX_DRIVER = IS31FL3737 # Select RGB matrix driver diff --git a/keyboards/frooastboard/walnut/walnut.c b/keyboards/frooastboard/walnut/walnut.c new file mode 100644 index 0000000000..0b84d3c577 --- /dev/null +++ b/keyboards/frooastboard/walnut/walnut.c @@ -0,0 +1,86 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#include "walnut.h" + +#if defined(RGB_MATRIX_ENABLE) + +const is31_led PROGMEM g_is31_leds[DRIVER_LED_TOTAL] = { +/* Refer to IS31 manual for these locations + * driver + * | R location + * | | G location + * | | | B location + * | | | | */ + {0, K_1, J_1, L_1}, + {0, K_2, J_2, L_2}, + {0, K_3, J_3, L_3}, + {0, K_4, J_4, L_4}, + {0, K_5, J_5, L_5}, + {0, K_6, J_6, L_6}, + {0, K_7, J_7, L_7}, + {0, K_8, J_8, L_8}, + {0, K_9, J_9, L_9}, + {0, K_10, J_10, L_10}, + {0, K_11, J_11, L_11}, + {0, K_12, J_12, L_12}, + {0, H_1, G_1, I_1}, + {0, H_2, G_2, I_2}, + {0, H_3, G_3, I_3}, + {0, H_4, G_4, I_4}, + {0, H_5, G_5, I_5}, + {0, H_6, G_6, I_6}, + {0, H_7, G_7, I_7}, + {0, H_8, G_8, I_8}, + {0, H_9, G_9, I_9}, + {0, H_10, G_10, I_10}, + {0, H_11, G_11, I_11}, + {0, H_12, G_12, I_12}, + {0, E_1, D_1, F_1}, + {0, E_2, D_2, F_2}, + {0, E_3, D_3, F_3}, + {0, E_4, D_4, F_4}, + {0, E_5, D_5, F_5}, + {0, E_6, D_6, F_6}, + {0, E_7, D_7, F_7}, + {0, E_8, D_8, F_8}, + {0, E_9, D_9, F_9}, + {0, E_10, D_10, F_10}, + {0, E_11, D_11, F_11}, + {0, E_12, D_12, F_12}, + {0, B_1, A_1, C_1}, + {0, B_2, A_2, C_2}, + {0, B_3, A_3, C_3}, + {0, B_4, A_4, C_4}, + {0, B_5, A_5, C_5}, + {0, B_6, A_6, C_6}, + {0, B_7, A_7, C_7}, + {0, B_8, A_8, C_8}, + {0, B_9, A_9, C_9}, + {0, B_10, A_10, C_10}, + {0, B_11, A_11, C_11}, + {0, B_12, A_12, C_12} +}; + +led_config_t g_led_config = { + { + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } + }, { + {0, 62}, {0, 50}, {0, 38}, {0, 26}, {0, 14}, {0, 2}, + {0, 2}, {12, 2}, {24, 2}, {36, 2}, {48, 2}, {60, 2}, {72, 2}, {84, 2}, {96, 2}, {108, 2}, {120, 2}, {132, 2}, {144, 2}, {156, 2}, {168, 2}, {180, 2}, {192, 2}, {204, 2}, + {204, 2}, {204, 14}, {204, 26}, {204, 38}, {204, 50}, {204, 62}, + {204, 62}, {192, 62}, {180, 62}, {168, 62}, {156, 62}, {144, 62}, {132, 62}, {120, 62}, {108, 62}, {96, 62}, {84, 62}, {72, 62}, {60, 62}, {48, 62}, {36, 62}, {24, 62}, {12, 62}, {0, 62} + }, { + 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 + } +}; + +#endif // defined(RGB_MATRIX_ENABLE) diff --git a/keyboards/frooastboard/walnut/walnut.h b/keyboards/frooastboard/walnut/walnut.h new file mode 100644 index 0000000000..3ceb9bd689 --- /dev/null +++ b/keyboards/frooastboard/walnut/walnut.h @@ -0,0 +1,6 @@ +// Copyright 2022 Simon Benezan (@Frooastside) +// SPDX-License-Identifier: GPL-3.0-or-later + +#pragma once + +#include "quantum.h" From 973bc88b0fb56db6d0448dcc102d9eb0a5200b3d Mon Sep 17 00:00:00 2001 From: Tyler Tolley Date: Wed, 13 Apr 2022 08:27:07 -0600 Subject: [PATCH 245/699] [Keymap] Add thattolleyguy keymaps (#15351) * Adding personal keymaps * Update licenses * Fix RGB settings * Define used animations Co-authored-by: Drashna Jaelre Co-authored-by: Drashna Jaelre --- .../5x6/keymaps/thattolleyguy/config.h | 54 ++++++ .../5x6/keymaps/thattolleyguy/keymap.c | 178 ++++++++++++++++++ .../5x6/keymaps/thattolleyguy/rules.mk | 6 + .../iris/keymaps/thattolleyguy/config.h | 24 +++ .../iris/keymaps/thattolleyguy/keymap.c | 127 +++++++++++++ .../iris/keymaps/thattolleyguy/rules.mk | 2 + .../redox/keymaps/thattolleyguy/config.h | 41 ++++ .../redox/keymaps/thattolleyguy/keymap.c | 89 +++++++++ .../redox/keymaps/thattolleyguy/readme.md | 1 + .../redox/keymaps/thattolleyguy/rules.mk | 1 + 10 files changed, 523 insertions(+) create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/config.h create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/rules.mk create mode 100644 keyboards/keebio/iris/keymaps/thattolleyguy/config.h create mode 100644 keyboards/keebio/iris/keymaps/thattolleyguy/keymap.c create mode 100644 keyboards/keebio/iris/keymaps/thattolleyguy/rules.mk create mode 100644 keyboards/redox/keymaps/thattolleyguy/config.h create mode 100644 keyboards/redox/keymaps/thattolleyguy/keymap.c create mode 100644 keyboards/redox/keymaps/thattolleyguy/readme.md create mode 100644 keyboards/redox/keymaps/thattolleyguy/rules.mk diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/config.h b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/config.h new file mode 100644 index 0000000000..2caa5b5bd1 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/config.h @@ -0,0 +1,54 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + + +#pragma once + + +#define USE_SERIAL +// #define USE_I2C + +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS +// Rows are doubled-up + +#undef RGB_DI_PIN +#define RGB_DI_PIN F5 + +#undef SOFT_SERIAL_PIN +#define SOFT_SERIAL_PIN D0 +// #define DRIVER_LED_TOTAL 32 + +#define RGB_MATRIX_KEYPRESSES + +#ifdef RGB_MATRIX_ENABLE +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 80 +#undef RGBLED_NUM +#define RGBLED_NUM 64 // Number of LEDs +#define DRIVER_LED_TOTAL RGBLED_NUM +#define RGB_MATRIX_SPLIT \ + { 32, 32 } +#define SPLIT_TRANSPORT_MIRROR + +// #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_TYPING_HEATMAP // Sets the default mode, if none has been set +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS + +#endif diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/keymap.c b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/keymap.c new file mode 100644 index 0000000000..b89b798fd6 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/keymap.c @@ -0,0 +1,178 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum dactyl_layers { + _QWERTY, + _LOWER, + _RAISE, +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +#define KC_CBP LCTL(KC_F11) //Clipboard previous +#define KC_CBN LCTL(KC_F12) //Clipboard previous +#define KC_DSKD LCA(KC_DOWN) +#define KC_DSKU LCA(KC_UP) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT_5x6( + + + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ┌────────┼────────┼────────┼────────┼────────┼────────┤ + 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_DSKU, KC_DSKD, KC_PGUP, KC_PGDN, + // └────────┴────────┘ ┌────────┬────────┐ ┌────────┬────────┐ └────────┴────────┘ + LOWER, KC_ENT, KC_SPC, RAISE, + // ├────────┼────────┤ ├────────┼────────┤ + KC_LGUI, KC_GRV, KC_DEL, KC_RALT, + // ├────────┼────────┤ ├────────┼────────┤ + KC_CBP, KC_CBN, KC_APP, KC_RCTL + // └────────┴────────┘ └────────┴────────┘ + ), + + [_LOWER] = LAYOUT_5x6( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + XXXXXXX, KC_VOLU, KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, XXXXXXX, XXXXXXX, KC_PSLS, KC_PAST, KC_PMNS, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_VOLD, RGB_M_SW,RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, KC_PPLS, XXXXXXX, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_EQL, KC_PSCR, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ┌────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD,XXXXXXX, XXXXXXX, KC_P1, KC_P2, KC_P3, KC_PDOT, _______, + //└────────┴────────┼────────┼────────┼────────┼────────┘ └────────┴────────┼────────┼────────┼────────┼────────┘ + KC_PGUP, KC_PGDN, KC_P0, DEBUG, + // └────────┴────────┘ ┌────────┬────────┐ ┌────────┬────────┐ └────────┴────────┘ + _______, _______, _______, _______, + // ├────────┼────────┤ ├────────┼────────┤ + _______, _______, _______, _______, + // ├────────┼────────┤ ├────────┼────────┤ + _______, RESET, _______, _______ + // └────────┴────────┘ └────────┴────────┘ + + ), + + [_RAISE] = LAYOUT_5x6( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX, _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_UNDS, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGUP, KC_INS, KC_HOME, KC_PPLS, KC_MINS, KC_TILD, KC_EQL, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ┌────────┼────────┼────────┼────────┼────────┼────────┤ + _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, KC_DEL, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, _______, + //└────────┴────────┼────────┼────────┼────────┼────────┘ └────────┴────────┼────────┼────────┼────────┼────────┘ + DM_REC1, DM_REC2, DM_PLY1, DM_PLY2, + // └────────┴────────┘ ┌────────┬────────┐ ┌────────┬────────┐ └────────┴────────┘ + LOWER, KC_ENT, KC_SPC, RAISE, + // ├────────┼────────┤ ├────────┼────────┤ + KC_LGUI, KC_GRV, KC_DEL, KC_RALT, + // ├────────┼────────┤ ├────────┼────────┤ + XXXXXXX, XXXXXXX, RESET, XXXXXXX + // └────────┴────────┘ └────────┴────────┘ + ), +}; + + +#ifdef RGB_MATRIX_ENABLE + + // Logical Layout + // Columns + // Left + // 0 1 2 3 4 5 + // ROWS + // 25 24 19 18 11 10 0 + // 03 02 01 + // 26 23 20 17 12 09 1 + // 04 05 06 + // 27 22 21 16 13 08 2 + // + // 15 14 07 3 + // + // Right + // 0 1 2 3 4 5 + // ROWS + // 25 24 19 18 11 10 4 + // 03 02 01 + // 26 23 20 17 12 09 5 + // 04 05 06 + // 27 22 21 16 13 08 6 + // + // 15 14 07 7 + // + // Physical Layout + // Columns + // 0 1 2 3 4 5 6 7 8 9 10 11 12 13 + // ROWS + // 25 24 19 18 11 10 10 11 18 19 24 25 0 + // 03 02 01 01 02 03 + // 26 23 20 17 12 09 09 12 17 20 23 26 1 + // 04 04 + // 27 22 21 16 13 08 08 13 16 21 22 27 2 + // 05 06 06 05 + // 15 14 07 07 14 15 3 + +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5 }, + { 11, 10, 9, 8, 7, 6 }, + { 12, 13, 14, 15, 16, 17 }, + { 23, 22, 21, 20, 19, 18 }, + { NO_LED, NO_LED, 24, 25, 26, 27 }, + { NO_LED, NO_LED, 30, 31, 28, 29 }, + { 37, 36, 35, 34, 33, 32 }, + { 43, 42, 41, 40, 39, 38 }, + { 49, 48, 47, 46, 45, 44 }, + { 55, 54, 53, 52, 51, 50 }, + // { NO_LED, NO_LED, 57, 56, NO_LED, NO_LED}, + // { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } + { 59, 58, 57, 56, NO_LED, NO_LED}, + { 61, 60, 62, 63, NO_LED, NO_LED } + +}, { + { 0, 0 }, { 17, 0 }, { 34, 0 }, { 52, 0 }, { 69, 0 }, { 86, 0 }, { 86, 9 }, { 69, 9 }, + { 52, 9 }, { 34, 9 }, { 17, 9 }, { 0, 9 }, { 0, 18 }, { 17, 18 }, { 34, 18 }, { 52, 18 }, + { 60, 18 }, { 86, 18 }, { 86, 27 }, { 69, 27 }, { 52, 27 }, { 34, 27 }, { 17, 27 }, { 0, 27 }, + { 34, 37 }, { 52, 37 }, { 69, 45 }, { 86, 45 }, { 103, 55 }, { 103, 64 }, { 86, 55 }, { 86, 64 }, + + + { 224, 0 }, { 207, 0 }, { 190, 0 }, { 172, 0 }, { 155, 0 }, { 138, 0 }, { 224, 9 }, { 207, 9 }, + { 190, 9 }, { 172, 9 }, { 155, 9 }, { 138, 9 }, { 224, 18 }, { 207, 18 }, { 190, 18 },{ 172, 18 }, + { 155, 18 }, { 138, 18 }, { 224, 27 }, { 207, 27 }, { 190, 27}, { 172, 27 },{ 155, 27 }, { 138, 27 }, + { 190, 37 }, { 172, 37 }, { 155, 45}, { 138, 45 }, { 121, 55 }, { 121, 64 }, { 138, 64 }, { 138, 55 } +}, { + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2 +} }; + +#endif + diff --git a/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/rules.mk b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/rules.mk new file mode 100644 index 0000000000..53ca4b51d0 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6/keymaps/thattolleyguy/rules.mk @@ -0,0 +1,6 @@ +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 +DYNAMIC_MACRO_ENABLE = yes +# CONSOLE_ENABLE = yes + +MOUSEKEY_ENABLE = no diff --git a/keyboards/keebio/iris/keymaps/thattolleyguy/config.h b/keyboards/keebio/iris/keymaps/thattolleyguy/config.h new file mode 100644 index 0000000000..e0ea5e6e25 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/thattolleyguy/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + +#pragma once + +// #define USE_I2C +#define EE_HANDS +#define NO_DEBUG +#define NO_PRINT +#define BACKLIGHT_BREATHING diff --git a/keyboards/keebio/iris/keymaps/thattolleyguy/keymap.c b/keyboards/keebio/iris/keymaps/thattolleyguy/keymap.c new file mode 100644 index 0000000000..d12e776652 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/thattolleyguy/keymap.c @@ -0,0 +1,127 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + +#include QMK_KEYBOARD_H + + +enum iris_layers { + _COLEMAK, + _QWERTY, + _LOWER, + _RAISE, +}; + +enum custom_keycodes { + COLEMAK = SAFE_RANGE, + QWERTY, + NUMPAD, + RGB_SPDU, + RGB_SPDD +}; + +#define L_LOWER MO(_LOWER) +#define L_RAISE MO(_RAISE) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_COLEMAK] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_GRV, KC_DEL, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + KC_LGUI, L_LOWER, KC_ENT, KC_SPC, L_RAISE, KC_RALT + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + + [_QWERTY] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_GRV, KC_DEL, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + KC_LGUI, L_LOWER, KC_ENT, KC_SPC, L_RAISE, KC_RALT + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + + [_LOWER] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + XXXXXXX, KC_VOLU, KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, BL_BRTG, XXXXXXX, KC_PSLS, KC_PAST, KC_PMNS, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_VOLD, RGB_M_SW,RGB_TOG, XXXXXXX, XXXXXXX, BL_TOGG, KC_P7, KC_P8, KC_P9, KC_PPLS, XXXXXXX, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_SPDU, BL_INC, KC_P4, KC_P5, KC_P6, KC_EQL, KC_PSCR, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD,RGB_SPDD,_______, _______, BL_DEC, KC_P1, KC_P2, KC_P3, KC_PDOT, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, _______, L_RAISE, KC_P0 + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ), + + [_RAISE] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + XXXXXXX, COLEMAK, DM_REC1, KC_UP, DM_REC2, XXXXXXX, XXXXXXX, KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_UNDS, + //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ + _______, QWERTY, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGUP, KC_INS, KC_HOME, KC_PPLS, KC_MINS, KC_TILD, KC_EQL, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, DF(2), DM_PLY1, XXXXXXX, DM_PLY2, KC_PGDN, XXXXXXX, XXXXXXX, KC_DEL, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, _______, + //└────────┴────────┴────────┴───┬────┴───┬────┴───┬────┴───┬────┘ └───┬────┴───┬────┴───┬────┴───┬────┴────────┴────────┴────────┘ + _______, _______, _______, XXXXXXX, _______, _______ + // └────────┴────────┴────────┘ └────────┴────────┴────────┘ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + case RGB_SPDD: + if (record->event.pressed) { + rgblight_decrease_speed(); + } + return false; + case RGB_SPDU: + if (record->event.pressed) { + rgblight_increase_speed(); + } + return false; + } + return true; +} + diff --git a/keyboards/keebio/iris/keymaps/thattolleyguy/rules.mk b/keyboards/keebio/iris/keymaps/thattolleyguy/rules.mk new file mode 100644 index 0000000000..c84235c923 --- /dev/null +++ b/keyboards/keebio/iris/keymaps/thattolleyguy/rules.mk @@ -0,0 +1,2 @@ +DYNAMIC_MACRO_ENABLE = yes +MOUSEKEY_ENABLE = no diff --git a/keyboards/redox/keymaps/thattolleyguy/config.h b/keyboards/redox/keymaps/thattolleyguy/config.h new file mode 100644 index 0000000000..6e8de527cd --- /dev/null +++ b/keyboards/redox/keymaps/thattolleyguy/config.h @@ -0,0 +1,41 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + +#pragma once + +/* Use I2C or Serial, not both */ +#define USE_SERIAL + +/* Select hand configuration */ +// #define MASTER_LEFT +#define EE_HANDS + +#undef RGBLED_NUM +#undef RGB_DI_PIN +#define RGB_DI_PIN C6 +#define RGBLED_NUM 14 // Number of LEDs +#define RGBLED_SPLIT { 7, 7 } +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE diff --git a/keyboards/redox/keymaps/thattolleyguy/keymap.c b/keyboards/redox/keymaps/thattolleyguy/keymap.c new file mode 100644 index 0000000000..825addbbbf --- /dev/null +++ b/keyboards/redox/keymaps/thattolleyguy/keymap.c @@ -0,0 +1,89 @@ +/* +Copyright 2021 Tyler Tolley + +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 . +*/ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum dactyl_layers { + _QWERTY, + _NUM, + _SYMB, + _ADJUST +}; + +enum custom_keycodes { + QWERTY = SAFE_RANGE, + SYMB, + NUM, +}; + +// Shortcut to make keymap more readable +#define L_SYM MO(_SYMB) +#define L_NUM MO(_NUM) +#define KC_DSKL LGUI(KC_PGUP) +#define KC_DSKR LGUI(KC_PGDN) +#define KC_CBP LCTL(KC_F11) //Clipboard previous +#define KC_CBN LCTL(KC_F12) //Clipboard previous + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWERTY] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_ESC , KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_BSPC , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_TAB ,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T ,DM_REC1 , DM_REC2 ,KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LCTL ,KC_A ,KC_S ,KC_D ,KC_F ,KC_G ,DM_PLY1 , DM_PLY2 ,KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN ,KC_QUOT , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_LSFT ,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,XXXXXXX ,KC_GRV , KC_DEL ,KC_INS ,KC_N ,KC_M ,KC_COMM ,KC_DOT ,KC_SLSH ,KC_RSFT , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + KC_CBP ,KC_CBN ,KC_DSKL ,KC_DSKR, KC_LGUI , L_NUM ,KC_ENT , KC_SPC ,L_SYM , KC_RALT , KC_PGUP ,KC_PGDN ,KC_APP ,KC_RCTL + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ), + + [_NUM] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + XXXXXXX, KC_VOLU, KC_MPRV, KC_MPLY, KC_MSTP, KC_MNXT, XXXXXXX ,XXXXXXX, KC_PSLS, KC_PAST, KC_PMNS, _______, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + KC_MUTE, KC_VOLD, RGB_M_SW,RGB_TOG, XXXXXXX, XXXXXXX, _______ , _______ ,XXXXXXX ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PMNS ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, XXXXXXX, _______ , _______ ,KC_PAST ,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD,XXXXXXX, _______ ,_______ , _______ ,_______ ,XXXXXXX ,KC_P1 ,KC_P2 ,KC_P3 ,KC_PENT ,XXXXXXX , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX , KC_BTN1 , KC_BTN2 ,_______ , _______ ,_______ , KC_P0 , KC_P0 ,KC_PDOT ,KC_PENT ,KC_PSCR + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ), + + [_SYMB] = LAYOUT( + //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ + KC_F12 ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,XXXXXXX ,XXXXXXX ,KC_UP ,XXXXXXX ,XXXXXXX ,_______ , _______ ,XXXXXXX ,KC_LCBR, KC_RCBR, KC_LBRC, KC_RBRC, KC_UNDS, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,XXXXXXX ,KC_LEFT ,KC_DOWN ,KC_RIGHT,XXXXXXX ,_______ , _______ ,KC_INS ,KC_HOME ,KC_PPLS, KC_MINS, KC_TILD, KC_EQL, + //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ + _______ ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ ,_______ , _______ ,_______ ,XXXXXXX ,KC_END ,XXXXXXX ,XXXXXXX ,XXXXXXX ,_______ , + //├────────┼────────┼────────┼────────┼────┬───┴────┬───┼────────┼────────┤ ├────────┼────────┼───┬────┴───┬────┼────────┼────────┼────────┼────────┤ + _______ ,_______ ,_______ ,_______ , _______ , _______ ,_______ , _______ ,_______ , XXXXXXX , XXXXXXX ,XXXXXXX ,RESET ,XXXXXXX + //└────────┴────────┴────────┴────────┘ └────────┘ └────────┴────────┘ └────────┴────────┘ └────────┘ └────────┴────────┴────────┴────────┘ + ) +}; diff --git a/keyboards/redox/keymaps/thattolleyguy/readme.md b/keyboards/redox/keymaps/thattolleyguy/readme.md new file mode 100644 index 0000000000..8fa8ddf5ce --- /dev/null +++ b/keyboards/redox/keymaps/thattolleyguy/readme.md @@ -0,0 +1 @@ +# The default keymap for Redox diff --git a/keyboards/redox/keymaps/thattolleyguy/rules.mk b/keyboards/redox/keymaps/thattolleyguy/rules.mk new file mode 100644 index 0000000000..9e6797ed30 --- /dev/null +++ b/keyboards/redox/keymaps/thattolleyguy/rules.mk @@ -0,0 +1 @@ +DYNAMIC_MACRO_ENABLE = yes From 57466c47ba9c088c2f2fedb2c1e0fab449302f77 Mon Sep 17 00:00:00 2001 From: Rucker Machine <98196480+RuckerMachine@users.noreply.github.com> Date: Wed, 13 Apr 2022 07:28:12 -0700 Subject: [PATCH 246/699] [Keyboard] Add RM_Numpad (#15983) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: jason --- keyboards/rmkeebs/rm_numpad/config.h | 155 ++++++++++++++++++ keyboards/rmkeebs/rm_numpad/info.json | 102 ++++++++++++ .../rm_numpad/keymaps/default/keymap.c | 32 ++++ .../rm_numpad/keymaps/default/readme.md | 5 + .../rmkeebs/rm_numpad/keymaps/ortho/keymap.c | 48 ++++++ .../rmkeebs/rm_numpad/keymaps/ortho/readme.md | 4 + .../rm_numpad/keymaps/split_plus/keymap.c | 31 ++++ .../rm_numpad/keymaps/split_plus/readme.md | 4 + keyboards/rmkeebs/rm_numpad/readme.md | 26 +++ keyboards/rmkeebs/rm_numpad/rm_numpad.c | 31 ++++ keyboards/rmkeebs/rm_numpad/rm_numpad.h | 127 ++++++++++++++ keyboards/rmkeebs/rm_numpad/rules.mk | 21 +++ 12 files changed, 586 insertions(+) create mode 100644 keyboards/rmkeebs/rm_numpad/config.h create mode 100644 keyboards/rmkeebs/rm_numpad/info.json create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/default/readme.md create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/ortho/keymap.c create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/ortho/readme.md create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c create mode 100644 keyboards/rmkeebs/rm_numpad/keymaps/split_plus/readme.md create mode 100644 keyboards/rmkeebs/rm_numpad/readme.md create mode 100644 keyboards/rmkeebs/rm_numpad/rm_numpad.c create mode 100644 keyboards/rmkeebs/rm_numpad/rm_numpad.h create mode 100644 keyboards/rmkeebs/rm_numpad/rules.mk diff --git a/keyboards/rmkeebs/rm_numpad/config.h b/keyboards/rmkeebs/rm_numpad/config.h new file mode 100644 index 0000000000..e0c9ef89a6 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/config.h @@ -0,0 +1,155 @@ +/* +Copyright 2021 RuckerMachine + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x524E /* RN (RMKeebs Numpad) */ +#define DEVICE_VER 0x0001 +#define MANUFACTURER RMKeebs +#define PRODUCT rm_numpad + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 5 + +/* + * 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 { B4, F7, C7, C6, F1, F0 } +#define MATRIX_COL_PINS { F4, F5, F6, B5, B6 } + +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define encoder pins */ +#define ENCODERS_PAD_A { D7 } +#define ENCODERS_PAD_B { D4 } + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + * + * #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + */ + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/rmkeebs/rm_numpad/info.json b/keyboards/rmkeebs/rm_numpad/info.json new file mode 100644 index 0000000000..f91c1ec6af --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/info.json @@ -0,0 +1,102 @@ +{ + "keyboard_name": "rm_numpad", + "url": "https://www.rmkeebs.com/product/rm-numpad/", + "maintainer": "RuckerMachine", + "layouts": { + "LAYOUT_default": { + "layout": [ + {"label": "Pause", "x": 0, "y": 0.25}, + {"label": "Prev", "x": 1, "y": 0.25}, + {"label": "Next", "x": 2, "y": 0.25}, + {"label": "Mute", "x": 3.5, "y": 0}, + + {"label": "Num_Lock", "x": 0, "y": 1.25}, + {"label": "/", "x": 1, "y": 1.25}, + {"label": "*", "x": 2, "y": 1.25}, + {"label": "-", "x": 3, "y": 1.25}, + + {"label": "7", "x": 0, "y": 2.25}, + {"label": "8", "x": 1, "y": 2.25}, + {"label": "9", "x": 2, "y": 2.25}, + {"label": "+", "x": 3, "y": 2.25, "h": 2}, + + {"label": "4", "x": 0, "y": 3.25}, + {"label": "5", "x": 1, "y": 3.25}, + {"label": "6", "x": 2, "y": 3.25}, + + {"label": "1", "x": 0, "y": 4.25}, + {"label": "2", "x": 1, "y": 4.25}, + {"label": "3", "x": 2, "y": 4.25}, + {"label": "Enter", "x": 3, "y": 4.25, "h": 2}, + + {"label": "0", "x": 0, "y": 5.25, "w": 2}, + {"label": ".", "x": 2, "y": 5.25} + ] + }, + "LAYOUT_split_plus": { + "layout": [ + {"label": "Pause", "x": 0, "y": 0.25}, + {"label": "Prev", "x": 1, "y": 0.25}, + {"label": "Next", "x": 2, "y": 0.25}, + {"label": "Mute", "x": 3.5, "y": 0}, + + {"label": "Num_Lock", "x": 0, "y": 1.25}, + {"label": "/", "x": 1, "y": 1.25}, + {"label": "*", "x": 2, "y": 1.25}, + {"label": "-", "x": 3, "y": 1.25}, + + {"label": "7", "x": 0, "y": 2.25}, + {"label": "8", "x": 1, "y": 2.25}, + {"label": "9", "x": 2, "y": 2.25}, + {"label": "=", "x": 3, "y": 2.25}, + + {"label": "4", "x": 0, "y": 3.25}, + {"label": "5", "x": 1, "y": 3.25}, + {"label": "6", "x": 2, "y": 3.25}, + {"label": "+", "x": 3, "y": 3.25}, + + {"label": "1", "x": 0, "y": 4.25}, + {"label": "2", "x": 1, "y": 4.25}, + {"label": "3", "x": 2, "y": 4.25}, + {"label": "Enter", "x": 3, "y": 4.25, "h": 2}, + + {"label": "0", "x": 0, "y": 5.25, "w": 2}, + {"label": ".", "x": 2, "y": 5.25} + ] + }, + "LAYOUT_ortho": { + "layout": [ + {"label": "Pause", "x": 0, "y": 0.25}, + {"label": "Prev", "x": 1, "y": 0.25}, + {"label": "Next", "x": 2, "y": 0.25}, + {"label": "Mute", "x": 3.5, "y": 0}, + + {"label": "Num_Lock", "x": 0, "y": 1.25}, + {"label": "/", "x": 1, "y": 1.25}, + {"label": "*", "x": 2, "y": 1.25}, + {"label": "-", "x": 3, "y": 1.25}, + + {"label": "7", "x": 0, "y": 2.25}, + {"label": "8", "x": 1, "y": 2.25}, + {"label": "9", "x": 2, "y": 2.25}, + {"label": "=", "x": 3, "y": 2.25}, + + {"label": "4", "x": 0, "y": 3.25}, + {"label": "5", "x": 1, "y": 3.25}, + {"label": "6", "x": 2, "y": 3.25}, + {"label": "+", "x": 3, "y": 3.25}, + + {"label": "1", "x": 0, "y": 4.25}, + {"label": "2", "x": 1, "y": 4.25}, + {"label": "3", "x": 2, "y": 4.25}, + {"label": "Enter", "x": 3, "y": 4.25}, + + {"label": "0", "x": 0, "y": 5.25}, + {"label": "00", "x": 1, "y": 5.25}, + {"label": ".", "x": 2, "y": 5.25}, + {"label": "Delete", "x": 3, "y": 5.25} + ] + } + + } +} diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c b/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c new file mode 100644 index 0000000000..240442558c --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2021 RuckerMachine + * + * 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 . + */ +#include QMK_KEYBOARD_H + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + LAYOUT_numpad_6x4( + KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_PPLS, + KC_P4, KC_P5, KC_P6, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_PDOT + ) + +}; + diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/default/readme.md b/keyboards/rmkeebs/rm_numpad/keymaps/default/readme.md new file mode 100644 index 0000000000..b938a1f4ce --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# The default keymap for rm_numpad + + +![Default Layout](https://i.imgur.com/APQGsvU.png) + diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/ortho/keymap.c b/keyboards/rmkeebs/rm_numpad/keymaps/ortho/keymap.c new file mode 100644 index 0000000000..c3dc76f5ab --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/ortho/keymap.c @@ -0,0 +1,48 @@ +/* Copyright 2021 RuckerMachine + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + DBL_ZRO = SAFE_RANGE, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DBL_ZRO: + if (record->event.pressed) { + // when keycode DBL_ZRO is pressed + SEND_STRING("00"); + } else { + // when keycode DBL_ZRO is released + } + break; + + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + LAYOUT_ortho_6x4( + KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_EQL, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, DBL_ZRO, KC_PDOT, KC_DEL + ) +}; + diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/ortho/readme.md b/keyboards/rmkeebs/rm_numpad/keymaps/ortho/readme.md new file mode 100644 index 0000000000..02f7cbc731 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/ortho/readme.md @@ -0,0 +1,4 @@ +# The ortho keymap for rm_numpad + + +![ortho layout](https://i.imgur.com/z8Pt9R6.png) diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c new file mode 100644 index 0000000000..84fa6b2a64 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c @@ -0,0 +1,31 @@ +/* Copyright 2021 RuckerMachine + * + * 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 . + */ +#include QMK_KEYBOARD_H + + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* Base */ + LAYOUT_split_plus_6x4( + KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, KC_EQL, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, KC_PENT, + KC_P0, KC_PDOT + ) +}; + diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/readme.md b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/readme.md new file mode 100644 index 0000000000..df64d91142 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/readme.md @@ -0,0 +1,4 @@ +# The split plus keymap for rm_numpad + + +![Split Plus](https://i.imgur.com/jd2y6ih.png) diff --git a/keyboards/rmkeebs/rm_numpad/readme.md b/keyboards/rmkeebs/rm_numpad/readme.md new file mode 100644 index 0000000000..a8268ef080 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/readme.md @@ -0,0 +1,26 @@ +# rm_numpad + +![rm_numpad](https://www.rmkeebs.com/wp-content/uploads/2022/02/20220225_1953022-1024x879.jpg) + +A simple numpad with the addition of a few features: +* A few additional buttons. The default keymap has these set to "Pause", "Previous Track", and "Next Track" +* A knob. The default keymap has this knob configured to change volume, and clicking the knob is set to "Mute" +* 1u or 2u key options. The "0" key, "+" key, and "Enter" key can be built out using 2u keys, like a normal numpad, or they can be built out using 2x 1u keys. + +* Keyboard Maintainer: [RuckerMachine](https://github.com/RuckerMachine) +* Hardware Supported: RM Keebs RM Numpad kits available at [RMKeebs](https://www.rmkeebs.com/product/rm-numpad/) + +## Bootloader + +Enter the bootloader by briefly pressing the reset button on the back of the PCB. A hole in the back of the case gives you access to the button. + + +Make example for this keyboard (after setting up your build environment): + + make rmkeebs/rm_numpad:default + +Flashing example for this keyboard: + + make rmkeebs/rm_numpad:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/rmkeebs/rm_numpad/rm_numpad.c b/keyboards/rmkeebs/rm_numpad/rm_numpad.c new file mode 100644 index 0000000000..03dc9025c9 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/rm_numpad.c @@ -0,0 +1,31 @@ +/* Copyright 2021 RuckerMachine + * + * 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 . + */ + +#include "rm_numpad.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } + return true; +} +#endif diff --git a/keyboards/rmkeebs/rm_numpad/rm_numpad.h b/keyboards/rmkeebs/rm_numpad/rm_numpad.h new file mode 100644 index 0000000000..93fa9392e1 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/rm_numpad.h @@ -0,0 +1,127 @@ +/* Copyright 2021 RuckerMachine + * + * 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 . + */ + +#pragma once + +#include "quantum.h" +#define ___ KC_NO + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +/* rm_numpad default layout + * .-------------------. + * |PAUS|PREV|NEXT|MUTE| + * |-------------------| + * |NLCK| /| *| -| + * |-------------------| + * | 7| 8| 9| | + * |--------------| | + * | 4| 5| 6| +| + * |-------------------| + * | 1| 2| 3| | + * |--------------| | + * | 0| .| Ent| + * '-------------------' + */ + +#define LAYOUT_numpad_6x4( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, \ + k30, k31, k32, k24, \ + k40, k41, k42, \ + k51, k53, k44 \ +) { \ + { k00, k01, k02, k03, ___ }, \ + { k10, k11, k12, k13, ___ }, \ + { k20, k21, k22, ___, k24 }, \ + { k30, k31, k32, ___, ___ }, \ + { k40, k41, k42, ___, k44 }, \ + { ___, k51, ___, k53, ___ } \ +} + +/* rm_numpad ortho layout + * .-------------------. + * |PAUS|PREV|NEXT|MUTE| + * |-------------------| + * |NLCK| /| *| -| + * |-------------------| + * | 7| 8| 9| =| + * |-------------------| + * | 4| 5| 6| +| + * |-------------------| + * | 1| 2| 3| Ent| + * |-------------------| + * | 0| 00| .| Del| + * '-------------------' + */ + +#define LAYOUT_ortho_6x4( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23, \ + k30, k31, k32, k33, \ + k40, k41, k42, k43, \ + k50, k52, k53, k54 \ +) { \ + { k00, k01, k02, k03, ___ }, \ + { k10, k11, k12, k13, ___ }, \ + { k20, k21, k22, k23, ___ }, \ + { k30, k31, k32, k33, ___ }, \ + { k40, k41, k42, k43, ___ }, \ + { k50, ___, k52, k53, k54 } \ +} + + +/* rm_numpad split plus layout + * .-------------------. + * |PAUS|PREV|NEXT|MUTE| + * |-------------------| + * |NLCK| /| *| -| + * |-------------------| + * | 7| 8| 9| =| + * |-------------------| + * | 4| 5| 6| +| + * |-------------------| + * | 1| 2| 3| Ent| + * |--------------| | + * | 0| .| | + * '-------------------' + */ + +#define LAYOUT_split_plus_6x4( \ + k00, k01, k02, k03, \ + k10, k11, k12, k13, \ + k20, k21, k22, k23, \ + k30, k31, k32, k33, \ + k40, k41, k42, k44, \ + k51, k53 \ +) { \ + { k00, k01, k02, k03, ___ }, \ + { k10, k11, k12, k13, ___ }, \ + { k20, k21, k22, k23, ___ }, \ + { k30, k31, k32, k33, ___ }, \ + { k40, k41, k42, ___, k44 }, \ + { ___, k51, ___, k53, ___ } \ +} + diff --git a/keyboards/rmkeebs/rm_numpad/rules.mk b/keyboards/rmkeebs/rm_numpad/rules.mk new file mode 100644 index 0000000000..0f20c3a635 --- /dev/null +++ b/keyboards/rmkeebs/rm_numpad/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes + +LAYOUTS = numpad_6x4 ortho_6x4 From 027262113354691d4408ae6480e7d39a1675848e Mon Sep 17 00:00:00 2001 From: N L <64655861+niolang@users.noreply.github.com> Date: Wed, 13 Apr 2022 16:29:06 +0200 Subject: [PATCH 247/699] =?UTF-8?q?[Keymap]=C2=A0b=C3=A9po=20layout=20on?= =?UTF-8?q?=20Lily58L=20(#16243)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/lily58/keymaps/niolang/config.h | 49 +++ keyboards/lily58/keymaps/niolang/keymap.c | 359 ++++++++++++++++++++++ keyboards/lily58/keymaps/niolang/rules.mk | 2 + 3 files changed, 410 insertions(+) create mode 100644 keyboards/lily58/keymaps/niolang/config.h create mode 100644 keyboards/lily58/keymaps/niolang/keymap.c create mode 100644 keyboards/lily58/keymaps/niolang/rules.mk diff --git a/keyboards/lily58/keymaps/niolang/config.h b/keyboards/lily58/keymaps/niolang/config.h new file mode 100644 index 0000000000..58ffd90e2f --- /dev/null +++ b/keyboards/lily58/keymaps/niolang/config.h @@ -0,0 +1,49 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +/* Select hand configuration */ +#define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +/* Necessary because of use fo tap dance for ç (leads to un wanted modifications after typing c if not) */ +#define IGNORE_MOD_TAP_INTERRUPT + +/* RGB light */ +#ifdef RGBLIGHT_ENABLE +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +# define RGBLIGHT_HUE_STEP 5 // number of steps to cycle through the hue by +# define RGBLIGHT_SAT_STEP 10 // number of steps to increment the saturation by +# define RGBLIGHT_VAL_STEP 10 // number of steps to increment the brightness by +# define RGBLIGHT_SLEEP // the RGB lighting will be switched off when the host goes to sleep +# define RGBLIGHT_LAYERS // +# define RGBLIGHT_LAYERS_OVERRIDE_RGB_OFF +#endif diff --git a/keyboards/lily58/keymaps/niolang/keymap.c b/keyboards/lily58/keymaps/niolang/keymap.c new file mode 100644 index 0000000000..e2f37f678c --- /dev/null +++ b/keyboards/lily58/keymaps/niolang/keymap.c @@ -0,0 +1,359 @@ + /* Copyright 2017 F_YUUCHI + * Copyright 2020 Drashna Jaelre <@drashna> + * Copyright 2020 Ben Roesner (keycapsss.com) + * Copyright 2022 Niolang + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "keymap_bepo.h" + + +enum layers { + _BEPO, + _LOWER, + _RAISE, + _ADJUST, +}; + +#define RAISE MO(_RAISE) +#define LOWER MO(_LOWER) + +//Modification of cut/copy/paste by their combination, works in more cases +#define KC_COPY LCTL(KC_H) +#define KC_CUT LCTL(KC_C) +#define KC_PSTE2 LCTL(KC_U) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* BÉPO + * ,-----------------------------------------. ,-----------------------------------------. + * |ESC/VM| " 1 | « 2 | » 3 | ( 4 | ) 5 | | @ 6 | + 7 | - 8 | / 9 | * 0 | W | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | Tab | B | | É | P & | O œ | È | | !^ | V | D | L | J | Z | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * |LCTRL | A | Uù | I¨ | E€ | ,;' |-------. ,-------| C/ç | Tᵉ | S | R | N | M | + * |------+------+------+------+------+------|CtPtScn| |SUPPR |------+------+------+------+------+------| + * |LShift| À \ | Y { | X } | .:… | K ~ |-------| |-------| ’? | Q | G | H | F |RShift| + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| AltGr| + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ + + [_BEPO] = LAYOUT( + MT(KC_CAPS, KC_ESC), BP_DQUO, BP_LDAQ, BP_RDAQ, BP_LPRN, BP_RPRN, BP_AT, BP_PLUS, BP_MINS, BP_SLSH, BP_ASTR, BP_W, + KC_TAB, BP_B, BP_EACU, BP_P, BP_O, BP_EGRV, BP_DCIR, BP_V, BP_D, BP_L, BP_J, BP_Z, + KC_LCTRL, BP_A, BP_U, BP_I, BP_E, BP_COMM, MT(BP_CCED, BP_C), BP_T, BP_S, BP_R, BP_N, BP_M, + KC_LSFT, BP_AGRV, BP_Y, BP_X, BP_DOT, BP_K, LSFT(KC_PSCR), KC_DEL, BP_QUOT, BP_Q, BP_G, BP_H, BP_F, KC_RSFT, + KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_ENT, RAISE, KC_BSPC, KC_RALT +), +/* LOWER + * ,-----------------------------------------. ,-----------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | | + | 7 | 8 | 9 | = | # | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | F7 | F8 | F9 | F10 | F11 | F12 | | - | 4 | 5 | 6 | % | ^ | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * |LCTRL | c+c | c+v | Up | home | end |-------. ,-------| / | 1 | 2 | 3 | < | > | + * |------+------+------+------+------+------|TGHi/Lo| |SUPPR |------+------+------+------+------+------| + * |LShift| c+x | Left | Down | Right| pscr |-------| |-------| * | 0 | . | , | ( | ) | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| AltGr| + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ +[_LOWER] = LAYOUT( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_PPLS, KC_P7, KC_P8, KC_P9, BP_EQL, BP_HASH, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PMNS, KC_P4, KC_P5, KC_P6, BP_PERC, BP_RABK, + _______, KC_COPY, KC_PSTE2, KC_UP, KC_HOME, KC_END, KC_PSLS, KC_P1, KC_P2, KC_P3, BP_LABK, BP_RABK, + _______, KC_CUT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR,TG(_RAISE), _______, KC_PAST, KC_P0, KC_PDOT, KC_PCMM, BP_LPRN, BP_RPRN, + _______, _______, _______, _______, _______, _______, _______, _______ +), +[_RAISE] = LAYOUT( + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_PPLS, KC_P7, KC_P8, KC_P9, BP_EQL, BP_HASH, + KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_PMNS, KC_P4, KC_P5, KC_P6, BP_PERC, BP_CIRC, + _______, KC_COPY, KC_PSTE2, KC_UP, KC_HOME, KC_END, KC_PSLS, KC_P1, KC_P2, KC_P3, BP_LABK, BP_RABK, + _______, KC_CUT, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR,TG(_LOWER), _______, KC_PAST, KC_P0, KC_PDOT, KC_PCMM, BP_LPRN, BP_RPRN, + _______, _______, _______, _______, _______, _______, _______, _______ +), + +/* ADJUST + * ,-----------------------------------------. ,-----------------------------------------. + * | | | | | | | | ScLck| Ins | Pause| | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | NUML | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | |-------. ,-------| | |RGB ON| HUE+ | SAT+ | VAL+ | + * |------+------+------+------+------+------| | | |------+------+------+------+------+------| + * | | | | | | |-------| |-------| | | MODE | HUE- | SAT- | VAL- | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LAlt | LGUI |LOWER | /Space / \Enter \ |RAISE |BackSP| RGUI | + * | | | |/ / \ \ | | | | + * `----------------------------' '------''--------------------' + */ + [_ADJUST] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SLCK, KC_INS, KC_PAUSE, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_NLCK, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + state = update_tri_layer_state(state, _RAISE, _LOWER, _ADJUST); + return state; +} + +//SSD1306 OLED update loop, make sure to enable OLED_ENABLE=yes in rules.mk +#ifdef OLED_ENABLE + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (is_keyboard_master()) { + return OLED_ROTATION_270; + } else { + return OLED_ROTATION_0; + } +} + +void render_lily58_logo(void) { + static const char PROGMEM lily58_logo[] = { + // 'logo', 128x32px + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x40, 0xc0, 0x40, 0x40, 0xc0, 0x80, 0x80, 0x80, 0x00, 0x00, + 0x80, 0xe0, 0x70, 0x3c, 0x0e, 0x06, 0x0e, 0x3c, 0x70, 0xe0, 0x80, 0x00, 0x00, 0xc0, 0xc0, 0x00, + 0xc0, 0xc0, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xc0, 0x80, 0x00, 0x00, 0x00, 0x80, + 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x80, 0x80, 0xc0, 0xc0, 0xc0, 0xc0, 0xc0, 0x80, 0x80, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xc0, 0xc0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x3f, 0xfc, 0xc0, 0x80, 0x80, 0x80, 0x81, 0x83, 0x83, + 0x07, 0x07, 0x0c, 0x18, 0x70, 0xe0, 0x80, 0x00, 0x00, 0x01, 0xff, 0xfc, 0x80, 0xb6, 0xb6, 0x80, + 0xb0, 0xb0, 0x00, 0x36, 0x36, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xf0, 0xf1, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x00, 0x00, 0x00, 0x30, 0xf0, 0xf0, 0x80, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 0xf0, 0xf0, + 0x30, 0x00, 0x00, 0x7f, 0xff, 0xff, 0xe1, 0x71, 0x71, 0xf1, 0xf1, 0xe1, 0xc1, 0x81, 0x00, 0x00, + 0x00, 0x00, 0x0c, 0x3f, 0xff, 0xf3, 0xe1, 0xc1, 0xc1, 0x81, 0x81, 0xc3, 0xff, 0x7f, 0x1c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x20, 0x70, 0x78, 0xdc, 0xcc, 0x86, 0x06, 0x03, 0x03, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x03, 0x02, 0x06, 0x84, 0xe1, 0xfb, 0x38, 0x1c, 0x0c, 0x02, 0x01, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x03, 0x03, 0x06, 0x86, 0xcc, 0xdc, 0x78, 0x70, 0x20, 0x00, 0xff, 0xff, 0x80, 0x80, + 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, 0x00, 0xff, 0xff, 0x00, 0x00, 0x00, 0x00, 0xff, + 0xff, 0x80, 0x00, 0x00, 0x00, 0x00, 0x03, 0x1f, 0x7e, 0xf8, 0xe0, 0xf0, 0x7e, 0x1f, 0x03, 0x00, + 0x00, 0x00, 0x00, 0xe0, 0xe0, 0xc0, 0xc0, 0x80, 0x80, 0x80, 0xc0, 0xe1, 0xff, 0x7f, 0x3f, 0x00, + 0x00, 0x00, 0x3e, 0xff, 0xff, 0xc1, 0xc0, 0x80, 0x81, 0x81, 0xc3, 0xc3, 0xff, 0xfe, 0x3c, 0x00, + 0x00, 0x00, 0x00, 0x00, 0xff, 0xff, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x80, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, 0x06, 0x06, 0x06, 0x04, 0x04, 0x04, 0x04, 0x06, + 0x06, 0x02, 0x03, 0x01, 0x01, 0x00, 0x01, 0x01, 0x03, 0x02, 0x06, 0x06, 0x04, 0x04, 0x04, 0x04, + 0x06, 0x06, 0x06, 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x01, 0x01, 0x00, 0x00, 0x60, 0x60, 0x70, 0x38, 0x1f, 0x0f, 0x03, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x01, 0x00 +}; + oled_write_raw_P(lily58_logo, sizeof(lily58_logo)); +} + + +# define KEYLOG_LEN 6 +char keylog_str[KEYLOG_LEN] = {}; +uint8_t keylogs_str_idx = 0; +uint16_t log_timer = 0; + +const char code_to_name[60] = { + ' ', ' ', ' ', ' ', 'a', 'k', 'x', 'i', 'p', 'e', + ',', 'c', 'd', 't', 's', 'r', 'q', ' ', 'l', 'j', + 'b', 'o', 'u', 'e', 'v', '.', 'e', 'y', '^', 'a', + ' ', ' ', ' ', '(', ')', '@', '+', '-', '/', '*', + 'R', 'E', 'B', 'T', '_', '-', '=', '[', ']', '\\', + '#', ';', '\'', '`', ',', '.', '/', ' ', ' ', ' '}; + +void add_keylog(uint16_t keycode) { + if ((keycode >= QK_MOD_TAP && keycode <= QK_MOD_TAP_MAX) || (keycode >= QK_LAYER_TAP && keycode <= QK_LAYER_TAP_MAX)) { + keycode = keycode & 0xFF; + } + + for (uint8_t i = KEYLOG_LEN - 1; i > 0; i--) { + keylog_str[i] = keylog_str[i - 1]; + } + if (keycode < 60) { + keylog_str[0] = code_to_name[keycode]; + } + keylog_str[KEYLOG_LEN - 1] = 0; + + log_timer = timer_read(); +} + +void update_log(void) { + if (timer_elapsed(log_timer) > 750) { + add_keylog(0); + } +} + +void render_keylogger_status(void) { + oled_write_P(PSTR("KLogr"), false); + oled_write(keylog_str, false); +} + +void render_default_layer_state(void) { + oled_write_P(PSTR("Layer"), false); + oled_write_P(PSTR(" "), false); + switch (get_highest_layer(layer_state)) { + case _BEPO: + oled_write_P(PSTR("BEPO"), false); + break; + case _LOWER: + oled_write_ln_P(PSTR("LOW"), false); + break; + case _RAISE: + oled_write_P(PSTR("HIGH"), false); + break; + case _ADJUST: + oled_write_ln_P(PSTR("ADJ"), false); + break; + default: + oled_write_ln_P(PSTR("Undefined"), false); + } +} + +void render_keylock_status(led_t led_state) { + oled_write_ln_P(PSTR("Lock"), false); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("N"), led_state.num_lock); + oled_write_P(PSTR("C"), led_state.caps_lock); + oled_write_ln_P(PSTR("S"), led_state.scroll_lock); +} + +void render_mod_status(uint8_t modifiers) { + oled_write_ln_P(PSTR("Mods"), false); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("S"), (modifiers & MOD_MASK_SHIFT)); + oled_write_P(PSTR("C"), (modifiers & MOD_MASK_CTRL)); + oled_write_P(PSTR("A"), (modifiers & MOD_MASK_ALT)); + oled_write_P(PSTR("G"), (modifiers & MOD_MASK_GUI)); +} + +void render_status_main(void) { + // Show keyboard layout + render_default_layer_state(); + // Add a empty line + oled_write_P(PSTR("-----"), false); + // Show host keyboard led status + render_keylock_status(host_keyboard_led_state()); + // Add a empty line + oled_write_P(PSTR("-----"), false); + // Show modifier status + render_mod_status(get_mods()); + // Add a empty line + oled_write_P(PSTR("-----"), false); + render_keylogger_status(); +} + +bool oled_task_user(void) { + update_log(); + if (is_keyboard_master()) { + render_status_main(); // Renders the current keyboard state (layer, lock, caps, scroll, etc) + } else { + render_lily58_logo(); + } + return false; +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + add_keylog(keycode); + } + //return true; + +//intercepting hold/tap to change hold function + switch (keycode) { + case MT(KC_CAPS, KC_ESC): + if (!record->tap.count && record->event.pressed) { + tap_code(KC_CAPS); // Intercept hold function to send Caps Lock + return false; + } + return true; // Return true for normal processing of tap keycode + case MT(BP_CCED, BP_C): + if (!record->tap.count && record->event.pressed) { + tap_code(BP_CCED); // Intercept hold function to send ç + return false; + } + return true; // Return true for normal processing of tap keycode + } + return true; +} +#endif // OLED_ENABLE + + +// Rotary encoder related code +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { // Encoder on master side + if(IS_LAYER_ON(_RAISE)) { // on Raise layer + // Cursor control + if (clockwise) { + tap_code(KC_MNXT); + } else { + tap_code(KC_MPRV); + } + } + else { + if (clockwise) { + tap_code(KC_VOLD); + } else { + tap_code(KC_VOLU); + } + } + } + else if (index == 1) { // Encoder on slave side + if(IS_LAYER_ON(_LOWER)) { // on Lower layer + // + if (clockwise) { + tap_code(KC_RIGHT); + } else { + tap_code(KC_LEFT); + } + } + else { + if (clockwise) { + tap_code(KC_DOWN); + } else { + tap_code(KC_UP); + } + } + } + return false; +} +#endif + +//layer led modification +// Light LEDs 6 to 9 and 12 to 15 red when caps lock is active. Hard to ignore! +const rgblight_segment_t PROGMEM my_capslock_layer[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 6, HSV_RED}, // Light 6 LEDs, starting with LED 0 + {35, 6, HSV_RED} // Light 6 LEDs, starting with LED 35 +); +// Now define the array of layers. Later layers take precedence +const rgblight_segment_t* const PROGMEM my_rgb_layers[] = RGBLIGHT_LAYERS_LIST( + my_capslock_layer +); +void keyboard_post_init_user(void) { + // Enable the LED layers + rgblight_layers = my_rgb_layers; +} +bool led_update_user(led_t led_state) { + rgblight_set_layer_state(0, led_state.caps_lock); + return true; +} diff --git a/keyboards/lily58/keymaps/niolang/rules.mk b/keyboards/lily58/keymaps/niolang/rules.mk new file mode 100644 index 0000000000..83c24c8705 --- /dev/null +++ b/keyboards/lily58/keymaps/niolang/rules.mk @@ -0,0 +1,2 @@ +EXTRAKEY_ENABLE = yes +OLED_ENABLE = yes \ No newline at end of file From 8580380eec973693d5c108b85d4c318e0d912b35 Mon Sep 17 00:00:00 2001 From: ClicketySplit <101202583+ClicketySplit@users.noreply.github.com> Date: Wed, 13 Apr 2022 08:31:11 -0600 Subject: [PATCH 248/699] [Keyboard] The inaugural commit for Leeloo's firmware. (#16599) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/clickety_split/leeloo/info.json | 78 +++++++++++ .../leeloo/keymaps/default/config.h | 35 +++++ .../leeloo/keymaps/default/keymap.c | 114 +++++++++++++++ .../leeloo/keymaps/default/rules.mk | 1 + keyboards/clickety_split/leeloo/leeloo.c | 131 ++++++++++++++++++ keyboards/clickety_split/leeloo/leeloo.h | 24 ++++ keyboards/clickety_split/leeloo/readme.md | 16 +++ keyboards/clickety_split/leeloo/rev1/config.h | 68 +++++++++ keyboards/clickety_split/leeloo/rev1/rev1.c | 18 +++ keyboards/clickety_split/leeloo/rev1/rev1.h | 40 ++++++ keyboards/clickety_split/leeloo/rev1/rules.mk | 1 + keyboards/clickety_split/leeloo/rules.mk | 21 +++ 12 files changed, 547 insertions(+) create mode 100644 keyboards/clickety_split/leeloo/info.json create mode 100644 keyboards/clickety_split/leeloo/keymaps/default/config.h create mode 100644 keyboards/clickety_split/leeloo/keymaps/default/keymap.c create mode 100644 keyboards/clickety_split/leeloo/keymaps/default/rules.mk create mode 100644 keyboards/clickety_split/leeloo/leeloo.c create mode 100644 keyboards/clickety_split/leeloo/leeloo.h create mode 100644 keyboards/clickety_split/leeloo/readme.md create mode 100644 keyboards/clickety_split/leeloo/rev1/config.h create mode 100644 keyboards/clickety_split/leeloo/rev1/rev1.c create mode 100644 keyboards/clickety_split/leeloo/rev1/rev1.h create mode 100644 keyboards/clickety_split/leeloo/rev1/rules.mk create mode 100644 keyboards/clickety_split/leeloo/rules.mk diff --git a/keyboards/clickety_split/leeloo/info.json b/keyboards/clickety_split/leeloo/info.json new file mode 100644 index 0000000000..40447d3f93 --- /dev/null +++ b/keyboards/clickety_split/leeloo/info.json @@ -0,0 +1,78 @@ +{ + "keyboard_name": "Leeloo", + "url": "https://clicketysplit.ca/pages/leeloo", + "maintainer": "Clickety Split Ltd", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"Esc", "x":0, "y":0.5}, + {"label":"1", "x":1, "y":0.4}, + {"label":"2", "x":2, "y":0.2}, + {"label":"3", "x":3, "y":0}, + {"label":"4", "x":4, "y":0.2}, + {"label":"5", "x":5, "y":0.4}, + + {"label":"6", "x":9, "y":0.4}, + {"label":"7", "x":10, "y":0.2}, + {"label":"8", "x":11, "y":0}, + {"label":"9", "x":12, "y":0.2}, + {"label":"0", "x":13, "y":0.4}, + {"label":"Back Slash", "x":14, "y":0.5}, + + {"label":"TAB", "x":0, "y":1.5}, + {"label":"Q", "x":1, "y":1.4}, + {"label":"W", "x":2, "y":1.2}, + {"label":"E", "x":3, "y":1.0}, + {"label":"R", "x":4, "y":1.2}, + {"label":"T", "x":5, "y":1.4}, + + {"label":"Y", "x":9, "y":1.4}, + {"label":"U", "x":10, "y":1.2}, + {"label":"I", "x":11, "y":1.0}, + {"label":"O", "x":12, "y":1.2}, + {"label":"P", "x":13, "y":1.4}, + {"label":"GRV", "x":14, "y":1.5}, + + {"label":"CAPS", "x":0, "y":2.5}, + {"label":"A", "x":1, "y":2.4}, + {"label":"S", "x":2, "y":2.2}, + {"label":"D", "x":3, "y":2.0}, + {"label":"F", "x":4, "y":2.2}, + {"label":"G", "x":5, "y":2.4}, + + {"label":"H", "x":9, "y":2.4}, + {"label":"J", "x":10, "y":2.2}, + {"label":"K", "x":11, "y":2.0}, + {"label":"L", "x":12, "y":2.2}, + {"label":";", "x":13, "y":2.4}, + {"label":"'", "x":14, "y":2.5}, + + {"label":"Shift", "x":0, "y":3.5}, + {"label":"Z", "x":1, "y":3.4}, + {"label":"X", "x":2, "y":3.2}, + {"label":"C", "x":3, "y":3.0}, + {"label":"V", "x":4, "y":3.2}, + {"label":"B", "x":5, "y":3.4}, + + {"label":"N", "x":9, "y":3.4}, + {"label":"M", "x":10, "y":3.2}, + {"label":",", "x":11, "y":3.0}, + {"label":".", "x":12, "y":3.2}, + {"label":"/", "x":13, "y":3.4}, + {"label":"Shift", "x":14, "y":3.5}, + + {"label":"Alt", "x":2.7, "y":4.6}, + {"label":"Ctrl", "x":3.8, "y":4.5}, + {"label":"Enter", "x":5.7, "y":3.57}, + {"label":"MINS", "x":7.12, "y":2.96}, + {"label":"GUI", "x":6.25, "y":3.4}, + + {"label":"GUI", "x":7.75, "y":3.4}, + {"label":"EQL", "x":6.39, "y":6.86}, + {"label":"Space", "x":8.08, "y":6.18}, + {"label":"Back Space", "x":10.2, "y":4.5}, + {"label":"Delete", "x":11.3, "y":4.6} + ] + } + } +} diff --git a/keyboards/clickety_split/leeloo/keymaps/default/config.h b/keyboards/clickety_split/leeloo/keymaps/default/config.h new file mode 100644 index 0000000000..7a8d0f5bd6 --- /dev/null +++ b/keyboards/clickety_split/leeloo/keymaps/default/config.h @@ -0,0 +1,35 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#pragma once + +// Select hand configuration +// #define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +#ifdef TAPPING_TERM + #undef TAPPING_TERM + + #define IGNORE_MOD_TAP_INTERRUPT + #define TAPPING_FORCE_HOLD + #define TAPPING_TERM 150 +#endif + +// If rotary encoders are used, and they require more or less resolution/sensitivity +// you may try increasing or decreasing the value. +// #define ENCODER_RESOLUTION 2 diff --git a/keyboards/clickety_split/leeloo/keymaps/default/keymap.c b/keyboards/clickety_split/leeloo/keymaps/default/keymap.c new file mode 100644 index 0000000000..bac722a7c3 --- /dev/null +++ b/keyboards/clickety_split/leeloo/keymaps/default/keymap.c @@ -0,0 +1,114 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _LOWER, + _RAISE, + _ADJUST +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* QWERTY + * ,-----------------------------------------. ,-----------------------------------------. + * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | \ | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | | Y | U | I | O | P | ` | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | CAPS | A | S | D | F | G |-------. ,-------| H | J | K | L | ; | ' | + * |------+------+------+------+------+------| LGUI | | RGUI |------+------+------+------+------+------| + * |LSHIFT| Z | X | C | V | B |-------| |-------| N | M | , | . | / |RSHIFT| + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | BSPC | DEL | + * | | | LOWR |/ RAISE / \RAISE \ | LOWR | | | + * `-------------------------------' '------''-----------------------' + */ + [_BASE] = LAYOUT( + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_GRV, + 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_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_LGUI, KC_RGUI, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LALT, KC_LCTL, LT(1,KC_ENT), LT(2,KC_MINS), LT(2,KC_EQL), LT(1,KC_SPC), KC_BSPC, KC_DEL +), +/* LOWER + * ,-----------------------------------------. ,-----------------------------------------. + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | < | ( | [ | { |--------. ,-------| } | ] | ) | > | | | + * |------+------+------+------+------+------| | | |------+------+------+------+------+------| + * | | | | | | |--------| |-------| | | | | | | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | BSPC | DEL | + * | | | LOWR |/ RAISE / \RAISE \ | LOWR | | | + * `-------------------------------' '------''-----------------------' + */ +[_LOWER] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_LABK, KC_LPRN, KC_LBRC, KC_LCBR, KC_RCBR, KC_RBRC, KC_RPRN, KC_RABK, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +), +/* RAISE + * ,-----------------------------------------. ,-----------------------------------------. + * | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | PGUP | HOME | UP | END | | F12 | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | |-------. ,-------| PGDN | LEFT | DOWN | RIGHT| | | + * |------+------+------+------+------+------| | | |------+------+------+------+------+------| + * | | | | | | |-------| |-------| | LWRD | | RWRD | | | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | DEL | DEL | + * | | | LOWR |/ RAISE / \RAISE \ | LOWR | | | + * `-------------------------------' '------''-----------------------' + */ +[_RAISE] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, _______, _______, _______, _______, _______, KC_PGUP, KC_HOME, KC_UP, KC_END, _______, KC_F12, + _______, _______, _______, _______, _______, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, C(KC_LEFT), _______, C(KC_RGHT), _______, _______, + _______, _______, _______, _______, _______, _______, KC_DEL, _______ +), +/* ADJUST + * ,-----------------------------------------. ,-----------------------------------------. + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | | | | | | | | | + * |------+------+------+------+------+------| |------+------+------+------+------+------| + * | | | | | | |--------. ,-------| | | | | | | + * |------+------+------+------+------+------| | | |------+------+------+------+------+------| + * | | | | | | |--------| |-------| | | | | | | + * `-----------------------------------------/ / \ \-----------------------------------------' + * | LALT | LCTL | ENT | / MINS / \ EQL \ | SPC | BSPC | DEL | + * | | | LOWR |/ RAISE / \RAISE \ | LOWR | | | + * `-------------------------------' '------''-----------------------' + */ + [_ADJUST] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ +) +}; + + diff --git a/keyboards/clickety_split/leeloo/keymaps/default/rules.mk b/keyboards/clickety_split/leeloo/keymaps/default/rules.mk new file mode 100644 index 0000000000..4da205a168 --- /dev/null +++ b/keyboards/clickety_split/leeloo/keymaps/default/rules.mk @@ -0,0 +1 @@ +LTO_ENABLE = yes diff --git a/keyboards/clickety_split/leeloo/leeloo.c b/keyboards/clickety_split/leeloo/leeloo.c new file mode 100644 index 0000000000..ea3902d899 --- /dev/null +++ b/keyboards/clickety_split/leeloo/leeloo.c @@ -0,0 +1,131 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#include "leeloo.h" + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_kb(oled_rotation_t rotation) { + if (!is_keyboard_master()) { + return OLED_ROTATION_180; + } else { + return rotation; + } +} + +static void render_keylock_status(led_t led_state) { + oled_write_P(PSTR("Lock: "), false); + oled_write_P(PSTR("CAPS"), led_state.caps_lock); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("NUML"), led_state.num_lock); + oled_write_P(PSTR(" "), false); + oled_write_ln_P(PSTR("SCLK"), led_state.scroll_lock); +} + +static void render_mod_status(uint8_t modifiers) { + oled_write_P(PSTR("Mods: "), false); + oled_write_P(PSTR("Sft"), (modifiers & MOD_MASK_SHIFT)); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("Ctl"), (modifiers & MOD_MASK_CTRL)); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("Alt"), (modifiers & MOD_MASK_ALT)); + oled_write_P(PSTR(" "), false); + oled_write_P(PSTR("GUI"), (modifiers & MOD_MASK_GUI)); +} + +static void render_secondary_oled(void) { + // Version Information + oled_write_P(PSTR("Leeloo\n\n"), false); + oled_write_P(PSTR("Firmware: "), false); + oled_write_P(PSTR("v1.0"), false); + oled_write_P(PSTR("\n"), false); + oled_write_P(PSTR("Clickety Split Ltd."), false); +} + +static void render_status(void) { + // Host Keyboard Layer Status + switch (get_highest_layer(default_layer_state)) { + case _BASE: + oled_write_P(PSTR("QWERTY | "), false); + break; + } + + // Host Keyboard Layer Status + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_P(PSTR("Base \n"), false); + break; + + case _LOWER: + oled_write_P(PSTR("Lower \n"), false); + break; + + case _RAISE: + oled_write_P(PSTR("Raise \n"), false); + break; + + case _ADJUST: + oled_write_P(PSTR("Adjust \n"), false); + break; + + default: + oled_write_P(PSTR("Unknown \n"), false); + } + + oled_write_P(PSTR("\n"), false); + render_keylock_status(host_keyboard_led_state()); + render_mod_status(get_mods() | get_oneshot_mods()); +} + +bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + + if (is_keyboard_master()) { + // Renders the current keyboard state (layer, lock, caps, scroll, etc) + render_status(); + } else { + // Version Information + render_secondary_oled(); + } + + return false; + +} +#endif // OLED_ENABLE + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + // Volume control + if (clockwise) { + tap_code_delay(KC_VOLD, 10); + } else { + tap_code_delay(KC_VOLU, 10); + } + } else if (index == 1) { + // Page up/Page down + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return true; +} +#endif diff --git a/keyboards/clickety_split/leeloo/leeloo.h b/keyboards/clickety_split/leeloo/leeloo.h new file mode 100644 index 0000000000..98cfddae34 --- /dev/null +++ b/keyboards/clickety_split/leeloo/leeloo.h @@ -0,0 +1,24 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#if defined(KEYBOARD_clickety_split_leeloo_rev1) +# include "rev1.h" +#endif diff --git a/keyboards/clickety_split/leeloo/readme.md b/keyboards/clickety_split/leeloo/readme.md new file mode 100644 index 0000000000..f672294e14 --- /dev/null +++ b/keyboards/clickety_split/leeloo/readme.md @@ -0,0 +1,16 @@ +# Leeloo + +![Leeloo](https://cdn.shopify.com/s/files/1/0599/3460/5491/files/Leeloo-rev1.0-w.jpg?v=1646798726) + +Leeloo is a 4x6x5m ortholinear split keyboard kit made and sold by Clickety Split Ltd. + +* Keyboard Maintainer: [Clickety Split](https://github.com/ClicketySplit) +* Hardware Supported: Leeloo PCB rev1, Pro Micro, Elite-C +* Hardware Availability: [clicketysplit.ca](https://clicketysplit.ca/pages/leeloo) + +Make example, after setting up build environment: + + make clickety_split/leeloo/rev1:default + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/clickety_split/leeloo/rev1/config.h b/keyboards/clickety_split/leeloo/rev1/config.h new file mode 100644 index 0000000000..cf9c563f8f --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev1/config.h @@ -0,0 +1,68 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4013 +#define PRODUCT_ID 0x2022 +#define DEVICE_VER 0x0013 +#define MANUFACTURER Clickety Split Ltd +#define PRODUCT Leeloo + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 10 +#define MATRIX_COLS 6 + +// wiring of each half +#define MATRIX_ROW_PINS { C6, D7, E6, B4, B5 } +#define MATRIX_COL_PINS { F6, F7, B1, B3, B2, B6 } +#define DIODE_DIRECTION COL2ROW + +/* communication between sides */ +#define SOFT_SERIAL_PIN D2 + +/* define tapping term */ +#define TAPPING_TERM 100 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* encoder support */ +#define ENCODERS_PAD_A { F5 } +#define ENCODERS_PAD_B { F4 } +#define ENCODERS_PAD_A_RIGHT { F4 } +#define ENCODERS_PAD_B_RIGHT { F5 } + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT + +/* + * Feature disable options + * These options are also useful to firmware size reduction. + */ + +/* disable debug print */ +// #define NO_DEBUG + +/* disable print */ +// #define NO_PRINT diff --git a/keyboards/clickety_split/leeloo/rev1/rev1.c b/keyboards/clickety_split/leeloo/rev1/rev1.c new file mode 100644 index 0000000000..31e27144fb --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev1/rev1.c @@ -0,0 +1,18 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#include "leeloo.h" diff --git a/keyboards/clickety_split/leeloo/rev1/rev1.h b/keyboards/clickety_split/leeloo/rev1/rev1.h new file mode 100644 index 0000000000..7469cc2d83 --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev1/rev1.h @@ -0,0 +1,40 @@ +/* Copyright 2022 Clickety Split Ltd. + * https://clicketysplit.ca + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \ + L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \ + L20, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, R20, \ + L30, L31, L32, L33, L34, L35, L45, R45, R35, R34, R33, R32, R31, R30, \ + L41, L42, L43, L44, R44, R43, R42, R41 \ + ) \ + { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { KC_NO, L41, L42, L43, L44, L45 }, \ + { R00, R01, R02, R03, R04, R05 }, \ + { R10, R11, R12, R13, R14, R15 }, \ + { R20, R21, R22, R23, R24, R25 }, \ + { R30, R31, R32, R33, R34, R35 }, \ + { KC_NO, R41, R42, R43, R44, R45 } \ + } diff --git a/keyboards/clickety_split/leeloo/rev1/rules.mk b/keyboards/clickety_split/leeloo/rev1/rules.mk new file mode 100644 index 0000000000..5713c15076 --- /dev/null +++ b/keyboards/clickety_split/leeloo/rev1/rules.mk @@ -0,0 +1 @@ +# Intentionally left blank. \ No newline at end of file diff --git a/keyboards/clickety_split/leeloo/rules.mk b/keyboards/clickety_split/leeloo/rules.mk new file mode 100644 index 0000000000..c82e083a7f --- /dev/null +++ b/keyboards/clickety_split/leeloo/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +SPLIT_KEYBOARD = yes + +DEFAULT_FOLDER = clickety_split/leeloo/rev1 From f3004d960f144cf5b40eb2d2790dd2ca86ca457a Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Wed, 13 Apr 2022 10:27:20 -0600 Subject: [PATCH 249/699] [Keyboard] Fix waffling80 - Missing comma (#16848) --- .../waffling80/keymaps/default/keymap.c | 36 +++++----- .../4pplet/waffling80/keymaps/via/keymap.c | 71 +++++++++---------- 2 files changed, 53 insertions(+), 54 deletions(-) diff --git a/keyboards/4pplet/waffling80/keymaps/default/keymap.c b/keyboards/4pplet/waffling80/keymaps/default/keymap.c index 5331d7d3da..4cb9643d27 100644 --- a/keyboards/4pplet/waffling80/keymaps/default/keymap.c +++ b/keyboards/4pplet/waffling80/keymaps/default/keymap.c @@ -17,22 +17,22 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -// main layer -[0] = LAYOUT_all( - KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_GRC, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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, KC_DEL , KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, - MO(1), MO(1)) // extra keys for alps dual action switches -// basic function layer -[1] = LAYOUT_all( - RESET, 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, 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, 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), // extra keys for alps dual action switches + // main layer + [0] = LAYOUT_all( + KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_GRV, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, + MO(1), MO(1)), // extra keys for alps dual action switches + // basic function layer + [1] = LAYOUT_all( + QK_BOOT, 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, 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, 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), // extra keys for alps dual action switches }; diff --git a/keyboards/4pplet/waffling80/keymaps/via/keymap.c b/keyboards/4pplet/waffling80/keymaps/via/keymap.c index c816d56af6..6c0d81ba40 100644 --- a/keyboards/4pplet/waffling80/keymaps/via/keymap.c +++ b/keyboards/4pplet/waffling80/keymaps/via/keymap.c @@ -17,41 +17,40 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -// main layer -[0] = LAYOUT_all( - KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_GRV, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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, KC_DEL , KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, - MO(1), MO(1)), // extra keys for alps dual action switches -// basic function layer -[1] = LAYOUT_all( - RESET, 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, 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, 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), // extra keys for alps dual action switches -// extra layer for VIA -[2] = LAYOUT_all( - RESET, 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, 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, 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), // extra keys for alps dual action switches + // main layer + [0] = LAYOUT_all( + KC_ESC, KC_F1, 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_GRV, KC_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, + MO(1), MO(1)), // extra keys for alps dual action switches + // basic function layer + [1] = LAYOUT_all( + RESET, 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, 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, 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), // extra keys for alps dual action switches -// extra layer for VIA -[3] = LAYOUT_all( - RESET, 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, 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, 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) // extra keys for alps dual action switches + [2] = LAYOUT_all( + RESET, 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, 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, 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), // extra keys for alps dual action switches + + [3] = LAYOUT_all( + RESET, 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, 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, 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) // extra keys for alps dual action switches }; From 46c0db458ee70d5c37add7642a175cc96163713c Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Wed, 13 Apr 2022 10:45:16 -0600 Subject: [PATCH 250/699] [Keyboard] Fix kay65 - Missing keycode (#16849) --- keyboards/mechlovin/kay65/keymaps/default/keymap.c | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/keyboards/mechlovin/kay65/keymaps/default/keymap.c b/keyboards/mechlovin/kay65/keymaps/default/keymap.c index cc7cdc44fa..f72c8d8bb4 100644 --- a/keyboards/mechlovin/kay65/keymaps/default/keymap.c +++ b/keyboards/mechlovin/kay65/keymaps/default/keymap.c @@ -28,10 +28,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_PGUP, 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_PGDN, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - - + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) }; bool process_record_user(uint16_t keycode, keyrecord_t *record) { From 18e56902c996854fdb3b68a26f07c0751883701d Mon Sep 17 00:00:00 2001 From: leah-splitkb <103112489+leah-splitkb@users.noreply.github.com> Date: Thu, 14 Apr 2022 05:27:26 +0200 Subject: [PATCH 251/699] Fix external flash on AVR (#16851) --- drivers/flash/flash_spi.c | 2 +- drivers/flash/flash_spi.h | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/flash/flash_spi.c b/drivers/flash/flash_spi.c index f4cbf65159..684ee06d71 100644 --- a/drivers/flash/flash_spi.c +++ b/drivers/flash/flash_spi.c @@ -57,7 +57,7 @@ along with this program. If not, see . /* Mode setting comands */ #define FLASH_CMD_DP 0xB9 /* DP (Deep Power Down) */ -#define FLASH_CMD_RDP 0xAB /* RDP (Release form Deep Power Down) */ +#define FLASH_CMD_RDP 0xAB /* RDP (Release from Deep Power Down) */ /* Status register */ #define FLASH_FLAG_WIP 0x01 /* Write in progress bit */ diff --git a/drivers/flash/flash_spi.h b/drivers/flash/flash_spi.h index abe95e955e..87460fc210 100644 --- a/drivers/flash/flash_spi.h +++ b/drivers/flash/flash_spi.h @@ -74,21 +74,21 @@ along with this program. If not, see . The sector size of the FLASH in bytes, as specified in the datasheet. */ #ifndef EXTERNAL_FLASH_SECTOR_SIZE -# define EXTERNAL_FLASH_SECTOR_SIZE (4 * 1024) +# define EXTERNAL_FLASH_SECTOR_SIZE (4 * 1024L) #endif /* The block size of the FLASH in bytes, as specified in the datasheet. */ #ifndef EXTERNAL_FLASH_BLOCK_SIZE -# define EXTERNAL_FLASH_BLOCK_SIZE (64 * 1024) +# define EXTERNAL_FLASH_BLOCK_SIZE (64 * 1024L) #endif /* The total size of the FLASH in bytes, as specified in the datasheet. */ #ifndef EXTERNAL_FLASH_SIZE -# define EXTERNAL_FLASH_SIZE (512 * 1024) +# define EXTERNAL_FLASH_SIZE (512 * 1024L) #endif /* From a4a67d515eb21db406f0103072ae172f54478dc3 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Wed, 13 Apr 2022 22:42:24 -0700 Subject: [PATCH 252/699] Ignore VIA(L) json files (#16845) --- .gitignore | 3 +++ 1 file changed, 3 insertions(+) diff --git a/.gitignore b/.gitignore index 3f646c6b01..b1bd2609bc 100644 --- a/.gitignore +++ b/.gitignore @@ -91,3 +91,6 @@ user_song_list.h compile_commands.json .clangd/ .cache/ + +# VIA(L) json files that don't belong in QMK repo +via*.json From 812f97e241acb307e02e4149442a62cacb4aeb8b Mon Sep 17 00:00:00 2001 From: holtenc Date: Thu, 14 Apr 2022 11:26:24 -0500 Subject: [PATCH 253/699] [Keyboard] move/rename obro to Meridian RGB (#16828) Co-authored-by: Joel Challis --- keyboards/{handwired/obro => primekb/meridian_rgb}/config.h | 6 +++++- .../{handwired/obro => primekb/meridian_rgb}/info.json | 2 +- .../obro => primekb/meridian_rgb}/keymaps/default/keymap.c | 0 .../obro => primekb/meridian_rgb}/keymaps/via/keymap.c | 0 .../obro => primekb/meridian_rgb}/keymaps/via/rules.mk | 0 .../obro/obro.c => primekb/meridian_rgb/meridian_rgb.c} | 2 +- .../obro/obro.h => primekb/meridian_rgb/meridian_rgb.h} | 0 .../{handwired/obro => primekb/meridian_rgb}/readme.md | 6 +++--- keyboards/{handwired/obro => primekb/meridian_rgb}/rules.mk | 0 9 files changed, 10 insertions(+), 6 deletions(-) rename keyboards/{handwired/obro => primekb/meridian_rgb}/config.h (93%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/info.json (98%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/keymaps/default/keymap.c (100%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/keymaps/via/keymap.c (100%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/keymaps/via/rules.mk (100%) rename keyboards/{handwired/obro/obro.c => primekb/meridian_rgb/meridian_rgb.c} (96%) rename keyboards/{handwired/obro/obro.h => primekb/meridian_rgb/meridian_rgb.h} (100%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/readme.md (84%) rename keyboards/{handwired/obro => primekb/meridian_rgb}/rules.mk (100%) diff --git a/keyboards/handwired/obro/config.h b/keyboards/primekb/meridian_rgb/config.h similarity index 93% rename from keyboards/handwired/obro/config.h rename to keyboards/primekb/meridian_rgb/config.h index 1217214dd7..4dc63d91ce 100644 --- a/keyboards/handwired/obro/config.h +++ b/keyboards/primekb/meridian_rgb/config.h @@ -24,7 +24,7 @@ along with this program. If not, see . #define PRODUCT_ID 0x0042 #define DEVICE_VER 0x0002 #define MANUFACTURER Prime Keyboards -#define PRODUCT obro +#define PRODUCT Meridian RGB /* key matrix size */ #define MATRIX_ROWS 5 @@ -49,6 +49,10 @@ along with this program. If not, see . #define RGBLIGHT_EFFECT_TWINKLE #define RGBLIGHT_LIMIT_VAL 200 +#define LED_NUM_LOCK_PIN B0 +#define LED_CAPS_LOCK_PIN B1 +#define LED_SCROLL_LOCK_PIN B2 + /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 diff --git a/keyboards/handwired/obro/info.json b/keyboards/primekb/meridian_rgb/info.json similarity index 98% rename from keyboards/handwired/obro/info.json rename to keyboards/primekb/meridian_rgb/info.json index e289ae585e..606fab0692 100644 --- a/keyboards/handwired/obro/info.json +++ b/keyboards/primekb/meridian_rgb/info.json @@ -1,5 +1,5 @@ { - "keyboard_name": "Obro", + "keyboard_name": "Meridian RGB", "url": "https://www.primekb.com", "maintainer": "holtenc", "layouts": { diff --git a/keyboards/handwired/obro/keymaps/default/keymap.c b/keyboards/primekb/meridian_rgb/keymaps/default/keymap.c similarity index 100% rename from keyboards/handwired/obro/keymaps/default/keymap.c rename to keyboards/primekb/meridian_rgb/keymaps/default/keymap.c diff --git a/keyboards/handwired/obro/keymaps/via/keymap.c b/keyboards/primekb/meridian_rgb/keymaps/via/keymap.c similarity index 100% rename from keyboards/handwired/obro/keymaps/via/keymap.c rename to keyboards/primekb/meridian_rgb/keymaps/via/keymap.c diff --git a/keyboards/handwired/obro/keymaps/via/rules.mk b/keyboards/primekb/meridian_rgb/keymaps/via/rules.mk similarity index 100% rename from keyboards/handwired/obro/keymaps/via/rules.mk rename to keyboards/primekb/meridian_rgb/keymaps/via/rules.mk diff --git a/keyboards/handwired/obro/obro.c b/keyboards/primekb/meridian_rgb/meridian_rgb.c similarity index 96% rename from keyboards/handwired/obro/obro.c rename to keyboards/primekb/meridian_rgb/meridian_rgb.c index e02765e6ad..95bb63a91b 100644 --- a/keyboards/handwired/obro/obro.c +++ b/keyboards/primekb/meridian_rgb/meridian_rgb.c @@ -15,4 +15,4 @@ You should have received a copy of the GNU General Public License along with this program. If not, see . */ -#include "obro.h" +#include "meridian_rgb.h" diff --git a/keyboards/handwired/obro/obro.h b/keyboards/primekb/meridian_rgb/meridian_rgb.h similarity index 100% rename from keyboards/handwired/obro/obro.h rename to keyboards/primekb/meridian_rgb/meridian_rgb.h diff --git a/keyboards/handwired/obro/readme.md b/keyboards/primekb/meridian_rgb/readme.md similarity index 84% rename from keyboards/handwired/obro/readme.md rename to keyboards/primekb/meridian_rgb/readme.md index 7be928050d..d07752ae3d 100644 --- a/keyboards/handwired/obro/readme.md +++ b/keyboards/primekb/meridian_rgb/readme.md @@ -6,17 +6,17 @@ Make example for this keyboard (after setting up your build environment): - make handwired/obro:default + make primekb/meridian_rgb:default Flashing example for this keyboard: - make handwired/obro:default:flash + make primekb/meridian_rgb:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). # Bootloader Enter the bootloader in 3 ways: -* Bootmagic reset: HOld down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* Bootmagic reset: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard * Physical reset button: Briefly press the button on the back of the PCB * Keycode in layout: Press the key mapped to RESET if it is available diff --git a/keyboards/handwired/obro/rules.mk b/keyboards/primekb/meridian_rgb/rules.mk similarity index 100% rename from keyboards/handwired/obro/rules.mk rename to keyboards/primekb/meridian_rgb/rules.mk From b9e11253c4d0646176e6455390c917a784ea33c9 Mon Sep 17 00:00:00 2001 From: Tim Liu <74063834+Timliuzhaolu@users.noreply.github.com> Date: Fri, 15 Apr 2022 01:01:26 +0800 Subject: [PATCH 254/699] [Keyboard] Add via support for creatkeebs/glacier (#16747) Co-authored-by: Joel Challis --- keyboards/creatkeebs/glacier/config.h | 2 +- .../creatkeebs/glacier/keymaps/via/keymap.c | 56 +++++++++++++++++++ .../creatkeebs/glacier/keymaps/via/rules.mk | 1 + keyboards/creatkeebs/thera/config.h | 4 +- 4 files changed, 60 insertions(+), 3 deletions(-) create mode 100644 keyboards/creatkeebs/glacier/keymaps/via/keymap.c create mode 100644 keyboards/creatkeebs/glacier/keymaps/via/rules.mk diff --git a/keyboards/creatkeebs/glacier/config.h b/keyboards/creatkeebs/glacier/config.h index 0509365a0d..1cfb2b6a8d 100644 --- a/keyboards/creatkeebs/glacier/config.h +++ b/keyboards/creatkeebs/glacier/config.h @@ -19,7 +19,7 @@ #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x0410 #define PRODUCT_ID 0x6060 #define DEVICE_VER 0x0001 #define MANUFACTURER creatkeebs diff --git a/keyboards/creatkeebs/glacier/keymaps/via/keymap.c b/keyboards/creatkeebs/glacier/keymaps/via/keymap.c new file mode 100644 index 0000000000..cf0fa0f835 --- /dev/null +++ b/keyboards/creatkeebs/glacier/keymaps/via/keymap.c @@ -0,0 +1,56 @@ + /* Copyright 2022 Tim + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_tkl_f13_ansi_tsangan( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + + [1] = LAYOUT_tkl_f13_ansi_tsangan( + 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, 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, RESET, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_tkl_f13_ansi_tsangan( + 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, 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, RESET, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_tkl_f13_ansi_tsangan( + 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, 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, RESET, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; diff --git a/keyboards/creatkeebs/glacier/keymaps/via/rules.mk b/keyboards/creatkeebs/glacier/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/creatkeebs/glacier/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/creatkeebs/thera/config.h b/keyboards/creatkeebs/thera/config.h index e9ba1ca131..0e673dd9d3 100644 --- a/keyboards/creatkeebs/thera/config.h +++ b/keyboards/creatkeebs/thera/config.h @@ -19,8 +19,8 @@ #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 +#define VENDOR_ID 0x0410 +#define PRODUCT_ID 0x6061 #define DEVICE_VER 0x0001 #define MANUFACTURER creatkeebs #define PRODUCT thera From 8de4065b099a99bcffe436a038616b0c31ade7c3 Mon Sep 17 00:00:00 2001 From: Will Winder Date: Thu, 14 Apr 2022 14:23:32 -0400 Subject: [PATCH 255/699] [Keyboard] Add avalanche (#16407) * [Keyboard] Add avalanche * PR feedback * Update keyboards/avalanche/v1/config.h * Update keyboards/avalanche/v1/v1.h * Update keyboards/avalanche/v2/config.h * Update keyboards/avalanche/v2/v2.h * Update keyboards/avalanche/v3/config.h * Update keyboards/avalanche/v3/v3.h * Apply suggestions from code review * Remove rules.mk comment and fix other comments. * Shared encoder code, follow conventions in rules.mk files. * Remove config files which do not change defaul behavior. --- keyboards/avalanche/avalanche.c | 25 +++++++++ keyboards/avalanche/avalanche.h | 14 +++++ keyboards/avalanche/config.h | 6 ++ keyboards/avalanche/readme.md | 27 +++++++++ keyboards/avalanche/v1/config.h | 22 ++++++++ .../avalanche/v1/keymaps/default/keymap.c | 48 ++++++++++++++++ keyboards/avalanche/v1/rules.mk | 20 +++++++ keyboards/avalanche/v1/v1.c | 4 ++ keyboards/avalanche/v1/v1.h | 31 ++++++++++ keyboards/avalanche/v2/config.h | 30 ++++++++++ .../avalanche/v2/keymaps/default/keymap.c | 56 +++++++++++++++++++ keyboards/avalanche/v2/rules.mk | 21 +++++++ keyboards/avalanche/v2/v2.c | 4 ++ keyboards/avalanche/v2/v2.h | 31 ++++++++++ keyboards/avalanche/v3/config.h | 30 ++++++++++ .../avalanche/v3/keymaps/default/keymap.c | 48 ++++++++++++++++ keyboards/avalanche/v3/rules.mk | 21 +++++++ keyboards/avalanche/v3/v3.c | 4 ++ keyboards/avalanche/v3/v3.h | 31 ++++++++++ 19 files changed, 473 insertions(+) create mode 100644 keyboards/avalanche/avalanche.c create mode 100644 keyboards/avalanche/avalanche.h create mode 100644 keyboards/avalanche/config.h create mode 100644 keyboards/avalanche/readme.md create mode 100644 keyboards/avalanche/v1/config.h create mode 100644 keyboards/avalanche/v1/keymaps/default/keymap.c create mode 100644 keyboards/avalanche/v1/rules.mk create mode 100644 keyboards/avalanche/v1/v1.c create mode 100644 keyboards/avalanche/v1/v1.h create mode 100644 keyboards/avalanche/v2/config.h create mode 100644 keyboards/avalanche/v2/keymaps/default/keymap.c create mode 100644 keyboards/avalanche/v2/rules.mk create mode 100644 keyboards/avalanche/v2/v2.c create mode 100644 keyboards/avalanche/v2/v2.h create mode 100644 keyboards/avalanche/v3/config.h create mode 100644 keyboards/avalanche/v3/keymaps/default/keymap.c create mode 100644 keyboards/avalanche/v3/rules.mk create mode 100644 keyboards/avalanche/v3/v3.c create mode 100644 keyboards/avalanche/v3/v3.h diff --git a/keyboards/avalanche/avalanche.c b/keyboards/avalanche/avalanche.c new file mode 100644 index 0000000000..08d95043b2 --- /dev/null +++ b/keyboards/avalanche/avalanche.c @@ -0,0 +1,25 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "avalanche.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } else if (index == 1) { /* Second encoder */ + if (clockwise) { + tap_code(KC_PGUP); + } else { + tap_code(KC_PGDOWN); + } + } + return true; +} +#endif + diff --git a/keyboards/avalanche/avalanche.h b/keyboards/avalanche/avalanche.h new file mode 100644 index 0000000000..c3f431f315 --- /dev/null +++ b/keyboards/avalanche/avalanche.h @@ -0,0 +1,14 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#ifdef KEYBOARD_avalanche_v1 + #include "v1.h" +#elif KEYBOARD_avalanche_v2 + #include "v2.h" +#elif KEYBOARD_avalanche_v3 + #include "v3.h" +#endif + +#include "quantum.h" diff --git a/keyboards/avalanche/config.h b/keyboards/avalanche/config.h new file mode 100644 index 0000000000..eb9c37d38a --- /dev/null +++ b/keyboards/avalanche/config.h @@ -0,0 +1,6 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" diff --git a/keyboards/avalanche/readme.md b/keyboards/avalanche/readme.md new file mode 100644 index 0000000000..d0b07a9c40 --- /dev/null +++ b/keyboards/avalanche/readme.md @@ -0,0 +1,27 @@ +# Avalanche + +![Avalanche v3.0](https://github.com/vlkv/avalanche/blob/master/images/avalanche_v3-0.jpg) + +An open source ergonomic split keyboard with removable keys to support 40% and 60% configurations. + +* Keyboard Maintainer: [Vitaly Volkov](https://github.com/vlkv) +* Hardware Supported: Avalanche PCB v1, v2, v3, Pro Micro 5V/16MHz and compatible. +* Hardware Availability: [Avalanche](https://github.com/vlkv/avalanche). + +Make example for this keyboard (after setting up your build environment): + + make avalanche/v1:default # for v1 PCBs + make avalanche/v2:default # for v2 PCBs + make avalanche/v3:default # for v3 PCBs + +Flashing example for this keyboard: + + make avalanche/v1:default:flash # for v1 PCBs + make avalanche/v2:default:flash # for v2 PCBs + make avalanche/v3:default:flash # for v3 PCBs + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Briefly press the button along the inner edge of the PCB next to the microcontroller. diff --git a/keyboards/avalanche/v1/config.h b/keyboards/avalanche/v1/config.h new file mode 100644 index 0000000000..32533c5cc9 --- /dev/null +++ b/keyboards/avalanche/v1/config.h @@ -0,0 +1,22 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define VENDOR_ID 0xCEE2 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER vitvlkv +#define PRODUCT Avalanche + +#define MATRIX_ROWS 10 +#define MATRIX_COLS 8 + +#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 } +#define MATRIX_COL_PINS { F4, F5, F6, F7, B1, B3, B2, B6 } + +#define DIODE_DIRECTION COL2ROW + +#define SOFT_SERIAL_PIN D2 + +#define BACKLIGHT_PIN B0 diff --git a/keyboards/avalanche/v1/keymaps/default/keymap.c b/keyboards/avalanche/v1/keymaps/default/keymap.c new file mode 100644 index 0000000000..31dd0e7dab --- /dev/null +++ b/keyboards/avalanche/v1/keymaps/default/keymap.c @@ -0,0 +1,48 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +/* +qmk compile -kb avalanche/v1 -km default +qmk flash -kb avalanche/v1 -km default +*/ + +#include QMK_KEYBOARD_H + +enum layer { + LAYER_0, + LAYER_1, + LAYER_2, +}; + +#define FN_1 MO(LAYER_1) +#define FN_2 LT(LAYER_2, KC_SPC) +#define LFN_3 LSFT_T(KC_EQL) +#define RFN_3 RSFT_T(KC_MINS) +#define KC_QTSH RSFT_T(KC_QUOT) +#define EN_LALT LALT_T(KC_ENT) +#define EN_RALT RALT_T(KC_ENT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [LAYER_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_BSLS, + 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_LGUI, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_CAPS, KC_LSCR, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QTSH, KC_RBRC, + KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_BSPC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL, + KC_GRV, LFN_3, FN_2, EN_LALT, EN_RALT, FN_1, RFN_3, KC_INS + ), + [LAYER_1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, KC_PGUP, KC_PSCR, _______, + _______, _______, KC_APP, XXXXXXX, KC_HOME, KC_END, KC_DEL, _______, _______, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, _______, KC_F12, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PAUS, _______, _______, KC_HOME, KC_END, XXXXXXX, KC_PGDN, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [LAYER_2] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, KC_BSPC, KC_1, KC_2, KC_3, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, KC_PGUP, XXXXXXX, XXXXXXX, + _______, _______, KC_BSPC, KC_4, KC_5, KC_6, KC_DEL, _______, _______, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, _______, KC_F12, + _______, KC_BSPC, KC_7, KC_8, KC_9, KC_0, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGDN, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; + diff --git a/keyboards/avalanche/v1/rules.mk b/keyboards/avalanche/v1/rules.mk new file mode 100644 index 0000000000..9bb578594b --- /dev/null +++ b/keyboards/avalanche/v1/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +SPLIT_KEYBOARD = yes diff --git a/keyboards/avalanche/v1/v1.c b/keyboards/avalanche/v1/v1.c new file mode 100644 index 0000000000..1a0cff2e51 --- /dev/null +++ b/keyboards/avalanche/v1/v1.c @@ -0,0 +1,4 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "avalanche.h" diff --git a/keyboards/avalanche/v1/v1.h b/keyboards/avalanche/v1/v1.h new file mode 100644 index 0000000000..a8f55c7536 --- /dev/null +++ b/keyboards/avalanche/v1/v1.h @@ -0,0 +1,31 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "avalanche.h" + +#include "quantum.h" + +#define L__ KC_NO +#define R__ KC_NO + +#define LAYOUT( \ + L01, L02, L03, L04, L05, L06, R06, R05, R04, R03, R02, R01, \ + L11, L12, L13, L14, L15, L16, R16, R15, R14, R13, R12, R11, \ + L20, L21, L22, L23, L24, L25, L26, L27, R27, R26, R25, R24, R23, R22, R21, R20, \ + L31, L32, L33, L34, L35, L36, L37, R37, R36, R35, R34, R33, R32, R31, \ + L44, L45, L46, L47, R47, R46, R45, R44 \ +) \ +{ \ + { L__, L01, L02, L03, L04, L05, L06, L__}, \ + { L__, L11, L12, L13, L14, L15, L16, L__}, \ + { L20, L21, L22, L23, L24, L25, L26, L27}, \ + { L__, L31, L32, L33, L34, L35, L36, L37}, \ + { L__, L__, L__, L__, L44, L45, L46, L47}, \ + { R__, R01, R02, R03, R04, R05, R06, R__}, \ + { R__, R11, R12, R13, R14, R15, R16, R__}, \ + { R20, R21, R22, R23, R24, R25, R26, R27}, \ + { R__, R31, R32, R33, R34, R35, R36, R37}, \ + { R__, R__, R__, R__, R44, R45, R46, R47} \ +} diff --git a/keyboards/avalanche/v2/config.h b/keyboards/avalanche/v2/config.h new file mode 100644 index 0000000000..55cbd30b1c --- /dev/null +++ b/keyboards/avalanche/v2/config.h @@ -0,0 +1,30 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define VENDOR_ID 0xCEE2 +#define PRODUCT_ID 0x0002 +#define DEVICE_VER 0x0002 +#define MANUFACTURER vitvlkv +#define PRODUCT Avalanche + +#define MATRIX_ROWS 10 +#define MATRIX_COLS 7 + +#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6 } + +#define DIODE_DIRECTION COL2ROW + +#define SOFT_SERIAL_PIN D2 + +#define RGB_DI_PIN D3 + +#define RGBLED_NUM 12 +#define RGBLED_SPLIT { 6, 6 } +#define RGBLIGHT_SPLIT + +#define ENCODERS_PAD_A { B5 } +#define ENCODERS_PAD_B { F4 } +#define ENCODER_RESOLUTION 2 diff --git a/keyboards/avalanche/v2/keymaps/default/keymap.c b/keyboards/avalanche/v2/keymaps/default/keymap.c new file mode 100644 index 0000000000..fc27401c25 --- /dev/null +++ b/keyboards/avalanche/v2/keymaps/default/keymap.c @@ -0,0 +1,56 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +/* +qmk compile -kb avalanche/v2 -km default +qmk flash -kb avalanche/v2 -km default +*/ + +#include QMK_KEYBOARD_H + +enum layer { + LAYER_0, + LAYER_1, + LAYER_2, + LAYER_3, +}; + +#define FN_1 MO(LAYER_1) +#define FN_2 LT(LAYER_2, KC_SPC) +#define FN_3 LT(LAYER_3, KC_INS) +#define LFN_3 LSFT_T(KC_EQL) +#define RFN_3 RSFT_T(KC_MINS) +#define EN_LALT LALT_T(KC_ENT) +#define EN_RALT RALT_T(KC_ENT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [LAYER_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_BSLS, + 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_LGUI, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, XXXXXXX, XXXXXXX, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_RBRC, + KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_BSPC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL, + KC__MUTE,KC_GRV, LFN_3, FN_2, EN_LALT, EN_RALT, FN_1, RFN_3, FN_3, KC_LSCR + ), + [LAYER_1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, + _______, KC_0, KC_1, KC_2, KC_3, XXXXXXX, XXXXXXX, KC_HOME, KC_UP, KC_END, KC_PGUP, XXXXXXX, + _______, _______, KC_APP, KC_4, KC_5, KC_6, KC_DEL, _______, _______, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, KC_F12, + _______, KC_PSCR, KC_7, KC_8, KC_9, KC_0, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [LAYER_2] = LAYOUT( + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_PGUP, KC_HOME, KC_UP, KC_END, XXXXXXX, XXXXXXX, KC_EXLM, KC_AT, KC_HASH, XXXXXXX, KC_LPRN, + _______, _______, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, _______, _______, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, XXXXXXX, XXXXXXX, KC_RPRN, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [LAYER_3] = LAYOUT( + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; + diff --git a/keyboards/avalanche/v2/rules.mk b/keyboards/avalanche/v2/rules.mk new file mode 100644 index 0000000000..3b645daf9b --- /dev/null +++ b/keyboards/avalanche/v2/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes + +SPLIT_KEYBOARD = yes diff --git a/keyboards/avalanche/v2/v2.c b/keyboards/avalanche/v2/v2.c new file mode 100644 index 0000000000..1a0cff2e51 --- /dev/null +++ b/keyboards/avalanche/v2/v2.c @@ -0,0 +1,4 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "avalanche.h" diff --git a/keyboards/avalanche/v2/v2.h b/keyboards/avalanche/v2/v2.h new file mode 100644 index 0000000000..6832becdf7 --- /dev/null +++ b/keyboards/avalanche/v2/v2.h @@ -0,0 +1,31 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "avalanche.h" + +#include "quantum.h" + +#define L__ KC_NO +#define R__ KC_NO + +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \ + L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \ + L40, L20, L21, L22, L23, L24, L25, L26, R26, R25, R24, R23, R22, R21, R20, R40, \ + L30, L31, L32, L33, L34, L35, L36, R36, R35, R34, R33, R32, R31, R30, \ + L42, L43, L44, L45, L46, R46, R45, R44, R43, R42 \ +) \ +{ \ + { L00, L01, L02, L03, L04, L05, L__}, \ + { L10, L11, L12, L13, L14, L15, L__}, \ + { L20, L21, L22, L23, L24, L25, L26}, \ + { L30, L31, L32, L33, L34, L35, L36}, \ + { L40, L__, L42, L43, L44, L45, L46}, \ + { R00, R01, R02, R03, R04, R05, R__}, \ + { R10, R11, R12, R13, R14, R15, R__}, \ + { R20, R21, R22, R23, R24, R25, R26}, \ + { R30, R31, R32, R33, R34, R35, R36}, \ + { R40, R__, R42, R43, R44, R45, R46} \ +} diff --git a/keyboards/avalanche/v3/config.h b/keyboards/avalanche/v3/config.h new file mode 100644 index 0000000000..3dc537170d --- /dev/null +++ b/keyboards/avalanche/v3/config.h @@ -0,0 +1,30 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define VENDOR_ID 0xCEE2 +#define PRODUCT_ID 0x0003 +#define DEVICE_VER 0x0003 +#define MANUFACTURER vitvlkv +#define PRODUCT Avalanche + +#define MATRIX_ROWS 10 +#define MATRIX_COLS 7 + +#define MATRIX_ROW_PINS { D4, C6, D7, E6, B4 } +#define MATRIX_COL_PINS { F5, F6, F7, B1, B3, B2, B6 } + +#define DIODE_DIRECTION COL2ROW + +#define SOFT_SERIAL_PIN D2 + +#define RGB_DI_PIN D3 + +#define RGBLED_NUM 12 +#define RGBLED_SPLIT { 7, 7 } +#define RGBLIGHT_SPLIT + +#define ENCODERS_PAD_A { B5 } +#define ENCODERS_PAD_B { F4 } +#define ENCODER_RESOLUTION 2 diff --git a/keyboards/avalanche/v3/keymaps/default/keymap.c b/keyboards/avalanche/v3/keymaps/default/keymap.c new file mode 100644 index 0000000000..be82b74c09 --- /dev/null +++ b/keyboards/avalanche/v3/keymaps/default/keymap.c @@ -0,0 +1,48 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +/* +qmk compile -kb avalanche/v3 -km default +qmk flash -kb avalanche/v3 -km default +*/ + +#include QMK_KEYBOARD_H + +enum layer { + LAYER_0, + LAYER_1, + LAYER_2, +}; + +#define FN_1 MO(LAYER_1) +#define LFN_2 LT(LAYER_2, KC_GRV) +#define RFN_2 MO(LAYER_2) +#define LFN_3 LSFT_T(KC_EQL) +#define RFN_3 RSFT_T(KC_MINS) +#define EN_LALT LALT_T(KC_ENT) +#define EN_RALT RALT_T(KC_ENT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [LAYER_0] = LAYOUT( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_BSLS, + 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_CAPS, KC_LSFT, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_RBRC, + KC_LCTL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_LGUI, KC_INS, KC_BSPC, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RCTL, + KC__MUTE,LFN_2, LFN_3, KC_SPC, EN_LALT, EN_RALT, FN_1, RFN_3, RFN_2, KC_PSCR + ), + [LAYER_1] = LAYOUT( + _______, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSPC, KC_DEL, KC_HOME, KC_UP, KC_END, KC_PGUP, XXXXXXX, + _______, _______, KC_APP, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, KC_BSPC, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, KC_F12, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, XXXXXXX, KC_PGUP, KC_PGDN, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [LAYER_2] = LAYOUT( + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, KC_0, KC_1, KC_2, KC_3, KC_BSPC, KC_DEL, KC_EXLM, KC_AT, KC_HASH, XXXXXXX, KC_LPRN, + _______, _______, KC_0, KC_4, KC_5, KC_6, KC_DEL, KC_BSPC, KC_DLR, KC_PERC, KC_CIRC, XXXXXXX, XXXXXXX, KC_RPRN, + _______, KC_0, KC_7, KC_8, KC_9, KC_DOT, _______, _______, _______, _______, XXXXXXX, KC_AMPR, KC_ASTR, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; + diff --git a/keyboards/avalanche/v3/rules.mk b/keyboards/avalanche/v3/rules.mk new file mode 100644 index 0000000000..fbf76c7ae5 --- /dev/null +++ b/keyboards/avalanche/v3/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes + +SPLIT_KEYBOARD = yes diff --git a/keyboards/avalanche/v3/v3.c b/keyboards/avalanche/v3/v3.c new file mode 100644 index 0000000000..1a0cff2e51 --- /dev/null +++ b/keyboards/avalanche/v3/v3.c @@ -0,0 +1,4 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "avalanche.h" diff --git a/keyboards/avalanche/v3/v3.h b/keyboards/avalanche/v3/v3.h new file mode 100644 index 0000000000..fde80607b2 --- /dev/null +++ b/keyboards/avalanche/v3/v3.h @@ -0,0 +1,31 @@ +// Copyright 2022 Vitaly Volkov (@vlkv) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "avalanche.h" + +#include "quantum.h" + +#define L__ KC_NO +#define R__ KC_NO + +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, R05, R04, R03, R02, R01, R00, \ + L10, L11, L12, L13, L14, L15, R15, R14, R13, R12, R11, R10, \ + L40, L20, L21, L22, L23, L24, L25, R25, R24, R23, R22, R21, R20, R40, \ + L30, L31, L32, L33, L34, L35, L36, L26, R26, R36, R35, R34, R33, R32, R31, R30, \ + L42, L43, L44, L45, L46, R46, R45, R44, R43, R42 \ +) \ +{ \ + { L00, L01, L02, L03, L04, L05, L__}, \ + { L10, L11, L12, L13, L14, L15, L__}, \ + { L20, L21, L22, L23, L24, L25, L26}, \ + { L30, L31, L32, L33, L34, L35, L36}, \ + { L40, L__, L42, L43, L44, L45, L46}, \ + { R00, R01, R02, R03, R04, R05, R__}, \ + { R10, R11, R12, R13, R14, R15, R__}, \ + { R20, R21, R22, R23, R24, R25, R26}, \ + { R30, R31, R32, R33, R34, R35, R36}, \ + { R40, R__, R42, R43, R44, R45, R46} \ +} From b331c98ca483d04e31bbf2197686ebf4fee7c196 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 16 Apr 2022 02:23:19 +0100 Subject: [PATCH 256/699] Resolve layout macro inconsistencies for rmkeebs/rm_numpad (#16856) --- keyboards/rmkeebs/rm_numpad/info.json | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/rmkeebs/rm_numpad/info.json b/keyboards/rmkeebs/rm_numpad/info.json index f91c1ec6af..0f60a8ec06 100644 --- a/keyboards/rmkeebs/rm_numpad/info.json +++ b/keyboards/rmkeebs/rm_numpad/info.json @@ -3,7 +3,7 @@ "url": "https://www.rmkeebs.com/product/rm-numpad/", "maintainer": "RuckerMachine", "layouts": { - "LAYOUT_default": { + "LAYOUT_numpad_6x4": { "layout": [ {"label": "Pause", "x": 0, "y": 0.25}, {"label": "Prev", "x": 1, "y": 0.25}, @@ -33,7 +33,7 @@ {"label": ".", "x": 2, "y": 5.25} ] }, - "LAYOUT_split_plus": { + "LAYOUT_split_plus_6x4": { "layout": [ {"label": "Pause", "x": 0, "y": 0.25}, {"label": "Prev", "x": 1, "y": 0.25}, @@ -64,7 +64,7 @@ {"label": ".", "x": 2, "y": 5.25} ] }, - "LAYOUT_ortho": { + "LAYOUT_ortho_6x4": { "layout": [ {"label": "Pause", "x": 0, "y": 0.25}, {"label": "Prev", "x": 1, "y": 0.25}, From 1cfe49714f2f108c20ccee96d23e7e1005a2e68e Mon Sep 17 00:00:00 2001 From: Simon Arlott <70171+nomis@users.noreply.github.com> Date: Sat, 16 Apr 2022 18:40:48 +0100 Subject: [PATCH 257/699] rgblight: Limit max repeat times in rgblight_blink_layer_repeat (#16860) --- quantum/rgblight/rgblight.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index 8f933a6e51..f4ddb81e92 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -813,6 +813,10 @@ void rgblight_blink_layer(uint8_t layer, uint16_t duration_ms) { } void rgblight_blink_layer_repeat(uint8_t layer, uint16_t duration_ms, uint8_t times) { + if (times > UINT8_MAX / 2) { + times = UINT8_MAX / 2; + } + _times_remaining = times * 2; _dur = duration_ms; From 92a61aa0cd9a28056e6979f01a72b8742702dbfe Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sat, 16 Apr 2022 19:13:05 +0100 Subject: [PATCH 258/699] Implement XAP 'secure' core requirements (#16843) Co-authored-by: Drashna Jaelre Co-authored-by: Stefan Kerkmann --- builddefs/generic_features.mk | 1 + builddefs/show_options.mk | 3 +- data/mappings/info_config.json | 3 + data/mappings/info_rules.json | 1 + data/schemas/keyboard.jsonschema | 24 +++++++ lib/python/qmk/cli/generate/config_h.py | 7 +- lib/python/qmk/info.py | 56 ++++++++++++--- quantum/keyboard.c | 4 ++ quantum/process_keycode/process_secure.c | 39 +++++++++++ quantum/process_keycode/process_secure.h | 15 ++++ quantum/quantum.c | 9 +++ quantum/quantum.h | 5 ++ quantum/quantum_keycodes.h | 4 ++ quantum/secure.c | 87 ++++++++++++++++++++++++ quantum/secure.h | 67 ++++++++++++++++++ 15 files changed, 312 insertions(+), 13 deletions(-) create mode 100644 quantum/process_keycode/process_secure.c create mode 100644 quantum/process_keycode/process_secure.h create mode 100644 quantum/secure.c create mode 100644 quantum/secure.h diff --git a/builddefs/generic_features.mk b/builddefs/generic_features.mk index 53d4e16fd4..0475a2ff09 100644 --- a/builddefs/generic_features.mk +++ b/builddefs/generic_features.mk @@ -32,6 +32,7 @@ GENERIC_FEATURES = \ KEY_OVERRIDE \ LEADER \ PROGRAMMABLE_BUTTON \ + SECURE \ SPACE_CADET \ SWAP_HANDS \ TAP_DANCE \ diff --git a/builddefs/show_options.mk b/builddefs/show_options.mk index b30399a56c..16b69ef0ea 100644 --- a/builddefs/show_options.mk +++ b/builddefs/show_options.mk @@ -80,7 +80,8 @@ OTHER_OPTION_NAMES = \ LED_MIRRORED \ RGBLIGHT_FULL_POWER \ LTO_ENABLE \ - PROGRAMMABLE_BUTTON_ENABLE + PROGRAMMABLE_BUTTON_ENABLE \ + SECURE_ENABLE define NAME_ECHO @printf " %-30s = %-16s # %s\\n" "$1" "$($1)" "$(origin $1)" diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json index 2121741d19..02ad3226c2 100644 --- a/data/mappings/info_config.json +++ b/data/mappings/info_config.json @@ -78,6 +78,9 @@ "QMK_KEYS_PER_SCAN": {"info_key": "qmk.keys_per_scan", "value_type": "int"}, "QMK_LED": {"info_key": "qmk_lufa_bootloader.led"}, "QMK_SPEAKER": {"info_key": "qmk_lufa_bootloader.speaker"}, + "SECURE_UNLOCK_SEQUENCE": {"info_key": "secure.unlock_sequence", "value_type": "array.array.int", "to_json": false}, + "SECURE_UNLOCK_TIMEOUT": {"info_key": "secure.unlock_timeout", "value_type": "int"}, + "SECURE_IDLE_TIMEOUT": {"info_key": "secure.idle_timeout", "value_type": "int"}, "SENDSTRING_BELL": {"info_key": "audio.macro_beep", "value_type": "bool"}, "SPLIT_MODS_ENABLE": {"info_key": "split.transport.sync_modifiers", "value_type": "bool"}, "SPLIT_TRANSPORT_MIRROR": {"info_key": "split.transport.sync_matrix_state", "value_type": "bool"}, diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json index 237e9f1024..4b0fde5629 100644 --- a/data/mappings/info_rules.json +++ b/data/mappings/info_rules.json @@ -20,6 +20,7 @@ "MOUSEKEY_ENABLE": {"info_key": "mouse_key.enabled", "value_type": "bool"}, "NO_USB_STARTUP_CHECK": {"info_key": "usb.no_startup_check", "value_type": "bool"}, "PIN_COMPATIBLE": {"info_key": "pin_compatible"}, + "SECURE_ENABLE": {"info_key": "secure.enabled", "value_type": "bool"}, "SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"}, "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false}, "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"} diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 68a02420a4..6b1e543e48 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -244,6 +244,30 @@ } } }, + "secure": { + "type": "object", + "additionalProperties": false, + "properties": { + "enabled": {"type": "boolean"}, + "unlock_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "unlock_sequence": { + "type": "array", + "minLength": 1, + "maxLength": 5, + "items": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "number", + "min": 0, + "multipleOf": 1 + } + } + } + } + }, "split": { "type": "object", "additionalProperties": false, diff --git a/lib/python/qmk/cli/generate/config_h.py b/lib/python/qmk/cli/generate/config_h.py index 20c9595ed7..893892c479 100755 --- a/lib/python/qmk/cli/generate/config_h.py +++ b/lib/python/qmk/cli/generate/config_h.py @@ -94,7 +94,12 @@ def generate_config_items(kb_info_json, config_h_lines): except KeyError: continue - if key_type.startswith('array'): + if key_type.startswith('array.array'): + config_h_lines.append('') + config_h_lines.append(f'#ifndef {config_key}') + config_h_lines.append(f'# define {config_key} {{ {", ".join(["{" + ",".join(list(map(str, x))) + "}" for x in config_value])} }}') + config_h_lines.append(f'#endif // {config_key}') + elif key_type.startswith('array'): config_h_lines.append('') config_h_lines.append(f'#ifndef {config_key}') config_h_lines.append(f'# define {config_key} {{ {", ".join(map(str, config_value))} }}') diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index c5a7d33848..49d1054519 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -168,28 +168,46 @@ def _extract_pins(pins): return [_pin_name(pin) for pin in pins.split(',')] -def _extract_direct_matrix(direct_pins): +def _extract_2d_array(raw): + """Return a 2d array of strings """ - """ - direct_pin_array = [] + out_array = [] - while direct_pins[-1] != '}': - direct_pins = direct_pins[:-1] + while raw[-1] != '}': + raw = raw[:-1] - for row in direct_pins.split('},{'): + for row in raw.split('},{'): if row.startswith('{'): row = row[1:] if row.endswith('}'): row = row[:-1] - direct_pin_array.append([]) + out_array.append([]) - for pin in row.split(','): - if pin == 'NO_PIN': - pin = None + for val in row.split(','): + out_array[-1].append(val) - direct_pin_array[-1].append(pin) + return out_array + + +def _extract_2d_int_array(raw): + """Return a 2d array of ints + """ + ret = _extract_2d_array(raw) + + return [list(map(int, x)) for x in ret] + + +def _extract_direct_matrix(direct_pins): + """extract direct_matrix + """ + direct_pin_array = _extract_2d_array(direct_pins) + + for i in range(len(direct_pin_array)): + for j in range(len(direct_pin_array[i])): + if direct_pin_array[i][j] == 'NO_PIN': + direct_pin_array[i][j] = None return direct_pin_array @@ -207,6 +225,21 @@ def _extract_audio(info_data, config_c): info_data['audio'] = {'pins': audio_pins} +def _extract_secure_unlock(info_data, config_c): + """Populate data about the secure unlock sequence + """ + unlock = config_c.get('SECURE_UNLOCK_SEQUENCE', '').replace(' ', '')[1:-1] + if unlock: + unlock_array = _extract_2d_int_array(unlock) + if 'secure' not in info_data: + info_data['secure'] = {} + + if 'unlock_sequence' in info_data['secure']: + _log_warning(info_data, 'Secure unlock sequence is specified in both config.h (SECURE_UNLOCK_SEQUENCE) and info.json (secure.unlock_sequence) (Value: %s), the config.h value wins.' % info_data['secure']['unlock_sequence']) + + info_data['secure']['unlock_sequence'] = unlock_array + + def _extract_split_main(info_data, config_c): """Populate data about the split configuration """ @@ -466,6 +499,7 @@ def _extract_config_h(info_data, config_c): # Pull data that easily can't be mapped in json _extract_matrix_info(info_data, config_c) _extract_audio(info_data, config_c) + _extract_secure_unlock(info_data, config_c) _extract_split_main(info_data, config_c) _extract_split_transport(info_data, config_c) _extract_split_right_pins(info_data, config_c) diff --git a/quantum/keyboard.c b/quantum/keyboard.c index fc8a2fe8e3..63236f0b20 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -562,6 +562,10 @@ void quantum_task(void) { #ifdef AUTO_SHIFT_ENABLE autoshift_matrix_scan(); #endif + +#ifdef SECURE_ENABLE + secure_task(); +#endif } /** \brief Keyboard task: Do keyboard routine jobs diff --git a/quantum/process_keycode/process_secure.c b/quantum/process_keycode/process_secure.c new file mode 100644 index 0000000000..827ace597a --- /dev/null +++ b/quantum/process_keycode/process_secure.c @@ -0,0 +1,39 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "secure.h" +#include "process_secure.h" +#include "quantum_keycodes.h" + +bool preprocess_secure(uint16_t keycode, keyrecord_t *record) { + if (secure_is_unlocking()) { + if (!record->event.pressed) { + secure_keypress_event(record->event.key.row, record->event.key.col); + } + + // Normal keypresses should be disabled until the sequence is completed + return false; + } + + return true; +} + +bool process_secure(uint16_t keycode, keyrecord_t *record) { +#ifndef SECURE_DISABLE_KEYCODES + if (!record->event.pressed) { + if (keycode == SECURE_LOCK) { + secure_lock(); + return false; + } + if (keycode == SECURE_UNLOCK) { + secure_unlock(); + return false; + } + if (keycode == SECURE_TOGGLE) { + secure_is_locked() ? secure_unlock() : secure_lock(); + return false; + } + } +#endif + return true; +} \ No newline at end of file diff --git a/quantum/process_keycode/process_secure.h b/quantum/process_keycode/process_secure.h new file mode 100644 index 0000000000..2814264b92 --- /dev/null +++ b/quantum/process_keycode/process_secure.h @@ -0,0 +1,15 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include +#include "action.h" + +/** \brief Intercept keycodes and detect unlock sequences + */ +bool preprocess_secure(uint16_t keycode, keyrecord_t *record); + +/** \brief Handle any secure specific keycodes + */ +bool process_secure(uint16_t keycode, keyrecord_t *record); diff --git a/quantum/quantum.c b/quantum/quantum.c index d4e91ddd37..673ea91b11 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -212,6 +212,12 @@ bool process_record_quantum(keyrecord_t *record) { // return false; // } +#if defined(SECURE_ENABLE) + if (!preprocess_secure(keycode, record)) { + return false; + } +#endif + #ifdef VELOCIKEY_ENABLE if (velocikey_enabled() && record->event.pressed) { velocikey_accelerate(); @@ -247,6 +253,9 @@ bool process_record_quantum(keyrecord_t *record) { process_record_via(keycode, record) && #endif process_record_kb(keycode, record) && +#if defined(SECURE_ENABLE) + process_secure(keycode, record) && +#endif #if defined(SEQUENCER_ENABLE) process_sequencer(keycode, record) && #endif diff --git a/quantum/quantum.h b/quantum/quantum.h index 9ce3c1f5d6..d021e7c05c 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -200,6 +200,11 @@ extern layer_state_t layer_state; # include "process_dynamic_macro.h" #endif +#ifdef SECURE_ENABLE +# include "secure.h" +# include "process_secure.h" +#endif + #ifdef DYNAMIC_KEYMAP_ENABLE # include "dynamic_keymap.h" #endif diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index dacfe5bdcd..c7b4ea593f 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -597,6 +597,10 @@ enum quantum_keycodes { QK_MAKE, + SECURE_LOCK, + SECURE_UNLOCK, + SECURE_TOGGLE, + // Start of custom keycode range for keyboards and keymaps - always leave at the end SAFE_RANGE }; diff --git a/quantum/secure.c b/quantum/secure.c new file mode 100644 index 0000000000..00048bd6dd --- /dev/null +++ b/quantum/secure.c @@ -0,0 +1,87 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "secure.h" +#include "timer.h" + +#ifndef SECURE_UNLOCK_TIMEOUT +# define SECURE_UNLOCK_TIMEOUT 5000 +#endif + +#ifndef SECURE_IDLE_TIMEOUT +# define SECURE_IDLE_TIMEOUT 60000 +#endif + +#ifndef SECURE_UNLOCK_SEQUENCE +# define SECURE_UNLOCK_SEQUENCE \ + { \ + { 0, 0 } \ + } +#endif + +static secure_status_t secure_status = SECURE_LOCKED; +static uint32_t unlock_time = 0; +static uint32_t idle_time = 0; + +secure_status_t secure_get_status(void) { + return secure_status; +} + +void secure_lock(void) { + secure_status = SECURE_LOCKED; +} + +void secure_unlock(void) { + secure_status = SECURE_UNLOCKED; + idle_time = timer_read32(); +} + +void secure_request_unlock(void) { + if (secure_status == SECURE_LOCKED) { + secure_status = SECURE_PENDING; + unlock_time = timer_read32(); + } +} + +void secure_activity_event(void) { + if (secure_status == SECURE_UNLOCKED) { + idle_time = timer_read32(); + } +} + +void secure_keypress_event(uint8_t row, uint8_t col) { + static const uint8_t sequence[][2] = SECURE_UNLOCK_SEQUENCE; + static const uint8_t sequence_len = sizeof(sequence) / sizeof(sequence[0]); + + static uint8_t offset = 0; + if ((sequence[offset][0] == row) && (sequence[offset][1] == col)) { + offset++; + if (offset == sequence_len) { + offset = 0; + secure_unlock(); + } + } else { + offset = 0; + secure_lock(); + } +} + +void secure_task(void) { +#if SECURE_UNLOCK_TIMEOUT != 0 + // handle unlock timeout + if (secure_status == SECURE_PENDING) { + if (timer_elapsed32(unlock_time) >= SECURE_UNLOCK_TIMEOUT) { + secure_lock(); + } + } +#endif + +#if SECURE_IDLE_TIMEOUT != 0 + // handle idle timeout + if (secure_status == SECURE_UNLOCKED) { + if (timer_elapsed32(idle_time) >= SECURE_IDLE_TIMEOUT) { + secure_lock(); + } + } +#endif +} diff --git a/quantum/secure.h b/quantum/secure.h new file mode 100644 index 0000000000..04507fd5b1 --- /dev/null +++ b/quantum/secure.h @@ -0,0 +1,67 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/** \file + * + * Exposes a set of functionality to act as a virtual padlock for your device + * ... As long as that padlock is made of paper and its currently raining. + */ + +#include +#include + +/** \brief Available secure states + */ +typedef enum { + SECURE_LOCKED, + SECURE_PENDING, + SECURE_UNLOCKED, +} secure_status_t; + +/** \brief Query current secure state + */ +secure_status_t secure_get_status(void); + +/** \brief Helper to check if unlocking is currently locked + */ +#define secure_is_locked() (secure_get_status() == SECURE_LOCKED) + +/** \brief Helper to check if unlocking is currently in progress + */ +#define secure_is_unlocking() (secure_get_status() == SECURE_PENDING) + +/** \brief Helper to check if unlocking is currently unlocked + */ +#define secure_is_unlocked() (secure_get_status() == SECURE_UNLOCKED) + +/** \brief Lock down the device + */ +void secure_lock(void); + +/** \brief Force unlock the device + * + * \warning bypasses user unlock sequence + */ +void secure_unlock(void); + +/** \brief Begin listening for an unlock sequence + */ +void secure_request_unlock(void); + +/** \brief Flag to the secure subsystem that user activity has happened + * + * Call when some user activity has happened and the device should remain unlocked + */ +void secure_activity_event(void); + +/** \brief Flag to the secure subsystem that user has triggered a keypress + * + * Call to trigger processing of the unlock sequence + */ +void secure_keypress_event(uint8_t row, uint8_t col); + +/** \brief Handle various secure subsystem background tasks + */ +void secure_task(void); From 7d75f88ac9c5532c45e4d2dcbe3bde8a1a0b065e Mon Sep 17 00:00:00 2001 From: X-Bows Tech <41098278+XBowsTech@users.noreply.github.com> Date: Sun, 17 Apr 2022 02:19:24 +0800 Subject: [PATCH 259/699] [Keyboard] Update X-Bows Keyboard (#16765) Co-authored-by: Ryan Co-authored-by: Drashna Jaelre Co-authored-by: Shulin --- keyboards/xbows/knight/config.h | 4 ++-- keyboards/xbows/knight/keymaps/via/rules.mk | 1 + keyboards/xbows/knight_plus/config.h | 4 ++-- keyboards/xbows/knight_plus/keymaps/via/rules.mk | 1 + keyboards/xbows/nature/config.h | 6 +++--- keyboards/xbows/nature/keymaps/via/rules.mk | 1 + keyboards/xbows/nature/rules.mk | 1 - keyboards/xbows/numpad/config.h | 4 ++-- keyboards/xbows/numpad/keymaps/via/rules.mk | 1 + keyboards/xbows/ranger/config.h | 4 ++-- keyboards/xbows/ranger/keymaps/via/rules.mk | 1 + 11 files changed, 16 insertions(+), 12 deletions(-) diff --git a/keyboards/xbows/knight/config.h b/keyboards/xbows/knight/config.h index be7b2bfe9f..013bb4e7d4 100644 --- a/keyboards/xbows/knight/config.h +++ b/keyboards/xbows/knight/config.h @@ -17,8 +17,8 @@ #include "config_common.h" -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x1225 +#define VENDOR_ID 0x5842 +#define PRODUCT_ID 0x4B6E #define DEVICE_VER 0x0001 #define MANUFACTURER X-BOWS #define PRODUCT KNIGHT diff --git a/keyboards/xbows/knight/keymaps/via/rules.mk b/keyboards/xbows/knight/keymaps/via/rules.mk index 1e5b99807c..36b7ba9cbc 100644 --- a/keyboards/xbows/knight/keymaps/via/rules.mk +++ b/keyboards/xbows/knight/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/xbows/knight_plus/config.h b/keyboards/xbows/knight_plus/config.h index e9e82c13df..414b5a86b7 100644 --- a/keyboards/xbows/knight_plus/config.h +++ b/keyboards/xbows/knight_plus/config.h @@ -17,8 +17,8 @@ #include "config_common.h" -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x1227 +#define VENDOR_ID 0x5842 +#define PRODUCT_ID 0x4B50 #define DEVICE_VER 0x0001 #define MANUFACTURER X-BOWS #define PRODUCT KNIGHT_PLUS diff --git a/keyboards/xbows/knight_plus/keymaps/via/rules.mk b/keyboards/xbows/knight_plus/keymaps/via/rules.mk index 1e5b99807c..36b7ba9cbc 100644 --- a/keyboards/xbows/knight_plus/keymaps/via/rules.mk +++ b/keyboards/xbows/knight_plus/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/xbows/nature/config.h b/keyboards/xbows/nature/config.h index 0fc0accb59..d9d6a2753e 100644 --- a/keyboards/xbows/nature/config.h +++ b/keyboards/xbows/nature/config.h @@ -17,8 +17,8 @@ #include "config_common.h" -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x1226 +#define VENDOR_ID 0x5842 +#define PRODUCT_ID 0x4E61 #define DEVICE_VER 0x0001 #define MANUFACTURER X-BOWS #define PRODUCT NATURE @@ -35,7 +35,7 @@ # define RGB_MATRIX_LED_FLUSH_LIMIT 16 # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended -// # define RGB_MATRIX_KEYPRESSES +# define RGB_MATRIX_KEYPRESSES # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 # define RGB_MATRIX_CENTER \ { 92, 33 } diff --git a/keyboards/xbows/nature/keymaps/via/rules.mk b/keyboards/xbows/nature/keymaps/via/rules.mk index 1e5b99807c..36b7ba9cbc 100644 --- a/keyboards/xbows/nature/keymaps/via/rules.mk +++ b/keyboards/xbows/nature/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/xbows/nature/rules.mk b/keyboards/xbows/nature/rules.mk index 5ff72e1df8..9dec74c970 100644 --- a/keyboards/xbows/nature/rules.mk +++ b/keyboards/xbows/nature/rules.mk @@ -16,6 +16,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -SLEEP_LED_ENABLE = yes RGB_MATRIX_ENABLE = yes RGB_MATRIX_DRIVER = IS31FL3731 diff --git a/keyboards/xbows/numpad/config.h b/keyboards/xbows/numpad/config.h index 04604676bc..c36ee1a52c 100644 --- a/keyboards/xbows/numpad/config.h +++ b/keyboards/xbows/numpad/config.h @@ -17,8 +17,8 @@ #include "config_common.h" -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x1228 +#define VENDOR_ID 0x5842 +#define PRODUCT_ID 0x4E75 #define DEVICE_VER 0x0001 #define MANUFACTURER X-BOWS #define PRODUCT NUMPAD diff --git a/keyboards/xbows/numpad/keymaps/via/rules.mk b/keyboards/xbows/numpad/keymaps/via/rules.mk index 1e5b99807c..36b7ba9cbc 100644 --- a/keyboards/xbows/numpad/keymaps/via/rules.mk +++ b/keyboards/xbows/numpad/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/xbows/ranger/config.h b/keyboards/xbows/ranger/config.h index a7bcee7b4f..73a1bc3a74 100644 --- a/keyboards/xbows/ranger/config.h +++ b/keyboards/xbows/ranger/config.h @@ -17,8 +17,8 @@ #include "config_common.h" -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x1229 +#define VENDOR_ID 0x5842 +#define PRODUCT_ID 0x5261 #define DEVICE_VER 0x0001 #define MANUFACTURER X-BOWS #define PRODUCT Ranger diff --git a/keyboards/xbows/ranger/keymaps/via/rules.mk b/keyboards/xbows/ranger/keymaps/via/rules.mk index 1e5b99807c..36b7ba9cbc 100644 --- a/keyboards/xbows/ranger/keymaps/via/rules.mk +++ b/keyboards/xbows/ranger/keymaps/via/rules.mk @@ -1 +1,2 @@ VIA_ENABLE = yes +LTO_ENABLE = yes From 8f585153c470b07bb0c529ff49b39ef45f68d37e Mon Sep 17 00:00:00 2001 From: Jouke Witteveen Date: Sat, 16 Apr 2022 20:24:09 +0200 Subject: [PATCH 260/699] Add GET_TAPPING_TERM macro to reduce duplicate code (#16681) * Add GET_TAPPING_TERM macro to reduce duplicate code The macro gives the right tapping term depending on whether per-key tapping terms and/or dynamic tapping terms are enabled. Unnecessary function calls and variable resolution are avoided. Fixes #16472. * Use GET_TAPPING_TERM for Cirque trackpads Co-authored-by: Stefan Kerkmann --- docs/tap_hold.md | 2 +- quantum/action_tapping.c | 27 ++++++++----------- quantum/action_tapping.h | 8 ++++++ quantum/pointing_device_drivers.c | 14 +++------- quantum/process_keycode/process_auto_shift.c | 7 +---- quantum/process_keycode/process_space_cadet.c | 7 +---- quantum/process_keycode/process_tap_dance.c | 6 +---- 7 files changed, 26 insertions(+), 45 deletions(-) diff --git a/docs/tap_hold.md b/docs/tap_hold.md index 39fa84a9f3..601aef0493 100644 --- a/docs/tap_hold.md +++ b/docs/tap_hold.md @@ -112,7 +112,7 @@ uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { } ``` -The reason being that `TAPPING_TERM` is a macro that expands to a constant integer and thus cannot be changed at runtime whereas `g_tapping_term` is a variable whose value can be changed at runtime. If you want, you can temporarily enable `DYNAMIC_TAPPING_TERM_ENABLE` to find a suitable tapping term value and then disable that feature and revert back to using the classic syntax for per-key tapping term settings. +The reason being that `TAPPING_TERM` is a macro that expands to a constant integer and thus cannot be changed at runtime whereas `g_tapping_term` is a variable whose value can be changed at runtime. If you want, you can temporarily enable `DYNAMIC_TAPPING_TERM_ENABLE` to find a suitable tapping term value and then disable that feature and revert back to using the classic syntax for per-key tapping term settings. In case you need to access the tapping term from elsewhere in your code, you can use the `GET_TAPPING_TERM(keycode, record)` macro. This macro will expand to whatever is the appropriate access pattern given the current configuration. ## Tap-Or-Hold Decision Modes diff --git a/quantum/action_tapping.c b/quantum/action_tapping.c index e436619428..3c8b5678b7 100644 --- a/quantum/action_tapping.c +++ b/quantum/action_tapping.c @@ -24,17 +24,20 @@ # else # define IS_TAPPING_RECORD(r) (IS_TAPPING() && KEYEQ(tapping_key.event.key, (r->event.key)) && tapping_key.keycode == r->keycode) # endif +# define WITHIN_TAPPING_TERM(e) (TIMER_DIFF_16(e.time, tapping_key.event.time) < GET_TAPPING_TERM(get_record_keycode(&tapping_key, false), &tapping_key)) +# ifdef DYNAMIC_TAPPING_TERM_ENABLE uint16_t g_tapping_term = TAPPING_TERM; - -__attribute__((weak)) uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { - return g_tapping_term; -} +# endif # ifdef TAPPING_TERM_PER_KEY -# define WITHIN_TAPPING_TERM(e) (TIMER_DIFF_16(e.time, tapping_key.event.time) < get_tapping_term(get_record_keycode(&tapping_key, false), &tapping_key)) -# else -# define WITHIN_TAPPING_TERM(e) (TIMER_DIFF_16(e.time, tapping_key.event.time) < g_tapping_term) +__attribute__((weak)) uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { +# ifdef DYNAMIC_TAPPING_TERM_ENABLE + return g_tapping_term; +# else + return TAPPING_TERM; +# endif +} # endif # ifdef TAPPING_FORCE_HOLD_PER_KEY @@ -165,15 +168,7 @@ bool process_tapping(keyrecord_t *keyp) { else if ( ( ( - ( -# ifdef TAPPING_TERM_PER_KEY - get_tapping_term(tapping_keycode, &tapping_key) -# else - g_tapping_term -# endif - >= 500 - ) - + GET_TAPPING_TERM(tapping_keycode, &tapping_key) >= 500 # ifdef PERMISSIVE_HOLD_PER_KEY || get_permissive_hold(tapping_keycode, &tapping_key) # elif defined(PERMISSIVE_HOLD) diff --git a/quantum/action_tapping.h b/quantum/action_tapping.h index b2feb6850c..9b64c93120 100644 --- a/quantum/action_tapping.h +++ b/quantum/action_tapping.h @@ -44,3 +44,11 @@ bool get_retro_tapping(uint16_t keycode, keyrecord_t *record); #ifdef DYNAMIC_TAPPING_TERM_ENABLE extern uint16_t g_tapping_term; #endif + +#ifdef TAPPING_TERM_PER_KEY +# define GET_TAPPING_TERM(keycode, record) get_tapping_term(keycode, record) +#elif defined(DYNAMIC_TAPPING_TERM_ENABLE) +# define GET_TAPPING_TERM(keycode, record) g_tapping_term +#else +# define GET_TAPPING_TERM(keycode, record) (TAPPING_TERM) +#endif diff --git a/quantum/pointing_device_drivers.c b/quantum/pointing_device_drivers.c index b8ef6e67e5..11cbf6594e 100644 --- a/quantum/pointing_device_drivers.c +++ b/quantum/pointing_device_drivers.c @@ -98,17 +98,9 @@ const pointing_device_driver_t pointing_device_driver = { // clang-format on #elif defined(POINTING_DEVICE_DRIVER_cirque_pinnacle_i2c) || defined(POINTING_DEVICE_DRIVER_cirque_pinnacle_spi) # ifndef CIRQUE_PINNACLE_TAPPING_TERM -# ifdef TAPPING_TERM_PER_KEY -# include "action.h" -# include "action_tapping.h" -# define CIRQUE_PINNACLE_TAPPING_TERM get_tapping_term(KC_BTN1, &(keyrecord_t){}) -# else -# ifdef TAPPING_TERM -# define CIRQUE_PINNACLE_TAPPING_TERM TAPPING_TERM -# else -# define CIRQUE_PINNACLE_TAPPING_TERM 200 -# endif -# endif +# include "action.h" +# include "action_tapping.h" +# define CIRQUE_PINNACLE_TAPPING_TERM GET_TAPPING_TERM(KC_BTN1, &(keyrecord_t){}) # endif # ifndef CIRQUE_PINNACLE_TOUCH_DEBOUNCE # define CIRQUE_PINNACLE_TOUCH_DEBOUNCE (CIRQUE_PINNACLE_TAPPING_TERM * 8) diff --git a/quantum/process_keycode/process_auto_shift.c b/quantum/process_keycode/process_auto_shift.c index 2150edd7b2..e6a7c01f2a 100644 --- a/quantum/process_keycode/process_auto_shift.c +++ b/quantum/process_keycode/process_auto_shift.c @@ -182,12 +182,7 @@ static bool autoshift_press(uint16_t keycode, uint16_t now, keyrecord_t *record) # endif ) && # endif - TIMER_DIFF_16(now, autoshift_time) < -# ifdef TAPPING_TERM_PER_KEY - get_tapping_term(autoshift_lastkey, record) -# else - TAPPING_TERM -# endif + TIMER_DIFF_16(now, autoshift_time) < GET_TAPPING_TERM(autoshift_lastkey, record) ) { // clang-format on // Allow a tap-then-hold for keyrepeat. diff --git a/quantum/process_keycode/process_space_cadet.c b/quantum/process_keycode/process_space_cadet.c index 46b2648c35..0997e7b7f3 100644 --- a/quantum/process_keycode/process_space_cadet.c +++ b/quantum/process_keycode/process_space_cadet.c @@ -93,12 +93,7 @@ void perform_space_cadet(keyrecord_t *record, uint16_t sc_keycode, uint8_t holdM register_mods(MOD_BIT(holdMod)); } } else { -#ifdef TAPPING_TERM_PER_KEY - if (sc_last == holdMod && timer_elapsed(sc_timer) < get_tapping_term(sc_keycode, record)) -#else - if (sc_last == holdMod && timer_elapsed(sc_timer) < TAPPING_TERM) -#endif - { + if (sc_last == holdMod && timer_elapsed(sc_timer) < GET_TAPPING_TERM(sc_keycode, record)) { if (holdMod != tapMod) { if (IS_MOD(holdMod)) { unregister_mods(MOD_BIT(holdMod)); diff --git a/quantum/process_keycode/process_tap_dance.c b/quantum/process_keycode/process_tap_dance.c index e99119b2ae..db8df5f870 100644 --- a/quantum/process_keycode/process_tap_dance.c +++ b/quantum/process_keycode/process_tap_dance.c @@ -174,11 +174,7 @@ void tap_dance_task() { if (action->custom_tapping_term > 0) { tap_user_defined = action->custom_tapping_term; } else { -#ifdef TAPPING_TERM_PER_KEY - tap_user_defined = get_tapping_term(action->state.keycode, &(keyrecord_t){}); -#else - tap_user_defined = TAPPING_TERM; -#endif + tap_user_defined = GET_TAPPING_TERM(action->state.keycode, &(keyrecord_t){}); } if (action->state.count && timer_elapsed(action->state.timer) > tap_user_defined) { process_tap_dance_action_on_dance_finished(action); From 6d13199ed0e6502f91719d528f86b03ce7f6acae Mon Sep 17 00:00:00 2001 From: Amber Cronin Date: Sat, 16 Apr 2022 19:27:51 +0100 Subject: [PATCH 261/699] Fix Xorg segfault with KeebCats PCBs (#16434) --- keyboards/cutie_club/keebcats/denis/config.h | 2 +- keyboards/cutie_club/keebcats/dougal/config.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/cutie_club/keebcats/denis/config.h b/keyboards/cutie_club/keebcats/denis/config.h index 473b690634..f7c21efe5e 100644 --- a/keyboards/cutie_club/keebcats/denis/config.h +++ b/keyboards/cutie_club/keebcats/denis/config.h @@ -23,7 +23,7 @@ #define PRODUCT_ID 0xB260 #define DEVICE_VER 0x0000 #define MANUFACTURER Cutie Club -#define PRODUCT Keebcats Denis 60% +#define PRODUCT Keebcats Denis 60 /* key matrix size */ #define MATRIX_ROWS 5 diff --git a/keyboards/cutie_club/keebcats/dougal/config.h b/keyboards/cutie_club/keebcats/dougal/config.h index 05160322c4..00d3f3a82d 100644 --- a/keyboards/cutie_club/keebcats/dougal/config.h +++ b/keyboards/cutie_club/keebcats/dougal/config.h @@ -23,7 +23,7 @@ #define PRODUCT_ID 0xB265 #define DEVICE_VER 0x0000 #define MANUFACTURER Cutie Club -#define PRODUCT Keebcats Dougal 65% +#define PRODUCT Keebcats Dougal 65 /* key matrix size */ #define MATRIX_ROWS 5 From 3b6e48b012fa10e87e6cf1aa051cdcf353077a5a Mon Sep 17 00:00:00 2001 From: moyi4681 Date: Sat, 16 Apr 2022 11:28:16 -0700 Subject: [PATCH 262/699] [Keyboard] Add Phase One keyboard (#16430) Co-authored-by: Ryan --- keyboards/kbdfans/phaseone/config.h | 62 +++++++++++++++++++ .../kbdfans/phaseone/keymaps/default/keymap.c | 47 ++++++++++++++ .../kbdfans/phaseone/keymaps/via/keymap.c | 47 ++++++++++++++ .../kbdfans/phaseone/keymaps/via/rules.mk | 2 + keyboards/kbdfans/phaseone/phaseone.c | 20 ++++++ keyboards/kbdfans/phaseone/phaseone.h | 60 ++++++++++++++++++ keyboards/kbdfans/phaseone/readme.md | 21 +++++++ keyboards/kbdfans/phaseone/rules.mk | 18 ++++++ 8 files changed, 277 insertions(+) create mode 100644 keyboards/kbdfans/phaseone/config.h create mode 100644 keyboards/kbdfans/phaseone/keymaps/default/keymap.c create mode 100644 keyboards/kbdfans/phaseone/keymaps/via/keymap.c create mode 100644 keyboards/kbdfans/phaseone/keymaps/via/rules.mk create mode 100644 keyboards/kbdfans/phaseone/phaseone.c create mode 100644 keyboards/kbdfans/phaseone/phaseone.h create mode 100644 keyboards/kbdfans/phaseone/readme.md create mode 100644 keyboards/kbdfans/phaseone/rules.mk diff --git a/keyboards/kbdfans/phaseone/config.h b/keyboards/kbdfans/phaseone/config.h new file mode 100644 index 0000000000..42fcdedc6a --- /dev/null +++ b/keyboards/kbdfans/phaseone/config.h @@ -0,0 +1,62 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ + +#pragma once +#include "config_common.h" +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B42 +#define PRODUCT_ID 0x0103 +#define DEVICE_VER 0x0001 +#define MANUFACTURER KBDFans +#define PRODUCT phaseone +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 +#define MATRIX_ROW_PINS { B0, B1, B2, B3, B4 } +#define MATRIX_COL_PINS { B5, C6, C7, F7, F6, F5, F4, F1, E6, B7, D0, D1, D2, D3, D5 } +#define UNUSED_PINS +#define LED_NUM_LOCK_PIN D7 +#define LED_CAPS_LOCK_PIN D6 +#define LED_PIN_ON_STATE 0 +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 +/* 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 +#define RGB_DI_PIN B6 +#ifdef RGB_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLIGHT_DEFAULT_MODE (RGBLIGHT_EFFECT_RAINBOW_MOOD + 6) +#define RGBLIGHT_DEFAULT_SPD 15 +#define RGBLED_NUM 4 +#define RGBLIGHT_HUE_STEP 10 +#define RGBLIGHT_SAT_STEP 10 +#define RGBLIGHT_VAL_STEP 10 +#define RGBLIGHT_SLEEP +#endif +#define VIA_EEPROM_LAYOUT_OPTIONS_SIZE 2 \ No newline at end of file diff --git a/keyboards/kbdfans/phaseone/keymaps/default/keymap.c b/keyboards/kbdfans/phaseone/keymaps/default/keymap.c new file mode 100644 index 0000000000..a74be0ce50 --- /dev/null +++ b/keyboards/kbdfans/phaseone/keymaps/default/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ + +#include QMK_KEYBOARD_H +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( + 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_BSPC, KC_DEL, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RCTL, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT +), +[1] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +), +[2] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +), +[3] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +) +}; diff --git a/keyboards/kbdfans/phaseone/keymaps/via/keymap.c b/keyboards/kbdfans/phaseone/keymaps/via/keymap.c new file mode 100644 index 0000000000..a74be0ce50 --- /dev/null +++ b/keyboards/kbdfans/phaseone/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ + +#include QMK_KEYBOARD_H +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( + 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_BSPC, KC_DEL, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RCTL, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT +), +[1] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +), +[2] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +), +[3] = LAYOUT_all( + KC_GRV, 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_MUTE, KC_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END +) +}; diff --git a/keyboards/kbdfans/phaseone/keymaps/via/rules.mk b/keyboards/kbdfans/phaseone/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/kbdfans/phaseone/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/kbdfans/phaseone/phaseone.c b/keyboards/kbdfans/phaseone/phaseone.c new file mode 100644 index 0000000000..f83d14c1b3 --- /dev/null +++ b/keyboards/kbdfans/phaseone/phaseone.c @@ -0,0 +1,20 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ + +#include "phaseone.h" +void keyboard_pre_init_kb(void) { + setPinOutput(D4); +} diff --git a/keyboards/kbdfans/phaseone/phaseone.h b/keyboards/kbdfans/phaseone/phaseone.h new file mode 100644 index 0000000000..28a176a059 --- /dev/null +++ b/keyboards/kbdfans/phaseone/phaseone.h @@ -0,0 +1,60 @@ +/* Copyright 2022 Dztech + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2C, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E}, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E}, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E}, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E}, \ +} + +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E}, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K2E}, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E}, \ + { K40, K41, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E}, \ +} + +#define LAYOUT_65_ansi_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E}, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E}, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K2E}, \ + { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E}, \ + { K40, KC_NO, K42, KC_NO, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, KC_NO, K4B, K4C, K4D, K4E}, \ +} diff --git a/keyboards/kbdfans/phaseone/readme.md b/keyboards/kbdfans/phaseone/readme.md new file mode 100644 index 0000000000..b5b21da672 --- /dev/null +++ b/keyboards/kbdfans/phaseone/readme.md @@ -0,0 +1,21 @@ +# PHASEONE + +A 65% keyboard, include 3 layouts: WK HOTSWAP; WKL HOTSWAP and SOLDERED. + +* Keyboard Maintainer: [moyi4681](https://github.com/moyi4681) +* Hardware Supported: KBDFANS PHASEONE +* Hardware Availability: [KBDfans](https://kbdfans.com/) + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +Make example for this keyboard (after setting up your build environment): + + make kbdfans/phaseone:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/kbdfans/phaseone/rules.mk b/keyboards/kbdfans/phaseone/rules.mk new file mode 100644 index 0000000000..b5761555d4 --- /dev/null +++ b/keyboards/kbdfans/phaseone/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From e5918cf968f3e2c4a62858ee789748443ba58d10 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Sun, 17 Apr 2022 02:34:07 +0800 Subject: [PATCH 263/699] Heatmap incorrect matrix effect workaround (#16315) --- docs/feature_rgb_matrix.md | 13 +++++++------ quantum/rgb_matrix/animations/typing_heatmap_anim.h | 5 +++++ 2 files changed, 12 insertions(+), 6 deletions(-) diff --git a/docs/feature_rgb_matrix.md b/docs/feature_rgb_matrix.md index a8793be328..b2fc61e51e 100644 --- a/docs/feature_rgb_matrix.md +++ b/docs/feature_rgb_matrix.md @@ -657,18 +657,19 @@ You can enable a single effect by defining `ENABLE_[EFFECT_NAME]` in your `confi ### RGB Matrix Effect Typing Heatmap :id=rgb-matrix-effect-typing-heatmap -This effect will color the RGB matrix according to a heatmap of recently pressed -keys. Whenever a key is pressed its "temperature" increases as well as that of -its neighboring keys. The temperature of each key is then decreased -automatically every 25 milliseconds by default. +This effect will color the RGB matrix according to a heatmap of recently pressed keys. Whenever a key is pressed its "temperature" increases as well as that of its neighboring keys. The temperature of each key is then decreased automatically every 25 milliseconds by default. -In order to change the delay of temperature decrease define -`RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS`: +In order to change the delay of temperature decrease define `RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS`: ```c #define RGB_MATRIX_TYPING_HEATMAP_DECREASE_DELAY_MS 50 ``` +Heatmap effect may not light up the correct adjacent LEDs for certain key matrix layout such as split keyboards. The following define will limit the effect to pressed keys only: +```c +#define RGB_MATRIX_TYPING_HEATMAP_SLIM +``` + ## Custom RGB Matrix Effects :id=custom-rgb-matrix-effects By setting `RGB_MATRIX_CUSTOM_USER = yes` in `rules.mk`, new effects can be defined directly from your keymap or userspace, without having to edit any QMK core files. To declare new effects, create a `rgb_matrix_user.inc` file in the user keymap directory or userspace folder. diff --git a/quantum/rgb_matrix/animations/typing_heatmap_anim.h b/quantum/rgb_matrix/animations/typing_heatmap_anim.h index f3a94280c0..4b17c4c3ed 100644 --- a/quantum/rgb_matrix/animations/typing_heatmap_anim.h +++ b/quantum/rgb_matrix/animations/typing_heatmap_anim.h @@ -7,6 +7,10 @@ RGB_MATRIX_EFFECT(TYPING_HEATMAP) # endif void process_rgb_matrix_typing_heatmap(uint8_t row, uint8_t col) { +# ifdef RGB_MATRIX_TYPING_HEATMAP_SLIM + // Limit effect to pressed keys + g_rgb_frame_buffer[row][col] = qadd8(g_rgb_frame_buffer[row][col], 32); +# else uint8_t m_row = row - 1; uint8_t p_row = row + 1; uint8_t m_col = col - 1; @@ -27,6 +31,7 @@ void process_rgb_matrix_typing_heatmap(uint8_t row, uint8_t col) { g_rgb_frame_buffer[m_row][col] = qadd8(g_rgb_frame_buffer[m_row][col], 16); if (p_col < MATRIX_COLS) g_rgb_frame_buffer[m_row][p_col] = qadd8(g_rgb_frame_buffer[m_row][p_col], 13); } +# endif } // A timer to track the last time we decremented all heatmap values. From 5841c755ae0b5629deb4c139eb535a82437112a2 Mon Sep 17 00:00:00 2001 From: Simon Arlott <70171+nomis@users.noreply.github.com> Date: Sat, 16 Apr 2022 23:02:32 +0100 Subject: [PATCH 264/699] rgblight: Add functions to stop blinking one or all but one layer (#16859) --- docs/feature_rgblight.md | 13 +++++++++++++ quantum/rgblight/rgblight.c | 15 +++++++++++++++ quantum/rgblight/rgblight.h | 20 +++++++++++++++++++- 3 files changed, 47 insertions(+), 1 deletion(-) diff --git a/docs/feature_rgblight.md b/docs/feature_rgblight.md index 08e820c0a6..11d4f89950 100644 --- a/docs/feature_rgblight.md +++ b/docs/feature_rgblight.md @@ -326,6 +326,19 @@ void post_process_record_user(uint16_t keycode, keyrecord_t *record) { ``` would turn the layer 0 (or 1) on and off again three times when `DEBUG` is pressed. +Blinking accumulates layers so if multiple layers are set blinking at the same time they will all blink for the duration and repeat times of the last layer to be blinked. +To stop these other layers from blinking use `rgblight_unblink_layer` or `rgblight_unblink_all_but_layer`: + +```c +rgblight_blink_layer(1, 500); +rgblight_unblink_all_but_layer(1); +``` + +```c +rgblight_unblink_layer(3); +rgblight_blink_layer(2, 500); +``` + !> Lighting layers on split keyboards will require layer state synced to the slave half (e.g. `#define SPLIT_LAYER_STATE_ENABLE`). See [data sync options](feature_split_keyboard.md#data-sync-options) for more details. ### Overriding RGB Lighting on/off status diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index f4ddb81e92..1f8b68ee59 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -826,6 +826,21 @@ void rgblight_blink_layer_repeat(uint8_t layer, uint16_t duration_ms, uint8_t ti _repeat_timer = sync_timer_read() + duration_ms; } +void rgblight_unblink_layer(uint8_t layer) { + rgblight_set_layer_state(layer, false); + _blinking_layer_mask &= ~((rgblight_layer_mask_t)1 << layer); +} + +void rgblight_unblink_all_but_layer(uint8_t layer) { + for (uint8_t i = 0; i < RGBLIGHT_MAX_LAYERS; i++) { + if (i != layer) { + if ((_blinking_layer_mask & (rgblight_layer_mask_t)1 << i) != 0) { + rgblight_unblink_layer(i); + } + } + } +} + void rgblight_blink_layer_repeat_helper(void) { if (_blinking_layer_mask != 0 && timer_expired(sync_timer_read(), _repeat_timer)) { for (uint8_t layer = 0; layer < RGBLIGHT_MAX_LAYERS; layer++) { diff --git a/quantum/rgblight/rgblight.h b/quantum/rgblight/rgblight.h index 7076dc41ac..fdab0e987a 100644 --- a/quantum/rgblight/rgblight.h +++ b/quantum/rgblight/rgblight.h @@ -216,7 +216,25 @@ extern const rgblight_segment_t *const *rgblight_layers; # ifdef RGBLIGHT_LAYER_BLINK # define RGBLIGHT_USE_TIMER void rgblight_blink_layer(uint8_t layer, uint16_t duration_ms); -void rgblight_blink_layer_repeat(uint8_t layer, uint16_t duration_ms, uint8_t times); +void rgblight_blink_layer_repeat(uint8_t layer, uint16_ duration_ms, uint8_t times); +/** + * \brief Stop blinking on one layer. + * + * Stop a layer that is blinking. If the layer is not blinking it will + * be unaffected. + * + * \param layer Layer number to stop blinking. + */ +void rgblight_unblink_layer(uint8_t layer); +/** + * \brief Stop blinking all layers except one. + * + * Stop all layers that are blinking except for one specific layer. + * Layers that are not blinking are unaffected. + * + * \param layer Layer number to keep blinking. + */ +void rgblight_unblink_all_but_layer(uint8_t layer); # endif #endif From 147e57fd5930a1c18596a2401c9ee6f30730b86f Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Sun, 17 Apr 2022 00:30:51 +0200 Subject: [PATCH 265/699] [QP] Check BPP capabilities before loading the palette (#16863) --- quantum/painter/qp_draw_image.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/quantum/painter/qp_draw_image.c b/quantum/painter/qp_draw_image.c index 5134ae7e99..5822758dce 100644 --- a/quantum/painter/qp_draw_image.c +++ b/quantum/painter/qp_draw_image.c @@ -131,6 +131,12 @@ static bool qp_drawimage_prepare_frame_for_stream_read(painter_device_t device, // Ensure we aren't reusing any palette qp_internal_invalidate_palette(); + if (!qp_internal_bpp_capable(info->bpp)) { + qp_dprintf("qp_drawimage_recolor: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)info->bpp); + qp_comms_stop(device); + return false; + } + // Handle palette if needed const uint16_t palette_entries = 1u << info->bpp; bool needs_pixconvert = false; @@ -146,12 +152,6 @@ static bool qp_drawimage_prepare_frame_for_stream_read(painter_device_t device, needs_pixconvert = qp_internal_interpolate_palette(fg_hsv888, bg_hsv888, palette_entries); } - if (!qp_internal_bpp_capable(info->bpp)) { - qp_dprintf("qp_drawimage_recolor: fail (image bpp too high (%d), check QUANTUM_PAINTER_SUPPORTS_256_PALETTE)\n", (int)info->bpp); - qp_comms_stop(device); - return false; - } - if (needs_pixconvert) { // Convert the palette to native format if (!driver->driver_vtable->palette_convert(device, palette_entries, qp_internal_global_pixel_lookup_table)) { From df95495d5b63494d168305d4dd2b01dbbcdfbc80 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Sun, 17 Apr 2022 09:09:37 +1000 Subject: [PATCH 266/699] Fix #16859. (#16865) --- quantum/rgblight/rgblight.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/quantum/rgblight/rgblight.h b/quantum/rgblight/rgblight.h index fdab0e987a..189c4d18b8 100644 --- a/quantum/rgblight/rgblight.h +++ b/quantum/rgblight/rgblight.h @@ -216,7 +216,7 @@ extern const rgblight_segment_t *const *rgblight_layers; # ifdef RGBLIGHT_LAYER_BLINK # define RGBLIGHT_USE_TIMER void rgblight_blink_layer(uint8_t layer, uint16_t duration_ms); -void rgblight_blink_layer_repeat(uint8_t layer, uint16_ duration_ms, uint8_t times); +void rgblight_blink_layer_repeat(uint8_t layer, uint16_t duration_ms, uint8_t times); /** * \brief Stop blinking on one layer. * From a5a4597311313f6395bee279f3c00c3784a33bd7 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Sun, 17 Apr 2022 08:36:07 +0800 Subject: [PATCH 267/699] Refine LED indicator documentation (#16304) --- docs/feature_led_indicators.md | 46 ++++++++++++++++------------------ 1 file changed, 21 insertions(+), 25 deletions(-) diff --git a/docs/feature_led_indicators.md b/docs/feature_led_indicators.md index 95d1cd4752..a2a2e17c6f 100644 --- a/docs/feature_led_indicators.md +++ b/docs/feature_led_indicators.md @@ -11,13 +11,13 @@ QMK provides methods to read 5 of the LEDs defined in the HID spec: * Kana There are three ways to get the lock LED state: -* by specifying configuration options within `config.h` -* by implementing `bool led_update_kb(led_t led_state)` or `_user(led_t led_state)`; or -* by calling `led_t host_keyboard_led_state()` +* Configuration options in `config.h` +* Implement `led_update_*` function +* Call `led_t host_keyboard_led_state()` -!> `host_keyboard_led_state()` may already reflect a new value before `led_update_user()` is called. +!> The `host_keyboard_led_state()` may reflect an updated state before `led_update_user()` is called. -Two more deprecated functions exist that provide the LED state as a `uint8_t`: +Two deprecated functions that provide the LED state as `uint8_t`: * `uint8_t led_set_kb(uint8_t usb_led)` and `_user(uint8_t usb_led)` * `uint8_t host_keyboard_leds()` @@ -37,23 +37,20 @@ To configure the indicators, `#define` these in your `config.h`: Unless you are designing your own keyboard, you generally should not need to change the above config options. -## `led_update_*()` +## LED update function -When the configuration options do not provide enough flexibility, the API hooks provided allow custom control of the LED behavior. These functions will be called when the state of one of those 5 LEDs changes. It receives the LED state as a struct parameter. +When the configuration options do not provide enough flexibility, the following callbacks allow custom control of the LED behavior. These functions will be called when one of those 5 LEDs changes state: -By convention, return `true` from `led_update_user()` to get the `led_update_kb()` hook to run its code, and -return `false` when you would prefer not to run the code in `led_update_kb()`. +* Keyboard/revision: `bool led_update_kb(led_t led_state)` +* Keymap: `bool led_update_user(led_t led_state)` -Some examples include: +Both receives LED state as a struct parameter. Returning `true` in `led_update_user()` will allow the keyboard level code in `led_update_kb()` to run as well. Returning `false` will override the keyboard level code, depending on how the keyboard level function is set up. - - overriding the LEDs to use them for something else like layer indication - - return `false` because you do not want the `_kb()` function to run, as it would override your layer behavior. - - play a sound when an LED turns on or off. - - return `true` because you want the `_kb` function to run, and this is in addition to the default LED behavior. +?> This boolean return type of `led_update_user` allows for overriding keyboard LED controls, and is thus recommended over the void `led_set_user` function. -?> Because the `led_set_*` functions return `void` instead of `bool`, they do not allow for overriding the keyboard LED control, and thus it's recommended to use `led_update_*` instead. +### Example of keyboard LED update implementation -### Example `led_update_kb()` Implementation +This is a template indicator function that can be implemented on keyboard level code: ```c bool led_update_kb(led_t led_state) { @@ -74,9 +71,9 @@ bool led_update_kb(led_t led_state) { } ``` -### Example `led_update_user()` Implementation +### Example of user LED update implementation -This incomplete example would play a sound if Caps Lock is turned on or off. It returns `true`, because you also want the LEDs to maintain their state. +This is an incomplete example will play a sound if Caps Lock is turned on or off. It returns `true` to allow keyboard LED function to maintain their state. ```c #ifdef AUDIO_ENABLE @@ -96,18 +93,17 @@ bool led_update_user(led_t led_state) { } ``` -### `led_update_*` Function Documentation +## Host keyboard LED state -* Keyboard/Revision: `bool led_update_kb(led_t led_state)` -* Keymap: `bool led_update_user(led_t led_state)` +The `host_keyboard_led_state()` function will report the LED state returned from the host computer as `led_t`. This is useful for reading the LED state outside `led_update_*`. For example, you can get the boolean state of Caps Lock from the host with: -## `host_keyboard_led_state()` - -Call this function to get the last received LED state as a `led_t`. This is useful for reading the LED state outside `led_update_*`, e.g. in [`matrix_scan_user()`](#matrix-scanning-code). +```c +bool caps = host_keyboard_led_state().caps_lock; +``` ## Setting Physical LED State -Some keyboard implementations provide convenience methods for setting the state of the physical LEDs. +Some keyboard implementations provide convenient methods for setting the state of the physical LEDs. ### Ergodox Boards From 7d60a141a25526d94bb28015eb08bbe27c0a88cd Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sun, 17 Apr 2022 12:53:59 -0700 Subject: [PATCH 268/699] Anne Pro 2 Refactor (#16864) * move RGB Matrix rules to keyboard level * move PERMISSIVE_HOLD config to keyboard level * annepro2.c: convert tabs to spaces * refactor rules.mk files Reformats each version's `rules.mk` file to be arranged more similarly to those of the rest of the keyboards in QMK. No logic change. * annepro2.c: allow compilation without RGB Matrix Wraps the `led_enabled` definition and the `KC_AP_RGB_*` keycodes in `#ifdef RGB_MATRIX_ENABLE`, allowing successful compilation if the user sets `RGB_MATRIX_ENABLE = no`. * rework readme files Reworks the main `readme.md` file to be more friendly to GitHub viewing, and removes the single-line version-specific readme files (exposes the main readme to QMK Configurator users). * info.json: update maintainer value * info.json: apply friendly formatting --- keyboards/annepro2/annepro2.c | 113 +++-- keyboards/annepro2/c15/config.h | 3 + keyboards/annepro2/c15/readme.md | 1 - keyboards/annepro2/c15/rules.mk | 52 ++- keyboards/annepro2/c18/config.h | 3 + keyboards/annepro2/c18/readme.md | 1 - keyboards/annepro2/c18/rules.mk | 52 ++- keyboards/annepro2/info.json | 386 +++--------------- .../keymaps/default-full-caps/config.h | 20 - .../keymaps/default-layer-indicators/config.h | 20 - keyboards/annepro2/keymaps/default/config.h | 20 - keyboards/annepro2/keymaps/default/rules.mk | 3 - keyboards/annepro2/readme.md | 40 +- 13 files changed, 211 insertions(+), 503 deletions(-) delete mode 100644 keyboards/annepro2/c15/readme.md delete mode 100644 keyboards/annepro2/c18/readme.md delete mode 100644 keyboards/annepro2/keymaps/default-full-caps/config.h delete mode 100644 keyboards/annepro2/keymaps/default-layer-indicators/config.h delete mode 100644 keyboards/annepro2/keymaps/default/config.h delete mode 100644 keyboards/annepro2/keymaps/default/rules.mk diff --git a/keyboards/annepro2/annepro2.c b/keyboards/annepro2/annepro2.c index ef18f83329..d5639be3ae 100644 --- a/keyboards/annepro2/annepro2.c +++ b/keyboards/annepro2/annepro2.c @@ -42,11 +42,10 @@ static const SerialConfig ble_uart_config = { static uint8_t led_mcu_wakeup[11] = {0x7b, 0x10, 0x43, 0x10, 0x03, 0x00, 0x00, 0x7d, 0x02, 0x01, 0x02}; -static uint8_t led_enabled = 1; - ble_capslock_t ble_capslock = {._dummy = {0}, .caps_lock = false}; #ifdef RGB_MATRIX_ENABLE +static uint8_t led_enabled = 1; static uint8_t current_rgb_row = 0; #endif @@ -227,69 +226,69 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { if(rgb_matrix_is_enabled()) ap2_led_disable(); else ap2_led_enable(); return true; - #endif - + case KC_AP_RGB_VAI: - if (record->event.pressed) { - if (get_mods() & MOD_MASK_SHIFT) { - rgb_matrix_increase_hue(); - return false; - } else if (get_mods() & MOD_MASK_CTRL) { - rgb_matrix_decrease_hue(); - return false; - } else { - rgb_matrix_increase_val(); - } - } + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_hue(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_hue(); + return false; + } else { + rgb_matrix_increase_val(); + } + } return true; - + case KC_AP_RGB_VAD: - if (record->event.pressed) { - if (get_mods() & MOD_MASK_SHIFT) { - rgb_matrix_increase_sat(); - return false; - } else if (get_mods() & MOD_MASK_CTRL) { - rgb_matrix_decrease_sat(); - return false; - } else { - rgb_matrix_decrease_val(); - } - } + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_sat(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_sat(); + return false; + } else { + rgb_matrix_decrease_val(); + } + } return true; - + case KC_AP_RGB_TOG: - if (record->event.pressed) { - if (get_mods() & MOD_MASK_SHIFT) { - rgb_matrix_increase_speed(); - return false; - } else if (get_mods() & MOD_MASK_CTRL) { - rgb_matrix_decrease_speed(); - return false; - } else { - if (led_enabled) { - ap2_led_disable(); - rgb_matrix_disable(); - led_enabled = 0; - } else { - ap2_led_enable(); - rgb_matrix_enable(); - led_enabled = 1; - } - return true; - } - } + if (record->event.pressed) { + if (get_mods() & MOD_MASK_SHIFT) { + rgb_matrix_increase_speed(); + return false; + } else if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_decrease_speed(); + return false; + } else { + if (led_enabled) { + ap2_led_disable(); + rgb_matrix_disable(); + led_enabled = 0; + } else { + ap2_led_enable(); + rgb_matrix_enable(); + led_enabled = 1; + } + return true; + } + } return true; - + case KC_AP_RGB_MOD: - if (record->event.pressed) { - if (get_mods() & MOD_MASK_CTRL) { - rgb_matrix_step_reverse(); - return false; - } else { - rgb_matrix_step(); - } - } + if (record->event.pressed) { + if (get_mods() & MOD_MASK_CTRL) { + rgb_matrix_step_reverse(); + return false; + } else { + rgb_matrix_step(); + } + } return true; + #endif default: break; diff --git a/keyboards/annepro2/c15/config.h b/keyboards/annepro2/c15/config.h index 012b412dc9..ff92aeea8e 100644 --- a/keyboards/annepro2/c15/config.h +++ b/keyboards/annepro2/c15/config.h @@ -46,3 +46,6 @@ #define MATRIX_COL_PINS \ { C4, C5, B10, B11, C0, A15, A8, A10, A11, A12, A13, A14, B2, B3 } + +// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK +#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/c15/readme.md b/keyboards/annepro2/c15/readme.md deleted file mode 100644 index 5fadb73909..0000000000 --- a/keyboards/annepro2/c15/readme.md +++ /dev/null @@ -1 +0,0 @@ -AnnePro2, ANSI C15 version. diff --git a/keyboards/annepro2/c15/rules.mk b/keyboards/annepro2/c15/rules.mk index 5cef8b8a87..2c518b6339 100644 --- a/keyboards/annepro2/c15/rules.mk +++ b/keyboards/annepro2/c15/rules.mk @@ -1,12 +1,3 @@ -# Anne Pro 2 -SRC = \ - matrix.c \ - annepro2_ble.c \ - ap2_led.c \ - protocol.c \ - rgb_driver.c \ - config_led.c - # MCU MCU = cortex-m0plus ARMV = 6 @@ -18,23 +9,44 @@ MCU_STARTUP = ht32f523xx BOARD = ANNEPRO2_C15 -# Options +# Bootloader selection +BOOTLOADER = custom +PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Custom RGB matrix handling +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = custom # Keys CUSTOM_MATRIX = lite -NKRO_ENABLE = no -MOUSEKEY_ENABLE = no -EXTRAKEY_ENABLE = yes KEY_LOCK_ENABLE = no -LAYOUTS = 60_ansi -# Other featues -BOOTMAGIC_ENABLE = no -CONSOLE_ENABLE = no -COMMAND_ENABLE = no +# Other features RAW_ENABLE = no MIDI_ENABLE = no VIRTSER_ENABLE = no COMBO_ENABLE = no -BOOTLOADER = custom -PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin + +LAYOUTS = 60_ansi + +# Anne Pro 2 +SRC = \ + matrix.c \ + annepro2_ble.c \ + ap2_led.c \ + protocol.c \ + rgb_driver.c \ + config_led.c diff --git a/keyboards/annepro2/c18/config.h b/keyboards/annepro2/c18/config.h index 5887333f2e..82a406a157 100644 --- a/keyboards/annepro2/c18/config.h +++ b/keyboards/annepro2/c18/config.h @@ -44,3 +44,6 @@ // inputs (columns are sampled) #define MATRIX_COL_PINS \ { C4, C5, D0, B15, C11, A15, C12, C13, A8, A10, A11, A14, D2, D3 } + +// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK +#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/c18/readme.md b/keyboards/annepro2/c18/readme.md deleted file mode 100644 index f2e2fc45b8..0000000000 --- a/keyboards/annepro2/c18/readme.md +++ /dev/null @@ -1 +0,0 @@ -AnnePro2, ANSI C18 version. diff --git a/keyboards/annepro2/c18/rules.mk b/keyboards/annepro2/c18/rules.mk index afc248dafa..60c2e08648 100644 --- a/keyboards/annepro2/c18/rules.mk +++ b/keyboards/annepro2/c18/rules.mk @@ -1,12 +1,3 @@ -# Anne Pro 2 -SRC = \ - matrix.c \ - annepro2_ble.c \ - ap2_led.c \ - protocol.c \ - rgb_driver.c \ - config_led.c - # MCU MCU = cortex-m0plus ARMV = 6 @@ -18,23 +9,44 @@ MCU_STARTUP = ht32f523xx BOARD = ANNEPRO2_C18 -# Options +# Bootloader selection +BOOTLOADER = custom +PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Custom RGB matrix handling +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = custom # Keys CUSTOM_MATRIX = lite -NKRO_ENABLE = no -MOUSEKEY_ENABLE = no -EXTRAKEY_ENABLE = yes KEY_LOCK_ENABLE = no -LAYOUTS = 60_ansi -# Other featues -BOOTMAGIC_ENABLE = yes -CONSOLE_ENABLE = no -COMMAND_ENABLE = no +# Other features RAW_ENABLE = no MIDI_ENABLE = no VIRTSER_ENABLE = no COMBO_ENABLE = no -BOOTLOADER = custom -PROGRAM_CMD = annepro2_tools --boot $(BUILD_DIR)/$(TARGET).bin + +LAYOUTS = 60_ansi + +# Anne Pro 2 +SRC = \ + matrix.c \ + annepro2_ble.c \ + ap2_led.c \ + protocol.c \ + rgb_driver.c \ + config_led.c diff --git a/keyboards/annepro2/info.json b/keyboards/annepro2/info.json index 8d6c85b5d1..95786329b2 100644 --- a/keyboards/annepro2/info.json +++ b/keyboards/annepro2/info.json @@ -1,329 +1,75 @@ { "keyboard_name": "Anne Pro 2", "url": "https://openannepro.github.io/", - "maintainer": "community", + "maintainer": "bwisn", "layouts": { "LAYOUT_60_ansi": { "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 - }, - { - "label": "Backspace", - "x": 13, - "y": 0, - "w": 2 - }, - { - "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": 2.75 - }, - { - "label": "Ctrl", - "x": 0, - "y": 4, - "w": 1.25 - }, - { - "label": "Win", - "x": 1.25, - "y": 4, - "w": 1.25 - }, - { - "label": "Alt", - "x": 2.5, - "y": 4, - "w": 1.25 - }, - { - "x": 3.75, - "y": 4, - "w": 6.25 - }, - { - "label": "Alt", - "x": 10, - "y": 4, - "w": 1.25 - }, - { - "label": "Win", - "x": 11.25, - "y": 4, - "w": 1.25 - }, - { - "label": "Menu", - "x": 12.5, - "y": 4, - "w": 1.25 - }, - { - "label": "Ctrl", - "x": 13.75, - "y": 4, - "w": 1.25 - } + {"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}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + + {"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":2.75}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Win", "x":11.25, "y":4, "w":1.25}, + {"label":"Menu", "x":12.5, "y":4, "w":1.25}, + {"label":"Ctrl", "x":13.75, "y":4, "w":1.25} ] } } diff --git a/keyboards/annepro2/keymaps/default-full-caps/config.h b/keyboards/annepro2/keymaps/default-full-caps/config.h deleted file mode 100644 index 413c5d8dc5..0000000000 --- a/keyboards/annepro2/keymaps/default-full-caps/config.h +++ /dev/null @@ -1,20 +0,0 @@ - /* Copyright 2021 OpenAnnePro 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 . - */ - -#pragma once - -// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK -#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default-layer-indicators/config.h b/keyboards/annepro2/keymaps/default-layer-indicators/config.h deleted file mode 100644 index 413c5d8dc5..0000000000 --- a/keyboards/annepro2/keymaps/default-layer-indicators/config.h +++ /dev/null @@ -1,20 +0,0 @@ - /* Copyright 2021 OpenAnnePro 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 . - */ - -#pragma once - -// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK -#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default/config.h b/keyboards/annepro2/keymaps/default/config.h deleted file mode 100644 index 413c5d8dc5..0000000000 --- a/keyboards/annepro2/keymaps/default/config.h +++ /dev/null @@ -1,20 +0,0 @@ - /* Copyright 2021 OpenAnnePro 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 . - */ - -#pragma once - -// Obins stock firmware has something similar to this already enabled, but disabled by default in QMK -#define PERMISSIVE_HOLD diff --git a/keyboards/annepro2/keymaps/default/rules.mk b/keyboards/annepro2/keymaps/default/rules.mk deleted file mode 100644 index ca1110b835..0000000000 --- a/keyboards/annepro2/keymaps/default/rules.mk +++ /dev/null @@ -1,3 +0,0 @@ -# Custom RGB matrix handling -RGB_MATRIX_ENABLE = yes -RGB_MATRIX_DRIVER = custom diff --git a/keyboards/annepro2/readme.md b/keyboards/annepro2/readme.md index e3e0b95be4..b8b3b84543 100644 --- a/keyboards/annepro2/readme.md +++ b/keyboards/annepro2/readme.md @@ -1,12 +1,10 @@ # Anne Pro 2 rev. C15 and C18 QMK firmware -## Introduction +An ANSI-layout 60% keyboard featuring Bluetooth support and per-key RGB lighting. -This is the QMK firmware repository for the Anne Pro 2 rev. C15 and C18 keyboard. - -## Layouts - -Keyboard has 60% ANSI standard layout. +* Keyboard Maintainer: [bwisn](https://github.com/bwisn) +* Hardware Supported: Anne Pro 2, [C15](c15/) and [C18](c18/) versions +* Hardware Availability: [annepro.net](https://www.annepro.net/), [Hexcore](https://www.hexcore.xyz/annepro2) ## How to compile @@ -25,26 +23,26 @@ If you want to compile the Anne Pro 2 C15 default keymap use: If you want the executable instead of compiling it yourself, [download it here](https://ci.codetector.org/job/OpenAnnePro/job/AnnePro2-Tools/job/master/). Windows and Linux versions are available. Otherwise, follow the steps below: -0. Install the latest stable `rust` toolchain using [rustup](https://rustup.rs/) -0. Also install [Visual Studio Community edition](https://visualstudio.microsoft.com/downloads/) +1. Install the latest stable `rust` toolchain using [rustup](https://rustup.rs/) +1. Also install [Visual Studio Community edition](https://visualstudio.microsoft.com/downloads/) including the C/C++ module to prevent errors while compiling -0. Download or Clone the [AnnePro2-Tools](https://github.com/OpenAnnePro/AnnePro2-Tools) project. -0. Compile the tool using -```bash -cargo build --release -``` -0. The compiled tool should be in `./target/release/annepro2_tools` (In later I will refer to this as `annepro2_tools`) +1. Download or Clone the [AnnePro2-Tools](https://github.com/OpenAnnePro/AnnePro2-Tools) project. +1. Compile the tool using + ```bash + cargo build --release + ``` + The compiled tool should be in `./target/release/annepro2_tools` (In later I will refer to this as `annepro2_tools`) ### Flashing the firmware -0. Put the keyboard into DFU/IAP mode by unplugging the keyboard, then holding ESC while plugging it back in. -0. Run annepro2_tools with the firmware you just built. -**Please substitute with the correct paths and correct bin file if you chose another keymap profile** -```bash -annepro2_tools annepro2_c15_default.bin -``` +1. Put the keyboard into DFU/IAP mode by unplugging the keyboard, then holding ESC while plugging it back in. +1. Run annepro2_tools with the firmware you just built. + **Please substitute with the correct paths and correct bin file if you chose another keymap profile.** + ```bash + annepro2_tools annepro2_c15_default.bin + ``` If the tool can't find the keyboard please double check you have the keyboard in IAP mode. -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From fdd4af9973573d5a629cf27d42ced315869cfd75 Mon Sep 17 00:00:00 2001 From: yfuku <30647434+yfuku@users.noreply.github.com> Date: Mon, 18 Apr 2022 16:37:25 +0900 Subject: [PATCH 269/699] [Keyboard] Add sandbox keyboard (#16021) Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/dailycraft/sandbox/readme.md | 26 +++ keyboards/dailycraft/sandbox/rev1/config.h | 148 ++++++++++++++++++ .../sandbox/rev1/keymaps/default/keymap.c | 34 ++++ .../sandbox/rev1/keymaps/default/readme.md | 1 + .../sandbox/rev1/keymaps/oled/keymap.c | 42 +++++ .../sandbox/rev1/keymaps/oled/readme.md | 1 + .../sandbox/rev1/keymaps/oled/rules.mk | 2 + .../sandbox/rev1/keymaps/via/keymap.c | 42 +++++ .../sandbox/rev1/keymaps/via/readme.md | 1 + .../sandbox/rev1/keymaps/via/rules.mk | 1 + keyboards/dailycraft/sandbox/rev1/rev1.c | 17 ++ keyboards/dailycraft/sandbox/rev1/rev1.h | 35 +++++ keyboards/dailycraft/sandbox/rev1/rules.mk | 0 keyboards/dailycraft/sandbox/rev2/config.h | 148 ++++++++++++++++++ .../sandbox/rev2/keymaps/default/keymap.c | 27 ++++ .../sandbox/rev2/keymaps/default/readme.md | 1 + .../sandbox/rev2/keymaps/oled/keymap.c | 43 +++++ .../sandbox/rev2/keymaps/oled/readme.md | 1 + .../sandbox/rev2/keymaps/oled/rules.mk | 2 + .../sandbox/rev2/keymaps/via/keymap.c | 42 +++++ .../sandbox/rev2/keymaps/via/readme.md | 1 + .../sandbox/rev2/keymaps/via/rules.mk | 1 + keyboards/dailycraft/sandbox/rev2/rev2.c | 17 ++ keyboards/dailycraft/sandbox/rev2/rev2.h | 37 +++++ keyboards/dailycraft/sandbox/rev2/rules.mk | 1 + keyboards/dailycraft/sandbox/rules.mk | 20 +++ keyboards/dailycraft/sandbox/sandbox.c | 45 ++++++ keyboards/dailycraft/sandbox/sandbox.h | 26 +++ 28 files changed, 762 insertions(+) create mode 100644 keyboards/dailycraft/sandbox/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev1/config.h create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/default/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/default/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/via/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/via/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rev1/rev1.c create mode 100644 keyboards/dailycraft/sandbox/rev1/rev1.h create mode 100644 keyboards/dailycraft/sandbox/rev1/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rev2/config.h create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/default/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/default/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/via/readme.md create mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/via/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rev2/rev2.c create mode 100644 keyboards/dailycraft/sandbox/rev2/rev2.h create mode 100644 keyboards/dailycraft/sandbox/rev2/rules.mk create mode 100644 keyboards/dailycraft/sandbox/rules.mk create mode 100644 keyboards/dailycraft/sandbox/sandbox.c create mode 100644 keyboards/dailycraft/sandbox/sandbox.h diff --git a/keyboards/dailycraft/sandbox/readme.md b/keyboards/dailycraft/sandbox/readme.md new file mode 100644 index 0000000000..790deba95f --- /dev/null +++ b/keyboards/dailycraft/sandbox/readme.md @@ -0,0 +1,26 @@ +# sandbox keyboard + +![sandbox keyboard](https://i.imgur.com/CaJmz28h.jpg) + +macropad + +* Keyboard Maintainer: [yfuku](https://github.com/yfuku) +* Hardware Supported: sandbox PCB, Pro Micro +* Hardware Availability: https://shop.dailycraft.jp/ + +Make example for this keyboard (after setting up your build environment): + + make dailycraft/sandbox:default + +Flashing example for this keyboard: + + make dailycraft/sandbox:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Physical reset button**: Briefly press the button on the PCB +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/dailycraft/sandbox/rev1/config.h b/keyboards/dailycraft/sandbox/rev1/config.h new file mode 100644 index 0000000000..102b8247db --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/config.h @@ -0,0 +1,148 @@ +/* +Copyright 2021 yfuku + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5946 // YF +#define PRODUCT_ID 0x0009 +#define DEVICE_VER 0x0001 +#define MANUFACTURER yfuku +#define PRODUCT sandbox + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 5 + +/* + * 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 { B5, B4 } +#define MATRIX_COL_PINS { F7, B1, B3, B2, B6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/default/keymap.c b/keyboards/dailycraft/sandbox/rev1/keymaps/default/keymap.c new file mode 100644 index 0000000000..6def745c34 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _DEFAULT, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DEFAULT] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, + KC_6, KC_7, KC_8, KC_9, KC_0 + ) + +// Layer template. +// Copy and uncomment this template to create a new layer +// [_LAYER_NAME] = LAYOUT( +// KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, +// KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +// ) +}; diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/default/readme.md b/keyboards/dailycraft/sandbox/rev1/keymaps/default/readme.md new file mode 100644 index 0000000000..7fe2318a44 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c new file mode 100644 index 0000000000..25910ef919 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _0, + _1, + _2, + _3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_0] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, + KC_6, KC_7, KC_8, KC_9, KC_0 + ), + [_1] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_2] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_3] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md new file mode 100644 index 0000000000..7fe2318a44 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md @@ -0,0 +1 @@ +# The default keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk new file mode 100644 index 0000000000..ab9d5c6ac2 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +OLED_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c b/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c new file mode 100644 index 0000000000..047eabf513 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _1, + _2, + _3, + _4 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_0] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, + KC_6, KC_7, KC_8, KC_9, KC_0 + ), + [_1] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_2] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [_3] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/via/readme.md b/keyboards/dailycraft/sandbox/rev1/keymaps/via/readme.md new file mode 100644 index 0000000000..f3c721ab10 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/via/readme.md @@ -0,0 +1 @@ +# The via keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/via/rules.mk b/keyboards/dailycraft/sandbox/rev1/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev1/rev1.c b/keyboards/dailycraft/sandbox/rev1/rev1.c new file mode 100644 index 0000000000..dccf24c746 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/rev1.c @@ -0,0 +1,17 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#include "rev1.h" diff --git a/keyboards/dailycraft/sandbox/rev1/rev1.h b/keyboards/dailycraft/sandbox/rev1/rev1.h new file mode 100644 index 0000000000..d15cffe1ae --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev1/rev1.h @@ -0,0 +1,35 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT( \ + k00, k01, k02, k03, k04, \ + k10, k11, k12, k13, k14 \ +) { \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 } \ +} diff --git a/keyboards/dailycraft/sandbox/rev1/rules.mk b/keyboards/dailycraft/sandbox/rev1/rules.mk new file mode 100644 index 0000000000..e69de29bb2 diff --git a/keyboards/dailycraft/sandbox/rev2/config.h b/keyboards/dailycraft/sandbox/rev2/config.h new file mode 100644 index 0000000000..06905afe47 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/config.h @@ -0,0 +1,148 @@ +/* +Copyright 2021 yfuku + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5946 // YF +#define PRODUCT_ID 0x0011 +#define DEVICE_VER 0x0001 +#define MANUFACTURER yfuku +#define PRODUCT sandbox rev2 + +/* key matrix size */ +#define MATRIX_ROWS 4 +#define MATRIX_COLS 5 + +/* + * 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 { B5, B4 } +#define MATRIX_COL_PINS { F7, B1, B3, B2, B6 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D2 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +//#define RGB_DI_PIN E2 +//#ifdef RGB_DI_PIN +//# define RGBLED_NUM 16 +//# define RGBLIGHT_HUE_STEP 8 +//# define RGBLIGHT_SAT_STEP 8 +//# define RGBLIGHT_VAL_STEP 8 +//# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +//# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +//# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +//#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/default/keymap.c b/keyboards/dailycraft/sandbox/rev2/keymaps/default/keymap.c new file mode 100644 index 0000000000..7fdf801662 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _DEFAULT, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_DEFAULT] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_A, KC_B, KC_C, KC_D, KC_E, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_F, KC_G, KC_H, KC_I, KC_J + ) +}; diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/default/readme.md b/keyboards/dailycraft/sandbox/rev2/keymaps/default/readme.md new file mode 100644 index 0000000000..7fe2318a44 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c new file mode 100644 index 0000000000..c72b85c79a --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c @@ -0,0 +1,43 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _0, + _1, + _2, + _3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_0] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_A, KC_B, KC_C, KC_D, KC_E, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_F, KC_G, KC_H, KC_I, KC_J + ), + [_1] = LAYOUT( + 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 + ), + [_2] = LAYOUT( + 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 + ), + [_3] = LAYOUT( + 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 + ) +}; + diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md new file mode 100644 index 0000000000..c0c3cb6eec --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md @@ -0,0 +1 @@ +# The oled keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk new file mode 100644 index 0000000000..ab9d5c6ac2 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +OLED_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c b/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c new file mode 100644 index 0000000000..c202284292 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _0, + _1, + _2, + _3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_0] = LAYOUT( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_A, KC_B, KC_C, KC_D, KC_E, + KC_6, KC_7, KC_8, KC_9, KC_0, KC_F, KC_G, KC_H, KC_I, KC_J + ), + [_1] = LAYOUT( + 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 + ), + [_2] = LAYOUT( + 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 + ), + [_3] = LAYOUT( + 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 + ) +}; diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/via/readme.md b/keyboards/dailycraft/sandbox/rev2/keymaps/via/readme.md new file mode 100644 index 0000000000..f3c721ab10 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/via/readme.md @@ -0,0 +1 @@ +# The via keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/via/rules.mk b/keyboards/dailycraft/sandbox/rev2/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev2/rev2.c b/keyboards/dailycraft/sandbox/rev2/rev2.c new file mode 100644 index 0000000000..96aa6cd314 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/rev2.c @@ -0,0 +1,17 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#include "rev2.h" diff --git a/keyboards/dailycraft/sandbox/rev2/rev2.h b/keyboards/dailycraft/sandbox/rev2/rev2.h new file mode 100644 index 0000000000..f5cc3de8a0 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/rev2.h @@ -0,0 +1,37 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT( \ + L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ + L10, L11, L12, L13, L14, R10, R11, R12, R13, R14 \ +) { \ + { L00, L01, L02, L03, L04 }, \ + { L10, L11, L12, L13, L14 }, \ + { R00, R01, R02, R03, R04 }, \ + { R10, R11, R12, R13, R14 } \ +} diff --git a/keyboards/dailycraft/sandbox/rev2/rules.mk b/keyboards/dailycraft/sandbox/rev2/rules.mk new file mode 100644 index 0000000000..d38a618090 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rev2/rules.mk @@ -0,0 +1 @@ +SPLIT_KEYBOARD = yes diff --git a/keyboards/dailycraft/sandbox/rules.mk b/keyboards/dailycraft/sandbox/rules.mk new file mode 100644 index 0000000000..b3386ed771 --- /dev/null +++ b/keyboards/dailycraft/sandbox/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +DEFAULT_FOLDER = dailycraft/sandbox/rev2 diff --git a/keyboards/dailycraft/sandbox/sandbox.c b/keyboards/dailycraft/sandbox/sandbox.c new file mode 100644 index 0000000000..9f9aa48190 --- /dev/null +++ b/keyboards/dailycraft/sandbox/sandbox.c @@ -0,0 +1,45 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#include "sandbox.h" + +#ifdef OLED_ENABLE +bool oled_task_user(void) { + if (!oled_task_user()) { return false; } + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_ln_P(PSTR("Layer: Default"), false); + break; + case 1: + oled_write_ln_P(PSTR("Layer: 1"), false); + break; + case 2: + oled_write_ln_P(PSTR("Layer: 2"), false); + break; + case 3: + oled_write_ln_P(PSTR("Layer: 3"), false); + break; + default: + oled_write_ln_P(PSTR("Layer: Undefined"), false); + } + + return true; +} + +oled_rotation_t oled_init_kb(oled_rotation_t rotation) { + return OLED_ROTATION_180; +} +#endif diff --git a/keyboards/dailycraft/sandbox/sandbox.h b/keyboards/dailycraft/sandbox/sandbox.h new file mode 100644 index 0000000000..e9c9ff99c3 --- /dev/null +++ b/keyboards/dailycraft/sandbox/sandbox.h @@ -0,0 +1,26 @@ +/* Copyright 2021 yfuku + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#ifdef KEYBOARD_dailycraft_sandbox_rev1 +# include "rev1.h" +#endif +#ifdef KEYBOARD_dailycraft_sandbox_rev2 +# include "rev2.h" +#endif From 5b6faa173bef50f7aef146393a2033ed5101c842 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Szczepaniak?= Date: Mon, 18 Apr 2022 11:07:36 +0200 Subject: [PATCH 270/699] Add customizable snake and knight animation increments (#16337) --- quantum/rgblight/rgblight.c | 8 ++++---- quantum/rgblight/rgblight.h | 8 ++++++++ 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index 1f8b68ee59..dc5757cb00 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -1273,19 +1273,19 @@ void rgblight_effect_snake(animation_status_t *anim) { } rgblight_set(); if (increment == 1) { - if (pos - 1 < 0) { + if (pos - RGBLIGHT_EFFECT_SNAKE_INCREMENT < 0) { pos = rgblight_ranges.effect_num_leds - 1; # if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC) anim->pos = 0; # endif } else { - pos -= 1; + pos -= RGBLIGHT_EFFECT_SNAKE_INCREMENT; # if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC) anim->pos = 1; # endif } } else { - pos = (pos + 1) % rgblight_ranges.effect_num_leds; + pos = (pos + RGBLIGHT_EFFECT_SNAKE_INCREMENT) % rgblight_ranges.effect_num_leds; # if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC) anim->pos = pos; # endif @@ -1299,7 +1299,7 @@ __attribute__((weak)) const uint8_t RGBLED_KNIGHT_INTERVALS[] PROGMEM = {127, 63 void rgblight_effect_knight(animation_status_t *anim) { static int8_t low_bound = 0; static int8_t high_bound = RGBLIGHT_EFFECT_KNIGHT_LENGTH - 1; - static int8_t increment = 1; + static int8_t increment = RGBLIGHT_EFFECT_KNIGHT_INCREMENT; uint8_t i, cur; # if defined(RGBLIGHT_SPLIT) && !defined(RGBLIGHT_SPLIT_NO_ANIMATION_SYNC) diff --git a/quantum/rgblight/rgblight.h b/quantum/rgblight/rgblight.h index 189c4d18b8..a08b9a7b6b 100644 --- a/quantum/rgblight/rgblight.h +++ b/quantum/rgblight/rgblight.h @@ -126,10 +126,18 @@ enum RGBLIGHT_EFFECT_MODE { # define RGBLIGHT_EFFECT_SNAKE_LENGTH 4 #endif +#ifndef RGBLIGHT_EFFECT_SNAKE_INCREMENT +# define RGBLIGHT_EFFECT_SNAKE_INCREMENT 1 +#endif + #ifndef RGBLIGHT_EFFECT_KNIGHT_LENGTH # define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3 #endif +#ifndef RGBLIGHT_EFFECT_KNIGHT_INCREMENT +# define RGBLIGHT_EFFECT_KNIGHT_INCREMENT 1 +#endif + #ifndef RGBLIGHT_EFFECT_KNIGHT_OFFSET # define RGBLIGHT_EFFECT_KNIGHT_OFFSET 0 #endif From 5fe3b9ffa5bf1179c288f77a16e763e9fecaca0b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20A=2E=20Volpato?= Date: Mon, 18 Apr 2022 06:07:49 -0300 Subject: [PATCH 271/699] [Keyboard] SharkPCB release Beta compatibility (#16713) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/acheron/shark/alpha/alpha.c | 16 ++ keyboards/acheron/shark/alpha/alpha.h | 39 +++ keyboards/acheron/shark/{ => alpha}/config.h | 0 keyboards/acheron/shark/{ => alpha}/info.json | 0 .../{ => alpha}/keymaps/ajp10304/readme.md | 0 .../{ => alpha}/keymaps/default/keymap.c | 0 .../shark/{ => alpha}/keymaps/via/keymap.c | 0 .../shark/{ => alpha}/keymaps/via/rules.mk | 0 keyboards/acheron/shark/{ => alpha}/rules.mk | 0 keyboards/acheron/shark/beta/beta.c | 32 +++ keyboards/acheron/shark/beta/beta.h | 31 ++ keyboards/acheron/shark/beta/chconf.h | 25 ++ keyboards/acheron/shark/beta/config.h | 66 +++++ keyboards/acheron/shark/beta/halconf.h | 24 ++ .../shark/beta/keymaps/default/keymap.c | 43 +++ .../shark/beta/keymaps/gondolindrim/keymap.c | 265 ++++++++++++++++++ .../shark/beta/keymaps/gondolindrim/rules.mk | 1 + .../acheron/shark/beta/keymaps/via/keymap.c | 43 +++ .../acheron/shark/beta/keymaps/via/rules.mk | 1 + keyboards/acheron/shark/beta/mcuconf.h | 44 +++ keyboards/acheron/shark/beta/rules.mk | 26 ++ keyboards/acheron/shark/readme.md | 47 +++- keyboards/acheron/shark/shark.c | 28 +- keyboards/acheron/shark/shark.h | 40 +-- 24 files changed, 712 insertions(+), 59 deletions(-) create mode 100644 keyboards/acheron/shark/alpha/alpha.c create mode 100644 keyboards/acheron/shark/alpha/alpha.h rename keyboards/acheron/shark/{ => alpha}/config.h (100%) rename keyboards/acheron/shark/{ => alpha}/info.json (100%) rename keyboards/acheron/shark/{ => alpha}/keymaps/ajp10304/readme.md (100%) rename keyboards/acheron/shark/{ => alpha}/keymaps/default/keymap.c (100%) rename keyboards/acheron/shark/{ => alpha}/keymaps/via/keymap.c (100%) rename keyboards/acheron/shark/{ => alpha}/keymaps/via/rules.mk (100%) rename keyboards/acheron/shark/{ => alpha}/rules.mk (100%) create mode 100644 keyboards/acheron/shark/beta/beta.c create mode 100644 keyboards/acheron/shark/beta/beta.h create mode 100644 keyboards/acheron/shark/beta/chconf.h create mode 100644 keyboards/acheron/shark/beta/config.h create mode 100644 keyboards/acheron/shark/beta/halconf.h create mode 100644 keyboards/acheron/shark/beta/keymaps/default/keymap.c create mode 100755 keyboards/acheron/shark/beta/keymaps/gondolindrim/keymap.c create mode 100644 keyboards/acheron/shark/beta/keymaps/gondolindrim/rules.mk create mode 100644 keyboards/acheron/shark/beta/keymaps/via/keymap.c create mode 100644 keyboards/acheron/shark/beta/keymaps/via/rules.mk create mode 100644 keyboards/acheron/shark/beta/mcuconf.h create mode 100644 keyboards/acheron/shark/beta/rules.mk diff --git a/keyboards/acheron/shark/alpha/alpha.c b/keyboards/acheron/shark/alpha/alpha.c new file mode 100644 index 0000000000..e841f3fbd5 --- /dev/null +++ b/keyboards/acheron/shark/alpha/alpha.c @@ -0,0 +1,16 @@ +/* Copyright 2019 Álvaro "Gondolindrim" Volpato + * + * 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 . + */ +#include "alpha.h" diff --git a/keyboards/acheron/shark/alpha/alpha.h b/keyboards/acheron/shark/alpha/alpha.h new file mode 100644 index 0000000000..d58b72548a --- /dev/null +++ b/keyboards/acheron/shark/alpha/alpha.h @@ -0,0 +1,39 @@ +/* Copyright 2019 Álvaro "Gondolindrim" Volpato + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_ortho_4x12( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B \ +) \ +{ \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B } \ +} diff --git a/keyboards/acheron/shark/config.h b/keyboards/acheron/shark/alpha/config.h similarity index 100% rename from keyboards/acheron/shark/config.h rename to keyboards/acheron/shark/alpha/config.h diff --git a/keyboards/acheron/shark/info.json b/keyboards/acheron/shark/alpha/info.json similarity index 100% rename from keyboards/acheron/shark/info.json rename to keyboards/acheron/shark/alpha/info.json diff --git a/keyboards/acheron/shark/keymaps/ajp10304/readme.md b/keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md similarity index 100% rename from keyboards/acheron/shark/keymaps/ajp10304/readme.md rename to keyboards/acheron/shark/alpha/keymaps/ajp10304/readme.md diff --git a/keyboards/acheron/shark/keymaps/default/keymap.c b/keyboards/acheron/shark/alpha/keymaps/default/keymap.c similarity index 100% rename from keyboards/acheron/shark/keymaps/default/keymap.c rename to keyboards/acheron/shark/alpha/keymaps/default/keymap.c diff --git a/keyboards/acheron/shark/keymaps/via/keymap.c b/keyboards/acheron/shark/alpha/keymaps/via/keymap.c similarity index 100% rename from keyboards/acheron/shark/keymaps/via/keymap.c rename to keyboards/acheron/shark/alpha/keymaps/via/keymap.c diff --git a/keyboards/acheron/shark/keymaps/via/rules.mk b/keyboards/acheron/shark/alpha/keymaps/via/rules.mk similarity index 100% rename from keyboards/acheron/shark/keymaps/via/rules.mk rename to keyboards/acheron/shark/alpha/keymaps/via/rules.mk diff --git a/keyboards/acheron/shark/rules.mk b/keyboards/acheron/shark/alpha/rules.mk similarity index 100% rename from keyboards/acheron/shark/rules.mk rename to keyboards/acheron/shark/alpha/rules.mk diff --git a/keyboards/acheron/shark/beta/beta.c b/keyboards/acheron/shark/beta/beta.c new file mode 100644 index 0000000000..597dc78548 --- /dev/null +++ b/keyboards/acheron/shark/beta/beta.c @@ -0,0 +1,32 @@ +/* Copyright 2020 Gondolindrim + * + * 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 . + */ + +#include "beta.h" +void board_init(void) { + setPinInput(B6); + setPinInput(B7); +} + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if(!encoder_update_user(index, clockwise)) return false; + if (index == 0) { + if (clockwise) tap_code_delay(KC_VOLU, 10); + else tap_code_delay(KC_VOLD, 10); + } + return true; +} +#endif diff --git a/keyboards/acheron/shark/beta/beta.h b/keyboards/acheron/shark/beta/beta.h new file mode 100644 index 0000000000..1002659d3d --- /dev/null +++ b/keyboards/acheron/shark/beta/beta.h @@ -0,0 +1,31 @@ +/* Copyright 2020 Gondolindrim + * + * 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 . + */ + +#pragma once +#include "quantum.h" + +#define LAYOUT_ortho_4x12( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B \ +)\ +{\ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B } \ +} diff --git a/keyboards/acheron/shark/beta/chconf.h b/keyboards/acheron/shark/beta/chconf.h new file mode 100644 index 0000000000..cbbae31079 --- /dev/null +++ b/keyboards/acheron/shark/beta/chconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_OPTIMIZE_SPEED FALSE + +#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE + +#include_next diff --git a/keyboards/acheron/shark/beta/config.h b/keyboards/acheron/shark/beta/config.h new file mode 100644 index 0000000000..54fa270336 --- /dev/null +++ b/keyboards/acheron/shark/beta/config.h @@ -0,0 +1,66 @@ +/* +Copyright 2020 Gondolindrim + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xAC11 +#define PRODUCT_ID 0x5369 // For Shark+1 +#define DEVICE_VER 0x0002 +#define MANUFACTURER AcheronProject +#define PRODUCT SharkPCB rev. Beta + +#define MATRIX_ROWS 4 +#define MATRIX_COLS 12 + +#define MATRIX_COL_PINS { A5 , A10, C13, B9 , B8 , B5 , B4 , B3 , A15, A0 , A1 , A2 } +#define MATRIX_ROW_PINS { A8 , B14, A4 , A3 } +#define DIODE_DIRECTION COL2ROW + +#define DEBOUNCE 5 + +#define LOCKING_SUPPORT_ENABLE +#define LOCKING_RESYNC_ENABLE + +#define BACKLIGHT_PIN A6 +#define BACKLIGHT_PWM_DRIVER PWMD3 +#define BACKLIGHT_PWM_CHANNEL 1 +#define BACKLIGHT_PAL_MODE 2 +#define BACKLIGHT_LEVELS 20 +#define BACKLIGHT_BREATHING +#define BREATHING_PERIOD 5 +#define BACKLIGHT_ON_STATE 1 + +#define STM32_HSECLK 8000000 + +#define RGB_DI_PIN B15 +#define RGBLED_NUM 24 +#define RGBLIGHT_ANIMATIONS + +#define WS2812_PWM_COMPLEMENTARY_OUTPUT +#define WS2812_PWM_DRIVER PWMD1 +#define WS2812_PWM_CHANNEL 3 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_STREAM STM32_DMA2_STREAM5 +#define WS2812_DMA_CHANNEL 6 + +#define ENCODERS_PAD_A { C15 } +#define ENCODERS_PAD_B { C14 } + +#define EEPROM_I2C_24LC256 diff --git a/keyboards/acheron/shark/beta/halconf.h b/keyboards/acheron/shark/beta/halconf.h new file mode 100644 index 0000000000..ebdb4954a1 --- /dev/null +++ b/keyboards/acheron/shark/beta/halconf.h @@ -0,0 +1,24 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_PAL TRUE + +#define HAL_USE_I2C TRUE + +#include_next diff --git a/keyboards/acheron/shark/beta/keymaps/default/keymap.c b/keyboards/acheron/shark/beta/keymaps/default/keymap.c new file mode 100644 index 0000000000..5cf5ac40da --- /dev/null +++ b/keyboards/acheron/shark/beta/keymaps/default/keymap.c @@ -0,0 +1,43 @@ +/* Copyright 2019 + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x12( + KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_BSPC, + KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT, + KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_ENT , + KC_LCTL , KC_LALT , KC_LGUI , KC_NO , MO(1) , KC_SPC , KC_SPC , MO(2) , KC_LEFT , KC_DOWN , KC_UP , KC_RGHT + ), + [1] = LAYOUT_ortho_4x12( + 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 , 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 + ), + [2] = LAYOUT_ortho_4x12( + 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 , 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 + ), + [3] = LAYOUT_ortho_4x12( + 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 , 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 + ) +}; diff --git a/keyboards/acheron/shark/beta/keymaps/gondolindrim/keymap.c b/keyboards/acheron/shark/beta/keymaps/gondolindrim/keymap.c new file mode 100755 index 0000000000..cae98411d6 --- /dev/null +++ b/keyboards/acheron/shark/beta/keymaps/gondolindrim/keymap.c @@ -0,0 +1,265 @@ +/* +Copyright 2020 Álvaro "Gondolindrim" Volpato + +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 . +*/ +#include QMK_KEYBOARD_H +#include "config_common.h" + +#define MEDIA_KEY_DELAY 10 +#define ALT_TAB_DELAY 1000 + +// Persistent encoder modes: the current encoder mode is written into EEPROM memory, and retrieved at the keyboard initialization. This means the current encoder mode is persistent even if the keyboard is reset or turned off +#define PERSISTENT_ENCODER_MODES + +#define ENCODER_MODE_CHANGE_DELAY 500 + +// Defining special keycodes +enum keyboard_keycodes { + ECLICK = SAFE_RANGE, // Encoder click + ALTTABF , // ALT-TAB forward + ALTTABB , // ALT-TAB backwards + ALTTABC , // For alt-tab-click + ENCMUP , // Encoder mode up + ENCMDN , // Encoder mode down + NEW_SAFE_RANGE +}; + +// Creates sample keyevents and keyrecords to be used in the processing of the custom keycodes. Their time should be resampled everytime they are used; their cols and rows are set to be "impossible", that is, outside the normal key matrix bounds. +const keyevent_t sample_pressed_keyevent = { + .key = (keypos_t){.row = 5, .col = 13}, + .pressed = true, + .time = 0 +}; + +keyrecord_t sample_pressed_keyrecord = { + .event = sample_pressed_keyevent +}; + +const keyevent_t sample_released_keyevent = { + .key = (keypos_t){.row = 5, .col = 13}, + .pressed = false, + .time = 0 +}; + +keyrecord_t sample_released_keyrecord = { + .event = sample_released_keyevent +}; + +// tap_process_record_user calls process_record_user with the pressed and released sample keyrecords with a delay of MEDIA_KEY_DELAY. The idea is to allow custom keycodes a simulation of a key press and release, allowing them to be treated in process_record_user. This, in turn, allows the custom keycodes to be used both in the encoder callback and the keyboard keymap. +uint16_t temp_timer = 0; +void tap_process_record_user(uint16_t keycode) +{ + temp_timer = timer_read(); + sample_pressed_keyrecord.event.time = timer_read(); + process_record_user( keycode, &sample_pressed_keyrecord ); + while (timer_elapsed(temp_timer) < MEDIA_KEY_DELAY); + sample_released_keyrecord.event.time = timer_read(); + process_record_user( keycode, &sample_released_keyrecord ); +} + +// process_special_keycode is a function that distinguishes between the native keycodes and the ones custom-defined here. Normal keycodes are tapped, while keycodes in the SAFE_RANGE - NEW_SAFE_RANGE interval are treated with tap_process_record_user. +void process_special_keycode(uint16_t keycode) { + if (SAFE_RANGE <= keycode && keycode < NEW_SAFE_RANGE) tap_process_record_user(keycode); + else tap_code(keycode); +} + +uint16_t encoder_click_delay = ENCODER_MODE_CHANGE_DELAY; + +uint8_t startup_color[3] = {0xFF,0xFF,0xFF}; + +typedef struct _encoder_mode_t { + uint8_t indicator_color[3]; + uint16_t clockwise_key[4]; + uint16_t counterclockwise_key[4]; + uint16_t clicked_key[4] ; + uint16_t hold_key; +} encoder_mode_t; + +encoder_mode_t encoder_modes[] = { + { .indicator_color = {0x22,0x00,0xFF} , .clockwise_key = {KC_VOLU, KC_VOLU, ENCMUP, KC_VOLU}, .counterclockwise_key = {KC_VOLD, KC_VOLD, ENCMDN, KC_VOLD}, .clicked_key = {KC_MUTE, KC_MPLY, KC_MUTE, KC_MUTE}, .hold_key = ENCMUP }, + { .indicator_color = {0x00,0x33,0xFF} , .clockwise_key = {KC_WH_D, KC_WH_D, ENCMUP, KC_WH_D}, .counterclockwise_key = {KC_WH_U, KC_WH_U, ENCMDN, KC_WH_U}, .clicked_key = {KC_BTN1, KC_BTN1, KC_BTN1, KC_BTN1}, .hold_key = ENCMUP }, + { .indicator_color = {0xFF,0x88,0x00} , .clockwise_key = {ALTTABF, ALTTABF, ENCMUP, ALTTABF}, .counterclockwise_key = {ALTTABB, ALTTABB, ENCMDN, ALTTABB}, .clicked_key = {ALTTABC, ALTTABC, ALTTABC, ALTTABC}, .hold_key = ENCMUP } + // Insert your custom encoder mode here +}; + +#define NUM_ENCODER_MODES (sizeof(encoder_modes)/sizeof(encoder_modes[0])) + +// This counter is used to track what encoder mode is being used at a certain time +int encoder_mode_count = 0; + + +#ifdef PERSISTENT_ENCODER_MODES +typedef union { + uint32_t raw; + struct { + int user_encoder_mode_count; +}; +} user_config_t; + +user_config_t user_config; +#endif + +void set_indicator_colors(uint8_t color[3]){ + rgblight_setrgb(color[0], color[1], color[2]); +} + +// Board init: RGB indicator is set to startup_color +void keyboard_pre_init_user(void){ + set_indicator_colors(startup_color); +}; + +void keyboard_post_init_user(void){ +#ifdef PERSISTENT_ENCODER_MODES + user_config.raw = eeconfig_read_user(); + encoder_mode_count = user_config.user_encoder_mode_count ; +#else + encoder_mode_count = 0; +#endif + set_indicator_colors(encoder_modes[ encoder_mode_count ].indicator_color); +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x12( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, ECLICK , + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , + KC_LCTL, KC_LALT, KC_LGUI, _______, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + [1] = LAYOUT_ortho_4x12( + 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, 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 + ), + [2] = LAYOUT_ortho_4x12( + 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, 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 + ), + [3] = LAYOUT_ortho_4x12( + 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, 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 + ) +}; + +// ------------------------------------------------------------------------------------------------ + +bool is_alt_tab_active = false; // Flag to check if alt tab is active +uint32_t alt_tab_timer = 0; // Time trigger for alt tab +uint16_t mapped_code = 0; +uint32_t held_keycode_timer = 0; + +int current_layer = 0 ; // Updated in layer_state_set_user each time a layer change is made + +void cycle_encoder_mode(bool forward){ + if (forward) encoder_mode_count++ ; // Shifts encoder mode forward + else encoder_mode_count-- ; + if (encoder_mode_count == -1) encoder_mode_count = NUM_ENCODER_MODES - 1; + // Shifts encoder mode backward + encoder_mode_count = encoder_mode_count % NUM_ENCODER_MODES ; // This makes sure encoder_mode_count keeps cycling between 0,1,...,NUM_ENCODER_MODES and doesnt eventually overflow +#ifdef PERSISTENT_ENCODER_MODES + user_config.user_encoder_mode_count = encoder_mode_count ; + eeconfig_update_user(user_config.raw); +#endif + set_indicator_colors( encoder_modes[ encoder_mode_count ].indicator_color ); // Set indicator color to the corresponding defined color +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + process_special_keycode(clockwise ? encoder_modes[ encoder_mode_count ].clockwise_key[ current_layer ] : encoder_modes[ encoder_mode_count ].counterclockwise_key[ current_layer ]); + return false; +} + +uint32_t held_click_timer = 0; +bool is_click_held = false; +bool is_shift_held = false; +bool automatic_hold_cycle = false; // This flag registers if the encoder hold was automatically cycled + +// This bool records if LALT is pressed or not. Due to the automatic disabling of the ALT-TAB of the ALTTABS custom keystroke, the automatic disabling can un-register KC_LALT even when the LALT key is phisically pressed. Hence there needs to be two bools: one that keebs track of the ALT-TAB activity and one that keeps track of LALT so that the automatic disabling will not disable LALT if it is phisically pressed. +bool is_lalt_pressed = false; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_LSFT: + case KC_RSFT: + if (record->event.pressed) is_shift_held = true; + else is_shift_held = false; + return true; + case ECLICK: + // Checks if the encoder has been pressed; if so, sets the corresponding flag and starts the corresponding timer + if (record->event.pressed) { + is_click_held = true; + held_click_timer = timer_read32(); + // Checks if the encoder has been released: samples the duration of the encoder push; if this time was less than the encoder_click_delay, processes the clicked key. If it was bigger, processes the hold key. This behavior is adjusted using the ENCODER_MODE_CHANGE_DELAY macro. There is an exception made when automatic_hold_cycle is true; this means that the encoder push has been pressed enough to trigger a hold cycle. This case is taken care of in the housekeeping routine, where the held key is triggered and the timer reset. Hence the automatic_hold_cycle needs to be checked because without this check the function will trigger the clicked key after the hold cycle has been cycled more than once. + } else { + is_click_held = false; + if (timer_elapsed32(held_click_timer) < encoder_click_delay && !automatic_hold_cycle ) process_special_keycode( encoder_modes[ encoder_mode_count ].clicked_key[ current_layer ] ) ; + automatic_hold_cycle = false; + } + return true; // Skip all further processing of this key + case KC_LALT: // If this is not defined, if the encoder is activated in the alt-tab mode while the LALT key is pressed, the menu goes away. + if (record->event.pressed) is_lalt_pressed = true; + else is_lalt_pressed = false; + return true; + case ENCMUP: + case ENCMDN: + if (record->event.pressed) cycle_encoder_mode(keycode == ENCMUP); // If keycode == ENCMUP the expression returns true and the cycle function cycles the modes forward. If not, then cycles backwards. + return false; + case ALTTABF: + case ALTTABB: + if (record->event.pressed) { + if (!is_alt_tab_active) { + is_alt_tab_active = true; + register_code(KC_LALT); + + } + tap_code16(keycode == ALTTABF ? KC_TAB : S(KC_TAB)); // Due to S(KC_TAB), the 16-bit tap_code16 is needed. + alt_tab_timer = timer_read32(); + } + return true; + case ALTTABC: + if (record->event.pressed) { + if (is_alt_tab_active) { + if (!is_lalt_pressed) unregister_code(KC_LALT); + is_alt_tab_active = false; + } + } + return false; + default: + return true; // Process all other keycodes normally + } +} + +void housekeeping_task_user(void) { + if (is_alt_tab_active) { + if (is_lalt_pressed) alt_tab_timer = timer_read32(); + else if (timer_elapsed32(alt_tab_timer) > ALT_TAB_DELAY) { + unregister_code(KC_LALT); + is_alt_tab_active = false; + } + } +/* This piece of the code checks for the encoder push timer. If the encoder push interval was less than encoder_click_delay then it is automatically processed by process_record_user by triggering the current mode's click key. However, if the encoder push is held for more time than the defined delay, then the encoder hold "cycles", that is, gets activated and the timer needs to be reset. This does three things: +- (1) Sets the automatic_hold_cycle flag which prevents process_record_user from triggering the click key when the push is released +- (2) Processes the current mode's hold key in process_record_user +- (3) Resets the click timer +*/ + if (is_click_held && timer_elapsed32(held_click_timer) > encoder_click_delay ){ + automatic_hold_cycle = true; + process_special_keycode( encoder_modes[ encoder_mode_count ].hold_key ); + held_click_timer = timer_read32(); + } +} diff --git a/keyboards/acheron/shark/beta/keymaps/gondolindrim/rules.mk b/keyboards/acheron/shark/beta/keymaps/gondolindrim/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/acheron/shark/beta/keymaps/gondolindrim/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/acheron/shark/beta/keymaps/via/keymap.c b/keyboards/acheron/shark/beta/keymaps/via/keymap.c new file mode 100644 index 0000000000..5cf5ac40da --- /dev/null +++ b/keyboards/acheron/shark/beta/keymaps/via/keymap.c @@ -0,0 +1,43 @@ +/* Copyright 2019 + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_4x12( + KC_TAB , KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , KC_BSPC, + KC_ESC , KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , KC_SCLN , KC_QUOT, + KC_LSFT , KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM , KC_DOT , KC_SLSH , KC_ENT , + KC_LCTL , KC_LALT , KC_LGUI , KC_NO , MO(1) , KC_SPC , KC_SPC , MO(2) , KC_LEFT , KC_DOWN , KC_UP , KC_RGHT + ), + [1] = LAYOUT_ortho_4x12( + 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 , 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 + ), + [2] = LAYOUT_ortho_4x12( + 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 , 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 + ), + [3] = LAYOUT_ortho_4x12( + 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 , 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 + ) +}; diff --git a/keyboards/acheron/shark/beta/keymaps/via/rules.mk b/keyboards/acheron/shark/beta/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/acheron/shark/beta/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/acheron/shark/beta/mcuconf.h b/keyboards/acheron/shark/beta/mcuconf.h new file mode 100644 index 0000000000..35d7e95f57 --- /dev/null +++ b/keyboards/acheron/shark/beta/mcuconf.h @@ -0,0 +1,44 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE +#undef STM32_PPRE1 +#undef STM32_PPRE2 + +#define STM32_PLLM_VALUE 4 +#define STM32_PLLN_VALUE 96 +#define STM32_PLLP_VALUE 2 +#define STM32_PLLQ_VALUE 4 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV1 + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +#undef STM32_PWM_USE_ADVANCED +#define STM32_PWM_USE_ADVANCED TRUE + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE + +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE diff --git a/keyboards/acheron/shark/beta/rules.mk b/keyboards/acheron/shark/beta/rules.mk new file mode 100644 index 0000000000..928ad2d49a --- /dev/null +++ b/keyboards/acheron/shark/beta/rules.mk @@ -0,0 +1,26 @@ +MCU = STM32F411 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +BACKLIGHT_DRIVER = pwm +LTO_ENABLE = no +ENCODER_ENABLE = yes + +LAYOUTS = ortho_4x12 +EEPROM_DRIVER = i2c + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE diff --git a/keyboards/acheron/shark/readme.md b/keyboards/acheron/shark/readme.md index 962a73c6d1..d805571ebb 100644 --- a/keyboards/acheron/shark/readme.md +++ b/keyboards/acheron/shark/readme.md @@ -1,17 +1,46 @@ -# Acheron Aχξρων 40-SM-O-MX-TH-WI (Codename "SharkPCB") QMK firmware +# SharkPCB QMK firmware -

- -

+![sharkpcb](https://acheronproject.com/images/shark/shark_beta_pic3_small.jpg) -This is the QMK firmware repository for the Shark, updated until [revision Alpha](https://github.com/Gondolindrim/SharkPCB/releases/tag/Alpha). +The SharkPCB is an open-source ortholinear 40% layout designed by Gondolindrim for the AcheronProject. -The SharkPCB is an Open-Hardware guidelines compliant PCB which files can be found at [this link](https://github.com/Gondolindrim/SharkPCB). Its designer and maintainer is [Gondolindrim](https://github.com/Gondolindrim). +* Keyboard Maintainer: [Gondolindrim](https://github.com/gondolindrim) +* Hardware Availability: you can get release Beta SharkPCBs using the JLCPCB manufacturer using the files at [its documentation](http:/acheronproject.com/pcbs/shark/shark/) -See the [AcheronDocs](https://gondolindrim.github.io/AcheronDocs/shark/intro.html) page for the SharkPCB full documentation. +## How to flash -Make example for this keyboard (after setting up your build environment): +### Enter bootloader - make acheron/shark:default +### Release Alpha: + +The DFU state in the bootloader can be accessed in 2 ways: + +* **Bootmagic reset**: hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: press the button on the back of the PCB +* **Keycode in layout**: press the key mapped to `RESET` if it is available (ESC key at layer 1 in the default layout) + +### Release Beta: + +The DFU state in the bootloader can be accessed in 3 ways: + +* **Bootmagic reset**: hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: press the button on the back of the PCB, for at least five seconds +* **Keycode in layout**: press the key mapped to `RESET` if it is available (ESC key at layer 1 in the default layout) + +## Compile firmware + +### Release Alpha + +After accessing the DFU state in your PCB, build the default layout using: + + make acheron/shark/alpha:default + +### Release Beta + +After accessing the DFU state in your PCB, build the default layout using: + + make acheron/shark/beta:default + +Then download the resulting binary `*bin` file using `dfu-util` or QMK Toolbox. See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/acheron/shark/shark.c b/keyboards/acheron/shark/shark.c index ab607edae1..1a660019e2 100644 --- a/keyboards/acheron/shark/shark.c +++ b/keyboards/acheron/shark/shark.c @@ -1,16 +1,14 @@ -/* Copyright 2019 Álvaro "Gondolindrim" Volpato - * - * 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 . - */ + /* Copyright 2022 Álvaro "Gondolindrim" Volpato + * + * 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. + */ + #include "shark.h" diff --git a/keyboards/acheron/shark/shark.h b/keyboards/acheron/shark/shark.h index d58b72548a..0f65419885 100644 --- a/keyboards/acheron/shark/shark.h +++ b/keyboards/acheron/shark/shark.h @@ -1,39 +1,9 @@ -/* Copyright 2019 Álvaro "Gondolindrim" Volpato - * - * 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 . - */ #pragma once #include "quantum.h" -/* This a shortcut to help you visually see your layout. - * - * The first section contains all of the arguments representing the physical - * layout of the board and position of the keys. - * - * The second converts the arguments into a two-dimensional array which - * represents the switch matrix. - */ -#define LAYOUT_ortho_4x12( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, \ - K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B \ -) \ -{ \ - { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B }, \ - { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B } \ -} +#if defined(KEYBOARD_acheron_shark_alpha) + #include "alpha.h" +#elif defined(KEYBOARD_acheron_shark_beta) + #include "beta.h" +#endif From c6de26fc6fd26d6d66a60992b4ed32b6aa38ca05 Mon Sep 17 00:00:00 2001 From: Brandon Claveria <48102030+swiftrax@users.noreply.github.com> Date: Mon, 18 Apr 2022 02:11:11 -0700 Subject: [PATCH 272/699] [Keyboard] Add digicarpice (#16791) Co-authored-by: Drashna Jaelre Co-authored-by: swiftrax --- .../handwired/swiftrax/digicarpice/config.h | 44 ++++++++++++++++ .../swiftrax/digicarpice/digicarpice.c | 17 +++++++ .../swiftrax/digicarpice/digicarpice.h | 51 +++++++++++++++++++ .../handwired/swiftrax/digicarpice/info.json | 13 +++++ .../digicarpice/keymaps/default/keymap.c | 34 +++++++++++++ .../swiftrax/digicarpice/keymaps/via/keymap.c | 48 +++++++++++++++++ .../swiftrax/digicarpice/keymaps/via/rules.mk | 1 + .../handwired/swiftrax/digicarpice/readme.md | 21 ++++++++ .../handwired/swiftrax/digicarpice/rules.mk | 18 +++++++ 9 files changed, 247 insertions(+) create mode 100644 keyboards/handwired/swiftrax/digicarpice/config.h create mode 100644 keyboards/handwired/swiftrax/digicarpice/digicarpice.c create mode 100644 keyboards/handwired/swiftrax/digicarpice/digicarpice.h create mode 100644 keyboards/handwired/swiftrax/digicarpice/info.json create mode 100644 keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c create mode 100644 keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c create mode 100644 keyboards/handwired/swiftrax/digicarpice/keymaps/via/rules.mk create mode 100644 keyboards/handwired/swiftrax/digicarpice/readme.md create mode 100644 keyboards/handwired/swiftrax/digicarpice/rules.mk diff --git a/keyboards/handwired/swiftrax/digicarpice/config.h b/keyboards/handwired/swiftrax/digicarpice/config.h new file mode 100644 index 0000000000..30e62655fb --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2022 Swiftrax + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x04D8 +#define PRODUCT_ID 0xE79A +#define DEVICE_VER 0x0001 +#define MANUFACTURER Swiftrax +#define PRODUCT DigiCarpice +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +// ROWS: Top to bottom, COLS: Left to right + +#define MATRIX_ROW_PINS { F0, D5, D7, D6, D4 } +#define MATRIX_COL_PINS { F1, F4, F5, F6, F7, C7, D3, D2, D1, D0, B7, B3, B2, B1, B0 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 diff --git a/keyboards/handwired/swiftrax/digicarpice/digicarpice.c b/keyboards/handwired/swiftrax/digicarpice/digicarpice.c new file mode 100644 index 0000000000..c40a20a1f0 --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/digicarpice.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 Swiftrax + +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 . +*/ +#include "digicarpice.h" diff --git a/keyboards/handwired/swiftrax/digicarpice/digicarpice.h b/keyboards/handwired/swiftrax/digicarpice/digicarpice.h new file mode 100644 index 0000000000..c8baf3e2f8 --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/digicarpice.h @@ -0,0 +1,51 @@ +/* +Copyright 2022 Swiftrax + +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 . +*/ +#pragma once + +#include "quantum.h" + +#define K_NO KC_NO + +#define LAYOUT_unified_bs( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214,\ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K404, K407, K409, K411, K412, K413, K414 \ +) \ +{ \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K_NO, K213, K214 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K_NO }, \ + { K400, K401, K402, K_NO, K404, K_NO, K_NO, K407, K_NO, K409, K_NO, K411, K412, K413, K414 } \ +} + +#define LAYOUT_split_bs( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K212, K014, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, K214,\ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K404, K407, K409, K411, K412, K413, K414 \ +) \ +{ \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K_NO }, \ + { K400, K401, K402, K_NO, K404, K_NO, K_NO, K407, K_NO, K409, K_NO, K411, K412, K413, K414 } \ +} diff --git a/keyboards/handwired/swiftrax/digicarpice/info.json b/keyboards/handwired/swiftrax/digicarpice/info.json new file mode 100644 index 0000000000..fb168bd770 --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/info.json @@ -0,0 +1,13 @@ +{ + "keyboard_name": "DigiCarpice", + "url": "https://github.com/swiftrax", + "maintainer": "swiftrax", + "layouts": { + "LAYOUT_unified_bs": { + "layout": [{"label":"0,0", "x":2.37, "y":0.08}, {"label":"0,1", "x":3.37, "y":0.08}, {"label":"0,11", "x":14.13, "y":0.08}, {"label":"0,12", "x":15.13, "y":0.08}, {"label":"0,13", "x":16.13, "y":0.08, "w":2}, {"label":"0,14", "x":18.38, "y":0.08}, {"label":"1,0", "x":2.24, "y":1.08, "w":1.5}, {"label":"1,1", "x":3.74, "y":1.08}, {"label":"1,10", "x":13.75, "y":1.08}, {"label":"1,11", "x":14.75, "y":1.08}, {"label":"1,12", "x":15.75, "y":1.08}, {"label":"1,13", "x":16.75, "y":1.08, "w":1.5}, {"label":"1,14", "x":18.5, "y":1.08}, {"label":"2,0", "x":2.1, "y":2.08, "w":1.75}, {"label":"2,1", "x":3.85, "y":2.08}, {"label":"2,10", "x":14.16, "y":2.08}, {"label":"2,11", "x":15.16, "y":2.08}, {"label":"2,13", "x":16.16, "y":2.08, "w":2.25}, {"label":"2,14", "x":18.66, "y":2.08}, {"label":"3,0", "x":1.95, "y":3.08, "w":2.25}, {"label":"3,1", "x":4.2, "y":3.08}, {"label":"3,10", "x":13.819999999999999, "y":3.08}, {"label":"3,11", "x":14.819999999999999, "y":3.08}, {"label":"3,12", "x":15.819999999999999, "y":3.08, "w":1.75}, {"label":"3,13", "x":17.82, "y":3.33}, {"label":"4,0", "x":2.1, "y":4.08, "w":1.25}, {"label":"4,1", "x":3.35, "y":4.08, "w":1.25}, {"label":"4,11", "x":15.32, "y":4.08, "w":1.25}, {"label":"4,12", "x":16.82, "y":4.33}, {"label":"4,13", "x":17.82, "y":4.33}, {"label":"4,14", "x":18.82, "y":4.33}, {"label":"0,2", "x":0, "y":5.33}, {"label":"0,3", "x":1, "y":5.33}, {"label":"0,4", "x":2, "y":5.33}, {"label":"0,5", "x":3, "y":5.33}, {"label":"0,6", "x":4, "y":5.33}, {"label":"1,2", "x":0.5, "y":6.33}, {"label":"1,3", "x":1.5, "y":6.33}, {"label":"1,4", "x":2.5, "y":6.33}, {"label":"1,5", "x":3.5, "y":6.33}, {"label":"2,2", "x":0.75, "y":7.33}, {"label":"2,3", "x":1.75, "y":7.33}, {"label":"2,4", "x":2.75, "y":7.33}, {"label":"2,5", "x":3.75, "y":7.33}, {"label":"3,2", "x":1.25, "y":8.33}, {"label":"3,3", "x":2.25, "y":8.33}, {"label":"3,4", "x":3.25, "y":8.33}, {"label":"3,5", "x":4.25, "y":8.33}, {"label":"4,2", "x":1.75, "y":9.33, "w":1.25}, {"label":"4,4", "x":3, "y":9.33, "w":2.25}, {"label":"0,7", "x":-4.5, "y":10.33}, {"label":"0,8", "x":-3.5, "y":10.33}, {"label":"0,9", "x":-2.5, "y":10.33}, {"label":"0,10", "x":-1.5, "y":10.33}, {"label":"1,6", "x":-5.0, "y":11.33}, {"label":"1,7", "x":-4, "y":11.33}, {"label":"1,8", "x":-3.0, "y":11.33}, {"label":"1,9", "x":-2, "y":11.33}, {"label":"2,6", "x":-4.75, "y":12.33}, {"label":"2,7", "x":-3.75, "y":12.33}, {"label":"2,8", "x":-2.75, "y":12.33}, {"label":"2,9", "x":-1.75, "y":12.33}, {"label":"3,6", "x":-5.25, "y":13.33}, {"label":"3,7", "x":-4.25, "y":13.33}, {"label":"3,8", "x":-3.25, "y":13.33}, {"label":"3,9", "x":-2.25, "y":13.33}, {"label":"4,7", "x":-5.25, "y":14.33, "w":2.75}, {"label":"4,9", "x":-2.5, "y":14.33, "w":1.25}] + }, + "LAYOUT_split_bs": { + "layout": [{"label":"0,0", "x":2.37, "y":0.08}, {"label":"0,1", "x":3.37, "y":0.08}, {"label":"0,11", "x":14.13, "y":0.08}, {"label":"0,12", "x":15.13, "y":0.08}, {"label":"0,13", "x":16.13, "y":0.08}, {"label":"2,12", "x":17.13, "y":0.08}, {"label":"0,14", "x":18.38, "y":0.08}, {"label":"1,0", "x":2.24, "y":1.08, "w":1.5}, {"label":"1,1", "x":3.74, "y":1.08}, {"label":"1,10", "x":13.75, "y":1.08}, {"label":"1,11", "x":14.75, "y":1.08}, {"label":"1,12", "x":15.75, "y":1.08}, {"label":"1,13", "x":16.75, "y":1.08, "w":1.5}, {"label":"1,14", "x":18.5, "y":1.08}, {"label":"2,0", "x":2.1, "y":2.08, "w":1.75}, {"label":"2,1", "x":3.85, "y":2.08}, {"label":"2,10", "x":14.16, "y":2.08}, {"label":"2,11", "x":15.16, "y":2.08}, {"label":"2,13", "x":16.16, "y":2.08, "w":2.25}, {"label":"2,14", "x":18.66, "y":2.08}, {"label":"3,0", "x":1.95, "y":3.08, "w":2.25}, {"label":"3,1", "x":4.2, "y":3.08}, {"label":"3,10", "x":13.819999999999999, "y":3.08}, {"label":"3,11", "x":14.819999999999999, "y":3.08}, {"label":"3,12", "x":15.819999999999999, "y":3.08, "w":1.75}, {"label":"3,13", "x":17.82, "y":3.33}, {"label":"4,0", "x":2.1, "y":4.08, "w":1.25}, {"label":"4,1", "x":3.35, "y":4.08, "w":1.25}, {"label":"4,11", "x":15.32, "y":4.08, "w":1.25}, {"label":"4,12", "x":16.82, "y":4.33}, {"label":"4,13", "x":17.82, "y":4.33}, {"label":"4,14", "x":18.82, "y":4.33}, {"label":"0,2", "x":0, "y":5.33}, {"label":"0,3", "x":1, "y":5.33}, {"label":"0,4", "x":2, "y":5.33}, {"label":"0,5", "x":3, "y":5.33}, {"label":"0,6", "x":4, "y":5.33}, {"label":"1,2", "x":0.5, "y":6.33}, {"label":"1,3", "x":1.5, "y":6.33}, {"label":"1,4", "x":2.5, "y":6.33}, {"label":"1,5", "x":3.5, "y":6.33}, {"label":"2,2", "x":0.75, "y":7.33}, {"label":"2,3", "x":1.75, "y":7.33}, {"label":"2,4", "x":2.75, "y":7.33}, {"label":"2,5", "x":3.75, "y":7.33}, {"label":"3,2", "x":1.25, "y":8.33}, {"label":"3,3", "x":2.25, "y":8.33}, {"label":"3,4", "x":3.25, "y":8.33}, {"label":"3,5", "x":4.25, "y":8.33}, {"label":"4,2", "x":1.75, "y":9.33, "w":1.25}, {"label":"4,4", "x":3, "y":9.33, "w":2.25}, {"label":"0,7", "x":-4.5, "y":10.33}, {"label":"0,8", "x":-3.5, "y":10.33}, {"label":"0,9", "x":-2.5, "y":10.33}, {"label":"0,10", "x":-1.5, "y":10.33}, {"label":"1,6", "x":-5.0, "y":11.33}, {"label":"1,7", "x":-4, "y":11.33}, {"label":"1,8", "x":-3.0, "y":11.33}, {"label":"1,9", "x":-2, "y":11.33}, {"label":"2,6", "x":-4.75, "y":12.33}, {"label":"2,7", "x":-3.75, "y":12.33}, {"label":"2,8", "x":-2.75, "y":12.33}, {"label":"2,9", "x":-1.75, "y":12.33}, {"label":"3,6", "x":-5.25, "y":13.33}, {"label":"3,7", "x":-4.25, "y":13.33}, {"label":"3,8", "x":-3.25, "y":13.33}, {"label":"3,9", "x":-2.25, "y":13.33}, {"label":"4,7", "x":-5.25, "y":14.33, "w":2.75}, {"label":"4,9", "x":-2.5, "y":14.33, "w":1.25}] + } + } +} diff --git a/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c new file mode 100644 index 0000000000..ed7cf4379e --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c @@ -0,0 +1,34 @@ +/* +Copyright 2021 Swiftrax + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_split_bs( + 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_BSPC, KC_DEL, 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_BSLS, KC_END, + 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_HOME, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_split_bs( + 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, KC_DEL, KC_BSPC, _______, + _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, + _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c new file mode 100644 index 0000000000..f97ac8bc8d --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c @@ -0,0 +1,48 @@ +/* +Copyright 2021 Swiftrax + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_split_bs( + 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_BSPC, KC_DEL, 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_BSLS, KC_END, + 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_HOME, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_split_bs( + 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, KC_DEL, KC_BSPC, _______, + _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, + _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_split_bs( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_split_bs( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/handwired/swiftrax/digicarpice/keymaps/via/rules.mk b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/handwired/swiftrax/digicarpice/readme.md b/keyboards/handwired/swiftrax/digicarpice/readme.md new file mode 100644 index 0000000000..228db23a7f --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/readme.md @@ -0,0 +1,21 @@ +# DigiCarpice + +Alice like keyboard with arrow keys + +* Keyboard Maintainer: Swiftrax +* Hardware Supported: DigiCarpice +* Hardware Availability: https://github.com/swiftrax + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (top left key) and plug in the keyboard +* **Physical reset button**: short the pads on the back of the pcb +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +Make example for this keyboard (after setting up your build environment): + + make handwired/swiftrax/digicarpice:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/handwired/swiftrax/digicarpice/rules.mk b/keyboards/handwired/swiftrax/digicarpice/rules.mk new file mode 100644 index 0000000000..1275531ef6 --- /dev/null +++ b/keyboards/handwired/swiftrax/digicarpice/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 8826a1dea5a3a6e3560456d5cddd1cdcdc575753 Mon Sep 17 00:00:00 2001 From: Ramon Imbao Date: Mon, 18 Apr 2022 17:11:32 +0800 Subject: [PATCH 273/699] [Keyboard] Add the Ciel (#16816) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/chickenman/ciel/ciel.c | 17 ++ keyboards/chickenman/ciel/ciel.h | 61 +++++ keyboards/chickenman/ciel/config.h | 106 +++++++++ keyboards/chickenman/ciel/info.json | 217 ++++++++++++++++++ .../chickenman/ciel/keymaps/default/keymap.c | 38 +++ .../chickenman/ciel/keymaps/default/readme.md | 1 + .../chickenman/ciel/keymaps/via/keymap.c | 54 +++++ .../chickenman/ciel/keymaps/via/rules.mk | 1 + keyboards/chickenman/ciel/readme.md | 23 ++ keyboards/chickenman/ciel/rules.mk | 20 ++ 10 files changed, 538 insertions(+) create mode 100644 keyboards/chickenman/ciel/ciel.c create mode 100644 keyboards/chickenman/ciel/ciel.h create mode 100644 keyboards/chickenman/ciel/config.h create mode 100644 keyboards/chickenman/ciel/info.json create mode 100644 keyboards/chickenman/ciel/keymaps/default/keymap.c create mode 100644 keyboards/chickenman/ciel/keymaps/default/readme.md create mode 100644 keyboards/chickenman/ciel/keymaps/via/keymap.c create mode 100644 keyboards/chickenman/ciel/keymaps/via/rules.mk create mode 100644 keyboards/chickenman/ciel/readme.md create mode 100644 keyboards/chickenman/ciel/rules.mk diff --git a/keyboards/chickenman/ciel/ciel.c b/keyboards/chickenman/ciel/ciel.c new file mode 100644 index 0000000000..de8302bfb4 --- /dev/null +++ b/keyboards/chickenman/ciel/ciel.c @@ -0,0 +1,17 @@ +/* Copyright 2020 Koichi Katano + * + * 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 . + */ + +#include "ciel.h" diff --git a/keyboards/chickenman/ciel/ciel.h b/keyboards/chickenman/ciel/ciel.h new file mode 100644 index 0000000000..ea2b566d98 --- /dev/null +++ b/keyboards/chickenman/ciel/ciel.h @@ -0,0 +1,61 @@ +/* Copyright 2020 Koichi Katano + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_60_ansi_split_bs_rshift( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k114, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, \ + k300, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k313, k314, \ + k400, k401, k402, k407, k410, k411, k413, k414 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, KC_NO, k114 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, KC_NO, k213, KC_NO}, \ + { k300, KC_NO, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, KC_NO, k313, k314 }, \ + { k400, k401, k402, KC_NO, KC_NO, KC_NO, KC_NO, k407, KC_NO, KC_NO, k410, k411, KC_NO, k413, k414 } \ +} + +#define LAYOUT_60_ansi( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k114, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, \ + k300, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k313, \ + k400, k401, k402, k407, k410, k411, k413, k414 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, KC_NO}, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, KC_NO, k114 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, KC_NO, k213, KC_NO}, \ + { k300, KC_NO, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, KC_NO, k313, KC_NO}, \ + { k400, k401, k402, KC_NO, KC_NO, KC_NO, KC_NO, k407, KC_NO, KC_NO, k410, k411, KC_NO, k413, k414 } \ +} + +#define LAYOUT_60_tsangan_hhkb( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k114, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k213, \ + k300, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k313, k314, \ + k400, k401, k402, k407, k411, k413, k414 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, KC_NO, k414 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, KC_NO, k213, KC_NO}, \ + { k300, KC_NO, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, KC_NO, k313, k314 }, \ + { k400, k401, k402, KC_NO, KC_NO, KC_NO, KC_NO, k407, KC_NO, KC_NO, KC_NO, k411, KC_NO, k413, k414 } \ +} diff --git a/keyboards/chickenman/ciel/config.h b/keyboards/chickenman/ciel/config.h new file mode 100644 index 0000000000..718df02eff --- /dev/null +++ b/keyboards/chickenman/ciel/config.h @@ -0,0 +1,106 @@ +/* +Copyright 2020 Koichi Katano, 2022 Ramon Imbao + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xC41C +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ChickenMan +#define PRODUCT Ciel + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { C5, C4, B0, C7, B7 } +#define MATRIX_COL_PINS { C6, B6, B5, B4, B3, B2, B1, D6, D5, D4, D3, D2, D1, D0, C2 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/chickenman/ciel/info.json b/keyboards/chickenman/ciel/info.json new file mode 100644 index 0000000000..67d39c2cf4 --- /dev/null +++ b/keyboards/chickenman/ciel/info.json @@ -0,0 +1,217 @@ +{ + "keyboard_name": "Ciel", + "url": "", + "maintainer": "ramonimbao", + "layouts": { + "LAYOUT_60_ansi_split_bs_rshift": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":12.5, "y":4, "w":1.25 }, + { "x":13.75, "y":4, "w":1.25 } + ] + }, + "LAYOUT_60_ansi": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0, "w":2 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":2.75 }, + + { "x":0, "y":4, "w":1.25 }, + { "x":1.25, "y":4, "w":1.25 }, + { "x":2.5, "y":4, "w":1.25 }, + { "x":3.75, "y":4, "w":6.25 }, + { "x":10, "y":4, "w":1.25 }, + { "x":11.25, "y":4, "w":1.25 }, + { "x":12.5, "y":4, "w":1.25 }, + { "x":13.75, "y":4, "w":1.25 } + ] + }, + "LAYOUT_60_tsangan_hhkb": { + "layout": [ + { "x":0, "y":0 }, + { "x":1, "y":0 }, + { "x":2, "y":0 }, + { "x":3, "y":0 }, + { "x":4, "y":0 }, + { "x":5, "y":0 }, + { "x":6, "y":0 }, + { "x":7, "y":0 }, + { "x":8, "y":0 }, + { "x":9, "y":0 }, + { "x":10, "y":0 }, + { "x":11, "y":0 }, + { "x":12, "y":0 }, + { "x":13, "y":0 }, + { "x":14, "y":0 }, + + { "x":0, "y":1, "w":1.5 }, + { "x":1.5, "y":1 }, + { "x":2.5, "y":1 }, + { "x":3.5, "y":1 }, + { "x":4.5, "y":1 }, + { "x":5.5, "y":1 }, + { "x":6.5, "y":1 }, + { "x":7.5, "y":1 }, + { "x":8.5, "y":1 }, + { "x":9.5, "y":1 }, + { "x":10.5, "y":1 }, + { "x":11.5, "y":1 }, + { "x":12.5, "y":1 }, + { "x":13.5, "y":1, "w":1.5 }, + + { "x":0, "y":2, "w":1.75 }, + { "x":1.75, "y":2 }, + { "x":2.75, "y":2 }, + { "x":3.75, "y":2 }, + { "x":4.75, "y":2 }, + { "x":5.75, "y":2 }, + { "x":6.75, "y":2 }, + { "x":7.75, "y":2 }, + { "x":8.75, "y":2 }, + { "x":9.75, "y":2 }, + { "x":10.75, "y":2 }, + { "x":11.75, "y":2 }, + { "x":12.75, "y":2, "w":2.25 }, + + { "x":0, "y":3, "w":2.25 }, + { "x":2.25, "y":3 }, + { "x":3.25, "y":3 }, + { "x":4.25, "y":3 }, + { "x":5.25, "y":3 }, + { "x":6.25, "y":3 }, + { "x":7.25, "y":3 }, + { "x":8.25, "y":3 }, + { "x":9.25, "y":3 }, + { "x":10.25, "y":3 }, + { "x":11.25, "y":3 }, + { "x":12.25, "y":3, "w":1.75 }, + { "x":14, "y":3 }, + + { "x":0, "y":4, "w":1.5 }, + { "x":1.5, "y":4 }, + { "x":2.5, "y":4, "w":1.5 }, + { "x":4, "y":4, "w":7 }, + { "x":11, "y":4, "w":1.5 }, + { "x":12.5, "y":4 }, + { "x":13.5, "y":4, "w":1.5 } + ] + } + } +} diff --git a/keyboards/chickenman/ciel/keymaps/default/keymap.c b/keyboards/chickenman/ciel/keymaps/default/keymap.c new file mode 100644 index 0000000000..e1f5cfc2e2 --- /dev/null +++ b/keyboards/chickenman/ciel/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2020 Koichi Katano + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_60_ansi_split_bs_rshift( + 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_GRV, 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, + 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL + ), + [_FN] = LAYOUT_60_ansi_split_bs_rshift( + 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, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/chickenman/ciel/keymaps/default/readme.md b/keyboards/chickenman/ciel/keymaps/default/readme.md new file mode 100644 index 0000000000..5609e2adbb --- /dev/null +++ b/keyboards/chickenman/ciel/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Bakeneko 60 diff --git a/keyboards/chickenman/ciel/keymaps/via/keymap.c b/keyboards/chickenman/ciel/keymaps/via/keymap.c new file mode 100644 index 0000000000..4034ba70d3 --- /dev/null +++ b/keyboards/chickenman/ciel/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2020 Koichi Katano + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum layer_names { + _L0, + _L1, + _L2, + _L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_L0] = LAYOUT_60_ansi_split_bs_rshift( + 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_GRV, 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, + 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(_L1), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL + ), + [_L1] = LAYOUT_60_ansi_split_bs_rshift( + 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, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_L2] = LAYOUT_60_ansi_split_bs_rshift( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_L3] = LAYOUT_60_ansi_split_bs_rshift( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/chickenman/ciel/keymaps/via/rules.mk b/keyboards/chickenman/ciel/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/chickenman/ciel/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/chickenman/ciel/readme.md b/keyboards/chickenman/ciel/readme.md new file mode 100644 index 0000000000..6dc711b662 --- /dev/null +++ b/keyboards/chickenman/ciel/readme.md @@ -0,0 +1,23 @@ +# Ciel + +![img](https://i.imgur.com/8JlLbefl.png) + +The Ciel is a CNC'ed 60% Bakeneko with a brass internal weight. + +Group Buy ran October 7th to October 31st in 2021. Fulfilled early March. + +* Keyboard Maintainer: [Ramon Imbao](https://github.com/ramonimbao) +* Hardware Supported: ATmega32u2 +* Hardware Availability: [GB page](https://geekhack.org/index.php?topic=114845.0), [ChickenMan's Discord](https://discord.gg/6MeZAxp2RP) + +Make example for this keyboard (after setting up your build environment): + + make chickenman/ciel:default + +To get to the bootloader, simply press the reset button located at the back of the PCB. You can then flash new firmware onto it. + +Flashing example for this keyboard: + + make chickenman/ciel:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/chickenman/ciel/rules.mk b/keyboards/chickenman/ciel/rules.mk new file mode 100644 index 0000000000..dea3fa861a --- /dev/null +++ b/keyboards/chickenman/ciel/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u2 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 60_ansi_split_bs_rshift 60_ansi 60_tsangan_hhkb From 0d67eec5e23cf5ffb95ad6b72199a79ef23a6132 Mon Sep 17 00:00:00 2001 From: alaviss Date: Mon, 18 Apr 2022 10:11:56 +0100 Subject: [PATCH 274/699] Ploopy Trackball Mini: only define DPI options as needed (#16160) --- keyboards/ploopyco/trackball_mini/trackball_mini.c | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/keyboards/ploopyco/trackball_mini/trackball_mini.c b/keyboards/ploopyco/trackball_mini/trackball_mini.c index 2b511c4eab..e4b4a47c2b 100644 --- a/keyboards/ploopyco/trackball_mini/trackball_mini.c +++ b/keyboards/ploopyco/trackball_mini/trackball_mini.c @@ -37,9 +37,16 @@ # define OPT_SCALE 1 // Multiplier for wheel #endif -#define PLOOPY_DPI_OPTIONS \ - { 375, 750, 1375 } -#define PLOOPY_DPI_DEFAULT 2 +#ifndef PLOOPY_DPI_OPTIONS +# define PLOOPY_DPI_OPTIONS \ + { 375, 750, 1375 } +# ifndef PLOOPY_DPI_DEFAULT +# define PLOOPY_DPI_DEFAULT 1 +# endif +#endif +#ifndef PLOOPY_DPI_DEFAULT +# define PLOOPY_DPI_DEFAULT 0 +#endif #ifndef PLOOPY_DRAGSCROLL_DPI # define PLOOPY_DRAGSCROLL_DPI 375 // Fixed-DPI Drag Scroll From b1ceb4bb6abe01e98b9ae0a36b7b87cdb383884a Mon Sep 17 00:00:00 2001 From: Denis Savran Date: Mon, 18 Apr 2022 12:12:25 +0300 Subject: [PATCH 275/699] Fix one-shot locked modifiers (#16114) * Fix state updates of one-shot locked modifiers Activating additional one-shot locked modifiers removed previously enabled locked modifiers from the state. `get_oneshot_locked_mods` returned zero when two or more one-shot locked modifiers were enabled and then one was disabled. * Do not delete one-shot locked modifiers on a one-shot layer toggle Non-locked one-shot modifiers are not removed so this behavior adds inconsistency. Also the one-shot locked modifiers state was reset without unregistering any modifiers. --- quantum/action.c | 7 ++----- 1 file changed, 2 insertions(+), 5 deletions(-) diff --git a/quantum/action.c b/quantum/action.c index ef059f0e2a..4e81a5466f 100644 --- a/quantum/action.c +++ b/quantum/action.c @@ -404,7 +404,7 @@ void process_action(keyrecord_t *record, action_t action) { } else if (tap_count == ONESHOT_TAP_TOGGLE) { dprint("MODS_TAP: Toggling oneshot"); clear_oneshot_mods(); - set_oneshot_locked_mods(mods); + set_oneshot_locked_mods(mods | get_oneshot_locked_mods()); register_mods(mods); # endif } else { @@ -418,8 +418,8 @@ void process_action(keyrecord_t *record, action_t action) { // Retain Oneshot mods # if defined(ONESHOT_TAP_TOGGLE) && ONESHOT_TAP_TOGGLE > 1 if (mods & get_mods()) { - clear_oneshot_locked_mods(); clear_oneshot_mods(); + set_oneshot_locked_mods(~mods & get_oneshot_locked_mods()); unregister_mods(mods); } } else if (tap_count == ONESHOT_TAP_TOGGLE) { @@ -623,7 +623,6 @@ void process_action(keyrecord_t *record, action_t action) { # if defined(ONESHOT_TAP_TOGGLE) && ONESHOT_TAP_TOGGLE > 1 do_release_oneshot = false; if (event.pressed) { - del_mods(get_oneshot_locked_mods()); if (get_oneshot_layer_state() == ONESHOT_TOGGLED) { reset_oneshot_layer(); layer_off(action.layer_tap.val); @@ -633,10 +632,8 @@ void process_action(keyrecord_t *record, action_t action) { set_oneshot_layer(action.layer_tap.val, ONESHOT_START); } } else { - add_mods(get_oneshot_locked_mods()); if (tap_count >= ONESHOT_TAP_TOGGLE) { reset_oneshot_layer(); - clear_oneshot_locked_mods(); set_oneshot_layer(action.layer_tap.val, ONESHOT_TOGGLED); } else { clear_oneshot_layer_state(ONESHOT_PRESSED); From f52f3f10772621864b16f9dc299f49df9d958cd8 Mon Sep 17 00:00:00 2001 From: "Md. Mashur Shalehin Sakib" <41992136+h0oni@users.noreply.github.com> Date: Mon, 18 Apr 2022 15:13:44 +0600 Subject: [PATCH 276/699] [Keyboard] Add deskpad (#15602) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/h0oni/deskpad/config.h | 62 ++++++ keyboards/h0oni/deskpad/deskpad.c | 53 +++++ keyboards/h0oni/deskpad/deskpad.h | 28 +++ keyboards/h0oni/deskpad/info.json | 15 ++ .../h0oni/deskpad/keymaps/default/keymap.c | 189 ++++++++++++++++++ .../h0oni/deskpad/keymaps/default/rules.mk | 1 + keyboards/h0oni/deskpad/keymaps/via/keymap.c | 189 ++++++++++++++++++ keyboards/h0oni/deskpad/keymaps/via/rules.mk | 3 + keyboards/h0oni/deskpad/readme.md | 19 ++ keyboards/h0oni/deskpad/rules.mk | 19 ++ 10 files changed, 578 insertions(+) create mode 100644 keyboards/h0oni/deskpad/config.h create mode 100644 keyboards/h0oni/deskpad/deskpad.c create mode 100644 keyboards/h0oni/deskpad/deskpad.h create mode 100644 keyboards/h0oni/deskpad/info.json create mode 100644 keyboards/h0oni/deskpad/keymaps/default/keymap.c create mode 100644 keyboards/h0oni/deskpad/keymaps/default/rules.mk create mode 100644 keyboards/h0oni/deskpad/keymaps/via/keymap.c create mode 100644 keyboards/h0oni/deskpad/keymaps/via/rules.mk create mode 100644 keyboards/h0oni/deskpad/readme.md create mode 100644 keyboards/h0oni/deskpad/rules.mk diff --git a/keyboards/h0oni/deskpad/config.h b/keyboards/h0oni/deskpad/config.h new file mode 100644 index 0000000000..c5c8054ca1 --- /dev/null +++ b/keyboards/h0oni/deskpad/config.h @@ -0,0 +1,62 @@ +/* Copyright 2021 Hydrogen BD + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4D53 +#define PRODUCT_ID 0x4450 //hD +#define DEVICE_VER 0x0001 +#define MANUFACTURER Hydrogen +#define PRODUCT Deskpad + +/* key matrix size */ +#define MATRIX_ROWS 2 +#define MATRIX_COLS 3 + +/* + * 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 { D7, C6 } +#define MATRIX_COL_PINS { D0, D4, D1} +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 3 + +/* Defining encoder pads */ +#define ENCODERS_PAD_A { D2 } +#define ENCODERS_PAD_B { D3 } + +/* 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 + +/* Defining tapping term */ +#define TAPPING_TERM 250 \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/deskpad.c b/keyboards/h0oni/deskpad/deskpad.c new file mode 100644 index 0000000000..d93a9df900 --- /dev/null +++ b/keyboards/h0oni/deskpad/deskpad.c @@ -0,0 +1,53 @@ +/* Copyright 2021 Hydrogen BD + * + * 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 . + */ + +#include "deskpad.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + const layer_state_t curr_layer = get_highest_layer(layer_state); + if(curr_layer == 0) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + else if(curr_layer == 1) { + if (clockwise) { + tap_code(KC_WH_D); + } else { + tap_code(KC_WH_U); + } + } + else if(curr_layer == 2) { + if (clockwise) { + tap_code16(C(KC_WH_U)); + } else { + tap_code16(C(KC_WH_D)); + } + } + else { + if (clockwise) { + tap_code(KC_BRIU); + } else { + tap_code(KC_BRID); + } + } + return false; +} +#endif \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/deskpad.h b/keyboards/h0oni/deskpad/deskpad.h new file mode 100644 index 0000000000..4c0936f8bf --- /dev/null +++ b/keyboards/h0oni/deskpad/deskpad.h @@ -0,0 +1,28 @@ +/* Copyright 2021 Hydrogen BD + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K10, K11, K12\ +) { \ + { K00, K01, K02 },\ + { K10, K11, K12 } \ +} + + diff --git a/keyboards/h0oni/deskpad/info.json b/keyboards/h0oni/deskpad/info.json new file mode 100644 index 0000000000..b5622d578f --- /dev/null +++ b/keyboards/h0oni/deskpad/info.json @@ -0,0 +1,15 @@ +{ + "keyboard_name": "Deskpad", + "url": "", + "maintainer": "Hydrogen BD", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"k1", "x":0, "y":0}, + {"label":"k2", "x":1, "y":0}, + {"label":"k3", "x":2, "y":0}, + {"label":"k4", "x":3, "y":0}, + {"label":"k5", "x":4, "y":0}, + {"label":"k6", "x":6, "y":0}] + } + } +} diff --git a/keyboards/h0oni/deskpad/keymaps/default/keymap.c b/keyboards/h0oni/deskpad/keymaps/default/keymap.c new file mode 100644 index 0000000000..993200f18c --- /dev/null +++ b/keyboards/h0oni/deskpad/keymaps/default/keymap.c @@ -0,0 +1,189 @@ +/* Copyright 2021 Hydrogen BD + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +typedef enum { + TD_NONE, + TD_UNKNOWN, + TD_SINGLE_TAP, + TD_SINGLE_HOLD, + TD_DOUBLE_TAP, + TD_DOUBLE_HOLD, + TD_DOUBLE_SINGLE_TAP, // Send two single taps +} td_state_t; + +typedef struct { + bool is_press_action; + td_state_t state; +} td_tap_t; + +enum custom_keycodes { + TD_CUT_REDO, + TD_PLAY_PAUSE_MUTE, + TD_MNXT_RIGHT, + TD_MPRV_LEFT, + TD_SEARCH_REFRESH, + QUAD_LAYER_SWITCH, + QUAD_CVXA, + YOUTUBE = SAFE_RANGE, + FACEBOOK, + DISCORD, + VALORANT, + VSCODE, +}; + +td_state_t cur_dance(qk_tap_dance_state_t *state); + +/* Quad layer switching */ +void layer_finished(qk_tap_dance_state_t *state, void *user_data); +void layer_reset(qk_tap_dance_state_t *state, void *user_data); + +/* Copy, paste, select all, cut */ +void cvxa_finished(qk_tap_dance_state_t *state, void *user_data); +void cvxa_reset(qk_tap_dance_state_t *state, void *user_data); + +static td_tap_t layerTap_state = { + .is_press_action = true, + .state = TD_NONE +}; + +static td_tap_t cvxa_state = { + .is_press_action = true, + .state = TD_NONE +}; + +// Determine the current tap dance state +td_state_t cur_dance(qk_tap_dance_state_t *state) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return TD_SINGLE_TAP; + // Key has not been interrupted, but the key is still held. Means you want to send a 'HOLD'. + else return TD_SINGLE_HOLD; + } else if (state->count == 2) { + if (state->interrupted) return TD_DOUBLE_SINGLE_TAP; + else if (state->pressed) return TD_DOUBLE_HOLD; + else return TD_DOUBLE_TAP; + } else return TD_UNKNOWN; +} + +void layer_finished(qk_tap_dance_state_t *state, void *user_data) { + layerTap_state.state = cur_dance(state); + layer_off(get_highest_layer(layer_state)); + switch (layerTap_state.state) { + case TD_SINGLE_TAP: layer_on(0); break; + case TD_SINGLE_HOLD: layer_on(1); break; + case TD_DOUBLE_TAP: layer_on(2); break; + case TD_DOUBLE_HOLD: layer_on(3); break; + default: layer_on(0); + } +} + +void layer_reset(qk_tap_dance_state_t *state, void *user_data) { + layerTap_state.state = TD_NONE; +} + +void cvxa_finished(qk_tap_dance_state_t *state, void *user_data) { + cvxa_state.state = cur_dance(state); + register_mods(MOD_BIT(KC_LCTRL)); + switch (cvxa_state.state) { + case TD_SINGLE_TAP: tap_code(KC_V); break; + case TD_SINGLE_HOLD: tap_code(KC_A); break; + case TD_DOUBLE_TAP: tap_code(KC_C); break; + case TD_DOUBLE_HOLD: tap_code(KC_X); break; + default: tap_code(KC_V); + } + unregister_mods(MOD_BIT(KC_LCTRL)); +} + +void cvxa_reset(qk_tap_dance_state_t *state, void *user_data) { + cvxa_state.state = TD_NONE; +} + +// Tap Dance definitions +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_CUT_REDO] = ACTION_TAP_DANCE_DOUBLE(C(KC_Z), S(C(KC_Z))), + [TD_PLAY_PAUSE_MUTE] = ACTION_TAP_DANCE_DOUBLE(KC_MPLY, KC_MUTE), + [TD_MNXT_RIGHT] = ACTION_TAP_DANCE_DOUBLE(KC_MNXT, KC_RIGHT), + [TD_MPRV_LEFT] = ACTION_TAP_DANCE_DOUBLE(KC_MPRV, KC_LEFT), + [TD_SEARCH_REFRESH] = ACTION_TAP_DANCE_DOUBLE(KC_WREF, KC_WSCH), + [QUAD_LAYER_SWITCH] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, layer_finished, layer_reset), + [QUAD_CVXA] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, cvxa_finished, cvxa_reset) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case YOUTUBE: + if (record->event.pressed) { + tap_code16(C(KC_L)); + SEND_STRING("https://www.youtube.com/"); + } else { + tap_code(KC_ENT); + } + break; + case FACEBOOK: + if (record->event.pressed) { + tap_code16(C(KC_L)); + SEND_STRING("https://www.facebook.com/"); + } else { + tap_code(KC_ENT); + } + break; + case VALORANT: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("valorant"); + } else { + tap_code(KC_ENT); + } + break; + case DISCORD: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("discord"); + } else { + tap_code(KC_ENT); + } + break; + case VSCODE: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("vscode"); + } else { + tap_code(KC_ENT); + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + TD(TD_CUT_REDO), TD(TD_MPRV_LEFT), TD(TD_PLAY_PAUSE_MUTE), TD(TD_MNXT_RIGHT), TD(QUAD_CVXA), TD(QUAD_LAYER_SWITCH) + ), + + [1] = LAYOUT_all( + YOUTUBE, KC_WBAK, TD(TD_SEARCH_REFRESH), KC_WFWD, FACEBOOK, TD(QUAD_LAYER_SWITCH) + ), + + [2] = LAYOUT_all( + A(KC_F4), SGUI(KC_S), KC_MYCM, LCA(KC_DEL), KC_CALC, TD(QUAD_LAYER_SWITCH) + ), + + [3] = LAYOUT_all( + C(KC_SLSH), VALORANT, VSCODE, DISCORD, LSA(KC_A), TD(QUAD_LAYER_SWITCH) + ), +}; \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/keymaps/default/rules.mk b/keyboards/h0oni/deskpad/keymaps/default/rules.mk new file mode 100644 index 0000000000..e5ddcae8d9 --- /dev/null +++ b/keyboards/h0oni/deskpad/keymaps/default/rules.mk @@ -0,0 +1 @@ +TAP_DANCE_ENABLE = yes diff --git a/keyboards/h0oni/deskpad/keymaps/via/keymap.c b/keyboards/h0oni/deskpad/keymaps/via/keymap.c new file mode 100644 index 0000000000..993200f18c --- /dev/null +++ b/keyboards/h0oni/deskpad/keymaps/via/keymap.c @@ -0,0 +1,189 @@ +/* Copyright 2021 Hydrogen BD + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +typedef enum { + TD_NONE, + TD_UNKNOWN, + TD_SINGLE_TAP, + TD_SINGLE_HOLD, + TD_DOUBLE_TAP, + TD_DOUBLE_HOLD, + TD_DOUBLE_SINGLE_TAP, // Send two single taps +} td_state_t; + +typedef struct { + bool is_press_action; + td_state_t state; +} td_tap_t; + +enum custom_keycodes { + TD_CUT_REDO, + TD_PLAY_PAUSE_MUTE, + TD_MNXT_RIGHT, + TD_MPRV_LEFT, + TD_SEARCH_REFRESH, + QUAD_LAYER_SWITCH, + QUAD_CVXA, + YOUTUBE = SAFE_RANGE, + FACEBOOK, + DISCORD, + VALORANT, + VSCODE, +}; + +td_state_t cur_dance(qk_tap_dance_state_t *state); + +/* Quad layer switching */ +void layer_finished(qk_tap_dance_state_t *state, void *user_data); +void layer_reset(qk_tap_dance_state_t *state, void *user_data); + +/* Copy, paste, select all, cut */ +void cvxa_finished(qk_tap_dance_state_t *state, void *user_data); +void cvxa_reset(qk_tap_dance_state_t *state, void *user_data); + +static td_tap_t layerTap_state = { + .is_press_action = true, + .state = TD_NONE +}; + +static td_tap_t cvxa_state = { + .is_press_action = true, + .state = TD_NONE +}; + +// Determine the current tap dance state +td_state_t cur_dance(qk_tap_dance_state_t *state) { + if (state->count == 1) { + if (state->interrupted || !state->pressed) return TD_SINGLE_TAP; + // Key has not been interrupted, but the key is still held. Means you want to send a 'HOLD'. + else return TD_SINGLE_HOLD; + } else if (state->count == 2) { + if (state->interrupted) return TD_DOUBLE_SINGLE_TAP; + else if (state->pressed) return TD_DOUBLE_HOLD; + else return TD_DOUBLE_TAP; + } else return TD_UNKNOWN; +} + +void layer_finished(qk_tap_dance_state_t *state, void *user_data) { + layerTap_state.state = cur_dance(state); + layer_off(get_highest_layer(layer_state)); + switch (layerTap_state.state) { + case TD_SINGLE_TAP: layer_on(0); break; + case TD_SINGLE_HOLD: layer_on(1); break; + case TD_DOUBLE_TAP: layer_on(2); break; + case TD_DOUBLE_HOLD: layer_on(3); break; + default: layer_on(0); + } +} + +void layer_reset(qk_tap_dance_state_t *state, void *user_data) { + layerTap_state.state = TD_NONE; +} + +void cvxa_finished(qk_tap_dance_state_t *state, void *user_data) { + cvxa_state.state = cur_dance(state); + register_mods(MOD_BIT(KC_LCTRL)); + switch (cvxa_state.state) { + case TD_SINGLE_TAP: tap_code(KC_V); break; + case TD_SINGLE_HOLD: tap_code(KC_A); break; + case TD_DOUBLE_TAP: tap_code(KC_C); break; + case TD_DOUBLE_HOLD: tap_code(KC_X); break; + default: tap_code(KC_V); + } + unregister_mods(MOD_BIT(KC_LCTRL)); +} + +void cvxa_reset(qk_tap_dance_state_t *state, void *user_data) { + cvxa_state.state = TD_NONE; +} + +// Tap Dance definitions +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_CUT_REDO] = ACTION_TAP_DANCE_DOUBLE(C(KC_Z), S(C(KC_Z))), + [TD_PLAY_PAUSE_MUTE] = ACTION_TAP_DANCE_DOUBLE(KC_MPLY, KC_MUTE), + [TD_MNXT_RIGHT] = ACTION_TAP_DANCE_DOUBLE(KC_MNXT, KC_RIGHT), + [TD_MPRV_LEFT] = ACTION_TAP_DANCE_DOUBLE(KC_MPRV, KC_LEFT), + [TD_SEARCH_REFRESH] = ACTION_TAP_DANCE_DOUBLE(KC_WREF, KC_WSCH), + [QUAD_LAYER_SWITCH] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, layer_finished, layer_reset), + [QUAD_CVXA] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, cvxa_finished, cvxa_reset) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { + case YOUTUBE: + if (record->event.pressed) { + tap_code16(C(KC_L)); + SEND_STRING("https://www.youtube.com/"); + } else { + tap_code(KC_ENT); + } + break; + case FACEBOOK: + if (record->event.pressed) { + tap_code16(C(KC_L)); + SEND_STRING("https://www.facebook.com/"); + } else { + tap_code(KC_ENT); + } + break; + case VALORANT: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("valorant"); + } else { + tap_code(KC_ENT); + } + break; + case DISCORD: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("discord"); + } else { + tap_code(KC_ENT); + } + break; + case VSCODE: + if (record->event.pressed) { + tap_code16(G(KC_S)); + SEND_STRING("vscode"); + } else { + tap_code(KC_ENT); + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + TD(TD_CUT_REDO), TD(TD_MPRV_LEFT), TD(TD_PLAY_PAUSE_MUTE), TD(TD_MNXT_RIGHT), TD(QUAD_CVXA), TD(QUAD_LAYER_SWITCH) + ), + + [1] = LAYOUT_all( + YOUTUBE, KC_WBAK, TD(TD_SEARCH_REFRESH), KC_WFWD, FACEBOOK, TD(QUAD_LAYER_SWITCH) + ), + + [2] = LAYOUT_all( + A(KC_F4), SGUI(KC_S), KC_MYCM, LCA(KC_DEL), KC_CALC, TD(QUAD_LAYER_SWITCH) + ), + + [3] = LAYOUT_all( + C(KC_SLSH), VALORANT, VSCODE, DISCORD, LSA(KC_A), TD(QUAD_LAYER_SWITCH) + ), +}; \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/keymaps/via/rules.mk b/keyboards/h0oni/deskpad/keymaps/via/rules.mk new file mode 100644 index 0000000000..f61b354610 --- /dev/null +++ b/keyboards/h0oni/deskpad/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes +TAP_DANCE_ENABLE = yes \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/readme.md b/keyboards/h0oni/deskpad/readme.md new file mode 100644 index 0000000000..a79983fff7 --- /dev/null +++ b/keyboards/h0oni/deskpad/readme.md @@ -0,0 +1,19 @@ +# Hydrogen Deskpad + +A 5 key macropad with an encoder, that can be mounted to a desk or below your monitor. + +* Keyboard Maintainer: [Hydrogen BD](https://www.facebook.com/hgenbd/) +* Hardware Supported: [5k Deskpad](https://fb.watch/akRLW7s-UT/) + +Make example for this keyboard (after setting up your build environment): + + make h0oni/deskpad:default + +## Bootloader + +Enter the bootloader in 2 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (the left most key) and plug in the keyboard. +* **Physical reset button**: Press the button at the back of the PCB twice to enter into the bootloader mode. + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/h0oni/deskpad/rules.mk b/keyboards/h0oni/deskpad/rules.mk new file mode 100644 index 0000000000..f28bef72ba --- /dev/null +++ b/keyboards/h0oni/deskpad/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes \ No newline at end of file From 8c91e90381fff838554c979da416341393e0630c Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 18 Apr 2022 03:28:28 -0600 Subject: [PATCH 277/699] [Keyboard] sandbox - fix keymaps (#16873) --- keyboards/dailycraft/sandbox/rev1/config.h | 2 +- .../sandbox/rev1/keymaps/oled/keymap.c | 42 ------------------ .../sandbox/rev1/keymaps/oled/readme.md | 1 - .../sandbox/rev1/keymaps/oled/rules.mk | 2 - .../sandbox/rev1/keymaps/via/keymap.c | 15 ++----- .../sandbox/rev2/keymaps/oled/keymap.c | 43 ------------------- .../sandbox/rev2/keymaps/oled/readme.md | 1 - .../sandbox/rev2/keymaps/oled/rules.mk | 2 - .../sandbox/rev2/keymaps/via/keymap.c | 15 ++----- keyboards/dailycraft/sandbox/rules.mk | 1 + 10 files changed, 10 insertions(+), 114 deletions(-) delete mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c delete mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md delete mode 100644 keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk delete mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c delete mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md delete mode 100644 keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk diff --git a/keyboards/dailycraft/sandbox/rev1/config.h b/keyboards/dailycraft/sandbox/rev1/config.h index 102b8247db..2bd405d2aa 100644 --- a/keyboards/dailycraft/sandbox/rev1/config.h +++ b/keyboards/dailycraft/sandbox/rev1/config.h @@ -50,7 +50,7 @@ along with this program. If not, see . /* * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. */ -#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 +//#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 //#define LED_NUM_LOCK_PIN B0 //#define LED_CAPS_LOCK_PIN B1 diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c deleted file mode 100644 index 25910ef919..0000000000 --- a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/keymap.c +++ /dev/null @@ -1,42 +0,0 @@ -/* Copyright 2021 yfuku - * - * 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 . - */ -#include QMK_KEYBOARD_H - -enum layer_names { - _0, - _1, - _2, - _3 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_0] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, - KC_6, KC_7, KC_8, KC_9, KC_0 - ), - [_1] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - [_2] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ), - [_3] = LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS - ) -}; diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md deleted file mode 100644 index 7fe2318a44..0000000000 --- a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk b/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk deleted file mode 100644 index ab9d5c6ac2..0000000000 --- a/keyboards/dailycraft/sandbox/rev1/keymaps/oled/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OLED_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c b/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c index 047eabf513..39a9f1d153 100644 --- a/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c +++ b/keyboards/dailycraft/sandbox/rev1/keymaps/via/keymap.c @@ -15,27 +15,20 @@ */ #include QMK_KEYBOARD_H -enum layer_names { - _1, - _2, - _3, - _4 -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_0] = LAYOUT( + [0] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0 ), - [_1] = LAYOUT( + [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [_2] = LAYOUT( + [2] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [_3] = LAYOUT( + [3] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c deleted file mode 100644 index c72b85c79a..0000000000 --- a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/keymap.c +++ /dev/null @@ -1,43 +0,0 @@ -/* Copyright 2021 yfuku - * - * 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 . - */ -#include QMK_KEYBOARD_H - -enum layer_names { - _0, - _1, - _2, - _3 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_0] = LAYOUT( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_A, KC_B, KC_C, KC_D, KC_E, - KC_6, KC_7, KC_8, KC_9, KC_0, KC_F, KC_G, KC_H, KC_I, KC_J - ), - [_1] = LAYOUT( - 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 - ), - [_2] = LAYOUT( - 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 - ), - [_3] = LAYOUT( - 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 - ) -}; - diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md deleted file mode 100644 index c0c3cb6eec..0000000000 --- a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The oled keymap for sandbox diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk b/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk deleted file mode 100644 index ab9d5c6ac2..0000000000 --- a/keyboards/dailycraft/sandbox/rev2/keymaps/oled/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -OLED_ENABLE = yes diff --git a/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c b/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c index c202284292..8796e0443d 100644 --- a/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c +++ b/keyboards/dailycraft/sandbox/rev2/keymaps/via/keymap.c @@ -15,27 +15,20 @@ */ #include QMK_KEYBOARD_H -enum layer_names { - _0, - _1, - _2, - _3 -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_0] = LAYOUT( + [0] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_A, KC_B, KC_C, KC_D, KC_E, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F, KC_G, KC_H, KC_I, KC_J ), - [_1] = LAYOUT( + [1] = LAYOUT( 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 ), - [_2] = LAYOUT( + [2] = LAYOUT( 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 ), - [_3] = LAYOUT( + [3] = LAYOUT( 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 ) diff --git a/keyboards/dailycraft/sandbox/rules.mk b/keyboards/dailycraft/sandbox/rules.mk index b3386ed771..f33c50e352 100644 --- a/keyboards/dailycraft/sandbox/rules.mk +++ b/keyboards/dailycraft/sandbox/rules.mk @@ -16,5 +16,6 @@ NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output +OLED_ENABLE = yes DEFAULT_FOLDER = dailycraft/sandbox/rev2 From ad9a137942248cb63501a0f61cc3eca03675faca Mon Sep 17 00:00:00 2001 From: DeeDesired <98406203+DeeDesired@users.noreply.github.com> Date: Mon, 18 Apr 2022 04:29:53 -0500 Subject: [PATCH 278/699] [Keyboard] Add CrimsonKeyboards' Resume1800 (#16842) --- .../crimsonkeyboards/resume1800/config.h | 144 ++++++++++++++++++ .../crimsonkeyboards/resume1800/info.json | 27 ++++ .../resume1800/keymaps/dee/keymap.c | 50 ++++++ .../resume1800/keymaps/default/keymap.c | 50 ++++++ .../resume1800/keymaps/iso/keymap.c | 50 ++++++ .../resume1800/keymaps/via/keymap.c | 50 ++++++ .../resume1800/keymaps/via/rules.mk | 2 + .../crimsonkeyboards/resume1800/readme.md | 23 +++ .../crimsonkeyboards/resume1800/resume1800.c | 16 ++ .../crimsonkeyboards/resume1800/resume1800.h | 53 +++++++ .../crimsonkeyboards/resume1800/rules.mk | 21 +++ 11 files changed, 486 insertions(+) create mode 100644 keyboards/crimsonkeyboards/resume1800/config.h create mode 100644 keyboards/crimsonkeyboards/resume1800/info.json create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/via/rules.mk create mode 100644 keyboards/crimsonkeyboards/resume1800/readme.md create mode 100644 keyboards/crimsonkeyboards/resume1800/resume1800.c create mode 100644 keyboards/crimsonkeyboards/resume1800/resume1800.h create mode 100644 keyboards/crimsonkeyboards/resume1800/rules.mk diff --git a/keyboards/crimsonkeyboards/resume1800/config.h b/keyboards/crimsonkeyboards/resume1800/config.h new file mode 100644 index 0000000000..37c36b42d4 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/config.h @@ -0,0 +1,144 @@ +/* Copyright 2022 CrimsonKeyboards + +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 . +*/ + +#pragma once + +#include "config_common.h" + +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0xC18B +#define DEVICE_VER 0x0001 +#define MANUFACTURER CrimsonKeyboards +#define PRODUCT Resume1800 + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 20 + +/* + * 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 { A5, A0, A1, B1, B2, B0 } +#define MATRIX_COL_PINS { A2, B3, A3, B4, A4, D1, D5, D6, A6, A7, C7, C6, C5, C4, D7, C3, C2, C1, C0, D0 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +#define USB_MAX_POWER_CONSUMPTION 100 + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +// #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +// #define BACKLIGHT_PIN B7 +// #define BACKLIGHT_BREATHING +// #define BACKLIGHT_LEVELS 3 + +// #define RGB_DI_PIN E2 +// #ifdef RGB_DI_PIN +// #define RGBLED_NUM 16 +// #define RGBLIGHT_HUE_STEP 8 +// #define RGBLIGHT_SAT_STEP 8 +// #define RGBLIGHT_VAL_STEP 8 +// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +// /*== or choose animations ==*/ +// #define RGBLIGHT_EFFECT_BREATHING +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL +// #define RGBLIGHT_EFFECT_SNAKE +// #define RGBLIGHT_EFFECT_KNIGHT +// #define RGBLIGHT_EFFECT_CHRISTMAS +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT +// #define RGBLIGHT_EFFECT_RGB_TEST +// #define RGBLIGHT_EFFECT_ALTERNATING +// #endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* Set LED indicator pins */ +#define LED_NUM_LOCK_PIN B5 +#define LED_CAPS_LOCK_PIN B6 + +/* 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + diff --git a/keyboards/crimsonkeyboards/resume1800/info.json b/keyboards/crimsonkeyboards/resume1800/info.json new file mode 100644 index 0000000000..93bd8ccab1 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/info.json @@ -0,0 +1,27 @@ +{ + "keyboard_name": "Resume1800", + "url": "", + "maintainer": "CrimsonKeyboards", + "layouts": { + "LAYOUT_resume1800_ansi_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0},{"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"F13", "x":13, "y":0}, {"label":"F14", "x":14, "y":0}, {"label":"PrtSc", "x":15, "y":0}, {"label":"Scroll Lock", "x":16, "y":0}, {"label":"Pause", "x":17, "y":0}, {"label":"Insert", "x":18, "y":0}, {"label":"End", "x":19, "y":0}, + {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Delete", "x":15, "y":1}, {"label":"Num Lock", "x":16, "y":1}, {"label":"/", "x":17, "y":1}, {"label":"*", "x":18, "y":1}, {"label":"-", "x":19, "y":1}, + {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Home", "x":15, "y":2}, {"label":"7", "x":16, "y":2}, {"label":"8", "x":17, "y":2}, {"label":"9", "x":18, "y":2}, {"label":"+", "x":19, "y":2}, + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"PgUp", "x":15, "y":3}, {"label":"4", "x":16, "y":3}, {"label":"5", "x":17, "y":3}, {"label":"6", "x":18, "y":3}, {"label":"=", "x":19, "y":3}, + {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"PgDn", "x":15, "y":4}, {"label":"1", "x":16, "y":4}, {"label":"2", "x":17, "y":4}, {"label":"3", "x":18, "y":4}, {"label":"Enter", "x":19, "y":4}, + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"label":"Space", "x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}, {"label":"00", "x":16, "y":5}, {"label":"0", "x":17, "y":5}, {"label":".", "x":18, "y":5}, {"label":"Bksp", "x":19, "y":5} + ] + } + "LAYOUT_resume1800_iso_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"F13", "x":13, "y":0}, {"label":"F14", "x":14, "y":0}, {"label":"PrtSc", "x":15, "y":0}, {"label":"Scroll Lock", "x":16, "y":0}, {"label":"Pause", "x":17, "y":0}, {"label":"Insert", "x":18, "y":0}, {"label":"End", "x":19, "y":0}, + {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Delete", "x":15, "y":1}, {"label":"Num Lock", "x":16, "y":1}, {"label":"/", "x":17, "y":1}, {"label":"*", "x":18, "y":1}, {"label":"-", "x":19, "y":1}, + {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Home", "x":15, "y":2}, {"label":"7", "x":16, "y":2}, {"label":"8", "x":17, "y":2}, {"label":"9", "x":18, "y":2}, {"label":"+", "x":19, "y":2}, + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"|", "x":12.75, "y":3}, {"label":"PgUp", "x":15, "y":3}, {"label":"4", "x":16, "y":3}, {"label":"5", "x":17, "y":3}, {"label":"6", "x":18, "y":3}, {"label":"=", "x":19, "y":3}, + {"label":"Shift", "x":0, "y":4, "w":1.25}, {"label":"~", "x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"PgDn", "x":15, "y":4}, {"label":"1", "x":16, "y":4}, {"label":"2", "x":17, "y":4}, {"label":"3", "x":18, "y":4}, {"label":"Enter", "x":19, "y":4}, + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}, {"label":"00", "x":16, "y":5}, {"label":"0", "x":17, "y":5}, {"label":".", "x":18, "y":5}, {"label":"Bksp", "x":19, "y":5} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c new file mode 100644 index 0000000000..c7f471a113 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/dee/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 CrimsonKeyboards + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_00 = SAFE_RANGE, //Double Zero +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_00: + if (record->event.pressed) { + // when keycode KC_00 is pressed + SEND_STRING("00"); + } else { + // when keycode KC_00 is released + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_resume1800_iso_all( + /* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */ + 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_F13, KC_F14, KC_PRINT_SCREEN, KC_SCRL, KC_PAUS, KC_INS, KC_END, + /* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */ + 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_DELETE, KC_NUM_LOCK, KC_PSLS, KC_PAST, KC_PMNS, + /* Tab Q W E R T Y U I O P [ ] ISO Enter Home Num 7 Num 8 Num 9 N/A */ + 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_ENT, KC_HOME, KC_P7, KC_P8, KC_P9, KC_TRNS, + /* Caps A S D F G H J K L ; ' ISO \ Page Up Num 4 Num 5 Num 6 Num + */ + 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_BSLS, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PPLS, + /* Left Shift N/A Z X C V B N M , . / R Shift Up Page Down Num 1 Num 2 Num 3 N/A */ + KC_LSFT, KC_TRNS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_TRNS, + /* L Control Windows L Alt Space R Alt Fn R Control Left Down Right Num 00 Num 0 Num . Num Enter */ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_ALGR, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_00, KC_P0, KC_PDOT, KC_PENT) +}; diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c new file mode 100644 index 0000000000..b8adef49b0 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/default/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 CrimsonKeyboards + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_00 = SAFE_RANGE, //Double Zero +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_00: + if (record->event.pressed) { + // when keycode KC_00 is pressed + SEND_STRING("00"); + } else { + // when keycode KC_00 is released + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_resume1800_ansi_all( + /* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */ + 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_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END, + /* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */ + 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_DELETE, KC_NUM_LOCK, KC_PSLS, KC_PAST, KC_PMNS, + /* Tab Q W E R T Y U I O P [ ] \ Home Num 7 Num 8 Num 9 N/A */ + 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, KC_HOME, KC_P7, KC_P8, KC_P9, KC_TRNS, + /* Caps A S D F G H J K L ; ' Enter Page Up Num 4 Num 5 Num 6 Num + */ + 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_PGUP, KC_P4, KC_P5, KC_P6, KC_PPLS, + /* Left Shift Z X C V B N M , . / R Shift Up Page Down Num 1 Num 2 Num 3 N/A */ + 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, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_TRNS, + /* L Control Windows L Alt Space R Alt Fn R Control Left Down Right Num 00 Num 0 Num . Num Enter */ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_00, KC_P0, KC_PDOT, KC_PENT) +}; diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c new file mode 100644 index 0000000000..ea08c07b19 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/iso/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 CrimsonKeyboards + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_00 = SAFE_RANGE, //Double Zero +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_00: + if (record->event.pressed) { + // when keycode KC_00 is pressed + SEND_STRING("00"); + } else { + // when keycode KC_00 is released + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_resume1800_iso_all( + /* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */ + 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_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END, + /* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */ + 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_DELETE, KC_NUM_LOCK, KC_PSLS, KC_PAST, KC_PMNS, + /* Tab Q W E R T Y U I O P [ ] Home Num 7 Num 8 Num 9 N/A */ + 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_HOME, KC_P7, KC_P8, KC_P9, KC_TRNS, + /* Caps A S D F G H J K L ; ' ISO # ISO Enter Page Up Num 4 Num 5 Num 6 Num + */ + 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_NUHS, KC_ENT, KC_PGUP, KC_P4, KC_P5, KC_P6, KC_PPLS, + /* Left Shift ISO \ Z X C V B N M , . / R Shift Up Page Down Num 1 Num 2 Num 3 N/A */ + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_TRNS, + /* L Control Windows L Alt Space R Alt Fn R Control Left Down Right Num 00 Num 0 Num . Num Enter */ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_ALGR, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_00, KC_P0, KC_PDOT, KC_PENT) +}; diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c b/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c new file mode 100644 index 0000000000..b8adef49b0 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/via/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2022 CrimsonKeyboards + * + * 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 . + */ +#include QMK_KEYBOARD_H + +enum custom_keycodes { + KC_00 = SAFE_RANGE, //Double Zero +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_00: + if (record->event.pressed) { + // when keycode KC_00 is pressed + SEND_STRING("00"); + } else { + // when keycode KC_00 is released + } + break; + } + return true; +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_resume1800_ansi_all( + /* Esc F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 F13 F14 Print Scroll Lock Pause Insert End */ + 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_F13, KC_F14, KC_PSCR, KC_SCRL, KC_PAUS, KC_INS, KC_END, + /* ~ 1 2 3 4 5 6 7 8 9 0 - = Backspace Delete Num Lock Num / Num * Num - */ + 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_DELETE, KC_NUM_LOCK, KC_PSLS, KC_PAST, KC_PMNS, + /* Tab Q W E R T Y U I O P [ ] \ Home Num 7 Num 8 Num 9 N/A */ + 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, KC_HOME, KC_P7, KC_P8, KC_P9, KC_TRNS, + /* Caps A S D F G H J K L ; ' Enter Page Up Num 4 Num 5 Num 6 Num + */ + 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_PGUP, KC_P4, KC_P5, KC_P6, KC_PPLS, + /* Left Shift Z X C V B N M , . / R Shift Up Page Down Num 1 Num 2 Num 3 N/A */ + 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, KC_PGDN, KC_P1, KC_P2, KC_P3, KC_TRNS, + /* L Control Windows L Alt Space R Alt Fn R Control Left Down Right Num 00 Num 0 Num . Num Enter */ + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_00, KC_P0, KC_PDOT, KC_PENT) +}; diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/via/rules.mk b/keyboards/crimsonkeyboards/resume1800/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/crimsonkeyboards/resume1800/readme.md b/keyboards/crimsonkeyboards/resume1800/readme.md new file mode 100644 index 0000000000..98cfdc5a2f --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/readme.md @@ -0,0 +1,23 @@ +# Resume1800 + +![Resume1800](https://i.imgur.com/IjP3Opw.jpg) + +An 1800 compact keyboard that is built with soley through-hole components + +* Keyboard Maintainer: [CrimsonKeyboards](https://github.com/DeeDesired) +* Hardware Supported: Resume1800, atmega32a + +Make example for this keyboard (after setting up your build environment): + + make crimsonkeyboards/resume1800:default + +Flashing example for this keyboard: + + make crimsonkeyboards/resume1800:default:flash + +How to enter the bootloader: +* 1) Press and hold BOOT +* 2) Press and release RESET +* 3) Release BOOT + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/crimsonkeyboards/resume1800/resume1800.c b/keyboards/crimsonkeyboards/resume1800/resume1800.c new file mode 100644 index 0000000000..63194c6605 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/resume1800.c @@ -0,0 +1,16 @@ +/* + * + * 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 . + */ +#include "resume1800.h" \ No newline at end of file diff --git a/keyboards/crimsonkeyboards/resume1800/resume1800.h b/keyboards/crimsonkeyboards/resume1800/resume1800.h new file mode 100644 index 0000000000..861fe3c032 --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/resume1800.h @@ -0,0 +1,53 @@ +/* + * + * 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 . + */ + +#pragma once + +#define _x_ KC_NO + +#include "quantum.h" + +#define LAYOUT_resume1800_ansi_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, K1G, K1H, K1I, K1J, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, K2G, K2H, K2I, K2J, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3F, K3G, K3H, K3I, K3J, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, K4G, K4H, K4I, K4J, \ + K50, K51, K52, K56, K59, K5A, K5B, K5C, K5D, K5F, K5G, K5H, K5I, K5J \ +) { \ +{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J }, \ +{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, _x_, K1F, K1G, K1H, K1I, K1J }, \ +{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, _x_, K2F, K2G, K2H, K2I, K2J }, \ +{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, _x_, K3D, _x_, K3F, K3G, K3H, K3I, K3J }, \ +{ K40, _x_, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, _x_, K4F, K4G, K4H, K4I, K4J }, \ +{ K50, K51, K52, _x_, _x_, _x_, K56, _x_, _x_, K59, K5A, K5B, K5C, K5D, _x_, K5F, K5G, K5H, K5I, K5J } \ +} + +#define LAYOUT_resume1800_iso_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, K1G, K1H, K1I, K1J, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, K2G, K2H, K2I, K2J, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3F, K3G, K3H, K3I, K3J, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, K4G, K4H, K4I, K4J, \ + K50, K51, K52, K56, K59, K5A, K5B, K5C, K5D, K5F, K5G, K5H, K5I, K5J \ +) { \ +{ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, K0H, K0I, K0J }, \ +{ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, _x_, K1F, K1G, K1H, K1I, K1J }, \ +{ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, _x_, K2F, K2G, K2H, K2I, K2J }, \ +{ K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, _x_, K3D, _x_, K3F, K3G, K3H, K3I, K3J }, \ +{ K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, _x_, K4F, K4G, K4H, K4I, K4J }, \ +{ K50, K51, K52, _x_, _x_, _x_, K56, _x_, _x_, K59, K5A, K5B, K5C, K5D, _x_, K5F, K5G, K5H, K5I, K5J } \ +} diff --git a/keyboards/crimsonkeyboards/resume1800/rules.mk b/keyboards/crimsonkeyboards/resume1800/rules.mk new file mode 100644 index 0000000000..9493018f5c --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32a + +# Processor frequency +F_CPU = 16000000 + +# Bootloader selection +BOOTLOADER = usbasploader + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From b8245a550752ed3826902f63a75203c67282ace7 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 18 Apr 2022 11:51:40 +0100 Subject: [PATCH 279/699] Expose API for hardware unique ID (#16869) --- .../onekey/keymaps/hardware_id/keymap.c | 28 +++++++++++++++++++ platforms/arm_atsam/hardware_id.c | 9 ++++++ platforms/avr/hardware_id.c | 13 +++++++++ platforms/chibios/hardware_id.c | 15 ++++++++++ platforms/common.mk | 1 + platforms/hardware_id.h | 18 ++++++++++++ platforms/test/hardware_id.c | 9 ++++++ 7 files changed, 93 insertions(+) create mode 100644 keyboards/handwired/onekey/keymaps/hardware_id/keymap.c create mode 100644 platforms/arm_atsam/hardware_id.c create mode 100644 platforms/avr/hardware_id.c create mode 100644 platforms/chibios/hardware_id.c create mode 100644 platforms/hardware_id.h create mode 100644 platforms/test/hardware_id.c diff --git a/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c b/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c new file mode 100644 index 0000000000..bcec8b3ca1 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/hardware_id/keymap.c @@ -0,0 +1,28 @@ +#include QMK_KEYBOARD_H +#include "hardware_id.h" +#include +enum custom_keycodes { + DUMP_ID = SAFE_RANGE, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(DUMP_ID) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case DUMP_ID: + if (record->event.pressed) { + hardware_id_t id = get_hardware_id(); + char buffer[100]; + sprintf(buffer, "ID:%lu:%lu:%lu:%lu\n", id.data[0], id.data[1], id.data[2], id.data[3]); +#ifdef CONSOLE_ENABLE + printf(buffer); +#else + send_string(buffer); +#endif + } + break; + } + return false; +}; diff --git a/platforms/arm_atsam/hardware_id.c b/platforms/arm_atsam/hardware_id.c new file mode 100644 index 0000000000..8b3b35a492 --- /dev/null +++ b/platforms/arm_atsam/hardware_id.c @@ -0,0 +1,9 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "hardware_id.h" + +hardware_id_t get_hardware_id(void) { + hardware_id_t id = {0}; + return id; +} diff --git a/platforms/avr/hardware_id.c b/platforms/avr/hardware_id.c new file mode 100644 index 0000000000..073834c19c --- /dev/null +++ b/platforms/avr/hardware_id.c @@ -0,0 +1,13 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include +#include "hardware_id.h" + +hardware_id_t get_hardware_id(void) { + hardware_id_t id = {0}; + for (uint8_t i = 0; i < 10; i += 1) { + ((uint8_t*)&id)[i] = boot_signature_byte_get(i + 0x0E); + } + return id; +} diff --git a/platforms/chibios/hardware_id.c b/platforms/chibios/hardware_id.c new file mode 100644 index 0000000000..888a275465 --- /dev/null +++ b/platforms/chibios/hardware_id.c @@ -0,0 +1,15 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include +#include "hardware_id.h" + +hardware_id_t get_hardware_id(void) { + hardware_id_t id = {0}; +#ifdef UID_BASE + id.data[0] = (uint32_t)(*((uint32_t *)UID_BASE)); + id.data[1] = (uint32_t)(*((uint32_t *)(UID_BASE + 4))); + id.data[1] = (uint32_t)(*((uint32_t *)(UID_BASE + 8))); +#endif + return id; +} diff --git a/platforms/common.mk b/platforms/common.mk index 2a1fc8d377..693bdc8cf0 100644 --- a/platforms/common.mk +++ b/platforms/common.mk @@ -2,6 +2,7 @@ PLATFORM_COMMON_DIR = $(PLATFORM_PATH)/$(PLATFORM_KEY) TMK_COMMON_SRC += \ $(PLATFORM_PATH)/suspend.c \ + $(PLATFORM_COMMON_DIR)/hardware_id.c \ $(PLATFORM_COMMON_DIR)/platform.c \ $(PLATFORM_COMMON_DIR)/suspend.c \ $(PLATFORM_COMMON_DIR)/timer.c \ diff --git a/platforms/hardware_id.h b/platforms/hardware_id.h new file mode 100644 index 0000000000..0c161863d6 --- /dev/null +++ b/platforms/hardware_id.h @@ -0,0 +1,18 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include + +/** \brief Storage for a hardware ID + * + * Ensure this is sized to cover all hardware scenarios + */ +typedef struct hardware_id_t { + uint32_t data[4]; +} hardware_id_t; + +/** \brief Query the devices "unique" ID + */ +hardware_id_t get_hardware_id(void); diff --git a/platforms/test/hardware_id.c b/platforms/test/hardware_id.c new file mode 100644 index 0000000000..8b3b35a492 --- /dev/null +++ b/platforms/test/hardware_id.c @@ -0,0 +1,9 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "hardware_id.h" + +hardware_id_t get_hardware_id(void) { + hardware_id_t id = {0}; + return id; +} From f50a623909a29e45fb9bebfd16afd1835277b530 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 19 Apr 2022 00:39:45 +1000 Subject: [PATCH 280/699] Fixup AVR builds. (#16875) * Fixup AVR builds. * Update platforms/avr/hardware_id.c Co-authored-by: Ryan Co-authored-by: Joel Challis Co-authored-by: Ryan --- platforms/avr/hardware_id.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/platforms/avr/hardware_id.c b/platforms/avr/hardware_id.c index 073834c19c..b61f0d92df 100644 --- a/platforms/avr/hardware_id.c +++ b/platforms/avr/hardware_id.c @@ -1,6 +1,12 @@ // Copyright 2022 QMK // SPDX-License-Identifier: GPL-2.0-or-later +// For some reason this bit is undocumented for some AVR parts and not defined in their avr-libc IO headers +// See https://stackoverflow.com/questions/12350914/how-to-read-atmega-32-signature-row +#ifndef SIGRD +# define SIGRD 5 +#endif // SIGRD + #include #include "hardware_id.h" From 6819420b0edbcd242fa404c473e5cc986343ca64 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Tue, 19 Apr 2022 00:46:52 +1000 Subject: [PATCH 281/699] Preinstall python dependencies before executing `qmk`. (#16874) --- .github/workflows/develop_api.yml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/develop_api.yml b/.github/workflows/develop_api.yml index 3eb6e53c20..44d259cfac 100644 --- a/.github/workflows/develop_api.yml +++ b/.github/workflows/develop_api.yml @@ -24,7 +24,9 @@ jobs: persist-credentials: false - name: Generate API Data - run: qmk generate-api + run: | + python3 -m pip install -r requirements-dev.txt + qmk generate-api - name: Upload API Data uses: jakejarvis/s3-sync-action@master From 1ab1ce1b46bc3c9ec15caee1b06821d310c8fa50 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Mon, 18 Apr 2022 11:01:33 -0600 Subject: [PATCH 282/699] [Keyboard] Fix resume1800 - Dynamic layer count undefined (#16877) --- .../crimsonkeyboards/resume1800/config.h | 38 +------------------ .../resume1800/keymaps/via/config.h | 4 ++ .../crimsonkeyboards/resume1800/readme.md | 2 +- 3 files changed, 7 insertions(+), 37 deletions(-) create mode 100644 keyboards/crimsonkeyboards/resume1800/keymaps/via/config.h diff --git a/keyboards/crimsonkeyboards/resume1800/config.h b/keyboards/crimsonkeyboards/resume1800/config.h index 37c36b42d4..d6552b744e 100644 --- a/keyboards/crimsonkeyboards/resume1800/config.h +++ b/keyboards/crimsonkeyboards/resume1800/config.h @@ -48,37 +48,6 @@ along with this program. If not, see . #define USB_MAX_POWER_CONSUMPTION 100 -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ -// #define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 - -// #define BACKLIGHT_PIN B7 -// #define BACKLIGHT_BREATHING -// #define BACKLIGHT_LEVELS 3 - -// #define RGB_DI_PIN E2 -// #ifdef RGB_DI_PIN -// #define RGBLED_NUM 16 -// #define RGBLIGHT_HUE_STEP 8 -// #define RGBLIGHT_SAT_STEP 8 -// #define RGBLIGHT_VAL_STEP 8 -// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -// #endif - /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 @@ -89,8 +58,6 @@ along with this program. If not, see . /* 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 */ @@ -139,6 +106,5 @@ along with this program. If not, see . //#define NO_ACTION_ONESHOT /* Bootmagic Lite key configuration */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 - +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/crimsonkeyboards/resume1800/keymaps/via/config.h b/keyboards/crimsonkeyboards/resume1800/keymaps/via/config.h new file mode 100644 index 0000000000..3e0503efbb --- /dev/null +++ b/keyboards/crimsonkeyboards/resume1800/keymaps/via/config.h @@ -0,0 +1,4 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#define DYNAMIC_KEYMAP_LAYER_COUNT 1 diff --git a/keyboards/crimsonkeyboards/resume1800/readme.md b/keyboards/crimsonkeyboards/resume1800/readme.md index 98cfdc5a2f..f79117a036 100644 --- a/keyboards/crimsonkeyboards/resume1800/readme.md +++ b/keyboards/crimsonkeyboards/resume1800/readme.md @@ -1,6 +1,6 @@ # Resume1800 -![Resume1800](https://i.imgur.com/IjP3Opw.jpg) +![Resume1800](https://i.imgur.com/IjP3Opwh.jpg) An 1800 compact keyboard that is built with soley through-hole components From 773124e9c06ddb263f3c9afbb9fc9256e535e1d4 Mon Sep 17 00:00:00 2001 From: 8bits4ever <87928173+8bits4ever@users.noreply.github.com> Date: Tue, 19 Apr 2022 02:18:10 +0200 Subject: [PATCH 283/699] [Keyboard] Add converter/a1200/mistress1200 variant (#16634) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- .../converter/a1200/keymaps/default/keymap.c | 4 +- .../converter/a1200/mistress1200/config.h | 61 +++++++++++++++++++ .../converter/a1200/mistress1200/rules.mk | 19 ++++++ keyboards/converter/a1200/readme.md | 11 +++- 4 files changed, 90 insertions(+), 5 deletions(-) create mode 100644 keyboards/converter/a1200/mistress1200/config.h create mode 100644 keyboards/converter/a1200/mistress1200/rules.mk diff --git a/keyboards/converter/a1200/keymaps/default/keymap.c b/keyboards/converter/a1200/keymaps/default/keymap.c index 4f7c7be843..8ebc5ee53a 100644 --- a/keyboards/converter/a1200/keymaps/default/keymap.c +++ b/keyboards/converter/a1200/keymaps/default/keymap.c @@ -21,8 +21,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_BSPC, KC_DEL, MO(1), KC_LPRN, KC_RPRN, KC_PSLS, KC_PAST, 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_P7, KC_P8, KC_P9, KC_PMNS, - KC_LCTL, 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_NO, KC_ENT, KC_UP, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_LSFT, KC_NO, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, 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_NUHS,KC_ENT, KC_UP, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_LEFT, KC_DOWN, KC_RGHT, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_P0, KC_PDOT ), diff --git a/keyboards/converter/a1200/mistress1200/config.h b/keyboards/converter/a1200/mistress1200/config.h new file mode 100644 index 0000000000..2ae2525398 --- /dev/null +++ b/keyboards/converter/a1200/mistress1200/config.h @@ -0,0 +1,61 @@ +/* +Copyright 2021 8bits4ever + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFFFF +#define PRODUCT_ID 0x0000 +#define DEVICE_VER 0x0001 +#define MANUFACTURER 8bits4ever +#define PRODUCT MiSTress1200 + +/* key matrix size */ +#define MATRIX_ROWS 8 +#define MATRIX_COLS 16 + +/* + * 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 { F7, F6, F5, F4, F1, F0, B1, B3 } +#define MATRIX_COL_PINS { D0, D1, C7, D6, B7, B6, B5, B4, E6, D7, C6, D4, B2, D5, D3, D2 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION ROW2COL + +#define LED_CAPS_LOCK_PIN B0 +#define LED_PIN_ON_STATE 0 + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + + +/* disable action features */ +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT + diff --git a/keyboards/converter/a1200/mistress1200/rules.mk b/keyboards/converter/a1200/mistress1200/rules.mk new file mode 100644 index 0000000000..56aa5d9ba9 --- /dev/null +++ b/keyboards/converter/a1200/mistress1200/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = atmega16u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +LTO_ENABLE = yes diff --git a/keyboards/converter/a1200/readme.md b/keyboards/converter/a1200/readme.md index 96c36b6207..29eed4a615 100644 --- a/keyboards/converter/a1200/readme.md +++ b/keyboards/converter/a1200/readme.md @@ -3,12 +3,12 @@ Modification of the Model-M 101 membrane adapter (converter/modelm101) to work with Amiga 1200 keyboard (and possibly Amiga 500/600 too). The adapter allows using the original Amiga keyboard as a USB input device, either with a desktop PC or a R-Pi/FPGA board hosted inside the Amiga case. -Available for two micros: AT90USB1286 (Teensy 2++ board), and ATmega32u4 (MiSS-1200 FPGA board). +Available for three micros: AT90USB1286 (Teensy 2++ board), Atmega32u4 (MiSS-1200 FPGA board), and Atmega16u4 (MiSTress-1200 conversion kit). A small PCB adapter is needed for connecting the keyboard membrane to the Teensy 2.0++ board. A very simple example of such a board is available here: https://github.com/8bits4ever/A1200-Keyboard-Adapter -The MiSS-1200 FPGA board features a dedicated connector for the Amiga 1200 membrane keyboard. +The MiSS-1200 FPGA board and MiSTress-1200 conversion kit both feature a dedicated connector for the Amiga 1200 membrane keyboard. Files have been modified in accordance to the Amiga keyboard layout and features. A second layer has been implemented (momentary toggle "Help" key) to access unexistent keys (like F11 and F12). This is a work in progress. @@ -25,7 +25,7 @@ Status LEDs: CapsLock +5V Pins: B6 5V ``` -Pins assignment MiSS-1200 board (ATmega32u4): +Pins assignment MiSS-1200 board (ATmega32u4) and MiSTress-1200 (Atmega16u4): ``` Columns: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 Pins: D0 D1 C7 D6 B7 B6 B5 B4 E6 D7 C6 D4 B2 D5 D3 D2 @@ -51,5 +51,10 @@ Or: make converter/a1200/miss1200:default +Or: + + make converter/a1200/mistress1200:default + + See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). From 90dd16ccd208ff1b6502043dd6e9effa7e6162e5 Mon Sep 17 00:00:00 2001 From: Andrew Charnley Date: Tue, 19 Apr 2022 01:23:38 +0100 Subject: [PATCH 284/699] [Keymap] Add andrewcharnley keymap for GMMK Pro (#15320) --- .../pro/ansi/keymaps/andrewcharnley/config.h | 24 +++++ .../pro/ansi/keymaps/andrewcharnley/keymap.c | 87 +++++++++++++++++++ .../pro/ansi/keymaps/andrewcharnley/readme.md | 18 ++++ 3 files changed, 129 insertions(+) create mode 100644 keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/config.h create mode 100644 keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/keymap.c create mode 100644 keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/readme.md diff --git a/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/config.h b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/config.h new file mode 100644 index 0000000000..aee1ba39d5 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/config.h @@ -0,0 +1,24 @@ +/* Copyright 2021 Andrew Charnley + * + * 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 . + */ + +#pragma once + +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_STATIC_LIGHT +#define RGBLIGHT_DEFAULT_SAT 0 +#define RGB_DISABLE_WHEN_USB_SUSPENDED +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR + + diff --git a/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/keymap.c new file mode 100644 index 0000000000..d044008a23 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/keymap.c @@ -0,0 +1,87 @@ +/* Copyright 2021 Andrew Charnley + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Windows key changed to second FN key. Use KC_LGUI to revert. + +enum userspace_layers { + QWERTY, + FNLAYER +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB + // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI + // if that's your preference. + // + // To put the keyboard in bootloader mode, use FN+backslash. If you accidentally put it into bootloader, you can just unplug the USB cable and + // it'll be back to normal when you plug it back in. + + [QWERTY] = 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_PSCR, KC_MUTE, + KC_GRV, 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_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_BSLS, KC_PGUP, + 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_PGDN, + 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, KC_END, + KC_LCTL, MO(FNLAYER), KC_LALT, KC_SPC, KC_RALT, MO(FNLAYER),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [FNLAYER] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MEDIA_PLAY_PAUSE, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET , _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, _______, + _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______ + ), +}; + +bool encoder_update_user(uint8_t index, bool clockwise) { + if(IS_LAYER_ON(FNLAYER)) { + if (clockwise) { + tap_code(KC_MEDIA_NEXT_TRACK); + } else { + tap_code(KC_MEDIA_PREV_TRACK); + } + } else { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } + return false; +} + +static uint8_t val; + +void keyboard_post_init_user(void) { + + val = rgb_matrix_get_val(); +} + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color_all(val,0,0); + } else { + rgb_matrix_set_color_all(val, val, val); + val = rgb_matrix_get_val(); + } +} diff --git a/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/readme.md b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/readme.md new file mode 100644 index 0000000000..e064edd83a --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/andrewcharnley/readme.md @@ -0,0 +1,18 @@ +# Description +A keymap designed to be functional for development purposes - no flashing lights or gimmicks. PRTSC and DEL key in the top right corner. +Solid backlight that changes red if CAPS is on and reverts back afterwards. Brightness retained in both cases. +Backlight is disabled on suspend and restored upon wake-up. +The 'Windows' key is a second FN key. This makes it more natural to use the encoder wheel (good luck trying to do it with one hand). + +Compile using `qmk compile -kb gmmk/pro/ansi -km andrewcharnley` + +# Encoder +FN + Encoder scroll = media next/prev +FN + Encoder press = media pause +default encoder behavior = volume up/down + +# Function Layer +FN + Up = increase brightness +FN + Down = decrease brightness +FN + Backslash = bootloader + From 958600d51844ca267c9c7dac5f5686c54428b19b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=E1=BA=AFn?= <59417802+MaiTheSan@users.noreply.github.com> Date: Tue, 19 Apr 2022 09:33:32 +0700 Subject: [PATCH 285/699] [Keyboard] Add Amber80 Solder & VCL65 Solder (#15945) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/sawnsprojects/amber80/readme.md | 25 +++++ .../sawnsprojects/amber80/solder/config.h | 72 +++++++++++++ .../sawnsprojects/amber80/solder/info.json | 101 ++++++++++++++++++ .../amber80/solder/keymaps/default/keymap.c | 30 ++++++ .../amber80/solder/keymaps/default/readme.md | 1 + .../amber80/solder/keymaps/via/keymap.c | 54 ++++++++++ .../amber80/solder/keymaps/via/readme.md | 1 + .../amber80/solder/keymaps/via/rules.mk | 2 + .../sawnsprojects/amber80/solder/readme.md | 24 +++++ .../sawnsprojects/amber80/solder/rules.mk | 18 ++++ .../sawnsprojects/amber80/solder/solder.c | 17 +++ .../sawnsprojects/amber80/solder/solder.h | 44 ++++++++ keyboards/sawnsprojects/vcl65/readme.md | 25 +++++ keyboards/sawnsprojects/vcl65/solder/config.h | 66 ++++++++++++ .../sawnsprojects/vcl65/solder/info.json | 81 ++++++++++++++ .../vcl65/solder/keymaps/default/keymap.c | 38 +++++++ .../vcl65/solder/keymaps/default/readme.md | 1 + .../vcl65/solder/keymaps/sawns/keymap.c | 50 +++++++++ .../vcl65/solder/keymaps/sawns/readme.md | 1 + .../vcl65/solder/keymaps/sawns/rules.mk | 1 + .../vcl65/solder/keymaps/via/keymap.c | 51 +++++++++ .../vcl65/solder/keymaps/via/readme.md | 1 + .../vcl65/solder/keymaps/via/rules.mk | 1 + .../sawnsprojects/vcl65/solder/readme.md | 23 ++++ keyboards/sawnsprojects/vcl65/solder/rules.mk | 18 ++++ keyboards/sawnsprojects/vcl65/solder/solder.c | 17 +++ keyboards/sawnsprojects/vcl65/solder/solder.h | 36 +++++++ 27 files changed, 799 insertions(+) create mode 100644 keyboards/sawnsprojects/amber80/readme.md create mode 100644 keyboards/sawnsprojects/amber80/solder/config.h create mode 100644 keyboards/sawnsprojects/amber80/solder/info.json create mode 100644 keyboards/sawnsprojects/amber80/solder/keymaps/default/keymap.c create mode 100644 keyboards/sawnsprojects/amber80/solder/keymaps/default/readme.md create mode 100644 keyboards/sawnsprojects/amber80/solder/keymaps/via/keymap.c create mode 100644 keyboards/sawnsprojects/amber80/solder/keymaps/via/readme.md create mode 100644 keyboards/sawnsprojects/amber80/solder/keymaps/via/rules.mk create mode 100644 keyboards/sawnsprojects/amber80/solder/readme.md create mode 100644 keyboards/sawnsprojects/amber80/solder/rules.mk create mode 100644 keyboards/sawnsprojects/amber80/solder/solder.c create mode 100644 keyboards/sawnsprojects/amber80/solder/solder.h create mode 100644 keyboards/sawnsprojects/vcl65/readme.md create mode 100644 keyboards/sawnsprojects/vcl65/solder/config.h create mode 100644 keyboards/sawnsprojects/vcl65/solder/info.json create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/default/readme.md create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/keymap.c create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/readme.md create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/rules.mk create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/via/readme.md create mode 100644 keyboards/sawnsprojects/vcl65/solder/keymaps/via/rules.mk create mode 100644 keyboards/sawnsprojects/vcl65/solder/readme.md create mode 100644 keyboards/sawnsprojects/vcl65/solder/rules.mk create mode 100644 keyboards/sawnsprojects/vcl65/solder/solder.c create mode 100644 keyboards/sawnsprojects/vcl65/solder/solder.h diff --git a/keyboards/sawnsprojects/amber80/readme.md b/keyboards/sawnsprojects/amber80/readme.md new file mode 100644 index 0000000000..bc5dd417fc --- /dev/null +++ b/keyboards/sawnsprojects/amber80/readme.md @@ -0,0 +1,25 @@ +# Amber80 solder + +A TKL keyboard sold in several variants. + +1. [Solder](solder/): 1/2022. Atmega32u4 soldered keyboard. Sold under the name "Amber80" with Amber80 keyboard case. Compatible with Amber80 keyboard case. + + **Firmware files are SPECIFIC to each board. Firmware files from one, will not work on the other.** Please use the `.hex` or `.bin` appropriate for your board. + +* Keyboard Maintainer: [SawnsProjects](https://github.com/MaiTheSan) +* Hardware Supported: Amber80 +* Hardware Availability: Comming Soon + +Make examples for this keyboard (after setting up your build environment): + + make sawnsprojects/amber80/solder:default + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/config.h b/keyboards/sawnsprojects/amber80/solder/config.h new file mode 100644 index 0000000000..90c9bc522c --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/config.h @@ -0,0 +1,72 @@ +/* Copyright 2022 SawnsProjects + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5350 +#define PRODUCT_ID 0xA801 +#define DEVICE_VER 0x0001 +#define MANUFACTURER SawnsProjects X Yuutsu X Zlane +#define PRODUCT Amber80 Solder + +/* key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 9 + +/* Indicator */ +#define LED_CAPS_LOCK_PIN F5 +#define LED_SCROLL_LOCK_PIN B0 +#define LED_PIN_ON_STATE 0 +/* + * 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 { B1, B2, B3, B7, D0, D1, F1, F0, D7, B4, D5, D3 } +#define MATRIX_COL_PINS { F4, F6, F7, C7, C6, B6, B5, D6, D4 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* RGB */ +#define RGB_DI_PIN D2 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 22 + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +// /*== or choose animations ==*/ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING +#endif diff --git a/keyboards/sawnsprojects/amber80/solder/info.json b/keyboards/sawnsprojects/amber80/solder/info.json new file mode 100644 index 0000000000..49ca20594c --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/info.json @@ -0,0 +1,101 @@ +{ + "keyboard_name": "Amber80 SOLDER", + "url": "", + "maintainer": "SawnsProjects", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "K00 (B1,F4)", "x": 0, "y": 0 }, + { "label": "K10 (B2,F4)", "x": 1.25, "y": 0 }, + { "label": "K01 (B1,F6)", "x": 2.25, "y": 0 }, + { "label": "K11 (B2,F6)", "x": 3.25, "y": 0 }, + { "label": "K02 (B1,F7)", "x": 4.25, "y": 0 }, + { "label": "K12 (B2,F7)", "x": 5.5, "y": 0 }, + { "label": "K03 (B1,C7)", "x": 6.5, "y": 0 }, + { "label": "K13 (B2,C7)", "x": 7.5, "y": 0 }, + { "label": "K04 (B1,C6)", "x": 8.5, "y": 0 }, + { "label": "K14 (B2,C6)", "x": 9.75, "y": 0 }, + { "label": "K05 (B1,B6)", "x": 10.75, "y": 0 }, + { "label": "K15 (B2,B6)", "x": 11.75, "y": 0 }, + { "label": "K06 (B1,B5)", "x": 12.75, "y": 0 }, + { "label": "K16 (B2,B5)", "x": 14, "y": 0 }, + { "label": "K17 (B2,D6)", "x": 15.25, "y": 0 }, + { "label": "K08 (B1,D4)", "x": 16.25, "y": 0 }, + { "label": "K18 (B2,D4)", "x": 17.25, "y": 0 }, + { "label": "K20 (B3,F4)", "x": 0, "y": 1.25 }, + { "label": "K30 (B7,F4)", "x": 1, "y": 1.25 }, + { "label": "K21 (B3,F6)", "x": 2, "y": 1.25 }, + { "label": "K31 (B7,F6)", "x": 3, "y": 1.25 }, + { "label": "K22 (B3,F7)", "x": 4, "y": 1.25 }, + { "label": "K32 (B7,F7)", "x": 5, "y": 1.25 }, + { "label": "K23 (B3,C7)", "x": 6, "y": 1.25 }, + { "label": "K33 (B7,C7)", "x": 7, "y": 1.25 }, + { "label": "K24 (B3,C6)", "x": 8, "y": 1.25 }, + { "label": "K34 (B7,C6)", "x": 9, "y": 1.25 }, + { "label": "K25 (B3,B6)", "x": 10, "y": 1.25 }, + { "label": "K35 (B7,B6)", "x": 11, "y": 1.25 }, + { "label": "K26 (B3,B5)", "x": 12, "y": 1.25 }, + { "label": "K36 (B7,B5)", "x": 13, "y": 1.25 }, + { "label": "K27 (B3,D6)", "x": 14, "y": 1.25 }, + { "label": "K37 (B7,D6)", "x": 15.25, "y": 1.25 }, + { "label": "K28 (B3,D4)", "x": 16.25, "y": 1.25 }, + { "label": "K38 (B7,D4)", "x": 17.25, "y": 1.25 }, + { "label": "K40 (D0,F4)", "x": 0, "y": 2.25, "w": 1.5 }, + { "label": "K50 (D1,F4)", "x": 1.5, "y": 2.25 }, + { "label": "K41 (D0,F6)", "x": 2.5, "y": 2.25 }, + { "label": "K51 (D1,F6)", "x": 3.5, "y": 2.25 }, + { "label": "K42 (D0,F7)", "x": 4.5, "y": 2.25 }, + { "label": "K52 (D1,F7)", "x": 5.5, "y": 2.25 }, + { "label": "K43 (D0,C7)", "x": 6.5, "y": 2.25 }, + { "label": "K53 (D1,C7)", "x": 7.5, "y": 2.25 }, + { "label": "K44 (D0,C6)", "x": 8.5, "y": 2.25 }, + { "label": "K54 (D1,C6)", "x": 9.5, "y": 2.25 }, + { "label": "K45 (D0,B6)", "x": 10.5, "y": 2.25 }, + { "label": "K55 (D1,B6)", "x": 11.5, "y": 2.25 }, + { "label": "K46 (D0,B5)", "x": 12.5, "y": 2.25 }, + { "label": "K56 (D1,B5)", "x": 13.5, "y": 2.25, "w": 1.5 }, + { "label": "K57 (D1,D6)", "x": 15.25, "y": 2.25 }, + { "label": "K48 (D0,D4)", "x": 16.25, "y": 2.25 }, + { "label": "K58 (D1,D4)", "x": 17.25, "y": 2.25 }, + { "label": "K60 (F1,F4)", "x": 0, "y": 3.25, "w": 1.75 }, + { "label": "K70 (F0,F4)", "x": 1.75, "y": 3.25 }, + { "label": "K61 (F1,F6)", "x": 2.75, "y": 3.25 }, + { "label": "K71 (F0,F6)", "x": 3.75, "y": 3.25 }, + { "label": "K62 (F1,F7)", "x": 4.75, "y": 3.25 }, + { "label": "K72 (F0,F7)", "x": 5.75, "y": 3.25 }, + { "label": "K63 (F1,C7)", "x": 6.75, "y": 3.25 }, + { "label": "K73 (F0,C7)", "x": 7.75, "y": 3.25 }, + { "label": "K64 (F1,C6)", "x": 8.75, "y": 3.25 }, + { "label": "K74 (F0,C6)", "x": 9.75, "y": 3.25 }, + { "label": "K65 (F1,B6)", "x": 10.75, "y": 3.25 }, + { "label": "K75 (F0,B6)", "x": 11.75, "y": 3.25 }, + { "label": "K76 (F0,B5)", "x": 12.75, "y": 3.25, "w": 2.25 }, + { "label": "K80 (D7,F4)", "x": 0, "y": 4.25, "w": 1.25 }, + { "label": "K90 (B4,F4)", "x": 1.25, "y": 4.25 }, + { "label": "K81 (D7,F6)", "x": 2.25, "y": 4.25 }, + { "label": "K91 (B4,F6)", "x": 3.25, "y": 4.25 }, + { "label": "K82 (D7,F7)", "x": 4.25, "y": 4.25 }, + { "label": "K92 (B4,F7)", "x": 5.25, "y": 4.25 }, + { "label": "K83 (D7,C7)", "x": 6.25, "y": 4.25 }, + { "label": "K93 (B4,C7)", "x": 7.25, "y": 4.25 }, + { "label": "K84 (D7,C6)", "x": 8.25, "y": 4.25 }, + { "label": "K94 (B4,C6)", "x": 9.25, "y": 4.25 }, + { "label": "K85 (D7,B6)", "x": 10.25, "y": 4.25 }, + { "label": "K95 (B4,B6)", "x": 11.25, "y": 4.25 }, + { "label": "K86 (D7,B5)", "x": 12.25, "y": 4.25, "w": 1.75 }, + { "label": "K96 (B4,B5)", "x": 14, "y": 4.25 }, + { "label": "K88 (D7,D4)", "x": 16.25, "y": 4.25 }, + { "label": "KA0 (D5,F4)", "x": 0, "y": 5.25, "w": 1.5 }, + { "label": "KB0 (D3,F4)", "x": 1.5, "y": 5.25 }, + { "label": "KA1 (D5,F6)", "x": 2.5, "y": 5.25, "w": 1.5 }, + { "label": "KB3 (D3,C7)", "x": 4, "y": 5.25, "w": 7 }, + { "label": "KA6 (D5,B5)", "x": 11, "y": 5.25, "w": 1.5 }, + { "label": "KB6 (D3,B5)", "x": 12.5, "y": 5.25 }, + { "label": "KA7 (D5,D6)", "x": 13.5, "y": 5.25, "w": 1.5 }, + { "label": "KB7 (D3,D6)", "x": 15.25, "y": 5.25 }, + { "label": "KA8 (D5,D4)", "x": 16.25, "y": 5.25 }, + { "label": "KB8 (D3,D4)", "x": 17.25, "y": 5.25 } + ] + } + } +} diff --git a/keyboards/sawnsprojects/amber80/solder/keymaps/default/keymap.c b/keyboards/sawnsprojects/amber80/solder/keymaps/default/keymap.c new file mode 100644 index 0000000000..ffc9beb772 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/keymaps/default/keymap.c @@ -0,0 +1,30 @@ +/* Copyright 2022 SawnsProjects + * + * 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 . + */ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_KANA, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/keymaps/default/readme.md b/keyboards/sawnsprojects/amber80/solder/keymaps/default/readme.md new file mode 100644 index 0000000000..60f00eb4ba --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Amber80 Solder \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/keymaps/via/keymap.c b/keyboards/sawnsprojects/amber80/solder/keymaps/via/keymap.c new file mode 100644 index 0000000000..b8e8084374 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* Copyright 2022 SawnsProjects + * + * 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 . + */ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_KANA, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + 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, 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, 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 + ), + [2] = LAYOUT_all( + 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, 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, 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 + ), + [3] = LAYOUT_all( + 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, 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, 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 + ) +}; \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/keymaps/via/readme.md b/keyboards/sawnsprojects/amber80/solder/keymaps/via/readme.md new file mode 100644 index 0000000000..3313fcc41a --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for Amber80 Solder \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/keymaps/via/rules.mk b/keyboards/sawnsprojects/amber80/solder/keymaps/via/rules.mk new file mode 100644 index 0000000000..43061db1dd --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/readme.md b/keyboards/sawnsprojects/amber80/solder/readme.md new file mode 100644 index 0000000000..a429328702 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/readme.md @@ -0,0 +1,24 @@ +# Amber80 solder + +![Amber80](https://i.imgur.com/ygUgpqZh.jpg) + +A TKL keyboard sold in several variants. + +* Keyboard Maintainer: [SawnsProjects](https://github.com/MaiTheSan) +* Hardware Supported: Amber80 +* Hardware Availability: Comming Soon + +Make example for this keyboard (after setting up your build environment): + + make sawnsprojects/amber80/solder:default + + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/sawnsprojects/amber80/solder/rules.mk b/keyboards/sawnsprojects/amber80/solder/rules.mk new file mode 100644 index 0000000000..4613b7d460 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file diff --git a/keyboards/sawnsprojects/amber80/solder/solder.c b/keyboards/sawnsprojects/amber80/solder/solder.c new file mode 100644 index 0000000000..b7dbe1e558 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/solder.c @@ -0,0 +1,17 @@ +/* Copyright 2022 SawnsProjects + * + * 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 . + */ + +#include "solder.h" diff --git a/keyboards/sawnsprojects/amber80/solder/solder.h b/keyboards/sawnsprojects/amber80/solder/solder.h new file mode 100644 index 0000000000..9f76795162 --- /dev/null +++ b/keyboards/sawnsprojects/amber80/solder/solder.h @@ -0,0 +1,44 @@ +/* Copyright 2022 SawnsProjects + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_all( \ + K00, K10, K01, K11, K02, K12, K03, K13, K04, K14, K05, K15, K06, K16, K17, K08, K18, \ + K20, K30, K21, K31, K22, K32, K23, K33, K24, K34, K25, K35, K26, K36, K27, K37, K28, K38, \ + K40, K50, K41, K51, K42, K52, K43, K53, K44, K54, K45, K55, K46, K56, K57, K48, K58, \ + K60, K70, K61, K71, K62, K72, K63, K73, K64, K74, K65, K75, K76, \ + K80, K90, K81, K91, K82, K92, K83, K93, K84, K94, K85, K95, K86, K96, K88, \ + KA0, KB0, KA1, KB3, KA6, KB6, KA7, KB7, KA8, KB8 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, XXX, K08 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38 }, \ + { K40, K41, K42, K43, K44, K45, K46, XXX, K48 }, \ + { K50, K51, K52, K53, K54, K55, K56, K57, K58 }, \ + { K60, K61, K62, K63, K64, K65, XXX, XXX, XXX }, \ + { K70, K71, K72, K73, K74, K75, K76, XXX, XXX }, \ + { K80, K81, K82, K83, K84, K85, K86, XXX, K88 }, \ + { K90, K91, K92, K93, K94, K95, K96, XXX, XXX }, \ + { KA0, KA1, XXX, XXX, XXX, XXX, KA6, KA7, KA8 }, \ + { KB0, XXX, XXX, KB3, XXX, XXX, KB6, KB7, KB8 }, \ +} + diff --git a/keyboards/sawnsprojects/vcl65/readme.md b/keyboards/sawnsprojects/vcl65/readme.md new file mode 100644 index 0000000000..025c41badf --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/readme.md @@ -0,0 +1,25 @@ +# VCL65 solder + +A 65% keyboard sold in several variants. + +1. [Solder](solder/): 06/2021. Atmega32u4 soldered keyboard. Sold under the name "VCL65" with Lotus 65 lite keyboard case. Compatible with some 65% traymount case, VCL65 and Lotus65. + + **Firmware files are SPECIFIC to each board. Firmware files from one, will not work on the other.** Please use the `.hex` or `.bin` appropriate for your board. + +* Keyboard Maintainer: [SawnsProjects](https://github.com/MaiTheSan) & [Hoaq](https://github.com/itsmehoaq) +* Hardware Supported: Lotus65 lite, VCL65, 65% traymount case +* Hardware Availability: Private Discord GB + +Make examples for this keyboard (after setting up your build environment): + + make sawnsprojects/vcl65/solder:default + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/config.h b/keyboards/sawnsprojects/vcl65/solder/config.h new file mode 100644 index 0000000000..bf1a7cdde6 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/config.h @@ -0,0 +1,66 @@ +/* Copyright 2021 SawnsProjects + * + * 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 . + */ + +#pragma once +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x5350 +#define PRODUCT_ID 0x1727 +#define DEVICE_VER 0x0001 +#define MANUFACTURER VCL x SawnsProjects +#define PRODUCT VCL65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { F6, F7, F0, F4, B1 } +#define MATRIX_COL_PINS { B2, B5, F5, C7, B4, C6, D7, D6, D4, D5, D3, D2, B6, D1, D0 } +#define UNUSED_PINS + +/* indicator */ +// #define LED_CAPS_LOCK_PIN F0 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW +/* Caps Lock */ +#define LED_CAPS_LOCK_PIN F1 +#define LED_PIN_ON_STATE 0 +/* rotary */ + +#define RGB_DI_PIN B7 +#ifdef RGB_DI_PIN + #define RGBLED_NUM 20 + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 200 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +/*== all animations enable ==*/ +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#endif \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/info.json b/keyboards/sawnsprojects/vcl65/solder/info.json new file mode 100644 index 0000000000..bae3093b4f --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/info.json @@ -0,0 +1,81 @@ +{ + "keyboard_name": "VCL65 Solder", + "url": "", + "maintainer": "MaiTheSan", + "layouts": { + "LAYOUT_all": { + "layout": [ + { "label": "K00 (F6,B2)", "x": 0, "y": 0 }, + { "label": "K01 (F6,B5)", "x": 1, "y": 0 }, + { "label": "K02 (F6,F5)", "x": 2, "y": 0 }, + { "label": "K03 (F6,C7)", "x": 3, "y": 0 }, + { "label": "K04 (F6,B4)", "x": 4, "y": 0 }, + { "label": "K05 (F6,C6)", "x": 5, "y": 0 }, + { "label": "K06 (F6,D7)", "x": 6, "y": 0 }, + { "label": "K07 (F6,D6)", "x": 7, "y": 0 }, + { "label": "K08 (F6,D4)", "x": 8, "y": 0 }, + { "label": "K09 (F6,D5)", "x": 9, "y": 0 }, + { "label": "K0A (F6,D3)", "x": 10, "y": 0 }, + { "label": "K0B (F6,D2)", "x": 11, "y": 0 }, + { "label": "K0C (F6,B6)", "x": 12, "y": 0 }, + { "label": "K0D (F6,D1)", "x": 13, "y": 0 }, + { "label": "K2C (F4,B6)", "x": 14, "y": 0 }, + { "label": "K0E (F6,D0)", "x": 15, "y": 0 }, + { "label": "K10 (F7,B2)", "x": 0, "y": 1, "w": 1.5 }, + { "label": "K11 (F7,B5)", "x": 1.5, "y": 1 }, + { "label": "K12 (F7,F5)", "x": 2.5, "y": 1 }, + { "label": "K13 (F7,C7)", "x": 3.5, "y": 1 }, + { "label": "K14 (F7,B4)", "x": 4.5, "y": 1 }, + { "label": "K15 (F7,C6)", "x": 5.5, "y": 1 }, + { "label": "K16 (F7,D7)", "x": 6.5, "y": 1 }, + { "label": "K17 (F7,D6)", "x": 7.5, "y": 1 }, + { "label": "K18 (F7,D4)", "x": 8.5, "y": 1 }, + { "label": "K19 (F7,D5)", "x": 9.5, "y": 1 }, + { "label": "K1A (F7,D3)", "x": 10.5, "y": 1 }, + { "label": "K1B (F7,D2)", "x": 11.5, "y": 1 }, + { "label": "K1C (F7,B6)", "x": 12.5, "y": 1 }, + { "label": "K1D (F7,D1)", "x": 13.5, "y": 1, "w": 1.5 }, + { "label": "K1E (F7,D0)", "x": 15, "y": 1 }, + { "label": "K20 (F4,B2)", "x": 0, "y": 2, "w": 1.75 }, + { "label": "K21 (F4,B5)", "x": 1.75, "y": 2 }, + { "label": "K22 (F4,F5)", "x": 2.75, "y": 2 }, + { "label": "K23 (F4,C7)", "x": 3.75, "y": 2 }, + { "label": "K24 (F4,B4)", "x": 4.75, "y": 2 }, + { "label": "K25 (F4,C6)", "x": 5.75, "y": 2 }, + { "label": "K26 (F4,D7)", "x": 6.75, "y": 2 }, + { "label": "K27 (F4,D6)", "x": 7.75, "y": 2 }, + { "label": "K28 (F4,D4)", "x": 8.75, "y": 2 }, + { "label": "K29 (F4,D5)", "x": 9.75, "y": 2 }, + { "label": "K2A (F4,D3)", "x": 10.75, "y": 2 }, + { "label": "K2B (F4,D2)", "x": 11.75, "y": 2 }, + { "label": "K2D (F4,D1)", "x": 12.75, "y": 2, "w": 2.25 }, + { "label": "K2E (F4,D0)", "x": 15, "y": 2 }, + { "label": "K30 (B0,B2)", "x": 0, "y": 3, "w": 1.25 }, + { "label": "K31 (B0,B5)", "x": 1.25, "y": 3 }, + { "label": "K32 (B0,F5)", "x": 2.25, "y": 3 }, + { "label": "K33 (B0,C7)", "x": 3.25, "y": 3 }, + { "label": "K34 (B0,B4)", "x": 4.25, "y": 3 }, + { "label": "K35 (B0,C6)", "x": 5.25, "y": 3 }, + { "label": "K36 (B0,D7)", "x": 6.25, "y": 3 }, + { "label": "K37 (B0,D6)", "x": 7.25, "y": 3 }, + { "label": "K38 (B0,D4)", "x": 8.25, "y": 3 }, + { "label": "K39 (B0,D5)", "x": 9.25, "y": 3 }, + { "label": "K3A (B0,D3)", "x": 10.25, "y": 3 }, + { "label": "K3B (B0,D2)", "x": 11.25, "y": 3 }, + { "label": "K3C (B0,B6)", "x": 12.25, "y": 3, "w": 1.75 }, + { "label": "K3D (B0,D1)", "x": 14, "y": 3 }, + { "label": "K3E (B0,D0)", "x": 15, "y": 3 }, + { "label": "K40 (B1,B2)", "x": 0, "y": 4, "w": 1.25 }, + { "label": "K41 (B1,B5)", "x": 1.25, "y": 4, "w": 1.25 }, + { "label": "K42 (B1,F5)", "x": 2.5, "y": 4, "w": 1.25 }, + { "label": "K46 (B1,D7)", "x": 3.75, "y": 4, "w": 6.25 }, + { "label": "K49 (B1,D5)", "x": 10, "y": 4 }, + { "label": "K4A (B1,D3)", "x": 11, "y": 4 }, + { "label": "K4B (B1,D2)", "x": 12, "y": 4 }, + { "label": "K4C (B1,B6)", "x": 13, "y": 4 }, + { "label": "K4D (B1,D1)", "x": 14, "y": 4 }, + { "label": "K4E (B1,D0)", "x": 15, "y": 4 } + ] + } + } +} diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c new file mode 100644 index 0000000000..f0d21c96bc --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2022 Hoaq + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + + [0] = LAYOUT_all( + 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_BSPC, KC_PSCR, KC_GRV, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_KANA, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_all( + KC_TRNS, 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_INS, + RESET, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, + 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_MPLY, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS + ), + +}; \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/default/readme.md b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/readme.md new file mode 100644 index 0000000000..d4a1e6fc31 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for VCL65 solder \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/keymap.c b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/keymap.c new file mode 100644 index 0000000000..86209da7dc --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/keymap.c @@ -0,0 +1,50 @@ +/* Copyright 2021 SawnsProjects + * + * 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 . + */ + + +#include QMK_KEYBOARD_H +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_BSPC, KC_GRV, KC_PSCR, + 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, KC_DEL, + 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_PGUP, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_all( + KC_TRNS, 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, + 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 + ), + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), +}; diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/readme.md b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/readme.md new file mode 100644 index 0000000000..dd1d8879df --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/readme.md @@ -0,0 +1 @@ +# The custom keymap for VCL65 solder by SawnsProjects diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/rules.mk b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/sawns/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c new file mode 100644 index 0000000000..708fc51d3d --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c @@ -0,0 +1,51 @@ +/* Copyright 2022 Hoaq + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_BSPC, KC_PSCR, KC_GRV, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_KANA, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_all( + KC_TRNS, 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_INS, + RESET, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, + 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_MPLY, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS + ), + [2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/via/readme.md b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/readme.md new file mode 100644 index 0000000000..31baf7fc71 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for VCL65 solder \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/via/rules.mk b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/readme.md b/keyboards/sawnsprojects/vcl65/solder/readme.md new file mode 100644 index 0000000000..06b44ab730 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/readme.md @@ -0,0 +1,23 @@ +# VCL65 solder + +![VCL65 solder](https://i.imgur.com/ofSfOTfh.jpg) + +A 65% keyboard PCB made and sold under the name "VCL65 Solder" by SawnsProjects with Hoaq in Private Discord GB. + +* Keyboard Maintainer: [Mai The San](https://github.com/MaiTheSan) & [Hoaq](https://github.com/itsmehoaq) +* Hardware Supported: Lotus65 lite, VCL65, 65% traymount case +* Hardware Availability: Private Discord GB + +Make example for this keyboard (after setting up your build environment): + + make sawnsprojects/vcl65/solder:default + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the front of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/sawnsprojects/vcl65/solder/rules.mk b/keyboards/sawnsprojects/vcl65/solder/rules.mk new file mode 100644 index 0000000000..538e0d1bda --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/solder.c b/keyboards/sawnsprojects/vcl65/solder/solder.c new file mode 100644 index 0000000000..2fb9b24f8c --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/solder.c @@ -0,0 +1,17 @@ +/* Copyright 2021 SawnsProjects + * + * 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 . + */ + +#include "solder.h" \ No newline at end of file diff --git a/keyboards/sawnsprojects/vcl65/solder/solder.h b/keyboards/sawnsprojects/vcl65/solder/solder.h new file mode 100644 index 0000000000..8c150a1b96 --- /dev/null +++ b/keyboards/sawnsprojects/vcl65/solder/solder.h @@ -0,0 +1,36 @@ +/* Copyright 2021 SawnsProjects + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2C, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, K4A, K4B, K4C, K4D, K4E }, \ +} + From e13aefe41d235af9e59efdefa46e2934e36eec7a Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 19 Apr 2022 16:57:53 +0800 Subject: [PATCH 286/699] move z150_bh at101_bh omnikey_bh to viktus/ (#16004) --- keyboards/{ => viktus}/at101_bh/at101_bh.c | 0 keyboards/{ => viktus}/at101_bh/at101_bh.h | 0 keyboards/{ => viktus}/at101_bh/config.h | 0 keyboards/{ => viktus}/at101_bh/info.json | 0 keyboards/{ => viktus}/at101_bh/keymaps/default/keymap.c | 0 keyboards/{ => viktus}/at101_bh/readme.md | 2 +- keyboards/{ => viktus}/at101_bh/rules.mk | 0 keyboards/{ => viktus}/omnikey_bh/config.h | 0 keyboards/{ => viktus}/omnikey_bh/info.json | 0 keyboards/{ => viktus}/omnikey_bh/keymaps/default/keymap.c | 0 keyboards/{ => viktus}/omnikey_bh/omnikey_bh.c | 0 keyboards/{ => viktus}/omnikey_bh/omnikey_bh.h | 0 keyboards/{ => viktus}/omnikey_bh/readme.md | 2 +- keyboards/{ => viktus}/omnikey_bh/rules.mk | 0 keyboards/{ => viktus}/z150_bh/config.h | 0 keyboards/{ => viktus}/z150_bh/info.json | 0 keyboards/{ => viktus}/z150_bh/keymaps/default/keymap.c | 0 keyboards/{ => viktus}/z150_bh/keymaps/default_tkl/keymap.c | 0 keyboards/{ => viktus}/z150_bh/readme.md | 2 +- keyboards/{ => viktus}/z150_bh/rules.mk | 0 keyboards/{ => viktus}/z150_bh/z150_bh.c | 0 keyboards/{ => viktus}/z150_bh/z150_bh.h | 0 22 files changed, 3 insertions(+), 3 deletions(-) rename keyboards/{ => viktus}/at101_bh/at101_bh.c (100%) rename keyboards/{ => viktus}/at101_bh/at101_bh.h (100%) rename keyboards/{ => viktus}/at101_bh/config.h (100%) rename keyboards/{ => viktus}/at101_bh/info.json (100%) rename keyboards/{ => viktus}/at101_bh/keymaps/default/keymap.c (100%) rename keyboards/{ => viktus}/at101_bh/readme.md (95%) rename keyboards/{ => viktus}/at101_bh/rules.mk (100%) rename keyboards/{ => viktus}/omnikey_bh/config.h (100%) rename keyboards/{ => viktus}/omnikey_bh/info.json (100%) rename keyboards/{ => viktus}/omnikey_bh/keymaps/default/keymap.c (100%) rename keyboards/{ => viktus}/omnikey_bh/omnikey_bh.c (100%) rename keyboards/{ => viktus}/omnikey_bh/omnikey_bh.h (100%) rename keyboards/{ => viktus}/omnikey_bh/readme.md (94%) rename keyboards/{ => viktus}/omnikey_bh/rules.mk (100%) rename keyboards/{ => viktus}/z150_bh/config.h (100%) rename keyboards/{ => viktus}/z150_bh/info.json (100%) rename keyboards/{ => viktus}/z150_bh/keymaps/default/keymap.c (100%) rename keyboards/{ => viktus}/z150_bh/keymaps/default_tkl/keymap.c (100%) rename keyboards/{ => viktus}/z150_bh/readme.md (95%) rename keyboards/{ => viktus}/z150_bh/rules.mk (100%) rename keyboards/{ => viktus}/z150_bh/z150_bh.c (100%) rename keyboards/{ => viktus}/z150_bh/z150_bh.h (100%) diff --git a/keyboards/at101_bh/at101_bh.c b/keyboards/viktus/at101_bh/at101_bh.c similarity index 100% rename from keyboards/at101_bh/at101_bh.c rename to keyboards/viktus/at101_bh/at101_bh.c diff --git a/keyboards/at101_bh/at101_bh.h b/keyboards/viktus/at101_bh/at101_bh.h similarity index 100% rename from keyboards/at101_bh/at101_bh.h rename to keyboards/viktus/at101_bh/at101_bh.h diff --git a/keyboards/at101_bh/config.h b/keyboards/viktus/at101_bh/config.h similarity index 100% rename from keyboards/at101_bh/config.h rename to keyboards/viktus/at101_bh/config.h diff --git a/keyboards/at101_bh/info.json b/keyboards/viktus/at101_bh/info.json similarity index 100% rename from keyboards/at101_bh/info.json rename to keyboards/viktus/at101_bh/info.json diff --git a/keyboards/at101_bh/keymaps/default/keymap.c b/keyboards/viktus/at101_bh/keymaps/default/keymap.c similarity index 100% rename from keyboards/at101_bh/keymaps/default/keymap.c rename to keyboards/viktus/at101_bh/keymaps/default/keymap.c diff --git a/keyboards/at101_bh/readme.md b/keyboards/viktus/at101_bh/readme.md similarity index 95% rename from keyboards/at101_bh/readme.md rename to keyboards/viktus/at101_bh/readme.md index 8a9ce2496f..d9d7b4dafa 100644 --- a/keyboards/at101_bh/readme.md +++ b/keyboards/viktus/at101_bh/readme.md @@ -10,6 +10,6 @@ Hardware Availability: https://deskthority.net/group-buys-f50/programmable-vinta Make example for this keyboard (after setting up your build environment): - make at101_bh:default + make viktus/at101_bh:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/at101_bh/rules.mk b/keyboards/viktus/at101_bh/rules.mk similarity index 100% rename from keyboards/at101_bh/rules.mk rename to keyboards/viktus/at101_bh/rules.mk diff --git a/keyboards/omnikey_bh/config.h b/keyboards/viktus/omnikey_bh/config.h similarity index 100% rename from keyboards/omnikey_bh/config.h rename to keyboards/viktus/omnikey_bh/config.h diff --git a/keyboards/omnikey_bh/info.json b/keyboards/viktus/omnikey_bh/info.json similarity index 100% rename from keyboards/omnikey_bh/info.json rename to keyboards/viktus/omnikey_bh/info.json diff --git a/keyboards/omnikey_bh/keymaps/default/keymap.c b/keyboards/viktus/omnikey_bh/keymaps/default/keymap.c similarity index 100% rename from keyboards/omnikey_bh/keymaps/default/keymap.c rename to keyboards/viktus/omnikey_bh/keymaps/default/keymap.c diff --git a/keyboards/omnikey_bh/omnikey_bh.c b/keyboards/viktus/omnikey_bh/omnikey_bh.c similarity index 100% rename from keyboards/omnikey_bh/omnikey_bh.c rename to keyboards/viktus/omnikey_bh/omnikey_bh.c diff --git a/keyboards/omnikey_bh/omnikey_bh.h b/keyboards/viktus/omnikey_bh/omnikey_bh.h similarity index 100% rename from keyboards/omnikey_bh/omnikey_bh.h rename to keyboards/viktus/omnikey_bh/omnikey_bh.h diff --git a/keyboards/omnikey_bh/readme.md b/keyboards/viktus/omnikey_bh/readme.md similarity index 94% rename from keyboards/omnikey_bh/readme.md rename to keyboards/viktus/omnikey_bh/readme.md index 7de22f29a4..55cf72bf87 100644 --- a/keyboards/omnikey_bh/readme.md +++ b/keyboards/viktus/omnikey_bh/readme.md @@ -9,6 +9,6 @@ Hardware Availability: https://deskthority.net/group-buys-f50/omnikey-replacemen Make example for this keyboard (after setting up your build environment): - make omnikey_bh:default + make viktus/omnikey_bh:default See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/omnikey_bh/rules.mk b/keyboards/viktus/omnikey_bh/rules.mk similarity index 100% rename from keyboards/omnikey_bh/rules.mk rename to keyboards/viktus/omnikey_bh/rules.mk diff --git a/keyboards/z150_bh/config.h b/keyboards/viktus/z150_bh/config.h similarity index 100% rename from keyboards/z150_bh/config.h rename to keyboards/viktus/z150_bh/config.h diff --git a/keyboards/z150_bh/info.json b/keyboards/viktus/z150_bh/info.json similarity index 100% rename from keyboards/z150_bh/info.json rename to keyboards/viktus/z150_bh/info.json diff --git a/keyboards/z150_bh/keymaps/default/keymap.c b/keyboards/viktus/z150_bh/keymaps/default/keymap.c similarity index 100% rename from keyboards/z150_bh/keymaps/default/keymap.c rename to keyboards/viktus/z150_bh/keymaps/default/keymap.c diff --git a/keyboards/z150_bh/keymaps/default_tkl/keymap.c b/keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c similarity index 100% rename from keyboards/z150_bh/keymaps/default_tkl/keymap.c rename to keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c diff --git a/keyboards/z150_bh/readme.md b/keyboards/viktus/z150_bh/readme.md similarity index 95% rename from keyboards/z150_bh/readme.md rename to keyboards/viktus/z150_bh/readme.md index a1d4845808..6975d8f1d0 100644 --- a/keyboards/z150_bh/readme.md +++ b/keyboards/viktus/z150_bh/readme.md @@ -9,6 +9,6 @@ Hardware Availability: [Deskthority Group Buy](https://deskthority.net/group-buy Make example for this keyboard (after setting up your build environment): - make z150_bh:default + make viktus/z150_bh:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/z150_bh/rules.mk b/keyboards/viktus/z150_bh/rules.mk similarity index 100% rename from keyboards/z150_bh/rules.mk rename to keyboards/viktus/z150_bh/rules.mk diff --git a/keyboards/z150_bh/z150_bh.c b/keyboards/viktus/z150_bh/z150_bh.c similarity index 100% rename from keyboards/z150_bh/z150_bh.c rename to keyboards/viktus/z150_bh/z150_bh.c diff --git a/keyboards/z150_bh/z150_bh.h b/keyboards/viktus/z150_bh/z150_bh.h similarity index 100% rename from keyboards/z150_bh/z150_bh.h rename to keyboards/viktus/z150_bh/z150_bh.h From cff489bfdb2752956292c1e9adf1b4223814c267 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 19 Apr 2022 18:06:35 +0800 Subject: [PATCH 287/699] =?UTF-8?q?move=20=E9=BA=A6=E7=94=B0=20boards=20in?= =?UTF-8?q?to=20/mt=20(#16095)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: Nick Brassel --- keyboards/{wheatfield => mt}/blocked65/blocked65.c | 0 keyboards/{wheatfield => mt}/blocked65/blocked65.h | 0 keyboards/{wheatfield => mt}/blocked65/config.h | 0 keyboards/{wheatfield => mt}/blocked65/info.json | 0 .../{wheatfield => mt}/blocked65/keymaps/default/keymap.c | 0 keyboards/{wheatfield => mt}/blocked65/keymaps/via/keymap.c | 0 keyboards/{wheatfield => mt}/blocked65/keymaps/via/rules.mk | 0 keyboards/{wheatfield => mt}/blocked65/readme.md | 2 +- keyboards/{wheatfield => mt}/blocked65/rules.mk | 0 keyboards/{ => mt}/mt40/config.h | 0 keyboards/{ => mt}/mt40/info.json | 0 keyboards/{ => mt}/mt40/keymaps/default/config.h | 0 keyboards/{ => mt}/mt40/keymaps/default/keymap.c | 0 keyboards/{ => mt}/mt40/keymaps/default/readme.md | 0 keyboards/{ => mt}/mt40/mt40.c | 0 keyboards/{ => mt}/mt40/mt40.h | 0 keyboards/{ => mt}/mt40/readme.md | 4 ++-- keyboards/{ => mt}/mt40/rules.mk | 0 keyboards/{ => mt}/mt64rgb/config.h | 0 keyboards/{ => mt}/mt64rgb/info.json | 0 keyboards/{ => mt}/mt64rgb/keymaps/default/keymap.c | 0 keyboards/{ => mt}/mt64rgb/keymaps/default/readme.md | 0 keyboards/{ => mt}/mt64rgb/keymaps/via/keymap.c | 0 keyboards/{ => mt}/mt64rgb/keymaps/via/rules.mk | 0 keyboards/{ => mt}/mt64rgb/mt64rgb.c | 0 keyboards/{ => mt}/mt64rgb/mt64rgb.h | 0 keyboards/{ => mt}/mt64rgb/readme.md | 2 +- keyboards/{ => mt}/mt64rgb/rules.mk | 0 keyboards/{ => mt}/mt84/config.h | 0 keyboards/{ => mt}/mt84/info.json | 0 keyboards/{ => mt}/mt84/keymaps/default/config.h | 0 keyboards/{ => mt}/mt84/keymaps/default/keymap.c | 0 keyboards/{ => mt}/mt84/keymaps/via/keymap.c | 0 keyboards/{ => mt}/mt84/keymaps/via/rules.mk | 0 keyboards/{ => mt}/mt84/mt84.c | 0 keyboards/{ => mt}/mt84/mt84.h | 0 keyboards/{ => mt}/mt84/readme.md | 4 ++-- keyboards/{ => mt}/mt84/rules.mk | 0 keyboards/{ => mt}/mt980/config.h | 0 keyboards/{ => mt}/mt980/info.json | 0 keyboards/{ => mt}/mt980/keymaps/default/keymap.c | 0 keyboards/{ => mt}/mt980/keymaps/walker/config.h | 0 keyboards/{ => mt}/mt980/keymaps/walker/keymap.c | 0 keyboards/{ => mt}/mt980/keymaps/walker/rules.mk | 0 keyboards/{ => mt}/mt980/mt980.c | 0 keyboards/{ => mt}/mt980/mt980.h | 0 keyboards/{ => mt}/mt980/readme.md | 2 +- keyboards/{ => mt}/mt980/rules.mk | 0 keyboards/{wheatfield => mt}/split75/config.h | 0 keyboards/{wheatfield => mt}/split75/info.json | 0 keyboards/{wheatfield => mt}/split75/keymaps/art/keymap.c | 0 keyboards/{wheatfield => mt}/split75/keymaps/art/rules.mk | 0 keyboards/{wheatfield => mt}/split75/keymaps/default/keymap.c | 0 keyboards/{wheatfield => mt}/split75/keymaps/iso/keymap.c | 0 keyboards/{wheatfield => mt}/split75/matrix.c | 0 keyboards/{wheatfield => mt}/split75/readme.md | 4 ++-- keyboards/{wheatfield => mt}/split75/rules.mk | 0 keyboards/{wheatfield => mt}/split75/split75.c | 0 keyboards/{wheatfield => mt}/split75/split75.h | 0 59 files changed, 9 insertions(+), 9 deletions(-) rename keyboards/{wheatfield => mt}/blocked65/blocked65.c (100%) rename keyboards/{wheatfield => mt}/blocked65/blocked65.h (100%) rename keyboards/{wheatfield => mt}/blocked65/config.h (100%) rename keyboards/{wheatfield => mt}/blocked65/info.json (100%) rename keyboards/{wheatfield => mt}/blocked65/keymaps/default/keymap.c (100%) rename keyboards/{wheatfield => mt}/blocked65/keymaps/via/keymap.c (100%) rename keyboards/{wheatfield => mt}/blocked65/keymaps/via/rules.mk (100%) rename keyboards/{wheatfield => mt}/blocked65/readme.md (94%) rename keyboards/{wheatfield => mt}/blocked65/rules.mk (100%) rename keyboards/{ => mt}/mt40/config.h (100%) rename keyboards/{ => mt}/mt40/info.json (100%) rename keyboards/{ => mt}/mt40/keymaps/default/config.h (100%) rename keyboards/{ => mt}/mt40/keymaps/default/keymap.c (100%) rename keyboards/{ => mt}/mt40/keymaps/default/readme.md (100%) rename keyboards/{ => mt}/mt40/mt40.c (100%) rename keyboards/{ => mt}/mt40/mt40.h (100%) rename keyboards/{ => mt}/mt40/readme.md (93%) rename keyboards/{ => mt}/mt40/rules.mk (100%) rename keyboards/{ => mt}/mt64rgb/config.h (100%) rename keyboards/{ => mt}/mt64rgb/info.json (100%) rename keyboards/{ => mt}/mt64rgb/keymaps/default/keymap.c (100%) rename keyboards/{ => mt}/mt64rgb/keymaps/default/readme.md (100%) rename keyboards/{ => mt}/mt64rgb/keymaps/via/keymap.c (100%) rename keyboards/{ => mt}/mt64rgb/keymaps/via/rules.mk (100%) rename keyboards/{ => mt}/mt64rgb/mt64rgb.c (100%) rename keyboards/{ => mt}/mt64rgb/mt64rgb.h (100%) rename keyboards/{ => mt}/mt64rgb/readme.md (96%) rename keyboards/{ => mt}/mt64rgb/rules.mk (100%) rename keyboards/{ => mt}/mt84/config.h (100%) rename keyboards/{ => mt}/mt84/info.json (100%) rename keyboards/{ => mt}/mt84/keymaps/default/config.h (100%) rename keyboards/{ => mt}/mt84/keymaps/default/keymap.c (100%) rename keyboards/{ => mt}/mt84/keymaps/via/keymap.c (100%) rename keyboards/{ => mt}/mt84/keymaps/via/rules.mk (100%) rename keyboards/{ => mt}/mt84/mt84.c (100%) rename keyboards/{ => mt}/mt84/mt84.h (100%) rename keyboards/{ => mt}/mt84/readme.md (93%) rename keyboards/{ => mt}/mt84/rules.mk (100%) rename keyboards/{ => mt}/mt980/config.h (100%) rename keyboards/{ => mt}/mt980/info.json (100%) rename keyboards/{ => mt}/mt980/keymaps/default/keymap.c (100%) rename keyboards/{ => mt}/mt980/keymaps/walker/config.h (100%) rename keyboards/{ => mt}/mt980/keymaps/walker/keymap.c (100%) rename keyboards/{ => mt}/mt980/keymaps/walker/rules.mk (100%) rename keyboards/{ => mt}/mt980/mt980.c (100%) rename keyboards/{ => mt}/mt980/mt980.h (100%) rename keyboards/{ => mt}/mt980/readme.md (96%) rename keyboards/{ => mt}/mt980/rules.mk (100%) rename keyboards/{wheatfield => mt}/split75/config.h (100%) rename keyboards/{wheatfield => mt}/split75/info.json (100%) rename keyboards/{wheatfield => mt}/split75/keymaps/art/keymap.c (100%) rename keyboards/{wheatfield => mt}/split75/keymaps/art/rules.mk (100%) rename keyboards/{wheatfield => mt}/split75/keymaps/default/keymap.c (100%) rename keyboards/{wheatfield => mt}/split75/keymaps/iso/keymap.c (100%) rename keyboards/{wheatfield => mt}/split75/matrix.c (100%) rename keyboards/{wheatfield => mt}/split75/readme.md (94%) rename keyboards/{wheatfield => mt}/split75/rules.mk (100%) rename keyboards/{wheatfield => mt}/split75/split75.c (100%) rename keyboards/{wheatfield => mt}/split75/split75.h (100%) diff --git a/keyboards/wheatfield/blocked65/blocked65.c b/keyboards/mt/blocked65/blocked65.c similarity index 100% rename from keyboards/wheatfield/blocked65/blocked65.c rename to keyboards/mt/blocked65/blocked65.c diff --git a/keyboards/wheatfield/blocked65/blocked65.h b/keyboards/mt/blocked65/blocked65.h similarity index 100% rename from keyboards/wheatfield/blocked65/blocked65.h rename to keyboards/mt/blocked65/blocked65.h diff --git a/keyboards/wheatfield/blocked65/config.h b/keyboards/mt/blocked65/config.h similarity index 100% rename from keyboards/wheatfield/blocked65/config.h rename to keyboards/mt/blocked65/config.h diff --git a/keyboards/wheatfield/blocked65/info.json b/keyboards/mt/blocked65/info.json similarity index 100% rename from keyboards/wheatfield/blocked65/info.json rename to keyboards/mt/blocked65/info.json diff --git a/keyboards/wheatfield/blocked65/keymaps/default/keymap.c b/keyboards/mt/blocked65/keymaps/default/keymap.c similarity index 100% rename from keyboards/wheatfield/blocked65/keymaps/default/keymap.c rename to keyboards/mt/blocked65/keymaps/default/keymap.c diff --git a/keyboards/wheatfield/blocked65/keymaps/via/keymap.c b/keyboards/mt/blocked65/keymaps/via/keymap.c similarity index 100% rename from keyboards/wheatfield/blocked65/keymaps/via/keymap.c rename to keyboards/mt/blocked65/keymaps/via/keymap.c diff --git a/keyboards/wheatfield/blocked65/keymaps/via/rules.mk b/keyboards/mt/blocked65/keymaps/via/rules.mk similarity index 100% rename from keyboards/wheatfield/blocked65/keymaps/via/rules.mk rename to keyboards/mt/blocked65/keymaps/via/rules.mk diff --git a/keyboards/wheatfield/blocked65/readme.md b/keyboards/mt/blocked65/readme.md similarity index 94% rename from keyboards/wheatfield/blocked65/readme.md rename to keyboards/mt/blocked65/readme.md index 42cf5b24e2..71e3238390 100644 --- a/keyboards/wheatfield/blocked65/readme.md +++ b/keyboards/mt/blocked65/readme.md @@ -8,6 +8,6 @@ A 65% PCB sold via TaoBao, commonly sold as part of the Canoe clone referred to Make example for this keyboard (after setting up your build environment): - make wheatfield/blocked65:default + make mt/blocked65:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/wheatfield/blocked65/rules.mk b/keyboards/mt/blocked65/rules.mk similarity index 100% rename from keyboards/wheatfield/blocked65/rules.mk rename to keyboards/mt/blocked65/rules.mk diff --git a/keyboards/mt40/config.h b/keyboards/mt/mt40/config.h similarity index 100% rename from keyboards/mt40/config.h rename to keyboards/mt/mt40/config.h diff --git a/keyboards/mt40/info.json b/keyboards/mt/mt40/info.json similarity index 100% rename from keyboards/mt40/info.json rename to keyboards/mt/mt40/info.json diff --git a/keyboards/mt40/keymaps/default/config.h b/keyboards/mt/mt40/keymaps/default/config.h similarity index 100% rename from keyboards/mt40/keymaps/default/config.h rename to keyboards/mt/mt40/keymaps/default/config.h diff --git a/keyboards/mt40/keymaps/default/keymap.c b/keyboards/mt/mt40/keymaps/default/keymap.c similarity index 100% rename from keyboards/mt40/keymaps/default/keymap.c rename to keyboards/mt/mt40/keymaps/default/keymap.c diff --git a/keyboards/mt40/keymaps/default/readme.md b/keyboards/mt/mt40/keymaps/default/readme.md similarity index 100% rename from keyboards/mt40/keymaps/default/readme.md rename to keyboards/mt/mt40/keymaps/default/readme.md diff --git a/keyboards/mt40/mt40.c b/keyboards/mt/mt40/mt40.c similarity index 100% rename from keyboards/mt40/mt40.c rename to keyboards/mt/mt40/mt40.c diff --git a/keyboards/mt40/mt40.h b/keyboards/mt/mt40/mt40.h similarity index 100% rename from keyboards/mt40/mt40.h rename to keyboards/mt/mt40/mt40.h diff --git a/keyboards/mt40/readme.md b/keyboards/mt/mt40/readme.md similarity index 93% rename from keyboards/mt40/readme.md rename to keyboards/mt/mt40/readme.md index 5fc82d89a7..632cefdb73 100644 --- a/keyboards/mt40/readme.md +++ b/keyboards/mt/mt40/readme.md @@ -10,10 +10,10 @@ A 40% Ortholinear Keyboard Make example for this keyboard (after setting up your build environment): - make mt40:default + make mt/mt40:default Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) - make mt40:default:flash + make mt/mt40:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/mt40/rules.mk b/keyboards/mt/mt40/rules.mk similarity index 100% rename from keyboards/mt40/rules.mk rename to keyboards/mt/mt40/rules.mk diff --git a/keyboards/mt64rgb/config.h b/keyboards/mt/mt64rgb/config.h similarity index 100% rename from keyboards/mt64rgb/config.h rename to keyboards/mt/mt64rgb/config.h diff --git a/keyboards/mt64rgb/info.json b/keyboards/mt/mt64rgb/info.json similarity index 100% rename from keyboards/mt64rgb/info.json rename to keyboards/mt/mt64rgb/info.json diff --git a/keyboards/mt64rgb/keymaps/default/keymap.c b/keyboards/mt/mt64rgb/keymaps/default/keymap.c similarity index 100% rename from keyboards/mt64rgb/keymaps/default/keymap.c rename to keyboards/mt/mt64rgb/keymaps/default/keymap.c diff --git a/keyboards/mt64rgb/keymaps/default/readme.md b/keyboards/mt/mt64rgb/keymaps/default/readme.md similarity index 100% rename from keyboards/mt64rgb/keymaps/default/readme.md rename to keyboards/mt/mt64rgb/keymaps/default/readme.md diff --git a/keyboards/mt64rgb/keymaps/via/keymap.c b/keyboards/mt/mt64rgb/keymaps/via/keymap.c similarity index 100% rename from keyboards/mt64rgb/keymaps/via/keymap.c rename to keyboards/mt/mt64rgb/keymaps/via/keymap.c diff --git a/keyboards/mt64rgb/keymaps/via/rules.mk b/keyboards/mt/mt64rgb/keymaps/via/rules.mk similarity index 100% rename from keyboards/mt64rgb/keymaps/via/rules.mk rename to keyboards/mt/mt64rgb/keymaps/via/rules.mk diff --git a/keyboards/mt64rgb/mt64rgb.c b/keyboards/mt/mt64rgb/mt64rgb.c similarity index 100% rename from keyboards/mt64rgb/mt64rgb.c rename to keyboards/mt/mt64rgb/mt64rgb.c diff --git a/keyboards/mt64rgb/mt64rgb.h b/keyboards/mt/mt64rgb/mt64rgb.h similarity index 100% rename from keyboards/mt64rgb/mt64rgb.h rename to keyboards/mt/mt64rgb/mt64rgb.h diff --git a/keyboards/mt64rgb/readme.md b/keyboards/mt/mt64rgb/readme.md similarity index 96% rename from keyboards/mt64rgb/readme.md rename to keyboards/mt/mt64rgb/readme.md index dcc9412368..23fcd5ebe7 100644 --- a/keyboards/mt64rgb/readme.md +++ b/keyboards/mt/mt64rgb/readme.md @@ -11,6 +11,6 @@ It supports an ANSI-based 64-key layout, with hotswap sockets and per-key RGB ba Make example for this keyboard (after setting up your build environment): - make mt64rgb:default + make mt/mt64rgb:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/mt64rgb/rules.mk b/keyboards/mt/mt64rgb/rules.mk similarity index 100% rename from keyboards/mt64rgb/rules.mk rename to keyboards/mt/mt64rgb/rules.mk diff --git a/keyboards/mt84/config.h b/keyboards/mt/mt84/config.h similarity index 100% rename from keyboards/mt84/config.h rename to keyboards/mt/mt84/config.h diff --git a/keyboards/mt84/info.json b/keyboards/mt/mt84/info.json similarity index 100% rename from keyboards/mt84/info.json rename to keyboards/mt/mt84/info.json diff --git a/keyboards/mt84/keymaps/default/config.h b/keyboards/mt/mt84/keymaps/default/config.h similarity index 100% rename from keyboards/mt84/keymaps/default/config.h rename to keyboards/mt/mt84/keymaps/default/config.h diff --git a/keyboards/mt84/keymaps/default/keymap.c b/keyboards/mt/mt84/keymaps/default/keymap.c similarity index 100% rename from keyboards/mt84/keymaps/default/keymap.c rename to keyboards/mt/mt84/keymaps/default/keymap.c diff --git a/keyboards/mt84/keymaps/via/keymap.c b/keyboards/mt/mt84/keymaps/via/keymap.c similarity index 100% rename from keyboards/mt84/keymaps/via/keymap.c rename to keyboards/mt/mt84/keymaps/via/keymap.c diff --git a/keyboards/mt84/keymaps/via/rules.mk b/keyboards/mt/mt84/keymaps/via/rules.mk similarity index 100% rename from keyboards/mt84/keymaps/via/rules.mk rename to keyboards/mt/mt84/keymaps/via/rules.mk diff --git a/keyboards/mt84/mt84.c b/keyboards/mt/mt84/mt84.c similarity index 100% rename from keyboards/mt84/mt84.c rename to keyboards/mt/mt84/mt84.c diff --git a/keyboards/mt84/mt84.h b/keyboards/mt/mt84/mt84.h similarity index 100% rename from keyboards/mt84/mt84.h rename to keyboards/mt/mt84/mt84.h diff --git a/keyboards/mt84/readme.md b/keyboards/mt/mt84/readme.md similarity index 93% rename from keyboards/mt84/readme.md rename to keyboards/mt/mt84/readme.md index 17e1de2f5c..f26521ad6a 100644 --- a/keyboards/mt84/readme.md +++ b/keyboards/mt/mt84/readme.md @@ -12,11 +12,11 @@ It supports standard 84-key layout, with hotswap sockets and per-key RGB backlig Make example for this keyboard (after setting up your build environment): - make mt84:default + make mt/mt84:default Flashing example for this keyboard: - make mt84:default:flash + make mt/mt84:default:flash To put the board into bootloader mode, either press the reset button on the bottom the PCB or hold Space+B while plugging it in. diff --git a/keyboards/mt84/rules.mk b/keyboards/mt/mt84/rules.mk similarity index 100% rename from keyboards/mt84/rules.mk rename to keyboards/mt/mt84/rules.mk diff --git a/keyboards/mt980/config.h b/keyboards/mt/mt980/config.h similarity index 100% rename from keyboards/mt980/config.h rename to keyboards/mt/mt980/config.h diff --git a/keyboards/mt980/info.json b/keyboards/mt/mt980/info.json similarity index 100% rename from keyboards/mt980/info.json rename to keyboards/mt/mt980/info.json diff --git a/keyboards/mt980/keymaps/default/keymap.c b/keyboards/mt/mt980/keymaps/default/keymap.c similarity index 100% rename from keyboards/mt980/keymaps/default/keymap.c rename to keyboards/mt/mt980/keymaps/default/keymap.c diff --git a/keyboards/mt980/keymaps/walker/config.h b/keyboards/mt/mt980/keymaps/walker/config.h similarity index 100% rename from keyboards/mt980/keymaps/walker/config.h rename to keyboards/mt/mt980/keymaps/walker/config.h diff --git a/keyboards/mt980/keymaps/walker/keymap.c b/keyboards/mt/mt980/keymaps/walker/keymap.c similarity index 100% rename from keyboards/mt980/keymaps/walker/keymap.c rename to keyboards/mt/mt980/keymaps/walker/keymap.c diff --git a/keyboards/mt980/keymaps/walker/rules.mk b/keyboards/mt/mt980/keymaps/walker/rules.mk similarity index 100% rename from keyboards/mt980/keymaps/walker/rules.mk rename to keyboards/mt/mt980/keymaps/walker/rules.mk diff --git a/keyboards/mt980/mt980.c b/keyboards/mt/mt980/mt980.c similarity index 100% rename from keyboards/mt980/mt980.c rename to keyboards/mt/mt980/mt980.c diff --git a/keyboards/mt980/mt980.h b/keyboards/mt/mt980/mt980.h similarity index 100% rename from keyboards/mt980/mt980.h rename to keyboards/mt/mt980/mt980.h diff --git a/keyboards/mt980/readme.md b/keyboards/mt/mt980/readme.md similarity index 96% rename from keyboards/mt980/readme.md rename to keyboards/mt/mt980/readme.md index 7bc27c93a5..5e702de714 100644 --- a/keyboards/mt980/readme.md +++ b/keyboards/mt/mt980/readme.md @@ -8,7 +8,7 @@ Hardware Availability: Taobao store https://shop110310565.taobao.com Make example for this keyboard (after setting up your build environment): - make mt980:default + make mt/mt980:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/mt980/rules.mk b/keyboards/mt/mt980/rules.mk similarity index 100% rename from keyboards/mt980/rules.mk rename to keyboards/mt/mt980/rules.mk diff --git a/keyboards/wheatfield/split75/config.h b/keyboards/mt/split75/config.h similarity index 100% rename from keyboards/wheatfield/split75/config.h rename to keyboards/mt/split75/config.h diff --git a/keyboards/wheatfield/split75/info.json b/keyboards/mt/split75/info.json similarity index 100% rename from keyboards/wheatfield/split75/info.json rename to keyboards/mt/split75/info.json diff --git a/keyboards/wheatfield/split75/keymaps/art/keymap.c b/keyboards/mt/split75/keymaps/art/keymap.c similarity index 100% rename from keyboards/wheatfield/split75/keymaps/art/keymap.c rename to keyboards/mt/split75/keymaps/art/keymap.c diff --git a/keyboards/wheatfield/split75/keymaps/art/rules.mk b/keyboards/mt/split75/keymaps/art/rules.mk similarity index 100% rename from keyboards/wheatfield/split75/keymaps/art/rules.mk rename to keyboards/mt/split75/keymaps/art/rules.mk diff --git a/keyboards/wheatfield/split75/keymaps/default/keymap.c b/keyboards/mt/split75/keymaps/default/keymap.c similarity index 100% rename from keyboards/wheatfield/split75/keymaps/default/keymap.c rename to keyboards/mt/split75/keymaps/default/keymap.c diff --git a/keyboards/wheatfield/split75/keymaps/iso/keymap.c b/keyboards/mt/split75/keymaps/iso/keymap.c similarity index 100% rename from keyboards/wheatfield/split75/keymaps/iso/keymap.c rename to keyboards/mt/split75/keymaps/iso/keymap.c diff --git a/keyboards/wheatfield/split75/matrix.c b/keyboards/mt/split75/matrix.c similarity index 100% rename from keyboards/wheatfield/split75/matrix.c rename to keyboards/mt/split75/matrix.c diff --git a/keyboards/wheatfield/split75/readme.md b/keyboards/mt/split75/readme.md similarity index 94% rename from keyboards/wheatfield/split75/readme.md rename to keyboards/mt/split75/readme.md index ec8c7ee9ea..360ad55239 100644 --- a/keyboards/wheatfield/split75/readme.md +++ b/keyboards/mt/split75/readme.md @@ -13,11 +13,11 @@ Original work performed by Michael L. Walker, all credit goes to him. I've tidie Make example for this keyboard (after setting up your build environment): - make wheatfield/split75:default + make mt/split75:default Flashing example for this keyboard ([after setting up the bootloadHID flashing environment](https://docs.qmk.fm/#/flashing_bootloadhid)) - make wheatfield/split75:default:flash + make mt/split75:default:flash or diff --git a/keyboards/wheatfield/split75/rules.mk b/keyboards/mt/split75/rules.mk similarity index 100% rename from keyboards/wheatfield/split75/rules.mk rename to keyboards/mt/split75/rules.mk diff --git a/keyboards/wheatfield/split75/split75.c b/keyboards/mt/split75/split75.c similarity index 100% rename from keyboards/wheatfield/split75/split75.c rename to keyboards/mt/split75/split75.c diff --git a/keyboards/wheatfield/split75/split75.h b/keyboards/mt/split75/split75.h similarity index 100% rename from keyboards/wheatfield/split75/split75.h rename to keyboards/mt/split75/split75.h From 9f63bce70bd8e065e54de17c48994c3c008d2e0a Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Tue, 19 Apr 2022 18:17:21 +0800 Subject: [PATCH 288/699] move keyhive exclusive boards into /keyhive (#16084) Co-authored-by: Nick Brassel --- keyboards/{ => keyhive}/absinthe/absinthe.c | 0 keyboards/{ => keyhive}/absinthe/absinthe.h | 0 keyboards/{ => keyhive}/absinthe/config.h | 0 keyboards/{ => keyhive}/absinthe/info.json | 0 keyboards/{ => keyhive}/absinthe/keymaps/ansi/keymap.c | 0 keyboards/{ => keyhive}/absinthe/keymaps/ansi/readme.md | 0 keyboards/{ => keyhive}/absinthe/keymaps/default/keymap.c | 0 .../{ => keyhive}/absinthe/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/absinthe/keymaps/via/keymap.c | 0 keyboards/{ => keyhive}/absinthe/keymaps/via/rules.mk | 0 keyboards/{ => keyhive}/absinthe/readme.md | 2 +- keyboards/{ => keyhive}/absinthe/rules.mk | 0 keyboards/{ => keyhive}/ergosaurus/config.h | 0 keyboards/{ => keyhive}/ergosaurus/ergosaurus.c | 0 keyboards/{ => keyhive}/ergosaurus/ergosaurus.h | 0 keyboards/{ => keyhive}/ergosaurus/info.json | 0 .../{ => keyhive}/ergosaurus/keymaps/default/keymap.c | 0 .../{ => keyhive}/ergosaurus/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/ergosaurus/keymaps/via/keymap.c | 0 keyboards/{ => keyhive}/ergosaurus/keymaps/via/rules.mk | 0 keyboards/{ => keyhive}/ergosaurus/readme.md | 2 +- keyboards/{ => keyhive}/ergosaurus/rules.mk | 0 keyboards/{ => keyhive}/honeycomb/config.h | 0 keyboards/{ => keyhive}/honeycomb/honeycomb.c | 0 keyboards/{ => keyhive}/honeycomb/honeycomb.h | 0 keyboards/{ => keyhive}/honeycomb/info.json | 0 .../{ => keyhive}/honeycomb/keymaps/default/keymap.c | 0 keyboards/{ => keyhive}/honeycomb/matrix.c | 0 keyboards/{ => keyhive}/honeycomb/readme.md | 6 +++--- keyboards/{ => keyhive}/honeycomb/rules.mk | 0 keyboards/{ => keyhive}/lattice60/config.h | 0 keyboards/{ => keyhive}/lattice60/info.json | 0 .../{ => keyhive}/lattice60/keymaps/default/config.h | 0 .../{ => keyhive}/lattice60/keymaps/default/keymap.c | 0 .../{ => keyhive}/lattice60/keymaps/default/readme.md | 0 .../{ => keyhive}/lattice60/keymaps/default_hhkb/config.h | 0 .../{ => keyhive}/lattice60/keymaps/default_hhkb/keymap.c | 0 .../lattice60/keymaps/default_hhkb/readme.md | 0 .../{ => keyhive}/lattice60/keymaps/emdarcher/config.h | 0 .../{ => keyhive}/lattice60/keymaps/emdarcher/keymap.c | 0 .../{ => keyhive}/lattice60/keymaps/emdarcher/readme.md | 0 keyboards/{ => keyhive}/lattice60/lattice60.c | 0 keyboards/{ => keyhive}/lattice60/lattice60.h | 0 keyboards/{ => keyhive}/lattice60/readme.md | 4 ++-- keyboards/{ => keyhive}/lattice60/rules.mk | 0 keyboards/{ => keyhive}/navi10/.noci | 0 keyboards/{ => keyhive}/navi10/info.json | 0 keyboards/{ => keyhive}/navi10/keymaps/default/keymap.c | 0 keyboards/{ => keyhive}/navi10/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/navi10/keymaps/default/rules.mk | 0 keyboards/{ => keyhive}/navi10/keymaps/devdev/config.h | 0 keyboards/{ => keyhive}/navi10/keymaps/devdev/keymap.c | 0 keyboards/{ => keyhive}/navi10/keymaps/devdev/rules.mk | 0 keyboards/{ => keyhive}/navi10/keymaps/emdarcher/keymap.c | 0 .../{ => keyhive}/navi10/keymaps/emdarcher/readme.md | 0 keyboards/{ => keyhive}/navi10/keymaps/emdarcher/rules.mk | 0 keyboards/{ => keyhive}/navi10/readme.md | 4 ++-- keyboards/{ => keyhive}/navi10/rev0/.noci | 0 keyboards/{ => keyhive}/navi10/rev0/config.h | 0 keyboards/{ => keyhive}/navi10/rev0/rev0.c | 0 keyboards/{ => keyhive}/navi10/rev0/rev0.h | 0 keyboards/{ => keyhive}/navi10/rev0/rules.mk | 0 keyboards/{ => keyhive}/navi10/rev2/.noci | 0 keyboards/{ => keyhive}/navi10/rev2/config.h | 0 keyboards/{ => keyhive}/navi10/rev2/rev2.c | 0 keyboards/{ => keyhive}/navi10/rev2/rev2.h | 0 keyboards/{ => keyhive}/navi10/rev2/rules.mk | 0 keyboards/{ => keyhive}/navi10/rev3/config.h | 0 keyboards/{ => keyhive}/navi10/rev3/rev3.c | 0 keyboards/{ => keyhive}/navi10/rev3/rev3.h | 0 keyboards/{ => keyhive}/navi10/rev3/rules.mk | 0 keyboards/keyhive/navi10/rules.mk | 1 + keyboards/{ => keyhive}/opus/config.h | 0 keyboards/{ => keyhive}/opus/info.json | 0 keyboards/{ => keyhive}/opus/keymaps/default/keymap.c | 0 keyboards/{ => keyhive}/opus/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/config.h | 0 keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/keymap.c | 0 .../{ => keyhive}/opus/keymaps/thefoxcodes/readme.md | 0 keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/rules.mk | 0 keyboards/{ => keyhive}/opus/opus.c | 0 keyboards/{ => keyhive}/opus/opus.h | 0 keyboards/{ => keyhive}/opus/readme.md | 2 +- keyboards/{ => keyhive}/opus/rules.mk | 0 keyboards/{ => keyhive}/smallice/config.h | 0 keyboards/{ => keyhive}/smallice/info.json | 0 keyboards/{ => keyhive}/smallice/keymaps/default/keymap.c | 0 .../{ => keyhive}/smallice/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/smallice/keymaps/via/keymap.c | 0 keyboards/{ => keyhive}/smallice/keymaps/via/readme.md | 0 keyboards/{ => keyhive}/smallice/keymaps/via/rules.mk | 0 keyboards/{ => keyhive}/smallice/readme.md | 2 +- keyboards/{ => keyhive}/smallice/rules.mk | 0 keyboards/{ => keyhive}/smallice/smallice.c | 0 keyboards/{ => keyhive}/smallice/smallice.h | 0 keyboards/{ => keyhive}/southpole/config.h | 0 keyboards/{ => keyhive}/southpole/info.json | 0 .../{ => keyhive}/southpole/keymaps/default/keymap.c | 0 .../{ => keyhive}/southpole/keymaps/foobeard/keymap.c | 0 keyboards/{ => keyhive}/southpole/readme.md | 4 ++-- keyboards/{ => keyhive}/southpole/rules.mk | 0 keyboards/{ => keyhive}/southpole/southpole.c | 0 keyboards/{ => keyhive}/southpole/southpole.h | 0 keyboards/{ => keyhive}/uno/config.h | 0 keyboards/{ => keyhive}/uno/info.json | 0 keyboards/{ => keyhive}/uno/keymaps/copypasta/keymap.c | 0 keyboards/{ => keyhive}/uno/keymaps/copypasta/readme.md | 0 keyboards/{ => keyhive}/uno/keymaps/default/keymap.c | 0 keyboards/{ => keyhive}/uno/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/uno/keymaps/demo/keymap.c | 0 keyboards/{ => keyhive}/uno/keymaps/demo/readme.md | 0 keyboards/{ => keyhive}/uno/readme.md | 8 ++++---- keyboards/{ => keyhive}/uno/rev1/config.h | 0 keyboards/{ => keyhive}/uno/rev1/rev1.h | 0 keyboards/{ => keyhive}/uno/rev1/rules.mk | 0 keyboards/{ => keyhive}/uno/rev2/config.h | 0 keyboards/{ => keyhive}/uno/rev2/rev2.h | 0 keyboards/{ => keyhive}/uno/rev2/rules.mk | 0 keyboards/{ => keyhive}/uno/rules.mk | 0 keyboards/{ => keyhive}/uno/uno.c | 0 keyboards/{ => keyhive}/uno/uno.h | 0 keyboards/{ => keyhive}/ut472/config.h | 0 keyboards/{ => keyhive}/ut472/info.json | 0 .../UT472_Annihilator6000_Configurator_file.json | 0 .../{ => keyhive}/ut472/keymaps/annihilator6000/config.h | 0 .../{ => keyhive}/ut472/keymaps/annihilator6000/keymap.c | 0 .../{ => keyhive}/ut472/keymaps/annihilator6000/readme.md | 0 keyboards/{ => keyhive}/ut472/keymaps/default/keymap.c | 0 keyboards/{ => keyhive}/ut472/keymaps/default/readme.md | 0 keyboards/{ => keyhive}/ut472/keymaps/hvp/config.h | 0 keyboards/{ => keyhive}/ut472/keymaps/hvp/keymap.c | 0 keyboards/{ => keyhive}/ut472/keymaps/hvp/readme.md | 0 keyboards/{ => keyhive}/ut472/keymaps/hvp/rules.mk | 0 .../{ => keyhive}/ut472/keymaps/stefanopace/config.h | 0 .../{ => keyhive}/ut472/keymaps/stefanopace/keymap.c | 0 .../{ => keyhive}/ut472/keymaps/stefanopace/readme.md | 0 .../{ => keyhive}/ut472/keymaps/stefanopace/rules.mk | 0 keyboards/{ => keyhive}/ut472/keymaps/tucznak/config.h | 0 keyboards/{ => keyhive}/ut472/keymaps/tucznak/keymap.c | 0 keyboards/{ => keyhive}/ut472/keymaps/tucznak/readme.md | 0 keyboards/{ => keyhive}/ut472/keymaps/tucznak/rules.mk | 0 keyboards/{ => keyhive}/ut472/keymaps/via/keymap.c | 0 keyboards/{ => keyhive}/ut472/keymaps/via/rules.mk | 0 keyboards/{ => keyhive}/ut472/readme.md | 2 +- keyboards/{ => keyhive}/ut472/rules.mk | 0 keyboards/{ => keyhive}/ut472/ut472.c | 0 keyboards/{ => keyhive}/ut472/ut472.h | 0 keyboards/navi10/rules.mk | 1 - 148 files changed, 19 insertions(+), 19 deletions(-) rename keyboards/{ => keyhive}/absinthe/absinthe.c (100%) rename keyboards/{ => keyhive}/absinthe/absinthe.h (100%) rename keyboards/{ => keyhive}/absinthe/config.h (100%) rename keyboards/{ => keyhive}/absinthe/info.json (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/ansi/keymap.c (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/ansi/readme.md (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/via/keymap.c (100%) rename keyboards/{ => keyhive}/absinthe/keymaps/via/rules.mk (100%) rename keyboards/{ => keyhive}/absinthe/readme.md (95%) rename keyboards/{ => keyhive}/absinthe/rules.mk (100%) rename keyboards/{ => keyhive}/ergosaurus/config.h (100%) rename keyboards/{ => keyhive}/ergosaurus/ergosaurus.c (100%) rename keyboards/{ => keyhive}/ergosaurus/ergosaurus.h (100%) rename keyboards/{ => keyhive}/ergosaurus/info.json (100%) rename keyboards/{ => keyhive}/ergosaurus/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/ergosaurus/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/ergosaurus/keymaps/via/keymap.c (100%) rename keyboards/{ => keyhive}/ergosaurus/keymaps/via/rules.mk (100%) rename keyboards/{ => keyhive}/ergosaurus/readme.md (95%) rename keyboards/{ => keyhive}/ergosaurus/rules.mk (100%) rename keyboards/{ => keyhive}/honeycomb/config.h (100%) rename keyboards/{ => keyhive}/honeycomb/honeycomb.c (100%) rename keyboards/{ => keyhive}/honeycomb/honeycomb.h (100%) rename keyboards/{ => keyhive}/honeycomb/info.json (100%) rename keyboards/{ => keyhive}/honeycomb/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/honeycomb/matrix.c (100%) rename keyboards/{ => keyhive}/honeycomb/readme.md (89%) rename keyboards/{ => keyhive}/honeycomb/rules.mk (100%) rename keyboards/{ => keyhive}/lattice60/config.h (100%) rename keyboards/{ => keyhive}/lattice60/info.json (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default/config.h (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default_hhkb/config.h (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default_hhkb/keymap.c (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/default_hhkb/readme.md (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/emdarcher/config.h (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/emdarcher/keymap.c (100%) rename keyboards/{ => keyhive}/lattice60/keymaps/emdarcher/readme.md (100%) rename keyboards/{ => keyhive}/lattice60/lattice60.c (100%) rename keyboards/{ => keyhive}/lattice60/lattice60.h (100%) rename keyboards/{ => keyhive}/lattice60/readme.md (91%) rename keyboards/{ => keyhive}/lattice60/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/.noci (100%) rename keyboards/{ => keyhive}/navi10/info.json (100%) rename keyboards/{ => keyhive}/navi10/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/navi10/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/navi10/keymaps/default/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/keymaps/devdev/config.h (100%) rename keyboards/{ => keyhive}/navi10/keymaps/devdev/keymap.c (100%) rename keyboards/{ => keyhive}/navi10/keymaps/devdev/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/keymaps/emdarcher/keymap.c (100%) rename keyboards/{ => keyhive}/navi10/keymaps/emdarcher/readme.md (100%) rename keyboards/{ => keyhive}/navi10/keymaps/emdarcher/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/readme.md (90%) rename keyboards/{ => keyhive}/navi10/rev0/.noci (100%) rename keyboards/{ => keyhive}/navi10/rev0/config.h (100%) rename keyboards/{ => keyhive}/navi10/rev0/rev0.c (100%) rename keyboards/{ => keyhive}/navi10/rev0/rev0.h (100%) rename keyboards/{ => keyhive}/navi10/rev0/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/rev2/.noci (100%) rename keyboards/{ => keyhive}/navi10/rev2/config.h (100%) rename keyboards/{ => keyhive}/navi10/rev2/rev2.c (100%) rename keyboards/{ => keyhive}/navi10/rev2/rev2.h (100%) rename keyboards/{ => keyhive}/navi10/rev2/rules.mk (100%) rename keyboards/{ => keyhive}/navi10/rev3/config.h (100%) rename keyboards/{ => keyhive}/navi10/rev3/rev3.c (100%) rename keyboards/{ => keyhive}/navi10/rev3/rev3.h (100%) rename keyboards/{ => keyhive}/navi10/rev3/rules.mk (100%) create mode 100644 keyboards/keyhive/navi10/rules.mk rename keyboards/{ => keyhive}/opus/config.h (100%) rename keyboards/{ => keyhive}/opus/info.json (100%) rename keyboards/{ => keyhive}/opus/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/opus/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/config.h (100%) rename keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/keymap.c (100%) rename keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/readme.md (100%) rename keyboards/{ => keyhive}/opus/keymaps/thefoxcodes/rules.mk (100%) rename keyboards/{ => keyhive}/opus/opus.c (100%) rename keyboards/{ => keyhive}/opus/opus.h (100%) rename keyboards/{ => keyhive}/opus/readme.md (95%) rename keyboards/{ => keyhive}/opus/rules.mk (100%) rename keyboards/{ => keyhive}/smallice/config.h (100%) rename keyboards/{ => keyhive}/smallice/info.json (100%) rename keyboards/{ => keyhive}/smallice/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/smallice/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/smallice/keymaps/via/keymap.c (100%) rename keyboards/{ => keyhive}/smallice/keymaps/via/readme.md (100%) rename keyboards/{ => keyhive}/smallice/keymaps/via/rules.mk (100%) rename keyboards/{ => keyhive}/smallice/readme.md (95%) rename keyboards/{ => keyhive}/smallice/rules.mk (100%) rename keyboards/{ => keyhive}/smallice/smallice.c (100%) rename keyboards/{ => keyhive}/smallice/smallice.h (100%) rename keyboards/{ => keyhive}/southpole/config.h (100%) rename keyboards/{ => keyhive}/southpole/info.json (100%) rename keyboards/{ => keyhive}/southpole/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/southpole/keymaps/foobeard/keymap.c (100%) rename keyboards/{ => keyhive}/southpole/readme.md (91%) rename keyboards/{ => keyhive}/southpole/rules.mk (100%) rename keyboards/{ => keyhive}/southpole/southpole.c (100%) rename keyboards/{ => keyhive}/southpole/southpole.h (100%) rename keyboards/{ => keyhive}/uno/config.h (100%) rename keyboards/{ => keyhive}/uno/info.json (100%) rename keyboards/{ => keyhive}/uno/keymaps/copypasta/keymap.c (100%) rename keyboards/{ => keyhive}/uno/keymaps/copypasta/readme.md (100%) rename keyboards/{ => keyhive}/uno/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/uno/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/uno/keymaps/demo/keymap.c (100%) rename keyboards/{ => keyhive}/uno/keymaps/demo/readme.md (100%) rename keyboards/{ => keyhive}/uno/readme.md (86%) rename keyboards/{ => keyhive}/uno/rev1/config.h (100%) rename keyboards/{ => keyhive}/uno/rev1/rev1.h (100%) rename keyboards/{ => keyhive}/uno/rev1/rules.mk (100%) rename keyboards/{ => keyhive}/uno/rev2/config.h (100%) rename keyboards/{ => keyhive}/uno/rev2/rev2.h (100%) rename keyboards/{ => keyhive}/uno/rev2/rules.mk (100%) rename keyboards/{ => keyhive}/uno/rules.mk (100%) rename keyboards/{ => keyhive}/uno/uno.c (100%) rename keyboards/{ => keyhive}/uno/uno.h (100%) rename keyboards/{ => keyhive}/ut472/config.h (100%) rename keyboards/{ => keyhive}/ut472/info.json (100%) rename keyboards/{ => keyhive}/ut472/keymaps/annihilator6000/UT472_Annihilator6000_Configurator_file.json (100%) rename keyboards/{ => keyhive}/ut472/keymaps/annihilator6000/config.h (100%) rename keyboards/{ => keyhive}/ut472/keymaps/annihilator6000/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/annihilator6000/readme.md (100%) rename keyboards/{ => keyhive}/ut472/keymaps/default/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/default/readme.md (100%) rename keyboards/{ => keyhive}/ut472/keymaps/hvp/config.h (100%) rename keyboards/{ => keyhive}/ut472/keymaps/hvp/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/hvp/readme.md (100%) rename keyboards/{ => keyhive}/ut472/keymaps/hvp/rules.mk (100%) rename keyboards/{ => keyhive}/ut472/keymaps/stefanopace/config.h (100%) rename keyboards/{ => keyhive}/ut472/keymaps/stefanopace/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/stefanopace/readme.md (100%) rename keyboards/{ => keyhive}/ut472/keymaps/stefanopace/rules.mk (100%) rename keyboards/{ => keyhive}/ut472/keymaps/tucznak/config.h (100%) rename keyboards/{ => keyhive}/ut472/keymaps/tucznak/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/tucznak/readme.md (100%) rename keyboards/{ => keyhive}/ut472/keymaps/tucznak/rules.mk (100%) rename keyboards/{ => keyhive}/ut472/keymaps/via/keymap.c (100%) rename keyboards/{ => keyhive}/ut472/keymaps/via/rules.mk (100%) rename keyboards/{ => keyhive}/ut472/readme.md (96%) rename keyboards/{ => keyhive}/ut472/rules.mk (100%) rename keyboards/{ => keyhive}/ut472/ut472.c (100%) rename keyboards/{ => keyhive}/ut472/ut472.h (100%) delete mode 100644 keyboards/navi10/rules.mk diff --git a/keyboards/absinthe/absinthe.c b/keyboards/keyhive/absinthe/absinthe.c similarity index 100% rename from keyboards/absinthe/absinthe.c rename to keyboards/keyhive/absinthe/absinthe.c diff --git a/keyboards/absinthe/absinthe.h b/keyboards/keyhive/absinthe/absinthe.h similarity index 100% rename from keyboards/absinthe/absinthe.h rename to keyboards/keyhive/absinthe/absinthe.h diff --git a/keyboards/absinthe/config.h b/keyboards/keyhive/absinthe/config.h similarity index 100% rename from keyboards/absinthe/config.h rename to keyboards/keyhive/absinthe/config.h diff --git a/keyboards/absinthe/info.json b/keyboards/keyhive/absinthe/info.json similarity index 100% rename from keyboards/absinthe/info.json rename to keyboards/keyhive/absinthe/info.json diff --git a/keyboards/absinthe/keymaps/ansi/keymap.c b/keyboards/keyhive/absinthe/keymaps/ansi/keymap.c similarity index 100% rename from keyboards/absinthe/keymaps/ansi/keymap.c rename to keyboards/keyhive/absinthe/keymaps/ansi/keymap.c diff --git a/keyboards/absinthe/keymaps/ansi/readme.md b/keyboards/keyhive/absinthe/keymaps/ansi/readme.md similarity index 100% rename from keyboards/absinthe/keymaps/ansi/readme.md rename to keyboards/keyhive/absinthe/keymaps/ansi/readme.md diff --git a/keyboards/absinthe/keymaps/default/keymap.c b/keyboards/keyhive/absinthe/keymaps/default/keymap.c similarity index 100% rename from keyboards/absinthe/keymaps/default/keymap.c rename to keyboards/keyhive/absinthe/keymaps/default/keymap.c diff --git a/keyboards/absinthe/keymaps/default/readme.md b/keyboards/keyhive/absinthe/keymaps/default/readme.md similarity index 100% rename from keyboards/absinthe/keymaps/default/readme.md rename to keyboards/keyhive/absinthe/keymaps/default/readme.md diff --git a/keyboards/absinthe/keymaps/via/keymap.c b/keyboards/keyhive/absinthe/keymaps/via/keymap.c similarity index 100% rename from keyboards/absinthe/keymaps/via/keymap.c rename to keyboards/keyhive/absinthe/keymaps/via/keymap.c diff --git a/keyboards/absinthe/keymaps/via/rules.mk b/keyboards/keyhive/absinthe/keymaps/via/rules.mk similarity index 100% rename from keyboards/absinthe/keymaps/via/rules.mk rename to keyboards/keyhive/absinthe/keymaps/via/rules.mk diff --git a/keyboards/absinthe/readme.md b/keyboards/keyhive/absinthe/readme.md similarity index 95% rename from keyboards/absinthe/readme.md rename to keyboards/keyhive/absinthe/readme.md index f99d3649f2..518e13e8f0 100644 --- a/keyboards/absinthe/readme.md +++ b/keyboards/keyhive/absinthe/readme.md @@ -10,6 +10,6 @@ A budget-friendly F-rowless TKL with a rotary encoder Make example for this keyboard (after setting up your build environment): - make absinthe:default + make keyhive/absinthe:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/absinthe/rules.mk b/keyboards/keyhive/absinthe/rules.mk similarity index 100% rename from keyboards/absinthe/rules.mk rename to keyboards/keyhive/absinthe/rules.mk diff --git a/keyboards/ergosaurus/config.h b/keyboards/keyhive/ergosaurus/config.h similarity index 100% rename from keyboards/ergosaurus/config.h rename to keyboards/keyhive/ergosaurus/config.h diff --git a/keyboards/ergosaurus/ergosaurus.c b/keyboards/keyhive/ergosaurus/ergosaurus.c similarity index 100% rename from keyboards/ergosaurus/ergosaurus.c rename to keyboards/keyhive/ergosaurus/ergosaurus.c diff --git a/keyboards/ergosaurus/ergosaurus.h b/keyboards/keyhive/ergosaurus/ergosaurus.h similarity index 100% rename from keyboards/ergosaurus/ergosaurus.h rename to keyboards/keyhive/ergosaurus/ergosaurus.h diff --git a/keyboards/ergosaurus/info.json b/keyboards/keyhive/ergosaurus/info.json similarity index 100% rename from keyboards/ergosaurus/info.json rename to keyboards/keyhive/ergosaurus/info.json diff --git a/keyboards/ergosaurus/keymaps/default/keymap.c b/keyboards/keyhive/ergosaurus/keymaps/default/keymap.c similarity index 100% rename from keyboards/ergosaurus/keymaps/default/keymap.c rename to keyboards/keyhive/ergosaurus/keymaps/default/keymap.c diff --git a/keyboards/ergosaurus/keymaps/default/readme.md b/keyboards/keyhive/ergosaurus/keymaps/default/readme.md similarity index 100% rename from keyboards/ergosaurus/keymaps/default/readme.md rename to keyboards/keyhive/ergosaurus/keymaps/default/readme.md diff --git a/keyboards/ergosaurus/keymaps/via/keymap.c b/keyboards/keyhive/ergosaurus/keymaps/via/keymap.c similarity index 100% rename from keyboards/ergosaurus/keymaps/via/keymap.c rename to keyboards/keyhive/ergosaurus/keymaps/via/keymap.c diff --git a/keyboards/ergosaurus/keymaps/via/rules.mk b/keyboards/keyhive/ergosaurus/keymaps/via/rules.mk similarity index 100% rename from keyboards/ergosaurus/keymaps/via/rules.mk rename to keyboards/keyhive/ergosaurus/keymaps/via/rules.mk diff --git a/keyboards/ergosaurus/readme.md b/keyboards/keyhive/ergosaurus/readme.md similarity index 95% rename from keyboards/ergosaurus/readme.md rename to keyboards/keyhive/ergosaurus/readme.md index cb1a02318b..ed01f650f3 100644 --- a/keyboards/ergosaurus/readme.md +++ b/keyboards/keyhive/ergosaurus/readme.md @@ -10,6 +10,6 @@ An Arduino Pro Micro driven Alice-clone PCB. Supports all Alice-style cases, giv Make example for this keyboard (after setting up your build environment): - make ergosaurus:default + make keyhive/ergosaurus:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/ergosaurus/rules.mk b/keyboards/keyhive/ergosaurus/rules.mk similarity index 100% rename from keyboards/ergosaurus/rules.mk rename to keyboards/keyhive/ergosaurus/rules.mk diff --git a/keyboards/honeycomb/config.h b/keyboards/keyhive/honeycomb/config.h similarity index 100% rename from keyboards/honeycomb/config.h rename to keyboards/keyhive/honeycomb/config.h diff --git a/keyboards/honeycomb/honeycomb.c b/keyboards/keyhive/honeycomb/honeycomb.c similarity index 100% rename from keyboards/honeycomb/honeycomb.c rename to keyboards/keyhive/honeycomb/honeycomb.c diff --git a/keyboards/honeycomb/honeycomb.h b/keyboards/keyhive/honeycomb/honeycomb.h similarity index 100% rename from keyboards/honeycomb/honeycomb.h rename to keyboards/keyhive/honeycomb/honeycomb.h diff --git a/keyboards/honeycomb/info.json b/keyboards/keyhive/honeycomb/info.json similarity index 100% rename from keyboards/honeycomb/info.json rename to keyboards/keyhive/honeycomb/info.json diff --git a/keyboards/honeycomb/keymaps/default/keymap.c b/keyboards/keyhive/honeycomb/keymaps/default/keymap.c similarity index 100% rename from keyboards/honeycomb/keymaps/default/keymap.c rename to keyboards/keyhive/honeycomb/keymaps/default/keymap.c diff --git a/keyboards/honeycomb/matrix.c b/keyboards/keyhive/honeycomb/matrix.c similarity index 100% rename from keyboards/honeycomb/matrix.c rename to keyboards/keyhive/honeycomb/matrix.c diff --git a/keyboards/honeycomb/readme.md b/keyboards/keyhive/honeycomb/readme.md similarity index 89% rename from keyboards/honeycomb/readme.md rename to keyboards/keyhive/honeycomb/readme.md index 955f0ac7a2..611aa63880 100755 --- a/keyboards/honeycomb/readme.md +++ b/keyboards/keyhive/honeycomb/readme.md @@ -8,13 +8,13 @@ These configuration files use a completely different 'matrix scan' system than o Run the following command in your terminal: ``` -make honeycomb:default +make keyhive/honeycomb:default # or use this to automatically flash the controller -make honeycomb:default:avrdude +make keyhive/honeycomb:default:avrdude ``` Follow the QMK guide for this or ask in Discord. ### Other Keymaps -Because this is a totally custom macropad, it is recommended that you copy the `default/` folder, rename it as desired, and modify the `keymap.c` to your liking. \ No newline at end of file +Because this is a totally custom macropad, it is recommended that you copy the `default/` folder, rename it as desired, and modify the `keymap.c` to your liking. diff --git a/keyboards/honeycomb/rules.mk b/keyboards/keyhive/honeycomb/rules.mk similarity index 100% rename from keyboards/honeycomb/rules.mk rename to keyboards/keyhive/honeycomb/rules.mk diff --git a/keyboards/lattice60/config.h b/keyboards/keyhive/lattice60/config.h similarity index 100% rename from keyboards/lattice60/config.h rename to keyboards/keyhive/lattice60/config.h diff --git a/keyboards/lattice60/info.json b/keyboards/keyhive/lattice60/info.json similarity index 100% rename from keyboards/lattice60/info.json rename to keyboards/keyhive/lattice60/info.json diff --git a/keyboards/lattice60/keymaps/default/config.h b/keyboards/keyhive/lattice60/keymaps/default/config.h similarity index 100% rename from keyboards/lattice60/keymaps/default/config.h rename to keyboards/keyhive/lattice60/keymaps/default/config.h diff --git a/keyboards/lattice60/keymaps/default/keymap.c b/keyboards/keyhive/lattice60/keymaps/default/keymap.c similarity index 100% rename from keyboards/lattice60/keymaps/default/keymap.c rename to keyboards/keyhive/lattice60/keymaps/default/keymap.c diff --git a/keyboards/lattice60/keymaps/default/readme.md b/keyboards/keyhive/lattice60/keymaps/default/readme.md similarity index 100% rename from keyboards/lattice60/keymaps/default/readme.md rename to keyboards/keyhive/lattice60/keymaps/default/readme.md diff --git a/keyboards/lattice60/keymaps/default_hhkb/config.h b/keyboards/keyhive/lattice60/keymaps/default_hhkb/config.h similarity index 100% rename from keyboards/lattice60/keymaps/default_hhkb/config.h rename to keyboards/keyhive/lattice60/keymaps/default_hhkb/config.h diff --git a/keyboards/lattice60/keymaps/default_hhkb/keymap.c b/keyboards/keyhive/lattice60/keymaps/default_hhkb/keymap.c similarity index 100% rename from keyboards/lattice60/keymaps/default_hhkb/keymap.c rename to keyboards/keyhive/lattice60/keymaps/default_hhkb/keymap.c diff --git a/keyboards/lattice60/keymaps/default_hhkb/readme.md b/keyboards/keyhive/lattice60/keymaps/default_hhkb/readme.md similarity index 100% rename from keyboards/lattice60/keymaps/default_hhkb/readme.md rename to keyboards/keyhive/lattice60/keymaps/default_hhkb/readme.md diff --git a/keyboards/lattice60/keymaps/emdarcher/config.h b/keyboards/keyhive/lattice60/keymaps/emdarcher/config.h similarity index 100% rename from keyboards/lattice60/keymaps/emdarcher/config.h rename to keyboards/keyhive/lattice60/keymaps/emdarcher/config.h diff --git a/keyboards/lattice60/keymaps/emdarcher/keymap.c b/keyboards/keyhive/lattice60/keymaps/emdarcher/keymap.c similarity index 100% rename from keyboards/lattice60/keymaps/emdarcher/keymap.c rename to keyboards/keyhive/lattice60/keymaps/emdarcher/keymap.c diff --git a/keyboards/lattice60/keymaps/emdarcher/readme.md b/keyboards/keyhive/lattice60/keymaps/emdarcher/readme.md similarity index 100% rename from keyboards/lattice60/keymaps/emdarcher/readme.md rename to keyboards/keyhive/lattice60/keymaps/emdarcher/readme.md diff --git a/keyboards/lattice60/lattice60.c b/keyboards/keyhive/lattice60/lattice60.c similarity index 100% rename from keyboards/lattice60/lattice60.c rename to keyboards/keyhive/lattice60/lattice60.c diff --git a/keyboards/lattice60/lattice60.h b/keyboards/keyhive/lattice60/lattice60.h similarity index 100% rename from keyboards/lattice60/lattice60.h rename to keyboards/keyhive/lattice60/lattice60.h diff --git a/keyboards/lattice60/readme.md b/keyboards/keyhive/lattice60/readme.md similarity index 91% rename from keyboards/lattice60/readme.md rename to keyboards/keyhive/lattice60/readme.md index f5a3dc5942..92fe6198e0 100644 --- a/keyboards/lattice60/readme.md +++ b/keyboards/keyhive/lattice60/readme.md @@ -10,12 +10,12 @@ A HHKB layout keyboard using only through-hole components. Make example for this keyboard (after setting up your build environment): - make lattice60:default + make keyhive/lattice60:default To activate the USBasploader bootloader, hold the BOOT button down during power on or reset. LED2 should light up to indicate that the bootloader is active. Flash the firmware using the `make` command with the `flash` parameter, example below: - make lattice60:default:flash + make keyhive/lattice60:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/lattice60/rules.mk b/keyboards/keyhive/lattice60/rules.mk similarity index 100% rename from keyboards/lattice60/rules.mk rename to keyboards/keyhive/lattice60/rules.mk diff --git a/keyboards/navi10/.noci b/keyboards/keyhive/navi10/.noci similarity index 100% rename from keyboards/navi10/.noci rename to keyboards/keyhive/navi10/.noci diff --git a/keyboards/navi10/info.json b/keyboards/keyhive/navi10/info.json similarity index 100% rename from keyboards/navi10/info.json rename to keyboards/keyhive/navi10/info.json diff --git a/keyboards/navi10/keymaps/default/keymap.c b/keyboards/keyhive/navi10/keymaps/default/keymap.c similarity index 100% rename from keyboards/navi10/keymaps/default/keymap.c rename to keyboards/keyhive/navi10/keymaps/default/keymap.c diff --git a/keyboards/navi10/keymaps/default/readme.md b/keyboards/keyhive/navi10/keymaps/default/readme.md similarity index 100% rename from keyboards/navi10/keymaps/default/readme.md rename to keyboards/keyhive/navi10/keymaps/default/readme.md diff --git a/keyboards/navi10/keymaps/default/rules.mk b/keyboards/keyhive/navi10/keymaps/default/rules.mk similarity index 100% rename from keyboards/navi10/keymaps/default/rules.mk rename to keyboards/keyhive/navi10/keymaps/default/rules.mk diff --git a/keyboards/navi10/keymaps/devdev/config.h b/keyboards/keyhive/navi10/keymaps/devdev/config.h similarity index 100% rename from keyboards/navi10/keymaps/devdev/config.h rename to keyboards/keyhive/navi10/keymaps/devdev/config.h diff --git a/keyboards/navi10/keymaps/devdev/keymap.c b/keyboards/keyhive/navi10/keymaps/devdev/keymap.c similarity index 100% rename from keyboards/navi10/keymaps/devdev/keymap.c rename to keyboards/keyhive/navi10/keymaps/devdev/keymap.c diff --git a/keyboards/navi10/keymaps/devdev/rules.mk b/keyboards/keyhive/navi10/keymaps/devdev/rules.mk similarity index 100% rename from keyboards/navi10/keymaps/devdev/rules.mk rename to keyboards/keyhive/navi10/keymaps/devdev/rules.mk diff --git a/keyboards/navi10/keymaps/emdarcher/keymap.c b/keyboards/keyhive/navi10/keymaps/emdarcher/keymap.c similarity index 100% rename from keyboards/navi10/keymaps/emdarcher/keymap.c rename to keyboards/keyhive/navi10/keymaps/emdarcher/keymap.c diff --git a/keyboards/navi10/keymaps/emdarcher/readme.md b/keyboards/keyhive/navi10/keymaps/emdarcher/readme.md similarity index 100% rename from keyboards/navi10/keymaps/emdarcher/readme.md rename to keyboards/keyhive/navi10/keymaps/emdarcher/readme.md diff --git a/keyboards/navi10/keymaps/emdarcher/rules.mk b/keyboards/keyhive/navi10/keymaps/emdarcher/rules.mk similarity index 100% rename from keyboards/navi10/keymaps/emdarcher/rules.mk rename to keyboards/keyhive/navi10/keymaps/emdarcher/rules.mk diff --git a/keyboards/navi10/readme.md b/keyboards/keyhive/navi10/readme.md similarity index 90% rename from keyboards/navi10/readme.md rename to keyboards/keyhive/navi10/readme.md index 58a94711f2..06f54b73dd 100644 --- a/keyboards/navi10/readme.md +++ b/keyboards/keyhive/navi10/readme.md @@ -10,10 +10,10 @@ A simple and fun navigation cluster macropad with exposed components. Make example for this keyboard (after setting up your build environment): - make navi10:default + make keyhive/navi10:default Make example for a specific revision (ex. rev2): - make navi10/rev2:default + make keyhive/navi10/rev2:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/navi10/rev0/.noci b/keyboards/keyhive/navi10/rev0/.noci similarity index 100% rename from keyboards/navi10/rev0/.noci rename to keyboards/keyhive/navi10/rev0/.noci diff --git a/keyboards/navi10/rev0/config.h b/keyboards/keyhive/navi10/rev0/config.h similarity index 100% rename from keyboards/navi10/rev0/config.h rename to keyboards/keyhive/navi10/rev0/config.h diff --git a/keyboards/navi10/rev0/rev0.c b/keyboards/keyhive/navi10/rev0/rev0.c similarity index 100% rename from keyboards/navi10/rev0/rev0.c rename to keyboards/keyhive/navi10/rev0/rev0.c diff --git a/keyboards/navi10/rev0/rev0.h b/keyboards/keyhive/navi10/rev0/rev0.h similarity index 100% rename from keyboards/navi10/rev0/rev0.h rename to keyboards/keyhive/navi10/rev0/rev0.h diff --git a/keyboards/navi10/rev0/rules.mk b/keyboards/keyhive/navi10/rev0/rules.mk similarity index 100% rename from keyboards/navi10/rev0/rules.mk rename to keyboards/keyhive/navi10/rev0/rules.mk diff --git a/keyboards/navi10/rev2/.noci b/keyboards/keyhive/navi10/rev2/.noci similarity index 100% rename from keyboards/navi10/rev2/.noci rename to keyboards/keyhive/navi10/rev2/.noci diff --git a/keyboards/navi10/rev2/config.h b/keyboards/keyhive/navi10/rev2/config.h similarity index 100% rename from keyboards/navi10/rev2/config.h rename to keyboards/keyhive/navi10/rev2/config.h diff --git a/keyboards/navi10/rev2/rev2.c b/keyboards/keyhive/navi10/rev2/rev2.c similarity index 100% rename from keyboards/navi10/rev2/rev2.c rename to keyboards/keyhive/navi10/rev2/rev2.c diff --git a/keyboards/navi10/rev2/rev2.h b/keyboards/keyhive/navi10/rev2/rev2.h similarity index 100% rename from keyboards/navi10/rev2/rev2.h rename to keyboards/keyhive/navi10/rev2/rev2.h diff --git a/keyboards/navi10/rev2/rules.mk b/keyboards/keyhive/navi10/rev2/rules.mk similarity index 100% rename from keyboards/navi10/rev2/rules.mk rename to keyboards/keyhive/navi10/rev2/rules.mk diff --git a/keyboards/navi10/rev3/config.h b/keyboards/keyhive/navi10/rev3/config.h similarity index 100% rename from keyboards/navi10/rev3/config.h rename to keyboards/keyhive/navi10/rev3/config.h diff --git a/keyboards/navi10/rev3/rev3.c b/keyboards/keyhive/navi10/rev3/rev3.c similarity index 100% rename from keyboards/navi10/rev3/rev3.c rename to keyboards/keyhive/navi10/rev3/rev3.c diff --git a/keyboards/navi10/rev3/rev3.h b/keyboards/keyhive/navi10/rev3/rev3.h similarity index 100% rename from keyboards/navi10/rev3/rev3.h rename to keyboards/keyhive/navi10/rev3/rev3.h diff --git a/keyboards/navi10/rev3/rules.mk b/keyboards/keyhive/navi10/rev3/rules.mk similarity index 100% rename from keyboards/navi10/rev3/rules.mk rename to keyboards/keyhive/navi10/rev3/rules.mk diff --git a/keyboards/keyhive/navi10/rules.mk b/keyboards/keyhive/navi10/rules.mk new file mode 100644 index 0000000000..6ebb2d0ceb --- /dev/null +++ b/keyboards/keyhive/navi10/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = keyhive/navi10/rev3 diff --git a/keyboards/opus/config.h b/keyboards/keyhive/opus/config.h similarity index 100% rename from keyboards/opus/config.h rename to keyboards/keyhive/opus/config.h diff --git a/keyboards/opus/info.json b/keyboards/keyhive/opus/info.json similarity index 100% rename from keyboards/opus/info.json rename to keyboards/keyhive/opus/info.json diff --git a/keyboards/opus/keymaps/default/keymap.c b/keyboards/keyhive/opus/keymaps/default/keymap.c similarity index 100% rename from keyboards/opus/keymaps/default/keymap.c rename to keyboards/keyhive/opus/keymaps/default/keymap.c diff --git a/keyboards/opus/keymaps/default/readme.md b/keyboards/keyhive/opus/keymaps/default/readme.md similarity index 100% rename from keyboards/opus/keymaps/default/readme.md rename to keyboards/keyhive/opus/keymaps/default/readme.md diff --git a/keyboards/opus/keymaps/thefoxcodes/config.h b/keyboards/keyhive/opus/keymaps/thefoxcodes/config.h similarity index 100% rename from keyboards/opus/keymaps/thefoxcodes/config.h rename to keyboards/keyhive/opus/keymaps/thefoxcodes/config.h diff --git a/keyboards/opus/keymaps/thefoxcodes/keymap.c b/keyboards/keyhive/opus/keymaps/thefoxcodes/keymap.c similarity index 100% rename from keyboards/opus/keymaps/thefoxcodes/keymap.c rename to keyboards/keyhive/opus/keymaps/thefoxcodes/keymap.c diff --git a/keyboards/opus/keymaps/thefoxcodes/readme.md b/keyboards/keyhive/opus/keymaps/thefoxcodes/readme.md similarity index 100% rename from keyboards/opus/keymaps/thefoxcodes/readme.md rename to keyboards/keyhive/opus/keymaps/thefoxcodes/readme.md diff --git a/keyboards/opus/keymaps/thefoxcodes/rules.mk b/keyboards/keyhive/opus/keymaps/thefoxcodes/rules.mk similarity index 100% rename from keyboards/opus/keymaps/thefoxcodes/rules.mk rename to keyboards/keyhive/opus/keymaps/thefoxcodes/rules.mk diff --git a/keyboards/opus/opus.c b/keyboards/keyhive/opus/opus.c similarity index 100% rename from keyboards/opus/opus.c rename to keyboards/keyhive/opus/opus.c diff --git a/keyboards/opus/opus.h b/keyboards/keyhive/opus/opus.h similarity index 100% rename from keyboards/opus/opus.h rename to keyboards/keyhive/opus/opus.h diff --git a/keyboards/opus/readme.md b/keyboards/keyhive/opus/readme.md similarity index 95% rename from keyboards/opus/readme.md rename to keyboards/keyhive/opus/readme.md index aebe3162d4..8a1adf4d18 100644 --- a/keyboards/opus/readme.md +++ b/keyboards/keyhive/opus/readme.md @@ -10,6 +10,6 @@ The columns are angled to follow the natural angle of the hand. Make example for this keyboard (after setting up your build environment): - make opus:default + make keyhive/opus:default See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/opus/rules.mk b/keyboards/keyhive/opus/rules.mk similarity index 100% rename from keyboards/opus/rules.mk rename to keyboards/keyhive/opus/rules.mk diff --git a/keyboards/smallice/config.h b/keyboards/keyhive/smallice/config.h similarity index 100% rename from keyboards/smallice/config.h rename to keyboards/keyhive/smallice/config.h diff --git a/keyboards/smallice/info.json b/keyboards/keyhive/smallice/info.json similarity index 100% rename from keyboards/smallice/info.json rename to keyboards/keyhive/smallice/info.json diff --git a/keyboards/smallice/keymaps/default/keymap.c b/keyboards/keyhive/smallice/keymaps/default/keymap.c similarity index 100% rename from keyboards/smallice/keymaps/default/keymap.c rename to keyboards/keyhive/smallice/keymaps/default/keymap.c diff --git a/keyboards/smallice/keymaps/default/readme.md b/keyboards/keyhive/smallice/keymaps/default/readme.md similarity index 100% rename from keyboards/smallice/keymaps/default/readme.md rename to keyboards/keyhive/smallice/keymaps/default/readme.md diff --git a/keyboards/smallice/keymaps/via/keymap.c b/keyboards/keyhive/smallice/keymaps/via/keymap.c similarity index 100% rename from keyboards/smallice/keymaps/via/keymap.c rename to keyboards/keyhive/smallice/keymaps/via/keymap.c diff --git a/keyboards/smallice/keymaps/via/readme.md b/keyboards/keyhive/smallice/keymaps/via/readme.md similarity index 100% rename from keyboards/smallice/keymaps/via/readme.md rename to keyboards/keyhive/smallice/keymaps/via/readme.md diff --git a/keyboards/smallice/keymaps/via/rules.mk b/keyboards/keyhive/smallice/keymaps/via/rules.mk similarity index 100% rename from keyboards/smallice/keymaps/via/rules.mk rename to keyboards/keyhive/smallice/keymaps/via/rules.mk diff --git a/keyboards/smallice/readme.md b/keyboards/keyhive/smallice/readme.md similarity index 95% rename from keyboards/smallice/readme.md rename to keyboards/keyhive/smallice/readme.md index 70ac44cf74..2276b38a9e 100644 --- a/keyboards/smallice/readme.md +++ b/keyboards/keyhive/smallice/readme.md @@ -10,7 +10,7 @@ A 40% alice-like keyboard with an arrow cluster. Make example for this keyboard (after setting up your build environment): - make smallice:default + make keyhive/smallice:default ### Flash diff --git a/keyboards/smallice/rules.mk b/keyboards/keyhive/smallice/rules.mk similarity index 100% rename from keyboards/smallice/rules.mk rename to keyboards/keyhive/smallice/rules.mk diff --git a/keyboards/smallice/smallice.c b/keyboards/keyhive/smallice/smallice.c similarity index 100% rename from keyboards/smallice/smallice.c rename to keyboards/keyhive/smallice/smallice.c diff --git a/keyboards/smallice/smallice.h b/keyboards/keyhive/smallice/smallice.h similarity index 100% rename from keyboards/smallice/smallice.h rename to keyboards/keyhive/smallice/smallice.h diff --git a/keyboards/southpole/config.h b/keyboards/keyhive/southpole/config.h similarity index 100% rename from keyboards/southpole/config.h rename to keyboards/keyhive/southpole/config.h diff --git a/keyboards/southpole/info.json b/keyboards/keyhive/southpole/info.json similarity index 100% rename from keyboards/southpole/info.json rename to keyboards/keyhive/southpole/info.json diff --git a/keyboards/southpole/keymaps/default/keymap.c b/keyboards/keyhive/southpole/keymaps/default/keymap.c similarity index 100% rename from keyboards/southpole/keymaps/default/keymap.c rename to keyboards/keyhive/southpole/keymaps/default/keymap.c diff --git a/keyboards/southpole/keymaps/foobeard/keymap.c b/keyboards/keyhive/southpole/keymaps/foobeard/keymap.c similarity index 100% rename from keyboards/southpole/keymaps/foobeard/keymap.c rename to keyboards/keyhive/southpole/keymaps/foobeard/keymap.c diff --git a/keyboards/southpole/readme.md b/keyboards/keyhive/southpole/readme.md similarity index 91% rename from keyboards/southpole/readme.md rename to keyboards/keyhive/southpole/readme.md index 4ea99ad349..3f0cbc3a92 100644 --- a/keyboards/southpole/readme.md +++ b/keyboards/keyhive/southpole/readme.md @@ -8,6 +8,6 @@ Hardware Supported: Teensy 2.0 Make example for this keyboard (after setting up your build environment): - make southpole:default + make keyhive/southpole:default -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). \ No newline at end of file +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/southpole/rules.mk b/keyboards/keyhive/southpole/rules.mk similarity index 100% rename from keyboards/southpole/rules.mk rename to keyboards/keyhive/southpole/rules.mk diff --git a/keyboards/southpole/southpole.c b/keyboards/keyhive/southpole/southpole.c similarity index 100% rename from keyboards/southpole/southpole.c rename to keyboards/keyhive/southpole/southpole.c diff --git a/keyboards/southpole/southpole.h b/keyboards/keyhive/southpole/southpole.h similarity index 100% rename from keyboards/southpole/southpole.h rename to keyboards/keyhive/southpole/southpole.h diff --git a/keyboards/uno/config.h b/keyboards/keyhive/uno/config.h similarity index 100% rename from keyboards/uno/config.h rename to keyboards/keyhive/uno/config.h diff --git a/keyboards/uno/info.json b/keyboards/keyhive/uno/info.json similarity index 100% rename from keyboards/uno/info.json rename to keyboards/keyhive/uno/info.json diff --git a/keyboards/uno/keymaps/copypasta/keymap.c b/keyboards/keyhive/uno/keymaps/copypasta/keymap.c similarity index 100% rename from keyboards/uno/keymaps/copypasta/keymap.c rename to keyboards/keyhive/uno/keymaps/copypasta/keymap.c diff --git a/keyboards/uno/keymaps/copypasta/readme.md b/keyboards/keyhive/uno/keymaps/copypasta/readme.md similarity index 100% rename from keyboards/uno/keymaps/copypasta/readme.md rename to keyboards/keyhive/uno/keymaps/copypasta/readme.md diff --git a/keyboards/uno/keymaps/default/keymap.c b/keyboards/keyhive/uno/keymaps/default/keymap.c similarity index 100% rename from keyboards/uno/keymaps/default/keymap.c rename to keyboards/keyhive/uno/keymaps/default/keymap.c diff --git a/keyboards/uno/keymaps/default/readme.md b/keyboards/keyhive/uno/keymaps/default/readme.md similarity index 100% rename from keyboards/uno/keymaps/default/readme.md rename to keyboards/keyhive/uno/keymaps/default/readme.md diff --git a/keyboards/uno/keymaps/demo/keymap.c b/keyboards/keyhive/uno/keymaps/demo/keymap.c similarity index 100% rename from keyboards/uno/keymaps/demo/keymap.c rename to keyboards/keyhive/uno/keymaps/demo/keymap.c diff --git a/keyboards/uno/keymaps/demo/readme.md b/keyboards/keyhive/uno/keymaps/demo/readme.md similarity index 100% rename from keyboards/uno/keymaps/demo/readme.md rename to keyboards/keyhive/uno/keymaps/demo/readme.md diff --git a/keyboards/uno/readme.md b/keyboards/keyhive/uno/readme.md similarity index 86% rename from keyboards/uno/readme.md rename to keyboards/keyhive/uno/readme.md index b60ef23e97..23776115f3 100644 --- a/keyboards/uno/readme.md +++ b/keyboards/keyhive/uno/readme.md @@ -14,19 +14,19 @@ If it *does not* support a rotary encoder, use rev1. The following examples use Make example for this keyboard (after setting up your build environment; make sure to change `rev2` to your Uno's version): - make uno/rev2:default + make keyhive/uno/rev2:default Flashing example for this keyboard (change `rev2` to `rev1` if needed): - make uno/rev2:default:flash + make keyhive/uno/rev2:default:flash If you prefer to use the `qmk` tool: - qmk compile -kb uno/rev2 -km default + qmk compile -kb keyhive/uno/rev2 -km default Create your own keymap with: - qmk new-keymap -kb uno/rev2 + qmk new-keymap -kb keyhive/uno/rev2 See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/uno/rev1/config.h b/keyboards/keyhive/uno/rev1/config.h similarity index 100% rename from keyboards/uno/rev1/config.h rename to keyboards/keyhive/uno/rev1/config.h diff --git a/keyboards/uno/rev1/rev1.h b/keyboards/keyhive/uno/rev1/rev1.h similarity index 100% rename from keyboards/uno/rev1/rev1.h rename to keyboards/keyhive/uno/rev1/rev1.h diff --git a/keyboards/uno/rev1/rules.mk b/keyboards/keyhive/uno/rev1/rules.mk similarity index 100% rename from keyboards/uno/rev1/rules.mk rename to keyboards/keyhive/uno/rev1/rules.mk diff --git a/keyboards/uno/rev2/config.h b/keyboards/keyhive/uno/rev2/config.h similarity index 100% rename from keyboards/uno/rev2/config.h rename to keyboards/keyhive/uno/rev2/config.h diff --git a/keyboards/uno/rev2/rev2.h b/keyboards/keyhive/uno/rev2/rev2.h similarity index 100% rename from keyboards/uno/rev2/rev2.h rename to keyboards/keyhive/uno/rev2/rev2.h diff --git a/keyboards/uno/rev2/rules.mk b/keyboards/keyhive/uno/rev2/rules.mk similarity index 100% rename from keyboards/uno/rev2/rules.mk rename to keyboards/keyhive/uno/rev2/rules.mk diff --git a/keyboards/uno/rules.mk b/keyboards/keyhive/uno/rules.mk similarity index 100% rename from keyboards/uno/rules.mk rename to keyboards/keyhive/uno/rules.mk diff --git a/keyboards/uno/uno.c b/keyboards/keyhive/uno/uno.c similarity index 100% rename from keyboards/uno/uno.c rename to keyboards/keyhive/uno/uno.c diff --git a/keyboards/uno/uno.h b/keyboards/keyhive/uno/uno.h similarity index 100% rename from keyboards/uno/uno.h rename to keyboards/keyhive/uno/uno.h diff --git a/keyboards/ut472/config.h b/keyboards/keyhive/ut472/config.h similarity index 100% rename from keyboards/ut472/config.h rename to keyboards/keyhive/ut472/config.h diff --git a/keyboards/ut472/info.json b/keyboards/keyhive/ut472/info.json similarity index 100% rename from keyboards/ut472/info.json rename to keyboards/keyhive/ut472/info.json diff --git a/keyboards/ut472/keymaps/annihilator6000/UT472_Annihilator6000_Configurator_file.json b/keyboards/keyhive/ut472/keymaps/annihilator6000/UT472_Annihilator6000_Configurator_file.json similarity index 100% rename from keyboards/ut472/keymaps/annihilator6000/UT472_Annihilator6000_Configurator_file.json rename to keyboards/keyhive/ut472/keymaps/annihilator6000/UT472_Annihilator6000_Configurator_file.json diff --git a/keyboards/ut472/keymaps/annihilator6000/config.h b/keyboards/keyhive/ut472/keymaps/annihilator6000/config.h similarity index 100% rename from keyboards/ut472/keymaps/annihilator6000/config.h rename to keyboards/keyhive/ut472/keymaps/annihilator6000/config.h diff --git a/keyboards/ut472/keymaps/annihilator6000/keymap.c b/keyboards/keyhive/ut472/keymaps/annihilator6000/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/annihilator6000/keymap.c rename to keyboards/keyhive/ut472/keymaps/annihilator6000/keymap.c diff --git a/keyboards/ut472/keymaps/annihilator6000/readme.md b/keyboards/keyhive/ut472/keymaps/annihilator6000/readme.md similarity index 100% rename from keyboards/ut472/keymaps/annihilator6000/readme.md rename to keyboards/keyhive/ut472/keymaps/annihilator6000/readme.md diff --git a/keyboards/ut472/keymaps/default/keymap.c b/keyboards/keyhive/ut472/keymaps/default/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/default/keymap.c rename to keyboards/keyhive/ut472/keymaps/default/keymap.c diff --git a/keyboards/ut472/keymaps/default/readme.md b/keyboards/keyhive/ut472/keymaps/default/readme.md similarity index 100% rename from keyboards/ut472/keymaps/default/readme.md rename to keyboards/keyhive/ut472/keymaps/default/readme.md diff --git a/keyboards/ut472/keymaps/hvp/config.h b/keyboards/keyhive/ut472/keymaps/hvp/config.h similarity index 100% rename from keyboards/ut472/keymaps/hvp/config.h rename to keyboards/keyhive/ut472/keymaps/hvp/config.h diff --git a/keyboards/ut472/keymaps/hvp/keymap.c b/keyboards/keyhive/ut472/keymaps/hvp/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/hvp/keymap.c rename to keyboards/keyhive/ut472/keymaps/hvp/keymap.c diff --git a/keyboards/ut472/keymaps/hvp/readme.md b/keyboards/keyhive/ut472/keymaps/hvp/readme.md similarity index 100% rename from keyboards/ut472/keymaps/hvp/readme.md rename to keyboards/keyhive/ut472/keymaps/hvp/readme.md diff --git a/keyboards/ut472/keymaps/hvp/rules.mk b/keyboards/keyhive/ut472/keymaps/hvp/rules.mk similarity index 100% rename from keyboards/ut472/keymaps/hvp/rules.mk rename to keyboards/keyhive/ut472/keymaps/hvp/rules.mk diff --git a/keyboards/ut472/keymaps/stefanopace/config.h b/keyboards/keyhive/ut472/keymaps/stefanopace/config.h similarity index 100% rename from keyboards/ut472/keymaps/stefanopace/config.h rename to keyboards/keyhive/ut472/keymaps/stefanopace/config.h diff --git a/keyboards/ut472/keymaps/stefanopace/keymap.c b/keyboards/keyhive/ut472/keymaps/stefanopace/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/stefanopace/keymap.c rename to keyboards/keyhive/ut472/keymaps/stefanopace/keymap.c diff --git a/keyboards/ut472/keymaps/stefanopace/readme.md b/keyboards/keyhive/ut472/keymaps/stefanopace/readme.md similarity index 100% rename from keyboards/ut472/keymaps/stefanopace/readme.md rename to keyboards/keyhive/ut472/keymaps/stefanopace/readme.md diff --git a/keyboards/ut472/keymaps/stefanopace/rules.mk b/keyboards/keyhive/ut472/keymaps/stefanopace/rules.mk similarity index 100% rename from keyboards/ut472/keymaps/stefanopace/rules.mk rename to keyboards/keyhive/ut472/keymaps/stefanopace/rules.mk diff --git a/keyboards/ut472/keymaps/tucznak/config.h b/keyboards/keyhive/ut472/keymaps/tucznak/config.h similarity index 100% rename from keyboards/ut472/keymaps/tucznak/config.h rename to keyboards/keyhive/ut472/keymaps/tucznak/config.h diff --git a/keyboards/ut472/keymaps/tucznak/keymap.c b/keyboards/keyhive/ut472/keymaps/tucznak/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/tucznak/keymap.c rename to keyboards/keyhive/ut472/keymaps/tucznak/keymap.c diff --git a/keyboards/ut472/keymaps/tucznak/readme.md b/keyboards/keyhive/ut472/keymaps/tucznak/readme.md similarity index 100% rename from keyboards/ut472/keymaps/tucznak/readme.md rename to keyboards/keyhive/ut472/keymaps/tucznak/readme.md diff --git a/keyboards/ut472/keymaps/tucznak/rules.mk b/keyboards/keyhive/ut472/keymaps/tucznak/rules.mk similarity index 100% rename from keyboards/ut472/keymaps/tucznak/rules.mk rename to keyboards/keyhive/ut472/keymaps/tucznak/rules.mk diff --git a/keyboards/ut472/keymaps/via/keymap.c b/keyboards/keyhive/ut472/keymaps/via/keymap.c similarity index 100% rename from keyboards/ut472/keymaps/via/keymap.c rename to keyboards/keyhive/ut472/keymaps/via/keymap.c diff --git a/keyboards/ut472/keymaps/via/rules.mk b/keyboards/keyhive/ut472/keymaps/via/rules.mk similarity index 100% rename from keyboards/ut472/keymaps/via/rules.mk rename to keyboards/keyhive/ut472/keymaps/via/rules.mk diff --git a/keyboards/ut472/readme.md b/keyboards/keyhive/ut472/readme.md similarity index 96% rename from keyboards/ut472/readme.md rename to keyboards/keyhive/ut472/readme.md index 25f40d783a..b2a13b38cc 100644 --- a/keyboards/ut472/readme.md +++ b/keyboards/keyhive/ut472/readme.md @@ -11,7 +11,7 @@ or purchased at keyhive.xyz To create a hex file for the UT47.2, run: - make ut472:default + make keyhive/ut472:default ## Layout diff --git a/keyboards/ut472/rules.mk b/keyboards/keyhive/ut472/rules.mk similarity index 100% rename from keyboards/ut472/rules.mk rename to keyboards/keyhive/ut472/rules.mk diff --git a/keyboards/ut472/ut472.c b/keyboards/keyhive/ut472/ut472.c similarity index 100% rename from keyboards/ut472/ut472.c rename to keyboards/keyhive/ut472/ut472.c diff --git a/keyboards/ut472/ut472.h b/keyboards/keyhive/ut472/ut472.h similarity index 100% rename from keyboards/ut472/ut472.h rename to keyboards/keyhive/ut472/ut472.h diff --git a/keyboards/navi10/rules.mk b/keyboards/navi10/rules.mk deleted file mode 100644 index cc08312b77..0000000000 --- a/keyboards/navi10/rules.mk +++ /dev/null @@ -1 +0,0 @@ -DEFAULT_FOLDER = navi10/rev3 From 690dc4bdafe9e5e23e201d6bc839c32106074288 Mon Sep 17 00:00:00 2001 From: uqs Date: Tue, 19 Apr 2022 12:29:17 +0200 Subject: [PATCH 289/699] Add support for multiple sensors to pmw3360 (#15996) --- docs/feature_pointing_device.md | 32 ++++++ drivers/sensors/pmw3360.c | 181 +++++++++++++++--------------- drivers/sensors/pmw3360.h | 16 ++- quantum/pointing_device_drivers.c | 4 +- 4 files changed, 136 insertions(+), 97 deletions(-) diff --git a/docs/feature_pointing_device.md b/docs/feature_pointing_device.md index 8c51865558..02c1e64a31 100644 --- a/docs/feature_pointing_device.md +++ b/docs/feature_pointing_device.md @@ -134,6 +134,7 @@ The Pimoroni Trackball module is a I2C based breakout board with an RGB enable t ### PMW 3360 Sensor +This drivers supports multiple sensors _per_ controller, so 2 can be attached at the same side for split keyboards (or unsplit keyboards). To use the PMW 3360 sensor, add this to your `rules.mk` ```make @@ -145,6 +146,7 @@ The PMW 3360 is an SPI driven optical sensor, that uses a built in IR LED for su | Setting | Description | Default | |-----------------------------|--------------------------------------------------------------------------------------------|---------------| |`PMW3360_CS_PIN` | (Required) Sets the Cable Select pin connected to the sensor. | _not defined_ | +|`PMW3360_CS_PINS` | (Alternative) Sets the Cable Select pins connected to multiple sensors. | _not defined_ | |`PMW3360_CLOCK_SPEED` | (Optional) Sets the clock speed that the sensor runs at. | `2000000` | |`PMW3360_SPI_LSBFIRST` | (Optional) Sets the Least/Most Significant Byte First setting for SPI. | `false` | |`PMW3360_SPI_MODE` | (Optional) Sets the SPI Mode for the sensor. | `3` | @@ -155,6 +157,36 @@ The PMW 3360 is an SPI driven optical sensor, that uses a built in IR LED for su The CPI range is 100-12000, in increments of 100. Defaults to 1600 CPI. +To use multiple sensors, instead of setting `PMW3360_CS_PIN` you need to set `PMW3360_CS_PINS` and also handle and merge the read from this sensor in user code. +Note that different (per sensor) values of CPI, speed liftoff, rotational angle or flipping of X/Y is not currently supported. + +```c +// in config.h: +#define PMW3360_CS_PINS { B5, B6 } + +// in keyboard.c: +#ifdef POINTING_DEVICE_ENABLE +void pointing_device_init_kb(void) { + pmw3360_init(1); // index 1 is the second device. + pointing_device_set_cpi(800); // applies to both sensors + pointing_device_init_user(); +} + +// Contains report from sensor #0 already, need to merge in from sensor #1 +report_mouse_t pointing_device_task_kb(report_mouse_t mouse_report) { + report_pmw3360_t data = pmw3360_read_burst(1); + if (data.isOnSurface && data.isMotion) { +// From quantum/pointing_device_drivers.c +#define constrain_hid(amt) ((amt) < -127 ? -127 : ((amt) > 127 ? 127 : (amt))) + mouse_report.x = constrain_hid(mouse_report.x + data.dx); + mouse_report.y = constrain_hid(mouse_report.y + data.dy); + } + return pointing_device_task_user(mouse_report); +} +#endif + +``` + ### PMW 3389 Sensor To use the PMW 3389 sensor, add this to your `rules.mk` diff --git a/drivers/sensors/pmw3360.c b/drivers/sensors/pmw3360.c index 8c977be1c8..5f4d17a3f0 100644 --- a/drivers/sensors/pmw3360.c +++ b/drivers/sensors/pmw3360.c @@ -1,6 +1,7 @@ /* Copyright 2020 Christopher Courtney, aka Drashna Jael're (@drashna) * Copyright 2019 Sunjun Kim * Copyright 2020 Ploopy Corporation + * Copyright 2022 Ulrich Spörlein * * 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 @@ -83,7 +84,11 @@ # define MAX_CPI 0x77 #endif -bool _inBurst = false; +static const pin_t pins[] = PMW3360_CS_PINS; +#define NUMBER_OF_SENSORS (sizeof(pins) / sizeof(pin_t)) + +// per-sensor driver state +static bool _inBurst[NUMBER_OF_SENSORS] = {0}; #ifdef CONSOLE_ENABLE void print_byte(uint8_t byte) { @@ -92,18 +97,18 @@ void print_byte(uint8_t byte) { #endif #define constrain(amt, low, high) ((amt) < (low) ? (low) : ((amt) > (high) ? (high) : (amt))) -bool pmw3360_spi_start(void) { - bool status = spi_start(PMW3360_CS_PIN, PMW3360_SPI_LSBFIRST, PMW3360_SPI_MODE, PMW3360_SPI_DIVISOR); +bool pmw3360_spi_start(int8_t index) { + bool status = spi_start(pins[index], PMW3360_SPI_LSBFIRST, PMW3360_SPI_MODE, PMW3360_SPI_DIVISOR); // tNCS-SCLK, 120ns wait_us(1); return status; } -spi_status_t pmw3360_write(uint8_t reg_addr, uint8_t data) { - pmw3360_spi_start(); +spi_status_t pmw3360_write(int8_t index, uint8_t reg_addr, uint8_t data) { + pmw3360_spi_start(index); if (reg_addr != REG_Motion_Burst) { - _inBurst = false; + _inBurst[index] = false; } // send address of the register, with MSBit = 1 to indicate it's a write @@ -114,13 +119,13 @@ spi_status_t pmw3360_write(uint8_t reg_addr, uint8_t data) { wait_us(35); spi_stop(); - // tSWW/tSWR (=180us) minus tSCLK-NCS. Could be shortened, but is looks like a safe lower bound + // tSWW/tSWR (=180us) minus tSCLK-NCS. Could be shortened, but it looks like a safe lower bound wait_us(145); return status; } -uint8_t pmw3360_read(uint8_t reg_addr) { - pmw3360_spi_start(); +uint8_t pmw3360_read(int8_t index, uint8_t reg_addr) { + pmw3360_spi_start(index); // send adress of the register, with MSBit = 0 to indicate it's a read spi_write(reg_addr & 0x7f); // tSRAD (=160us) @@ -136,75 +141,24 @@ uint8_t pmw3360_read(uint8_t reg_addr) { return data; } -bool pmw3360_init(void) { - setPinOutput(PMW3360_CS_PIN); - - spi_init(); - _inBurst = false; - - spi_stop(); - pmw3360_spi_start(); - spi_stop(); - - pmw3360_write(REG_Shutdown, 0xb6); // Shutdown first - wait_ms(300); - - pmw3360_spi_start(); - wait_us(40); - spi_stop(); - wait_us(40); - - // power up, need to first drive NCS high then low, see above. - pmw3360_write(REG_Power_Up_Reset, 0x5a); - wait_ms(50); - - // read registers and discard - pmw3360_read(REG_Motion); - pmw3360_read(REG_Delta_X_L); - pmw3360_read(REG_Delta_X_H); - pmw3360_read(REG_Delta_Y_L); - pmw3360_read(REG_Delta_Y_H); - - pmw3360_upload_firmware(); - - spi_stop(); - - wait_ms(10); - pmw3360_set_cpi(PMW3360_CPI); - - wait_ms(1); - - pmw3360_write(REG_Config2, 0x00); - - pmw3360_write(REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -127, 127)); - - pmw3360_write(REG_Lift_Config, PMW3360_LIFTOFF_DISTANCE); - - bool init_success = pmw3360_check_signature(); -#ifdef CONSOLE_ENABLE - if (init_success) { - dprintf("pmw3360 signature verified"); - } else { - dprintf("pmw3360 signature verification failed!"); - } -#endif - - writePinLow(PMW3360_CS_PIN); - - return init_success; +bool pmw3360_check_signature(int8_t index) { + uint8_t pid = pmw3360_read(index, REG_Product_ID); + uint8_t iv_pid = pmw3360_read(index, REG_Inverse_Product_ID); + uint8_t SROM_ver = pmw3360_read(index, REG_SROM_ID); + return (pid == firmware_signature[0] && iv_pid == firmware_signature[1] && SROM_ver == firmware_signature[2]); // signature for SROM 0x04 } -void pmw3360_upload_firmware(void) { +void pmw3360_upload_firmware(int8_t index) { // Datasheet claims we need to disable REST mode first, but during startup // it's already disabled and we're not turning it on ... - // pmw3360_write(REG_Config2, 0x00); // disable REST mode - pmw3360_write(REG_SROM_Enable, 0x1d); + // pmw3360_write(index, REG_Config2, 0x00); // disable REST mode + pmw3360_write(index, REG_SROM_Enable, 0x1d); wait_ms(10); - pmw3360_write(REG_SROM_Enable, 0x18); + pmw3360_write(index, REG_SROM_Enable, 0x18); - pmw3360_spi_start(); + pmw3360_spi_start(index); spi_write(REG_SROM_Load_Burst | 0x80); wait_us(15); @@ -216,39 +170,88 @@ void pmw3360_upload_firmware(void) { } wait_us(200); - pmw3360_read(REG_SROM_ID); - pmw3360_write(REG_Config2, 0x00); + pmw3360_read(index, REG_SROM_ID); + pmw3360_write(index, REG_Config2, 0x00); } -bool pmw3360_check_signature(void) { - uint8_t pid = pmw3360_read(REG_Product_ID); - uint8_t iv_pid = pmw3360_read(REG_Inverse_Product_ID); - uint8_t SROM_ver = pmw3360_read(REG_SROM_ID); - return (pid == firmware_signature[0] && iv_pid == firmware_signature[1] && SROM_ver == firmware_signature[2]); // signature for SROM 0x04 +bool pmw3360_init(int8_t index) { + if (index >= NUMBER_OF_SENSORS) { + return false; + } + spi_init(); + + // power up, need to first drive NCS high then low. + // the datasheet does not say for how long, 40us works well in practice. + pmw3360_spi_start(index); + wait_us(40); + spi_stop(); + wait_us(40); + pmw3360_write(index, REG_Power_Up_Reset, 0x5a); + wait_ms(50); + + // read registers and discard + pmw3360_read(index, REG_Motion); + pmw3360_read(index, REG_Delta_X_L); + pmw3360_read(index, REG_Delta_X_H); + pmw3360_read(index, REG_Delta_Y_L); + pmw3360_read(index, REG_Delta_Y_H); + + pmw3360_upload_firmware(index); + + spi_stop(); + + wait_ms(10); + pmw3360_set_cpi(PMW3360_CPI); + + wait_ms(1); + + pmw3360_write(index, REG_Config2, 0x00); + + pmw3360_write(index, REG_Angle_Tune, constrain(ROTATIONAL_TRANSFORM_ANGLE, -127, 127)); + + pmw3360_write(index, REG_Lift_Config, PMW3360_LIFTOFF_DISTANCE); + + bool init_success = pmw3360_check_signature(index); +#ifdef CONSOLE_ENABLE + if (init_success) { + dprintf("pmw3360 signature verified"); + } else { + dprintf("pmw3360 signature verification failed!"); + } +#endif + + return init_success; } +// Only support reading the value from sensor #0, no one is using this anyway. uint16_t pmw3360_get_cpi(void) { - uint8_t cpival = pmw3360_read(REG_Config1); + uint8_t cpival = pmw3360_read(0, REG_Config1); return (uint16_t)((cpival + 1) & 0xFF) * CPI_STEP; } +// Write same CPI to all sensors. void pmw3360_set_cpi(uint16_t cpi) { uint8_t cpival = constrain((cpi / CPI_STEP) - 1, 0, MAX_CPI); - pmw3360_write(REG_Config1, cpival); + for (size_t i = 0; i < NUMBER_OF_SENSORS; i++) { + pmw3360_write(i, REG_Config1, cpival); + } } -report_pmw3360_t pmw3360_read_burst(void) { +report_pmw3360_t pmw3360_read_burst(int8_t index) { report_pmw3360_t report = {0}; - - if (!_inBurst) { -#ifdef CONSOLE_ENABLE - dprintf("burst on"); -#endif - pmw3360_write(REG_Motion_Burst, 0x00); - _inBurst = true; + if (index >= NUMBER_OF_SENSORS) { + return report; } - pmw3360_spi_start(); + if (!_inBurst[index]) { +#ifdef CONSOLE_ENABLE + dprintf("burst on for index %d", index); +#endif + pmw3360_write(index, REG_Motion_Burst, 0x00); + _inBurst[index] = true; + } + + pmw3360_spi_start(index); spi_write(REG_Motion_Burst); wait_us(35); // waits for tSRAD_MOTBR @@ -261,7 +264,7 @@ report_pmw3360_t pmw3360_read_burst(void) { report.mdy = spi_read(); if (report.motion & 0b111) { // panic recovery, sometimes burst mode works weird. - _inBurst = false; + _inBurst[index] = false; } spi_stop(); diff --git a/drivers/sensors/pmw3360.h b/drivers/sensors/pmw3360.h index eec7295871..3aa8ed0ed8 100644 --- a/drivers/sensors/pmw3360.h +++ b/drivers/sensors/pmw3360.h @@ -52,8 +52,14 @@ # define ROTATIONAL_TRANSFORM_ANGLE 0x00 #endif -#ifndef PMW3360_CS_PIN -# error "No chip select pin defined -- missing PMW3360_CS_PIN" +// Support single and plural spellings +#ifndef PMW3360_CS_PINS +# ifndef PMW3360_CS_PIN +# error "No chip select pin defined -- missing PMW3360_CS_PIN or PMW3360_CS_PINS" +# else +# define PMW3360_CS_PINS \ + { PMW3360_CS_PIN } +# endif #endif typedef struct { @@ -66,10 +72,8 @@ typedef struct { int8_t mdy; } report_pmw3360_t; -bool pmw3360_init(void); -void pmw3360_upload_firmware(void); -bool pmw3360_check_signature(void); +bool pmw3360_init(int8_t index); uint16_t pmw3360_get_cpi(void); void pmw3360_set_cpi(uint16_t cpi); /* Reads and clears the current delta values on the sensor */ -report_pmw3360_t pmw3360_read_burst(void); +report_pmw3360_t pmw3360_read_burst(int8_t index); diff --git a/quantum/pointing_device_drivers.c b/quantum/pointing_device_drivers.c index 11cbf6594e..56363c7ac6 100644 --- a/quantum/pointing_device_drivers.c +++ b/quantum/pointing_device_drivers.c @@ -200,11 +200,11 @@ const pointing_device_driver_t pointing_device_driver = { // clang-format on #elif defined(POINTING_DEVICE_DRIVER_pmw3360) static void pmw3360_device_init(void) { - pmw3360_init(); + pmw3360_init(0); } report_mouse_t pmw3360_get_report(report_mouse_t mouse_report) { - report_pmw3360_t data = pmw3360_read_burst(); + report_pmw3360_t data = pmw3360_read_burst(0); static uint16_t MotionStart = 0; // Timer for accel, 0 is resting state if (data.isOnSurface && data.isMotion) { From bde724e1249a696c070f4ce12964be1ea6d43ead Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Tue, 19 Apr 2022 19:31:10 +0900 Subject: [PATCH 290/699] Change helix:yshrsmz keymap to use split_common (#16537) --- keyboards/helix/rev2/keymaps/yshrsmz/keymap.c | 159 +++++++++++++++--- keyboards/helix/rev2/keymaps/yshrsmz/rules.mk | 9 + 2 files changed, 140 insertions(+), 28 deletions(-) diff --git a/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c b/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c index bd8796d064..d9102cb59f 100644 --- a/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c +++ b/keyboards/helix/rev2/keymaps/yshrsmz/keymap.c @@ -1,24 +1,10 @@ #include QMK_KEYBOARD_H -#include "bootloader.h" -#ifdef PROTOCOL_LUFA -#include "lufa.h" -#include "split_util.h" -#endif -#ifdef AUDIO_ENABLE - #include "audio.h" -#endif +#include +#include #ifdef SSD1306OLED #include "ssd1306.h" #endif - -#ifdef RGBLIGHT_ENABLE -//Following line allows macro to read current RGB settings -extern rgblight_config_t rgblight_config; -#endif - -extern uint8_t is_master; - // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them @@ -415,7 +401,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { rgblight_mode(RGB_current_mode); rgblight_step(); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } #endif return false; @@ -449,7 +435,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { if (record->event.pressed) { eeconfig_update_rgblight_default(); rgblight_enable(); - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); } #endif break; @@ -462,7 +448,7 @@ void matrix_init_user(void) { startup_user(); #endif #ifdef RGBLIGHT_ENABLE - RGB_current_mode = rgblight_config.mode; + RGB_current_mode = rgblight_get_mode(); #endif //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h #ifdef SSD1306OLED @@ -533,15 +519,15 @@ static void render_logo(struct CharacterMatrix *matrix) { static void render_rgbled_status(bool full, struct CharacterMatrix *matrix) { #ifdef RGBLIGHT_ENABLE char buf[30]; - if (RGBLIGHT_MODES > 1 && rgblight_config.enable) { + if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { if (full) { snprintf(buf, sizeof(buf), " LED %2d: %d,%d,%d ", - rgblight_config.mode, - rgblight_config.hue/RGBLIGHT_HUE_STEP, - rgblight_config.sat/RGBLIGHT_SAT_STEP, - rgblight_config.val/RGBLIGHT_VAL_STEP); + rgblight_get_mode(), + rgblight_get_hue()/RGBLIGHT_HUE_STEP, + rgblight_get_sat()/RGBLIGHT_SAT_STEP, + rgblight_get_val()/RGBLIGHT_VAL_STEP); } else { - snprintf(buf, sizeof(buf), "[%2d] ",rgblight_config.mode); + snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode()); } matrix_write(matrix, buf); } @@ -613,9 +599,9 @@ void iota_gfx_task_user(void) { #endif matrix_clear(&matrix); - if(is_master){ + if (is_keyboard_master()) { render_status(&matrix); - }else{ + } else { render_logo(&matrix); render_rgbled_status(false, &matrix); render_layer_status(&matrix); @@ -623,4 +609,121 @@ void iota_gfx_task_user(void) { matrix_update(&display, &matrix); } -#endif +#endif // end of SSD1306OLED + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (is_keyboard_master()) { + return OLED_ROTATION_0; + } else { + return OLED_ROTATION_180; + } +} + +//assign the right code to your layers for OLED display +#define L_BASE 0 +#define L_LOWER (1<<_LOWER) +#define L_RAISE (1<<_RAISE) +#define L_ADJUST (1<<_ADJUST) +#define L_ADJUST_TRI (L_ADJUST|L_RAISE|L_LOWER) + +static void render_logo(void) { + + static const char helix_logo[] PROGMEM ={ + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, + 0}; + oled_write_P(helix_logo, false); + //matrix_write_P(&matrix, PSTR(" Split keyboard kit")); +} + +static void render_rgbled_status(bool full) { +# ifdef RGBLIGHT_ENABLE + char buf[30]; + if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { + if (full) { + snprintf(buf, sizeof(buf), " LED %2d: %d,%d,%d ", + rgblight_get_mode(), + rgblight_get_hue()/RGBLIGHT_HUE_STEP, + rgblight_get_sat()/RGBLIGHT_SAT_STEP, + rgblight_get_val()/RGBLIGHT_VAL_STEP); + } else { + snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode()); + } + oled_write(buf, false); + } +# endif +} + +static void render_layer_status(void) { + // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below + char buf[10]; + oled_write_P(PSTR("Layer: "), false); + switch (layer_state) { + case L_BASE: + oled_write_P(PSTR("Default"), false); + break; + case L_RAISE: + oled_write_P(PSTR("Raise"), false); + break; + case L_LOWER: + oled_write_P(PSTR("Lower"), false); + break; + case L_ADJUST: + case L_ADJUST_TRI: + oled_write_P(PSTR("Adjust"), false); + break; + default: + oled_write_P(PSTR("Undef-"), false); + snprintf(buf,sizeof(buf), "%ld", layer_state); + oled_write(buf, false); + } + oled_write_P(PSTR("\n"), false); +} + +void render_status(void) { + // Render to mode icon + static const char os_logo[][2][3] PROGMEM ={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; + if (keymap_config.swap_lalt_lgui==false) { + oled_write_P(os_logo[0][0], false); + oled_write_P(PSTR("\n"), false); + oled_write_P(os_logo[0][1], false); + } else { + oled_write_P(os_logo[1][0], false); + oled_write_P(PSTR("\n"), false); + oled_write_P(os_logo[1][1], false); + } + + oled_write_P(PSTR(" "), false); + render_layer_status(); + + // Host Keyboard LED Status + oled_write_P((host_keyboard_leds() & (1< Date: Tue, 19 Apr 2022 12:32:11 +0200 Subject: [PATCH 291/699] [Keymap] A Colemak keymap for the crkbd keyboard (#16550) --- keyboards/crkbd/keymaps/colemad/config.h | 30 +++ keyboards/crkbd/keymaps/colemad/glcdfont.c | 234 ++++++++++++++++++ keyboards/crkbd/keymaps/colemad/keycodes.h | 24 ++ keyboards/crkbd/keymaps/colemad/keymap.c | 66 +++++ keyboards/crkbd/keymaps/colemad/layers.h | 10 + keyboards/crkbd/keymaps/colemad/oled.c | 128 ++++++++++ keyboards/crkbd/keymaps/colemad/oled.h | 13 + .../crkbd/keymaps/colemad/process_records.c | 21 ++ .../crkbd/keymaps/colemad/process_records.h | 5 + keyboards/crkbd/keymaps/colemad/readme.md | 106 ++++++++ keyboards/crkbd/keymaps/colemad/rules.mk | 21 ++ keyboards/crkbd/keymaps/colemad/tap_dances.c | 7 + keyboards/crkbd/keymaps/colemad/tap_dances.h | 11 + 13 files changed, 676 insertions(+) create mode 100644 keyboards/crkbd/keymaps/colemad/config.h create mode 100644 keyboards/crkbd/keymaps/colemad/glcdfont.c create mode 100644 keyboards/crkbd/keymaps/colemad/keycodes.h create mode 100644 keyboards/crkbd/keymaps/colemad/keymap.c create mode 100644 keyboards/crkbd/keymaps/colemad/layers.h create mode 100644 keyboards/crkbd/keymaps/colemad/oled.c create mode 100644 keyboards/crkbd/keymaps/colemad/oled.h create mode 100644 keyboards/crkbd/keymaps/colemad/process_records.c create mode 100644 keyboards/crkbd/keymaps/colemad/process_records.h create mode 100644 keyboards/crkbd/keymaps/colemad/readme.md create mode 100644 keyboards/crkbd/keymaps/colemad/rules.mk create mode 100644 keyboards/crkbd/keymaps/colemad/tap_dances.c create mode 100644 keyboards/crkbd/keymaps/colemad/tap_dances.h diff --git a/keyboards/crkbd/keymaps/colemad/config.h b/keyboards/crkbd/keymaps/colemad/config.h new file mode 100644 index 0000000000..6d2050e148 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/config.h @@ -0,0 +1,30 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define TAPPING_FORCE_HOLD +#define TAPPING_TERM 200 + +#ifdef RGB_MATRIX_ENABLE + #define RGB_MATRIX_KEYPRESSES + #define RGB_MATRIX_FRAMEBUFFER_EFFECTS + #define RGB_DISABLE_WHEN_USB_SUSPENDED + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 + #define RGB_MATRIX_LED_FLUSH_LIMIT 16 + #define RGB_MATRIX_HUE_STEP 8 + #define RGB_MATRIX_SAT_STEP 8 + #define RGB_MATRIX_VAL_STEP 5 + #define RGB_MATRIX_SPD_STEP 10 + + // Effects + #define ENABLE_RGB_MATRIX_BREATHING +#endif + +#ifdef OLED_ENABLE + #define SPLIT_LAYER_STATE_ENABLE + #define SPLIT_LED_STATE_ENABLE + #define SPLIT_MODS_ENABLE + #define SPLIT_OLED_ENABLE + #define OLED_TIMEOUT 60000 + #define OLED_FONT_H "keyboards/crkbd/keymaps/colemad/glcdfont.c" +#endif diff --git a/keyboards/crkbd/keymaps/colemad/glcdfont.c b/keyboards/crkbd/keymaps/colemad/glcdfont.c new file mode 100644 index 0000000000..3bf950e162 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/glcdfont.c @@ -0,0 +1,234 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "progmem.h" + +// Corne 8x6 font with QMK Firmware Logo +// Online editor: https://helixfonteditor.netlify.com/ +// See also: https://github.com/soundmonster/glcdfont_converter + +const unsigned char font[] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, + 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, + 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, + 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, + 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, + 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, + 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, + 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, + 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, + 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, + 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, + 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, + 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, + 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, + 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, + 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, + 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, + 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, + 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, + 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, + 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, + 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, + 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, + 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, + 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, + 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, + 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, + 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, + 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, + 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, + 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, + 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, + 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, + 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, + 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, + 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, + 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, + 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, + 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, + 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, + 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, + 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, + 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, + 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, + 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, + 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, + 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, + 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, + 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, + 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, + 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, + 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, + 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, + 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, + 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, + 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, + 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, + 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, + 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, + 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, + 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, + 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, + 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, + 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, + 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, + 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, + 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, + 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, + 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, + 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, + 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, + 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, + 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, + 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, + 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, + 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, + 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, + 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, + 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, + 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, + 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, + 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, + 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, + 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, + 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, + 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, + 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, + 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, + 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, + 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, + 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, + 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, + 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, + 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, + 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xC0, 0xE0, 0xF0, 0xF8, + 0xF8, 0x18, 0x00, 0xC0, 0xF0, 0xFC, + 0xFE, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0x7E, 0x00, 0x00, 0x00, + 0xF8, 0xFC, 0x06, 0x03, 0x83, 0x43, + 0x23, 0x13, 0x23, 0x43, 0x83, 0x03, + 0x06, 0xFC, 0x00, 0x00, 0x00, 0x00, + 0xF8, 0xFC, 0x06, 0x03, 0xE3, 0x23, + 0x23, 0x03, 0x23, 0xE3, 0x23, 0x03, + 0xE3, 0xA3, 0x63, 0x03, 0xE3, 0x03, + 0x03, 0x03, 0x06, 0xFC, 0x00, 0x00, + 0xF8, 0xFC, 0x06, 0x03, 0xC3, 0x23, + 0x23, 0xC3, 0x03, 0x43, 0xA3, 0x23, + 0x43, 0x03, 0x06, 0xFC, 0x00, 0x00, + 0xF8, 0xFC, 0x06, 0x03, 0xE3, 0xA3, + 0xE3, 0x03, 0xE3, 0x03, 0x83, 0xE3, + 0x83, 0x03, 0x06, 0xFC, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, + 0x10, 0x10, 0x08, 0x08, 0x10, 0x10, + 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, + 0x80, 0x80, 0xC0, 0xC0, 0xE0, 0xE0, + 0xF0, 0xF0, 0xF8, 0xF8, 0xF0, 0xF0, + 0xE0, 0xE0, 0xC0, 0xC0, 0x80, 0x80, + 0x80, 0x80, 0x40, 0x40, 0x20, 0x20, + 0x10, 0x10, 0x08, 0x08, 0x10, 0x10, + 0x20, 0x20, 0x40, 0x40, 0x80, 0x80, + 0x80, 0x80, 0x40, 0xC0, 0x60, 0xA0, + 0x50, 0xB0, 0x58, 0xA8, 0x50, 0xB0, + 0x60, 0xA0, 0x40, 0xC0, 0x80, 0x80, + 0x00, 0xF8, 0xFC, 0xFE, 0xFF, 0xE0, + 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0x80, 0xFF, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0x1F, + 0x07, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x1F, 0x3F, 0x60, 0x41, 0x41, 0x4F, + 0x48, 0x48, 0x48, 0x4F, 0x41, 0x41, + 0x20, 0x1F, 0x00, 0x00, 0x00, 0x00, + 0x1F, 0x3F, 0x60, 0x40, 0x47, 0x44, + 0x44, 0x40, 0x40, 0x47, 0x40, 0x40, + 0x47, 0x40, 0x47, 0x40, 0x47, 0x44, + 0x44, 0x40, 0x20, 0x1F, 0x00, 0x00, + 0x1F, 0x3F, 0x60, 0x40, 0x43, 0x44, + 0x44, 0x43, 0x40, 0x42, 0x44, 0x45, + 0x42, 0x40, 0x20, 0x1F, 0x00, 0x00, + 0x1F, 0x3F, 0x60, 0x40, 0x47, 0x40, + 0x47, 0x40, 0x47, 0x44, 0x40, 0x47, + 0x44, 0x40, 0x20, 0x1F, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x88, 0x88, 0x5D, 0x5D, 0x3E, 0x3E, + 0x7C, 0x7C, 0xF8, 0xF8, 0x7C, 0x7C, + 0x3E, 0x3E, 0x5D, 0x5D, 0x88, 0x88, + 0x88, 0x88, 0x55, 0x55, 0x23, 0x23, + 0x47, 0x47, 0x8F, 0x8F, 0x47, 0x47, + 0x23, 0x23, 0x55, 0x55, 0x88, 0x88, + 0x88, 0x88, 0xD5, 0xD5, 0xE2, 0xE2, + 0xC4, 0xC4, 0x88, 0x88, 0xC4, 0xC4, + 0xE2, 0xE2, 0xD5, 0xD5, 0x88, 0x88, + 0x88, 0x88, 0x5D, 0xD5, 0x6B, 0xB6, + 0x6D, 0xD6, 0xAD, 0xDA, 0x6D, 0xD6, + 0x6B, 0xB6, 0x5D, 0xD5, 0x88, 0x88, + 0x00, 0x03, 0x0F, 0x1F, 0x3F, 0x3F, + 0x3F, 0x3F, 0x1F, 0x1F, 0x3F, 0x3F, + 0x7F, 0x7F, 0x7F, 0x3F, 0x3F, 0x1F, + 0x3F, 0x7F, 0x7F, 0x7F, 0x7F, 0x7C, + 0x78, 0x78, 0x38, 0x1C, 0x0F, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, + 0x04, 0x04, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x02, 0x02, + 0x04, 0x04, 0x08, 0x08, 0x04, 0x04, + 0x02, 0x02, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x03, + 0x07, 0x07, 0x0F, 0x0F, 0x07, 0x07, + 0x03, 0x03, 0x01, 0x01, 0x00, 0x00, + 0x00, 0x00, 0x01, 0x01, 0x03, 0x02, + 0x05, 0x06, 0x0D, 0x0A, 0x05, 0x06, + 0x03, 0x02, 0x01, 0x01, 0x00, 0x00, +}; diff --git a/keyboards/crkbd/keymaps/colemad/keycodes.h b/keyboards/crkbd/keymaps/colemad/keycodes.h new file mode 100644 index 0000000000..6497f1662b --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/keycodes.h @@ -0,0 +1,24 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include QMK_KEYBOARD_H +#include "layers.h" + +/* Tap-Hold keycodes */ +#define KC_LOWER LT(_LOWER, KC_ENT) /* Tap for Enter, Hold for LOWER layer */ +#define KC_RAISE LT(_RAISE, KC_SPC) /* Tap for Space, Hold for RAISE layer */ + +/* Tap Dance keycodes */ +#if defined(TAP_DANCE_ENABLE) + #include "tap_dances.h" + #define KC_T_SFT T_SFT /* Single tap for Shift, Double tap for CAPS Lock */ +#else + #define KC_T_SFT KC_LSFT +#endif + +/* Macros */ +enum custom_keycodes { + VSCTERM = SAFE_RANGE, + CHNLANG +}; diff --git a/keyboards/crkbd/keymaps/colemad/keymap.c b/keyboards/crkbd/keymaps/colemad/keymap.c new file mode 100644 index 0000000000..fb951370f2 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/keymap.c @@ -0,0 +1,66 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H + +#include "layers.h" +#include "keycodes.h" +#include "process_records.h" + +#ifdef OLED_ENABLE + #include "oled.h" +#endif + +/* Layer keymaps */ +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_COLEMAK] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSLS, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_BSPC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + T_SFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ESC, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_LALT, KC_LCTL,KC_RAISE, KC_LOWER, T_SFT, KC_LGUI + // `-------------------------' `--------------------------' + ), + + [_LOWER] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + _______, KC_0, KC_1, KC_2, KC_3, KC_MINS, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_ESC, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_SLSH, KC_4, KC_5, KC_6, KC_PLUS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_ASTR, KC_7, KC_8, KC_9, KC_EQL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + // `-------------------------' `--------------------------' + ), + + [_RAISE] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_F11, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_F12, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TILD, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, _______, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + _______, _______, _______, _______, _______, _______ + // `-------------------------' `--------------------------' + ), + + [_ADJUST] = LAYOUT( + //,-----------------------------------------------------. ,-----------------------------------------------------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, VSCTERM, KC_PSCR, CHNLANG, XXXXXXX, XXXXXXX,RGB_RMOD, RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX + // `-------------------------' `--------------------------' + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} diff --git a/keyboards/crkbd/keymaps/colemad/layers.h b/keyboards/crkbd/keymaps/colemad/layers.h new file mode 100644 index 0000000000..f569ad156e --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/layers.h @@ -0,0 +1,10 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +enum custom_layers { + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST, +}; diff --git a/keyboards/crkbd/keymaps/colemad/oled.c b/keyboards/crkbd/keymaps/colemad/oled.c new file mode 100644 index 0000000000..8c5591184e --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/oled.c @@ -0,0 +1,128 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#include QMK_KEYBOARD_H +#include "layers.h" +#include "oled.h" + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_270; +} + +void render_layer_symbol(void) { + static const char PROGMEM default_layer[] = { + 0x20, 0x94, 0x95, 0x96, 0x20, + 0x20, 0xb4, 0xb5, 0xb6, 0x20, + 0x20, 0xd4, 0xd5, 0xd6, 0x20, 0}; + static const char PROGMEM raise_layer[] = { + 0x20, 0x97, 0x98, 0x99, 0x20, + 0x20, 0xb7, 0xb8, 0xb9, 0x20, + 0x20, 0xd7, 0xd8, 0xd9, 0x20, 0}; + static const char PROGMEM lower_layer[] = { + 0x20, 0x9a, 0x9b, 0x9c, 0x20, + 0x20, 0xba, 0xbb, 0xbc, 0x20, + 0x20, 0xda, 0xdb, 0xdc, 0x20, 0}; + static const char PROGMEM adjust_layer[] = { + 0x20, 0x9d, 0x9e, 0x9f, 0x20, + 0x20, 0xbd, 0xbe, 0xbf, 0x20, + 0x20, 0xdd, 0xde, 0xdf, 0x20, 0}; + if(layer_state_is(_ADJUST)) { + oled_write_P(adjust_layer, false); + } else if(layer_state_is(_LOWER)) { + oled_write_P(lower_layer, false); + } else if(layer_state_is(_RAISE)) { + oled_write_P(raise_layer, false); + } else { + oled_write_P(default_layer, false); + } +} + +void render_layer_name(void) { + bool lower = layer_state_is(_LOWER) & !layer_state_is(_ADJUST); + bool raise = layer_state_is(_RAISE) & !layer_state_is(_ADJUST); + bool adjust = layer_state_is(_ADJUST); + + if(lower){ + oled_write_P(PSTR("LOWER"), false); + } else if(raise){ + oled_write_P(PSTR("RAISE"), false); + } else if(adjust){ + oled_write_P(PSTR(" ADJ "), false); + } else { + oled_write_P(PSTR(" "), false); + } +} + +void render_mod_state(uint8_t modifiers) { + static const char PROGMEM shift_line_1[] = { + 0x85, 0x86, 0x87, 0}; + static const char PROGMEM shift_line_2[] = { + 0xa5, 0xa6, 0xa7, 0}; + + static const char PROGMEM ctrl_line_1[] = { + 0x88, 0x89, 0x8a, 0x8b, 0}; + static const char PROGMEM ctrl_line_2[] = { + 0xa8, 0xa9, 0xaa, 0xab, 0}; + + static const char PROGMEM os_line_1[] = { + 0x8c, 0x8d, 0x8e, 0}; + static const char PROGMEM os_line_2[] = { + 0xac, 0xad, 0xae, 0}; + + static const char PROGMEM alt_line_1[] = { + 0x8f, 0x90, 0x91, 0}; + static const char PROGMEM alt_line_2[] = { + 0xaf, 0xb0, 0xb1, 0}; + + if (modifiers & MOD_MASK_GUI) { + oled_write(" ", false); + oled_write_ln_P(os_line_1, false); + oled_write(" ", false); + oled_write_ln_P(os_line_2, false); + } else { + oled_write_ln("", false); + oled_write_ln("", false); + } + + if (modifiers & MOD_MASK_SHIFT) { + oled_write(" ", false); + oled_write_ln_P(shift_line_1, false); + oled_write(" ", false); + oled_write_ln_P(shift_line_2, false); + } else { + oled_write_ln("", false); + oled_write_ln("", false); + } + + if (modifiers & MOD_MASK_ALT) { + oled_write(" ", false); + oled_write_ln_P(alt_line_1, false); + oled_write(" ", false); + oled_write_ln_P(alt_line_2, false); + } else { + oled_write_ln("", false); + oled_write_ln("", false); + } + + if (modifiers & MOD_MASK_CTRL) { + oled_write_ln_P(ctrl_line_1, false); + oled_write_ln_P(ctrl_line_2, false); + } else { + oled_write_ln("", false); + oled_write_ln("", false); + } +} + +void render_status(void){ + render_layer_name(); + + render_layer_symbol(); + + oled_write_P(PSTR("\n\n\n"), false); + + render_mod_state(get_mods()|get_oneshot_mods()); +} + +bool oled_task_user(void) { + render_status(); + return false; +} diff --git a/keyboards/crkbd/keymaps/colemad/oled.h b/keyboards/crkbd/keymaps/colemad/oled.h new file mode 100644 index 0000000000..c096466e71 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/oled.h @@ -0,0 +1,13 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#ifdef OLED_ENABLE + bool process_record_oled(uint16_t keycode, keyrecord_t *record); + oled_rotation_t oled_init_user(oled_rotation_t rotation); + void render_layer_symbol(void); + void render_layer_name(void); + void render_mod_state(uint8_t modifiers); + void render_status(void); + bool oled_task_user(void); +#endif \ No newline at end of file diff --git a/keyboards/crkbd/keymaps/colemad/process_records.c b/keyboards/crkbd/keymaps/colemad/process_records.c new file mode 100644 index 0000000000..549dec2464 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/process_records.c @@ -0,0 +1,21 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "layers.h" +#include "keycodes.h" + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + /* Macros */ + switch (keycode) { + case VSCTERM: + if (record->event.pressed) { + SEND_STRING(SS_LCTL("`")); // Ctrl + ` (to toggle vscode terminal) + } + return false; + case CHNLANG: + if (record->event.pressed) { + SEND_STRING(SS_LCTL(SS_LSFT("n"))); // Ctrl + Shift + N (to change keyboard layout) + } + return false; + } + return true; +} diff --git a/keyboards/crkbd/keymaps/colemad/process_records.h b/keyboards/crkbd/keymaps/colemad/process_records.h new file mode 100644 index 0000000000..7cedcfbe68 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/process_records.h @@ -0,0 +1,5 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +bool process_record_user(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/crkbd/keymaps/colemad/readme.md b/keyboards/crkbd/keymaps/colemad/readme.md new file mode 100644 index 0000000000..404fa9e798 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/readme.md @@ -0,0 +1,106 @@ +# **COLEMAD** + +## Corne Keyboard (CRKBD) **Colemak** layout by [ACortesDev](https://github.com/ACortesDev) + +1. **Fast navigation**. +2. **Fast symbols**. +3. **Fast numbers**. + Using the Telephone/ATM numpad layout. Easier to memorize/visualize as numbers follow *left-to-right, top-to-bottom* order. +4. **Fast capital letters**. + Added a *CAPS Lock* key because... [There is no *CAPS Lock* key in the Colemak Layout](https://colemak.com/FAQ#Where_is_the_Caps_Lock_key.3F). + +--- + +### **Flashing** + +For *Pro Micro* execute: `sudo make crkbd:colemad:avrdude` + +For *Elite-C* execute: `sudo make crkbd:colemad:dfu` + +--- + +### **Layers** + +#### 0. **COLEMAK** + +Notes: + +- Double tap Shift to (de)activate CAPS Lock. +- Hold down the Enter thumb key to switch to the LOWER layer +- Hold down the Space thumb key to switch to the RAISE layer +- Characters **"** **:** **|** **<** **>** **?** as you would expect them using *Shift*. + +```text + ,-----------------------------------------------------. ,-----------------------------------------------------. + | Tab | Q | W | F | P | G | | J | L | U | Y | ; | \ | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | BackSP | A | R | S | T | D | | H | N | E | I | O | ' | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | Shift | Z | X | C | V | B | | K | M | , | . | / | ESC | + `--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------' + ,--------. ,--------. + ,-----------------| | | |-----------------. + | Alt | Ctrl | Space | | Enter | Shift | GUI | + | | | (RAISE)| |(LOWER) | | | + `--------+--------+--------' `--------+--------+--------' +``` + +#### 1. **LOWER** + +##### Numpad + Navigation + +```text + ,-----------------------------------------------------. ,-----------------------------------------------------. + | Tab | 0 | 1 | 2 | 3 | - | | PgUP | HOME | ↑ | END | ESC | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | BackSP | / | 4 | 5 | 6 | + | | PgDN | ← | ↓ | → | DEL | | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | Shift | * | 7 | 8 | 9 | = | | | | | | | ESC | + `--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------' + ,--------. ,--------. + ,-----------------| | | |-----------------. + | Alt | Ctrl | Space | | | Shift | GUI | + | | | (RAISE)| |(LOWER) | | | + `--------+--------+--------' `--------+--------+--------' +``` + +#### 2. **RAISE** + +##### Symbols + Function Keys + +```text + ,-----------------------------------------------------. ,-----------------------------------------------------. + | Tab | ! | @ | # | $ | % | | ^ | & | * | ( | ) | F11 | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | BackSP | F1 | F2 | F3 | F4 | F5 | | ` | - | = | [ | ] | F12 | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | Shift | F6 | F7 | F8 | F9 | F10 | | ~ | _ | + | { | } | ESC | + `--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------' + ,--------. ,--------. + ,-----------------| | | |-----------------. + | Alt | Ctrl | | | Enter | Shift | GUI | + | | | (RAISE)| |(LOWER) | | | + `--------+--------+--------' `--------+--------+--------' +``` + +#### 3. **ADJUST** + +##### Macros + Settings + +```text + ,-----------------------------------------------------. ,-----------------------------------------------------. + | | | | | | | |RGB_TOG |RGB_MOD |RGB_VAI |RGB_HUI |RGB_SAI |RGB_SPI | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | |VSCTERM | PSCR |CHNLANG | | | |RGB_RMOD|RGB_VAD |RGB_HUD |RGB_SAD |RGB_SPD | + |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + | | | | | | | | | | | | | | + `--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------' + ,--------. ,--------. + ,-----------------| | | |-----------------. + | | | | | | | | + | | | (RAISE)| |(LOWER) | | | + `--------+--------+--------' `--------+--------+--------' +``` + +- Macro **VSCTERM**: Toggles the vscode terminal (Ctrl + `) +- Macro **CHNLANG**: Changes the OS keyboard layout (Ctrl + Shift + N) diff --git a/keyboards/crkbd/keymaps/colemad/rules.mk b/keyboards/crkbd/keymaps/colemad/rules.mk new file mode 100644 index 0000000000..6f9d31a755 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/rules.mk @@ -0,0 +1,21 @@ +RGB_MATRIX_ENABLE = yes +RGBLIGHT_ENABLE = no +SPLIT_KEYBOARD = yes +TAP_DANCE_ENABLE = yes +MOUSEKEY_ENABLE = no +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 + + +# Link Time Optimization (Reduces compiled size) +LTO_ENABLE = yes + +SRC += ./process_records.c + +ifeq ($(TAP_DANCE_ENABLE),yes) + SRC += ./tap_dances.c +endif + +ifeq ($(OLED_ENABLE),yes) + SRC += ./oled.c +endif diff --git a/keyboards/crkbd/keymaps/colemad/tap_dances.c b/keyboards/crkbd/keymaps/colemad/tap_dances.c new file mode 100644 index 0000000000..fc47cfd8d1 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/tap_dances.c @@ -0,0 +1,7 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "tap_dances.h" + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_LSFT_CAPS] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS) +}; diff --git a/keyboards/crkbd/keymaps/colemad/tap_dances.h b/keyboards/crkbd/keymaps/colemad/tap_dances.h new file mode 100644 index 0000000000..1d7cf1e7f4 --- /dev/null +++ b/keyboards/crkbd/keymaps/colemad/tap_dances.h @@ -0,0 +1,11 @@ +// Copyright 2022 Álvaro Cortés (@ACortesDev) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include QMK_KEYBOARD_H + +enum custom_tapdances{ + TD_LSFT_CAPS = 0, +}; + +#define T_SFT TD(TD_LSFT_CAPS) /* Tap for Shift, double tap for CAPSLOCK */ From 67329cffb561d1dfd7636f72f629cea95476fe19 Mon Sep 17 00:00:00 2001 From: Abhinav Date: Tue, 19 Apr 2022 03:33:18 -0700 Subject: [PATCH 292/699] Add my planck layout (#13143) * Add my planck layout * Add copyright * Address requested changes * Fix dipswitch return type --- keyboards/planck/keymaps/abhixec/config.h | 48 ++++ keyboards/planck/keymaps/abhixec/keymap.c | 261 +++++++++++++++++++++ keyboards/planck/keymaps/abhixec/readme.md | 2 + keyboards/planck/keymaps/abhixec/rules.mk | 1 + 4 files changed, 312 insertions(+) create mode 100644 keyboards/planck/keymaps/abhixec/config.h create mode 100644 keyboards/planck/keymaps/abhixec/keymap.c create mode 100644 keyboards/planck/keymaps/abhixec/readme.md create mode 100644 keyboards/planck/keymaps/abhixec/rules.mk diff --git a/keyboards/planck/keymaps/abhixec/config.h b/keyboards/planck/keymaps/abhixec/config.h new file mode 100644 index 0000000000..b3d107bcfa --- /dev/null +++ b/keyboards/planck/keymaps/abhixec/config.h @@ -0,0 +1,48 @@ +/* Copyright 2015-2017 Jack Humbert + * + * 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 . + */ +#pragma once + +#ifdef AUDIO_ENABLE + #define STARTUP_SONG SONG(PLANCK_SOUND) + // #define STARTUP_SONG SONG(NO_SOUND) + + #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ + SONG(COLEMAK_SOUND), \ + SONG(DVORAK_SOUND) \ + } +#endif + +/* + * MIDI options + */ + +/* 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 + +// Most tactile encoders have detents every 4 stages +#define ENCODER_RESOLUTION 4 + diff --git a/keyboards/planck/keymaps/abhixec/keymap.c b/keyboards/planck/keymaps/abhixec/keymap.c new file mode 100644 index 0000000000..d840bf4721 --- /dev/null +++ b/keyboards/planck/keymaps/abhixec/keymap.c @@ -0,0 +1,261 @@ +/* Copyright 2015-2017 Jack Humbert + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "muse.h" + + +enum planck_layers { + _QWERTY, + _COLEMAK, + _LOWER, + _RAISE, + _ADJUST +}; + +enum planck_keycodes { + QWERTY = SAFE_RANGE, + COLEMAK +}; + +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define SHENT MT(MOD_RSFT, KC_ENT) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |shent | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_QWERTY] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_GESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SHENT , + _______,KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Colemak + * ,-----------------------------------------------------------------------------------. + * | Tab | Q | W | F | P | G | J | L | U | Y | ; | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Esc | A | R | S | T | D | H | N | E | I | O | " | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | K | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Brite| Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ +[_COLEMAK] = LAYOUT_planck_grid( + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_BSPC, + KC_GESC, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, SHENT , + _______,KC_LCTL, KC_LALT,KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT +), + +/* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_LOWER] = LAYOUT_planck_grid( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ +[_RAISE] = LAYOUT_planck_grid( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY +), + +/* Adjust (Lower + Raise) + * v------------------------RGB CONTROL--------------------v + * ,-----------------------------------------------------------------------------------. + * | | Reset|Debug | RGB |RGBMOD| HUE+ | HUE- | SAT+ | SAT- |BRGTH+|BRGTH-| Del | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | |MUSmod|Aud on|Audoff|AGnorm|AGswap|Qwerty|Colemk| | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof|TermOn|TermOf| | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ +[_ADJUST] = LAYOUT_planck_grid( + _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, _______, _______, _______, + _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ +) + +}; + +#ifdef AUDIO_ENABLE + float plover_song[][2] = SONG(PLOVER_SOUND); + float plover_gb_song[][2] = SONG(PLOVER_GOODBYE_SOUND); +#endif + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + print("mode just switched to qwerty and this is a huge string\n"); + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case COLEMAK: + if (record->event.pressed) { + set_single_persistent_default_layer(_COLEMAK); + } + return false; + break; + } + return true; +} + +bool muse_mode = false; +uint8_t last_muse_note = 0; +uint16_t muse_counter = 0; +uint8_t muse_offset = 70; +uint16_t muse_tempo = 50; + +bool encoder_update(bool clockwise) { + if (muse_mode) { + if (IS_LAYER_ON(_RAISE)) { + if (clockwise) { + muse_offset++; + } else { + muse_offset--; + } + } else { + if (clockwise) { + muse_tempo+=1; + } else { + muse_tempo-=1; + } + } + } else { + if (clockwise) { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_DOWN); + #else + tap_code(KC_PGDN); + #endif + } else { + #ifdef MOUSEKEY_ENABLE + tap_code(KC_MS_WH_UP); + #else + tap_code(KC_PGUP); + #endif + } + } + return true; +} + +bool dip_switch_update_user(uint8_t index, bool active) { + switch (index) { + case 0: { +#ifdef AUDIO_ENABLE + static bool play_sound = false; +#endif + if (active) { +#ifdef AUDIO_ENABLE + if (play_sound) { PLAY_SONG(plover_song); } +#endif + layer_on(_ADJUST); + } else { +#ifdef AUDIO_ENABLE + if (play_sound) { PLAY_SONG(plover_gb_song); } +#endif + layer_off(_ADJUST); + } +#ifdef AUDIO_ENABLE + play_sound = true; +#endif + break; + } + case 1: + if (active) { + muse_mode = true; + } else { + muse_mode = false; + } + } + return true; +} + +void matrix_scan_user(void) { +#ifdef AUDIO_ENABLE + if (muse_mode) { + if (muse_counter == 0) { + uint8_t muse_note = muse_offset + SCALE[muse_clock_pulse()]; + if (muse_note != last_muse_note) { + stop_note(compute_freq_for_midi_note(last_muse_note)); + play_note(compute_freq_for_midi_note(muse_note), 0xF); + last_muse_note = muse_note; + } + } + muse_counter = (muse_counter + 1) % muse_tempo; + } else { + if (muse_counter) { + stop_all_notes(); + muse_counter = 0; + } + } +#endif +} + +bool music_mask_user(uint16_t keycode) { + switch (keycode) { + case RAISE: + case LOWER: + return false; + default: + return true; + } +} diff --git a/keyboards/planck/keymaps/abhixec/readme.md b/keyboards/planck/keymaps/abhixec/readme.md new file mode 100644 index 0000000000..b7bccc52bb --- /dev/null +++ b/keyboards/planck/keymaps/abhixec/readme.md @@ -0,0 +1,2 @@ +# Abhixec's Layout + diff --git a/keyboards/planck/keymaps/abhixec/rules.mk b/keyboards/planck/keymaps/abhixec/rules.mk new file mode 100644 index 0000000000..dcf16bef39 --- /dev/null +++ b/keyboards/planck/keymaps/abhixec/rules.mk @@ -0,0 +1 @@ +SRC += muse.c From bdd1f318c3f4bcbf7f9dfeaff908013780bf753a Mon Sep 17 00:00:00 2001 From: MakotoKurauchi Date: Tue, 19 Apr 2022 19:39:43 +0900 Subject: [PATCH 293/699] [Keyboard] New kbd 1k (#15509) Co-authored-by: Drashna Jaelre Co-authored-by: mtei <2170248+mtei@users.noreply.github.com> Co-authored-by: Nick Brassel --- keyboards/1k/1k.c | 16 +++++++ keyboards/1k/1k.h | 33 ++++++++++++++ keyboards/1k/config.h | 60 +++++++++++++++++++++++++ keyboards/1k/info.json | 12 +++++ keyboards/1k/keymaps/default/keymap.c | 25 +++++++++++ keyboards/1k/keymaps/default/rgblite.h | 23 ++++++++++ keyboards/1k/keymaps/default/rules.mk | 2 + keyboards/1k/keymaps/media/keymap.c | 22 +++++++++ keyboards/1k/keymaps/media/rgblite.h | 23 ++++++++++ keyboards/1k/keymaps/media/rules.mk | 3 ++ keyboards/1k/keymaps/tap_dance/config.h | 6 +++ keyboards/1k/keymaps/tap_dance/keymap.c | 22 +++++++++ keyboards/1k/keymaps/tap_dance/rules.mk | 1 + keyboards/1k/readme.md | 47 +++++++++++++++++++ keyboards/1k/rules.mk | 26 +++++++++++ 15 files changed, 321 insertions(+) create mode 100644 keyboards/1k/1k.c create mode 100644 keyboards/1k/1k.h create mode 100644 keyboards/1k/config.h create mode 100644 keyboards/1k/info.json create mode 100644 keyboards/1k/keymaps/default/keymap.c create mode 100644 keyboards/1k/keymaps/default/rgblite.h create mode 100644 keyboards/1k/keymaps/default/rules.mk create mode 100644 keyboards/1k/keymaps/media/keymap.c create mode 100644 keyboards/1k/keymaps/media/rgblite.h create mode 100644 keyboards/1k/keymaps/media/rules.mk create mode 100644 keyboards/1k/keymaps/tap_dance/config.h create mode 100644 keyboards/1k/keymaps/tap_dance/keymap.c create mode 100644 keyboards/1k/keymaps/tap_dance/rules.mk create mode 100644 keyboards/1k/readme.md create mode 100644 keyboards/1k/rules.mk diff --git a/keyboards/1k/1k.c b/keyboards/1k/1k.c new file mode 100644 index 0000000000..0e8f44b44d --- /dev/null +++ b/keyboards/1k/1k.c @@ -0,0 +1,16 @@ +/* Copyright 2020 zvecr + * + * 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 . + */ +#include "1k.h" diff --git a/keyboards/1k/1k.h b/keyboards/1k/1k.h new file mode 100644 index 0000000000..a6142bc5c5 --- /dev/null +++ b/keyboards/1k/1k.h @@ -0,0 +1,33 @@ +/* Copyright 2020 zvecr + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +/* This a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ +#define LAYOUT_ortho_1x1( \ + K01 \ +) \ +{ \ + { K01 }, \ +} diff --git a/keyboards/1k/config.h b/keyboards/1k/config.h new file mode 100644 index 0000000000..be680b4194 --- /dev/null +++ b/keyboards/1k/config.h @@ -0,0 +1,60 @@ +/* Copyright 2020 zvecr + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x0009 +#define PRODUCT_ID 0x0001 +#define DEVICE_VER 0x0001 +#define MANUFACTURER MakotoKurauchi +#define PRODUCT 1K + +/* matrix size */ +#define MATRIX_ROWS 1 +#define MATRIX_COLS 1 + +/* + * Keyboard Matrix Assignments + * + * On this board we have direct connection: no diodes. + */ +#define DIRECT_PINS {{ B0 }} + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +#define RGBLED_NUM 1 +#define RGB_DI_PIN B2 + +// Save as much space as we can... +#define LAYER_STATE_8BIT +#define NO_ACTION_LAYER +#define NO_ACTION_TAPPING +#define NO_ACTION_ONESHOT +#define NO_RESET + +// usbconfig.h overrides +#define USB_CFG_IOPORTNAME B +#define USB_CFG_DMINUS_BIT 3 +#define USB_CFG_DPLUS_BIT 4 +#define USB_COUNT_SOF 0 +#define USB_INTR_CFG PCMSK +#define USB_INTR_CFG_SET (1<event.pressed) { + switch (keycode) { + case RGB_HUI: + rgblite_increase_hue(); + break; + } + } + return true; +} + +void keyboard_post_init_user(void) { + rgblite_increase_hue(); +} diff --git a/keyboards/1k/keymaps/default/rgblite.h b/keyboards/1k/keymaps/default/rgblite.h new file mode 100644 index 0000000000..e64f49ee0a --- /dev/null +++ b/keyboards/1k/keymaps/default/rgblite.h @@ -0,0 +1,23 @@ +// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "ws2812.h" +#include "color.h" + +static inline void rgblite_setrgb(RGB rgb) { + LED_TYPE leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}}; + ws2812_setleds(leds, RGBLED_NUM); +} + +static void rgblite_increase_hue(void) { + static uint8_t state = 0; + + HSV hsv = { 255, 255, 255 }; + hsv.h = state; + state = (state + 8) % 256; + + rgblite_setrgb(hsv_to_rgb(hsv)); + +} diff --git a/keyboards/1k/keymaps/default/rules.mk b/keyboards/1k/keymaps/default/rules.mk new file mode 100644 index 0000000000..ff480ff890 --- /dev/null +++ b/keyboards/1k/keymaps/default/rules.mk @@ -0,0 +1,2 @@ +SRC += ws2812.c +SRC += color.c diff --git a/keyboards/1k/keymaps/media/keymap.c b/keyboards/1k/keymaps/media/keymap.c new file mode 100644 index 0000000000..6fd3eb92de --- /dev/null +++ b/keyboards/1k/keymaps/media/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H +#include "rgblite.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_ortho_1x1( + KC_MUTE + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + rgblite_increase_hue(); + } + return true; +} + +void keyboard_post_init_user(void) { + rgblite_increase_hue(); +} diff --git a/keyboards/1k/keymaps/media/rgblite.h b/keyboards/1k/keymaps/media/rgblite.h new file mode 100644 index 0000000000..e64f49ee0a --- /dev/null +++ b/keyboards/1k/keymaps/media/rgblite.h @@ -0,0 +1,23 @@ +// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "ws2812.h" +#include "color.h" + +static inline void rgblite_setrgb(RGB rgb) { + LED_TYPE leds[RGBLED_NUM] = {{.r = rgb.r, .g = rgb.g, .b = rgb.b}}; + ws2812_setleds(leds, RGBLED_NUM); +} + +static void rgblite_increase_hue(void) { + static uint8_t state = 0; + + HSV hsv = { 255, 255, 255 }; + hsv.h = state; + state = (state + 8) % 256; + + rgblite_setrgb(hsv_to_rgb(hsv)); + +} diff --git a/keyboards/1k/keymaps/media/rules.mk b/keyboards/1k/keymaps/media/rules.mk new file mode 100644 index 0000000000..2368727640 --- /dev/null +++ b/keyboards/1k/keymaps/media/rules.mk @@ -0,0 +1,3 @@ +SRC += ws2812.c +SRC += color.c +EXTRAKEY_ENABLE = yes diff --git a/keyboards/1k/keymaps/tap_dance/config.h b/keyboards/1k/keymaps/tap_dance/config.h new file mode 100644 index 0000000000..5df7869537 --- /dev/null +++ b/keyboards/1k/keymaps/tap_dance/config.h @@ -0,0 +1,6 @@ +// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define TAPPING_TERM 500 diff --git a/keyboards/1k/keymaps/tap_dance/keymap.c b/keyboards/1k/keymaps/tap_dance/keymap.c new file mode 100644 index 0000000000..c2a8cf1aea --- /dev/null +++ b/keyboards/1k/keymaps/tap_dance/keymap.c @@ -0,0 +1,22 @@ +// Copyright 2022 Makoto Kurauchi (@MakotoKurauchi) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layers { + _BASE = 0, +}; + +enum { + TD_AB = 0 +}; + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_AB] = ACTION_TAP_DANCE_DOUBLE(KC_A, KC_B) +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_ortho_1x1( + TD(TD_AB) + ) +}; diff --git a/keyboards/1k/keymaps/tap_dance/rules.mk b/keyboards/1k/keymaps/tap_dance/rules.mk new file mode 100644 index 0000000000..e5ddcae8d9 --- /dev/null +++ b/keyboards/1k/keymaps/tap_dance/rules.mk @@ -0,0 +1 @@ +TAP_DANCE_ENABLE = yes diff --git a/keyboards/1k/readme.md b/keyboards/1k/readme.md new file mode 100644 index 0000000000..8c44c3549d --- /dev/null +++ b/keyboards/1k/readme.md @@ -0,0 +1,47 @@ +# 1k + +![1k](https://booth.pximg.net/aaeb2dda-e169-44c0-ba5a-5b42cc5c2627/i/3504781/c1708a8a-061b-4a6c-907d-72d0eab47d4a.png) + +1% Custom mechanical keyboard. ATtiny85 powered, with 1*WS2812 LED, and the micronucleus bootloader. + +**Note**: Due to limited firmware space, a _**lot**_ of features have to be disabled to get a functioning QMK based keyboard. + +* Keyboard Maintainer: [MakotoKurauchi](https://github.com/MakotoKurauchi) +* Hardware Supported: 1k +* Hardware Availability: [booth](https://ninep.booth.pm/items/3504781) + +Make example for this keyboard (after setting up your build environment): + + make 1k:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Flashing +### Prerequisites + +```bash +git clone https://github.com/micronucleus/micronucleus.git +cd micronucleus/commandline/ +sudo make install +``` + +On Linux, you’ll need proper privileges to access the MCU. You can either use sudo when flashing firmware, or place [these files](https://github.com/micronucleus/micronucleus/blob/master/commandline/49-micronucleus.rules) in /etc/udev/rules.d/. Once added run the following: + +```bash +sudo udevadm control --reload-rules +sudo udevadm trigger +``` + +### Instructions + +```bash +make 1k:default:flash + +# or directly with... +micronucleus --run +``` + +### Recovery + +* [Original Firmware](https://github.com/xiudi/Attiny85_vusb_pad_test) +* [Bootloader Repair](https://digistump.com/wiki/digispark/tutorials/proisp) diff --git a/keyboards/1k/rules.mk b/keyboards/1k/rules.mk new file mode 100644 index 0000000000..b3bd401f6b --- /dev/null +++ b/keyboards/1k/rules.mk @@ -0,0 +1,26 @@ +# MCU name +MCU = attiny85 + +# Bootloader selection +BOOTLOADER = custom +BOOTLOADER_SIZE = 1862 +PROGRAM_CMD = micronucleus --run $(BUILD_DIR)/$(TARGET).hex + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Save as much space as we can... +LTO_ENABLE = yes +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no +SPACE_CADET_ENABLE = no From 1acb37db7fc28684785ee57d68452d127790c1db Mon Sep 17 00:00:00 2001 From: jpe230 Date: Tue, 19 Apr 2022 05:53:09 -0500 Subject: [PATCH 294/699] Add initial support for the Makey Makey Classic (#16658) --- keyboards/makeymakey/config.h | 36 +++++ keyboards/makeymakey/info.json | 35 +++++ keyboards/makeymakey/keymaps/default/keymap.c | 42 ++++++ keyboards/makeymakey/makeymakey.c | 126 ++++++++++++++++++ keyboards/makeymakey/makeymakey.h | 32 +++++ keyboards/makeymakey/readme.md | 19 +++ keyboards/makeymakey/rules.mk | 18 +++ 7 files changed, 308 insertions(+) create mode 100644 keyboards/makeymakey/config.h create mode 100644 keyboards/makeymakey/info.json create mode 100644 keyboards/makeymakey/keymaps/default/keymap.c create mode 100644 keyboards/makeymakey/makeymakey.c create mode 100644 keyboards/makeymakey/makeymakey.h create mode 100644 keyboards/makeymakey/readme.md create mode 100644 keyboards/makeymakey/rules.mk diff --git a/keyboards/makeymakey/config.h b/keyboards/makeymakey/config.h new file mode 100644 index 0000000000..21cbb2c1f6 --- /dev/null +++ b/keyboards/makeymakey/config.h @@ -0,0 +1,36 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_ROWS 3 +#define MATRIX_COLS 6 + +/* Keyboard Matrix Assignments */ +#define DIRECT_PINS { \ + { D6, B4, C7, B1, E6, D7 }, \ + { C6, D4, D0, D1, D2, D2 }, \ + { F0, F1, F5, F5, F6, F7 } \ +} + +/* LEDs Pins */ +#define LED_PINS 5 +#define LED_PINS_HW {B5, B6, B7, B3, B2} + +#define DEBOUNCE 10 diff --git a/keyboards/makeymakey/info.json b/keyboards/makeymakey/info.json new file mode 100644 index 0000000000..ff06d19609 --- /dev/null +++ b/keyboards/makeymakey/info.json @@ -0,0 +1,35 @@ +{ + "keyboard_name": "Makey Makey Classic", + "manufacturer": "JoyLabs", + "url": "https://makeymakey.com/products/makey-makey-kit", + "maintainer": "Jpe230", + "usb": { + "vid": "0xE230", + "pid": "0x2B74", + "device_version": "0.0.1" + }, + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0}, + {"x":1, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":0, "y":1}, + {"x":1, "y":1}, + {"x":2, "y":1}, + {"x":3, "y":1}, + {"x":4, "y":1}, + {"x":5, "y":1}, + {"x":0, "y":2}, + {"x":1, "y":2}, + {"x":2, "y":2}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2} + ] + } + } + } diff --git a/keyboards/makeymakey/keymaps/default/keymap.c b/keyboards/makeymakey/keymaps/default/keymap.c new file mode 100644 index 0000000000..1c3e6399fb --- /dev/null +++ b/keyboards/makeymakey/keymaps/default/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// clang-format off +/* + * ,-----------------------------------------------------. + * | | + * | (UP) | + * MSU | ^ .-""-. .-""-. | W + * MSD | | / \ / \ | A + * MSL | (LEFT)<== O ==> (RIGHT) ; ; ; ; | S + * MSR | | \ / \ / | D + * MB1 | v '-..-' '-..-' | F + * MB2 | (DOWN) (SPACE) (RGHT CLK) | G + * | | + * \-----------------------------------------------------/ + */ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_UP, KC_DOWN, KC_LEFT, KC_RGHT, KC_SPC, KC_BTN1, + KC_W, KC_A, KC_S, KC_D, KC_F, KC_G, + KC_MS_U, KC_MS_D, KC_MS_L, KC_MS_R, KC_BTN1, KC_BTN2 + ) +}; + +// clang-format on diff --git a/keyboards/makeymakey/makeymakey.c b/keyboards/makeymakey/makeymakey.c new file mode 100644 index 0000000000..77794416b2 --- /dev/null +++ b/keyboards/makeymakey/makeymakey.c @@ -0,0 +1,126 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#include "makeymakey.h" + +static pin_t pins[MATRIX_ROWS][MATRIX_COLS] = DIRECT_PINS; +static pin_t led_pins[LED_PINS] = LED_PINS_HW; +static bool led_state[MATRIX_COLS] = {0}; +static uint8_t led_cycle_counter = 0; + +void keyboard_post_init_kb(void) { + for(uint8_t row = 0; row < MATRIX_ROWS; row++) + { + for(uint8_t col = 0; col < MATRIX_COLS; col++) + { + writePinLow(pins[row][col]); //Disable internal pull-up resistors + } + } + + keyboard_post_init_user(); +} + +void cycle_leds(void) { + for(uint8_t i = 0; i < 3; i++) { + setPinInput(led_pins[i]); + writePinLow(led_pins[i]); + } + + led_cycle_counter++; + led_cycle_counter %= 6; + + switch (led_cycle_counter) { + case 0: + if (led_state[0]) { // Up Arrow + setPinInput(led_pins[0]); + writePinLow(led_pins[0]); + setPinOutput(led_pins[1]); + writePinHigh(led_pins[1]); + setPinOutput(led_pins[2]); + writePinLow(led_pins[2]); + } + break; + case 1: + if (led_state[1]) { // Down Arrow + setPinOutput(led_pins[0]); + writePinHigh(led_pins[0]); + setPinOutput(led_pins[1]); + writePinLow(led_pins[1]); + setPinInput(led_pins[2]); + writePinLow(led_pins[2]); + } + break; + case 2: + if (led_state[2]) { // Left Arrow + setPinOutput(led_pins[0]); + writePinLow(led_pins[0]); + setPinOutput(led_pins[1]); + writePinHigh(led_pins[1]); + setPinInput(led_pins[2]); + writePinLow(led_pins[2]); + } + break; + case 3: + if (led_state[3]) { // Right Arrow + setPinInput(led_pins[0]); + writePinLow(led_pins[0]); + setPinOutput(led_pins[1]); + writePinLow(led_pins[1]); + setPinOutput(led_pins[2]); + writePinHigh(led_pins[2]); + } + break; + case 4: + if (led_state[4]) { // Space + setPinOutput(led_pins[0]); + writePinLow(led_pins[0]); + setPinInput(led_pins[1]); + writePinLow(led_pins[1]); + setPinOutput(led_pins[2]); + writePinHigh(led_pins[2]); + } + break; + case 5: + if (led_state[5]) { // Right Click + setPinOutput(led_pins[0]); + writePinHigh(led_pins[0]); + setPinInput(led_pins[1]); + writePinLow(led_pins[1]); + setPinOutput(led_pins[2]); + writePinLow(led_pins[2]); + } + break; + default: + break; + } +} + +void matrix_scan_kb() { + cycle_leds(); + matrix_scan_user(); +} + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + + uint8_t row = record->event.key.row; + uint8_t col = record->event.key.col; + + if(row == 0 && col >= 0 && col < MATRIX_COLS) { + led_state[col] = record->event.pressed; + } + + return process_record_user(keycode, record); +} diff --git a/keyboards/makeymakey/makeymakey.h b/keyboards/makeymakey/makeymakey.h new file mode 100644 index 0000000000..9b8c273d86 --- /dev/null +++ b/keyboards/makeymakey/makeymakey.h @@ -0,0 +1,32 @@ +/* Copyright 2022 Jose Pablo Ramirez + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +// clang-format off + #define LAYOUT( \ + K00, K01, K02, K03, K04, K05, \ + K10, K11, K12, K13, K14, K15, \ + K20, K21, K22, K23, K24, K25 \ + ) \ + { \ + { K00, K01, K02, K03, K04, K05 }, \ + { K10, K11, K12, K13, K14, K15 }, \ + { K20, K21, K22, K23, K24, K25 } \ + } +// clang-format on diff --git a/keyboards/makeymakey/readme.md b/keyboards/makeymakey/readme.md new file mode 100644 index 0000000000..068331d1ed --- /dev/null +++ b/keyboards/makeymakey/readme.md @@ -0,0 +1,19 @@ +# Makey Makey Classic + +![makeymakey](https://cdn.shopify.com/s/files/1/0162/8612/products/Makey_Carlos_1024x1024_crop_center.png) + +The original Makey Makey Classic. There are six inputs on the front of the board, which can be attached to via alligator clipping, soldering to the pads, or any other method you can think of. There are another 12 inputs on the back, six for keyboard keys and six for mouse motion, which you can access with jumpers via the female headers. + +* Keyboard Maintainer: [Pablo Ramirez](https://github.com/Jpe230) +* Hardware Supported: Makey Makey Classic (atmega32u4) +* Hardware Availability: [Makey Makey official store] https://makeymakey.com/products/makey-makey-kit + +Make example for this keyboard (after setting up your build environment): + + make makeymakey:default + +Flashing example for this keyboard: + + make makeymakey:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/makeymakey/rules.mk b/keyboards/makeymakey/rules.mk new file mode 100644 index 0000000000..66ad5334b3 --- /dev/null +++ b/keyboards/makeymakey/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 7712a286dccea029785976311433cf8673594f6f Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Tue, 19 Apr 2022 12:56:16 +0200 Subject: [PATCH 295/699] [Core] Use a mutex guard for split shared memory (#16647) --- platforms/chibios/drivers/serial.c | 29 ++++++++++++++++-------- platforms/chibios/drivers/serial_usart.c | 10 +++++++- platforms/chibios/platform.mk | 6 ++++- platforms/chibios/synchronization_util.c | 26 +++++++++++++++++++++ platforms/synchronization_util.h | 14 ++++++++++++ quantum/split_common/transactions.c | 17 +++++++------- 6 files changed, 82 insertions(+), 20 deletions(-) create mode 100644 platforms/chibios/synchronization_util.c create mode 100644 platforms/synchronization_util.h diff --git a/platforms/chibios/drivers/serial.c b/platforms/chibios/drivers/serial.c index bb7b3c0554..0cff057d1d 100644 --- a/platforms/chibios/drivers/serial.c +++ b/platforms/chibios/drivers/serial.c @@ -5,6 +5,7 @@ #include "quantum.h" #include "serial.h" #include "wait.h" +#include "synchronization_util.h" #include @@ -86,7 +87,10 @@ static THD_FUNCTION(Thread1, arg) { chRegSetThreadName("blinker"); while (true) { palWaitLineTimeout(SOFT_SERIAL_PIN, TIME_INFINITE); + + split_shared_memory_lock(); interrupt_handler(NULL); + split_shared_memory_unlock(); } } @@ -205,14 +209,9 @@ void interrupt_handler(void *arg) { chSysUnlockFromISR(); } -///////// -// start transaction by initiator -// -// bool soft_serial_transaction(int sstd_index) -// -// this code is very time dependent, so we need to disable interrupts -bool soft_serial_transaction(int sstd_index) { +static inline bool initiate_transaction(uint8_t sstd_index) { if (sstd_index > NUM_TOTAL_TRANSACTIONS) return false; + split_transaction_desc_t *trans = &split_transaction_table[sstd_index]; // TODO: remove extra delay between transactions @@ -239,8 +238,7 @@ bool soft_serial_transaction(int sstd_index) { return false; } - // if the slave is present syncronize with it - + // if the slave is present synchronize with it uint8_t checksum = 0; // send data to the slave serial_write_byte(sstd_index); // first chunk is transaction id @@ -286,3 +284,16 @@ bool soft_serial_transaction(int sstd_index) { chSysUnlock(); return true; } + +///////// +// start transaction by initiator +// +// bool soft_serial_transaction(int sstd_index) +// +// this code is very time dependent, so we need to disable interrupts +bool soft_serial_transaction(int sstd_index) { + split_shared_memory_lock(); + bool result = initiate_transaction((uint8_t)sstd_index); + split_shared_memory_unlock(); + return result; +} diff --git a/platforms/chibios/drivers/serial_usart.c b/platforms/chibios/drivers/serial_usart.c index 85c64214d1..e9fa4af7a3 100644 --- a/platforms/chibios/drivers/serial_usart.c +++ b/platforms/chibios/drivers/serial_usart.c @@ -15,6 +15,7 @@ */ #include "serial_usart.h" +#include "synchronization_util.h" #if defined(SERIAL_USART_CONFIG) static SerialConfig serial_config = SERIAL_USART_CONFIG; @@ -173,6 +174,7 @@ static THD_FUNCTION(SlaveThread, arg) { * Parts of failed transactions or spurious bytes could still be in it. */ usart_clear(); } + split_shared_memory_unlock(); } } @@ -200,6 +202,7 @@ static inline bool react_to_transactions(void) { return false; } + split_shared_memory_lock(); split_transaction_desc_t* trans = &split_transaction_table[sstd_index]; /* Send back the handshake which is XORed as a simple checksum, @@ -254,7 +257,12 @@ bool soft_serial_transaction(int index) { /* Clear the receive queue, to start with a clean slate. * Parts of failed transactions or spurious bytes could still be in it. */ usart_clear(); - return initiate_transaction((uint8_t)index); + + split_shared_memory_lock(); + bool result = initiate_transaction((uint8_t)index); + split_shared_memory_unlock(); + + return result; } /** diff --git a/platforms/chibios/platform.mk b/platforms/chibios/platform.mk index 91dd0479bc..21751f23fd 100644 --- a/platforms/chibios/platform.mk +++ b/platforms/chibios/platform.mk @@ -265,7 +265,8 @@ PLATFORM_SRC = \ $(STREAMSSRC) \ $(CHIBIOS)/os/various/syscalls.c \ $(PLATFORM_COMMON_DIR)/syscall-fallbacks.c \ - $(PLATFORM_COMMON_DIR)/wait.c + $(PLATFORM_COMMON_DIR)/wait.c \ + $(PLATFORM_COMMON_DIR)/synchronization_util.c # Ensure the ASM files are not subjected to LTO -- it'll strip out interrupt handlers otherwise. QUANTUM_LIB_SRC += $(STARTUPASM) $(PORTASM) $(OSALASM) $(PLATFORMASM) @@ -420,6 +421,9 @@ LDFLAGS += $(SHARED_LDFLAGS) $(SHARED_LDSYMBOLS) $(TOOLCHAIN_LDFLAGS) $(TOOLCHA # Tell QMK that we are hosting it on ChibiOS. OPT_DEFS += -DPROTOCOL_CHIBIOS +# ChibiOS supports synchronization primitives like a Mutex +OPT_DEFS += -DPLATFORM_SUPPORTS_SYNCHRONIZATION + # Workaround to stop ChibiOS from complaining about new GCC -- it's been fixed for 7/8/9 already OPT_DEFS += -DPORT_IGNORE_GCC_VERSION_CHECK=1 diff --git a/platforms/chibios/synchronization_util.c b/platforms/chibios/synchronization_util.c new file mode 100644 index 0000000000..bc4a4e621f --- /dev/null +++ b/platforms/chibios/synchronization_util.c @@ -0,0 +1,26 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "synchronization_util.h" +#include "ch.h" + +#if defined(SPLIT_KEYBOARD) +static MUTEX_DECL(SPLIT_SHARED_MEMORY_MUTEX); + +/** + * @brief Acquire exclusive access to the split keyboard shared memory, by + * locking the mutex guarding it. If the mutex is already held, the calling + * thread will be suspended until the mutex currently owning thread releases the + * mutex again. + */ +void split_shared_memory_lock(void) { + chMtxLock(&SPLIT_SHARED_MEMORY_MUTEX); +} + +/** + * @brief Release the split shared memory mutex that has been acquired before. + */ +void split_shared_memory_unlock(void) { + chMtxUnlock(&SPLIT_SHARED_MEMORY_MUTEX); +} +#endif diff --git a/platforms/synchronization_util.h b/platforms/synchronization_util.h new file mode 100644 index 0000000000..3730f271db --- /dev/null +++ b/platforms/synchronization_util.h @@ -0,0 +1,14 @@ +// Copyright 2022 Stefan Kerkmann +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#if defined(PLATFORM_SUPPORTS_SYNCHRONIZATION) +# if defined(SPLIT_KEYBOARD) +void split_shared_memory_lock(void); +void split_shared_memory_unlock(void); +# endif +#else +inline void split_shared_memory_lock(void){}; +inline void split_shared_memory_unlock(void){}; +#endif diff --git a/quantum/split_common/transactions.c b/quantum/split_common/transactions.c index 105bf918cb..9e3df534e3 100644 --- a/quantum/split_common/transactions.c +++ b/quantum/split_common/transactions.c @@ -23,8 +23,9 @@ #include "quantum.h" #include "transactions.h" #include "transport.h" -#include "split_util.h" #include "transaction_id_define.h" +#include "split_util.h" +#include "synchronization_util.h" #define SYNC_TIMER_OFFSET 2 @@ -63,9 +64,7 @@ static bool transaction_handler_master(matrix_row_t master_matrix[], matrix_row_ } } bool this_okay = true; - ATOMIC_BLOCK_FORCEON { - this_okay = handler(master_matrix, slave_matrix); - }; + this_okay = handler(master_matrix, slave_matrix); if (this_okay) return true; } dprintf("Failed to execute %s\n", prefix); @@ -77,11 +76,11 @@ static bool transaction_handler_master(matrix_row_t master_matrix[], matrix_row_ if (!transaction_handler_master(master_matrix, slave_matrix, #prefix, &prefix##_handlers_master)) return false; \ } while (0) -#define TRANSACTION_HANDLER_SLAVE(prefix) \ - do { \ - ATOMIC_BLOCK_FORCEON { \ - prefix##_handlers_slave(master_matrix, slave_matrix); \ - }; \ +#define TRANSACTION_HANDLER_SLAVE(prefix) \ + do { \ + split_shared_memory_lock(); \ + prefix##_handlers_slave(master_matrix, slave_matrix); \ + split_shared_memory_unlock(); \ } while (0) inline static bool read_if_checksum_mismatch(int8_t trans_id_checksum, int8_t trans_id_retrieve, uint32_t *last_update, void *destination, const void *equiv_shmem, size_t length) { From 9ead40db0cde5568b4be4b199615cc284ed4e7a8 Mon Sep 17 00:00:00 2001 From: Allen Choi <37539914+Thunderbird2086@users.noreply.github.com> Date: Tue, 19 Apr 2022 20:00:01 +0900 Subject: [PATCH 296/699] Fix broken build for users/curry (#16492) --- keyboards/crkbd/keymaps/curry/config.h | 6 ++++++ keyboards/crkbd/keymaps/curry/keymap.c | 8 +++++++ keyboards/lily58/keymaps/curry/config.h | 5 +++++ keyboards/lily58/keymaps/curry/keymap.c | 6 ++++++ .../rebound/rev1/keymaps/curry/config.h | 7 +++++++ .../rebound/rev1/keymaps/curry/keymap.c | 8 +++++++ users/curry/config.h | 4 ++-- users/curry/curry.c | 2 ++ users/curry/curry.h | 10 ++++++++- users/curry/oled.c | 10 ++++++++- users/curry/process_records.h | 21 ++++++++++++++++--- users/curry/rgb_lighting_user.c | 6 ++++++ users/curry/rgb_matrix_user.c | 12 +++++++++-- 13 files changed, 96 insertions(+), 9 deletions(-) create mode 100644 keyboards/montsinger/rebound/rev1/keymaps/curry/config.h diff --git a/keyboards/crkbd/keymaps/curry/config.h b/keyboards/crkbd/keymaps/curry/config.h index a7c4ed7403..ba9c69ed26 100644 --- a/keyboards/crkbd/keymaps/curry/config.h +++ b/keyboards/crkbd/keymaps/curry/config.h @@ -13,3 +13,9 @@ # define RGB_MATRIX_VAL_STEP 5 # define RGB_MATRIX_SPD_STEP 10 #endif + +// comment out unnecessary layouts +#define ENABLE_QWERTY +#define ENABLE_COLEMAK +#define ENABLE_DVORAK +#define ENABLE_WORKMAN diff --git a/keyboards/crkbd/keymaps/curry/keymap.c b/keyboards/crkbd/keymaps/curry/keymap.c index e56f77ebeb..43a3147619 100644 --- a/keyboards/crkbd/keymaps/curry/keymap.c +++ b/keyboards/crkbd/keymaps/curry/keymap.c @@ -14,29 +14,37 @@ #define LAYOUT_crkbd_base_wrapper(...) LAYOUT_crkbd_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +#if defined(ENABLE_QWERTY) [_QWERTY] = LAYOUT_crkbd_base_wrapper( _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), +#endif +#if defined(ENABLE_COLEMAK) [_COLEMAK] = LAYOUT_crkbd_base_wrapper( _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), +#endif +#if defined(ENABLE_DVORAK) [_DVORAK] = LAYOUT_crkbd_base_wrapper( _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), +#endif +#if defined(ENABLE_WORKMAN) [_WORKMAN] = LAYOUT_crkbd_base_wrapper( _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), +#endif [_MODS] = LAYOUT_wrapper( _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, diff --git a/keyboards/lily58/keymaps/curry/config.h b/keyboards/lily58/keymaps/curry/config.h index a4c697df42..b3e82389d8 100644 --- a/keyboards/lily58/keymaps/curry/config.h +++ b/keyboards/lily58/keymaps/curry/config.h @@ -15,3 +15,8 @@ # define RGBLIGHT_VAL_STEP 5 # define RGBLIGHT_LIMIT_VAL 120 #endif + +// comment out unnecessary layouts +#define ENABLE_QWERTY +#define ENABLE_COLEMAK +#define ENABLE_DVORAK diff --git a/keyboards/lily58/keymaps/curry/keymap.c b/keyboards/lily58/keymaps/curry/keymap.c index bc779305a2..12dde22578 100644 --- a/keyboards/lily58/keymaps/curry/keymap.c +++ b/keyboards/lily58/keymaps/curry/keymap.c @@ -16,26 +16,32 @@ #define LAYOUT_lily58_base_wrapper(...) LAYOUT_lily58_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +#if defined(ENABLE_QWERTY) [_QWERTY] = LAYOUT_lily58_base_wrapper( ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), +#endif +#if defined(ENABLE_COLEMAK) [_COLEMAK] = LAYOUT_lily58_base_wrapper( ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), +#endif +#if defined(ENABLE_DVORAK) [_DVORAK] = LAYOUT_lily58_base_wrapper( ________________NUMBER_LEFT________________, ________________NUMBER_RIGHT_______________, _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), +#endif [_MODS] = LAYOUT_wrapper( _______, ___________________BLANK___________________, ___________________BLANK___________________, _______, diff --git a/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h b/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h new file mode 100644 index 0000000000..2c9f97d587 --- /dev/null +++ b/keyboards/montsinger/rebound/rev1/keymaps/curry/config.h @@ -0,0 +1,7 @@ +#pragma once + +// comment out unnecessary layouts +#define ENABLE_QWERTY +#define ENABLE_COLEMAK +#define ENABLE_DVORAK +#define ENABLE_WORKMAN diff --git a/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c b/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c index 1b8f4f4ac9..49b328271d 100644 --- a/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c +++ b/keyboards/montsinger/rebound/rev1/keymaps/curry/keymap.c @@ -14,29 +14,37 @@ #define LAYOUT_rebound_base_wrapper(...) LAYOUT_rebound_base(__VA_ARGS__) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +#if defined(ENABLE_QWERTY) [_QWERTY] = LAYOUT_rebound_base_wrapper( _________________QWERTY_L1_________________, _________________QWERTY_R1_________________, _________________QWERTY_L2_________________, _________________QWERTY_R2_________________, _________________QWERTY_L3_________________, _________________QWERTY_R3_________________ ), +#endif +#if defined(ENABLE_COLEMAK) [_COLEMAK] = LAYOUT_rebound_base_wrapper( _________________COLEMAK_L1________________, _________________COLEMAK_R1________________, _________________COLEMAK_L2________________, _________________COLEMAK_R2________________, _________________COLEMAK_L3________________, _________________COLEMAK_R3________________ ), +#endif +#if defined(ENABLE_DVORAK) [_DVORAK] = LAYOUT_rebound_base_wrapper( _________________DVORAK_L1_________________, _________________DVORAK_R1_________________, _________________DVORAK_L2_________________, _________________DVORAK_R2_________________, _________________DVORAK_L3_________________, _________________DVORAK_R3_________________ ), +#endif +#if defined(ENABLE_WORKMAN) [_WORKMAN] = LAYOUT_rebound_base_wrapper( _________________WORKMAN_L1________________, _________________WORKMAN_R1________________, _________________WORKMAN_L2________________, _________________WORKMAN_R2________________, _________________WORKMAN_L3________________, _________________WORKMAN_R3________________ ), +#endif [_LOWER] = LAYOUT_ortho_4x12_wrapper( KC_F11, _________________LOWER_L1__________________, _________________LOWER_R1__________________, KC_F12, diff --git a/users/curry/config.h b/users/curry/config.h index 31baea6257..3301ebe533 100644 --- a/users/curry/config.h +++ b/users/curry/config.h @@ -32,7 +32,7 @@ # undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT # undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN -// # undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL # undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON # undef ENABLE_RGB_MATRIX_DUAL_BEACON # undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL @@ -41,7 +41,7 @@ # undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS # undef ENABLE_RGB_MATRIX_RAINDROPS # undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS -// # undef ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP # undef ENABLE_RGB_MATRIX_DIGITAL_RAIN # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE # undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE diff --git a/users/curry/curry.c b/users/curry/curry.c index 0353553591..a9f9f79870 100644 --- a/users/curry/curry.c +++ b/users/curry/curry.c @@ -14,9 +14,11 @@ void bootmagic_lite(void) { wait_ms(30); #endif matrix_scan(); +#if defined(BOOTMAGIC_ENABLE) if (matrix_get_row(BOOTMAGIC_LITE_ROW) & (1 << BOOTMAGIC_LITE_COLUMN)) { bootloader_jump(); } +#endif } __attribute__((weak)) void keyboard_pre_init_keymap(void) {} diff --git a/users/curry/curry.h b/users/curry/curry.h index ee4a736835..7a9e6c9eb6 100644 --- a/users/curry/curry.h +++ b/users/curry/curry.h @@ -25,10 +25,18 @@ /* Define layer names */ enum userspace_layers { - _QWERTY = 0, +#if defined(ENABLE_QWERTY) + _QWERTY, +#endif +#if defined(ENABLE_COLEMAK) _COLEMAK, +#endif +#if defined(ENABLE_DVORAK) _DVORAK, +#endif +#if defined(ENABLE_WORKMAN) _WORKMAN, +#endif _MODS, _LOWER, _RAISE, diff --git a/users/curry/oled.c b/users/curry/oled.c index 27f6072ff1..5a8f0de61d 100644 --- a/users/curry/oled.c +++ b/users/curry/oled.c @@ -56,18 +56,26 @@ void render_keylogger_status(void) { void render_default_layer_state(void) { oled_write_P(PSTR("Lyout"), false); switch (get_highest_layer(default_layer_state)) { +#if defined(ENABLE_QWERTY) case _QWERTY: oled_write_P(PSTR(" QRTY"), false); break; +#endif +#if defined(ENABLE_COLEMAK) case _COLEMAK: oled_write_P(PSTR(" COLE"), false); break; +#endif +#if defined(ENABLE_DVORAK) case _DVORAK: oled_write_P(PSTR(" DVRK"), false); break; +#endif +#if defined(ENABLE_WORKMAN) case _WORKMAN: oled_write_P(PSTR(" WRKM"), false); break; +#endif } } @@ -140,7 +148,7 @@ void render_status_secondary(void) { bool oled_task_user(void) { if (timer_elapsed32(oled_timer) > 30000) { oled_off(); - return; + return false; } #if !defined(SPLIT_KEYBOARD) else { diff --git a/users/curry/process_records.h b/users/curry/process_records.h index 0aa873648b..605abdfae2 100644 --- a/users/curry/process_records.h +++ b/users/curry/process_records.h @@ -43,9 +43,24 @@ bool process_record_keymap(uint16_t keycode, keyrecord_t *record); #define KC_SEC5 KC_SECRET_5 #define QWERTY KC_QWERTY -#define DVORAK KC_DVORAK -#define COLEMAK KC_COLEMAK -#define WORKMAN KC_WORKMAN +#define DVORAK KC_NO +#define COLEMAK KC_NO +#define WORKMAN KC_NO + +#if defined(ENABLE_DVORAK) +# undef DVORAK +# define DVORAK KC_DVORAK +#endif + +#if defined(ENABLE_COLEMAK) +# undef COLEMAK +# define COLEMAK KC_COLEMAK +#endif + +#if defined(ENABLE_WORKMAN) +# undef WORKMAN +# define WORKMAN KC_WORKMAN +#endif #define KC_RST RESET diff --git a/users/curry/rgb_lighting_user.c b/users/curry/rgb_lighting_user.c index 25e1ce0104..b8d519feca 100644 --- a/users/curry/rgb_lighting_user.c +++ b/users/curry/rgb_lighting_user.c @@ -304,15 +304,21 @@ layer_state_t layer_state_set_rgb(layer_state_t state) { { uint8_t mode = get_highest_layer(state) == _MODS ? RGBLIGHT_MODE_BREATHING : RGBLIGHT_MODE_STATIC_LIGHT; switch (get_highest_layer(default_layer_state)) { +#if defined(ENABLE_COLEMAK) case _COLEMAK: rgblight_set_hsv_and_mode(HSV_MAGENTA, mode); break; +#endif +#if defined(ENABLE_DVORAK) case _DVORAK: rgblight_set_hsv_and_mode(HSV_SPRINGGREEN, mode); break; +#endif +#if defined(ENABLE_WORKMAN) case _WORKMAN: rgblight_set_hsv_and_mode(HSV_GOLDENROD, mode); break; +#endif default: rgblight_set_hsv_and_mode(HSV_CYAN, mode); break; diff --git a/users/curry/rgb_matrix_user.c b/users/curry/rgb_matrix_user.c index d1698b087c..96f1f1d4f3 100644 --- a/users/curry/rgb_matrix_user.c +++ b/users/curry/rgb_matrix_user.c @@ -13,23 +13,31 @@ void suspend_wakeup_init_keymap(void) { rgb_matrix_set_suspend_state(false); } void check_default_layer(uint8_t mode, uint8_t type) { switch (get_highest_layer(default_layer_state)) { +#if defined(ENABLE_QWERTY) case _QWERTY: rgb_matrix_layer_helper(HSV_CYAN, mode, rgb_matrix_config.speed, type); break; +#endif +#if defined(ENABLE_COLEMAK) case _COLEMAK: rgb_matrix_layer_helper(HSV_MAGENTA, mode, rgb_matrix_config.speed, type); break; +#endif +#if defined(ENABLE_DVORAK) case _DVORAK: rgb_matrix_layer_helper(HSV_SPRINGGREEN, mode, rgb_matrix_config.speed, type); break; +#endif +#if defined(ENABLE_WORKMAN) case _WORKMAN: rgb_matrix_layer_helper(HSV_GOLDENROD, mode, rgb_matrix_config.speed, type); break; +#endif } } void rgb_matrix_indicators_user(void) { - if (userspace_config.rgb_layer_change && !g_suspend_state && rgb_matrix_config.enable) { + if (userspace_config.rgb_layer_change && rgb_matrix_config.enable) { switch (get_highest_layer(layer_state)) { case _RAISE: rgb_matrix_layer_helper(HSV_YELLOW, 0, rgb_matrix_config.speed, LED_FLAG_UNDERGLOW); @@ -120,7 +128,7 @@ void rgb_matrix_layer_helper(uint8_t hue, uint8_t sat, uint8_t val, uint8_t mode switch (mode) { case 1: // breathing { - uint16_t time = scale16by8(g_rgb_counters.tick, speed / 8); + uint16_t time = scale16by8(RGBLED_NUM, speed / 8); hsv.v = scale8(abs8(sin8(time) - 128) * 2, hsv.v); RGB rgb = hsv_to_rgb(hsv); for (uint8_t i = 0; i < DRIVER_LED_TOTAL; i++) { From 671b62efab9d73cde791cc7b0b2c877516de6012 Mon Sep 17 00:00:00 2001 From: KoenGoe Date: Tue, 19 Apr 2022 13:02:21 +0200 Subject: [PATCH 297/699] Fixes #16705 : digital rain follows val (#16716) Co-authored-by: Drashna Jaelre --- .../rgb_matrix/animations/digital_rain_anim.h | 22 +++++++++++++------ 1 file changed, 15 insertions(+), 7 deletions(-) diff --git a/quantum/rgb_matrix/animations/digital_rain_anim.h b/quantum/rgb_matrix/animations/digital_rain_anim.h index 4633145ff6..7d3b22f697 100644 --- a/quantum/rgb_matrix/animations/digital_rain_anim.h +++ b/quantum/rgb_matrix/animations/digital_rain_anim.h @@ -10,11 +10,13 @@ RGB_MATRIX_EFFECT(DIGITAL_RAIN) bool DIGITAL_RAIN(effect_params_t* params) { // algorithm ported from https://github.com/tremby/Kaleidoscope-LEDEffect-DigitalRain const uint8_t drop_ticks = 28; - const uint8_t pure_green_intensity = 0xd0; - const uint8_t max_brightness_boost = 0xc0; - const uint8_t max_intensity = 0xff; + const uint8_t pure_green_intensity = (((uint16_t)rgb_matrix_config.hsv.v) * 3) >> 2; + const uint8_t max_brightness_boost = (((uint16_t)rgb_matrix_config.hsv.v) * 3) >> 2; + const uint8_t max_intensity = rgb_matrix_config.hsv.v; + const uint8_t decay_ticks = 0xff / max_intensity; - static uint8_t drop = 0; + static uint8_t drop = 0; + static uint8_t decay = 0; if (params->init) { rgb_matrix_set_color_all(0, 0, 0); @@ -22,6 +24,7 @@ bool DIGITAL_RAIN(effect_params_t* params) { drop = 0; } + decay++; for (uint8_t col = 0; col < MATRIX_COLS; col++) { for (uint8_t row = 0; row < MATRIX_ROWS; row++) { if (row == 0 && drop == 0 && rand() < RAND_MAX / RGB_DIGITAL_RAIN_DROPS) { @@ -30,7 +33,9 @@ bool DIGITAL_RAIN(effect_params_t* params) { g_rgb_frame_buffer[row][col] = max_intensity; } else if (g_rgb_frame_buffer[row][col] > 0 && g_rgb_frame_buffer[row][col] < max_intensity) { // neither fully bright nor dark, decay it - g_rgb_frame_buffer[row][col]--; + if (decay == decay_ticks) { + g_rgb_frame_buffer[row][col]--; + } } // set the pixel colour uint8_t led[LED_HITS_TO_REMEMBER]; @@ -48,6 +53,9 @@ bool DIGITAL_RAIN(effect_params_t* params) { } } } + if (decay == decay_ticks) { + decay = 0; + } if (++drop > drop_ticks) { // reset drop timer @@ -59,9 +67,9 @@ bool DIGITAL_RAIN(effect_params_t* params) { g_rgb_frame_buffer[row][col]--; } // check if the pixel above is bright - if (g_rgb_frame_buffer[row - 1][col] == max_intensity) { + if (g_rgb_frame_buffer[row - 1][col] >= max_intensity) { // Note: can be larger than max_intensity if val was recently decreased // allow old bright pixel to decay - g_rgb_frame_buffer[row - 1][col]--; + g_rgb_frame_buffer[row - 1][col] = max_intensity - 1; // make this pixel bright g_rgb_frame_buffer[row][col] = max_intensity; } From ad31ea3f515630f922ccad54cc879e13a05020fa Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Tue, 19 Apr 2022 05:03:51 -0600 Subject: [PATCH 298/699] boardsource/microdox V2 (#16569) --- keyboards/boardsource/microdox/config.h | 27 ++-- .../microdox/keymaps/cole/keymap.c | 70 +--------- .../microdox/keymaps/cole/rules.mk | 1 - .../microdox/keymaps/default/keymap.c | 36 ++--- .../boardsource/microdox/keymaps/via/keymap.c | 125 ++++-------------- .../boardsource/microdox/keymaps/via/rules.mk | 3 - keyboards/boardsource/microdox/microdox.c | 57 ++++++++ keyboards/boardsource/microdox/microdox.h | 25 ++-- keyboards/boardsource/microdox/readme.md | 6 +- keyboards/boardsource/microdox/rules.mk | 6 +- keyboards/boardsource/microdox/v2/config.h | 45 +++++++ keyboards/boardsource/microdox/v2/rules.mk | 8 ++ keyboards/boardsource/microdox/v2/v2.c | 62 +++++++++ keyboards/boardsource/microdox/v2/v2.h | 22 +++ 14 files changed, 278 insertions(+), 215 deletions(-) create mode 100644 keyboards/boardsource/microdox/v2/config.h create mode 100644 keyboards/boardsource/microdox/v2/rules.mk create mode 100644 keyboards/boardsource/microdox/v2/v2.c create mode 100644 keyboards/boardsource/microdox/v2/v2.h diff --git a/keyboards/boardsource/microdox/config.h b/keyboards/boardsource/microdox/config.h index 7e6347dbda..f2ba806ae7 100644 --- a/keyboards/boardsource/microdox/config.h +++ b/keyboards/boardsource/microdox/config.h @@ -19,20 +19,22 @@ along with this program. If not, see . #include "config_common.h" -#define VENDOR_ID 0xF7E0 -#define PRODUCT_ID 0x0412 -#define DEVICE_VER 0x0000 -#define MANUFACTURER Boardsource -#define PRODUCT microdox +#define VENDOR_ID 0xF7E0 +#define PRODUCT_ID 0x0412 +#define DEVICE_VER 0x0000 +#define MANUFACTURER Boardsource +#define PRODUCT microdox /* key matrix size */ // Rows are doubled-up #define MATRIX_ROWS 8 #define MATRIX_COLS 5 -#define MATRIX_ROW_PINS { B2, B6, B4, B5 } +#define MATRIX_ROW_PINS \ + { B2, B6, B4, B5 } // wiring of each half -#define MATRIX_COL_PINS { F4, F5, F6, F7, B1 } +#define MATRIX_COL_PINS \ + { F4, F5, F6, F7, B1 } #define USE_SERIAL #define SOFT_SERIAL_PIN D2 /* define if matrix has ghost */ @@ -53,12 +55,15 @@ along with this program. If not, see . //#define LOCKING_RESYNC_ENABLE /* ws2812 RGB LED */ -#define RGBLIGHT_ANIMATIONS #define RGB_DI_PIN D3 -#define RGBLED_SPLIT { 6, 6 } -#define EE_HANDS #ifdef RGBLIGHT_ENABLE -#define RGBLED_NUM 12 // Number of LEDs +# define RGBLED_NUM 12 // Number of LEDs +# define RGBLED_SPLIT \ + { 6, 6 } +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_STATIC_GRADIENT + #endif /* diff --git a/keyboards/boardsource/microdox/keymaps/cole/keymap.c b/keyboards/boardsource/microdox/keymaps/cole/keymap.c index 8ff5707478..f4ac92ea0d 100644 --- a/keyboards/boardsource/microdox/keymaps/cole/keymap.c +++ b/keyboards/boardsource/microdox/keymaps/cole/keymap.c @@ -16,13 +16,11 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "split_util.h" enum layers { _QWERTY, _RAISE, - _LOWER, - _ADJUST + _LOWER }; #define KC_CTSC RCTL_T(KC_SCLN) @@ -35,83 +33,23 @@ enum layers { #define PREVWINDOW MT(MOD_LCTL, KC_LEFT) #define NEXTWINDOW MT(MOD_LCTL, KC_RGHT) - - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_split_3x5_3( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, CTRL_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_CTSC, SHFT_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, SHIFT_SLASH, MO(_LOWER),KC_LGUI, RASE_ENT, RASE_BACK, LOWER_SPC, KC_TAB - ), + ), [_RAISE] = LAYOUT_split_3x5_3( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_QUOT, KC_LSFT, KC_GRV, PREVWINDOW, NEXTWINDOW, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_LGUI, KC_ENT, KC_BSPC, KC_SPC, _______ - ), + ), [_LOWER] = LAYOUT_split_3x5_3( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_DQT, KC_ESC, KC_TILD, PREVWINDOW, NEXTWINDOW, RGB_MODE_FORWARD, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_LGUI, KC_ENT, KC_BSPC, KC_SPC, _______ - ) + ) }; - -#ifdef OLED_ENABLE -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (is_keyboard_master()) - return OLED_ROTATION_180; - return rotation; -} - -static void render_logo(void) { - static const char PROGMEM qmk_logo[] = { - 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, - 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, - 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, - 0 - }; - oled_write_P(qmk_logo, false); -} - -static void render_status(void) { - switch (get_highest_layer(layer_state)) { - case _QWERTY: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR("^\n"), false); - oled_write_P(PSTR("Layer: Base\n"), false); - break; - case _RAISE: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Raise\n"), false); - break; - case _LOWER: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Lower\n"), false); - break; - case _ADJUST: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Adjust\n"), false); - break; - default: - oled_write_P(PSTR("B R L A O"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Other\n"), false); - } -} - -bool oled_task_user(void) { - if (is_keyboard_master()) { - render_status(); - } else { - render_logo(); - oled_scroll_left(); - } - return false; -} - -#endif diff --git a/keyboards/boardsource/microdox/keymaps/cole/rules.mk b/keyboards/boardsource/microdox/keymaps/cole/rules.mk index d34d066ded..dd68e9d3b0 100644 --- a/keyboards/boardsource/microdox/keymaps/cole/rules.mk +++ b/keyboards/boardsource/microdox/keymaps/cole/rules.mk @@ -1,2 +1 @@ OLED_ENABLE = yes -OLED_DRIVER = SSD1306 diff --git a/keyboards/boardsource/microdox/keymaps/default/keymap.c b/keyboards/boardsource/microdox/keymaps/default/keymap.c index 06322be0b7..6fe94011f4 100644 --- a/keyboards/boardsource/microdox/keymaps/default/keymap.c +++ b/keyboards/boardsource/microdox/keymaps/default/keymap.c @@ -27,24 +27,24 @@ enum layers { #define LOWER MO(_LOWER) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[_QWERTY] = LAYOUT_split_3x5_3( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, - KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - KC_LCTL, LOWER, KC_SPC, KC_BSPC, RAISE, KC_ENT -), + [_QWERTY] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_LCTL, LOWER, KC_SPC, KC_BSPC, RAISE, KC_ENT + ), -[_RAISE] = LAYOUT_split_3x5_3( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, - KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_QUOT, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX -), + [_RAISE] = LAYOUT_split_3x5_3( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_TAB, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, + KC_LCTL, KC_GRV, KC_LGUI, KC_LALT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_QUOT, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ), -[_LOWER] = LAYOUT_split_3x5_3( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, - KC_CAPS, KC_TILD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PIPE, KC_DQT, - XXXXXXX, XXXXXXX, XXXXXXX, KC_ENT, XXXXXXX, KC_DEL -) + [_LOWER] = LAYOUT_split_3x5_3( + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_ESC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, + KC_CAPS, KC_TILD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PIPE, KC_DQT, + XXXXXXX, XXXXXXX, XXXXXXX, KC_ENT, XXXXXXX, KC_DEL + ) }; diff --git a/keyboards/boardsource/microdox/keymaps/via/keymap.c b/keyboards/boardsource/microdox/keymaps/via/keymap.c index e02fb0b6ee..d9196515cb 100644 --- a/keyboards/boardsource/microdox/keymaps/via/keymap.c +++ b/keyboards/boardsource/microdox/keymaps/via/keymap.c @@ -1,105 +1,32 @@ -/* -Copyright 2020 Jack Sangdahl <@toastedmangoes> - -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 . -*/ - +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -[0] = LAYOUT_split_3x5_3( - KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - SFT_T(KC_A), KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SCLN), - CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), - LT(3, KC_LGUI), MO(1), KC_SPC, KC_BSPC, MO(2), KC_ENT -), + [0] = LAYOUT_split_3x5_3( + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + SFT_T(KC_A), KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, SFT_T(KC_SCLN), + CTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, CTL_T(KC_SLSH), + LT(3, KC_LGUI), MO(1), KC_SPC, KC_BSPC, MO(2), KC_ENT + ), -[1] = LAYOUT_split_3x5_3( - KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, - KC_ESC, KC_TAB, KC_CAPS, KC_TILD, KC_GRV, KC_QUOT, KC_DQUO, KC_MPRV, KC_MPLY, KC_MNXT, - KC_LGUI, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_RALT -), + [1] = LAYOUT_split_3x5_3( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, + KC_ESC, KC_TAB, KC_CAPS, KC_TILD, KC_GRV, KC_QUOT, KC_DQUO, KC_MPRV, KC_MPLY, KC_MNXT, + KC_LGUI, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_RALT + ), -[2] = LAYOUT_split_3x5_3( - KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_PSCR, KC_DEL, KC_INS, KC_HOME, KC_END, - KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_RIGHT, KC_UP, KC_VOLU, - KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_VOLD, - KC_PGDN, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_PGUP -), -[3] = LAYOUT_split_3x5_3( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUD, RGB_HUI, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RMOD, RGB_VAD, RGB_VAI, XXXXXXX, XXXXXXX, - KC_TRNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX -) + [2] = LAYOUT_split_3x5_3( + KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_PSCR, KC_DEL, KC_INS, KC_HOME, KC_END, + KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_RIGHT, KC_UP, KC_VOLU, + KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_VOLD, + KC_PGDN, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_PGUP + ), + [3] = LAYOUT_split_3x5_3( + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUD, RGB_HUI, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RMOD, RGB_VAD, RGB_VAI, XXXXXXX, XXXXXXX, + KC_TRNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + ) }; - -#ifdef OLED_ENABLE -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (is_keyboard_master()) - return OLED_ROTATION_180; - return rotation; -} - -static void render_logo(void) { - static const char PROGMEM qmk_logo[] = { - 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, - 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, - 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, - 0 - }; - oled_write_P(qmk_logo, false); -} - -static void render_status(void) { - switch (get_highest_layer(layer_state)) { - case 0: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR("^\n"), false); - oled_write_P(PSTR("Layer: Base\n"), false); - break; - case 1: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Raise\n"), false); - break; - case 2: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Lower\n"), false); - break; - case 3: - oled_write_P(PSTR("B R L A O\n"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Adjust\n"), false); - break; - default: - oled_write_P(PSTR("B R L A O"), false); - oled_write_P(PSTR(" ^\n"), false); - oled_write_P(PSTR("Layer: Other\n"), false); - } -} - -bool oled_task_user(void) { - if (is_keyboard_master()) { - render_status(); - } else { - render_logo(); - oled_scroll_left(); - } - return false; -} - -#endif diff --git a/keyboards/boardsource/microdox/keymaps/via/rules.mk b/keyboards/boardsource/microdox/keymaps/via/rules.mk index c84c1f4176..7fad85c015 100644 --- a/keyboards/boardsource/microdox/keymaps/via/rules.mk +++ b/keyboards/boardsource/microdox/keymaps/via/rules.mk @@ -1,6 +1,3 @@ OLED_ENABLE = yes -OLED_DRIVER = SSD1306 VIA_ENABLE = yes -EXTRAKEY_ENABLE = yes -RGBLIGHT_ENABLE = yes LTO_ENABLE = yes diff --git a/keyboards/boardsource/microdox/microdox.c b/keyboards/boardsource/microdox/microdox.c index eef981297a..abfe65a2bd 100644 --- a/keyboards/boardsource/microdox/microdox.c +++ b/keyboards/boardsource/microdox/microdox.c @@ -17,3 +17,60 @@ along with this program. If not, see . #include "microdox.h" +#ifdef OLED_ENABLE +oled_rotation_t oled_init_kb(oled_rotation_t rotation) { + if (is_keyboard_master()) + return OLED_ROTATION_180; + return rotation; +} + +static void render_logo(void) { + static const char PROGMEM qmk_logo[] = { + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, + 0 + }; + oled_write_P(qmk_logo, false); +} + +static void render_status(void) { + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_P(PSTR("B R L A O\n"), false); + oled_write_P(PSTR("^\n"), false); + oled_write_P(PSTR("Layer: Base\n"), false); + break; + case 1: + oled_write_P(PSTR("B R L A O\n"), false); + oled_write_P(PSTR(" ^\n"), false); + oled_write_P(PSTR("Layer: Raise\n"), false); + break; + case 2: + oled_write_P(PSTR("B R L A O\n"), false); + oled_write_P(PSTR(" ^\n"), false); + oled_write_P(PSTR("Layer: Lower\n"), false); + break; + case 3: + oled_write_P(PSTR("B R L A O\n"), false); + oled_write_P(PSTR(" ^\n"), false); + oled_write_P(PSTR("Layer: Adjust\n"), false); + break; + default: + oled_write_P(PSTR("B R L A O"), false); + oled_write_P(PSTR(" ^\n"), false); + oled_write_P(PSTR("Layer: Other\n"), false); + } +} + +bool oled_task_kb(void) { + if (!oled_task_user()) { return false; } + if (is_keyboard_master()) { + render_status(); + } else { + render_logo(); + oled_scroll_left(); + } + return false; +} +#endif diff --git a/keyboards/boardsource/microdox/microdox.h b/keyboards/boardsource/microdox/microdox.h index 950d46d99f..8b63b46415 100644 --- a/keyboards/boardsource/microdox/microdox.h +++ b/keyboards/boardsource/microdox/microdox.h @@ -18,20 +18,21 @@ along with this program. If not, see . #pragma once #include "quantum.h" +#define xxx KC_NO #define LAYOUT_split_3x5_3(\ - k01, k02, k03, k04, k05, k45, k44, k43, k42, k41, \ - k11, k12, k13, k14, k15, k55, k54, k53, k52, k51, \ - k21, k22, k23, k24, k25, k65, k64, k63, k62, k61, \ - k33, k34, k35, k75, k74, k73 \ + k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ + k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ + k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ + k32, k33, k34, k74, k73, k72 \ ) \ { \ - { k01, k02, k03, k04, k05 }, \ - { k11, k12, k13, k14, k15 }, \ - { k21, k22, k23, k24, k25 }, \ - { KC_NO,KC_NO, k33, k34, k35 }, \ - { k41, k42, k43, k44, k45 }, \ - { k51, k52, k53, k54, k55 }, \ - { k61, k62, k63, k64, k65 }, \ - { KC_NO, KC_NO, k73, k74, k75 } \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 }, \ + { k20, k21, k22, k23, k24 }, \ + { xxx, xxx, k32, k33, k34 }, \ + { k40, k41, k42, k43, k44 }, \ + { k50, k51, k52, k53, k54 }, \ + { k60, k61, k62, k63, k64 }, \ + { xxx, xxx, k72, k73, k74 } \ } diff --git a/keyboards/boardsource/microdox/readme.md b/keyboards/boardsource/microdox/readme.md index 7b54283674..0a468bd4a3 100644 --- a/keyboards/boardsource/microdox/readme.md +++ b/keyboards/boardsource/microdox/readme.md @@ -3,11 +3,13 @@ ![boardsource Microdox](https://i.imgur.com/AliShkvl.jpg) * Keyboard Maintainer: [Boardsource](https://github.com/daysgobye) -* Hardware Supported: microdox v1 +* Hardware Supported: Pro Micro and compatible alternatives * Hardware Availability: this keyboard is available from the [Boardsource store](https://boardsource.xyz/store/5f2e7e4a2902de7151494f92) Make example for this keyboard (after setting up your build environment): - make boardsource/microdox:default + make boardsource/microdox/v2:default + +Remove `v2` from above command if you purchased your PCBs prior to April 2022 See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/boardsource/microdox/rules.mk b/keyboards/boardsource/microdox/rules.mk index 52f90150ee..a15c5aded1 100644 --- a/keyboards/boardsource/microdox/rules.mk +++ b/keyboards/boardsource/microdox/rules.mk @@ -7,12 +7,12 @@ BOOTLOADER = caterina # Build Options # change yes to no to disable # -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = no # Mouse keys -EXTRAKEY_ENABLE = no # Audio control and System control +EXTRAKEY_ENABLE = yes # Audio control and System control CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover +NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output diff --git a/keyboards/boardsource/microdox/v2/config.h b/keyboards/boardsource/microdox/v2/config.h new file mode 100644 index 0000000000..1f8bc7c3d9 --- /dev/null +++ b/keyboards/boardsource/microdox/v2/config.h @@ -0,0 +1,45 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS +#define MATRIX_ROW_PINS \ + { F4, D2, C6, B1 } +#define MATRIX_COL_PINS \ + { D4, D7, B3, F7, F6 } +#define MATRIX_ROW_PINS_RIGHT \ + { F5, F7, F6, E6 } +#define MATRIX_COL_PINS_RIGHT \ + { F4, B1, D7, C6, B3 } +#undef SOFT_SERIAL_PIN +#define SOFT_SERIAL_PIN D3 +#undef RGB_DI_PIN +#define RGB_DI_PIN B5 +#ifdef RGBLIGHT_ENABLE +# undef RGBLED_NUM +# undef RGBLED_SPLIT +# define RGBLED_NUM 8 +# define RGBLED_SPLIT { 4, 4 } // underglow only +# define RGBLIGHT_SLEEP +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +#endif +#ifdef RGB_MATRIX_ENABLE +# define DRIVER_LED_TOTAL 44 +# define RGB_MATRIX_SPLIT { 22, 22 } +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#endif +#ifdef ENCODER_ENABLE +# define ENCODERS_PAD_A { E6 } +# define ENCODERS_PAD_B { B2 } +# define ENCODERS_PAD_A_RIGHT { B6 } +# define ENCODERS_PAD_B_RIGHT { B2 } +#endif diff --git a/keyboards/boardsource/microdox/v2/rules.mk b/keyboards/boardsource/microdox/v2/rules.mk new file mode 100644 index 0000000000..0d57a06d1e --- /dev/null +++ b/keyboards/boardsource/microdox/v2/rules.mk @@ -0,0 +1,8 @@ +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 +RGB_MATRIX_SUPPORTED = yes +RGBLIGHT_ENABLE = no +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +ENCODER_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/boardsource/microdox/v2/v2.c b/keyboards/boardsource/microdox/v2/v2.c new file mode 100644 index 0000000000..11476a6ea2 --- /dev/null +++ b/keyboards/boardsource/microdox/v2/v2.c @@ -0,0 +1,62 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#include "v2.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { + { + { 13, 14, 15, 16, 17 }, + { 12, 11, 10, 9, 8 }, + { 3, 4, 5, 6, 7 }, + { NO_LED, NO_LED, 2, 1, 0 }, + //18-21 left underglow + { 35, 36, 37, 38, 39 }, + { 34, 33, 32, 31, 30 }, + { 25, 26, 27, 28, 29 }, + { NO_LED, NO_LED, 24, 23, 22 } + //40-44 right underglow + }, { + {99,64}, {74,64}, {49,64}, //0-2 + {0,42}, {24,42}, {49,42}, {74,42}, {99,42}, //3-7 + {99,21}, {74,21}, {49,21}, {24,21}, {0,21}, //8-12 + {0,0}, {24,0}, {49,0}, {74,0}, {99,0}, //13-17 + {12,11}, {86,11}, {86,53}, {0,64}, //18-21 + {124,64}, {149,64}, {174,64}, //22-24 + {224,42}, {199,42}, {174,42}, {149,42}, {124,42}, //25-29 + {124,21}, {149,21}, {174,21}, {199,21}, {224,21}, //30-34 + {224,0}, {199,0}, {174,0}, {149,0}, {124,0}, //35-39 + {211,11}, {136,11}, {136,53}, {224,64} //40-44 + }, { + 1, 1, 1, + 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, + 2, 2, 2, 2, + 1, 1, 1, + 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, + 2, 2, 2, 2 + } +}; +#endif + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code_delay(KC_VOLU, 10); + } else { + tap_code_delay(KC_VOLD, 10); + } + } else { + if (clockwise) { + tap_code(KC_MNXT); + } else { + tap_code(KC_MPRV); + } + } + return false; +} +#endif diff --git a/keyboards/boardsource/microdox/v2/v2.h b/keyboards/boardsource/microdox/v2/v2.h new file mode 100644 index 0000000000..400660fffa --- /dev/null +++ b/keyboards/boardsource/microdox/v2/v2.h @@ -0,0 +1,22 @@ +// Copyright 2022 jack (@waffle87) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once +#include "quantum.h" +#define xxx KC_NO + +#define LAYOUT_split_3x5_3(\ + k00, k01, k02, k03, k04, k44, k43, k42, k41, k40, \ + k10, k11, k12, k13, k14, k54, k53, k52, k51, k50, \ + k20, k21, k22, k23, k24, k64, k63, k62, k61, k60, \ + k32, k33, k34, k74, k73, k72 \ + ) \ + { \ + { k00, k01, k02, k03, k04 }, \ + { k10, k11, k12, k13, k14 }, \ + { k20, k21, k22, k23, k24 }, \ + { xxx, xxx, k32, k33, k34 }, \ + { k40, k41, k42, k43, k44 }, \ + { k50, k51, k52, k53, k54 }, \ + { k60, k61, k62, k63, k64 }, \ + { xxx, xxx, k72, k73, k74 } \ + } From be7198ca49543a5e7b8d5ec38de7d7b6f2acc53d Mon Sep 17 00:00:00 2001 From: gourdo1 Date: Tue, 19 Apr 2022 04:05:13 -0700 Subject: [PATCH 299/699] New custom keymap for Glorious GMMK Pro ANSI layout (#16199) Co-authored-by: Drashna Jaelre --- .../gmmk/pro/ansi/keymaps/gourdo1/caps_word.c | 150 ++++++ .../gmmk/pro/ansi/keymaps/gourdo1/caps_word.h | 127 +++++ .../gmmk/pro/ansi/keymaps/gourdo1/config.h | 75 +++ .../gmmk/pro/ansi/keymaps/gourdo1/keymap.c | 336 ++++++++++++++ .../gmmk/pro/ansi/keymaps/gourdo1/readme.md | 97 ++++ .../pro/ansi/keymaps/gourdo1/rgb_matrix_map.h | 287 ++++++++++++ .../gmmk/pro/ansi/keymaps/gourdo1/rules.mk | 18 + users/gourdo1/gourdo1.c | 432 ++++++++++++++++++ users/gourdo1/gourdo1.h | 131 ++++++ users/gourdo1/gourdo1_encoder.c | 238 ++++++++++ users/gourdo1/rules.mk | 29 ++ 11 files changed, 1920 insertions(+) create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.c create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.h create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/config.h create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/keymap.c create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/readme.md create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/rgb_matrix_map.h create mode 100644 keyboards/gmmk/pro/ansi/keymaps/gourdo1/rules.mk create mode 100644 users/gourdo1/gourdo1.c create mode 100644 users/gourdo1/gourdo1.h create mode 100644 users/gourdo1/gourdo1_encoder.c create mode 100644 users/gourdo1/rules.mk diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.c b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.c new file mode 100644 index 0000000000..d2f7b6ee7f --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.c @@ -0,0 +1,150 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// For full documentation, see +// https://getreuer.info/posts/keyboards/caps-word + +#include "caps_word.h" + +static bool caps_word_active = false; + +#if CAPS_WORD_IDLE_TIMEOUT > 0 +#if CAPS_WORD_IDLE_TIMEOUT < 100 || CAPS_WORD_IDLE_TIMEOUT > 30000 +// Constrain timeout to a sensible range. With the 16-bit timer, the longest +// representable timeout is 32768 ms, rounded here to 30000 ms = half a minute. +#error "caps_word: CAPS_WORD_IDLE_TIMEOUT must be between 100 and 30000 ms" +#endif + +static uint16_t idle_timer = 0; + +void caps_word_task(void) { + if (caps_word_active && timer_expired(timer_read(), idle_timer)) { + caps_word_set(false); + } +} +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + +bool process_caps_word(uint16_t keycode, keyrecord_t* record) { +#ifndef NO_ACTION_ONESHOT + const uint8_t mods = get_mods() | get_oneshot_mods(); +#else + const uint8_t mods = get_mods(); +#endif // NO_ACTION_ONESHOT + + if (!caps_word_active) { + // Pressing both shift keys at the same time enables caps word. + if ((mods & MOD_MASK_SHIFT) == MOD_MASK_SHIFT) { + caps_word_set(true); // Activate Caps Word. + return false; + } + return true; + } else { +#if CAPS_WORD_IDLE_TIMEOUT > 0 + idle_timer = record->event.time + CAPS_WORD_IDLE_TIMEOUT; +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + } + + if (!record->event.pressed) { return true; } + + if (!(mods & ~MOD_MASK_SHIFT)) { + switch (keycode) { + // Ignore MO, TO, TG, TT, and OSL layer switch keys. + case QK_MOMENTARY ... QK_MOMENTARY_MAX: + case QK_TO ... QK_TO_MAX: + case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: + return true; + +#ifndef NO_ACTION_TAPPING + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + if (record->tap.count == 0) { + // Deactivate if a mod becomes active through holding a mod-tap key. + caps_word_set(false); + return true; + } + keycode &= 0xff; + break; + +#ifndef NO_ACTION_LAYER + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: +#endif // NO_ACTION_LAYER + if (record->tap.count == 0) { return true; } + keycode &= 0xff; + break; +#endif // NO_ACTION_TAPPING + +#ifdef SWAP_HANDS_ENABLE + case QK_SWAP_HANDS ... QK_SWAP_HANDS_MAX: + if (keycode > 0x56F0 || record->tap.count == 0) { return true; } + keycode &= 0xff; + break; +#endif // SWAP_HANDS_ENABLE + } + + if (caps_word_press_user(keycode)) { + return true; + } + } + + caps_word_set(false); // Deactivate Caps Word. + return true; +} + +void caps_word_set(bool active) { + if (active != caps_word_active) { + if (active) { + clear_mods(); +#ifndef NO_ACTION_ONESHOT + clear_oneshot_mods(); +#endif // NO_ACTION_ONESHOT +#if CAPS_WORD_IDLE_TIMEOUT > 0 + idle_timer = timer_read() + CAPS_WORD_IDLE_TIMEOUT; +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + } else if ((get_weak_mods() & MOD_BIT(KC_LSFT)) != 0) { + // If the weak shift mod is still on, turn it off and send an update to + // the host computer. + del_weak_mods(MOD_BIT(KC_LSFT)); + send_keyboard_report(); + } + + caps_word_active = active; + caps_word_set_user(active); + } +} + +bool caps_word_get(void) { return caps_word_active; } + +__attribute__((weak)) void caps_word_set_user(bool active) {} + +__attribute__((weak)) bool caps_word_press_user(uint16_t keycode) { + switch (keycode) { + // Keycodes that continue Caps Word, with shift applied. + case KC_A ... KC_Z: + add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. + return true; + + // Keycodes that continue Caps Word, without shifting. + case KC_1 ... KC_0: + case KC_BSPC: + case KC_MINS: + case KC_UNDS: + return true; + + default: + return false; // Deactivate Caps Word. + } +} + diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.h b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.h new file mode 100644 index 0000000000..7f58dd3f17 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/caps_word.h @@ -0,0 +1,127 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// Caps Word, activated by pressing both shift keys at the same time. +// +// This library implements "Caps Word", which is like conventional Caps Lock, +// but automatically disables itself at the end of the word. This is useful for +// typing all-caps identifiers like `MOD_MASK_ALT`. +// +// Caps Word is activated by pressing the left and right shift keys at the same +// time. This way you don't need a dedicated key for using Caps Word. I've +// tested that this works as expected with one-shot mods and Space Cadet Shift. +// If your shift keys are mod-taps, activate Caps Word by holding both shift +// mod-tap keys until the tapping term, release them, then begin typing. +// +// Optionally, Caps Word may be configured to deactivate if the keyboard is idle +// for some time. This is useful to mitigate unintended shifting when you get +// interrupted or switch to the mouse while Caps Word is active. In your +// config.h, define `CAPS_WORD_IDLE_TIMEOUT` with a time in milliseconds: +// +// #define CAPS_WORD_IDLE_TIMEOUT 5000 // Turn off Caps Word after 5 seconds. +// +// and in your keymap.c, define (or add to) `matrix_scan_user()` as +// +// void matrix_scan_user(void) { +// caps_word_task(); +// // Other tasks... +// } +// +// For full documentation, see +// https://getreuer.info/posts/keyboards/caps-word + +#pragma once + +#include QMK_KEYBOARD_H + +// Call this function from `process_record_user()` to implement Caps Word. +bool process_caps_word(uint16_t keycode, keyrecord_t* record); + +// If CAPS_WORD_IDLE_TIMEOUT is set, call `caps_word_task()` from +// `matrix_scan_user()` as described above. +// +// If CAPS_WORD_IDLE_TIMEOUT isn't set, calling this function has no effect (but +// will still compile). +#if CAPS_WORD_IDLE_TIMEOUT > 0 +void caps_word_task(void); +#else +static inline void caps_word_task(void) {} +#endif + +// Activates or deactivates Caps Word. For instance activate Caps Word with a +// combo by defining a `COMBO_ACTION` that calls `caps_word_set(true)`: +// +// void process_combo_event(uint16_t combo_index, bool pressed) { +// switch(combo_index) { +// case CAPS_COMBO: +// if (pressed) { +// caps_word_set(true); // Activate Caps Word. +// } +// break; +// +// // Other combos... +// } +// } +void caps_word_set(bool active); + +// Returns whether Caps Word is currently active. +bool caps_word_get(void); + +// An optional callback that gets called when Caps Word turns on or off. This is +// useful to represent the current Caps Word state, e.g. by setting an LED or +// playing a sound. In your keymap, define +// +// void caps_word_set_user(bool active) { +// if (active) { +// // Do something when Caps Word activates. +// } else { +// // Do something when Caps Word deactivates. +// } +// } +void caps_word_set_user(bool active); + +// An optional callback which is called on every key press while Caps Word is +// active. When the key should be shifted (that is, a letter key), the callback +// should call `add_weak_mods(MOD_BIT(KC_LSFT))` to shift the key. The callback +// also determines whether the key should continue Caps Word. Returning true +// continues the current "word", while returning false is "word breaking" and +// deactivates Caps Word. The default callback is +// +// bool caps_word_press_user(uint16_t keycode) { +// switch (keycode) { +// // Keycodes that continue Caps Word, with shift applied. +// case KC_A ... KC_Z: +// add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to the next key. +// return true; +// +// // Keycodes that continue Caps Word, without shifting. +// case KC_1 ... KC_0: +// case KC_BSPC: +// case KC_MINS: +// case KC_UNDS: +// return true; +// +// default: +// return false; // Deactivate Caps Word. +// } +// } +// +// To customize, copy the above function into your keymap and add/remove +// keycodes to the above cases. +// +// NOTE: Outside of this callback, you can use `caps_word_set(false)` to +// deactivate Caps Word. +bool caps_word_press_user(uint16_t keycode); + diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/config.h b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/config.h new file mode 100644 index 0000000000..582e473cb2 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/config.h @@ -0,0 +1,75 @@ +/* Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + +#pragma once + +#define TAPPING_TOGGLE 2 +// TT set to two taps + +/* Handle GRAVESC combo keys */ +#define GRAVE_ESC_ALT_OVERRIDE +// Always send Escape if Alt is pressed +#define GRAVE_ESC_CTRL_OVERRIDE +// Always send Escape if Control is pressed + +// #define TAPPING_TERM 180 +#define TAPPING_TERM 300 +#define TAPPING_TERM_PER_KEY + +#ifdef RGB_MATRIX_ENABLE +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR +#define RGB_DISABLE_WHEN_USB_SUSPENDED +#endif + +// RGB step values +#define RGBLIGHT_HUE_STEP 32 // The number of steps to cycle through the hue by (default 10) +#define RGBLIGHT_SAT_STEP 17 // The number of steps to increment the saturation by (default 17) +#define RGBLIGHT_VAL_STEP 17 // The number of steps to increment the brightness by (default 17) + +// add fifth layer for colemak -- set "COLEMAK_LAYER_ENABLE = yes" in rules.mk to enable +#if defined COLEMAK_LAYER_ENABLE +#define DYNAMIC_KEYMAP_LAYER_COUNT 5 +#define _COLEMAK 4 +#endif // COLEMAK_LAYER_ENABLE + +/* +// Mouse Keys Accelerated Mode Definitions +#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10) +#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement. +#define MOUSEKEY_MOVE_DELTA 8 // Step size (default: 8) +#define MOUSEKEY_MAX_SPEED 9 // Maximum cursor speed at which acceleration stops (default: 10) +#define MOUSEKEY_TIME_TO_MAX 150 // Time until maximum cursor speed is reached (default: 30) +#define MOUSEKEY_WHEEL_DELAY 0 // Delay between pressing a wheel key and wheel movement (default: 10) +#define MOUSEKEY_WHEEL_INTERVAL 80 // Time between wheel movements (default: 80) +#define MOUSEKEY_WHEEL_MAX_SPEED 8 // Maximum number of scroll steps per scroll action (default: 8) +#define MOUSEKEY_WHEEL_TIME_TO_MAX 40 // Time until maximum scroll speed is reached (default: 40) +*/ + +// Mouse Keys Kinetic Mode Definitions +#define MK_KINETIC_SPEED // Enable Kinetic mode: Uses a quadratic curve on cursor speed to allow precise movements at the beginning and increases speed thereafter. +#define MOUSEKEY_DELAY 3 // Delay between pressing a movement key and cursor movement (default: 10) +#define MOUSEKEY_INTERVAL 13 // Time between cursor movements in milliseconds (default: 20); Try setting to 1000/monitor refresh for smooth movement. +#define MOUSEKEY_MOVE_DELTA 5 // Step size for accelerating from initial to base speed (default: 8) +#define MOUSEKEY_MOVE_MAX 50 // use instead of BASE SPEED to limit speed in Kinetic mode +#define MOUSEKEY_INITIAL_SPEED 100 // Initial speed of the cursor in pixels per second (default: 100) +//#define MOUSEKEY_BASE_SPEED 800 // (broken in QMK 0.16.0) Maximum cursor speed at which acceleration stops (default: 1000) +#define MOUSEKEY_DECELERATED_SPEED 400 // Decelerated cursor speed (default: 400) +#define MOUSEKEY_ACCELERATED_SPEED 2000 // Accelerated cursor speed (default: 3000) +#define MOUSEKEY_WHEEL_INITIAL_MOVEMENTS 16 // Initial number of movements of the mouse wheel (default: 16) +#define MOUSEKEY_WHEEL_BASE_MOVEMENTS 32 // Maximum number of movements at which acceleration stops (default: 32) +#define MOUSEKEY_WHEEL_ACCELERATED_MOVEMENTS 48 // Accelerated wheel movements (default: 48) +#define MOUSEKEY_WHEEL_DECELERATED_MOVEMENTS 8 // Decelerated wheel movements (default: 8) diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/keymap.c new file mode 100644 index 0000000000..97db98dd12 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/keymap.c @@ -0,0 +1,336 @@ +/* Copyright 2021 Glorious, LLC + Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + +// Note: Several advanced functions referenced in this file (like Tap Dance functions) are defined in users/gourdo1/gourdo1.c + +#include QMK_KEYBOARD_H + +#include "rgb_matrix_map.h" + +#include "gourdo1.h" + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Base Layout + * + * ,-------------------------------------------------------------------------------------------------------------. + * | Esc || F1 | F2 | F3 | F4 || F5 | F6 | F7 | F8 || F9 | F10 | F11 | F12 || Home || Mute | + * |=============================================================================================================| + * | ` ~ | 1 ! | 2 @ | 3 # | 4 $ | 5 % | 6 ^ | 7 & | 8 * | 9 ( | 0 ) | - _ | = + | Backspc || Del | + * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | [ } | ] } | \ | || PgUp | + * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------| + * | Capslock | A | S | D | F | G | H | J | K | L | ; : | ' " | Enter || PgDn | + * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------| + * | LShift | Z | X | C | V | B | N | M | , < | . > | / ? | RShift || Up || End | + * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======| + * | Ctrl | Win | LAlt | Space | RAlt | Fn | Ctrl || Left | Down | Rght | + * `------------------------------------------------------------------------------------------------------------' + */ + + [_BASE] = LAYOUT( + KC_ESCLYR, 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_HOME, KC_MUTE, + KC_GRV, 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_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_BSLS, KC_PGUP, + TT(_NUMPADMOUSE), 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_PGDN, + KC_LSFTCAPSWIN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1),KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + /* FN1 Layout + * + * ,-------------------------------------------------------------------------------------------------------------. + * | Esc ||MyCmp |WbHom | Calc |MdSel ||MdPrv |MdNxt |MdPly |MdStp ||VolDn |VolUp |PrScr |ScrLk ||Pause || ____ | + * |=============================================================================================================| + * | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ | ____ |RGBTOD|RGBTOI| ________ ||RGBTOG| + * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------| + * | ______ |RGBSAD|RGBVAI|RGBSAI| NKRO | ____ |YAHOO | ____ | ____ |OUTLK |Pause | ____ | ____ | Reset || Home | + * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------| + * | Capslock |RGBHUD|RGBVAD|RGBHUI| ____|GMAIL |HTMAIL| ____ | ____ | ____ | ____ | ____ | __________ || End | + * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------| + * | __________ |RGBNIT| ____ | ____ | ____ | ____ |NumLk | ____ | ____ |DOTCOM| ____ | ______ ||RGBMOD|| ____ | + * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======| + * | ____ | WinKyLk | ____ | _____ | ____ | ____ | ____ ||RGBSPD|RGBRMD|RGBSPI| + * `------------------------------------------------------------------------------------------------------------' + */ + + [_FN1] = LAYOUT( + EE_CLR, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_VOLD, KC_VOLU, KC_PSCR, KC_SLCK, KC_PAUS, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOD, RGB_TOI, _______, RGB_TOG, + _______, RGB_SAD, RGB_VAI, RGB_SAI, NK_TOGG, _______, YAHOO, _______, _______, OUTLOOK, KC_PAUS, SWAP_L, SWAP_R, RESET, KC_HOME, + KC_CAPS, RGB_HUD, RGB_VAD, RGB_HUI, _______, GMAIL, HOTMAIL, _______, _______, _______, _______, _______, _______, KC_END, + _______, RGB_NITE,_______, _______, _______, _______, KC_NLCK, _______, _______, DOTCOM, KC_CAD, _______, RGB_MOD, _______, + _______, KC_WINLCK, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI + ), + + /* _NUMPADMOUSE Layout + * Note: A symbol preceded by "P" is a Numpad-encoded version of the key -- any app that differentiates will recognize the char as coming from a physical numpad. + * ,-------------------------------------------------------------------------------------------------------------. + * | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ | ____ | ____ | ____ || ____ || ____ | + * |=============================================================================================================| + * | ____ | P1 | P2 | P3 | P4 | P5 | P6 | P7 | P8 | P9 | P0 | P- | P+ | ________ || ____ | + * |------+------+------+------+------+------+------+------+------+------+------+------+------+----------++------| + * | ______ | PGUP | Up | PGDN | None | None | None | P4 | P5 | P6 | P+ | ____ | ____ | _____ || WhUp | + * |---------+------+------+------+------+------+------+------+------+------+------+------+------+-------++------| + * | ________ | Left | Down | Rght | None| None | None | P1 | P2 | P3 | P* | ____ | P-Enter || WhDn | + * |------------+------+------+------+-----+------+------+------+------+------+------+------|----+========+------| + * | __________ | None | ____ | ____ | ____ | None | None | 0 | 00 | P. | P/ | MBt1 ||MS_UP || MBt2 | + * |--------------+------+------+------+------+------+------+------+------+------+------+--+=====++------++======| + * | ____ | ____ | ____ | _____ | ____ | ____ | MBt3 ||MS_LT |MS_DN |MS_RT | + * `------------------------------------------------------------------------------------------------------------' + */ + + [_NUMPADMOUSE] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_PMNS, KC_PPLS, _______, _______, + _______, KC_PGUP, KC_UP, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, _______, _______, KC_WH_U, + _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_P1, KC_P2, KC_P3, KC_PAST, _______, KC_PENT, KC_WH_D, + _______, KC_NO, _______, _______, _______, KC_NO, KC_NO, KC_P0, KC_00, KC_PDOT, KC_PSLS, KC_BTN1, KC_MS_U, KC_BTN2, + _______, _______, _______, _______, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R + ), + + [_MOUSEKEY] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_U, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_WH_D, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, + _______, _______, _______, _______, _______, _______, KC_BTN3, KC_MS_L, KC_MS_D, KC_MS_R + ), + + #ifdef COLEMAK_LAYER_ENABLE + [_COLEMAK] = LAYOUT( + _______, 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_MUTE, + KC_GRV, 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_HOME, + KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_G, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_LBRC, KC_RBRC, KC_BSLS, KC_PGUP, + _______, KC_A, KC_R, KC_S, KC_T, KC_D, KC_H, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_ENT, KC_PGDN, + _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + _______, _______, _______, KC_SPC, KC_RALT, _______,KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + #endif // COLEMAK_LAYER_ENABLE +}; + +#if defined(ENCODER_ENABLE) && !defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality when not using userspace defaults +void encoder_action_rgbhue(bool clockwise) { + if (clockwise) + rgblight_increase_hue_noeeprom(); + else + rgblight_decrease_hue_noeeprom(); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + uint8_t mods_state = get_mods(); + if (mods_state & MOD_BIT(KC_LSFT)) { // If you are holding L shift, encoder changes layers + encoder_action_layerchange(clockwise); + } else if (mods_state & MOD_BIT(KC_RSFT)) { // If you are holding R shift, Page up/dn + unregister_mods(MOD_BIT(KC_RSFT)); + encoder_action_navpage(clockwise); + register_mods(MOD_BIT(KC_RSFT)); + } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word + encoder_action_navword(clockwise); + } else if (mods_state & MOD_BIT(KC_RCTL)) { // if holding Right Ctrl, change rgb hue/colour + encoder_action_rgbhue(clockwise); + } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track + encoder_action_mediatrack(clockwise); + } else { + switch (get_highest_layer(layer_state)) { + case _FN1: + #ifdef IDLE_TIMEOUT_ENABLE + timeout_update_threshold(clockwise); + #endif + break; + default: + encoder_action_volume(clockwise); // Otherwise it just changes volume + break; + } + } + //return true; //set to return false to counteract enabled encoder in pro.c + return false; +} +#endif // ENCODER_ENABLE && !ENCODER_DEFAULTACTIONS_ENABLE + +#ifdef RGB_MATRIX_ENABLE +// Capslock, Scroll lock and Numlock indicator on Left side lights. +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + if (get_rgb_nightmode()) rgb_matrix_set_color_all(RGB_OFF); + + // Scroll Lock RGB setup + if (IS_HOST_LED_ON(USB_LED_SCROLL_LOCK)) { + rgb_matrix_set_color(LED_L3, RGB_RED); + rgb_matrix_set_color(LED_L4, RGB_RED); + rgb_matrix_set_color(LED_TAB, RGB_RED); + } + + // System NumLock warning indicator RGB setup + #ifdef INVERT_NUMLOCK_INDICATOR + if (!IS_HOST_LED_ON(USB_LED_NUM_LOCK)) { // on if NUM lock is OFF to bring attention to overlay numpad not functional when enabled + rgb_matrix_set_color(LED_GRV, RGB_ORANGE2); + rgb_matrix_set_color(LED_L1, RGB_ORANGE2); + rgb_matrix_set_color(LED_L2, RGB_ORANGE2); + rgb_matrix_set_color(LED_N, RGB_ORANGE2); + rgb_matrix_set_color(LED_FN, RGB_ORANGE2); + } + #else + if (IS_HOST_LED_ON(USB_LED_NUM_LOCK)) { // Normal, on if NUM lock is ON + rgb_matrix_set_color(LED_GRV, RGB_ORANGE2); + rgb_matrix_set_color(LED_L1, RGB_ORANGE2); + rgb_matrix_set_color(LED_L2, RGB_ORANGE2); + rgb_matrix_set_color(LED_N, RGB_ORANGE2); + rgb_matrix_set_color(LED_FN, RGB_ORANGE2); + } + #endif // INVERT_NUMLOCK_INDICATOR + + // CapsLock RGB setup + if (IS_HOST_LED_ON(USB_LED_CAPS_LOCK)) { + for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_LETTERS); i++) { + rgb_matrix_set_color(LED_LIST_LETTERS[i], RGB_CHARTREUSE); + } + rgb_matrix_set_color(LED_L7, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_L8, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_LSFT, RGB_CHARTREUSE); + } + + // Winkey disabled (gaming) mode RGB setup + if (keymap_config.no_gui) { + rgb_matrix_set_color(LED_LWIN, RGB_RED); //light up Winkey red when disabled + rgb_matrix_set_color(LED_W, RGB_CHARTREUSE); //light up gaming keys with WSAD higlighted + rgb_matrix_set_color(LED_S, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_A, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_D, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_Q, RGB_ORANGE2); + rgb_matrix_set_color(LED_E, RGB_ORANGE2); + rgb_matrix_set_color(LED_R, RGB_ORANGE2); + rgb_matrix_set_color(LED_TAB, RGB_ORANGE2); + rgb_matrix_set_color(LED_F, RGB_ORANGE2); + rgb_matrix_set_color(LED_Z, RGB_ORANGE2); + rgb_matrix_set_color(LED_X, RGB_ORANGE2); + rgb_matrix_set_color(LED_C, RGB_ORANGE2); + rgb_matrix_set_color(LED_V, RGB_ORANGE2); + rgb_matrix_set_color(LED_SPC, RGB_ORANGE2); + rgb_matrix_set_color(LED_LCTL, RGB_ORANGE2); + rgb_matrix_set_color(LED_LSFT, RGB_ORANGE2); + } + + // Fn selector mode RGB setup + switch (get_highest_layer(layer_state)) { // special handling per layer + case _FN1: // on Fn layer select what the encoder does when pressed + rgb_matrix_set_color(LED_FN, RGB_RED); //FN key + + //NEW RGB LIGHTING TO RING KEYBOARD ON FN LAYER ACTIVATION: + for (uint8_t j = 0; j < ARRAYSIZE(LED_LIST_FUNCROW); j++) { + rgb_matrix_set_color(LED_LIST_FUNCROW[j], RGB_RED); + } + rgb_matrix_set_color(LED_LCTL, RGB_RED); + rgb_matrix_set_color(LED_LALT, RGB_RED); + rgb_matrix_set_color(LED_SPC, RGB_RED); + rgb_matrix_set_color(LED_LWIN, RGB_RED); + rgb_matrix_set_color(LED_RALT, RGB_RED); + rgb_matrix_set_color(LED_FN, RGB_OFFBLUE); + rgb_matrix_set_color(LED_RCTL, RGB_RED); + rgb_matrix_set_color(LED_BSLS, RGB_RED); + rgb_matrix_set_color(LED_L1, RGB_RED); + rgb_matrix_set_color(LED_L2, RGB_RED); + rgb_matrix_set_color(LED_L3, RGB_RED); + rgb_matrix_set_color(LED_L4, RGB_RED); + rgb_matrix_set_color(LED_L5, RGB_RED); + rgb_matrix_set_color(LED_L6, RGB_RED); + rgb_matrix_set_color(LED_L7, RGB_RED); + rgb_matrix_set_color(LED_L8, RGB_RED); + rgb_matrix_set_color(LED_DOWN, RGB_RED); + rgb_matrix_set_color(LED_LEFT, RGB_RED); + rgb_matrix_set_color(LED_RIGHT, RGB_RED); + rgb_matrix_set_color(LED_R1, RGB_RED); + rgb_matrix_set_color(LED_R2, RGB_RED); + rgb_matrix_set_color(LED_R3, RGB_RED); + rgb_matrix_set_color(LED_R4, RGB_RED); + rgb_matrix_set_color(LED_R5, RGB_RED); + rgb_matrix_set_color(LED_R6, RGB_RED); + rgb_matrix_set_color(LED_R7, RGB_RED); + rgb_matrix_set_color(LED_R8, RGB_RED); + rgb_matrix_set_color(LED_MINS, RGB_OFFBLUE); + rgb_matrix_set_color(LED_EQL, RGB_OFFBLUE); + + // Add RGB Timeout Indicator -- shows 0 to 139 using F row and num row; larger numbers using 16bit code + uint16_t timeout_threshold = get_timeout_threshold(); + if (timeout_threshold <= 10) rgb_matrix_set_color(LED_LIST_FUNCROW[timeout_threshold], RGB_CYAN); + else if (timeout_threshold < 140) { + rgb_matrix_set_color(LED_LIST_FUNCROW[(timeout_threshold / 10)], RGB_CYAN); + rgb_matrix_set_color(LED_LIST_NUMROW[(timeout_threshold % 10)], RGB_CYAN); + } else { // >= 140 minutes, just show these 3 lights + rgb_matrix_set_color(LED_LIST_NUMROW[10], RGB_CYAN); + rgb_matrix_set_color(LED_LIST_NUMROW[11], RGB_CYAN); + rgb_matrix_set_color(LED_LIST_NUMROW[12], RGB_CYAN); + } + break; + + // Numpad & Mouse Keys overlay RGB + case _NUMPADMOUSE: + for (uint8_t i = 0; i < ARRAYSIZE(LED_LIST_NUMPAD); i++) { + rgb_matrix_set_color(LED_LIST_NUMPAD[i], RGB_OFFBLUE); + } + rgb_matrix_set_color(LED_L5, RGB_OFFBLUE); + rgb_matrix_set_color(LED_L6, RGB_OFFBLUE); + rgb_matrix_set_color(LED_CAPS, RGB_OFFBLUE); + rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_RCTL, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_RSFT, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_END, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_PGUP, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_PGDN, RGB_CHARTREUSE); + break; + + // MOUSEKEYS mode RGB + case _MOUSEKEY: + rgb_matrix_set_color(LED_UP, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_DOWN, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_LEFT, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_RIGHT, RGB_CHARTREUSE); + rgb_matrix_set_color(LED_RCTL, RGB_CYAN); + rgb_matrix_set_color(LED_RSFT, RGB_CYAN); + rgb_matrix_set_color(LED_END, RGB_CYAN); + rgb_matrix_set_color(LED_PGUP, RGB_OFFBLUE); + rgb_matrix_set_color(LED_PGDN, RGB_OFFBLUE); + + break; + + // Colemak layer RGB + #ifdef COLEMAK_LAYER_ENABLE + case _COLEMAK: + for (uint8_t i = 0; i < ARRAYSIZE(LED_SIDE_RIGHT); i++) { + rgb_matrix_set_color(LED_SIDE_RIGHT[i], RGB_MAGENTA); + rgb_matrix_set_color(LED_SIDE_LEFT[i], RGB_MAGENTA); + } + break; + #endif + default: + break; + } +} +#endif + +void keyboard_post_init_keymap(void) { + // keyboard_post_init_user() moved to userspace + #ifdef RGB_MATRIX_ENABLE + rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR); + rgb_matrix_sethsv_noeeprom(20, 255, 127); // Default startup color (Hue:amber Saturation:full Value(brightness):mid) + activate_rgb_nightmode(false); // Set to true if you want to startup in nightmode, otherwise use Fn + Z to toggle + #endif +} \ No newline at end of file diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/readme.md b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/readme.md new file mode 100644 index 0000000000..3db6923d76 --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/readme.md @@ -0,0 +1,97 @@ +# gourdo1's GMMK Pro ANSI layout + +This Windows-centric layout is based on [Jonavin's](https://github.com/qmk/qmk_firmware/tree/master/keyboards/gmmk/pro/ansi/keymaps/jonavin) GMMK Pro layout with several additions, modifications, a tweaked keymap, updated layers and expanded RGB controls. + +![image](https://raw.githubusercontent.com/gourdo1/media/main/susuwatari.jpg) + +## Features: + +### Core Functionality + +* [VIA](https://www.caniusevia.com/) support enabled (added Mar 16, 2022) +* Most [default Glorious shortcuts](https://cdn.shopify.com/s/files/1/0549/2681/files/GMMK_Pro_User_Guide.pdf) enabled +* [N-key Rollover](https://en.wikipedia.org/wiki/Rollover_\(keyboard\)#n-key_rollover) (NKRO) -- toggled with FN+R +* Gaming mode (FN + Win-key) locks out Win-key as well as double-tap Shift Capslock; Also RGB highlights WSAD and nearby gaming related keys +* [Caps Word](https://getreuer.info/posts/keyboards/caps-word/index.html) enabled: To capitalize the next word only, press and release both left and right shift keys at the same time. (added Feb 25, 2022) +* Multi-monitor app moving shortcuts: FN + [,] (square brackets) to move current app window to next monitor (added Apr 11, 2022) +* Domain shortcuts: FN+.=".com", FN+O="outlook.com", FN+Y="yahoo.com", FN+H="hotmail.com", FN+G="gmail.com". (added Apr 7, 2022) +* Capslock toggled by double tap of Left Shift key or FN + Capslock (RGB green highlighted) +* Fn-Backslash for [Bootloader mode](https://github.com/qmk/qmk_firmware/blob/master/docs/newbs_flashing.md) +* Home key on F13, Del key right of Backspace +* Insert accessible via Shift-Backspace (so shift delete still works in Windows Explorer) +* PrtScrn, Scroll Lock, Pause/Break are top right on the keyboard: Fn+F11, Fn+F12, Fn+F13 +* [Colemak](https://colemak.com/) key layout support (Layer accessible via Left Shift + turn Encoder clockwise until side LEDs light up purple) +* Double tap ESC any time to revert to base layer (added Feb 26, 2022) + +### Numpad + Mouse Keys (Capslock key) + +* Overlay numpad + [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) are accessed through Capslock key hold (temp) or double press (locked) with RGB highlighting +* This layer disables much of the keyboard, except X/C/V for cut/copy/paste, WASD for cursor, Q/E for PgUp/PgDn, cursor keys become mouse keys, surrounding keys become mouse buttons and all number keys become numpad versions (so Alt char codes work regardless of which set you use) +* Fn & N keys light up orange if system numlock is off (inverted status), indicating numpad keys will not deliver expected output (FN + N to toggle) +* Double zero on comma key. +* [Mouse Keys](https://github.com/qmk/qmk_firmware/blob/master/docs/feature_mouse_keys.md) allow you to use the mouse without taking your hand off the keyboard. (added Mar 15, 2022) +* Mouse controls are: Cursor keys = move mouse; RShift = button1, End = button2, RCtrl = button3, PgUp/PgDn = Scroll wheel +* Mouse Keys can also be accessed as a standalone layer by Left Shift-turning the Encoder until the cursor keys light up green + +### Encoder Functionality + +* Default knob turn changes volume; button press toggles mute +* Exponential encoder - quick repeated volume up doubles increase; quick repeated volume down triples decrease (added Feb 17, 2022) +* FN knob turn changes RGB idle timeout +* holding Left Shift changes layers +* holding Right Shift navigates page up/down +* holding Left Ctrl navigates prev/next word +* holding Right Ctrl changes RGB hue/color +* holding Left Alt changes media prev/next track + +### Global RGB Controls + +* RGB backlight lighting effect: FN + up/down +* RGB backlight effect speed: FN + left/right +* RGB backlight hue cycle: FN + A/D +* RGB backlight brightness: FN + W/S +* RGB backlight saturation: FN + Q/E (added Feb 4, 2022) +* RGB backlight night mode toggle: FN + Z (indicators still work) +* RGB backlight timeout: FN + Encoder or "-" and "=" (default 15 minutes) (updated Apr 7, 2022) + * indicators in FN layer using RGB in F-key and number rows to show the current timeout in minutes +* RGB indicators on left side LEDs: Capslock (green), Scroll Lock (red), and Num Lock not set (orange) +* FN + Z to turn off RGB backlighting; press again to toggle + +### Advanced Controls + +* FN + \ to get to bootloader mode +* FN + [ESC] to clear EEPROM (then unplug and re-plug) (added Apr 11, 2022) +* FN + R to toggle N-key Rollover (added Apr 11, 2022) + +Link to latest firmware binary: https://github.com/gourdo1/media/raw/main/gmmk_pro_ansi_gourdo1.bin + +Link to cheatsheet: https://github.com/gourdo1/media/raw/main/GMMK_Pro_Cheatsheet.pdf + + +## rules.mk Options + +STARTUP_NUMLOCK_ON = yes - turns on NUMLOCK by default + +ENCODER_DEFAULTACTIONS_ENABLE = yes - Enabled default encoder functions + +TD_LSFT_CAPSLOCK_ENABLE = yes - This will enable double tap on Left Shift to toggle CAPSLOCK when using KC_LSFTCAPS + +IDLE_TIMEOUT_ENABLE = yes - Enables Timer functionality; for RGB idle timeouts that can be changed dynamically + +INVERT_NUMLOCK_INDICATOR - inverts the Numlock indicator, LED is on when numlock is off -- numlock interferes with numpad keys, so should generally be off when numpad layer is active. + +COLEMAK_LAYER_ENABLE = yes - Enable optional 5th layer for COLEMAK layout. Use Shift + encoder to enter 5th layer. + + +## Layer Diagrams +### Base layer +![image](https://raw.githubusercontent.com/gourdo1/media/main/base.png) + +### Fn Layer +![image](https://raw.githubusercontent.com/gourdo1/media/main/fn1.png) + +### Layer 2 (Numpad) +![image](https://raw.githubusercontent.com/gourdo1/media/main/numpad.png) + +### COLEMAK layer +![image](https://user-images.githubusercontent.com/71780717/131235050-980d2f54-2d23-4ae8-a83f-9fcdbe60d6cb.png) diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rgb_matrix_map.h b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rgb_matrix_map.h new file mode 100644 index 0000000000..38da50754b --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rgb_matrix_map.h @@ -0,0 +1,287 @@ +/* Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + +#ifdef RGB_MATRIX_ENABLE +// Custom GMMK Pro-specific RGB color customizations (defaults found in quantum/color.h) +#define RGB_GODSPEED 0x00, 0xE4, 0xFF // color for matching keycaps +#define RGB_NAUTILUS 0x00, 0xA4, 0xA9 // Nautilus Font colors +#define RGB_OFFBLUE 0x00, 0x80, 0xFF // new color: blue with a hint of green +#define RGB_DKRED 0x28, 0x00, 0x00 // new color: dark red +#define RGB_ORANGE2 0xFF, 0x28, 0x00 // fix: reduced green from 80 to 28 +#define RGB_PURPLE2 0x80, 0x00, 0xFF // fix: increased red from 7A to 80 +#define RGB_SPRINGGREEN2 0x00, 0xFF, 0x10 // fix: blue was 80, now 10 +#define RGB_YELLOW2 0xFF, 0xB0, 0x00 // fix: green was FF, now B0 +#define RGB_OFF RGB_BLACK + +// Added by gourdo1 for RGB testing +// Red Green Blue Expected GMMK Pro result +#define RGB_TEST1 0xFF, 0x00, 0x00 // Q - red good! +#define RGB_TEST2 0x0F, 0xFF, 0x00 // W - green good! +#define RGB_TEST3 0x00, 0x00, 0xFF // E - blue good! +#define RGB_TEST4 0xFF, 0xB0, 0x00 // R - yellow slightly green heavy - reduced green LED by quite a bit +#define RGB_TEST5 0x00, 0xFF, 0xFF // T - cyan good! +#define RGB_TEST6 0xFF, 0x00, 0xFF // Y - magenta very slightly blue heavy? +#define RGB_TEST7 0xFF, 0x28, 0x00 // U - orange very green heavy at default +#define RGB_TEST8 0xFF, 0x00, 0x80 // I - pink good! +#define RGB_TEST9 0x80, 0xFF, 0x00 // O - chartreus good! +#define RGB_TEST10 0x00, 0xFF, 0x10 // P - springgrn fixed: was too blue because green LED has blue in it already +#define RGB_TEST11 0x00, 0x80, 0xFF // A - grn blue good! +#define RGB_TEST12 0x80, 0x00, 0xFF // S - purple good! + +// RGB LED locations +enum led_location_map { + LED_ESC, // 0, ESC, k13 + LED_GRV, // 1, ~, k16 + LED_TAB, // 2, Tab, k11 + LED_CAPS, // 3, Caps, k21 + LED_LSFT, // 4, Sh_L, k00 + LED_LCTL, // 5, Ct_L, k06 + LED_F1, // 6, F1, k26 + LED_1, // 7, 1, k17 + LED_Q, // 8, Q, k10 + LED_A, // 9, A, k12 + LED_Z, // 10, Z, k14 + LED_LWIN, // 11, Win_L, k90 + LED_F2, // 12, F2, k36 + LED_2, // 13, 2, k27 + LED_W, // 14, W, k20 + LED_S, // 15, S, k22 + LED_X, // 16, X, k24 + LED_LALT, // 17, Alt_L, k93 + LED_F3, // 18, F3, k31 + LED_3, // 19, 3, k37 + LED_E, // 20, E, k30 + LED_D, // 21, D, k32 + LED_C, // 22, C, k34 + LED_F4, // 23, F4, k33 + LED_4, // 24, 4, k47 + LED_R, // 25, R, k40 + LED_F, // 26, F, k42 + LED_V, // 27, V, k44 + LED_F5, // 28, F5, k07 + LED_5, // 29, 5, k46 + LED_T, // 30, T, k41 + LED_G, // 31, G, k43 + LED_B, // 32, B, k45 + LED_SPC, // 33, SPACE, k94 + LED_F6, // 34, F6, k63 + LED_6, // 35, 6, k56 + LED_Y, // 36, Y, k51 + LED_H, // 37, H, k53 + LED_N, // 38, N, k55 + LED_F7, // 39, F7, k71 + LED_7, // 40, 7, k57 + LED_U, // 41, U, k50 + LED_J, // 42, J, k52 + LED_M, // 43, M, k54 + LED_F8, // 44, F8, k76 + LED_8, // 45, 8, k67 + LED_I, // 46, I, k60 + LED_K, // 47, K, k62 + LED_COMM, // 48, ,, k64 + LED_RALT, // 49, Alt_R, k95 + LED_F9, // 50, F9, ka6 + LED_9, // 51, 9, k77 + LED_O, // 52, O, k70 + LED_L, // 53, L, k72 + LED_DOT, // 54, ., k74 + LED_FN, // 55, FN, k92 + LED_F10, // 56, F10, ka7 + LED_0, // 57, 0, k87 + LED_P, // 58, P, k80 + LED_SCLN, // 59, ;, k82 + LED_SLSH, // 60, ?, k85 + LED_F11, // 61, F11, ka3 + LED_MINS, // 62, -, k86 + LED_LBRC, // 63, [, k81 + LED_QUOT, // 64, ", k83 + LED_RCTL, // 65, Ct_R, k04 + LED_F12, // 66, F12, ka5 + LED_L1, // 67, LED, l01 + LED_R1, // 68, LED, l11 + LED_INS, // 69, Prt, k97 -- remapped to INS + LED_L2, // 70, LED, l02 + LED_R2, // 71, LED, l12 + LED_DEL, // 72, Del, k65 + LED_L3, // 73, LED, l03 + LED_R3, // 74, LED, l13 + LED_PGUP, // 75, PgUp, k15 + LED_L4, // 76, LED, l04 + LED_R4, // 77, LED, l14 + LED_EQL, // 78, =, k66 + LED_RIGHT, // 79, Right, k05 + LED_L5, // 80, LED, l05 + LED_R5, // 81, LED, l15 + LED_END, // 82, End, k75 + LED_L6, // 83, LED, l06 + LED_R6, // 84, LED, l16 + LED_BSPC, // 85, BSpc, ka1 + LED_PGDN, // 86, PgDn, k25 + LED_L7, // 87, LED, l07 + LED_R7, // 88, LED, l17 + LED_RBRC, // 89, ], k61 + LED_RSFT, // 90, Sh_R, k91 + LED_L8, // 91, LED, l08 + LED_R8, // 92, LED, l18 + LED_BSLS, // 93, \, ka2 + LED_UP, // 94, Up, k35 + LED_LEFT, // 95, Left, k03 + LED_ENT, // 96, Enter, ka4 + LED_DOWN // 97, Down, k73 +}; + +const uint8_t LED_LIST_WASD[] = { + LED_W, + LED_A, + LED_S, + LED_D +}; + +const uint8_t LED_LIST_ARROWS[] = { + LED_LEFT, + LED_RIGHT, + LED_UP, + LED_DOWN +}; + +const uint8_t LED_LIST_FUNCROW[] = { + LED_ESC, + LED_F1, + LED_F2, + LED_F3, + LED_F4, + LED_F5, + LED_F6, + LED_F7, + LED_F8, + LED_F9, + LED_F10, + LED_F11, + LED_F12, + LED_INS +}; + +const uint8_t LED_LIST_NUMROW[] = { + LED_GRV, + LED_1, + LED_2, + LED_3, + LED_4, + LED_5, + LED_6, + LED_7, + LED_8, + LED_9, + LED_0, + LED_MINS, + LED_EQL, + LED_BSPC, + LED_DEL +}; + +const uint8_t LED_LIST_LETTERS[] = { + LED_1, + LED_2, + LED_3, + LED_4, + LED_5, + LED_6, + LED_7, + LED_8, + LED_9, + LED_0, + LED_Q, + LED_W, + LED_E, + LED_R, + LED_T, + LED_Y, + LED_U, + LED_I, + LED_O, + LED_P, + LED_A, + LED_S, + LED_D, + LED_F, + LED_G, + LED_H, + LED_J, + LED_K, + LED_L, + LED_Z, + LED_X, + LED_C, + LED_V, + LED_B, + LED_N, + LED_M +}; + +const uint8_t LED_LIST_NUMPAD[] = { + LED_1, + LED_2, + LED_3, + LED_4, + LED_5, + LED_6, + LED_7, + LED_8, + LED_9, + LED_0, + LED_MINS, + LED_EQL, + LED_U, + LED_I, + LED_O, + LED_P, + LED_J, + LED_K, + LED_L, + LED_SCLN, + LED_ENT, + LED_M, + LED_COMM, + LED_DOT, + LED_SLSH, + LED_END, + LED_RIGHT +}; + +const uint8_t LED_SIDE_LEFT[] = { + LED_L1, + LED_L2, + LED_L3, + LED_L4, + LED_L5, + LED_L6, + LED_L7, + LED_L8 +}; + +const uint8_t LED_SIDE_RIGHT[] = { + LED_R1, + LED_R2, + LED_R3, + LED_R4, + LED_R5, + LED_R6, + LED_R7, + LED_R8 +}; + +#endif \ No newline at end of file diff --git a/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rules.mk b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rules.mk new file mode 100644 index 0000000000..b236d9132c --- /dev/null +++ b/keyboards/gmmk/pro/ansi/keymaps/gourdo1/rules.mk @@ -0,0 +1,18 @@ +SRC += caps_word.c + +LTO_ENABLE = yes # link time optimization -- achieves a smaller compiled size +CONSOLE_ENABLE = no +COMMAND_ENABLE = no +MOUSEKEY_ENABLE = yes + +VIA_ENABLE = yes +TAP_DANCE_ENABLE = yes +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite + +TD_LSFT_CAPSLOCK_ENABLE = yes +IDLE_TIMEOUT_ENABLE = yes +STARTUP_NUMLOCK_ON = yes +ENCODER_DEFAULTACTIONS_ENABLE = no + +COLEMAK_LAYER_ENABLE = yes # Enable Colemak layer / set to no to disable +INVERT_NUMLOCK_INDICATOR = yes diff --git a/users/gourdo1/gourdo1.c b/users/gourdo1/gourdo1.c new file mode 100644 index 0000000000..b964729be9 --- /dev/null +++ b/users/gourdo1/gourdo1.c @@ -0,0 +1,432 @@ +/* Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + +#include QMK_KEYBOARD_H + +#include "gourdo1.h" + +#include "caps_word.h" + +#ifdef TD_LSFT_CAPSLOCK_ENABLE +// Tap once for shift, twice for Caps Lock but only if Win Key in not disabled +void dance_LSFT_each_tap(qk_tap_dance_state_t * state, void * user_data) { + if (state -> count == 1 || keymap_config.no_gui) { + register_code16(KC_LSFT); + } else { + register_code(KC_CAPS); + } +} + +void dance_LSFT_reset(qk_tap_dance_state_t * state, void * user_data) { + if (state -> count == 1 || keymap_config.no_gui) { + unregister_code16(KC_LSFT); + } else { + unregister_code(KC_CAPS); + unregister_code16(KC_LSFT); + } +} +// Tap Dance definitions +qk_tap_dance_action_t tap_dance_actions[] = { + // Tap once for shift, twice for Caps Lock + [TD_LSFT_CAPSLOCK] = ACTION_TAP_DANCE_DOUBLE(KC_LSFT, KC_CAPS), + [TD_LSFT_CAPS_WIN] = ACTION_TAP_DANCE_FN_ADVANCED(dance_LSFT_each_tap, NULL, dance_LSFT_reset), + // Tap once for Escape, twice to reset to base layer + [TD_ESC_BASELYR] = ACTION_TAP_DANCE_DUAL_ROLE(KC_ESC, _BASE), +}; +#endif // TD_LSFT_CAPSLOCK_ENABLE + +// RGB NIGHT MODE +#ifdef RGB_MATRIX_ENABLE +static bool rgb_nightmode = false; + +// Turn on/off NUM LOCK if current state is different +void activate_rgb_nightmode(bool turn_on) { + if (rgb_nightmode != turn_on) { + rgb_nightmode = !rgb_nightmode; + } +} + +bool get_rgb_nightmode(void) { + return rgb_nightmode; +} +#endif // RGB_MATRIX_ENABLE + +// TIMEOUTS +#ifdef IDLE_TIMEOUT_ENABLE +static uint16_t timeout_timer = 0; +static uint16_t timeout_counter = 0; //in minute intervals +static uint16_t timeout_threshold = TIMEOUT_THRESHOLD_DEFAULT; + +uint16_t get_timeout_threshold(void) { + return timeout_threshold; +} + +void timeout_reset_timer(void) { + timeout_timer = timer_read(); + timeout_counter = 0; +}; + +void timeout_update_threshold(bool increase) { + if (increase && timeout_threshold < TIMEOUT_THRESHOLD_MAX) timeout_threshold++; + if (!increase && timeout_threshold > 0) timeout_threshold--; +}; + +void timeout_tick_timer(void) { + if (timeout_threshold > 0) { + if (timer_elapsed(timeout_timer) >= 60000) { // 1 minute tick + timeout_counter++; + timeout_timer = timer_read(); + } + #ifdef RGB_MATRIX_ENABLE + if (timeout_threshold > 0 && timeout_counter >= timeout_threshold) { + rgb_matrix_disable_noeeprom(); + } + #endif + } // timeout_threshold = 0 will disable timeout +} + +#endif // IDLE_TIMEOUT_ENABLE + +#if defined(ALTTAB_SCROLL_ENABLE) || defined(IDLE_TIMEOUT_ENABLE) // timer features +__attribute__((weak)) void matrix_scan_keymap(void) {} + +void matrix_scan_user(void) { + #ifdef ALTTAB_SCROLL_ENABLE + encoder_tick_alttabscroll(); + #endif + #ifdef IDLE_TIMEOUT_ENABLE + timeout_tick_timer(); + #endif + matrix_scan_keymap(); +} +#endif // ALTTAB_SCROLL_ENABLE or IDLE_TIMEOUT_ENABLE + +// Initialize variable holding the binary representation of active modifiers. +uint8_t mod_state; + +// ============================================= PROCESS KEY CODES ============================================= + +__attribute__((weak)) bool process_record_keymap(uint16_t keycode, keyrecord_t * record) { + return true; +} + +bool process_record_user(uint16_t keycode, keyrecord_t * record) { + mod_state = get_mods(); + if (!process_record_keymap(keycode, record)) { + return false; + } + + if (!process_caps_word(keycode, record)) { + return false; + } + + // Your macros ... + switch (keycode) { + + // DotCom domain macros + case DOTCOM: + if (record -> event.pressed) { + SEND_STRING(".com"); + } else { + // when keycode is released + } + break; + case YAHOO: + if (record -> event.pressed) { + SEND_STRING("yahoo.com"); + } else { + // when keycode is released + } + break; + case OUTLOOK: + if (record -> event.pressed) { + SEND_STRING("outlook.com"); + } else { + // when keycode is released + } + break; + case GMAIL: + if (record -> event.pressed) { + SEND_STRING("gmail.com"); + } else { + // when keycode is released + } + break; + case HOTMAIL: + if (record -> event.pressed) { + SEND_STRING("hotmail.com"); + } else { + // when keycode is released + } + break; + +/* + case YAHOO: + if (record -> event.pressed) SEND_STRING("yahoo.com"); + else unregister_code16(keycode); + break; + case OUTLOOK: + if (record -> event.pressed) SEND_STRING("outlook.com"); + else unregister_code16(keycode); + break; + case GMAIL: + if (record -> event.pressed) SEND_STRING("gmail.com"); + else unregister_code16(keycode); + break; + case HOTMAIL: + if (record -> event.pressed) { + SEND_STRING("hotmail.com"); + } else unregister_code16(keycode); + break; + case DOTCOM: + if (record -> event.pressed) SEND_STRING(".com"); + else unregister_code16(keycode); + break; +*/ + + // Windows key lock + case KC_WINLCK: + if (record -> event.pressed) { + keymap_config.no_gui = !keymap_config.no_gui; //toggle status + } else unregister_code16(keycode); + break; + + // Double Zero + case KC_00: + if (record -> event.pressed) { + // when keycode KC_00 is pressed + SEND_STRING("00"); + } else unregister_code16(keycode); + break; + + // Treat Control+Space as if regular Space + case KC_SPC: { + // Initialize a boolean variable that keeps track of the space key status: registered or not? + static bool spckey_registered; + if (record -> event.pressed) { + // Detect the activation of either ctrl keys + if (mod_state & MOD_MASK_CTRL) { + // First temporarily canceling both ctrls so that + // ctrl isn't applied to the KC_SPC keycode + del_mods(MOD_MASK_CTRL); + register_code(KC_SPC); + // Update the boolean variable to reflect the status of KC_SPC + spckey_registered = true; + // Reapplying modifier state so that the held ctrl key(s) + // still work even after having tapped the Space key. + set_mods(mod_state); + return false; + } + } else { // on release of KC_SPC + // In case KC_SPC is still being sent even after the release of KC_SPC + if (spckey_registered) { + unregister_code(KC_SPC); + spckey_registered = false; + return false; + } + } + } + break; + + // Treat Shift+Space as if regular Space + case KC_SHIFTSPC: { + // Initialize a boolean variable that keeps track of the space key status: registered or not? + static bool spc2key_registered; + if (record -> event.pressed) { + // Detect the activation of either shift keys + if (mod_state & MOD_MASK_SHIFT) { + // First temporarily canceling both shifts so that + // shift isn't applied to the KC_SPC keycode + del_mods(MOD_MASK_SHIFT); + register_code(KC_SPC); + // Update the boolean variable to reflect the status of KC_SPC + spc2key_registered = true; + // Reapplying modifier state so that the held shift key(s) + // still work even after having tapped the Space key. + set_mods(mod_state); + return false; + } + } else { // on release of KC_SPC + // In case KC_SPC is still being sent even after the release of KC_SPC + if (spc2key_registered) { + unregister_code(KC_SPC); + spc2key_registered = false; + return false; + } + } + } + break; + + // Add INS as SHIFT-modified BackSpace key + case KC_BSPC: { + // Initialize a boolean variable that keeps track of the delete key status: registered or not? + static bool inskey_registered; + if (record -> event.pressed) { + // Detect the activation of either shift keys + if (mod_state & MOD_MASK_SHIFT) { + // First temporarily canceling both shifts so that + // shift isn't applied to the KC_INS keycode + del_mods(MOD_MASK_SHIFT); + register_code(KC_INS); + // Update the boolean variable to reflect the status of KC_INS + inskey_registered = true; + // Reapplying modifier state so that the held shift key(s) + // still work even after having tapped the Delete/Insert key. + set_mods(mod_state); + return false; + } + } else { // on release of KC_BSPC + // In case KC_INS is still being sent even after the release of KC_BSPC + if (inskey_registered) { + unregister_code(KC_INS); + inskey_registered = false; + return false; + } + } + } + break; + + /* Add INS as SHIFT-modified DEL key + case KC_DEL: { + // Initialize a boolean variable that keeps track of the delete key status: registered or not? + static bool inskey_registered; + if (record->event.pressed) { + // Detect the activation of either shift keys + if (mod_state & MOD_MASK_SHIFT) { + // First temporarily canceling both shifts so that + // shift isn't applied to the KC_INS keycode + del_mods(MOD_MASK_SHIFT); + register_code(KC_INS); + // Update the boolean variable to reflect the status of KC_INS + inskey_registered = true; + // Reapplying modifier state so that the held shift key(s) + // still work even after having tapped the Delete/Insert key. + set_mods(mod_state); + return false; + } + } else { // on release of KC_DEL + // In case KC_INS is still being sent even after the release of KC_DEL + if (inskey_registered) { + unregister_code(KC_INS); + inskey_registered = false; + return false; + } + } + } + break; + */ + + #ifdef IDLE_TIMEOUT_ENABLE + case RGB_TOI: + if (record -> event.pressed) { + timeout_update_threshold(true); + } else unregister_code16(keycode); + break; + case RGB_TOD: + if (record -> event.pressed) { + timeout_update_threshold(false); //decrease timeout + } else unregister_code16(keycode); + break; + #endif // IDLE_TIMEOUT_ENABLE + #ifdef RGB_MATRIX_ENABLE + case RGB_NITE: + if (record -> event.pressed) { + rgb_nightmode = !rgb_nightmode; + } else unregister_code16(keycode); + break; + #endif // RGB_MATRIX_ENABLE + + #ifdef EMOTICON_ENABLE + case EMO_SHRUG: + if (record -> event.pressed) SEND_STRING("`\\_(\"/)_/`"); + else unregister_code16(keycode); + break; + case EMO_CONFUSE: + if (record -> event.pressed) SEND_STRING("(*_*)"); + else unregister_code16(keycode); + break; + case EMO_TEARS: + if (record -> event.pressed) SEND_STRING("(T_T)"); + else unregister_code16(keycode); + break; + case EMO_NERVOUS: + if (record -> event.pressed) SEND_STRING("(~_~;)"); + else unregister_code16(keycode); + break; + case EMO_JOY: + if (record -> event.pressed) SEND_STRING("(^o^)"); + else unregister_code16(keycode); + break; + case EMO_SAD: + if (record -> event.pressed) SEND_STRING(":'-("); + else unregister_code16(keycode); + break; + #endif // EMOTICON_ENABLE + + #ifdef ALTTAB_SCROLL_ENABLE + case KC_TSTOG: + if (record -> event.pressed) encoder_toggle_alttabscroll(); + else unregister_code16(keycode); + break; + #endif // ALTTAB_SCROLL_ENABLE + + default: + if (record -> event.pressed) { + #ifdef RGB_MATRIX_ENABLE + rgb_matrix_enable(); + #endif + #ifdef IDLE_TIMEOUT_ENABLE + timeout_reset_timer(); //reset activity timer + #endif + } + break; + } + return true; +}; + +uint16_t get_tapping_term(uint16_t keycode, keyrecord_t * record) { + switch (keycode) { + case KC_SFTUP: + return 300; + case KC_RAISESPC: + case KC_LOWERSPC: + return 450; + default: + return TAPPING_TERM; + } +} + +// Turn on/off NUM LOCK if current state is different +void activate_numlock(bool turn_on) { + if (IS_HOST_LED_ON(USB_LED_NUM_LOCK) != turn_on) { + tap_code(KC_NUMLOCK); + } +} + +// INITIAL STARTUP + +__attribute__((weak)) void keyboard_post_init_keymap(void) {} + +void keyboard_post_init_user(void) { + keyboard_post_init_keymap(); + #ifdef STARTUP_NUMLOCK_ON + activate_numlock(true); // turn on Num lock by default so that the numpad layer always has predictable results + #endif // STARTUP_NUMLOC_ON + #ifdef IDLE_TIMEOUT_ENABLE + timeout_timer = timer_read(); // set inital time for ide timeout + #endif +} \ No newline at end of file diff --git a/users/gourdo1/gourdo1.h b/users/gourdo1/gourdo1.h new file mode 100644 index 0000000000..c6861ca0ca --- /dev/null +++ b/users/gourdo1/gourdo1.h @@ -0,0 +1,131 @@ +/* Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + +#pragma once + +// DEFINE MACROS +#define ARRAYSIZE(arr) sizeof(arr) / sizeof(arr[0]) + +// LAYERS +enum custom_user_layers { + _BASE, + _FN1, + _NUMPADMOUSE, + _MOUSEKEY, +}; + +#define KC_CAD LALT(LCTL(KC_DEL)) +#define KC_AF4 LALT(KC_F4) +#define KC_TASK LCTL(LSFT(KC_ESC)) +#define CT_PGUP RCTL(KC_PGUP) +#define CT_PGDN RCTL(KC_PGDN) +#define CT_HOME RCTL(KC_HOME) +#define CT_END RCTL(KC_END) +#define KC_SFTUP RSFT_T(KC_UP) // Shift when held, Up arrow when tapped +#define KC_RAISESPC LT(_MOUSEKEY, KC_SPC) // _MOUSEKEY layer mod when held, space when tapped +#define KC_LOWERSPC LT(_NUMPADMOUSE, KC_SPC) // _NUMPAD-MOUSE layer mod when held, space when tapped +#define KC_SHIFTSPC LSFT(KC_SPC) +#define SWAP_L SGUI(KC_LEFT) // Swap application to left display +#define SWAP_R SGUI(KC_RGHT) // Swap application to right display + +// KEYCODES +enum custom_user_keycodes { + KC_00 = SAFE_RANGE, + ENCFUNC, + KC_WINLCK, // Toggles Win key on and off + RGB_TOI, // Timeout idle time up + RGB_TOD, // Timeout idle time down + RGB_NITE, // Turns off all rgb but allow rgb indicators to work + + YAHOO, // yahoo.com + OUTLOOK, // outlook.com + GMAIL, // gmail.com + HOTMAIL, // hotmail.com + DOTCOM, // .com + + EMO_SHRUG, // `\_("/)_/` + EMO_CONFUSE, // (*_*) + EMO_SAD, // :'-( + EMO_NERVOUS, // (~_~;) + EMO_JOY, // (^o^) + EMO_TEARS, // (T_T) + + KC_TSTOG, // Tab Scroll Toggle + + NEW_SAFE_RANGE // new safe range for keymap level custom keycodes +}; + +#ifdef TD_LSFT_CAPSLOCK_ENABLE +// Tap Dance Definitions +enum custom_tapdance { + TD_LSFT_CAPSLOCK, + TD_LSFT_CAPS_WIN, + TD_ESC_BASELYR +}; +#define KC_LSFTCAPS TD(TD_LSFT_CAPSLOCK) +#define KC_LSFTCAPSWIN TD(TD_LSFT_CAPS_WIN) +#define KC_ESCLYR TD(TD_ESC_BASELYR) +#else // regular Shift +#define KC_LSFTCAPS KC_LSFT +// regular Escape +#define KC_ESCLYR KC_ESC +#endif // TD_LSFT_CAPSLOCK_ENABLE + +// ENCODER ACTIONS +#ifdef ENCODER_ENABLE +void encoder_action_volume(bool clockwise); +void encoder_action_mediatrack(bool clockwise); +void encoder_action_navword(bool clockwise); +void encoder_action_navpage(bool clockwise); + +uint8_t get_selected_layer(void); +void encoder_action_layerchange(bool clockwise); + +#if defined(RGB_MATRIX_ENABLE) || defined(RGBLIGHT_ENABLE) +void encoder_action_rgb_speed(bool clockwise); +void encoder_action_rgb_hue(bool clockwise); +void encoder_action_rgb_saturation(bool clockwise); +void encoder_action_rgb_brightness(bool clockwise); +void encoder_action_rgb_mode(bool clockwise); +#endif // RGB_MATRIX_ENABLE / RGBLIGHT_ENABLE + +#ifdef ALTTAB_SCROLL_ENABLE +void encoder_action_alttabscroll(bool clockwise); +void encoder_toggle_alttabscroll(void); +void encoder_tick_alttabscroll(void); +#endif // ALTTAB_SCROLL_ENABLE +#endif // ENCODER_ENABLE + +#ifdef RGB_MATRIX_ENABLE +void activate_rgb_nightmode(bool turn_on); +bool get_rgb_nightmode(void); +#endif + +// IDLE TIMEOUTS +#ifdef IDLE_TIMEOUT_ENABLE +#define TIMEOUT_THRESHOLD_DEFAULT 15 // default timeout minutes +#define TIMEOUT_THRESHOLD_MAX 140 // upper limits (2 hours and 10 minutes -- no rgb indicators above this value) + +//prototype functions +uint16_t get_timeout_threshold(void); +void timeout_reset_timer(void); +void timeout_update_threshold(bool increase); +void timeout_tick_timer(void); +#endif //IDLE_TIMEOUT_ENABLE + +// OTHER FUNCTION PROTOTYPE +void activate_numlock(bool turn_on); \ No newline at end of file diff --git a/users/gourdo1/gourdo1_encoder.c b/users/gourdo1/gourdo1_encoder.c new file mode 100644 index 0000000000..72f8c3c354 --- /dev/null +++ b/users/gourdo1/gourdo1_encoder.c @@ -0,0 +1,238 @@ +/* Copyright 2021 Jonavin Eng @Jonavin + Copyright 2022 gourdo1 + +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 . +*/ + + +#include QMK_KEYBOARD_H +#include "gourdo1.h" + +#ifdef ENCODER_ENABLE + #ifndef DYNAMIC_KEYMAP_LAYER_COUNT + #define DYNAMIC_KEYMAP_LAYER_COUNT 4 //default in case this is not already defined elsewhere + #endif + #ifndef ENCODER_DEFAULTACTIONS_INDEX + #define ENCODER_DEFAULTACTIONS_INDEX 0 // can select encoder index if there are multiple encoders + #endif + + static uint16_t key_timer; + + void encoder_action_volume(bool clockwise) { + if (clockwise) { + tap_code(KC_VOLU); + if (timer_elapsed(key_timer) < 50) { + tap_code(KC_VOLU); // if less than 50ms have passed, hit vol up again. + key_timer = timer_read(); + } else { + key_timer = timer_read(); + // do nothing if 50ms or more have passed + } + } + else { + tap_code(KC_VOLD); + if (timer_elapsed(key_timer) < 100) { + tap_code(KC_VOLD); // if less than 100ms have passed, hit vol down twice. + tap_code(KC_VOLD); + key_timer = timer_read(); + } else { + key_timer = timer_read(); + // do nothing if 100ms or more have passed + } + } + } + + void encoder_action_mediatrack(bool clockwise) { + if (clockwise) + tap_code(KC_MEDIA_NEXT_TRACK); + else + tap_code(KC_MEDIA_PREV_TRACK); + } + + void encoder_action_navword(bool clockwise) { + if (clockwise) + tap_code16(LCTL(KC_RGHT)); + else + tap_code16(LCTL(KC_LEFT)); + } + + void encoder_action_navpage(bool clockwise) { + if (clockwise) + tap_code16(KC_PGUP); + else + tap_code16(KC_PGDN); + } + + // LAYER HANDLING + uint8_t selected_layer = 0; + + uint8_t get_selected_layer(void) { + return selected_layer; + } + + void encoder_action_layerchange(bool clockwise) { + if (clockwise) { + if(selected_layer < (DYNAMIC_KEYMAP_LAYER_COUNT - 1)) { + selected_layer ++; + layer_move(selected_layer); + } + } else { + if (selected_layer > 0) { + selected_layer --; + layer_move(selected_layer); + } + } + } + + #ifdef RGB_MATRIX_ENABLE + void encoder_action_rgb_speed(bool clockwise) { + if (clockwise) + rgb_matrix_increase_speed_noeeprom(); + else + rgb_matrix_decrease_speed_noeeprom(); + } + void encoder_action_rgb_hue(bool clockwise) { + if (clockwise) + rgb_matrix_increase_hue_noeeprom(); + else + rgb_matrix_decrease_hue_noeeprom(); + } + void encoder_action_rgb_saturation(bool clockwise) { + if (clockwise) + rgb_matrix_increase_sat_noeeprom(); + else + rgb_matrix_decrease_sat_noeeprom(); + } + void encoder_action_rgb_brightness(bool clockwise) { + if (clockwise) + rgb_matrix_increase_val_noeeprom(); + else + rgb_matrix_decrease_val_noeeprom(); + } + void encoder_action_rgb_mode(bool clockwise) { + if (clockwise) + rgb_matrix_step_noeeprom(); + else + rgb_matrix_step_reverse_noeeprom(); + } + #elif defined(RGBLIGHT_ENABLE) + void encoder_action_rgb_speed(bool clockwise) { + if (clockwise) + rgblight_increase_speed_noeeprom(); + else + rgblight_decrease_speed_noeeprom(); + } + void encoder_action_rgb_hue(bool clockwise) { + if (clockwise) + rgblight_increase_hue_noeeprom(); + else + rgblight_decrease_hue_noeeprom(); + } + void encoder_action_rgb_saturation(bool clockwise) { + if (clockwise) + rgblight_increase_sat_noeeprom(); + else + rgblight_decrease_sat_noeeprom(); + } + void encoder_action_rgb_brightness(bool clockwise) { + if (clockwise) + rgblight_increase_val_noeeprom(); + else + rgblight_decrease_val_noeeprom(); + } + void encoder_action_rgb_mode(bool clockwise) { + if (clockwise) + rgblight_step_noeeprom(); + else + rgblight_step_reverse_noeeprom(); + } + #endif // RGB_MATRIX_ENABLE || RGBLIGHT_ENABLE + + #ifdef ALTTAB_SCROLL_ENABLE + bool is_tab_scrolling = false; + bool is_alt_tab_active = false; + uint16_t alt_tab_timer = 0; + + + void encoder_toggle_alttabscroll(void) { + is_tab_scrolling = !is_tab_scrolling; + } + + void encoder_action_alttabscroll(bool clockwise) { + if (clockwise) { + if (!is_alt_tab_active) { + is_alt_tab_active = true; + register_mods(MOD_RALT); + } + tap_code16(KC_TAB); + } + else { + tap_code16(S(KC_TAB)); + } + alt_tab_timer = timer_read(); + } + + void encoder_tick_alttabscroll(void) { + if (is_alt_tab_active) { + if (timer_elapsed(alt_tab_timer) > 600) { + unregister_mods(MOD_RALT); + is_alt_tab_active = false; + } + } + } + #endif // ALTTAB_SCROLL_ENABLE +#endif // ENCODER_ENABLE + +#if defined(ENCODER_ENABLE) && defined(ENCODER_DEFAULTACTIONS_ENABLE) // Encoder Functionality + + __attribute__((weak)) bool encoder_update_keymap(uint8_t index, bool clockwise) { return true; } + + bool encoder_update_user(uint8_t index, bool clockwise) { + if (!encoder_update_keymap(index, clockwise)) { return false; } + if (index != ENCODER_DEFAULTACTIONS_INDEX) {return true;} // exit if the index doesn't match + uint8_t mods_state = get_mods(); + if (mods_state & MOD_BIT(KC_LSFT) ) { // If you are holding L shift, encoder changes layers + encoder_action_layerchange(clockwise); + } else if (mods_state & MOD_BIT(KC_RSFT) ) { // If you are holding R shift, Page up/dn + unregister_mods(MOD_BIT(KC_RSFT)); + encoder_action_navpage(clockwise); + register_mods(MOD_BIT(KC_RSFT)); + } else if (mods_state & MOD_BIT(KC_LCTL)) { // if holding Left Ctrl, navigate next/prev word + encoder_action_navword(clockwise); + } else if (mods_state & MOD_BIT(KC_LALT)) { // if holding Left Alt, change media next/prev track + encoder_action_mediatrack(clockwise); + } else { + switch(get_highest_layer(layer_state)) { + case _FN1: + #ifdef IDLE_TIMEOUT_ENABLE + timeout_update_threshold(clockwise); + #endif + break; + default: + #ifdef ALTTAB_SCROLL_ENABLE + if (is_tab_scrolling) + encoder_action_alttabscroll(clockwise); + else + encoder_action_volume(clockwise); // Otherwise it just changes volume + #else + encoder_action_volume(clockwise); // Otherwise it just changes volume + #endif // ALTTAB_SCROLL_ENABLE + break; + } + } + return false; + } +#endif // ENCODER_ENABLE + + diff --git a/users/gourdo1/rules.mk b/users/gourdo1/rules.mk new file mode 100644 index 0000000000..e02f9e8e08 --- /dev/null +++ b/users/gourdo1/rules.mk @@ -0,0 +1,29 @@ +SRC += gourdo1.c +ifdef ENCODER_ENABLE + # include encoder related code when enabled + ifeq ($(strip $(ENCODER_DEFAULTACTIONS_ENABLE)), yes) + OPT_DEFS += -DENCODER_DEFAULTACTIONS_ENABLE + endif + ifeq ($(strip $(ALTTAB_SCROLL_ENABLE)), yes) + OPT_DEFS += -DALTTAB_SCROLL_ENABLE + endif + SRC += gourdo1_encoder.c +endif +ifeq ($(strip $(TD_LSFT_CAPSLOCK_ENABLE)), yes) + OPT_DEFS += -DTD_LSFT_CAPSLOCK_ENABLE +endif +ifeq ($(strip $(IDLE_TIMEOUT_ENABLE)), yes) + OPT_DEFS += -DIDLE_TIMEOUT_ENABLE +endif +ifeq ($(strip $(STARTUP_NUMLOCK_ON)), yes) + OPT_DEFS += -DSTARTUP_NUMLOCK_ON +endif +ifeq ($(strip $(COLEMAK_LAYER_ENABLE)), yes) + OPT_DEFS += -DCOLEMAK_LAYER_ENABLE +endif +ifeq ($(strip $(EMOTICON_ENABLE)), yes) + OPT_DEFS += -DEMOTICON_ENABLE +endif +ifeq ($(strip $(INVERT_NUMLOCK_INDICATOR)), yes) + OPT_DEFS += -DINVERT_NUMLOCK_INDICATOR +endif From 9056775e2050cc95abe888b93135dfdc8ef86609 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Tue, 19 Apr 2022 04:18:28 -0700 Subject: [PATCH 300/699] Add hacky via support for RGB Matrix (#16086) --- keyboards/moonlander/config.h | 1 - quantum/via.c | 108 +++++++++++++++++++++++++++++++++- 2 files changed, 105 insertions(+), 4 deletions(-) diff --git a/keyboards/moonlander/config.h b/keyboards/moonlander/config.h index bd06c5006d..9930e64063 100644 --- a/keyboards/moonlander/config.h +++ b/keyboards/moonlander/config.h @@ -159,7 +159,6 @@ # define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 16383 # define DYNAMIC_KEYMAP_LAYER_COUNT 8 #endif -#define VIA_QMK_RGBLIGHT_ENABLE #define AUDIO_PIN A5 #define AUDIO_PIN_ALT A4 diff --git a/quantum/via.c b/quantum/via.c index 05ab799cbb..320bd5546d 100644 --- a/quantum/via.c +++ b/quantum/via.c @@ -38,6 +38,10 @@ # define VIA_QMK_RGBLIGHT_ENABLE #endif +#if defined(RGB_MATRIX_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) +# define VIA_QMK_RGB_MATRIX_ENABLE +#endif + #include "quantum.h" #include "via.h" @@ -59,6 +63,12 @@ void via_qmk_rgblight_set_value(uint8_t *data); void via_qmk_rgblight_get_value(uint8_t *data); #endif +#if defined(VIA_QMK_RGB_MATRIX_ENABLE) +void via_qmk_rgb_matrix_set_value(uint8_t *data); +void via_qmk_rgb_matrix_get_value(uint8_t *data); +void eeconfig_update_rgb_matrix(void); +#endif + // Can be called in an overriding via_init_kb() to test if keyboard level code usage of // EEPROM is invalid and use/save defaults. bool via_eeprom_is_valid(void) { @@ -287,10 +297,13 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { #if defined(VIA_QMK_RGBLIGHT_ENABLE) via_qmk_rgblight_set_value(command_data); #endif +#if defined(VIA_QMK_RGB_MATRIX_ENABLE) + via_qmk_rgb_matrix_set_value(command_data); +#endif #if defined(VIA_CUSTOM_LIGHTING_ENABLE) raw_hid_receive_kb(data, length); #endif -#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) +#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) && !defined(VIA_QMK_RGB_MATRIX_ENABLE) // Return the unhandled state *command_id = id_unhandled; #endif @@ -303,10 +316,13 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { #if defined(VIA_QMK_RGBLIGHT_ENABLE) via_qmk_rgblight_get_value(command_data); #endif +#if defined(VIA_QMK_RGB_MATRIX_ENABLE) + via_qmk_rgb_matrix_get_value(command_data); +#endif #if defined(VIA_CUSTOM_LIGHTING_ENABLE) raw_hid_receive_kb(data, length); #endif -#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) +#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) && !defined(VIA_QMK_RGB_MATRIX_ENABLE) // Return the unhandled state *command_id = id_unhandled; #endif @@ -319,10 +335,13 @@ void raw_hid_receive(uint8_t *data, uint8_t length) { #if defined(VIA_QMK_RGBLIGHT_ENABLE) eeconfig_update_rgblight_current(); #endif +#if defined(VIA_QMK_RGB_MATRIX_ENABLE) + eeconfig_update_rgb_matrix(); +#endif #if defined(VIA_CUSTOM_LIGHTING_ENABLE) raw_hid_receive_kb(data, length); #endif -#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) +#if !defined(VIA_QMK_BACKLIGHT_ENABLE) && !defined(VIA_QMK_RGBLIGHT_ENABLE) && !defined(VIA_CUSTOM_LIGHTING_ENABLE) && !defined(VIA_QMK_RGB_MATRIX_ENABLE) // Return the unhandled state *command_id = id_unhandled; #endif @@ -495,3 +514,86 @@ void via_qmk_rgblight_set_value(uint8_t *data) { } #endif // #if defined(VIA_QMK_RGBLIGHT_ENABLE) + +#if defined(VIA_QMK_RGB_MATRIX_ENABLE) + +// VIA supports only 4 discrete values for effect speed; map these to some +// useful speed values for RGB Matrix. +enum speed_values { + RGBLIGHT_SPEED_0 = UINT8_MAX / 16, // not 0 to avoid really slow effects + RGBLIGHT_SPEED_1 = UINT8_MAX / 4, + RGBLIGHT_SPEED_2 = UINT8_MAX / 2, // matches the default value + RGBLIGHT_SPEED_3 = UINT8_MAX / 4 * 3, // UINT8_MAX is really fast +}; + +static uint8_t speed_from_rgblight(uint8_t rgblight_speed) { + switch (rgblight_speed) { + case 0: + return RGBLIGHT_SPEED_0; + case 1: + return RGBLIGHT_SPEED_1; + case 2: + default: + return RGBLIGHT_SPEED_2; + case 3: + return RGBLIGHT_SPEED_3; + } +} + +static uint8_t speed_to_rgblight(uint8_t rgb_matrix_speed) { + if (rgb_matrix_speed < ((RGBLIGHT_SPEED_0 + RGBLIGHT_SPEED_1) / 2)) { + return 0; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_1 + RGBLIGHT_SPEED_2) / 2)) { + return 1; + } else if (rgb_matrix_speed < ((RGBLIGHT_SPEED_2 + RGBLIGHT_SPEED_3) / 2)) { + return 2; + } else { + return 3; + } +} + +void via_qmk_rgb_matrix_get_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: + value_data[0] = rgb_matrix_get_val(); + break; + case id_qmk_rgblight_effect: + value_data[0] = rgb_matrix_get_mode(); + break; + case id_qmk_rgblight_effect_speed: + value_data[0] = speed_to_rgblight(rgb_matrix_get_speed()); + break; + case id_qmk_rgblight_color: + value_data[0] = rgb_matrix_get_hue(); + value_data[1] = rgb_matrix_get_sat(); + break; + } +} + +void via_qmk_rgb_matrix_set_value(uint8_t *data) { + uint8_t *value_id = &(data[0]); + uint8_t *value_data = &(data[1]); + switch (*value_id) { + case id_qmk_rgblight_brightness: + rgb_matrix_sethsv_noeeprom(rgb_matrix_get_hue(), rgb_matrix_get_sat(), value_data[0]); + break; + case id_qmk_rgblight_effect: + rgb_matrix_mode_noeeprom(value_data[0]); + if (value_data[0] == 0) { + rgb_matrix_disable_noeeprom(); + } else { + rgb_matrix_enable_noeeprom(); + } + break; + case id_qmk_rgblight_effect_speed: + rgb_matrix_set_speed_noeeprom(speed_from_rgblight(value_data[0])); + break; + case id_qmk_rgblight_color: + rgb_matrix_sethsv_noeeprom(value_data[0], value_data[1], rgb_matrix_get_val()); + break; + } +} + +#endif // #if defined(VIA_QMK_RGB_MATRIX_ENABLE) From 499060a9a50fe25f926c4fe2e522f44ee7e03bc4 Mon Sep 17 00:00:00 2001 From: LegoWolf Date: Tue, 19 Apr 2022 05:20:11 -0600 Subject: [PATCH 301/699] Dactyl manuform 5x6 5 via (#16741) --- .../5x6_5/keymaps/via/config.h | 24 ++ .../5x6_5/keymaps/via/keymap.json | 266 ++++++++++++++++++ .../5x6_5/keymaps/via/rules.mk | 1 + keyboards/handwired/dactyl_manuform/readme.md | 11 + 4 files changed, 302 insertions(+) create mode 100755 keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/config.h create mode 100755 keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/keymap.json create mode 100755 keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/rules.mk diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/config.h b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/config.h new file mode 100755 index 0000000000..dc2d3ee111 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2022 David Falkner (falkner@martica.org) + +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 . +*/ + +#pragma once + +#define USE_SERIAL + +#define EE_HANDS + +#define KINETIC_SPEED \ No newline at end of file diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/keymap.json b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/keymap.json new file mode 100755 index 0000000000..90aa13a260 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/keymap.json @@ -0,0 +1,266 @@ +{ + "version": 1, + "notes": "", + "author": "David Falkner", + "keyboard": "handwired/dactyl_manuform/5x6_5", + "keymap": "via", + "layout": "LAYOUT_5x6_5", + "layers": [ + [ + "KC_ESC", + "KC_1", + "KC_2", + "KC_3", + "KC_4", + "KC_5", + "KC_6", + "KC_7", + "KC_8", + "KC_9", + "KC_0", + "KC_MINS", + "MO(1)", + "KC_Q", + "KC_W", + "KC_E", + "KC_R", + "KC_T", + "KC_Y", + "KC_U", + "KC_I", + "KC_O", + "KC_P", + "MO(1)", + "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_LSFT", + "KC_Z", + "KC_X", + "KC_C", + "KC_V", + "KC_B", + "KC_N", + "KC_M", + "KC_COMM", + "KC_DOT", + "KC_SLSH", + "KC_RSFT", + "KC_EQL", + "KC_BSLS", + "KC_BSPC", + "KC_TAB", + "KC_LCTL", + "KC_RCTL", + "KC_ENT", + "KC_SPC", + "KC_LBRC", + "KC_RBRC", + "KC_LGUI", + "KC_LALT", + "KC_RALT", + "MO(2)" + ], + [ + "KC_TRNS", + "KC_BRID", + "KC_BRIU", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_SLEP", + "KC_MRWD", + "KC_MPLY", + "KC_MFFD", + "KC_MUTE", + "KC_TRNS", + "KC_TRNS", + "KC_PSLS", + "KC_P7", + "KC_P8", + "KC_P9", + "KC_PMNS", + "KC_INS", + "KC_PGUP", + "KC_UP", + "KC_HOME", + "KC_TILD", + "KC_TRNS", + "KC_PCMM", + "KC_PAST", + "KC_P4", + "KC_P5", + "KC_P6", + "KC_PPLS", + "KC_DEL", + "KC_LEFT", + "KC_DOWN", + "KC_RGHT", + "KC_GRV", + "KC_TRNS", + "KC_TRNS", + "KC_PEQL", + "KC_P1", + "KC_P2", + "KC_P3", + "KC_PENT", + "KC_TRNS", + "KC_PGDN", + "KC_TRNS", + "KC_END", + "KC_TRNS", + "KC_TRNS", + "KC_P0", + "KC_PDOT", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_VOLD", + "KC_VOLU", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS" + ], + [ + "KC_TRNS", + "KC_F1", + "KC_F2", + "KC_F3", + "KC_F4", + "KC_F5", + "KC_F6", + "KC_F7", + "KC_F8", + "KC_F9", + "KC_F10", + "KC_PAUS", + "KC_TRNS", + "KC_F11", + "KC_F12", + "KC_F13", + "KC_F14", + "KC_F15", + "KC_F16", + "KC_F17", + "KC_F18", + "KC_F19", + "KC_F20", + "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_PSCR", + "KC_SLCK", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_TRNS", + "KC_WH_U", + "KC_WH_D", + "KC_APP", + "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", + "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", + "KC_TRNS" + ] + ] +} \ No newline at end of file diff --git a/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/rules.mk b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/rules.mk new file mode 100755 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/handwired/dactyl_manuform/readme.md b/keyboards/handwired/dactyl_manuform/readme.md index 4882f4ab4b..da4ac2ad68 100644 --- a/keyboards/handwired/dactyl_manuform/readme.md +++ b/keyboards/handwired/dactyl_manuform/readme.md @@ -44,6 +44,17 @@ Just a copy of the Impstyle keymap. Feel free to adjust it. #### Impstyle A simple QWERTY keymap with 3 Layers. Both sides are connected via serial and the Left ist the master. +### [Keymaps 5x6_5](/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/) + +Similar layout to 5x6 but with only 5 thumb keys per side instead of 6. + +#### Default +QWERTY layout with 7 Layers. + +#### Via +Similar to Default but adds support for the [Via](https://www.caniusevia.com/) keymap configurator. Reduces the number of layers to 4 to comply with Via defaults, and remaps +some keys to accomodate that constraint. + ### [Keymaps 5x7 aka almost Ergodox](/keyboards/handwired/dactyl_manuform/5x7/keymaps/) #### Default Keymap of Loligagger from geekhack. From 25f849b397b409e7f8331abe5edacfde80ec0845 Mon Sep 17 00:00:00 2001 From: Joy Lee Date: Tue, 19 Apr 2022 19:21:12 +0800 Subject: [PATCH 302/699] Update wb32-dfu (#16438) --- builddefs/bootloader.mk | 4 ++ builddefs/mcu_selection.mk | 1 - platforms/chibios/bootloaders/wb32_dfu.c | 49 ++++++++++++++++++++++++ 3 files changed, 53 insertions(+), 1 deletion(-) create mode 100644 platforms/chibios/bootloaders/wb32_dfu.c diff --git a/builddefs/bootloader.mk b/builddefs/bootloader.mk index 226213297e..f0a6c084a2 100644 --- a/builddefs/bootloader.mk +++ b/builddefs/bootloader.mk @@ -202,6 +202,10 @@ ifeq ($(strip $(BOOTLOADER)), md-boot) OPT_DEFS += -DBOOTLOADER_MD_BOOT BOOTLOADER_TYPE = md_boot endif +ifeq ($(strip $(BOOTLOADER)), wb32-dfu) + OPT_DEFS += -DBOOTLOADER_WB32_DFU + BOOTLOADER_TYPE = wb32_dfu +endif ifeq ($(strip $(BOOTLOADER_TYPE)),) $(call CATASTROPHIC_ERROR,Invalid BOOTLOADER,No bootloader specified. Please set an appropriate 'BOOTLOADER' in your keyboard's 'rules.mk' file.) diff --git a/builddefs/mcu_selection.mk b/builddefs/mcu_selection.mk index ec33ee4446..dba5c404be 100644 --- a/builddefs/mcu_selection.mk +++ b/builddefs/mcu_selection.mk @@ -680,7 +680,6 @@ ifneq ($(findstring WB32F3G71, $(MCU)),) USE_FPU ?= no # Bootloader address for WB32 DFU - STM32_BOOTLOADER_ADDRESS ?= 0x1FFFE000 WB32_BOOTLOADER_ADDRESS ?= 0x1FFFE000 endif diff --git a/platforms/chibios/bootloaders/wb32_dfu.c b/platforms/chibios/bootloaders/wb32_dfu.c new file mode 100644 index 0000000000..70b18f0228 --- /dev/null +++ b/platforms/chibios/bootloaders/wb32_dfu.c @@ -0,0 +1,49 @@ +/* Copyright 2021 QMK + * + * 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 3 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 . + */ + +#include "bootloader.h" + +#include +#include +#include "wait.h" + +extern uint32_t __ram0_end__; + +/* This code should be checked whether it runs correctly on platforms */ +# define SYMVAL(sym) (uint32_t)(((uint8_t *)&(sym)) - ((uint8_t *)0)) +# define BOOTLOADER_MAGIC 0xDEADBEEF +# define MAGIC_ADDR (unsigned long *)(SYMVAL(__ram0_end__) - 4) + +__attribute__((weak)) void bootloader_jump(void) { + *MAGIC_ADDR = BOOTLOADER_MAGIC; // set magic flag => reset handler will jump into boot loader + NVIC_SystemReset(); +} + +void enter_bootloader_mode_if_requested(void) { + unsigned long *check = MAGIC_ADDR; + if (*check == BOOTLOADER_MAGIC) { + *check = 0; + __set_CONTROL(0); + __set_MSP(*(__IO uint32_t *)WB32_BOOTLOADER_ADDRESS); + __enable_irq(); + + typedef void (*BootJump_t)(void); + BootJump_t boot_jump = *(BootJump_t *)(WB32_BOOTLOADER_ADDRESS + 4); + boot_jump(); + while (1) + ; + } +} From c3a03b642367d2fa82b9237a35434f1e880dc702 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Tue, 19 Apr 2022 04:28:14 -0700 Subject: [PATCH 303/699] [CI] Format code according to conventions (#16888) --- platforms/chibios/bootloaders/wb32_dfu.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/platforms/chibios/bootloaders/wb32_dfu.c b/platforms/chibios/bootloaders/wb32_dfu.c index 70b18f0228..bbc382a2d0 100644 --- a/platforms/chibios/bootloaders/wb32_dfu.c +++ b/platforms/chibios/bootloaders/wb32_dfu.c @@ -23,9 +23,9 @@ extern uint32_t __ram0_end__; /* This code should be checked whether it runs correctly on platforms */ -# define SYMVAL(sym) (uint32_t)(((uint8_t *)&(sym)) - ((uint8_t *)0)) -# define BOOTLOADER_MAGIC 0xDEADBEEF -# define MAGIC_ADDR (unsigned long *)(SYMVAL(__ram0_end__) - 4) +#define SYMVAL(sym) (uint32_t)(((uint8_t *)&(sym)) - ((uint8_t *)0)) +#define BOOTLOADER_MAGIC 0xDEADBEEF +#define MAGIC_ADDR (unsigned long *)(SYMVAL(__ram0_end__) - 4) __attribute__((weak)) void bootloader_jump(void) { *MAGIC_ADDR = BOOTLOADER_MAGIC; // set magic flag => reset handler will jump into boot loader From 83709e7dbe4a72bc40585ee87d032f400ea37392 Mon Sep 17 00:00:00 2001 From: Dmitry Nosachev Date: Tue, 19 Apr 2022 14:30:15 +0300 Subject: [PATCH 304/699] kin80 (#16754) Co-authored-by: Nick Brassel --- keyboards/kin80/blackpill103/blackpill103.c | 25 +++ keyboards/kin80/blackpill103/blackpill103.h | 19 ++ keyboards/kin80/blackpill103/chconf.h | 28 +++ keyboards/kin80/blackpill103/config.h | 35 +++ keyboards/kin80/blackpill103/halconf.h | 26 +++ keyboards/kin80/blackpill103/mcuconf.h | 30 +++ keyboards/kin80/blackpill103/rules.mk | 8 + keyboards/kin80/blackpill401/blackpill401.c | 25 +++ keyboards/kin80/blackpill401/blackpill401.h | 19 ++ keyboards/kin80/blackpill401/config.h | 32 +++ keyboards/kin80/blackpill401/halconf.h | 28 +++ keyboards/kin80/blackpill401/mcuconf.h | 25 +++ keyboards/kin80/blackpill401/rules.mk | 7 + keyboards/kin80/blackpill411/blackpill411.c | 26 +++ keyboards/kin80/blackpill411/blackpill411.h | 19 ++ keyboards/kin80/blackpill411/config.h | 32 +++ keyboards/kin80/blackpill411/halconf.h | 28 +++ keyboards/kin80/blackpill411/mcuconf.h | 25 +++ keyboards/kin80/blackpill411/rules.mk | 7 + keyboards/kin80/config.h | 24 ++ keyboards/kin80/info.json | 19 ++ keyboards/kin80/keymaps/andrew/keymap.c | 127 +++++++++++ keyboards/kin80/keymaps/debug/keymap.c | 38 ++++ keyboards/kin80/keymaps/debug/rules.mk | 1 + keyboards/kin80/keymaps/default/keymap.c | 102 +++++++++ keyboards/kin80/keymaps/maxim/keymap.c | 215 ++++++++++++++++++ keyboards/kin80/keymaps/quartz64/config.h | 24 ++ keyboards/kin80/keymaps/quartz64/keymap.c | 234 ++++++++++++++++++++ keyboards/kin80/keymaps/quartz64/rules.mk | 1 + keyboards/kin80/keymaps/roman/keymap.c | 134 +++++++++++ keyboards/kin80/kin80.c | 17 ++ keyboards/kin80/kin80.h | 62 ++++++ keyboards/kin80/micro/config.h | 30 +++ keyboards/kin80/micro/micro.c | 25 +++ keyboards/kin80/micro/micro.h | 20 ++ keyboards/kin80/micro/rules.mk | 5 + keyboards/kin80/readme.md | 33 +++ keyboards/kin80/rules.mk | 14 ++ 38 files changed, 1569 insertions(+) create mode 100644 keyboards/kin80/blackpill103/blackpill103.c create mode 100644 keyboards/kin80/blackpill103/blackpill103.h create mode 100644 keyboards/kin80/blackpill103/chconf.h create mode 100644 keyboards/kin80/blackpill103/config.h create mode 100644 keyboards/kin80/blackpill103/halconf.h create mode 100644 keyboards/kin80/blackpill103/mcuconf.h create mode 100644 keyboards/kin80/blackpill103/rules.mk create mode 100644 keyboards/kin80/blackpill401/blackpill401.c create mode 100644 keyboards/kin80/blackpill401/blackpill401.h create mode 100644 keyboards/kin80/blackpill401/config.h create mode 100644 keyboards/kin80/blackpill401/halconf.h create mode 100644 keyboards/kin80/blackpill401/mcuconf.h create mode 100644 keyboards/kin80/blackpill401/rules.mk create mode 100644 keyboards/kin80/blackpill411/blackpill411.c create mode 100644 keyboards/kin80/blackpill411/blackpill411.h create mode 100644 keyboards/kin80/blackpill411/config.h create mode 100644 keyboards/kin80/blackpill411/halconf.h create mode 100644 keyboards/kin80/blackpill411/mcuconf.h create mode 100644 keyboards/kin80/blackpill411/rules.mk create mode 100644 keyboards/kin80/config.h create mode 100644 keyboards/kin80/info.json create mode 100644 keyboards/kin80/keymaps/andrew/keymap.c create mode 100644 keyboards/kin80/keymaps/debug/keymap.c create mode 100644 keyboards/kin80/keymaps/debug/rules.mk create mode 100644 keyboards/kin80/keymaps/default/keymap.c create mode 100644 keyboards/kin80/keymaps/maxim/keymap.c create mode 100644 keyboards/kin80/keymaps/quartz64/config.h create mode 100644 keyboards/kin80/keymaps/quartz64/keymap.c create mode 100644 keyboards/kin80/keymaps/quartz64/rules.mk create mode 100644 keyboards/kin80/keymaps/roman/keymap.c create mode 100644 keyboards/kin80/kin80.c create mode 100644 keyboards/kin80/kin80.h create mode 100644 keyboards/kin80/micro/config.h create mode 100644 keyboards/kin80/micro/micro.c create mode 100644 keyboards/kin80/micro/micro.h create mode 100644 keyboards/kin80/micro/rules.mk create mode 100644 keyboards/kin80/readme.md create mode 100644 keyboards/kin80/rules.mk diff --git a/keyboards/kin80/blackpill103/blackpill103.c b/keyboards/kin80/blackpill103/blackpill103.c new file mode 100644 index 0000000000..c8fd4e5822 --- /dev/null +++ b/keyboards/kin80/blackpill103/blackpill103.c @@ -0,0 +1,25 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include "blackpill103.h" + +void matrix_init_kb(void) { + /* LED pins setup */ + setPinOutput(LED4_PIN); + writePinLow(LED4_PIN); + + matrix_init_user(); +} diff --git a/keyboards/kin80/blackpill103/blackpill103.h b/keyboards/kin80/blackpill103/blackpill103.h new file mode 100644 index 0000000000..06cc42ba83 --- /dev/null +++ b/keyboards/kin80/blackpill103/blackpill103.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#pragma once + +#include "kin80.h" diff --git a/keyboards/kin80/blackpill103/chconf.h b/keyboards/kin80/blackpill103/chconf.h new file mode 100644 index 0000000000..63236f2c2c --- /dev/null +++ b/keyboards/kin80/blackpill103/chconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_TIMEDELTA 0 + +#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE + +#include_next diff --git a/keyboards/kin80/blackpill103/config.h b/keyboards/kin80/blackpill103/config.h new file mode 100644 index 0000000000..b8be5e6481 --- /dev/null +++ b/keyboards/kin80/blackpill103/config.h @@ -0,0 +1,35 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#define DEVICE_VER 0x0002 + +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS + +//v.1.0 +//#define MATRIX_ROW_PINS { B8, B9, C13, B7, B6, B4, B3 } +//v.1.1 +#define MATRIX_ROW_PINS { B8, B9, C13, B7, B6, B5, B4 } +#define MATRIX_COL_PINS { A6, A7, B0, B1, B10, B11, A0, A1, A2, A3, A4, A5 } + +#define LED_PIN_ON_STATE 0 +#define LED_NUM_LOCK_PIN B14 +#define LED_CAPS_LOCK_PIN B13 +#define LED_SCROLL_LOCK_PIN B15 +#define LED4_PIN A8 diff --git a/keyboards/kin80/blackpill103/halconf.h b/keyboards/kin80/blackpill103/halconf.h new file mode 100644 index 0000000000..923b4e52d2 --- /dev/null +++ b/keyboards/kin80/blackpill103/halconf.h @@ -0,0 +1,26 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/kin80/blackpill103/mcuconf.h b/keyboards/kin80/blackpill103/mcuconf.h new file mode 100644 index 0000000000..5e94a97e21 --- /dev/null +++ b/keyboards/kin80/blackpill103/mcuconf.h @@ -0,0 +1,30 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/mcuconf.h -r platforms/chibios/STM32_F103_STM32DUINO/configs/mcuconf.h` + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM2 +#define STM32_PWM_USE_TIM2 TRUE + +#undef STM32_SPI_USE_SPI2 +#define STM32_SPI_USE_SPI2 FALSE diff --git a/keyboards/kin80/blackpill103/rules.mk b/keyboards/kin80/blackpill103/rules.mk new file mode 100644 index 0000000000..019b1130d9 --- /dev/null +++ b/keyboards/kin80/blackpill103/rules.mk @@ -0,0 +1,8 @@ +# MCU name +MCU = STM32F103 + +# Bootloader selection +BOOTLOADER = stm32duino + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE diff --git a/keyboards/kin80/blackpill401/blackpill401.c b/keyboards/kin80/blackpill401/blackpill401.c new file mode 100644 index 0000000000..26f32d85e0 --- /dev/null +++ b/keyboards/kin80/blackpill401/blackpill401.c @@ -0,0 +1,25 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include "blackpill401.h" + +void matrix_init_kb(void) { + /* LED pins setup */ + setPinOutput(LED4_PIN); + writePinLow(LED4_PIN); + + matrix_init_user(); +} diff --git a/keyboards/kin80/blackpill401/blackpill401.h b/keyboards/kin80/blackpill401/blackpill401.h new file mode 100644 index 0000000000..06cc42ba83 --- /dev/null +++ b/keyboards/kin80/blackpill401/blackpill401.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#pragma once + +#include "kin80.h" diff --git a/keyboards/kin80/blackpill401/config.h b/keyboards/kin80/blackpill401/config.h new file mode 100644 index 0000000000..5f5f37c6d3 --- /dev/null +++ b/keyboards/kin80/blackpill401/config.h @@ -0,0 +1,32 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#define DEVICE_VER 0x0003 + +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS + +#define MATRIX_ROW_PINS { A4, B12, B13, B14, B15, A8, B5 } +#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A5, A6, A7, B0, B1, B10 } + +#define LED_PIN_ON_STATE 0 +#define LED_NUM_LOCK_PIN B4 +#define LED_CAPS_LOCK_PIN C13 +#define LED_SCROLL_LOCK_PIN B3 +#define LED4_PIN A15 diff --git a/keyboards/kin80/blackpill401/halconf.h b/keyboards/kin80/blackpill401/halconf.h new file mode 100644 index 0000000000..020a7722f0 --- /dev/null +++ b/keyboards/kin80/blackpill401/halconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/blackpill_f401/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_I2C TRUE + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/kin80/blackpill401/mcuconf.h b/keyboards/kin80/blackpill401/mcuconf.h new file mode 100644 index 0000000000..e614a9dfa9 --- /dev/null +++ b/keyboards/kin80/blackpill401/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ + +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +#undef STM32_PWM_USE_TIM5 +#define STM32_PWM_USE_TIM5 TRUE diff --git a/keyboards/kin80/blackpill401/rules.mk b/keyboards/kin80/blackpill401/rules.mk new file mode 100644 index 0000000000..264e71d0b5 --- /dev/null +++ b/keyboards/kin80/blackpill401/rules.mk @@ -0,0 +1,7 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +KEYBOARD_SHARED_EP = yes diff --git a/keyboards/kin80/blackpill411/blackpill411.c b/keyboards/kin80/blackpill411/blackpill411.c new file mode 100644 index 0000000000..1b68dfc2d3 --- /dev/null +++ b/keyboards/kin80/blackpill411/blackpill411.c @@ -0,0 +1,26 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include "blackpill411.h" + +void matrix_init_kb(void) { + /* LED pins setup */ + setPinOutput(LED4_PIN); + writePinLow(LED4_PIN); + + matrix_init_user(); +} + diff --git a/keyboards/kin80/blackpill411/blackpill411.h b/keyboards/kin80/blackpill411/blackpill411.h new file mode 100644 index 0000000000..06cc42ba83 --- /dev/null +++ b/keyboards/kin80/blackpill411/blackpill411.h @@ -0,0 +1,19 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#pragma once + +#include "kin80.h" diff --git a/keyboards/kin80/blackpill411/config.h b/keyboards/kin80/blackpill411/config.h new file mode 100644 index 0000000000..5f5f37c6d3 --- /dev/null +++ b/keyboards/kin80/blackpill411/config.h @@ -0,0 +1,32 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#define DEVICE_VER 0x0003 + +#undef MATRIX_ROW_PINS +#undef MATRIX_COL_PINS + +#define MATRIX_ROW_PINS { A4, B12, B13, B14, B15, A8, B5 } +#define MATRIX_COL_PINS { C14, C15, A0, A1, A2, A3, A5, A6, A7, B0, B1, B10 } + +#define LED_PIN_ON_STATE 0 +#define LED_NUM_LOCK_PIN B4 +#define LED_CAPS_LOCK_PIN C13 +#define LED_SCROLL_LOCK_PIN B3 +#define LED4_PIN A15 diff --git a/keyboards/kin80/blackpill411/halconf.h b/keyboards/kin80/blackpill411/halconf.h new file mode 100644 index 0000000000..4a0da20890 --- /dev/null +++ b/keyboards/kin80/blackpill411/halconf.h @@ -0,0 +1,28 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/handwired/onekey/blackpill_f411/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_I2C TRUE + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/kin80/blackpill411/mcuconf.h b/keyboards/kin80/blackpill411/mcuconf.h new file mode 100644 index 0000000000..e614a9dfa9 --- /dev/null +++ b/keyboards/kin80/blackpill411/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ + +#pragma once + +#include_next "mcuconf.h" + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +#undef STM32_PWM_USE_TIM5 +#define STM32_PWM_USE_TIM5 TRUE diff --git a/keyboards/kin80/blackpill411/rules.mk b/keyboards/kin80/blackpill411/rules.mk new file mode 100644 index 0000000000..75bc794ef0 --- /dev/null +++ b/keyboards/kin80/blackpill411/rules.mk @@ -0,0 +1,7 @@ +# MCU name +MCU = STM32F411 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +KEYBOARD_SHARED_EP = yes diff --git a/keyboards/kin80/config.h b/keyboards/kin80/config.h new file mode 100644 index 0000000000..a836bacf75 --- /dev/null +++ b/keyboards/kin80/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* key matrix size */ +#define MATRIX_COLS 12 +#define MATRIX_ROWS 7 diff --git a/keyboards/kin80/info.json b/keyboards/kin80/info.json new file mode 100644 index 0000000000..269a88c0ef --- /dev/null +++ b/keyboards/kin80/info.json @@ -0,0 +1,19 @@ +{ + "keyboard_name": "Kin80", + "url": "https://github.com/DmNosachev/kinesis80", + "maintainer": "DmNosachev", + "usb": { + "vid": "0xFEED", + "pid": "0x4B4E" + }, + "manufacturer": "Quartz64" + "diode_direction": "COL2ROW", + "layouts": { + "LAYOUT": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":11.5, "y":0}, {"x":12.5, "y":0}, {"x":13.5, "y":0}, {"x":14.5, "y":0}, {"x":15.5, "y":0}, {"x":16.5, "y":0}, {"x":0, "y":1.25, "w":1.25}, {"x":1.25, "y":1.25}, {"x":2.25, "y":1.25}, {"x":3.25, "y":1.25}, {"x":4.25, "y":1.25}, {"x":5.25, "y":1.25}, {"x":11.25, "y":1.25}, {"x":12.25, "y":1.25}, {"x":13.25, "y":1.25}, {"x":14.25, "y":1.25}, {"x":15.25, "y":1.25}, {"x":16.25, "y":1.25, "w":1.25}, {"x":0, "y":2.25, "w":1.25}, {"x":1.25, "y":2.25}, {"x":2.25, "y":2.25}, {"x":3.25, "y":2.25}, {"x":4.25, "y":2.25}, {"x":5.25, "y":2.25}, {"x":11.25, "y":2.25}, {"x":12.25, "y":2.25}, {"x":13.25, "y":2.25}, {"x":14.25, "y":2.25}, {"x":15.25, "y":2.25}, {"x":16.25, "y":2.25, "w":1.25}, {"x":0, "y":3.25, "w":1.25}, {"x":1.25, "y":3.25}, {"x":2.25, "y":3.25}, {"x":3.25, "y":3.25}, {"x":4.25, "y":3.25}, {"x":5.25, "y":3.25}, {"x":11.25, "y":3.25}, {"x":12.25, "y":3.25}, {"x":13.25, "y":3.25}, {"x":14.25, "y":3.25}, {"x":15.25, "y":3.25}, {"x":16.25, "y":3.25, "w":1.25}, {"x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":11.25, "y":4.25}, {"x":12.25, "y":4.25}, {"x":13.25, "y":4.25}, {"x":14.25, "y":4.25}, {"x":15.25, "y":4.25}, {"x":16.25, "y":4.25, "w":1.25}, {"x":1.25, "y":5.25}, {"x":2.25, "y":5.25}, {"x":3.25, "y":5.25}, {"x":4.25, "y":5.25}, {"x":12.25, "y":5.25}, {"x":13.25, "y":5.25}, {"x":14.25, "y":5.25}, {"x":15.25, "y":5.25}, {"x":6.25, "y":6}, {"x":7.25, "y":6}, {"x":9.25, "y":6}, {"x":10.25, "y":6}, {"x":5.25, "y":7, "h":2}, {"x":6.25, "y":7, "h":2}, {"x":7.25, "y":7}, {"x":9.25, "y":7}, {"x":10.25, "y":7, "h":2}, {"x":11.25, "y":7, "h":2}, {"x":7.25, "y":8}, {"x":9.25, "y":8}] + }, + "LAYOUT_all": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":15, "y":0}, {"x":16, "y":0}, {"x":17, "y":0}, {"x":0, "y":1.25, "w":1.25}, {"x":1.25, "y":1.25}, {"x":2.25, "y":1.25}, {"x":3.25, "y":1.25}, {"x":4.25, "y":1.25}, {"x":5.25, "y":1.25}, {"x":11.75, "y":1.25}, {"x":12.75, "y":1.25}, {"x":13.75, "y":1.25}, {"x":14.75, "y":1.25}, {"x":15.75, "y":1.25}, {"x":16.75, "y":1.25, "w":1.25}, {"x":0, "y":2.25, "w":1.25}, {"x":1.25, "y":2.25}, {"x":2.25, "y":2.25}, {"x":3.25, "y":2.25}, {"x":4.25, "y":2.25}, {"x":5.25, "y":2.25}, {"x":11.75, "y":2.25}, {"x":12.75, "y":2.25}, {"x":13.75, "y":2.25}, {"x":14.75, "y":2.25}, {"x":15.75, "y":2.25}, {"x":16.75, "y":2.25, "w":1.25}, {"x":0, "y":3.25, "w":1.25}, {"x":1.25, "y":3.25}, {"x":2.25, "y":3.25}, {"x":3.25, "y":3.25}, {"x":4.25, "y":3.25}, {"x":5.25, "y":3.25}, {"x":11.75, "y":3.25}, {"x":12.75, "y":3.25}, {"x":13.75, "y":3.25}, {"x":14.75, "y":3.25}, {"x":15.75, "y":3.25}, {"x":16.75, "y":3.25, "w":1.25}, {"x":0, "y":4.25, "w":1.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.25, "y":4.25}, {"x":11.75, "y":4.25}, {"x":12.75, "y":4.25}, {"x":13.75, "y":4.25}, {"x":14.75, "y":4.25}, {"x":15.75, "y":4.25}, {"x":16.75, "y":4.25, "w":1.25}, {"x":0.25, "y":5.25}, {"x":1.25, "y":5.25}, {"x":2.25, "y":5.25}, {"x":3.25, "y":5.25}, {"x":4.25, "y":5.25}, {"x":5.25, "y":5.25}, {"x":11.75, "y":5.25}, {"x":12.75, "y":5.25}, {"x":13.75, "y":5.25}, {"x":14.75, "y":5.25}, {"x":15.75, "y":5.25}, {"x":16.75, "y":5.25}, {"x":6.5, "y":6}, {"x":7.5, "y":6}, {"x":9.5, "y":6}, {"x":10.5, "y":6}, {"x":5.25, "y":7, "h":2}, {"x":6.25, "y":7, "h":2}, {"x":7.25, "y":7}, {"x":9.5, "y":7}, {"x":10.5, "y":7, "h":2}, {"x":11.5, "y":7, "h":2}, {"x":7.25, "y":8}, {"x":9.5, "y":8}] + } + } +} \ No newline at end of file diff --git a/keyboards/kin80/keymaps/andrew/keymap.c b/keyboards/kin80/keymaps/andrew/keymap.c new file mode 100644 index 0000000000..d8773f9d72 --- /dev/null +++ b/keyboards/kin80/keymaps/andrew/keymap.c @@ -0,0 +1,127 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "version.h" + +enum layer_names { + _BASE, // default layer + _L2 // macros +}; + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + VRSN, + EMAIL1 // Macro example (type email address) +}; + +/* +* +* +* ,-------------------------------------------, ,-------------------------------------------, +* | Esc | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | += | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Caps | A | S | D | F | G | | H | J | K | L | ;: | '"/L2 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | <, | >. | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* |`~/L2 | <, | Left | Right| | Up | Down | [ | ] | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Cmd | Opt | | Ctrl | Cmd | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* |Backsp|Delete|------| |------|Enter | Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_BASE] = LAYOUT( + KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(_L2, KC_QUOT), + KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT, + LT(_L2, KC_GRV), KC_COMM, KC_LEFT, KC_RIGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + KC_LCMD, KC_LOPT, KC_RCTL, KC_RCMD, + KC_HOME, KC_PGUP, + KC_BSPC, KC_DEL, KC_END, KC_PGDN, KC_ENTER, KC_SPC + ), +/* +* +* +* ,-------------------------------------------, ,-------------------------------------------, +* | F1 | | | | | | |EMAIL1| | |PrnSc | ScrLk| Pause | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | VRSN | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | MbL | MUp | MbR | | |RESET | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | ML | MDn | MR | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* `--------+------+------+------+------+------' `------+------+------+------+------+--------' +* | |Insert| | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | | MWh+ | | | | | +* | | |------| |------| | | +* | | | MWh- | | | | | +* `--------------------' `--------------------' +*/ +[_L2] = LAYOUT( + KC_F1, _______, _______, _______, _______, _______, EMAIL1, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + _______, _______, _______, _______, _______, _______, VRSN, _______, _______, _______, _______, _______, + _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, RESET, _______, _______, _______, _______, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_INS, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + KC_WH_U, _______, + _______, _______, KC_WH_D, _______, _______, _______ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + + case EMAIL1: + if (record->event.pressed) { + SEND_STRING("MyEmail@gmail.com"); + } + return false; + break; + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + writePin(LED4_PIN, layer_state_cmp(state, _L2)); + return state; +} diff --git a/keyboards/kin80/keymaps/debug/keymap.c b/keyboards/kin80/keymaps/debug/keymap.c new file mode 100644 index 0000000000..ef92ee4fee --- /dev/null +++ b/keyboards/kin80/keymaps/debug/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO + + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + // If console is enabled, it will print the matrix position and status of each key pressed +#ifdef CONSOLE_ENABLE + uprintf("row: %u, col: %u, pressed: %u\n", record->event.key.row, record->event.key.col, record->event.pressed); +#endif + return true; +} \ No newline at end of file diff --git a/keyboards/kin80/keymaps/debug/rules.mk b/keyboards/kin80/keymaps/debug/rules.mk new file mode 100644 index 0000000000..15b7f725b2 --- /dev/null +++ b/keyboards/kin80/keymaps/debug/rules.mk @@ -0,0 +1 @@ +CONSOLE_ENABLE = yes diff --git a/keyboards/kin80/keymaps/default/keymap.c b/keyboards/kin80/keymaps/default/keymap.c new file mode 100644 index 0000000000..5da4874510 --- /dev/null +++ b/keyboards/kin80/keymaps/default/keymap.c @@ -0,0 +1,102 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _BASE, // default layer + _NM // numpad on right, mouse on left +}; + +/* +* +* +* ,-------------------------------------------. ,-------------------------------------------. +* | Esc | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | PrSc | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | += | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | NM | A | S | D | F | G | | H | J | K | L | ;: | '"/NM | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------' `------+------+------+------+------+--------' +* | `~ | Ins | Left | Right| | Up | Down | [ | ] | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctrl | Alt | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* |Backsp|Delete|------| |------|Enter | Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_BASE] = LAYOUT( + KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_PSCR, + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + MO(_NM), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(_NM, KC_QUOT), + 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_GRV, KC_INS, KC_LEFT, KC_RIGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + KC_LCTL, KC_LALT, KC_RGUI,KC_RCTL, + KC_HOME, KC_PGUP, + KC_BSPC, KC_DEL, KC_END, KC_PGDN,KC_ENTER, KC_SPC + ), +/* +* +* +* ,-------------------------------------------. ,-------------------------------------------. +* | F1 | | | | | | | | | | | | F12 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | |ScrLk |Numlck| = | / | * | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | MbL | MUp | MbR | | |CapsLk| 7 | 8 | 9 | - | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | ML | MDn | MR | | | | 4 | 5 | 6 | + | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | . | 1 | 2 | 3 |Enter | | +* `--------+------+------+------+------+------' `------+------+------+------+------+--------' +* |RESET | | | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | | | | RAlt | | +* ,------|------|------| |------+------+------. +* | | |MWhUp | | | | | +* | | |------| |------| | 0 | +* | | |MWhDn | | | | | +* `--------------------' `--------------------' +*/ +[_NM] = LAYOUT( + KC_F1, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F12, + _______, _______, _______, _______, _______, _______, KC_SLCK, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______, + _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, KC_CAPS, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, + _______, _______, _______, _______, _______, _______, KC_PDOT, KC_P1, KC_P2, KC_P3, KC_PENT, _______, + RESET, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_RALT, _______, + KC_WH_U, _______, + _______, _______, KC_WH_D, _______, _______, KC_P0 + ) +}; + + +layer_state_t layer_state_set_user(layer_state_t state) { + writePin(LED4_PIN, layer_state_cmp(state, _L2)); + return state; +} diff --git a/keyboards/kin80/keymaps/maxim/keymap.c b/keyboards/kin80/keymaps/maxim/keymap.c new file mode 100644 index 0000000000..a8be54a4dd --- /dev/null +++ b/keyboards/kin80/keymaps/maxim/keymap.c @@ -0,0 +1,215 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "version.h" + +enum layer_names { + _BASE, // default layer + _NM, // numpad on right, mouse on left + _MC // macros +}; + +#define MC1 COMP_FR_QUOTES +#define MC2 COMP_NBSP_EM_DASH +#define MC3 COMP_NBSP + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + VRSN, + COMP_FR_QUOTES, // Compose: french quotes + COMP_NBSP_EM_DASH, // Compose: nbsp followed by em dash + COMP_NBSP, // Compose: nbsp + PWD1, // Windows password + PWD2, // Stand root password + PWD3, // KP password + EMAIL1 // Gmail address +}; + +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | Esc | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | PrSc | RAlt | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | +=/Alt | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |`~/NM | A | S | D | F | G | | H | J | K | L | ;: | '"/NM | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | MC |C+Shft| [ | ] | | Left | Down | Up | Right| +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | Ctl |Enter | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* |Space |Backsp|------| |------| Del | Enter| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_BASE] = LAYOUT( + KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, KC_RALT, + LALT_T(KC_EQL), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + LCTL_T(KC_GRV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(_NM, KC_QUOT), + 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(_MC), LCTL(KC_LSFT), KC_LBRC, KC_RBRC, KC_LEFT,KC_DOWN, KC_UP, KC_RGHT, + MO(_NM), KC_ENTER, KC_RGUI,KC_RCTRL, + KC_HOME, KC_PGUP, + KC_SPC, KC_BSPC, KC_END, KC_PGDN,KC_DEL, KC_ENTER + ), +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | F1 | | | | | | | | | | | F11 | F12 | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | | | | | | | |ScrLk |Numlck| = | / | * | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | MbL | MUp | MbR | Ins | |CapsLk| 7 | 8 | 9 | - | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | ML | MDn | MR | | | | 4 | 5 | 6 | + | L1 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | . | 1 | 2 | 3 |Enter | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | | | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | |MWhUp | | | | | +* | | |------| |------| | 0 | +* | | |MWhDn | | | | | +* `--------------------' `--------------------' +*/ +[_NM] = LAYOUT( + KC_F1, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, + _______, _______, _______, _______, _______, _______, KC_SLCK, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______, + _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_INS, KC_CAPS, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, + _______, _______, _______, _______, _______, _______, KC_PDOT, KC_P1, KC_P2, KC_P3, KC_PENT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + KC_WH_U, _______, + _______, _______, KC_WH_D, _______, _______, KC_P0 + ), +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | version| | | | | | |email | | | | | | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | | | | | | | | | | | | | MC2 | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | | |reset | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | MC1 | | | | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* | | | | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | | | | | | | +* | MC3 | |------| |------| | | +* | | | | | | | | +* `--------------------' `--------------------' +*/ +[_MC] = LAYOUT( + VRSN, _______, _______, _______, _______, _______, EMAIL1, _______, _______, PWD3, PWD2, PWD1, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MC2, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, MC1, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + MC3, _______, _______, _______, _______, _______ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + + case COMP_FR_QUOTES: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)"<<"SS_TAP(X_RALT)">>"SS_TAP(X_LEFT)); + } + return false; + break; + + case COMP_NBSP_EM_DASH: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)" "SS_TAP(X_RALT)"--- "); + } + return false; + break; + + case COMP_NBSP: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)" "); + } + return false; + break; + + case PWD1: + if (record->event.pressed) { + SEND_STRING("password1"SS_TAP(X_ENTER)); + } + return false; + break; + + case PWD2: + if (record->event.pressed) { + SEND_STRING("password2"SS_TAP(X_ENTER)); + } + return false; + break; + + case PWD3: + if (record->event.pressed) { + SEND_STRING("password3"SS_TAP(X_ENTER)); + } + return false; + break; + + case EMAIL1: + if (record->event.pressed) { + SEND_STRING("email@example.com"); + } + return false; + break; + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + writePin(LED4_PIN, layer_state_cmp(state, _MC)); + return state; +} diff --git a/keyboards/kin80/keymaps/quartz64/config.h b/keyboards/kin80/keymaps/quartz64/config.h new file mode 100644 index 0000000000..0b5cc5399b --- /dev/null +++ b/keyboards/kin80/keymaps/quartz64/config.h @@ -0,0 +1,24 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#define LSPO_KEYS KC_LSFT, KC_TRNS, KC_LBRC +#define RSPC_KEYS KC_RSFT, KC_TRNS, KC_RBRC + +#define ENCODERS_PAD_A { A10 } +#define ENCODERS_PAD_B { A9 } \ No newline at end of file diff --git a/keyboards/kin80/keymaps/quartz64/keymap.c b/keyboards/kin80/keymaps/quartz64/keymap.c new file mode 100644 index 0000000000..611c86a09d --- /dev/null +++ b/keyboards/kin80/keymaps/quartz64/keymap.c @@ -0,0 +1,234 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "version.h" + +enum layer_names { + _BASE, // default layer + _NM, // numpad onright, mouse on left + _MC // macros +}; + +#define MC1 COMP_FR_QUOTES +#define MC2 COMP_NBSP_EM_DASH +#define MC3 COMP_NBSP + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + VRSN, + COMP_FR_QUOTES, // Compose: french quotes + COMP_NBSP_EM_DASH, // Compose: nbsp followed by em dash + COMP_NBSP, // Compose: nbsp + PWD1, + PWD2, + PWD3, + PWD4, + EMAIL1 // Gmail address +}; + +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | Esc | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | PrSc | RAlt | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | +=/Alt | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* |`~/Ctrl | A | S | D | F | G | | H | J | K | L | ;: | '"/NM | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift |Z/Ctrl| X | C | V | B | | N | M | ,. | .> | /? | Shift | +* `-+------+------+------+------+------+------| |------+------+------+------+------+------+-' +* | Play | MC |C+Shft| [ | ] | | | | Left | Down | Up | Right| | +* `-----------------------------------------' `-----------------------------------------' +* ,-------------. ,-------------. +* | NM |Enter | | Gui | Ctrl | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* |Space |Backsp|------| |------| Del | Enter| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_BASE] = LAYOUT_all( + KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_PSCR, KC_RALT, + LALT_T(KC_EQL), KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + LCTL_T(KC_GRV), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(_NM, KC_QUOT), + KC_LSPO, LCTL_T(KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSPC, + KC_MPLY, MO(_MC), LCTL(KC_LSFT), KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_LEFT,KC_DOWN, KC_UP, KC_RGHT,KC_NO, + MO(_NM), KC_ENTER, KC_RGUI,KC_RCTRL, + KC_HOME, KC_PGUP, + KC_SPC, KC_BSPC, KC_END, KC_PGDN,KC_DEL, KC_ENTER + ), +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | F1 |au on |au off| | | | |ck tg |ck up |ck dn |ck rst| F11 | F12 | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | | | | | | | |ScrLk |Numlck| = | / | * | | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | MbL | MUp | MbR | Ins | |CapsLk| 7 | 8 | 9 | - | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | ML | MDn | MR | | | | 4 | 5 | 6 | + | L1 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | . | 1 | 2 | 3 |Enter | | +* `-+------+------+------+------+------+------| |------+------+------+------+------+------+-' +* | | | | | | | | | | | | | | +* `-----------------------------------------' `-----------------------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | |MWhUp | | | | | +* | | |------| |------| | 0 | +* | | |MWhDn | | | | | +* `--------------------' `--------------------' +*/ +[_NM] = LAYOUT_all( + KC_F1, AU_ON, AU_OFF, _______, _______, _______, CK_TOGG, CK_UP, CK_DOWN, CK_RST, KC_F11, KC_F12, + _______, _______, _______, _______, _______, _______, KC_SLCK, KC_NLCK, KC_PEQL, KC_PSLS, KC_PAST, _______, + _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, KC_INS, KC_CAPS, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, + _______, _______, _______, _______, _______, _______, KC_PDOT, KC_P1, KC_P2, KC_P3, KC_PENT, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + KC_WH_U, _______, + _______, _______, KC_WH_D, _______, _______, KC_P0 + ), +/* +* +* +* ,-------------------------------------------- --------------------------------------------. +* | | | | | | | |email | | PWD4 | PWD3 | PWD2 | PWD1 | +* |--------+------+------+------+------+------+ +------+------+------+------+------+--------| +* | | | | | | | | | | | | | MC2 | +* |--------+------+------+------+------+------| +------+------+------+------+------+--------| +* | | | | |reset | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | MC1 | | | | +* `-+------+------+------+------+------+------| |------+------+------+------+------+------+-' +* | | | | | | | | | | | | | | +* `-----------------------------------------' `-----------------------------------------' +* ,-------------. ,-------------. +* | | | | | | +* ,------|------|------| |------+------+------. +* | | | | | | | | +* | MC3 | |------| |------| | | +* | | | | | | | | +* `--------------------' `--------------------' +*/ +[_MC] = LAYOUT_all( + VRSN, _______, _______, _______, _______, _______, EMAIL1, _______, PWD4, PWD3, PWD2, PWD1, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MC2, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, MC1, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + _______, _______, + MC3, _______, _______, _______, _______, _______ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + + case COMP_FR_QUOTES: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)"<<"SS_TAP(X_RALT)">>"SS_TAP(X_LEFT)); + } + return false; + break; + + case COMP_NBSP_EM_DASH: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)" "SS_TAP(X_RALT)"--- "); + } + return false; + break; + + case COMP_NBSP: + if (record->event.pressed) { + SEND_STRING(SS_TAP(X_RALT)" "); + } + return false; + break; + + case PWD1: + if (record->event.pressed) { + SEND_STRING("NakedLunch1991"SS_TAP(X_ENTER)); + } + return false; + break; + + case PWD2: + if (record->event.pressed) { + SEND_STRING("O94nx4sUWHc4akud"SS_TAP(X_ENTER)); + } + return false; + break; + + case PWD3: + if (record->event.pressed) { + SEND_STRING("Q123qQ123q"SS_TAP(X_ENTER)); + } + return false; + break; + + case PWD4: + if (record->event.pressed) { + SEND_STRING("EraserHead1976"SS_TAP(X_ENTER)); + } + return false; + break; + + case EMAIL1: + if (record->event.pressed) { + SEND_STRING("quartz64@gmail.com"); + } + return false; + break; + } + return true; +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (clockwise) { + tap_code(KC_PGDN); + } else { + tap_code(KC_PGUP); + } + } + return false; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + writePin(LED4_PIN, !layer_state_cmp(state, _MC)); + return state; +} diff --git a/keyboards/kin80/keymaps/quartz64/rules.mk b/keyboards/kin80/keymaps/quartz64/rules.mk new file mode 100644 index 0000000000..5af1ba8536 --- /dev/null +++ b/keyboards/kin80/keymaps/quartz64/rules.mk @@ -0,0 +1 @@ +ENCODER_ENABLE = yes diff --git a/keyboards/kin80/keymaps/roman/keymap.c b/keyboards/kin80/keymaps/roman/keymap.c new file mode 100644 index 0000000000..9242a2ef9e --- /dev/null +++ b/keyboards/kin80/keymaps/roman/keymap.c @@ -0,0 +1,134 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "version.h" + +enum layer_names { + _BASE, // default layer + _L2 // macros +}; + +enum custom_keycodes { + PLACEHOLDER = SAFE_RANGE, // can always be here + VRSN, + EMAIL1 // Macro example (type email address) +}; + +/* +* +* +* ,-------------------------------------------, ,-------------------------------------------, +* | Esc | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | += | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | - | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Tab | Q | W | E | R | T | | Y | U | I | O | P | \| | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Caps | A | S | D | F | G | | H | J | K | L | ;: | '"/L2 | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | Shift | Z | X | C | V | B | | N | M | <, | >. | /? | Shift | +* `--------+------+------+------+------+------- `------+------+------+------+------+--------' +* |`~/L2 | <, | Left | Right| | Up | Down | [ | ] | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* |LCtrl | Alt | | GUI |Shift | +* ,------|------|------| |------+------+------. +* | | | Home | | PgUp | | | +* |Backsp|Delete|------| |------|Enter | Space| +* | | | End | | PgDn | | | +* `--------------------' `--------------------' +*/ + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[_BASE] = LAYOUT( + KC_ESC, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, + 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, LT(_L2, KC_QUOT), + KC_LSHIFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSHIFT, + LT(_L2, KC_GRV), KC_COMM, KC_LEFT, KC_RIGHT, KC_UP, KC_DOWN, KC_LBRC, KC_RBRC, + KC_LCTRL, KC_LALT, KC_RGUI, KC_RSHIFT, + KC_HOME, KC_PGUP, + KC_BSPC, KC_DEL, KC_END, KC_PGDN, KC_ENTER, KC_SPC + ), +/* +* +* +* ,-------------------------------------------, ,-------------------------------------------, +* | F1 | | | | | | |EMAIL1| | |PrnSc | ScrLk| Pause | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | VRSN | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | MbL | MUp | MbR | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | ML | MDn | MR | | | | | | | | | +* |--------+------+------+------+------+------| |------+------+------+------+------+--------| +* | | | | | | | | | | | | | | +* `--------+------+------+------+------+------' `------+------+------+------+------+--------' +* | |Insert| | | | | | | | +* `---------------------------' `---------------------------' +* ,-------------. ,-------------. +* | | | | Ralt |RCtrl | +* ,------|------|------| |------+------+------. +* | | | MWh+ | | | | | +* | | |------| |------| | | +* | | | MWh- | | | | | +* `--------------------' `--------------------' +*/ +[_L2] = LAYOUT( + KC_F1, _______, _______, _______, _______, _______, EMAIL1, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + _______, _______, _______, _______, _______, _______, VRSN, _______, _______, _______, _______, _______, + _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_INS, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, + KC_WH_U, _______, + _______, _______, KC_WH_D, _______, _______, _______ + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case VRSN: + if (record->event.pressed) { + SEND_STRING (QMK_KEYBOARD "/" QMK_KEYMAP " @ " QMK_VERSION); + } + return false; + break; + + case EMAIL1: + if (record->event.pressed) { + SEND_STRING("MyEmail@gmail.com"); + } + return false; + break; + } + return true; +} + +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _L2: + writePinHigh(LED4_PIN); + break; + default: // for any other layers, or the default layer + writePinLow(LED4_PIN); + break; + } + return state; +} diff --git a/keyboards/kin80/kin80.c b/keyboards/kin80/kin80.c new file mode 100644 index 0000000000..89b46c340e --- /dev/null +++ b/keyboards/kin80/kin80.c @@ -0,0 +1,17 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include "kin80.h" diff --git a/keyboards/kin80/kin80.h b/keyboards/kin80/kin80.h new file mode 100644 index 0000000000..2bda24d19a --- /dev/null +++ b/keyboards/kin80/kin80.h @@ -0,0 +1,62 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* readability */ +#define XXX KC_NO + +#define LAYOUT( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \ + k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, \ + k51, k52, k53, k54, k57, k58, k59, k5A, \ + k62, k63, k69, k68, \ + k64, k6A, \ + k60, k61, k65, k6B, k67, k66 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \ + { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B }, \ + { XXX, k51, k52, k53, k54, XXX, XXX, k57, k58, k59, k5A, XXX }, \ + { k60, k61, k62, k63, k64, k65, k66, k67, k68, k69, k6A, k6B } \ +} + +#define LAYOUT_all( \ + k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, \ + k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, \ + k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, \ + k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, \ + k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, \ + k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B, \ + k62, k63, k69, k68, \ + k64, k6A, \ + k60, k61, k65, k6B, k67, k66 \ +) { \ + { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B }, \ + { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B }, \ + { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B }, \ + { k30, k31, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B }, \ + { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B }, \ + { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B }, \ + { k60, k61, k62, k63, k64, k65, k66, k67, k68, k69, k6A, k6B } \ +} diff --git a/keyboards/kin80/micro/config.h b/keyboards/kin80/micro/config.h new file mode 100644 index 0000000000..546d0bc5f5 --- /dev/null +++ b/keyboards/kin80/micro/config.h @@ -0,0 +1,30 @@ +/* +Copyright 2022 DmNosachev + +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 . +*/ + +#pragma once + +#define DEVICE_VER 0x0001 + +#define MATRIX_ROW_PINS { B6, B3, B1, D6, B7, B5, D1 } +#define MATRIX_COL_PINS { B4, E6, D7, C6, D4, D0, F7, F6, F5, F4, F1, F0 } +#define UNUSED_PINS { C7 } + +#define LED_PIN_ON_STATE 0 +#define NUM_LOCK_LED_PIN D2 +#define SCROLL_LOCK_LED_PIN D3 +#define CAPS_LOCK_LED_PIN B0 +#define LED4_PIN B2 diff --git a/keyboards/kin80/micro/micro.c b/keyboards/kin80/micro/micro.c new file mode 100644 index 0000000000..264d1a8577 --- /dev/null +++ b/keyboards/kin80/micro/micro.c @@ -0,0 +1,25 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#include "micro.h" + +void matrix_init_kb(void) { + /* LED pins setup */ + setPinOutput(LED4_PIN); + writePinLow(LED4_PIN); + + matrix_init_user(); +} diff --git a/keyboards/kin80/micro/micro.h b/keyboards/kin80/micro/micro.h new file mode 100644 index 0000000000..6efe88e663 --- /dev/null +++ b/keyboards/kin80/micro/micro.h @@ -0,0 +1,20 @@ +/* Copyright 2022 DmNosachev + * + * 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 . + */ + +#pragma once + +#include "kin80.h" + diff --git a/keyboards/kin80/micro/rules.mk b/keyboards/kin80/micro/rules.mk new file mode 100644 index 0000000000..def852a531 --- /dev/null +++ b/keyboards/kin80/micro/rules.mk @@ -0,0 +1,5 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = lufa-dfu \ No newline at end of file diff --git a/keyboards/kin80/readme.md b/keyboards/kin80/readme.md new file mode 100644 index 0000000000..9adee072e7 --- /dev/null +++ b/keyboards/kin80/readme.md @@ -0,0 +1,33 @@ +# Kin80 + +![Kin80 controller](https://i.imgur.com/Im19DdHh.jpg) + +Kin80 is a set of replacement PCBs and switch mounting plates for [Kinesis Contoured keyboards](https://deskthority.net/wiki/Kinesis_Contoured). + +* Keyboard Maintainer: [Dmitriy Nosachev](mailto:quartz64@gmail.com) +* Hardware Supported: Kin80 PCB +* Hardware Availability: [Open Source (CC-BY-SA](https://github.com/DmNosachev/kin80) + +There are 4 versions of the controller PCB, which correspond to the subfolder names: + +* 'micro': rev. 1.1 (obsolete) used Arduino Micro board. +* 'blackpill103': rev. 1.2 (obsolete) used 'Black Pill' boards with STM32F103C8T6 MCU. +* 'blackpill401' and 'blackpill411'. Latest Kin80 PCB revisions (1.3+) use WeAct Studio STM32F401 or STM32F411 boards. They are pin compatible with each other, but use different MCUs. + +Make example for this keyboard (after setting up your build environment): + + `qmk compile -kb kin80 -km default` + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +Default version is 'blackpill401'. If you need to build a firmware for STM32F411, use 'blackpill411' version, e.g.: + + `qmk compile -kb kin80:blackpill411 -km default` + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the the top left key and plug in the keyboard. +* **Physical reset button**. Hold 'boot0' button on MCU board, press 'reset', then release 'boot0'. +* **Keycode in layout**: Press the key mapped to `RESET` if it is available \ No newline at end of file diff --git a/keyboards/kin80/rules.mk b/keyboards/kin80/rules.mk new file mode 100644 index 0000000000..2dad32f8ef --- /dev/null +++ b/keyboards/kin80/rules.mk @@ -0,0 +1,14 @@ +DEFAULT_FOLDER = kin80/blackpill401 + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output \ No newline at end of file From b310bf6ca36a2427a1bd564aa5d5f9d8594e6476 Mon Sep 17 00:00:00 2001 From: Danny Date: Tue, 19 Apr 2022 13:57:58 -0400 Subject: [PATCH 305/699] [Keyboard] Add notes on Iris rev6a firmware (#16878) --- keyboards/keebio/iris/readme.md | 14 +++++++++++--- keyboards/keebio/iris/rev6a/config.h | 2 +- 2 files changed, 12 insertions(+), 4 deletions(-) diff --git a/keyboards/keebio/iris/readme.md b/keyboards/keebio/iris/readme.md index 00126a3908..e98f985394 100644 --- a/keyboards/keebio/iris/readme.md +++ b/keyboards/keebio/iris/readme.md @@ -9,12 +9,20 @@ Hardware Availability: [Keebio](https://keeb.io) Make example for this keyboard (after setting up your build environment): - make keebio/iris/rev4:default + make keebio/iris/rev6:default Example of flashing this keyboard: - make keebio/iris/rev4:default:flash + make keebio/iris/rev6:default:flash See [build environment setup](https://docs.qmk.fm/#/newbs_getting_started) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. -A build guide for this keyboard can be found here: [Iris Build Guide](https://docs.keeb.io/iris-build-guide.html) +A build guide for this keyboard can be found here: [Iris Build Guide](https://docs.keeb.io/iris-rev6-build-guide) + +## Iris Rev. 6 Notes + +The Iris Rev. 6 and Rev. 6.1 PCBs are nearly identical and have the same firmware (`rev6`) pre-flashed to them that has VIA support enabled. However this stock firmware does not support for Lighting controls in VIA. + +To enable Lighting controls in VIA, you will need the `rev6a` firmware. See [Enabling Iris Rev. 6 VIA RGB Controls](https://docs.keeb.io/iris-rev6-rgb-via) for more details. + +Both the Rev. 6 and Rev. 6.1 PCBs are compatible with the `rev6a` firmware. diff --git a/keyboards/keebio/iris/rev6a/config.h b/keyboards/keebio/iris/rev6a/config.h index 06c1f38e11..d846891d92 100644 --- a/keyboards/keebio/iris/rev6a/config.h +++ b/keyboards/keebio/iris/rev6a/config.h @@ -22,7 +22,7 @@ along with this program. If not, see . #define PRODUCT_ID 0x6356 #define DEVICE_VER 0x0610 #define MANUFACTURER Keebio -#define PRODUCT Iris Rev. 6.1 +#define PRODUCT Iris Rev. 6a /* key matrix size */ // Rows are doubled-up From c76a23c37a7678f06d3eaac825605f9724b3eed1 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 20 Apr 2022 05:00:37 +1000 Subject: [PATCH 306/699] Fix build. (#16891) --- keyboards/keyhive/uno/rules.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/keyhive/uno/rules.mk b/keyboards/keyhive/uno/rules.mk index 367faedeaf..3220994593 100644 --- a/keyboards/keyhive/uno/rules.mk +++ b/keyboards/keyhive/uno/rules.mk @@ -1 +1 @@ -DEFAULT_FOLDER = uno/rev1 +DEFAULT_FOLDER = keyhive/uno/rev1 From 40a7714ce511ba42e8a6e725383e3a357517e5b2 Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Tue, 19 Apr 2022 20:15:34 +0100 Subject: [PATCH 307/699] rename define checks (#16892) --- keyboards/keyhive/uno/uno.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/keyhive/uno/uno.h b/keyboards/keyhive/uno/uno.h index bb3248e293..e25dc25f73 100644 --- a/keyboards/keyhive/uno/uno.h +++ b/keyboards/keyhive/uno/uno.h @@ -18,8 +18,8 @@ #include "quantum.h" -#if defined(KEYBOARD_uno_rev1) +#if defined(KEYBOARD_keyhive_uno_rev1) # include "rev1.h" -#elif defined(KEYBOARD_uno_rev2) +#elif defined(KEYBOARD_keyhive_uno_rev2) # include "rev2.h" #endif From 314865f83366fbaa547540154e0d2a48e7a2e72c Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Wed, 20 Apr 2022 03:19:16 +0800 Subject: [PATCH 308/699] move melody96 to ymdk vendor folder (#15680) Co-authored-by: Nick Brassel --- keyboards/{ => ymdk}/melody96/config.h | 0 keyboards/{ => ymdk}/melody96/info.json | 0 keyboards/{ => ymdk}/melody96/keymaps/crilith/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/default/keymap.c | 0 .../melody96/keymaps/default_96_with60_split_num0/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/dvz/config.h | 0 keyboards/{ => ymdk}/melody96/keymaps/dvz/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/dvz/readme.md | 0 keyboards/{ => ymdk}/melody96/keymaps/dvz/rules.mk | 0 keyboards/{ => ymdk}/melody96/keymaps/konstantin/config.h | 0 keyboards/{ => ymdk}/melody96/keymaps/konstantin/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/konstantin/rules.mk | 0 keyboards/{ => ymdk}/melody96/keymaps/via/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/via/rules.mk | 0 keyboards/{ => ymdk}/melody96/keymaps/zunger/config.h | 0 keyboards/{ => ymdk}/melody96/keymaps/zunger/keymap.c | 0 keyboards/{ => ymdk}/melody96/keymaps/zunger/readme.md | 0 keyboards/{ => ymdk}/melody96/keymaps/zunger/rules.mk | 0 keyboards/{ => ymdk}/melody96/melody96.c | 0 keyboards/{ => ymdk}/melody96/melody96.h | 0 keyboards/{ => ymdk}/melody96/readme.md | 2 +- keyboards/{ => ymdk}/melody96/rules.mk | 0 22 files changed, 1 insertion(+), 1 deletion(-) rename keyboards/{ => ymdk}/melody96/config.h (100%) rename keyboards/{ => ymdk}/melody96/info.json (100%) rename keyboards/{ => ymdk}/melody96/keymaps/crilith/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/default/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/default_96_with60_split_num0/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/dvz/config.h (100%) rename keyboards/{ => ymdk}/melody96/keymaps/dvz/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/dvz/readme.md (100%) rename keyboards/{ => ymdk}/melody96/keymaps/dvz/rules.mk (100%) rename keyboards/{ => ymdk}/melody96/keymaps/konstantin/config.h (100%) rename keyboards/{ => ymdk}/melody96/keymaps/konstantin/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/konstantin/rules.mk (100%) rename keyboards/{ => ymdk}/melody96/keymaps/via/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/via/rules.mk (100%) rename keyboards/{ => ymdk}/melody96/keymaps/zunger/config.h (100%) rename keyboards/{ => ymdk}/melody96/keymaps/zunger/keymap.c (100%) rename keyboards/{ => ymdk}/melody96/keymaps/zunger/readme.md (100%) rename keyboards/{ => ymdk}/melody96/keymaps/zunger/rules.mk (100%) rename keyboards/{ => ymdk}/melody96/melody96.c (100%) rename keyboards/{ => ymdk}/melody96/melody96.h (100%) rename keyboards/{ => ymdk}/melody96/readme.md (96%) rename keyboards/{ => ymdk}/melody96/rules.mk (100%) diff --git a/keyboards/melody96/config.h b/keyboards/ymdk/melody96/config.h similarity index 100% rename from keyboards/melody96/config.h rename to keyboards/ymdk/melody96/config.h diff --git a/keyboards/melody96/info.json b/keyboards/ymdk/melody96/info.json similarity index 100% rename from keyboards/melody96/info.json rename to keyboards/ymdk/melody96/info.json diff --git a/keyboards/melody96/keymaps/crilith/keymap.c b/keyboards/ymdk/melody96/keymaps/crilith/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/crilith/keymap.c rename to keyboards/ymdk/melody96/keymaps/crilith/keymap.c diff --git a/keyboards/melody96/keymaps/default/keymap.c b/keyboards/ymdk/melody96/keymaps/default/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/default/keymap.c rename to keyboards/ymdk/melody96/keymaps/default/keymap.c diff --git a/keyboards/melody96/keymaps/default_96_with60_split_num0/keymap.c b/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/default_96_with60_split_num0/keymap.c rename to keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c diff --git a/keyboards/melody96/keymaps/dvz/config.h b/keyboards/ymdk/melody96/keymaps/dvz/config.h similarity index 100% rename from keyboards/melody96/keymaps/dvz/config.h rename to keyboards/ymdk/melody96/keymaps/dvz/config.h diff --git a/keyboards/melody96/keymaps/dvz/keymap.c b/keyboards/ymdk/melody96/keymaps/dvz/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/dvz/keymap.c rename to keyboards/ymdk/melody96/keymaps/dvz/keymap.c diff --git a/keyboards/melody96/keymaps/dvz/readme.md b/keyboards/ymdk/melody96/keymaps/dvz/readme.md similarity index 100% rename from keyboards/melody96/keymaps/dvz/readme.md rename to keyboards/ymdk/melody96/keymaps/dvz/readme.md diff --git a/keyboards/melody96/keymaps/dvz/rules.mk b/keyboards/ymdk/melody96/keymaps/dvz/rules.mk similarity index 100% rename from keyboards/melody96/keymaps/dvz/rules.mk rename to keyboards/ymdk/melody96/keymaps/dvz/rules.mk diff --git a/keyboards/melody96/keymaps/konstantin/config.h b/keyboards/ymdk/melody96/keymaps/konstantin/config.h similarity index 100% rename from keyboards/melody96/keymaps/konstantin/config.h rename to keyboards/ymdk/melody96/keymaps/konstantin/config.h diff --git a/keyboards/melody96/keymaps/konstantin/keymap.c b/keyboards/ymdk/melody96/keymaps/konstantin/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/konstantin/keymap.c rename to keyboards/ymdk/melody96/keymaps/konstantin/keymap.c diff --git a/keyboards/melody96/keymaps/konstantin/rules.mk b/keyboards/ymdk/melody96/keymaps/konstantin/rules.mk similarity index 100% rename from keyboards/melody96/keymaps/konstantin/rules.mk rename to keyboards/ymdk/melody96/keymaps/konstantin/rules.mk diff --git a/keyboards/melody96/keymaps/via/keymap.c b/keyboards/ymdk/melody96/keymaps/via/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/via/keymap.c rename to keyboards/ymdk/melody96/keymaps/via/keymap.c diff --git a/keyboards/melody96/keymaps/via/rules.mk b/keyboards/ymdk/melody96/keymaps/via/rules.mk similarity index 100% rename from keyboards/melody96/keymaps/via/rules.mk rename to keyboards/ymdk/melody96/keymaps/via/rules.mk diff --git a/keyboards/melody96/keymaps/zunger/config.h b/keyboards/ymdk/melody96/keymaps/zunger/config.h similarity index 100% rename from keyboards/melody96/keymaps/zunger/config.h rename to keyboards/ymdk/melody96/keymaps/zunger/config.h diff --git a/keyboards/melody96/keymaps/zunger/keymap.c b/keyboards/ymdk/melody96/keymaps/zunger/keymap.c similarity index 100% rename from keyboards/melody96/keymaps/zunger/keymap.c rename to keyboards/ymdk/melody96/keymaps/zunger/keymap.c diff --git a/keyboards/melody96/keymaps/zunger/readme.md b/keyboards/ymdk/melody96/keymaps/zunger/readme.md similarity index 100% rename from keyboards/melody96/keymaps/zunger/readme.md rename to keyboards/ymdk/melody96/keymaps/zunger/readme.md diff --git a/keyboards/melody96/keymaps/zunger/rules.mk b/keyboards/ymdk/melody96/keymaps/zunger/rules.mk similarity index 100% rename from keyboards/melody96/keymaps/zunger/rules.mk rename to keyboards/ymdk/melody96/keymaps/zunger/rules.mk diff --git a/keyboards/melody96/melody96.c b/keyboards/ymdk/melody96/melody96.c similarity index 100% rename from keyboards/melody96/melody96.c rename to keyboards/ymdk/melody96/melody96.c diff --git a/keyboards/melody96/melody96.h b/keyboards/ymdk/melody96/melody96.h similarity index 100% rename from keyboards/melody96/melody96.h rename to keyboards/ymdk/melody96/melody96.h diff --git a/keyboards/melody96/readme.md b/keyboards/ymdk/melody96/readme.md similarity index 96% rename from keyboards/melody96/readme.md rename to keyboards/ymdk/melody96/readme.md index 16338e9ed3..a6bf470b32 100644 --- a/keyboards/melody96/readme.md +++ b/keyboards/ymdk/melody96/readme.md @@ -10,7 +10,7 @@ Make example for this keyboard (after setting up your build environment): - make melody96:default + make ymdk/melody96:default Flashing example for this keyboard: diff --git a/keyboards/melody96/rules.mk b/keyboards/ymdk/melody96/rules.mk similarity index 100% rename from keyboards/melody96/rules.mk rename to keyboards/ymdk/melody96/rules.mk From bd8220e9fc871d7997f1565858bb7b3c77756237 Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Wed, 20 Apr 2022 03:19:34 +0800 Subject: [PATCH 309/699] move amj keyboards into amjkeyboard vendor folder (#15733) Co-authored-by: Nick Brassel --- keyboards/{ => amjkeyboard}/amj40/amj40.c | 0 keyboards/{ => amjkeyboard}/amj40/amj40.h | 0 keyboards/{ => amjkeyboard}/amj40/config.h | 2 +- keyboards/{ => amjkeyboard}/amj40/info.json | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/default/keymap.c | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/default/readme.md | 0 .../amj40/keymaps/default_625u_space/keymap.c | 0 .../amj40/keymaps/default_ortho_275u_space/keymap.c | 0 .../amj40/keymaps/default_ortho_600u_space/keymap.c | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/fabian/keymap.c | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/fabian/rules.mk | 0 .../{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/config.h | 0 .../{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/keymap.c | 0 .../{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/readme.md | 0 .../{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/rules.mk | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/build.sh | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/config.h | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/keymap.c | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/readme.md | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/rules.mk | 0 keyboards/{ => amjkeyboard}/amj40/keymaps/myee/updatemerge.sh | 0 keyboards/{ => amjkeyboard}/amj40/readme.md | 4 ++-- keyboards/{ => amjkeyboard}/amj40/rules.mk | 0 keyboards/{ => amjkeyboard}/amj60/amj60.c | 0 keyboards/{ => amjkeyboard}/amj60/amj60.h | 0 keyboards/{ => amjkeyboard}/amj60/config.h | 2 +- keyboards/{ => amjkeyboard}/amj60/info.json | 0 keyboards/{ => amjkeyboard}/amj60/keymaps/default/keymap.c | 0 keyboards/{ => amjkeyboard}/amj60/readme.md | 4 ++-- keyboards/{ => amjkeyboard}/amj60/rules.mk | 0 keyboards/amjkeyboard/amj66/config.h | 2 +- keyboards/{ => amjkeyboard}/amj96/amj96.c | 0 keyboards/{ => amjkeyboard}/amj96/amj96.h | 0 keyboards/{ => amjkeyboard}/amj96/config.h | 2 +- keyboards/{ => amjkeyboard}/amj96/info.json | 0 keyboards/{ => amjkeyboard}/amj96/keymaps/default/keymap.c | 0 keyboards/{ => amjkeyboard}/amj96/matrix.c | 0 keyboards/{ => amjkeyboard}/amj96/readme.md | 4 ++-- keyboards/{ => amjkeyboard}/amj96/rules.mk | 0 keyboards/{ => amjkeyboard}/amjpad/amjpad.c | 0 keyboards/{ => amjkeyboard}/amjpad/amjpad.h | 0 keyboards/{ => amjkeyboard}/amjpad/config.h | 2 +- keyboards/{ => amjkeyboard}/amjpad/info.json | 0 keyboards/{ => amjkeyboard}/amjpad/keymaps/default/keymap.c | 0 keyboards/{ => amjkeyboard}/amjpad/keymaps/max/keymap.c | 0 .../{ => amjkeyboard}/amjpad/keymaps/ortho_left/keymap.c | 0 .../{ => amjkeyboard}/amjpad/keymaps/ortho_right/keymap.c | 0 keyboards/{ => amjkeyboard}/amjpad/readme.md | 2 +- keyboards/{ => amjkeyboard}/amjpad/rules.mk | 0 49 files changed, 12 insertions(+), 12 deletions(-) rename keyboards/{ => amjkeyboard}/amj40/amj40.c (100%) rename keyboards/{ => amjkeyboard}/amj40/amj40.h (100%) rename keyboards/{ => amjkeyboard}/amj40/config.h (98%) rename keyboards/{ => amjkeyboard}/amj40/info.json (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/default/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/default/readme.md (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/default_625u_space/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/default_ortho_275u_space/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/default_ortho_600u_space/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/fabian/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/fabian/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/config.h (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/readme.md (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/jetpacktuxedo/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/build.sh (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/config.h (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/readme.md (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amj40/keymaps/myee/updatemerge.sh (100%) rename keyboards/{ => amjkeyboard}/amj40/readme.md (93%) rename keyboards/{ => amjkeyboard}/amj40/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amj60/amj60.c (100%) rename keyboards/{ => amjkeyboard}/amj60/amj60.h (100%) rename keyboards/{ => amjkeyboard}/amj60/config.h (98%) rename keyboards/{ => amjkeyboard}/amj60/info.json (100%) rename keyboards/{ => amjkeyboard}/amj60/keymaps/default/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj60/readme.md (92%) rename keyboards/{ => amjkeyboard}/amj60/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amj96/amj96.c (100%) rename keyboards/{ => amjkeyboard}/amj96/amj96.h (100%) rename keyboards/{ => amjkeyboard}/amj96/config.h (99%) rename keyboards/{ => amjkeyboard}/amj96/info.json (100%) rename keyboards/{ => amjkeyboard}/amj96/keymaps/default/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amj96/matrix.c (100%) rename keyboards/{ => amjkeyboard}/amj96/readme.md (91%) rename keyboards/{ => amjkeyboard}/amj96/rules.mk (100%) rename keyboards/{ => amjkeyboard}/amjpad/amjpad.c (100%) rename keyboards/{ => amjkeyboard}/amjpad/amjpad.h (100%) rename keyboards/{ => amjkeyboard}/amjpad/config.h (98%) rename keyboards/{ => amjkeyboard}/amjpad/info.json (100%) rename keyboards/{ => amjkeyboard}/amjpad/keymaps/default/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amjpad/keymaps/max/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amjpad/keymaps/ortho_left/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amjpad/keymaps/ortho_right/keymap.c (100%) rename keyboards/{ => amjkeyboard}/amjpad/readme.md (92%) rename keyboards/{ => amjkeyboard}/amjpad/rules.mk (100%) diff --git a/keyboards/amj40/amj40.c b/keyboards/amjkeyboard/amj40/amj40.c similarity index 100% rename from keyboards/amj40/amj40.c rename to keyboards/amjkeyboard/amj40/amj40.c diff --git a/keyboards/amj40/amj40.h b/keyboards/amjkeyboard/amj40/amj40.h similarity index 100% rename from keyboards/amj40/amj40.h rename to keyboards/amjkeyboard/amj40/amj40.h diff --git a/keyboards/amj40/config.h b/keyboards/amjkeyboard/amj40/config.h similarity index 98% rename from keyboards/amj40/config.h rename to keyboards/amjkeyboard/amj40/config.h index 71a8d34413..2f472eac01 100755 --- a/keyboards/amj40/config.h +++ b/keyboards/amjkeyboard/amj40/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x00D8 //A+M+J #define PRODUCT_ID 0x6072 #define DEVICE_VER 0x0002 #define MANUFACTURER Han Chen diff --git a/keyboards/amj40/info.json b/keyboards/amjkeyboard/amj40/info.json similarity index 100% rename from keyboards/amj40/info.json rename to keyboards/amjkeyboard/amj40/info.json diff --git a/keyboards/amj40/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/default/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/default/keymap.c diff --git a/keyboards/amj40/keymaps/default/readme.md b/keyboards/amjkeyboard/amj40/keymaps/default/readme.md similarity index 100% rename from keyboards/amj40/keymaps/default/readme.md rename to keyboards/amjkeyboard/amj40/keymaps/default/readme.md diff --git a/keyboards/amj40/keymaps/default_625u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/default_625u_space/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c diff --git a/keyboards/amj40/keymaps/default_ortho_275u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/default_ortho_275u_space/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c diff --git a/keyboards/amj40/keymaps/default_ortho_600u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/default_ortho_600u_space/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c diff --git a/keyboards/amj40/keymaps/fabian/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/fabian/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/fabian/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/fabian/keymap.c diff --git a/keyboards/amj40/keymaps/fabian/rules.mk b/keyboards/amjkeyboard/amj40/keymaps/fabian/rules.mk similarity index 100% rename from keyboards/amj40/keymaps/fabian/rules.mk rename to keyboards/amjkeyboard/amj40/keymaps/fabian/rules.mk diff --git a/keyboards/amj40/keymaps/jetpacktuxedo/config.h b/keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/config.h similarity index 100% rename from keyboards/amj40/keymaps/jetpacktuxedo/config.h rename to keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/config.h diff --git a/keyboards/amj40/keymaps/jetpacktuxedo/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/jetpacktuxedo/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/keymap.c diff --git a/keyboards/amj40/keymaps/jetpacktuxedo/readme.md b/keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/readme.md similarity index 100% rename from keyboards/amj40/keymaps/jetpacktuxedo/readme.md rename to keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/readme.md diff --git a/keyboards/amj40/keymaps/jetpacktuxedo/rules.mk b/keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/rules.mk similarity index 100% rename from keyboards/amj40/keymaps/jetpacktuxedo/rules.mk rename to keyboards/amjkeyboard/amj40/keymaps/jetpacktuxedo/rules.mk diff --git a/keyboards/amj40/keymaps/myee/build.sh b/keyboards/amjkeyboard/amj40/keymaps/myee/build.sh similarity index 100% rename from keyboards/amj40/keymaps/myee/build.sh rename to keyboards/amjkeyboard/amj40/keymaps/myee/build.sh diff --git a/keyboards/amj40/keymaps/myee/config.h b/keyboards/amjkeyboard/amj40/keymaps/myee/config.h similarity index 100% rename from keyboards/amj40/keymaps/myee/config.h rename to keyboards/amjkeyboard/amj40/keymaps/myee/config.h diff --git a/keyboards/amj40/keymaps/myee/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/myee/keymap.c similarity index 100% rename from keyboards/amj40/keymaps/myee/keymap.c rename to keyboards/amjkeyboard/amj40/keymaps/myee/keymap.c diff --git a/keyboards/amj40/keymaps/myee/readme.md b/keyboards/amjkeyboard/amj40/keymaps/myee/readme.md similarity index 100% rename from keyboards/amj40/keymaps/myee/readme.md rename to keyboards/amjkeyboard/amj40/keymaps/myee/readme.md diff --git a/keyboards/amj40/keymaps/myee/rules.mk b/keyboards/amjkeyboard/amj40/keymaps/myee/rules.mk similarity index 100% rename from keyboards/amj40/keymaps/myee/rules.mk rename to keyboards/amjkeyboard/amj40/keymaps/myee/rules.mk diff --git a/keyboards/amj40/keymaps/myee/updatemerge.sh b/keyboards/amjkeyboard/amj40/keymaps/myee/updatemerge.sh similarity index 100% rename from keyboards/amj40/keymaps/myee/updatemerge.sh rename to keyboards/amjkeyboard/amj40/keymaps/myee/updatemerge.sh diff --git a/keyboards/amj40/readme.md b/keyboards/amjkeyboard/amj40/readme.md similarity index 93% rename from keyboards/amj40/readme.md rename to keyboards/amjkeyboard/amj40/readme.md index 1d7316fcf5..f557b9df49 100755 --- a/keyboards/amj40/readme.md +++ b/keyboards/amjkeyboard/amj40/readme.md @@ -12,11 +12,11 @@ DIY/Assembled compact 40% keyboard. Make example for this keyboard (after setting up your build environment): - make amj40:default + make amjkeyboard/amj40:default Flashing example for this keyboard: - make amj40:default:flash + make amjkeyboard/amj40:default:flash To reset the board into bootloader mode, hold the key at the top left of the keyboard while connecting the USB cable (also erases persistent settings). diff --git a/keyboards/amj40/rules.mk b/keyboards/amjkeyboard/amj40/rules.mk similarity index 100% rename from keyboards/amj40/rules.mk rename to keyboards/amjkeyboard/amj40/rules.mk diff --git a/keyboards/amj60/amj60.c b/keyboards/amjkeyboard/amj60/amj60.c similarity index 100% rename from keyboards/amj60/amj60.c rename to keyboards/amjkeyboard/amj60/amj60.c diff --git a/keyboards/amj60/amj60.h b/keyboards/amjkeyboard/amj60/amj60.h similarity index 100% rename from keyboards/amj60/amj60.h rename to keyboards/amjkeyboard/amj60/amj60.h diff --git a/keyboards/amj60/config.h b/keyboards/amjkeyboard/amj60/config.h similarity index 98% rename from keyboards/amj60/config.h rename to keyboards/amjkeyboard/amj60/config.h index 1c25e4fea0..4e894a45fc 100644 --- a/keyboards/amj60/config.h +++ b/keyboards/amjkeyboard/amj60/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x00D8 //A+M+J #define PRODUCT_ID 0x6066 #define DEVICE_VER 0x0001 #define MANUFACTURER Han Chen diff --git a/keyboards/amj60/info.json b/keyboards/amjkeyboard/amj60/info.json similarity index 100% rename from keyboards/amj60/info.json rename to keyboards/amjkeyboard/amj60/info.json diff --git a/keyboards/amj60/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj60/keymaps/default/keymap.c similarity index 100% rename from keyboards/amj60/keymaps/default/keymap.c rename to keyboards/amjkeyboard/amj60/keymaps/default/keymap.c diff --git a/keyboards/amj60/readme.md b/keyboards/amjkeyboard/amj60/readme.md similarity index 92% rename from keyboards/amj60/readme.md rename to keyboards/amjkeyboard/amj60/readme.md index 50cf3cfcb2..8f276bd89f 100644 --- a/keyboards/amj60/readme.md +++ b/keyboards/amjkeyboard/amj60/readme.md @@ -11,11 +11,11 @@ A 60% keyboard. Make example for this keyboard (after setting up your build environment): - make amj60:default + make amjkeyboard/amj60:default Flashing example for this keyboard: - make amj60:default:flash + make amjkeyboard/amj60:default:flash To reset the board into bootloader mode, tap the Reset switch mounted on the bottom side of the PCB. diff --git a/keyboards/amj60/rules.mk b/keyboards/amjkeyboard/amj60/rules.mk similarity index 100% rename from keyboards/amj60/rules.mk rename to keyboards/amjkeyboard/amj60/rules.mk diff --git a/keyboards/amjkeyboard/amj66/config.h b/keyboards/amjkeyboard/amj66/config.h index 1f8a930a6a..cc84524b0b 100644 --- a/keyboards/amjkeyboard/amj66/config.h +++ b/keyboards/amjkeyboard/amj66/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x00D8 //A+M+J #define PRODUCT_ID 0xBD66 #define DEVICE_VER 0x0001 #define MANUFACTURER AMJKeyboard diff --git a/keyboards/amj96/amj96.c b/keyboards/amjkeyboard/amj96/amj96.c similarity index 100% rename from keyboards/amj96/amj96.c rename to keyboards/amjkeyboard/amj96/amj96.c diff --git a/keyboards/amj96/amj96.h b/keyboards/amjkeyboard/amj96/amj96.h similarity index 100% rename from keyboards/amj96/amj96.h rename to keyboards/amjkeyboard/amj96/amj96.h diff --git a/keyboards/amj96/config.h b/keyboards/amjkeyboard/amj96/config.h similarity index 99% rename from keyboards/amj96/config.h rename to keyboards/amjkeyboard/amj96/config.h index f5b26220b7..67b3699047 100644 --- a/keyboards/amj96/config.h +++ b/keyboards/amjkeyboard/amj96/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x00D8 //A+M+J #define PRODUCT_ID 0x6074 #define DEVICE_VER 0x0002 #define MANUFACTURER Han Chen diff --git a/keyboards/amj96/info.json b/keyboards/amjkeyboard/amj96/info.json similarity index 100% rename from keyboards/amj96/info.json rename to keyboards/amjkeyboard/amj96/info.json diff --git a/keyboards/amj96/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj96/keymaps/default/keymap.c similarity index 100% rename from keyboards/amj96/keymaps/default/keymap.c rename to keyboards/amjkeyboard/amj96/keymaps/default/keymap.c diff --git a/keyboards/amj96/matrix.c b/keyboards/amjkeyboard/amj96/matrix.c similarity index 100% rename from keyboards/amj96/matrix.c rename to keyboards/amjkeyboard/amj96/matrix.c diff --git a/keyboards/amj96/readme.md b/keyboards/amjkeyboard/amj96/readme.md similarity index 91% rename from keyboards/amj96/readme.md rename to keyboards/amjkeyboard/amj96/readme.md index 8cd4ea94a1..0941b6f3e1 100644 --- a/keyboards/amj96/readme.md +++ b/keyboards/amjkeyboard/amj96/readme.md @@ -8,11 +8,11 @@ The AMD96 is a 96 key custom keyboard with anodized aluminum case, twin usb port Make example for this keyboard (after setting up your build environment): - make amj96:default + make amjkeyboard/amj96:default Flashing example for this keyboard: - make amj96:default:flash + make amjkeyboard/amj96:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/amj96/rules.mk b/keyboards/amjkeyboard/amj96/rules.mk similarity index 100% rename from keyboards/amj96/rules.mk rename to keyboards/amjkeyboard/amj96/rules.mk diff --git a/keyboards/amjpad/amjpad.c b/keyboards/amjkeyboard/amjpad/amjpad.c similarity index 100% rename from keyboards/amjpad/amjpad.c rename to keyboards/amjkeyboard/amjpad/amjpad.c diff --git a/keyboards/amjpad/amjpad.h b/keyboards/amjkeyboard/amjpad/amjpad.h similarity index 100% rename from keyboards/amjpad/amjpad.h rename to keyboards/amjkeyboard/amjpad/amjpad.h diff --git a/keyboards/amjpad/config.h b/keyboards/amjkeyboard/amjpad/config.h similarity index 98% rename from keyboards/amjpad/config.h rename to keyboards/amjkeyboard/amjpad/config.h index dd8ed34e47..fe621b7bf3 100644 --- a/keyboards/amjpad/config.h +++ b/keyboards/amjkeyboard/amjpad/config.h @@ -20,7 +20,7 @@ along with this program. If not, see . #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED +#define VENDOR_ID 0x00D8 //A+M+J #define PRODUCT_ID 0x6060 #define DEVICE_VER 0x0003 #define MANUFACTURER AMJ diff --git a/keyboards/amjpad/info.json b/keyboards/amjkeyboard/amjpad/info.json similarity index 100% rename from keyboards/amjpad/info.json rename to keyboards/amjkeyboard/amjpad/info.json diff --git a/keyboards/amjpad/keymaps/default/keymap.c b/keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c similarity index 100% rename from keyboards/amjpad/keymaps/default/keymap.c rename to keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c diff --git a/keyboards/amjpad/keymaps/max/keymap.c b/keyboards/amjkeyboard/amjpad/keymaps/max/keymap.c similarity index 100% rename from keyboards/amjpad/keymaps/max/keymap.c rename to keyboards/amjkeyboard/amjpad/keymaps/max/keymap.c diff --git a/keyboards/amjpad/keymaps/ortho_left/keymap.c b/keyboards/amjkeyboard/amjpad/keymaps/ortho_left/keymap.c similarity index 100% rename from keyboards/amjpad/keymaps/ortho_left/keymap.c rename to keyboards/amjkeyboard/amjpad/keymaps/ortho_left/keymap.c diff --git a/keyboards/amjpad/keymaps/ortho_right/keymap.c b/keyboards/amjkeyboard/amjpad/keymaps/ortho_right/keymap.c similarity index 100% rename from keyboards/amjpad/keymaps/ortho_right/keymap.c rename to keyboards/amjkeyboard/amjpad/keymaps/ortho_right/keymap.c diff --git a/keyboards/amjpad/readme.md b/keyboards/amjkeyboard/amjpad/readme.md similarity index 92% rename from keyboards/amjpad/readme.md rename to keyboards/amjkeyboard/amjpad/readme.md index c069af25ad..98af32edef 100644 --- a/keyboards/amjpad/readme.md +++ b/keyboards/amjkeyboard/amjpad/readme.md @@ -9,6 +9,6 @@ Hardware Availability: https://geekhack.org/index.php?topic=83546.0 Make example for this keyboard (after setting up your build environment): - make amjpad:default + make amjkeyboard/amjpad:default See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. diff --git a/keyboards/amjpad/rules.mk b/keyboards/amjkeyboard/amjpad/rules.mk similarity index 100% rename from keyboards/amjpad/rules.mk rename to keyboards/amjkeyboard/amjpad/rules.mk From 580a5d25cb4a71775a2f376b58bbcd089aa1e95f Mon Sep 17 00:00:00 2001 From: jels <66403163+Jels02@users.noreply.github.com> Date: Wed, 20 Apr 2022 17:46:30 +1000 Subject: [PATCH 310/699] Fixed error in config (#16895) --- keyboards/jels/jels60/config.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/jels/jels60/config.h b/keyboards/jels/jels60/config.h index 0157da213c..6805018dd7 100644 --- a/keyboards/jels/jels60/config.h +++ b/keyboards/jels/jels60/config.h @@ -30,7 +30,7 @@ #define MATRIX_COLS 14 /*Define Matrix Pins */ -#define MATRIX_ROW_PINS {B3, D1, F0, F4, F1} +#define MATRIX_ROW_PINS {B3, D2, F0, F4, F1} #define MATRIX_COL_PINS {E6, C7, B4, D7, D6, D4, D5, D3, F5, F6, F7, C6, B6, B5} // Caps lock Pin From 81be7bb7b573e354c88ed6381d89e6613f4febc6 Mon Sep 17 00:00:00 2001 From: jpe230 Date: Wed, 20 Apr 2022 12:10:20 -0500 Subject: [PATCH 311/699] Fix i2c driver doc: Incorrect name (#16898) --- docs/i2c_driver.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/i2c_driver.md b/docs/i2c_driver.md index 95c588af44..f4e6c6619e 100644 --- a/docs/i2c_driver.md +++ b/docs/i2c_driver.md @@ -166,7 +166,7 @@ Send multiple bytes to the selected I2C device. ### `i2c_status_t i2c_receive(uint8_t address, uint8_t* data, uint16_t length, uint16_t timeout)` -Receive multiple bytes from the selected SPI device. +Receive multiple bytes from the selected I2C device. #### Arguments From fb4f25c0b57a9881f773cb2ac356bc84f06d488d Mon Sep 17 00:00:00 2001 From: Dasky <32983009+daskygit@users.noreply.github.com> Date: Thu, 21 Apr 2022 17:08:47 +0100 Subject: [PATCH 312/699] [Keyboard] Fix kin80 default keymap (#16893) --- keyboards/kin80/keymaps/default/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/kin80/keymaps/default/keymap.c b/keyboards/kin80/keymaps/default/keymap.c index 5da4874510..9ef3e2b2fc 100644 --- a/keyboards/kin80/keymaps/default/keymap.c +++ b/keyboards/kin80/keymaps/default/keymap.c @@ -97,6 +97,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { layer_state_t layer_state_set_user(layer_state_t state) { - writePin(LED4_PIN, layer_state_cmp(state, _L2)); + writePin(LED4_PIN, layer_state_cmp(state, _NM)); return state; } From 1e389c7904e42df36d8a2f64b315b83f70aa9b60 Mon Sep 17 00:00:00 2001 From: Simon Arlott <70171+nomis@users.noreply.github.com> Date: Thu, 21 Apr 2022 17:33:29 +0100 Subject: [PATCH 313/699] rgblight: Fix rgblight_blink_layer when multiple layers are active (#16824) --- quantum/rgblight/rgblight.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index f4ddb81e92..3bacbda876 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -829,18 +829,19 @@ void rgblight_blink_layer_repeat(uint8_t layer, uint16_t duration_ms, uint8_t ti void rgblight_blink_layer_repeat_helper(void) { if (_blinking_layer_mask != 0 && timer_expired(sync_timer_read(), _repeat_timer)) { for (uint8_t layer = 0; layer < RGBLIGHT_MAX_LAYERS; layer++) { - if ((_blinking_layer_mask & (rgblight_layer_mask_t)1 << layer) != 0 && _times_remaining > 0) { + if ((_blinking_layer_mask & (rgblight_layer_mask_t)1 << layer) != 0) { if (_times_remaining % 2 == 1) { rgblight_set_layer_state(layer, false); } else { rgblight_set_layer_state(layer, true); } - _times_remaining--; - _repeat_timer = sync_timer_read() + _dur; } } + _times_remaining--; if (_times_remaining <= 0) { _blinking_layer_mask = 0; + } else { + _repeat_timer = sync_timer_read() + _dur; } } } From 969c68a9ad1474f578e69469807cf5e3405cd3ae Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Thu, 21 Apr 2022 22:03:28 +0100 Subject: [PATCH 314/699] Provide better config defaults for bluepill boards (#16909) --- keyboards/bt66tech/bt66tech60/chconf.h | 29 ------------------- keyboards/cannonkeys/ortho48/chconf.h | 29 ------------------- keyboards/cannonkeys/ortho60/chconf.h | 29 ------------------- keyboards/cannonkeys/ortho75/chconf.h | 29 ------------------- keyboards/cannonkeys/practice60/chconf.h | 29 ------------------- keyboards/cannonkeys/practice65/chconf.h | 29 ------------------- keyboards/converter/siemens_tastatur/chconf.h | 29 ------------------- keyboards/handwired/onekey/bluepill/chconf.h | 28 ------------------ keyboards/handwired/pill60/bluepill/chconf.h | 29 ------------------- keyboards/handwired/sono1/stm32f103/chconf.h | 28 ------------------ keyboards/handwired/t111/chconf.h | 29 ------------------- keyboards/handwired/z150/chconf.h | 29 ------------------- keyboards/kabedon/kabedon98e/chconf.h | 28 ------------------ keyboards/mechlovin/hex4b/rev2/chconf.h | 24 --------------- keyboards/mlego/m65/rev1/chconf.h | 28 ------------------ keyboards/mlego/m65/rev2/chconf.h | 28 ------------------ keyboards/ramonimbao/squishyfrl/chconf.h | 24 --------------- keyboards/ramonimbao/squishytkl/chconf.h | 24 --------------- keyboards/rart/rartlice/chconf.h | 29 ------------------- .../tronguylabs/m122_3270/bluepill/chconf.h | 29 ------------------- keyboards/zvecr/split_blackpill/chconf.h | 29 ------------------- .../STM32_F103_STM32DUINO/configs/chconf.h | 8 +++++ 22 files changed, 8 insertions(+), 589 deletions(-) delete mode 100644 keyboards/bt66tech/bt66tech60/chconf.h delete mode 100644 keyboards/cannonkeys/ortho48/chconf.h delete mode 100644 keyboards/cannonkeys/ortho60/chconf.h delete mode 100644 keyboards/cannonkeys/ortho75/chconf.h delete mode 100644 keyboards/cannonkeys/practice60/chconf.h delete mode 100644 keyboards/cannonkeys/practice65/chconf.h delete mode 100644 keyboards/converter/siemens_tastatur/chconf.h delete mode 100644 keyboards/handwired/onekey/bluepill/chconf.h delete mode 100644 keyboards/handwired/pill60/bluepill/chconf.h delete mode 100644 keyboards/handwired/sono1/stm32f103/chconf.h delete mode 100644 keyboards/handwired/t111/chconf.h delete mode 100644 keyboards/handwired/z150/chconf.h delete mode 100644 keyboards/kabedon/kabedon98e/chconf.h delete mode 100644 keyboards/mechlovin/hex4b/rev2/chconf.h delete mode 100644 keyboards/mlego/m65/rev1/chconf.h delete mode 100644 keyboards/mlego/m65/rev2/chconf.h delete mode 100644 keyboards/ramonimbao/squishyfrl/chconf.h delete mode 100644 keyboards/ramonimbao/squishytkl/chconf.h delete mode 100644 keyboards/rart/rartlice/chconf.h delete mode 100644 keyboards/tronguylabs/m122_3270/bluepill/chconf.h delete mode 100644 keyboards/zvecr/split_blackpill/chconf.h create mode 100644 platforms/chibios/boards/STM32_F103_STM32DUINO/configs/chconf.h diff --git a/keyboards/bt66tech/bt66tech60/chconf.h b/keyboards/bt66tech/bt66tech60/chconf.h deleted file mode 100644 index 93c4ebe405..0000000000 --- a/keyboards/bt66tech/bt66tech60/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/bt66tech/bt66tech60/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/cannonkeys/ortho48/chconf.h b/keyboards/cannonkeys/ortho48/chconf.h deleted file mode 100644 index 583eb9febf..0000000000 --- a/keyboards/cannonkeys/ortho48/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/cannonkeys/ortho48/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/cannonkeys/ortho60/chconf.h b/keyboards/cannonkeys/ortho60/chconf.h deleted file mode 100644 index ae16c0f747..0000000000 --- a/keyboards/cannonkeys/ortho60/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/cannonkeys/ortho60/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/cannonkeys/ortho75/chconf.h b/keyboards/cannonkeys/ortho75/chconf.h deleted file mode 100644 index 2bf13952d9..0000000000 --- a/keyboards/cannonkeys/ortho75/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/cannonkeys/ortho75/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/cannonkeys/practice60/chconf.h b/keyboards/cannonkeys/practice60/chconf.h deleted file mode 100644 index ddf9c24df7..0000000000 --- a/keyboards/cannonkeys/practice60/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/cannonkeys/practice60/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/cannonkeys/practice65/chconf.h b/keyboards/cannonkeys/practice65/chconf.h deleted file mode 100644 index 0f412cfbf4..0000000000 --- a/keyboards/cannonkeys/practice65/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/cannonkeys/practice65/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/converter/siemens_tastatur/chconf.h b/keyboards/converter/siemens_tastatur/chconf.h deleted file mode 100644 index eed5776e77..0000000000 --- a/keyboards/converter/siemens_tastatur/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/converter/siemens_tastatur/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/handwired/onekey/bluepill/chconf.h b/keyboards/handwired/onekey/bluepill/chconf.h deleted file mode 100644 index 63236f2c2c..0000000000 --- a/keyboards/handwired/onekey/bluepill/chconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/handwired/pill60/bluepill/chconf.h b/keyboards/handwired/pill60/bluepill/chconf.h deleted file mode 100644 index c92d2a276d..0000000000 --- a/keyboards/handwired/pill60/bluepill/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/pill60/bluepill/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/handwired/sono1/stm32f103/chconf.h b/keyboards/handwired/sono1/stm32f103/chconf.h deleted file mode 100644 index 63236f2c2c..0000000000 --- a/keyboards/handwired/sono1/stm32f103/chconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/handwired/t111/chconf.h b/keyboards/handwired/t111/chconf.h deleted file mode 100644 index 962653ec4c..0000000000 --- a/keyboards/handwired/t111/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/t111/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/handwired/z150/chconf.h b/keyboards/handwired/z150/chconf.h deleted file mode 100644 index 975667df0e..0000000000 --- a/keyboards/handwired/z150/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/z150/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/kabedon/kabedon98e/chconf.h b/keyboards/kabedon/kabedon98e/chconf.h deleted file mode 100644 index f07706dfda..0000000000 --- a/keyboards/kabedon/kabedon98e/chconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/keyboards/kabedon/kabedon98e/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/mechlovin/hex4b/rev2/chconf.h b/keyboards/mechlovin/hex4b/rev2/chconf.h deleted file mode 100644 index fe716d6552..0000000000 --- a/keyboards/mechlovin/hex4b/rev2/chconf.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/mlego/m65/rev1/chconf.h b/keyboards/mlego/m65/rev1/chconf.h deleted file mode 100644 index 3ca88e0d2a..0000000000 --- a/keyboards/mlego/m65/rev1/chconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2021-2022 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/m65/rev1/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/mlego/m65/rev2/chconf.h b/keyboards/mlego/m65/rev2/chconf.h deleted file mode 100644 index 3ca88e0d2a..0000000000 --- a/keyboards/mlego/m65/rev2/chconf.h +++ /dev/null @@ -1,28 +0,0 @@ -/* Copyright 2021-2022 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/m65/rev1/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/ramonimbao/squishyfrl/chconf.h b/keyboards/ramonimbao/squishyfrl/chconf.h deleted file mode 100644 index ce018f56a7..0000000000 --- a/keyboards/ramonimbao/squishyfrl/chconf.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/ramonimbao/squishytkl/chconf.h b/keyboards/ramonimbao/squishytkl/chconf.h deleted file mode 100644 index ce018f56a7..0000000000 --- a/keyboards/ramonimbao/squishytkl/chconf.h +++ /dev/null @@ -1,24 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next diff --git a/keyboards/rart/rartlice/chconf.h b/keyboards/rart/rartlice/chconf.h deleted file mode 100644 index 0a89eb248c..0000000000 --- a/keyboards/rart/rartlice/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/rart/rartlice/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/tronguylabs/m122_3270/bluepill/chconf.h b/keyboards/tronguylabs/m122_3270/bluepill/chconf.h deleted file mode 100644 index c7a982aedd..0000000000 --- a/keyboards/tronguylabs/m122_3270/bluepill/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/handwired/onekey/bluepill/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/keyboards/zvecr/split_blackpill/chconf.h b/keyboards/zvecr/split_blackpill/chconf.h deleted file mode 100644 index e98ee9d790..0000000000 --- a/keyboards/zvecr/split_blackpill/chconf.h +++ /dev/null @@ -1,29 +0,0 @@ -/* Copyright 2020 QMK - * - * 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 . - */ - -/* - * This file was auto-generated by: - * `qmk chibios-confmigrate -i keyboards/zvecr/split_blackpill/chconf.h -r platforms/chibios/common/configs/chconf.h` - */ - -#pragma once - -#define CH_CFG_ST_TIMEDELTA 0 - -#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE - -#include_next - diff --git a/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/chconf.h b/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/chconf.h new file mode 100644 index 0000000000..0349c11dcc --- /dev/null +++ b/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/chconf.h @@ -0,0 +1,8 @@ +// Copyright 2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define CH_CFG_ST_TIMEDELTA 0 + +#include_next From 8f692e22e3ce176671bbdde51478ce0e6a57875b Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Fri, 22 Apr 2022 06:33:08 +0900 Subject: [PATCH 315/699] Helix/rev2 move to split common (#16723) --- keyboards/helix/local_drivers/i2c.c | 159 ----- keyboards/helix/local_drivers/i2c.h | 46 -- keyboards/helix/local_drivers/serial.c | 589 ------------------ keyboards/helix/local_drivers/serial.h | 86 --- keyboards/helix/local_drivers/ssd1306.c | 341 ---------- keyboards/helix/local_drivers/ssd1306.h | 89 --- keyboards/helix/rev2/config.h | 6 - keyboards/helix/rev2/custom/matrix.c | 341 ---------- keyboards/helix/rev2/custom/split_scomm.c | 92 --- keyboards/helix/rev2/custom/split_scomm.h | 21 - keyboards/helix/rev2/custom/split_util.c | 109 ---- keyboards/helix/rev2/custom/split_util.h | 21 - .../helix/rev2/keymaps/default/oled_display.c | 254 +++++--- keyboards/helix/rev2/local_features.mk | 53 +- ... => override_helix_options.mk-maintenance} | 0 keyboards/helix/rev2/rev2.c | 16 +- keyboards/helix/rev2/rules.mk | 7 +- 17 files changed, 162 insertions(+), 2068 deletions(-) delete mode 100644 keyboards/helix/local_drivers/i2c.c delete mode 100644 keyboards/helix/local_drivers/i2c.h delete mode 100644 keyboards/helix/local_drivers/serial.c delete mode 100644 keyboards/helix/local_drivers/serial.h delete mode 100644 keyboards/helix/local_drivers/ssd1306.c delete mode 100644 keyboards/helix/local_drivers/ssd1306.h delete mode 100644 keyboards/helix/rev2/custom/matrix.c delete mode 100644 keyboards/helix/rev2/custom/split_scomm.c delete mode 100644 keyboards/helix/rev2/custom/split_scomm.h delete mode 100644 keyboards/helix/rev2/custom/split_util.c delete mode 100644 keyboards/helix/rev2/custom/split_util.h rename keyboards/helix/rev2/{override_helix_options.mk => override_helix_options.mk-maintenance} (100%) diff --git a/keyboards/helix/local_drivers/i2c.c b/keyboards/helix/local_drivers/i2c.c deleted file mode 100644 index 9221429e96..0000000000 --- a/keyboards/helix/local_drivers/i2c.c +++ /dev/null @@ -1,159 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "i2c.h" - -// Limits the amount of we wait for any one i2c transaction. -// Since were running SCL line 100kHz (=> 10μs/bit), and each transactions is -// 9 bits, a single transaction will take around 90μs to complete. -// -// (F_CPU/SCL_CLOCK) => # of μC cycles to transfer a bit -// poll loop takes at least 8 clock cycles to execute -#define I2C_LOOP_TIMEOUT (9+1)*(F_CPU/SCL_CLOCK)/8 - -#define BUFFER_POS_INC() (slave_buffer_pos = (slave_buffer_pos+1)%SLAVE_BUFFER_SIZE) - -volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -static volatile uint8_t slave_buffer_pos; -static volatile bool slave_has_register_set = false; - -// Wait for an i2c operation to finish -inline static -void i2c_delay(void) { - uint16_t lim = 0; - while(!(TWCR & (1<10. - // Check datasheets for more info. - TWBR = ((F_CPU/SCL_CLOCK)-16)/2; -} - -// Start a transaction with the given i2c slave address. The direction of the -// transfer is set with I2C_READ and I2C_WRITE. -// returns: 0 => success -// 1 => error -uint8_t i2c_master_start(uint8_t address) { - TWCR = (1< slave ACK -// 1 => slave NACK -uint8_t i2c_master_write(uint8_t data) { - TWDR = data; - TWCR = (1<= SLAVE_BUFFER_SIZE ) { - ack = 0; - slave_buffer_pos = 0; - } - slave_has_register_set = true; - } else { - i2c_slave_buffer[slave_buffer_pos] = TWDR; - BUFFER_POS_INC(); - } - break; - - case TW_ST_SLA_ACK: - case TW_ST_DATA_ACK: - // master has addressed this device as a slave transmitter and is - // requesting data. - TWDR = i2c_slave_buffer[slave_buffer_pos]; - BUFFER_POS_INC(); - break; - - case TW_BUS_ERROR: // something went wrong, reset twi state - TWCR = 0; - default: - break; - } - // Reset everything, so we are ready for the next TWI interrupt - TWCR |= (1< - -#ifndef F_CPU -#define F_CPU 16000000UL -#endif - -#define I2C_READ 1 -#define I2C_WRITE 0 - -#define I2C_ACK 1 -#define I2C_NACK 0 - -#define SLAVE_BUFFER_SIZE 0x10 - -// i2c SCL clock frequency 400kHz -#define SCL_CLOCK 400000L - -extern volatile uint8_t i2c_slave_buffer[SLAVE_BUFFER_SIZE]; - -void i2c_master_init(void); -uint8_t i2c_master_start(uint8_t address); -void i2c_master_stop(void); -uint8_t i2c_master_write(uint8_t data); -uint8_t i2c_master_read(int); -void i2c_reset_state(void); -void i2c_slave_init(uint8_t address); - - -static inline unsigned char i2c_start_read(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_READ); -} - -static inline unsigned char i2c_start_write(unsigned char addr) { - return i2c_master_start((addr << 1) | I2C_WRITE); -} - -// from SSD1306 scrips -extern unsigned char i2c_rep_start(unsigned char addr); -extern void i2c_start_wait(unsigned char addr); -extern unsigned char i2c_readAck(void); -extern unsigned char i2c_readNak(void); -extern unsigned char i2c_read(unsigned char ack); - -#define i2c_read(ack) (ack) ? i2c_readAck() : i2c_readNak(); diff --git a/keyboards/helix/local_drivers/serial.c b/keyboards/helix/local_drivers/serial.c deleted file mode 100644 index 674c42d593..0000000000 --- a/keyboards/helix/local_drivers/serial.c +++ /dev/null @@ -1,589 +0,0 @@ -/* - * WARNING: be careful changing this code, it is very timing dependent - * - * 2018-10-28 checked - * avr-gcc 4.9.2 - * avr-gcc 5.4.0 - * avr-gcc 7.3.0 - */ - -#ifndef F_CPU -#define F_CPU 16000000 -#endif - -#include -#include -#include -#include -#include -#include "serial.h" - -#ifdef SOFT_SERIAL_PIN - -#ifdef __AVR_ATmega32U4__ - // if using ATmega32U4 I2C, can not use PD0 and PD1 in soft serial. - #ifdef USE_I2C - #if SOFT_SERIAL_PIN == D0 || SOFT_SERIAL_PIN == D1 - #error Using ATmega32U4 I2C, so can not use PD0, PD1 - #endif - #endif - - #if SOFT_SERIAL_PIN >= D0 && SOFT_SERIAL_PIN <= D3 - #define SERIAL_PIN_DDR DDRD - #define SERIAL_PIN_PORT PORTD - #define SERIAL_PIN_INPUT PIND - #if SOFT_SERIAL_PIN == D0 - #define SERIAL_PIN_MASK _BV(PD0) - #define EIMSK_BIT _BV(INT0) - #define EICRx_BIT (~(_BV(ISC00) | _BV(ISC01))) - #define SERIAL_PIN_INTERRUPT INT0_vect - #elif SOFT_SERIAL_PIN == D1 - #define SERIAL_PIN_MASK _BV(PD1) - #define EIMSK_BIT _BV(INT1) - #define EICRx_BIT (~(_BV(ISC10) | _BV(ISC11))) - #define SERIAL_PIN_INTERRUPT INT1_vect - #elif SOFT_SERIAL_PIN == D2 - #define SERIAL_PIN_MASK _BV(PD2) - #define EIMSK_BIT _BV(INT2) - #define EICRx_BIT (~(_BV(ISC20) | _BV(ISC21))) - #define SERIAL_PIN_INTERRUPT INT2_vect - #elif SOFT_SERIAL_PIN == D3 - #define SERIAL_PIN_MASK _BV(PD3) - #define EIMSK_BIT _BV(INT3) - #define EICRx_BIT (~(_BV(ISC30) | _BV(ISC31))) - #define SERIAL_PIN_INTERRUPT INT3_vect - #endif - #elif SOFT_SERIAL_PIN == E6 - #define SERIAL_PIN_DDR DDRE - #define SERIAL_PIN_PORT PORTE - #define SERIAL_PIN_INPUT PINE - #define SERIAL_PIN_MASK _BV(PE6) - #define EIMSK_BIT _BV(INT6) - #define EICRx_BIT (~(_BV(ISC60) | _BV(ISC61))) - #define SERIAL_PIN_INTERRUPT INT6_vect - #else - #error invalid SOFT_SERIAL_PIN value - #endif - -#else - #error serial.c now support ATmega32U4 only -#endif - -//////////////// for backward compatibility //////////////////////////////// -#if !defined(SERIAL_USE_SINGLE_TRANSACTION) && !defined(SERIAL_USE_MULTI_TRANSACTION) -/* --- USE OLD API (compatible with let's split serial.c) */ - #if SERIAL_SLAVE_BUFFER_LENGTH > 0 - uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0}; - #endif - #if SERIAL_MASTER_BUFFER_LENGTH > 0 - uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0}; - #endif - uint8_t volatile status0 = 0; - -SSTD_t transactions[] = { - { (uint8_t *)&status0, - #if SERIAL_MASTER_BUFFER_LENGTH > 0 - sizeof(serial_master_buffer), (uint8_t *)serial_master_buffer, - #else - 0, (uint8_t *)NULL, - #endif - #if SERIAL_SLAVE_BUFFER_LENGTH > 0 - sizeof(serial_slave_buffer), (uint8_t *)serial_slave_buffer - #else - 0, (uint8_t *)NULL, - #endif - } -}; - -void serial_master_init(void) -{ soft_serial_initiator_init(transactions, TID_LIMIT(transactions)); } - -void serial_slave_init(void) -{ soft_serial_target_init(transactions, TID_LIMIT(transactions)); } - -// 0 => no error -// 1 => slave did not respond -// 2 => checksum error -int serial_update_buffers() -{ - int result; - result = soft_serial_transaction(); - return result; -} - -#endif // end of OLD API (compatible with let's split serial.c) -//////////////////////////////////////////////////////////////////////////// - -#define ALWAYS_INLINE __attribute__((always_inline)) -#define NO_INLINE __attribute__((noinline)) -#define _delay_sub_us(x) __builtin_avr_delay_cycles(x) - -// parity check -#define ODD_PARITY 1 -#define EVEN_PARITY 0 -#define PARITY EVEN_PARITY - -#ifdef SERIAL_DELAY - // custom setup in config.h - // #define TID_SEND_ADJUST 2 - // #define SERIAL_DELAY 6 // micro sec - // #define READ_WRITE_START_ADJUST 30 // cycles - // #define READ_WRITE_WIDTH_ADJUST 8 // cycles -#else -// ============ Standard setups ============ - -#ifndef SELECT_SOFT_SERIAL_SPEED -#define SELECT_SOFT_SERIAL_SPEED 1 -// 0: about 189kbps -// 1: about 137kbps (default) -// 2: about 75kbps -// 3: about 39kbps -// 4: about 26kbps -// 5: about 20kbps -#endif - -#if __GNUC__ < 6 - #define TID_SEND_ADJUST 14 -#else - #define TID_SEND_ADJUST 2 -#endif - -#if SELECT_SOFT_SERIAL_SPEED == 0 - // Very High speed - #define SERIAL_DELAY 4 // micro sec - #if __GNUC__ < 6 - #define READ_WRITE_START_ADJUST 33 // cycles - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_START_ADJUST 34 // cycles - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#elif SELECT_SOFT_SERIAL_SPEED == 1 - // High speed - #define SERIAL_DELAY 6 // micro sec - #if __GNUC__ < 6 - #define READ_WRITE_START_ADJUST 30 // cycles - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_START_ADJUST 33 // cycles - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#elif SELECT_SOFT_SERIAL_SPEED == 2 - // Middle speed - #define SERIAL_DELAY 12 // micro sec - #define READ_WRITE_START_ADJUST 30 // cycles - #if __GNUC__ < 6 - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#elif SELECT_SOFT_SERIAL_SPEED == 3 - // Low speed - #define SERIAL_DELAY 24 // micro sec - #define READ_WRITE_START_ADJUST 30 // cycles - #if __GNUC__ < 6 - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#elif SELECT_SOFT_SERIAL_SPEED == 4 - // Very Low speed - #define SERIAL_DELAY 36 // micro sec - #define READ_WRITE_START_ADJUST 30 // cycles - #if __GNUC__ < 6 - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#elif SELECT_SOFT_SERIAL_SPEED == 5 - // Ultra Low speed - #define SERIAL_DELAY 48 // micro sec - #define READ_WRITE_START_ADJUST 30 // cycles - #if __GNUC__ < 6 - #define READ_WRITE_WIDTH_ADJUST 3 // cycles - #else - #define READ_WRITE_WIDTH_ADJUST 7 // cycles - #endif -#else -#error invalid SELECT_SOFT_SERIAL_SPEED value -#endif /* SELECT_SOFT_SERIAL_SPEED */ -#endif /* SERIAL_DELAY */ - -#define SERIAL_DELAY_HALF1 (SERIAL_DELAY/2) -#define SERIAL_DELAY_HALF2 (SERIAL_DELAY - SERIAL_DELAY/2) - -#define SLAVE_INT_WIDTH_US 1 -#ifndef SERIAL_USE_MULTI_TRANSACTION - #define SLAVE_INT_RESPONSE_TIME SERIAL_DELAY -#else - #define SLAVE_INT_ACK_WIDTH_UNIT 2 - #define SLAVE_INT_ACK_WIDTH 4 -#endif - -static SSTD_t *Transaction_table = NULL; -static uint8_t Transaction_table_size = 0; - -inline static void serial_delay(void) ALWAYS_INLINE; -inline static -void serial_delay(void) { - _delay_us(SERIAL_DELAY); -} - -inline static void serial_delay_half1(void) ALWAYS_INLINE; -inline static -void serial_delay_half1(void) { - _delay_us(SERIAL_DELAY_HALF1); -} - -inline static void serial_delay_half2(void) ALWAYS_INLINE; -inline static -void serial_delay_half2(void) { - _delay_us(SERIAL_DELAY_HALF2); -} - -inline static void serial_output(void) ALWAYS_INLINE; -inline static -void serial_output(void) { - SERIAL_PIN_DDR |= SERIAL_PIN_MASK; -} - -// make the serial pin an input with pull-up resistor -inline static void serial_input_with_pullup(void) ALWAYS_INLINE; -inline static -void serial_input_with_pullup(void) { - SERIAL_PIN_DDR &= ~SERIAL_PIN_MASK; - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -inline static uint8_t serial_read_pin(void) ALWAYS_INLINE; -inline static -uint8_t serial_read_pin(void) { - return !!(SERIAL_PIN_INPUT & SERIAL_PIN_MASK); -} - -inline static void serial_low(void) ALWAYS_INLINE; -inline static -void serial_low(void) { - SERIAL_PIN_PORT &= ~SERIAL_PIN_MASK; -} - -inline static void serial_high(void) ALWAYS_INLINE; -inline static -void serial_high(void) { - SERIAL_PIN_PORT |= SERIAL_PIN_MASK; -} - -void soft_serial_initiator_init(SSTD_t *sstd_table, int sstd_table_size) -{ - Transaction_table = sstd_table; - Transaction_table_size = (uint8_t)sstd_table_size; - serial_output(); - serial_high(); -} - -void soft_serial_target_init(SSTD_t *sstd_table, int sstd_table_size) -{ - Transaction_table = sstd_table; - Transaction_table_size = (uint8_t)sstd_table_size; - serial_input_with_pullup(); - - // Enable INT0-INT3,INT6 - EIMSK |= EIMSK_BIT; -#if SERIAL_PIN_MASK == _BV(PE6) - // Trigger on falling edge of INT6 - EICRB &= EICRx_BIT; -#else - // Trigger on falling edge of INT0-INT3 - EICRA &= EICRx_BIT; -#endif -} - -// Used by the sender to synchronize timing with the reciver. -static void sync_recv(void) NO_INLINE; -static -void sync_recv(void) { - for (uint8_t i = 0; i < SERIAL_DELAY*5 && serial_read_pin(); i++ ) { - } - // This shouldn't hang if the target disconnects because the - // serial line will float to high if the target does disconnect. - while (!serial_read_pin()); -} - -// Used by the reciver to send a synchronization signal to the sender. -static void sync_send(void) NO_INLINE; -static -void sync_send(void) { - serial_low(); - serial_delay(); - serial_high(); -} - -// Reads a byte from the serial line -static uint8_t serial_read_chunk(uint8_t *pterrcount, uint8_t bit) NO_INLINE; -static uint8_t serial_read_chunk(uint8_t *pterrcount, uint8_t bit) { - uint8_t byte, i, p, pb; - - _delay_sub_us(READ_WRITE_START_ADJUST); - for( i = 0, byte = 0, p = PARITY; i < bit; i++ ) { - serial_delay_half1(); // read the middle of pulses - if( serial_read_pin() ) { - byte = (byte << 1) | 1; p ^= 1; - } else { - byte = (byte << 1) | 0; p ^= 0; - } - _delay_sub_us(READ_WRITE_WIDTH_ADJUST); - serial_delay_half2(); - } - /* recive parity bit */ - serial_delay_half1(); // read the middle of pulses - pb = serial_read_pin(); - _delay_sub_us(READ_WRITE_WIDTH_ADJUST); - serial_delay_half2(); - - *pterrcount += (p != pb)? 1 : 0; - - return byte; -} - -// Sends a byte with MSB ordering -void serial_write_chunk(uint8_t data, uint8_t bit) NO_INLINE; -void serial_write_chunk(uint8_t data, uint8_t bit) { - uint8_t b, p; - for( p = PARITY, b = 1<<(bit-1); b ; b >>= 1) { - if(data & b) { - serial_high(); p ^= 1; - } else { - serial_low(); p ^= 0; - } - serial_delay(); - } - /* send parity bit */ - if(p & 1) { serial_high(); } - else { serial_low(); } - serial_delay(); - - serial_low(); // sync_send() / senc_recv() need raise edge -} - -static void serial_send_packet(uint8_t *buffer, uint8_t size) NO_INLINE; -static -void serial_send_packet(uint8_t *buffer, uint8_t size) { - for (uint8_t i = 0; i < size; ++i) { - uint8_t data; - data = buffer[i]; - sync_send(); - serial_write_chunk(data,8); - } -} - -static uint8_t serial_recive_packet(uint8_t *buffer, uint8_t size) NO_INLINE; -static -uint8_t serial_recive_packet(uint8_t *buffer, uint8_t size) { - uint8_t pecount = 0; - for (uint8_t i = 0; i < size; ++i) { - uint8_t data; - sync_recv(); - data = serial_read_chunk(&pecount, 8); - buffer[i] = data; - } - return pecount == 0; -} - -inline static -void change_sender2reciver(void) { - sync_send(); //0 - serial_delay_half1(); //1 - serial_low(); //2 - serial_input_with_pullup(); //2 - serial_delay_half1(); //3 -} - -inline static -void change_reciver2sender(void) { - sync_recv(); //0 - serial_delay(); //1 - serial_low(); //3 - serial_output(); //3 - serial_delay_half1(); //4 -} - -static inline uint8_t nibble_bits_count(uint8_t bits) -{ - bits = (bits & 0x5) + (bits >> 1 & 0x5); - bits = (bits & 0x3) + (bits >> 2 & 0x3); - return bits; -} - -// interrupt handle to be used by the target device -ISR(SERIAL_PIN_INTERRUPT) { - -#ifndef SERIAL_USE_MULTI_TRANSACTION - serial_low(); - serial_output(); - SSTD_t *trans = Transaction_table; -#else - // recive transaction table index - uint8_t tid, bits; - uint8_t pecount = 0; - sync_recv(); - bits = serial_read_chunk(&pecount,7); - tid = bits>>3; - bits = (bits&7) != nibble_bits_count(tid); - if( bits || pecount> 0 || tid > Transaction_table_size ) { - return; - } - serial_delay_half1(); - - serial_high(); // response step1 low->high - serial_output(); - _delay_sub_us(SLAVE_INT_ACK_WIDTH_UNIT*SLAVE_INT_ACK_WIDTH); - SSTD_t *trans = &Transaction_table[tid]; - serial_low(); // response step2 ack high->low -#endif - - // target send phase - if( trans->target2initiator_buffer_size > 0 ) - serial_send_packet((uint8_t *)trans->target2initiator_buffer, - trans->target2initiator_buffer_size); - // target switch to input - change_sender2reciver(); - - // target recive phase - if( trans->initiator2target_buffer_size > 0 ) { - if (serial_recive_packet((uint8_t *)trans->initiator2target_buffer, - trans->initiator2target_buffer_size) ) { - *trans->status = TRANSACTION_ACCEPTED; - } else { - *trans->status = TRANSACTION_DATA_ERROR; - } - } else { - *trans->status = TRANSACTION_ACCEPTED; - } - - sync_recv(); //weit initiator output to high -} - -///////// -// start transaction by initiator -// -// int soft_serial_transaction(int sstd_index) -// -// Returns: -// TRANSACTION_END -// TRANSACTION_NO_RESPONSE -// TRANSACTION_DATA_ERROR -// this code is very time dependent, so we need to disable interrupts -#ifndef SERIAL_USE_MULTI_TRANSACTION -int soft_serial_transaction(void) { - SSTD_t *trans = Transaction_table; -#else -int soft_serial_transaction(int sstd_index) { - if( sstd_index > Transaction_table_size ) - return TRANSACTION_TYPE_ERROR; - SSTD_t *trans = &Transaction_table[sstd_index]; -#endif - cli(); - - // signal to the target that we want to start a transaction - serial_output(); - serial_low(); - _delay_us(SLAVE_INT_WIDTH_US); - -#ifndef SERIAL_USE_MULTI_TRANSACTION - // wait for the target response - serial_input_with_pullup(); - _delay_us(SLAVE_INT_RESPONSE_TIME); - - // check if the target is present - if (serial_read_pin()) { - // target failed to pull the line low, assume not present - serial_output(); - serial_high(); - *trans->status = TRANSACTION_NO_RESPONSE; - sei(); - return TRANSACTION_NO_RESPONSE; - } - -#else - // send transaction table index - int tid = (sstd_index<<3) | (7 & nibble_bits_count(sstd_index)); - sync_send(); - _delay_sub_us(TID_SEND_ADJUST); - serial_write_chunk(tid, 7); - serial_delay_half1(); - - // wait for the target response (step1 low->high) - serial_input_with_pullup(); - while( !serial_read_pin() ) { - _delay_sub_us(2); - } - - // check if the target is present (step2 high->low) - for( int i = 0; serial_read_pin(); i++ ) { - if (i > SLAVE_INT_ACK_WIDTH + 1) { - // slave failed to pull the line low, assume not present - serial_output(); - serial_high(); - *trans->status = TRANSACTION_NO_RESPONSE; - sei(); - return TRANSACTION_NO_RESPONSE; - } - _delay_sub_us(SLAVE_INT_ACK_WIDTH_UNIT); - } -#endif - - // initiator recive phase - // if the target is present syncronize with it - if( trans->target2initiator_buffer_size > 0 ) { - if (!serial_recive_packet((uint8_t *)trans->target2initiator_buffer, - trans->target2initiator_buffer_size) ) { - serial_output(); - serial_high(); - *trans->status = TRANSACTION_DATA_ERROR; - sei(); - return TRANSACTION_DATA_ERROR; - } - } - - // initiator switch to output - change_reciver2sender(); - - // initiator send phase - if( trans->initiator2target_buffer_size > 0 ) { - serial_send_packet((uint8_t *)trans->initiator2target_buffer, - trans->initiator2target_buffer_size); - } - - // always, release the line when not in use - sync_send(); - - *trans->status = TRANSACTION_END; - sei(); - return TRANSACTION_END; -} - -#ifdef SERIAL_USE_MULTI_TRANSACTION -int soft_serial_get_and_clean_status(int sstd_index) { - SSTD_t *trans = &Transaction_table[sstd_index]; - cli(); - int retval = *trans->status; - *trans->status = 0;; - sei(); - return retval; -} -#endif - -#endif - -// Helix serial.c history -// 2018-1-29 fork from let's split and add PD2, modify sync_recv() (#2308, bceffdefc) -// 2018-6-28 bug fix master to slave comm and speed up (#3255, 1038bbef4) -// (adjusted with avr-gcc 4.9.2) -// 2018-7-13 remove USE_SERIAL_PD2 macro (#3374, f30d6dd78) -// (adjusted with avr-gcc 4.9.2) -// 2018-8-11 add support multi-type transaction (#3608, feb5e4aae) -// (adjusted with avr-gcc 4.9.2) -// 2018-10-21 fix serial and RGB animation conflict (#4191, 4665e4fff) -// (adjusted with avr-gcc 7.3.0) -// 2018-10-28 re-adjust compiler depend value of delay (#4269, 8517f8a66) -// (adjusted with avr-gcc 5.4.0, 7.3.0) diff --git a/keyboards/helix/local_drivers/serial.h b/keyboards/helix/local_drivers/serial.h deleted file mode 100644 index b4dcdafe57..0000000000 --- a/keyboards/helix/local_drivers/serial.h +++ /dev/null @@ -1,86 +0,0 @@ -#pragma once - -#include - -// ///////////////////////////////////////////////////////////////// -// Need Soft Serial defines in config.h -// ///////////////////////////////////////////////////////////////// -// ex. -// #define SOFT_SERIAL_PIN ?? // ?? = D0,D1,D2,D3,E6 -// OPTIONAL: #define SELECT_SOFT_SERIAL_SPEED ? // ? = 1,2,3,4,5 -// // 1: about 137kbps (default) -// // 2: about 75kbps -// // 3: about 39kbps -// // 4: about 26kbps -// // 5: about 20kbps -// -// //// USE OLD API (compatible with let's split serial.c) -// ex. -// #define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 -// #define SERIAL_MASTER_BUFFER_LENGTH 1 -// -// //// USE NEW API -// //// USE simple API (using signle-type transaction function) -// #define SERIAL_USE_SINGLE_TRANSACTION -// //// USE flexible API (using multi-type transaction function) -// #define SERIAL_USE_MULTI_TRANSACTION -// -// ///////////////////////////////////////////////////////////////// - - -//////////////// for backward compatibility //////////////////////////////// -#if !defined(SERIAL_USE_SINGLE_TRANSACTION) && !defined(SERIAL_USE_MULTI_TRANSACTION) -/* --- USE OLD API (compatible with let's split serial.c) */ - #if SERIAL_SLAVE_BUFFER_LENGTH > 0 - extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH]; - #endif - #if SERIAL_MASTER_BUFFER_LENGTH > 0 - extern volatile uint8_t serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH]; - #endif - - void serial_master_init(void); - void serial_slave_init(void); - int serial_update_buffers(void); - -#endif // end of USE OLD API -//////////////////////////////////////////////////////////////////////////// - -// Soft Serial Transaction Descriptor -typedef struct _SSTD_t { - uint8_t *status; - uint8_t initiator2target_buffer_size; - uint8_t *initiator2target_buffer; - uint8_t target2initiator_buffer_size; - uint8_t *target2initiator_buffer; -} SSTD_t; -#define TID_LIMIT( table ) (sizeof(table) / sizeof(SSTD_t)) - -// initiator is transaction start side -void soft_serial_initiator_init(SSTD_t *sstd_table, int sstd_table_size); -// target is interrupt accept side -void soft_serial_target_init(SSTD_t *sstd_table, int sstd_table_size); - -// initiator resullt -#define TRANSACTION_END 0 -#define TRANSACTION_NO_RESPONSE 0x1 -#define TRANSACTION_DATA_ERROR 0x2 -#define TRANSACTION_TYPE_ERROR 0x4 -#ifndef SERIAL_USE_MULTI_TRANSACTION -int soft_serial_transaction(void); -#else -int soft_serial_transaction(int sstd_index); -#endif - -// target status -// *SSTD_t.status has -// initiator: -// TRANSACTION_END -// or TRANSACTION_NO_RESPONSE -// or TRANSACTION_DATA_ERROR -// target: -// TRANSACTION_DATA_ERROR -// or TRANSACTION_ACCEPTED -#define TRANSACTION_ACCEPTED 0x8 -#ifdef SERIAL_USE_MULTI_TRANSACTION -int soft_serial_get_and_clean_status(int sstd_index); -#endif diff --git a/keyboards/helix/local_drivers/ssd1306.c b/keyboards/helix/local_drivers/ssd1306.c deleted file mode 100644 index 1cfb38037c..0000000000 --- a/keyboards/helix/local_drivers/ssd1306.c +++ /dev/null @@ -1,341 +0,0 @@ - -#ifdef SSD1306OLED - -#include "ssd1306.h" -#include "i2c.h" -#include -#include "print.h" -#ifndef LOCAL_GLCDFONT -#include "common/glcdfont.c" -#else -#include "helixfont.h" -#endif -#ifdef PROTOCOL_LUFA -#include "lufa.h" -#endif -#include "sendchar.h" -#include "timer.h" - -struct CharacterMatrix display; - -// Set this to 1 to help diagnose early startup problems -// when testing power-on with ble. Turn it off otherwise, -// as the latency of printing most of the debug info messes -// with the matrix scan, causing keys to drop. -#define DEBUG_TO_SCREEN 0 - -//static uint16_t last_battery_update; -//static uint32_t vbat; -//#define BatteryUpdateInterval 10000 /* milliseconds */ - -// 'last_flush' is declared as uint16_t, -// so this must be less than 65535 -#define ScreenOffInterval 60000 /* milliseconds */ -#if DEBUG_TO_SCREEN -static uint8_t displaying; -#endif -static uint16_t last_flush; - -static bool force_dirty = true; - -// Write command sequence. -// Returns true on success. -static inline bool _send_cmd1(uint8_t cmd) { - bool res = false; - - if (i2c_start_write(SSD1306_ADDRESS)) { - xprintf("failed to start write to %d\n", SSD1306_ADDRESS); - goto done; - } - - if (i2c_master_write(0x0 /* command byte follows */)) { - print("failed to write control byte\n"); - - goto done; - } - - if (i2c_master_write(cmd)) { - xprintf("failed to write command %d\n", cmd); - goto done; - } - res = true; -done: - i2c_master_stop(); - return res; -} - -// Write 2-byte command sequence. -// Returns true on success -static inline bool _send_cmd2(uint8_t cmd, uint8_t opr) { - if (!_send_cmd1(cmd)) { - return false; - } - return _send_cmd1(opr); -} - -// Write 3-byte command sequence. -// Returns true on success -static inline bool _send_cmd3(uint8_t cmd, uint8_t opr1, uint8_t opr2) { - if (!_send_cmd1(cmd)) { - return false; - } - if (!_send_cmd1(opr1)) { - return false; - } - return _send_cmd1(opr2); -} - -#define send_cmd1(c) if (!_send_cmd1(c)) {goto done;} -#define send_cmd2(c,o) if (!_send_cmd2(c,o)) {goto done;} -#define send_cmd3(c,o1,o2) if (!_send_cmd3(c,o1,o2)) {goto done;} - -static void clear_display(void) { - matrix_clear(&display); - - // Clear all of the display bits (there can be random noise - // in the RAM on startup) - send_cmd3(PageAddr, 0, (DisplayHeight / 8) - 1); - send_cmd3(ColumnAddr, 0, DisplayWidth - 1); - - if (i2c_start_write(SSD1306_ADDRESS)) { - goto done; - } - if (i2c_master_write(0x40)) { - // Data mode - goto done; - } - for (uint8_t row = 0; row < MatrixRows; ++row) { - for (uint8_t col = 0; col < DisplayWidth; ++col) { - i2c_master_write(0); - } - } - - display.dirty = false; - -done: - i2c_master_stop(); -} - -#if DEBUG_TO_SCREEN -#undef sendchar -static int8_t capture_sendchar(uint8_t c) { - sendchar(c); - iota_gfx_write_char(c); - - if (!displaying) { - iota_gfx_flush(); - } - return 0; -} -#endif - -bool iota_gfx_init(bool rotate) { - bool success = false; - - i2c_master_init(); - send_cmd1(DisplayOff); - send_cmd2(SetDisplayClockDiv, 0x80); - send_cmd2(SetMultiPlex, DisplayHeight - 1); - - send_cmd2(SetDisplayOffset, 0); - - - send_cmd1(SetStartLine | 0x0); - send_cmd2(SetChargePump, 0x14 /* Enable */); - send_cmd2(SetMemoryMode, 0 /* horizontal addressing */); - - if(rotate){ - // the following Flip the display orientation 180 degrees - send_cmd1(SegRemap); - send_cmd1(ComScanInc); - }else{ - // Flips the display orientation 0 degrees - send_cmd1(SegRemap | 0x1); - send_cmd1(ComScanDec); - } - - send_cmd2(SetComPins, 0x2); - send_cmd2(SetContrast, 0x8f); - send_cmd2(SetPreCharge, 0xf1); - send_cmd2(SetVComDetect, 0x40); - send_cmd1(DisplayAllOnResume); - send_cmd1(NormalDisplay); - send_cmd1(DeActivateScroll); - send_cmd1(DisplayOn); - - send_cmd2(SetContrast, 0); // Dim - - clear_display(); - - success = true; - - iota_gfx_flush(); - -#if DEBUG_TO_SCREEN - print_set_sendchar(capture_sendchar); -#endif - -done: - return success; -} - -bool iota_gfx_off(void) { - bool success = false; - - send_cmd1(DisplayOff); - success = true; - -done: - return success; -} - -bool iota_gfx_on(void) { - bool success = false; - - send_cmd1(DisplayOn); - success = true; - -done: - return success; -} - -void matrix_write_char_inner(struct CharacterMatrix *matrix, uint8_t c) { - *matrix->cursor = c; - ++matrix->cursor; - - if (matrix->cursor - &matrix->display[0][0] == sizeof(matrix->display)) { - // We went off the end; scroll the display upwards by one line - memmove(&matrix->display[0], &matrix->display[1], - MatrixCols * (MatrixRows - 1)); - matrix->cursor = &matrix->display[MatrixRows - 1][0]; - memset(matrix->cursor, ' ', MatrixCols); - } -} - -void matrix_write_char(struct CharacterMatrix *matrix, uint8_t c) { - matrix->dirty = true; - - if (c == '\n') { - // Clear to end of line from the cursor and then move to the - // start of the next line - uint8_t cursor_col = (matrix->cursor - &matrix->display[0][0]) % MatrixCols; - - while (cursor_col++ < MatrixCols) { - matrix_write_char_inner(matrix, ' '); - } - return; - } - - matrix_write_char_inner(matrix, c); -} - -void iota_gfx_write_char(uint8_t c) { - matrix_write_char(&display, c); -} - -void matrix_write(struct CharacterMatrix *matrix, const char *data) { - const char *end = data + strlen(data); - while (data < end) { - matrix_write_char(matrix, *data); - ++data; - } -} - -void iota_gfx_write(const char *data) { - matrix_write(&display, data); -} - -void matrix_write_P(struct CharacterMatrix *matrix, const char *data) { - while (true) { - uint8_t c = pgm_read_byte(data); - if (c == 0) { - return; - } - matrix_write_char(matrix, c); - ++data; - } -} - -void iota_gfx_write_P(const char *data) { - matrix_write_P(&display, data); -} - -void matrix_clear(struct CharacterMatrix *matrix) { - memset(matrix->display, ' ', sizeof(matrix->display)); - matrix->cursor = &matrix->display[0][0]; - matrix->dirty = true; -} - -void iota_gfx_clear_screen(void) { - matrix_clear(&display); -} - -void matrix_render(struct CharacterMatrix *matrix) { - last_flush = timer_read(); - iota_gfx_on(); -#if DEBUG_TO_SCREEN - ++displaying; -#endif - - // Move to the home position - send_cmd3(PageAddr, 0, MatrixRows - 1); - send_cmd3(ColumnAddr, 0, (MatrixCols * FontWidth) - 1); - - if (i2c_start_write(SSD1306_ADDRESS)) { - goto done; - } - if (i2c_master_write(0x40)) { - // Data mode - goto done; - } - - for (uint8_t row = 0; row < MatrixRows; ++row) { - for (uint8_t col = 0; col < MatrixCols; ++col) { - const uint8_t *glyph = font + (matrix->display[row][col] * FontWidth); - - for (uint8_t glyphCol = 0; glyphCol < FontWidth; ++glyphCol) { - uint8_t colBits = pgm_read_byte(glyph + glyphCol); - i2c_master_write(colBits); - } - - // 1 column of space between chars (it's not included in the glyph) - //i2c_master_write(0); - } - } - - matrix->dirty = false; - -done: - i2c_master_stop(); -#if DEBUG_TO_SCREEN - --displaying; -#endif -} - -void iota_gfx_flush(void) { - matrix_render(&display); -} - -__attribute__ ((weak)) -void iota_gfx_task_user(void) { -} - -void iota_gfx_task(void) { - iota_gfx_task_user(); - - if (display.dirty|| force_dirty) { - iota_gfx_flush(); - force_dirty = false; - } - - if (timer_elapsed(last_flush) > ScreenOffInterval) { - iota_gfx_off(); - } -} - -bool process_record_gfx(uint16_t keycode, keyrecord_t *record) { - force_dirty = true; - return true; -} - -#endif diff --git a/keyboards/helix/local_drivers/ssd1306.h b/keyboards/helix/local_drivers/ssd1306.h deleted file mode 100644 index a7527f4ebc..0000000000 --- a/keyboards/helix/local_drivers/ssd1306.h +++ /dev/null @@ -1,89 +0,0 @@ -#pragma once - -#include -#include -#include "action.h" - -enum ssd1306_cmds { - DisplayOff = 0xAE, - DisplayOn = 0xAF, - - SetContrast = 0x81, - DisplayAllOnResume = 0xA4, - - DisplayAllOn = 0xA5, - NormalDisplay = 0xA6, - InvertDisplay = 0xA7, - SetDisplayOffset = 0xD3, - SetComPins = 0xda, - SetVComDetect = 0xdb, - SetDisplayClockDiv = 0xD5, - SetPreCharge = 0xd9, - SetMultiPlex = 0xa8, - SetLowColumn = 0x00, - SetHighColumn = 0x10, - SetStartLine = 0x40, - - SetMemoryMode = 0x20, - ColumnAddr = 0x21, - PageAddr = 0x22, - - ComScanInc = 0xc0, - ComScanDec = 0xc8, - SegRemap = 0xa0, - SetChargePump = 0x8d, - ExternalVcc = 0x01, - SwitchCapVcc = 0x02, - - ActivateScroll = 0x2f, - DeActivateScroll = 0x2e, - SetVerticalScrollArea = 0xa3, - RightHorizontalScroll = 0x26, - LeftHorizontalScroll = 0x27, - VerticalAndRightHorizontalScroll = 0x29, - VerticalAndLeftHorizontalScroll = 0x2a, -}; - -// Controls the SSD1306 128x32 OLED display via i2c - -#ifndef SSD1306_ADDRESS -#define SSD1306_ADDRESS 0x3C -#endif - -#define DisplayHeight 32 -#define DisplayWidth 128 - -#define FontHeight 8 -#define FontWidth 6 - -#define MatrixRows (DisplayHeight / FontHeight) -#define MatrixCols (DisplayWidth / FontWidth) - -struct CharacterMatrix { - uint8_t display[MatrixRows][MatrixCols]; - uint8_t *cursor; - bool dirty; -}; - -extern struct CharacterMatrix display; - -bool iota_gfx_init(bool rotate); -void iota_gfx_task(void); -bool iota_gfx_off(void); -bool iota_gfx_on(void); -void iota_gfx_flush(void); -void iota_gfx_write_char(uint8_t c); -void iota_gfx_write(const char *data); -void iota_gfx_write_P(const char *data); -void iota_gfx_clear_screen(void); - -void iota_gfx_task_user(void); - -void matrix_clear(struct CharacterMatrix *matrix); -void matrix_write_char_inner(struct CharacterMatrix *matrix, uint8_t c); -void matrix_write_char(struct CharacterMatrix *matrix, uint8_t c); -void matrix_write(struct CharacterMatrix *matrix, const char *data); -void matrix_write_P(struct CharacterMatrix *matrix, const char *data); -void matrix_render(struct CharacterMatrix *matrix); - -bool process_record_gfx(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/helix/rev2/config.h b/keyboards/helix/rev2/config.h index 577edba56b..8c6210bae4 100644 --- a/keyboards/helix/rev2/config.h +++ b/keyboards/helix/rev2/config.h @@ -45,12 +45,6 @@ along with this program. If not, see . // #define MASTER_RIGHT // #define EE_HANDS -// Helix keyboard OLED support -// see ./local_features.mk: OLED_SELECT=local -#ifdef OLED_LOCAL_ENABLE - #define SSD1306OLED -#endif - #define OLED_UPDATE_INTERVAL 50 /* Select rows configuration */ diff --git a/keyboards/helix/rev2/custom/matrix.c b/keyboards/helix/rev2/custom/matrix.c deleted file mode 100644 index 5221d7fd4e..0000000000 --- a/keyboards/helix/rev2/custom/matrix.c +++ /dev/null @@ -1,341 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -/* - * scan matrix - */ -#include -#include -#include -#include -#include -#include -#include -#include "print.h" -#include "debug.h" -#include "util.h" -#include "matrix.h" -#include "split_util.h" -#include "quantum.h" - -#ifdef USE_MATRIX_I2C -# include "i2c.h" -#else // USE_SERIAL -# include "split_scomm.h" -#endif - -#ifndef DEBOUNCE -# define DEBOUNCE 5 -#endif - -#define ERROR_DISCONNECT_COUNT 5 - -static uint8_t debouncing = DEBOUNCE; -static const int ROWS_PER_HAND = MATRIX_ROWS/2; -static uint8_t error_count = 0; - -static const uint8_t row_pins[MATRIX_ROWS] = MATRIX_ROW_PINS; -static const uint8_t col_pins[MATRIX_COLS] = MATRIX_COL_PINS; - -/* matrix state(1:on, 0:off) */ -static matrix_row_t matrix[MATRIX_ROWS]; -static matrix_row_t matrix_debouncing[MATRIX_ROWS]; - -static matrix_row_t read_cols(void); -static void init_cols(void); -static void unselect_rows(void); -static void select_row(uint8_t row); -static uint8_t matrix_master_scan(void); - - -__attribute__ ((weak)) -void matrix_init_kb(void) { - matrix_init_user(); -} - -__attribute__ ((weak)) -void matrix_scan_kb(void) { - matrix_scan_user(); -} - -__attribute__ ((weak)) -void matrix_init_user(void) { -} - -__attribute__ ((weak)) -void matrix_scan_user(void) { -} - -inline -uint8_t matrix_rows(void) -{ - return MATRIX_ROWS; -} - -inline -uint8_t matrix_cols(void) -{ - return MATRIX_COLS; -} - -void matrix_init(void) -{ - split_keyboard_setup(); - - // initialize row and col - unselect_rows(); - init_cols(); - - setPinOutput(B0); - setPinOutput(D5); - writePinHigh(B0); - writePinHigh(D5); - - // initialize matrix state: all keys off - for (uint8_t i=0; i < MATRIX_ROWS; i++) { - matrix[i] = 0; - matrix_debouncing[i] = 0; - } - - matrix_init_quantum(); -} - -uint8_t _matrix_scan(void) -{ - // Right hand is stored after the left in the matirx so, we need to offset it - int offset = isLeftHand ? 0 : (ROWS_PER_HAND); - - for (uint8_t i = 0; i < ROWS_PER_HAND; i++) { - select_row(i); - _delay_us(30); // without this wait read unstable value. - matrix_row_t cols = read_cols(); - if (matrix_debouncing[i+offset] != cols) { - matrix_debouncing[i+offset] = cols; - debouncing = DEBOUNCE; - } - unselect_rows(); - } - - if (debouncing) { - if (--debouncing) { - _delay_ms(1); - } else { - for (uint8_t i = 0; i < ROWS_PER_HAND; i++) { - matrix[i+offset] = matrix_debouncing[i+offset]; - } - } - } - - return 1; -} - -#ifdef USE_MATRIX_I2C - -// Get rows from other half over i2c -int i2c_transaction(void) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - - int err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_WRITE); - if (err) goto i2c_error; - - // start of matrix stored at 0x00 - err = i2c_master_write(0x00); - if (err) goto i2c_error; - - // Start read - err = i2c_master_start(SLAVE_I2C_ADDRESS + I2C_READ); - if (err) goto i2c_error; - - if (!err) { - int i; - for (i = 0; i < ROWS_PER_HAND-1; ++i) { - matrix[slaveOffset+i] = i2c_master_read(I2C_ACK); - } - matrix[slaveOffset+i] = i2c_master_read(I2C_NACK); - i2c_master_stop(); - } else { -i2c_error: // the cable is disconnceted, or something else went wrong - i2c_reset_state(); - return err; - } - - return 0; -} - -#else // USE_SERIAL - -int serial_transaction(int master_changed) { - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; -#ifdef SERIAL_USE_MULTI_TRANSACTION - int ret=serial_update_buffers(master_changed); -#else - int ret=serial_update_buffers(); -#endif - if (ret ) { - if(ret==2) writePinLow(B0); - return 1; - } - writePinHigh(B0); - memcpy(&matrix[slaveOffset], - (void *)serial_slave_buffer, sizeof(serial_slave_buffer)); - return 0; -} -#endif - -uint8_t matrix_scan(void) -{ - if (is_helix_master()) { - matrix_master_scan(); - }else{ - matrix_slave_scan(); - int offset = (isLeftHand) ? ROWS_PER_HAND : 0; - memcpy(&matrix[offset], - (void *)serial_master_buffer, sizeof(serial_master_buffer)); - matrix_scan_quantum(); - } - return 1; -} - - -uint8_t matrix_master_scan(void) { - - int ret = _matrix_scan(); - int mchanged = 1; - -#ifndef KEYBOARD_helix_rev1 - int offset = (isLeftHand) ? 0 : ROWS_PER_HAND; - -#ifdef USE_MATRIX_I2C -// for (int i = 0; i < ROWS_PER_HAND; ++i) { - /* i2c_slave_buffer[i] = matrix[offset+i]; */ -// i2c_slave_buffer[i] = matrix[offset+i]; -// } -#else // USE_SERIAL - #ifdef SERIAL_USE_MULTI_TRANSACTION - mchanged = memcmp((void *)serial_master_buffer, - &matrix[offset], sizeof(serial_master_buffer)); - #endif - memcpy((void *)serial_master_buffer, - &matrix[offset], sizeof(serial_master_buffer)); -#endif -#endif - -#ifdef USE_MATRIX_I2C - if( i2c_transaction() ) { -#else // USE_SERIAL - if( serial_transaction(mchanged) ) { -#endif - // turn on the indicator led when halves are disconnected - writePinLow(D5); - - error_count++; - - if (error_count > ERROR_DISCONNECT_COUNT) { - // reset other half if disconnected - int slaveOffset = (isLeftHand) ? (ROWS_PER_HAND) : 0; - for (int i = 0; i < ROWS_PER_HAND; ++i) { - matrix[slaveOffset+i] = 0; - } - } - } else { - // turn off the indicator led on no error - writePinHigh(D5); - error_count = 0; - } - matrix_scan_quantum(); - return ret; -} - -void matrix_slave_scan(void) { - _matrix_scan(); - - int offset = (isLeftHand) ? 0 : ROWS_PER_HAND; - -#ifdef USE_MATRIX_I2C - for (int i = 0; i < ROWS_PER_HAND; ++i) { - /* i2c_slave_buffer[i] = matrix[offset+i]; */ - i2c_slave_buffer[i] = matrix[offset+i]; - } -#else // USE_SERIAL - #ifdef SERIAL_USE_MULTI_TRANSACTION - int change = 0; - #endif - for (int i = 0; i < ROWS_PER_HAND; ++i) { - #ifdef SERIAL_USE_MULTI_TRANSACTION - if( serial_slave_buffer[i] != matrix[offset+i] ) - change = 1; - #endif - serial_slave_buffer[i] = matrix[offset+i]; - } - #ifdef SERIAL_USE_MULTI_TRANSACTION - slave_buffer_change_count += change; - #endif -#endif -} - -inline -bool matrix_is_on(uint8_t row, uint8_t col) -{ - return (matrix[row] & ((matrix_row_t)1<> 4) + 1) &= ~_BV(col_pins[x] & 0xF); - _SFR_IO8((col_pins[x] >> 4) + 2) |= _BV(col_pins[x] & 0xF); - } -} - -static matrix_row_t read_cols(void) -{ - matrix_row_t result = 0; - for(int x = 0; x < MATRIX_COLS; x++) { - result |= (_SFR_IO8(col_pins[x] >> 4) & _BV(col_pins[x] & 0xF)) ? 0 : (1 << x); - } - return result; -} - -static void unselect_rows(void) -{ - for(int x = 0; x < ROWS_PER_HAND; x++) { - _SFR_IO8((row_pins[x] >> 4) + 1) &= ~_BV(row_pins[x] & 0xF); - _SFR_IO8((row_pins[x] >> 4) + 2) |= _BV(row_pins[x] & 0xF); - } -} - -static void select_row(uint8_t row) -{ - _SFR_IO8((row_pins[row] >> 4) + 1) |= _BV(row_pins[row] & 0xF); - _SFR_IO8((row_pins[row] >> 4) + 2) &= ~_BV(row_pins[row] & 0xF); -} diff --git a/keyboards/helix/rev2/custom/split_scomm.c b/keyboards/helix/rev2/custom/split_scomm.c deleted file mode 100644 index 378781b98c..0000000000 --- a/keyboards/helix/rev2/custom/split_scomm.c +++ /dev/null @@ -1,92 +0,0 @@ -#ifdef USE_SERIAL -#ifdef SERIAL_USE_MULTI_TRANSACTION -/* --- USE flexible API (using multi-type transaction function) --- */ - -#include -#include -#include -#include "split_scomm.h" -#include "serial.h" -#ifdef CONSOLE_ENABLE - #include "print.h" -#endif - -uint8_t volatile serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH] = {0}; -uint8_t volatile serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH] = {0}; -uint8_t volatile status_com = 0; -uint8_t volatile status1 = 0; -uint8_t slave_buffer_change_count = 0; -uint8_t s_change_old = 0xff; -uint8_t s_change_new = 0xff; - -SSTD_t transactions[] = { -#define GET_SLAVE_STATUS 0 - /* master buffer not changed, only recive slave_buffer_change_count */ - { (uint8_t *)&status_com, - 0, NULL, - sizeof(slave_buffer_change_count), &slave_buffer_change_count, - }, -#define PUT_MASTER_GET_SLAVE_STATUS 1 - /* master buffer changed need send, and recive slave_buffer_change_count */ - { (uint8_t *)&status_com, - sizeof(serial_master_buffer), (uint8_t *)serial_master_buffer, - sizeof(slave_buffer_change_count), &slave_buffer_change_count, - }, -#define GET_SLAVE_BUFFER 2 - /* recive serial_slave_buffer */ - { (uint8_t *)&status1, - 0, NULL, - sizeof(serial_slave_buffer), (uint8_t *)serial_slave_buffer - } -}; - -void serial_master_init(void) -{ - soft_serial_initiator_init(transactions, TID_LIMIT(transactions)); -} - -void serial_slave_init(void) -{ - soft_serial_target_init(transactions, TID_LIMIT(transactions)); -} - -// 0 => no error -// 1 => slave did not respond -// 2 => checksum error -int serial_update_buffers(int master_update) -{ - int status, smatstatus; - static int need_retry = 0; - - if( s_change_old != s_change_new ) { - smatstatus = soft_serial_transaction(GET_SLAVE_BUFFER); - if( smatstatus == TRANSACTION_END ) { - s_change_old = s_change_new; -#ifdef CONSOLE_ENABLE - uprintf("slave matrix = %b %b %b %b %b\n", - serial_slave_buffer[0], serial_slave_buffer[1], - serial_slave_buffer[2], serial_slave_buffer[3], - serial_slave_buffer[4] ); -#endif - } - } else { - // serial_slave_buffer dosen't change - smatstatus = TRANSACTION_END; // dummy status - } - - if( !master_update && !need_retry) { - status = soft_serial_transaction(GET_SLAVE_STATUS); - } else { - status = soft_serial_transaction(PUT_MASTER_GET_SLAVE_STATUS); - } - if( status == TRANSACTION_END ) { - s_change_new = slave_buffer_change_count; - need_retry = 0; - } else { - need_retry = 1; - } - return smatstatus; -} - -#endif // SERIAL_USE_MULTI_TRANSACTION -#endif /* USE_SERIAL */ diff --git a/keyboards/helix/rev2/custom/split_scomm.h b/keyboards/helix/rev2/custom/split_scomm.h deleted file mode 100644 index 16887eb74f..0000000000 --- a/keyboards/helix/rev2/custom/split_scomm.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#ifndef SERIAL_USE_MULTI_TRANSACTION -/* --- USE Simple API (OLD API, compatible with let's split serial.c) --- */ -#include "serial.h" - -#else -/* --- USE flexible API (using multi-type transaction function) --- */ -// Buffers for master - slave communication -#define SERIAL_SLAVE_BUFFER_LENGTH MATRIX_ROWS/2 -#define SERIAL_MASTER_BUFFER_LENGTH MATRIX_ROWS/2 - -extern volatile uint8_t serial_slave_buffer[SERIAL_SLAVE_BUFFER_LENGTH]; -extern volatile uint8_t serial_master_buffer[SERIAL_MASTER_BUFFER_LENGTH]; -extern uint8_t slave_buffer_change_count; - -void serial_master_init(void); -void serial_slave_init(void); -int serial_update_buffers(int master_changed); - -#endif diff --git a/keyboards/helix/rev2/custom/split_util.c b/keyboards/helix/rev2/custom/split_util.c deleted file mode 100644 index ab40315487..0000000000 --- a/keyboards/helix/rev2/custom/split_util.c +++ /dev/null @@ -1,109 +0,0 @@ -#include -#include -#include -#include -#include -#include -#include "split_util.h" -#include "matrix.h" -#include "keyboard.h" -#include "wait.h" - -#ifdef USE_MATRIX_I2C -# include "i2c.h" -#else -# include "split_scomm.h" -#endif - -#ifdef EE_HANDS -# include "eeconfig.h" -#endif - -#ifndef SPLIT_USB_TIMEOUT -# define SPLIT_USB_TIMEOUT 2000 -#endif - -#ifndef SPLIT_USB_TIMEOUT_POLL -# define SPLIT_USB_TIMEOUT_POLL 10 -#endif - -volatile bool isLeftHand = true; - -bool waitForUsb(void) { - for (uint8_t i = 0; i < (SPLIT_USB_TIMEOUT / SPLIT_USB_TIMEOUT_POLL); i++) { - // This will return true if a USB connection has been established - if (UDADDR & _BV(ADDEN)) { - return true; - } - wait_ms(SPLIT_USB_TIMEOUT_POLL); - } - - // Avoid NO_USB_STARTUP_CHECK - Disable USB as the previous checks seem to enable it somehow - (USBCON &= ~(_BV(USBE) | _BV(OTGPADE))); - - return false; -} - - -bool is_keyboard_left(void) { -#if defined(SPLIT_HAND_PIN) - // Test pin SPLIT_HAND_PIN for High/Low, if low it's right hand - setPinInput(SPLIT_HAND_PIN); - return readPin(SPLIT_HAND_PIN); -#elif defined(EE_HANDS) - return eeconfig_read_handedness(); -#elif defined(MASTER_RIGHT) - return !is_helix_master(); -#endif - - return is_helix_master(); -} - -bool is_helix_master(void) { - static enum { UNKNOWN, MASTER, SLAVE } usbstate = UNKNOWN; - - // only check once, as this is called often - if (usbstate == UNKNOWN) { -#if defined(SPLIT_USB_DETECT) - usbstate = waitForUsb() ? MASTER : SLAVE; -#elif defined(__AVR__) - USBCON |= (1 << OTGPADE); // enables VBUS pad - wait_us(5); - - usbstate = (USBSTA & (1 << VBUS)) ? MASTER : SLAVE; // checks state of VBUS -#else - usbstate = MASTER; -#endif - } - - return (usbstate == MASTER); -} - -static void keyboard_master_setup(void) { - -#ifdef USE_MATRIX_I2C - i2c_master_init(); -#else - serial_master_init(); -#endif -} - -static void keyboard_slave_setup(void) { - -#ifdef USE_MATRIX_I2C - i2c_slave_init(SLAVE_I2C_ADDRESS); -#else - serial_slave_init(); -#endif -} - -void split_keyboard_setup(void) { - isLeftHand = is_keyboard_left(); - - if (is_helix_master()) { - keyboard_master_setup(); - } else { - keyboard_slave_setup(); - } - sei(); -} diff --git a/keyboards/helix/rev2/custom/split_util.h b/keyboards/helix/rev2/custom/split_util.h deleted file mode 100644 index 3b1d4249f5..0000000000 --- a/keyboards/helix/rev2/custom/split_util.h +++ /dev/null @@ -1,21 +0,0 @@ -#pragma once - -#ifdef SPLIT_KEYBOARD -# error This is helix local split_util.h. -# error This header file is used only when SPLIT_KEYBOARD=no. -#endif - -#include -#include "eeconfig.h" - -#define SLAVE_I2C_ADDRESS 0x32 - -extern volatile bool isLeftHand; - -// slave version of matix scan, defined in matrix.c -void matrix_slave_scan(void); - -void split_keyboard_setup(void); -bool is_helix_master(void); - -void matrix_master_OLED_init (void); diff --git a/keyboards/helix/rev2/keymaps/default/oled_display.c b/keyboards/helix/rev2/keymaps/default/oled_display.c index 824d2e4d86..ad5558869f 100644 --- a/keyboards/helix/rev2/keymaps/default/oled_display.c +++ b/keyboards/helix/rev2/keymaps/default/oled_display.c @@ -18,10 +18,6 @@ #include #include QMK_KEYBOARD_H -#ifdef SSD1306OLED - #include "ssd1306.h" -#endif - // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them @@ -35,36 +31,6 @@ enum layer_number { _ADJUST }; -//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h -#if defined(SSD1306OLED) || defined(OLED_ENABLE) - -# if defined(OLED_ENABLE) -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (is_keyboard_master()) { - return OLED_ROTATION_0; - } else { - return OLED_ROTATION_180; - } -} -# else -# define oled_write(data,flag) matrix_write(matrix, data) -# define oled_write_P(data,flag) matrix_write_P(matrix, data) -# endif - -# ifdef SSD1306OLED -void matrix_scan_user(void) { - iota_gfx_task(); // this is what updates the display continuously -} - -void matrix_update(struct CharacterMatrix *dest, - const struct CharacterMatrix *source) { - if (memcmp(dest->display, source->display, sizeof(dest->display))) { - memcpy(dest->display, source->display, sizeof(dest->display)); - dest->dirty = true; - } -} -# endif - //assign the right code to your layers for OLED display #define L_BASE 0 #define L_LOWER (1<<_LOWER) @@ -72,23 +38,17 @@ void matrix_update(struct CharacterMatrix *dest, #define L_ADJUST (1<<_ADJUST) #define L_ADJUST_TRI (L_ADJUST|L_RAISE|L_LOWER) -# ifdef SSD1306OLED -static void render_logo(struct CharacterMatrix *matrix) { - - static const char helix_logo[] PROGMEM ={ - 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, - 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, - 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, - 0}; - oled_write_P(helix_logo, false); +//OLED update loop +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (is_keyboard_master()) { + return OLED_ROTATION_0; + } else { + return OLED_ROTATION_180; + } } -# endif -# ifdef SSD1306OLED -static void render_rgbled_status(bool full, struct CharacterMatrix *matrix) { -# else static void render_rgbled_status(bool full) { -# endif # ifdef RGBLIGHT_ENABLE char buf[30]; if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { @@ -106,11 +66,7 @@ static void render_rgbled_status(bool full) { # endif } -# ifdef SSD1306OLED -static void render_layer_status(struct CharacterMatrix *matrix) { -# else static void render_layer_status(void) { -# endif // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below char buf[10]; oled_write_P(PSTR("Layer: "), false); @@ -136,11 +92,7 @@ static void render_layer_status(void) { oled_write_P(PSTR("\n"), false); } -# ifdef SSD1306OLED -void render_status(struct CharacterMatrix *matrix) { -# else void render_status(void) { -# endif // Render to mode icon static const char os_logo[][2][3] PROGMEM = {{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; if (is_mac_mode()) { @@ -154,58 +106,18 @@ void render_status(void) { } oled_write_P(PSTR(" "), false); -# ifdef SSD1306OLED - render_layer_status(matrix); -# else render_layer_status(); -# endif // Host Keyboard LED Status led_t led_state = host_keyboard_led_state(); oled_write_P(led_state.num_lock ? PSTR("NUMLOCK") : PSTR(" "), false); oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false); oled_write_P(led_state.scroll_lock ? PSTR("SCLK") : PSTR(" "), false); - oled_write_P(PSTR("\n"), false); -# ifdef SSD1306OLED - render_rgbled_status(true, matrix); -# else + oled_advance_page(true); render_rgbled_status(true); oled_write_P(PSTR("\n"), false); -# endif } - -# ifdef SSD1306OLED -# if OLED_UPDATE_INTERVAL > 0 -uint16_t oled_update_timeout; -# endif - -void iota_gfx_task_user(void) { - struct CharacterMatrix matrix; - -# if DEBUG_TO_SCREEN - if (debug_enable) { - return; - } -# endif - -#if OLED_UPDATE_INTERVAL > 0 - if (timer_elapsed(oled_update_timeout) < OLED_UPDATE_INTERVAL) { - return; - } - oled_update_timeout = timer_read(); -#endif - matrix_clear(&matrix); - if (is_keyboard_master()) { - render_status(&matrix); - } else { - render_logo(&matrix); - render_rgbled_status(false, &matrix); - render_layer_status(&matrix); - } - matrix_update(&display, &matrix); -} -# else bool oled_task_user(void) { # if DEBUG_TO_SCREEN @@ -223,5 +135,151 @@ bool oled_task_user(void) { } return false; } +#endif // end of OLED_ENABLE + +//SSD1306 OLED update loop +/* + The following code is left as a sample to help you transition from SSD1306OLED to OLED_ENABLE. + + * `matrix_write(matrix, data)` is replaced by `oled_write(data, false)`. + * `matrix_write_P(matrix, data)` is replaced by `oled_write_P(data, false)`. + * It is no longer necessary to call `iota_gfx_task()`. + * `matrix_update()` are no longer needed. + * `iota_gfx_task_user()` is no longer needed. Instead, `bool oled_task_user(void)` is provided. + + 以下のコードは、SSD1306OLED から OLED_ENABLE に移行する助けになるようにサンプルとして残してあります。 + + * `matrix_write(matrix, data)` は、`oled_write(data, false)` に書き換えます。 + * `matrix_write_P(matrix, data)` は、`oled_write_P(data, false)` に書き換えます。 + * `iota_gfx_task()` を呼び出す必要はなくなります。 + * `matrix_update()` は不要になります。 + * `iota_gfx_task_user()` は不要になります。代りに `bool oled_task_user(void)` を用意します。 + */ + +#ifdef SSD1306OLED +#include "ssd1306.h" +#define oled_write(data,flag) matrix_write(matrix, data) +#define oled_write_P(data,flag) matrix_write_P(matrix, data) + +void matrix_scan_user(void) { + iota_gfx_task(); // this is what updates the display continuously +} + +void matrix_update(struct CharacterMatrix *dest, + const struct CharacterMatrix *source) { + if (memcmp(dest->display, source->display, sizeof(dest->display))) { + memcpy(dest->display, source->display, sizeof(dest->display)); + dest->dirty = true; + } +} + +static void render_logo(struct CharacterMatrix *matrix) { + + static const char helix_logo[] PROGMEM ={ + 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, + 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, + 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, + 0}; + oled_write_P(helix_logo, false); +} + +static void render_rgbled_status(bool full, struct CharacterMatrix *matrix) { +# ifdef RGBLIGHT_ENABLE + char buf[30]; + if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { + if (full) { + snprintf(buf, sizeof(buf), " LED %2d: %d,%d,%d ", + rgblight_get_mode(), + rgblight_get_hue()/RGBLIGHT_HUE_STEP, + rgblight_get_sat()/RGBLIGHT_SAT_STEP, + rgblight_get_val()/RGBLIGHT_VAL_STEP); + } else { + snprintf(buf, sizeof(buf), "[%2d] ", rgblight_get_mode()); + } + oled_write(buf, false); + } # endif -#endif +} + +static void render_layer_status(struct CharacterMatrix *matrix) { + // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below + char buf[10]; + oled_write_P(PSTR("Layer: "), false); + switch (layer_state) { + case L_BASE: + oled_write_P(PSTR("Default"), false); + break; + case L_RAISE: + oled_write_P(PSTR("Raise"), false); + break; + case L_LOWER: + oled_write_P(PSTR("Lower"), false); + break; + case L_ADJUST: + case L_ADJUST_TRI: + oled_write_P(PSTR("Adjust"), false); + break; + default: + oled_write_P(PSTR("Undef-"), false); + snprintf(buf,sizeof(buf), "%ld", layer_state); + oled_write(buf, false); + } + oled_write_P(PSTR("\n"), false); +} + +void render_status(struct CharacterMatrix *matrix) { + // Render to mode icon + static const char os_logo[][2][3] PROGMEM = {{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; + if (is_mac_mode()) { + oled_write_P(os_logo[0][0], false); + oled_write_P(PSTR("\n"), false); + oled_write_P(os_logo[0][1], false); + } else { + oled_write_P(os_logo[1][0], false); + oled_write_P(PSTR("\n"), false); + oled_write_P(os_logo[1][1], false); + } + + oled_write_P(PSTR(" "), false); + render_layer_status(matrix); + + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_P(led_state.num_lock ? PSTR("NUMLOCK") : PSTR(" "), false); + oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false); + oled_write_P(led_state.scroll_lock ? PSTR("SCLK") : PSTR(" "), false); + oled_write_P(PSTR("\n"), false); + render_rgbled_status(true, matrix); +} + +# if OLED_UPDATE_INTERVAL > 0 +uint16_t oled_update_timeout; +# endif + +void iota_gfx_task_user(void) { + struct CharacterMatrix matrix; + +# if DEBUG_TO_SCREEN + if (debug_enable) { + return; + } +# endif + +# if OLED_UPDATE_INTERVAL > 0 + if (timer_elapsed(oled_update_timeout) < OLED_UPDATE_INTERVAL) { + return; + } + oled_update_timeout = timer_read(); +# endif + matrix_clear(&matrix); + if (is_keyboard_master()) { + render_status(&matrix); + } else { + render_logo(&matrix); + render_rgbled_status(false, &matrix); + render_layer_status(&matrix); + } + matrix_update(&display, &matrix); +} + +#endif // end of SSD1306OLED diff --git a/keyboards/helix/rev2/local_features.mk b/keyboards/helix/rev2/local_features.mk index c6f818bf39..34fd699a65 100644 --- a/keyboards/helix/rev2/local_features.mk +++ b/keyboards/helix/rev2/local_features.mk @@ -40,24 +40,6 @@ ifneq ($(strip $(HELIX)),) SHOW_HELIX_OPTIONS = yes endif -ifneq ($(strip $(SPLIT_KEYBOARD)), yes) - # In the very near future, all keymaps will be compatible with split_common and this block will be removed. - SRC += local_drivers/serial.c - KEYBOARD_PATHS += $(HELIX_TOP_DIR)/local_drivers - - # A workaround until #7089 is merged. - # serial.c must not be compiled with the -lto option. - # The current LIB_SRC has a side effect with the -fno-lto option, so use it. - LIB_SRC += local_drivers/serial.c - - CUSTOM_MATRIX = yes - - SRC += rev2/custom/matrix.c - SRC += rev2/custom/split_util.c - SRC += rev2/custom/split_scomm.c - KEYBOARD_PATHS += $(HELIX_TOP_DIR)/rev2/custom -endif - ######## # convert Helix-specific options (that represent combinations of standard options) # into QMK standard options. @@ -88,44 +70,17 @@ ifeq ($(strip $(LED_ANIMATIONS)), yes) endif ifeq ($(strip $(OLED_ENABLE)), yes) - ifeq ($(strip $(OLED_SELECT)),core) - OLED_ENABLE = yes - OLED_DRIVER = SSD1306 - ifeq ($(strip $(LOCAL_GLCDFONT)), yes) - OPT_DEFS += -DOLED_FONT_H=\ - else - OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\" - endif + OLED_DRIVER = SSD1306 + ifeq ($(strip $(LOCAL_GLCDFONT)), yes) + OPT_DEFS += -DOLED_FONT_H=\ else - - # In the very near future, all keymaps will be compatible with QMK standard oled_driver and this block will be removed. - ifeq ($(strip $(SPLIT_KEYBOARD)), yes) - $(info Helix/rev2: The following combinations are not supported.) - $(info - SPLIT_KEYBOARD = $(SPLIT_KEYBOARD)) # yes - $(info - OLED_ENABLE = $(OLED_ENABLE)) # yes - $(info - OLED_SELECT = $(OLED_SELECT)) # local - $(info Force : OLED_ENABLE = no) - $(info .) - OLED_ENABLE = no - endif - ifeq ($(strip $(OLED_ENABLE)), yes) - OLED_ENABLE = no # disable OLED in TOP/common_features.mk - OLED_LOCAL_ENABLE = yes - SRC += local_drivers/i2c.c - SRC += local_drivers/ssd1306.c - KEYBOARD_PATHS += $(HELIX_TOP_DIR)/local_drivers - OPT_DEFS += -DOLED_LOCAL_ENABLE - ifeq ($(strip $(LOCAL_GLCDFONT)), yes) - OPT_DEFS += -DLOCAL_GLCDFONT - endif - endif + OPT_DEFS += -DOLED_FONT_H=\"common/glcdfont.c\" endif endif ifneq ($(strip $(SHOW_HELIX_OPTIONS)),) $(info Helix Spacific Build Options) $(info - OLED_ENABLE = $(OLED_ENABLE)) - $(info - OLED_SELECT = $(OLED_SELECT)) $(info - LED_BACK_ENABLE = $(LED_BACK_ENABLE)) $(info - LED_UNDERGLOW_ENABLE = $(LED_UNDERGLOW_ENABLE)) $(info - LED_ANIMATIONS = $(LED_ANIMATIONS)) diff --git a/keyboards/helix/rev2/override_helix_options.mk b/keyboards/helix/rev2/override_helix_options.mk-maintenance similarity index 100% rename from keyboards/helix/rev2/override_helix_options.mk rename to keyboards/helix/rev2/override_helix_options.mk-maintenance diff --git a/keyboards/helix/rev2/rev2.c b/keyboards/helix/rev2/rev2.c index ba29f3c7de..2bbe9a28e2 100644 --- a/keyboards/helix/rev2/rev2.c +++ b/keyboards/helix/rev2/rev2.c @@ -20,14 +20,6 @@ // for the old keymap.c. uint8_t is_master = false; -#ifdef SSD1306OLED -#include "ssd1306.h" - -bool process_record_kb(uint16_t keycode, keyrecord_t *record) { - return process_record_gfx(keycode,record) && process_record_user(keycode, record); -} -#endif - bool is_mac_mode(void) { // This is the opposite of the QMK standard, but we'll leave it for backwards compatibility. return keymap_config.swap_lalt_lgui == false; @@ -59,12 +51,6 @@ void keyboard_post_init_kb(void) { keyboard_post_init_user(); } -#if defined(SPLIT_KEYBOARD) && defined(SSD1306OLED) -void matrix_slave_scan_user(void) { - matrix_scan_user(); -} -#endif - #ifdef OLED_ENABLE void render_helix_logo(void) { static const char helix_logo[] PROGMEM ={ @@ -82,7 +68,7 @@ bool oled_task_kb(void) { oled_write_P(led_state.num_lock ? PSTR("NUMLOCK") : PSTR(" "), false); oled_write_P(led_state.caps_lock ? PSTR("CAPS") : PSTR(" "), false); oled_write_P(led_state.scroll_lock ? PSTR("SCLK") : PSTR(" "), false); - oled_write_P(PSTR("\n"), false); + oled_advance_page(true); render_helix_logo(); } return false; diff --git a/keyboards/helix/rev2/rules.mk b/keyboards/helix/rev2/rules.mk index 5ed92ff0ad..dce8b9d3ea 100644 --- a/keyboards/helix/rev2/rules.mk +++ b/keyboards/helix/rev2/rules.mk @@ -1,6 +1,6 @@ KEYBOARD_LOCAL_FEATURES_MK := $(dir $(lastword $(MAKEFILE_LIST)))local_features.mk -# SPLIT_KEYBOARD = yes +SPLIT_KEYBOARD = yes # Helix Spacific Build Options default values HELIX_ROWS = 5 # Helix Rows is 4 or 5 @@ -10,8 +10,3 @@ LED_BACK_ENABLE = no # LED backlight (Enable WS2812 RGB underlight.) LED_UNDERGLOW_ENABLE = no # LED underglow (Enable WS2812 RGB underlight.) LED_ANIMATIONS = yes # LED animations IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) - -# If OLED_ENABLE is 'yes' -# If OLED_SELECT is 'core', use QMK standard oled_dirver.c. -# If OLED_SELECT is other than 'core', use helix/local_drivers/ssd1306.c. -OLED_SELECT = local From c2939bf03833e013742ecc74d8229832c88656c2 Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Fri, 22 Apr 2022 06:48:50 +0900 Subject: [PATCH 316/699] [Keymap] Fix build error `helix:five_rows` (#16847) --- .../rev2/keymaps/five_rows/oled_display.c | 279 ------------------ .../helix/rev2/keymaps/five_rows/rules.mk | 3 +- .../rev3_5rows/keymaps/five_rows/config.h | 2 + .../rev3_5rows/keymaps/five_rows/rules.mk | 2 + .../five_rows => users/mtei}/oled_display.c | 10 +- users/mtei/pseudo_sprintf.c | 53 ++++ users/mtei/pseudo_sprintf.h | 8 + 7 files changed, 74 insertions(+), 283 deletions(-) delete mode 100644 keyboards/helix/rev2/keymaps/five_rows/oled_display.c rename {keyboards/helix/rev3_5rows/keymaps/five_rows => users/mtei}/oled_display.c (97%) create mode 100644 users/mtei/pseudo_sprintf.c create mode 100644 users/mtei/pseudo_sprintf.h diff --git a/keyboards/helix/rev2/keymaps/five_rows/oled_display.c b/keyboards/helix/rev2/keymaps/five_rows/oled_display.c deleted file mode 100644 index dc6de02b17..0000000000 --- a/keyboards/helix/rev2/keymaps/five_rows/oled_display.c +++ /dev/null @@ -1,279 +0,0 @@ -/* Copyright 2020 mtei - * - * 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 . - */ - -#include QMK_KEYBOARD_H -#include -#ifdef CONSOLE_ENABLE - #include "print.h" -#endif -#ifdef SSD1306OLED - #include "ssd1306.h" -#endif -#include -#include "layer_number.h" - -extern int current_default_layer; - -void init_helix_oled(void) { -#ifdef SSD1306OLED - //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h - iota_gfx_init(!has_usb()); // turns on the display -#endif -} - -//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h -#if defined(SSD1306OLED) || defined(OLED_ENABLE) - -# if defined(OLED_ENABLE) -oled_rotation_t oled_init_user(oled_rotation_t rotation) { - if (is_keyboard_master()) { - return OLED_ROTATION_0; - } else { - return OLED_ROTATION_180; - } -} -# else -# define oled_write(data,flag) matrix_write(matrix, data) -# define oled_write_P(data,flag) matrix_write_P(matrix, data) -# endif - -# ifdef SSD1306OLED -void matrix_scan_user(void) { - iota_gfx_task(); // this is what updates the display continuously -} - -void matrix_update(struct CharacterMatrix *dest, - const struct CharacterMatrix *source) { - if (memcmp(dest->display, source->display, sizeof(dest->display))) { - memcpy(dest->display, source->display, sizeof(dest->display)); - dest->dirty = true; - } -} -# endif - -static char *sprint_decimal(char *buf, int data) { - if (data > 9) { - buf = sprint_decimal(buf, data/10); - } - *buf++ = "0123456789"[data%10]; - *buf = '\0'; - return buf; -} - -static char *sprint_hex(char *buf, uint32_t data) { - if (data > 0xf) { - buf = sprint_hex(buf, data/0x10); - } - *buf++ = "0123456789abcdef"[data & 0xf]; - *buf = '\0'; - return buf; -} - -char *sprints(char *buf, char *src) { - while (*src) { - *buf++ = *src++; - } - *buf = '\0'; - return buf; -} - -char *sprintx(char *buf, char *leadstr, uint32_t data) { - buf = sprints(buf, leadstr); - buf = sprint_hex(buf, data); - return buf; -} - -char *sprintd(char *buf, char *leadstr, int data) { - buf = sprints(buf, leadstr); - buf = sprint_decimal(buf, data); - return buf; -} - -char *sprint2d(char *buf, char *leadstr, int data) { - buf = sprints(buf, leadstr); - if (data > 99) { - return sprint_decimal(buf, data); - } - if (data < 10) { - *buf++ = ' '; - } - return sprint_decimal(buf, data); -} - -# ifdef SSD1306OLED -static void render_logo(struct CharacterMatrix *matrix) { -# else -static void render_logo(void) { -# endif - - static const char helix_logo[] PROGMEM = { - 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, - 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, - 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, - 0}; - oled_write_P(helix_logo, false); - char buf[30]; - char *bufp; -# ifdef RGBLIGHT_ENABLE - if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { - bufp = sprint2d(buf, " LED ", rgblight_get_mode()); -# ifdef DEBUG_MATRIX_SCAN_RATE - bufp = sprintd(bufp, " scan:", get_matrix_scan_rate()); -# else - bufp = sprintd(bufp, ": ", rgblight_get_hue()/RGBLIGHT_HUE_STEP); - bufp = sprintd(bufp, ",", rgblight_get_sat()/RGBLIGHT_SAT_STEP); - bufp = sprintd(bufp, ",", rgblight_get_val()/RGBLIGHT_VAL_STEP); - bufp = sprints(bufp, " "); -# endif - oled_write(buf, false); -# ifndef SSD1306OLED - } else { -# ifdef DEBUG_MATRIX_SCAN_RATE - bufp = sprintd(buf, " scan:", get_matrix_scan_rate()); - oled_write(buf, false); -# endif - oled_write_P( PSTR("\n"), false); -# endif - } -# else -# ifdef DEBUG_MATRIX_SCAN_RATE - bufp = sprintd(buf, " scan:", get_matrix_scan_rate()); - bufp = sprints(bufp, " "); - oled_write(buf, false); -# endif -# endif -} - -static const char Qwerty_name[] PROGMEM = " Qwerty"; -static const char Colemak_name[] PROGMEM = " Colemak"; -static const char Dvorak_name[] PROGMEM = " Dvorak"; -static const char Eucalyn_name[] PROGMEM = " Eucalyn"; -static const char Keypad_name[] PROGMEM = " Keypad"; - -static const char AUX_name[] PROGMEM = ":AUX"; -static const char KAUX_name[] PROGMEM = ":00"; -static const char Padfunc_name[] PROGMEM = ":PadFunc"; -static const char Lower_name[] PROGMEM = ":Func"; -static const char Raise_name[] PROGMEM = ":Extra"; -static const char Adjust_name[] PROGMEM = ":Adjust"; - -static const char *layer_names[] = { - [_QWERTY] = Qwerty_name, - [_COLEMAK] = Colemak_name, - [_DVORAK] = Dvorak_name, - [_EUCALYN]= Eucalyn_name, - [_KEYPAD] = Keypad_name, - [_AUX] = AUX_name, - [_KAUX] = KAUX_name, - [_LOWER] = Lower_name, - [_RAISE] = Raise_name, - [_PADFUNC]= Padfunc_name, - [_ADJUST] = Adjust_name -}; - -# ifdef SSD1306OLED -void render_status(struct CharacterMatrix *matrix) { -# else -void render_status(void) { -# endif - - // Render to mode icon - static const char os_logo[][2][3] PROGMEM ={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; - if(keymap_config.swap_lalt_lgui==false){ - oled_write_P(os_logo[0][0], false); - oled_write_P(PSTR("\n"), false); - oled_write_P(os_logo[0][1], false); - } else { - oled_write_P(os_logo[1][0], false); - oled_write_P(PSTR("\n"), false); - oled_write_P(os_logo[1][1], false); - } - - // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below - int name_num; - uint32_t lstate; - oled_write_P(layer_names[current_default_layer], false); -# ifdef DEBUG_MATRIX_SCAN_RATE - char buf[16]; - sprintd(buf, " scan:", get_matrix_scan_rate()); - oled_write(buf, false); -# endif - oled_write_P(PSTR("\n"), false); - for (lstate = layer_state, name_num = 0; - lstate && name_num < sizeof(layer_names)/sizeof(char *); - lstate >>=1, name_num++) { - if ((lstate & 1) != 0) { - if (layer_names[name_num]) { - oled_write_P(layer_names[name_num], false); - } - } - } - oled_write_P(PSTR("\n"), false); - - // Host Keyboard LED Status - led_t led_state = host_keyboard_led_state(); - oled_write_P(led_state.num_lock ? PSTR("NUMLOCK ") : PSTR(" "), false); - oled_write_P(led_state.caps_lock ? PSTR("CAPS ") : PSTR(" "), false); - oled_write_P(led_state.scroll_lock ? PSTR("SCLK ") : PSTR(" "), false); -} - -# ifdef SSD1306OLED -# if OLED_UPDATE_INTERVAL > 0 -uint16_t oled_update_timeout; -# endif - -void iota_gfx_task_user(void) { - struct CharacterMatrix matrix; - -# if DEBUG_TO_SCREEN - if (debug_enable) { - return; - } -# endif - -#if OLED_UPDATE_INTERVAL > 0 - if (timer_elapsed(oled_update_timeout) < OLED_UPDATE_INTERVAL) { - return; - } - oled_update_timeout = timer_read(); -#endif - matrix_clear(&matrix); - if (is_keyboard_master()) { - render_status(&matrix); - } else { - render_logo(&matrix); - } - matrix_update(&display, &matrix); -} -# else -bool oled_task_user(void) { - -# if DEBUG_TO_SCREEN - if (debug_enable) { - return; - } -# endif - - if(is_keyboard_master()){ - render_status(); - }else{ - render_logo(); - } - return false; -} -# endif - -#endif diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk index a92591d36b..6604f6309b 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk @@ -1,4 +1,5 @@ - SPLIT_KEYBOARD = yes +USER_NAME := mtei +SPLIT_KEYBOARD = yes CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h index e1c124f419..02d4425d62 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h +++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h @@ -35,6 +35,8 @@ along with this program. If not, see . # define OLED_UPDATE_INTERVAL 50 #endif +#define PSEUDO_SPRINTF_DEFINED + // place overrides here // If you need more program area, try select and reduce rgblight modes to use. diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk index 3f3bd9a9ab..1d7f2f2744 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk @@ -1,3 +1,5 @@ +USER_NAME := mtei + CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration # CONSOLE_ENABLE and COMMAND_ENABLE diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c b/users/mtei/oled_display.c similarity index 97% rename from keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c rename to users/mtei/oled_display.c index cee415ad30..6a16b23b0e 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/oled_display.c +++ b/users/mtei/oled_display.c @@ -25,9 +25,7 @@ #include #include "layer_number.h" -char *sprints(char *buf, char *src); -char *sprintd(char *buf, char *leadstr, int data); -char *sprint2d(char *buf, char *leadstr, int data); +#include "pseudo_sprintf.h" extern int current_default_layer; @@ -68,6 +66,10 @@ void matrix_update(struct CharacterMatrix *dest, } # endif +#ifndef PSEUDO_SPRINTF_DEFINED +#include "pseudo_sprintf.c" +#endif + # ifdef SSD1306OLED static void render_logo(struct CharacterMatrix *matrix) { # else @@ -80,8 +82,10 @@ static void render_logo(void) { 0xc0,0xc1,0xc2,0xc3,0xc4,0xc5,0xc6,0xc7,0xc8,0xc9,0xca,0xcb,0xcc,0xcd,0xce,0xcf,0xd0,0xd1,0xd2,0xd3,0xd4, 0}; oled_write_P(helix_logo, false); +# if defined(RGBLIGHT_ENABLE) || defined(DEBUG_MATRIX_SCAN_RATE) char buf[30]; char *bufp; +# endif # ifdef RGBLIGHT_ENABLE if (RGBLIGHT_MODES > 1 && rgblight_is_enabled()) { bufp = sprint2d(buf, " LED ", rgblight_get_mode()); diff --git a/users/mtei/pseudo_sprintf.c b/users/mtei/pseudo_sprintf.c new file mode 100644 index 0000000000..446e3efc65 --- /dev/null +++ b/users/mtei/pseudo_sprintf.c @@ -0,0 +1,53 @@ +// Copyright 2022 Takeshi Ishii (@mtei) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "pseudo_sprintf.h" + +static char *sprint_decimal(char *buf, int data) { + if (data > 9) { + buf = sprint_decimal(buf, data/10); + } + *buf++ = "0123456789"[data%10]; + *buf = '\0'; + return buf; +} + +static char *sprint_hex(char *buf, uint32_t data) { + if (data > 0xf) { + buf = sprint_hex(buf, data/0x10); + } + *buf++ = "0123456789abcdef"[data & 0xf]; + *buf = '\0'; + return buf; +} + +char *sprints(char *buf, char *src) { + while (*src) { + *buf++ = *src++; + } + *buf = '\0'; + return buf; +} + +char *sprintx(char *buf, char *leadstr, uint32_t data) { + buf = sprints(buf, leadstr); + buf = sprint_hex(buf, data); + return buf; +} + +char *sprintd(char *buf, char *leadstr, int data) { + buf = sprints(buf, leadstr); + buf = sprint_decimal(buf, data); + return buf; +} + +char *sprint2d(char *buf, char *leadstr, int data) { + buf = sprints(buf, leadstr); + if (data > 99) { + return sprint_decimal(buf, data); + } + if (data < 10) { + *buf++ = ' '; + } + return sprint_decimal(buf, data); +} diff --git a/users/mtei/pseudo_sprintf.h b/users/mtei/pseudo_sprintf.h new file mode 100644 index 0000000000..1b91ee5ea8 --- /dev/null +++ b/users/mtei/pseudo_sprintf.h @@ -0,0 +1,8 @@ +// Copyright 2022 Takeshi Ishii (@mtei) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +char *sprints(char *buf, char *src); +char *sprintd(char *buf, char *leadstr, int data); +char *sprint2d(char *buf, char *leadstr, int data); From 61b3f125bfdbb4250ffe0cef67fc2fffeaaa8bf5 Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Fri, 22 Apr 2022 14:17:28 +0700 Subject: [PATCH 317/699] Added new keyboard Gas75 (#16768) --- keyboards/ml/gas75/config.h | 107 +++++++++ keyboards/ml/gas75/gas75.c | 29 +++ keyboards/ml/gas75/gas75.h | 55 +++++ keyboards/ml/gas75/info.json | 99 +++++++++ keyboards/ml/gas75/keymaps/default/keymap.c | 201 +++++++++++++++++ keyboards/ml/gas75/keymaps/default/readme.md | 3 + keyboards/ml/gas75/keymaps/via/config.h | 23 ++ keyboards/ml/gas75/keymaps/via/keymap.c | 221 +++++++++++++++++++ keyboards/ml/gas75/keymaps/via/readme.md | 3 + keyboards/ml/gas75/keymaps/via/rules.mk | 2 + keyboards/ml/gas75/readme.md | 25 +++ keyboards/ml/gas75/rules.mk | 25 +++ 12 files changed, 793 insertions(+) create mode 100644 keyboards/ml/gas75/config.h create mode 100644 keyboards/ml/gas75/gas75.c create mode 100644 keyboards/ml/gas75/gas75.h create mode 100644 keyboards/ml/gas75/info.json create mode 100644 keyboards/ml/gas75/keymaps/default/keymap.c create mode 100644 keyboards/ml/gas75/keymaps/default/readme.md create mode 100644 keyboards/ml/gas75/keymaps/via/config.h create mode 100644 keyboards/ml/gas75/keymaps/via/keymap.c create mode 100644 keyboards/ml/gas75/keymaps/via/readme.md create mode 100644 keyboards/ml/gas75/keymaps/via/rules.mk create mode 100644 keyboards/ml/gas75/readme.md create mode 100644 keyboards/ml/gas75/rules.mk diff --git a/keyboards/ml/gas75/config.h b/keyboards/ml/gas75/config.h new file mode 100644 index 0000000000..4afc29952b --- /dev/null +++ b/keyboards/ml/gas75/config.h @@ -0,0 +1,107 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xC0B0 +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER ML +#define PRODUCT Gas75 + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 15 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { D3, D5, D4, D7, D6, B4 } +#define MATRIX_COL_PINS { D1, D2, B5, B6, C6, C7, F7, F6, F5, F4, E6, B0, B1, B2, B3 } + +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* Forcing to use NKRO instead 6KRO */ +#define FORCE_NKRO + +/* Larger keys per scan */ +#define QMK_KEYS_PER_SCAN 12 + +/* Encoder pins */ +#define ENCODERS_PAD_A { F0 } +#define ENCODERS_PAD_B { F1 } + +#ifdef RGB_MATRIX_ENABLE + #define DRIVER_LED_TOTAL 3 + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 + #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS + #define RGB_MATRIX_KEYPRESSES + + /* RGB Matrix config */ + #define RGB_DI_PIN D0 + + /* RGB Matrix effect */ + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_HUE_BREATHING + #define ENABLE_RGB_MATRIX_HUE_PENDULUM + #define ENABLE_RGB_MATRIX_HUE_WAVE + #define ENABLE_RGB_MATRIX_PIXEL_RAIN + #define ENABLE_RGB_MATRIX_PIXEL_FLOW + #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif diff --git a/keyboards/ml/gas75/gas75.c b/keyboards/ml/gas75/gas75.c new file mode 100644 index 0000000000..61054273e4 --- /dev/null +++ b/keyboards/ml/gas75/gas75.c @@ -0,0 +1,29 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#include "gas75.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 0, 1, 2 } +}, { + //Key matrix (0 -> 2) + {224, 0}, {0 , 0}, {6 , 38}, +}, { + //Key matrix (0 -> 2) + 4, 1, 8, +} }; +#endif diff --git a/keyboards/ml/gas75/gas75.h b/keyboards/ml/gas75/gas75.h new file mode 100644 index 0000000000..88291ac4a8 --- /dev/null +++ b/keyboards/ml/gas75/gas75.h @@ -0,0 +1,55 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* 54 ◯ 53 + * ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + * │00 ││01 │02 │03 │04 ││05 │06 │07 │08 ││09 │0A │0B │0C ││0D ││0E │ + * └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┐ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D ││1E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D ││2E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3D ││3E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + * │40 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4C │┌───┐ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│4D │ + * │50 │51 │52 │56 │5A │5B │ ┌───┼───┼───┐ + * └────┴────┴────┴────────────────────────┴────┴────┘ │5C │5D │5E │ + * └───┴───┴───┘ + */ + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K54, K0E, K53, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, \ + K50, K51, K52, K56, K5A, K5B, K5C, K5D, K5E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, XXX, K3D, K3E }, \ + { K40, XXX, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, XXX }, \ + { K50, K51, K52, K53, K54, XXX, K56, XXX, XXX, XXX, K5A, K5B, K5C, K5D, K5E } \ +} diff --git a/keyboards/ml/gas75/info.json b/keyboards/ml/gas75/info.json new file mode 100644 index 0000000000..4f9e0ad9d1 --- /dev/null +++ b/keyboards/ml/gas75/info.json @@ -0,0 +1,99 @@ +{ + "keyboard_name": "Gas75", + "url": "https://item.taobao.com/item.htm?ft=t&id=652142230132", + "maintainer": "ML", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1.25, "y":0}, + {"label":"F2", "x":2.25, "y":0}, + {"label":"F3", "x":3.25, "y":0}, + {"label":"F4", "x":4.25, "y":0}, + {"label":"F5", "x":5.5, "y":0}, + {"label":"F6", "x":6.5, "y":0}, + {"label":"F7", "x":7.5, "y":0}, + {"label":"F8", "x":8.5, "y":0}, + {"label":"F9", "x":9.75, "y":0}, + {"label":"F10", "x":10.75, "y":0}, + {"label":"F11", "x":11.75, "y":0}, + {"label":"F12", "x":12.75, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Encoder CCW", "x":15.25, "y":0, "w":0.5, "h":0.5}, + {"label":"Encoder CW", "x":15.75, "y":0, "w":0.5, "h":0.5}, + {"label":"Delete", "x":15.25, "y":0.5, "h":0.5}, + + {"label":"`~", "x":0, "y":1.25}, + {"label":"1!", "x":1, "y":1.25}, + {"label":"2@", "x":2, "y":1.25}, + {"label":"3#", "x":3, "y":1.25}, + {"label":"4$", "x":4, "y":1.25}, + {"label":"5%", "x":5, "y":1.25}, + {"label":"6^", "x":6, "y":1.25}, + {"label":"7&", "x":7, "y":1.25}, + {"label":"8*", "x":8, "y":1.25}, + {"label":"9(", "x":9, "y":1.25}, + {"label":"0)", "x":10, "y":1.25}, + {"label":"-_", "x":11, "y":1.25}, + {"label":"=+", "x":12, "y":1.25}, + {"label":"Backspace", "x":13, "y":1.25}, + {"label":"Home", "x":15.25, "y":1.25}, + + {"label":"Tab", "x":0, "y":2.25, "w":1.5}, + {"label":"Q", "x":1.5, "y":2.25}, + {"label":"W", "x":2.5, "y":2.25}, + {"label":"E", "x":3.5, "y":2.25}, + {"label":"R", "x":4.5, "y":2.25}, + {"label":"T", "x":5.5, "y":2.25}, + {"label":"Y", "x":6.5, "y":2.25}, + {"label":"U", "x":7.5, "y":2.25}, + {"label":"I", "x":8.5, "y":2.25}, + {"label":"O", "x":9.5, "y":2.25}, + {"label":"P", "x":10.5, "y":2.25}, + {"label":"[{", "x":11.5, "y":2.25}, + {"label":"]}", "x":12.5, "y":2.25}, + {"label":"\\|", "x":13.5, "y":2.25, "w":1.5}, + {"label":"PgUp", "x":12.5, "y":2.25}, + + {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, + {"label":"A", "x":1.75, "y":3.25}, + {"label":"S", "x":2.75, "y":3.25}, + {"label":"D", "x":3.75, "y":3.25}, + {"label":"F", "x":4.75, "y":3.25}, + {"label":"G", "x":5.75, "y":3.25}, + {"label":"H", "x":6.75, "y":3.25}, + {"label":"J", "x":7.75, "y":3.25}, + {"label":"K", "x":8.75, "y":3.25}, + {"label":"L", "x":9.75, "y":3.25}, + {"label":";:", "x":10.75, "y":3.25}, + {"label":"'\"", "x":11.75, "y":3.25}, + {"label":"Enter", "x":12.75, "y":3.25, "w":2.25}, + {"label":"PgDn", "x":12.5, "y":3.25}, + + {"label":"Shift", "x":0, "y":4.25, "w":2.25}, + {"label":"Z", "x":2.25, "y":4.25}, + {"label":"X", "x":3.25, "y":4.25}, + {"label":"C", "x":4.25, "y":4.25}, + {"label":"V", "x":5.25, "y":4.25}, + {"label":"B", "x":6.25, "y":4.25}, + {"label":"N", "x":7.25, "y":4.25}, + {"label":"M", "x":8.25, "y":4.25}, + {"label":",<", "x":9.25, "y":4.25}, + {"label":".>", "x":10.25, "y":4.25}, + {"label":"/?", "x":11.25, "y":4.25}, + {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, + {"label":"\u2191", "x":14.25, "y":4.5}, + + {"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, + {"label":"Win", "x":1.25, "y":5.25, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, + {"label":"Space", "x":3.75, "y":5.25, "w":6.25}, + {"label":"Alt", "x":10, "y":5.25, "w":1.25}, + {"label":"Fn", "x":11.25, "y":5.25, "w":1.25}, + {"label":"\u2190", "x":13.25, "y":5.5}, + {"label":"\u2193", "x":14.25, "y":5.5}, + {"label":"\u2192", "x":15.25, "y":5.5}, + ] + } + } +} diff --git a/keyboards/ml/gas75/keymaps/default/keymap.c b/keyboards/ml/gas75/keymaps/default/keymap.c new file mode 100644 index 0000000000..65ece63bad --- /dev/null +++ b/keyboards/ml/gas75/keymaps/default/keymap.c @@ -0,0 +1,201 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +#include +#include + +#include + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +enum user_rgb_mode { + RGB_MODE_ALL, + RGB_MODE_NONE, +}; + +typedef union { + uint32_t raw; + struct { + uint8_t rgb_mode :8; + }; +} user_config_t; + +user_config_t user_config; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││Pse││Del│ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┐ + │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bckspc││Del│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ ││PgU│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter ││PgD│ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│ ↑ │ + │LCrl│GUI │LAlt│ Space │RAlt│ Fn │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │ ← │ ↓ │ → │ + └───┴───┴───┘ + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││ │ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ ~ │ ││ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | ││ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ ││ │ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSft │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│ │ + │ │ │ │ │ │ │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │ │ │ │ + └───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_BASE] = 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_DEL, _______, KC_MUTE, _______, + KC_GRV, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT + ), + +/* + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │Rst││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││Tog│ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┐ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││Hui│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││Hud│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ │ │ │ │ │ │ │ │ │ │ │ │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│Vai│ + │ │ │ │ │ │ │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │Spd│Vad│Spi│ + └───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_FN] = LAYOUT( + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI + ), +}; + +void keyboard_post_init_user(void) { + user_config.raw = eeconfig_read_user(); + switch (user_config.rgb_mode) { + case RGB_MODE_ALL: + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + break; + case RGB_MODE_NONE: + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + break; + } +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGB_TOG: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_NONE; + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + user_config.rgb_mode = RGB_MODE_ALL; + } + break; + } + eeconfig_update_user(user_config.raw); + } + return false; + } + return true; +} + +#ifdef ENCODER_ENABLE +bool encoder_update_user(uint8_t index, bool clockwise) { + if (index == 0) { + if (layer_state_is(_BASE)) { + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + } else if (layer_state_is(_FN)) { + if (clockwise) { + rgb_matrix_step(); + } else { + rgb_matrix_step_reverse(); + } + } + } + return true; +} +#endif + +void rgb_matrix_indicators_user(void) { + rgb_matrix_set_color(2, 0, 0, 0); + + HSV hsv = rgb_matrix_config.hsv; + uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1)); + hsv.h = time; + RGB rgb = hsv_to_rgb(hsv); + + if ((rgb_matrix_get_flags() & LED_FLAG_KEYLIGHT)) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(2, rgb.r, rgb.g, rgb.b); + } + } else { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(2, rgb.r, rgb.g, rgb.b); + } else { + rgb_matrix_set_color(2, 0, 0, 0); + } + } +} diff --git a/keyboards/ml/gas75/keymaps/default/readme.md b/keyboards/ml/gas75/keymaps/default/readme.md new file mode 100644 index 0000000000..30d8c00f43 --- /dev/null +++ b/keyboards/ml/gas75/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# Default Layout + +Keymap is default 81 qwerty, 75% exploded layout with F13 & knob diff --git a/keyboards/ml/gas75/keymaps/via/config.h b/keyboards/ml/gas75/keymaps/via/config.h new file mode 100644 index 0000000000..18d8c180ba --- /dev/null +++ b/keyboards/ml/gas75/keymaps/via/config.h @@ -0,0 +1,23 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 + +#ifdef RGB_MATRIX_ENABLE + #define VIA_QMK_RGBLIGHT_ENABLE +#endif diff --git a/keyboards/ml/gas75/keymaps/via/keymap.c b/keyboards/ml/gas75/keymaps/via/keymap.c new file mode 100644 index 0000000000..46408fba68 --- /dev/null +++ b/keyboards/ml/gas75/keymaps/via/keymap.c @@ -0,0 +1,221 @@ +/* Copyright 2022 ML + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +#include +#include + +#include + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +enum user_rgb_mode { + RGB_MODE_ALL, + RGB_MODE_NONE, +}; + +typedef union { + uint32_t raw; + struct { + uint8_t rgb_mode :8; + }; +} user_config_t; + +user_config_t user_config; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││Pse││Del│ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐┌───┐ + │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bckspc││Del│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤├───┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ ││PgU│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter ││PgD│ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│ ↑ │ + │LCrl│GUI │LAlt│ Space │RAlt│ Fn │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │ ← │ ↓ │ → │ + └───┴───┴───┘ + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││ │ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ ~ │ ││ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | ││ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ ││ │ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSft │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│ │ + │ │ │ │ │ │ │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │ │ │ │ + └───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_BASE] = 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_DEL, KC_VOLD, KC_MUTE, KC_VOLU, + KC_GRV, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT + ), + +/* + ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┐ + │Rst││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││Tog│ + └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┐ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││Hui│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││Hud│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤├───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ + ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘└───┘ + │ │ │ │ │ │ │ │ │ │ │ │ │┌───┐ + ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─────┘│Vai│ + │ │ │ │ │ │ │ ┌───┼───┼───┐ + └────┴────┴────┴────────────────────────┴────┴────┘ │Spd│Vad│Spi│ + └───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_FN] = LAYOUT( + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_TOG, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, + _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI + ), +}; + +void keyboard_post_init_user(void) { + user_config.raw = eeconfig_read_user(); + switch (user_config.rgb_mode) { + case RGB_MODE_ALL: + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + break; + case RGB_MODE_NONE: + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + break; + } +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGB_TOG: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_NONE; + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + user_config.rgb_mode = RGB_MODE_ALL; + } + break; + } + eeconfig_update_user(user_config.raw); + } + return false; + } + return true; +} + +#ifdef ENCODER_ENABLE + +#define ENCODERS 1 +static uint8_t encoder_state[ENCODERS] = {0}; +static keypos_t encoder_cw[ENCODERS] = {{3, 5}}; +static keypos_t encoder_ccw[ENCODERS] = {{4, 5}}; + +void encoder_action_unregister(void) { + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index]) { + keyevent_t encoder_event = (keyevent_t) { + .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index], + .pressed = false, + .time = (timer_read() | 1) + }; + encoder_state[index] = 0; + action_exec(encoder_event); + } + } +} + +void encoder_action_register(uint8_t index, bool clockwise) { + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = true, + .time = (timer_read() | 1) + }; + encoder_state[index] = (clockwise ^ 1) | (clockwise << 1); + action_exec(encoder_event); +} + +void matrix_scan_user(void) { + encoder_action_unregister(); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + return false; +} +#endif + +void rgb_matrix_indicators_user(void) { + rgb_matrix_set_color(2, 0, 0, 0); + + HSV hsv = rgb_matrix_config.hsv; + uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1)); + hsv.h = time; + RGB rgb = hsv_to_rgb(hsv); + + if ((rgb_matrix_get_flags() & LED_FLAG_KEYLIGHT)) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(2, rgb.r, rgb.g, rgb.b); + } + } else { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(2, rgb.r, rgb.g, rgb.b); + } else { + rgb_matrix_set_color(2, 0, 0, 0); + } + } +} diff --git a/keyboards/ml/gas75/keymaps/via/readme.md b/keyboards/ml/gas75/keymaps/via/readme.md new file mode 100644 index 0000000000..a4f2599f49 --- /dev/null +++ b/keyboards/ml/gas75/keymaps/via/readme.md @@ -0,0 +1,3 @@ +# Default Layout with VIA + +Keymap is default 81 qwerty, 75% exploded layout with F13 & knob diff --git a/keyboards/ml/gas75/keymaps/via/rules.mk b/keyboards/ml/gas75/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/ml/gas75/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/ml/gas75/readme.md b/keyboards/ml/gas75/readme.md new file mode 100644 index 0000000000..fcf5350384 --- /dev/null +++ b/keyboards/ml/gas75/readme.md @@ -0,0 +1,25 @@ +# Gas75 + +A 75% exploded keyboard made by ML, which controlled by an Atmega32u4 chipset. + +* Keyboard Maintainer: ML +* Hardware Supported: Atmega32u4 +* Hardware Availability: https://item.taobao.com/item.htm?ft=t&id=652142230132 + +Make example for this keyboard (after setting up your build environment): + + make ml/gas75:default + +Flashing example for this keyboard: + + make ml/gas75:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Esc key) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to RESET if it is available diff --git a/keyboards/ml/gas75/rules.mk b/keyboards/ml/gas75/rules.mk new file mode 100644 index 0000000000..a0fe1627d4 --- /dev/null +++ b/keyboards/ml/gas75/rules.mk @@ -0,0 +1,25 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# RGB Matrix enabled +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 + +# Encoder enabled +ENCODER_ENABLE = yes From 336791b915f11056ae0f701b1cd5ba18e719c0bb Mon Sep 17 00:00:00 2001 From: Ladduro Date: Fri, 22 Apr 2022 10:21:15 +0300 Subject: [PATCH 318/699] Keychron Q2 add Caps Lock indicator and layer RGB (#16641) --- .../q2/rev_0110/keymaps/ladduro/config.h | 25 +++++ .../q2/rev_0110/keymaps/ladduro/keymap.c | 96 +++++++++++++++++++ .../q2/rev_0110/keymaps/ladduro/keymap_user.h | 27 ++++++ .../q2/rev_0110/keymaps/ladduro/readme.md | 29 ++++++ .../keymaps/ladduro/rgb_matrix_user.c | 72 ++++++++++++++ .../keymaps/ladduro/rgb_matrix_user.h | 25 +++++ .../q2/rev_0110/keymaps/ladduro/rules.mk | 5 + 7 files changed, 279 insertions(+) create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/config.h create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap.c create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap_user.h create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/readme.md create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.c create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.h create mode 100644 keyboards/keychron/q2/rev_0110/keymaps/ladduro/rules.mk diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/config.h b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/config.h new file mode 100644 index 0000000000..a8ad37d003 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/config.h @@ -0,0 +1,25 @@ +/* Copyright 2022 @ Ionut Micu + * + * 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 . + */ + +#pragma once + +/* RGB Matrix Configuration */ +#ifdef RGB_MATRIX_ENABLE +# define RGB_DISABLE_WHEN_USB_SUSPENDED +# define CAPS_LOCK_INDICATOR_COLOR RGB_RED +# define CAPS_LOCK_INDICATOR_LIGHT_ALPHAS +# define FN_LAYER_TRANSPARENT_KEYS_OFF +#endif \ No newline at end of file diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap.c b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap.c new file mode 100644 index 0000000000..cc83640b39 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap.c @@ -0,0 +1,96 @@ +/* Copyright 2022 @ Ionut Micu + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "keymap_user.h" +#ifdef RGB_MATRIX_ENABLE +# include "rgb_matrix_user.h" +#endif + +enum custom_keycodes { + KC_MISSION_CONTROL = SAFE_RANGE, + KC_LAUNCHPAD +}; + +#define KC_WAVE S(KC_GRV) +#define KC_TASK LGUI(KC_TAB) +#define KC_FLXP LGUI(KC_E) +#define KC_MCTL KC_MISSION_CONTROL +#define KC_LPAD KC_LAUNCHPAD + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [MAC_BASE] = LAYOUT_ansi_67( + 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_BSPC, KC_INS, + 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, KC_DEL, + 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_HOME, + 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, + KC_LCTL, KC_LOPT, KC_LCMD, KC_SPC, KC_RCMD, MO(_FN1), MO(_FN3), KC_LEFT, KC_DOWN, KC_RGHT), + + [WIN_BASE] = LAYOUT_ansi_67( + 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_BSPC, KC_INS, + 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, KC_DEL, + 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_HOME, + 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, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN2), MO(_FN3), KC_LEFT, KC_DOWN, KC_RGHT), + + [_FN1] = LAYOUT_ansi_67( + KC_GRV, KC_BRID, KC_BRIU, KC_MCTL, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, + RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_RMOD,RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, 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), + + [_FN2] = LAYOUT_ansi_67( + KC_GRV, KC_BRID, KC_BRIU, KC_TASK, KC_FLXP, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, + RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_RMOD,RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, 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), + + [_FN3] = LAYOUT_ansi_67( + KC_WAVE, 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, + RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, RGB_SAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_RMOD,RGB_VAD, RGB_HUD, RGB_SAD, RGB_SPD, 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) +}; + +void matrix_init_user(void) { +#ifdef RGB_MATRIX_ENABLE + rgb_matrix_init_user(); +#endif +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_MISSION_CONTROL: + if (record->event.pressed) { + host_consumer_send(0x29F); + } else { + host_consumer_send(0); + } + return false; // Skip all further processing of this key + case KC_LAUNCHPAD: + if (record->event.pressed) { + host_consumer_send(0x2A0); + } else { + host_consumer_send(0); + } + return false; // Skip all further processing of this key + default: + return true; // Process all other keycodes normally + } +} diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap_user.h b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap_user.h new file mode 100644 index 0000000000..ded78ae1b8 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/keymap_user.h @@ -0,0 +1,27 @@ +/* Copyright 2022 @ Ionut Micu + * + * 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 . + */ + +#pragma once + +// clang-format off + +enum layers{ + MAC_BASE, + WIN_BASE, + _FN1, + _FN2, + _FN3, +}; \ No newline at end of file diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/readme.md b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/readme.md new file mode 100644 index 0000000000..42ca81a1a1 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/readme.md @@ -0,0 +1,29 @@ +# Ladduro keymap for Keychron Q2 (ANSI rev_0110) v1.01 + +This keymap ports Q1 logic (by gtg465x) for RGB caps lock indicator and layer RBG assigned key. + +## Features: +- On macOS, F3 opens Mission Control and F4 opens Launchpad without needing to configure shortcuts in System Preferences +- RGB lighting turns off when the computer sleeps +- Caps Lock and alpha keys turn red to indicate when Caps Lock is on +- When the Fn layer is active, RGB lighting turns off for keys that are not assigned + +Make example for this keyboard (after setting up your build environment): + + make keychron/q2/rev_0110:ladduro + +Flashing example for this keyboard: + + make keychron/q2/rev_0110:ladduro:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Changelog + +### 14/03/2021 - 1. + +- Initial release + +### 02/04/2021 - 1.01 + +- Remove via enable from rules.mk as it breaks the layout for some reason diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.c b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.c new file mode 100644 index 0000000000..19ddd54aa8 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.c @@ -0,0 +1,72 @@ +/* Copyright 2022 @ Ionut Micu + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "rgb_matrix_user.h" +#include "keymap_user.h" + +keypos_t led_index_key_position[DRIVER_LED_TOTAL]; + +void rgb_matrix_init_user(void) { + for (uint8_t row = 0; row < MATRIX_ROWS; row++) { + for (uint8_t col = 0; col < MATRIX_COLS; col++) { + uint8_t led_index = g_led_config.matrix_co[row][col]; + if (led_index != NO_LED) { + led_index_key_position[led_index] = (keypos_t){.row = row, .col = col}; + } + } + } +} + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + uint8_t current_layer = get_highest_layer(layer_state); + switch (current_layer) { + case MAC_BASE: + case WIN_BASE: +#ifdef CAPS_LOCK_INDICATOR_COLOR + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color_by_keycode(led_min, led_max, current_layer, is_caps_lock_indicator, CAPS_LOCK_INDICATOR_COLOR); + } +#endif + break; + case _FN1: + case _FN2: + case _FN3: +#ifdef FN_LAYER_TRANSPARENT_KEYS_OFF + rgb_matrix_set_color_by_keycode(led_min, led_max, current_layer, is_transparent, RGB_OFF); +#endif + break; + } +} + +void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue) { + for (uint8_t i = led_min; i < led_max; i++) { + uint16_t keycode = keymap_key_to_keycode(layer, led_index_key_position[i]); + if ((*is_keycode)(keycode)) { + rgb_matrix_set_color(i, red, green, blue); + } + } +} + +bool is_caps_lock_indicator(uint16_t keycode) { +#ifdef CAPS_LOCK_INDICATOR_LIGHT_ALPHAS + return (KC_A <= keycode && keycode <= KC_Z) || keycode == KC_CAPS; +#else + return keycode == KC_CAPS; +#endif +} + +bool is_transparent(uint16_t keycode) { return keycode == KC_TRNS; } \ No newline at end of file diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.h b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.h new file mode 100644 index 0000000000..4d33f483ae --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rgb_matrix_user.h @@ -0,0 +1,25 @@ + +/* Copyright 2022 @ Ionut Micu + * + * 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 . + */ + +#pragma once + +void rgb_matrix_init_user(void); + +void rgb_matrix_set_color_by_keycode(uint8_t led_min, uint8_t led_max, uint8_t layer, bool (*is_keycode)(uint16_t), uint8_t red, uint8_t green, uint8_t blue); + +bool is_caps_lock_indicator(uint16_t keycode); +bool is_transparent(uint16_t keycode); \ No newline at end of file diff --git a/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rules.mk b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rules.mk new file mode 100644 index 0000000000..c0ee640cd2 --- /dev/null +++ b/keyboards/keychron/q2/rev_0110/keymaps/ladduro/rules.mk @@ -0,0 +1,5 @@ +MOUSEKEY_ENABLE = no + +ifeq ($(strip $(RGB_MATRIX_ENABLE)), yes) + SRC += rgb_matrix_user.c +endif From 912e24ba9a7f1196c74ee852e74d97636f706284 Mon Sep 17 00:00:00 2001 From: yiancar Date: Fri, 22 Apr 2022 08:32:01 +0100 Subject: [PATCH 319/699] Loki65 (#16844) Co-authored-by: Drashna Jaelre Co-authored-by: yiancar --- keyboards/loki65/config.h | 104 +++++++++++++++++++++ keyboards/loki65/halconf.h | 21 +++++ keyboards/loki65/info.json | 10 ++ keyboards/loki65/keymaps/default/keymap.c | 32 +++++++ keyboards/loki65/keymaps/default/readme.md | 5 + keyboards/loki65/keymaps/via/keymap.c | 46 +++++++++ keyboards/loki65/keymaps/via/readme.md | 5 + keyboards/loki65/keymaps/via/rules.mk | 1 + keyboards/loki65/loki65.c | 21 +++++ keyboards/loki65/loki65.h | 34 +++++++ keyboards/loki65/mcuconf.h | 22 +++++ keyboards/loki65/readme.md | 32 +++++++ keyboards/loki65/rules.mk | 27 ++++++ 13 files changed, 360 insertions(+) create mode 100644 keyboards/loki65/config.h create mode 100644 keyboards/loki65/halconf.h create mode 100644 keyboards/loki65/info.json create mode 100644 keyboards/loki65/keymaps/default/keymap.c create mode 100644 keyboards/loki65/keymaps/default/readme.md create mode 100644 keyboards/loki65/keymaps/via/keymap.c create mode 100644 keyboards/loki65/keymaps/via/readme.md create mode 100644 keyboards/loki65/keymaps/via/rules.mk create mode 100644 keyboards/loki65/loki65.c create mode 100644 keyboards/loki65/loki65.h create mode 100644 keyboards/loki65/mcuconf.h create mode 100644 keyboards/loki65/readme.md create mode 100644 keyboards/loki65/rules.mk diff --git a/keyboards/loki65/config.h b/keyboards/loki65/config.h new file mode 100644 index 0000000000..5f017d8cbf --- /dev/null +++ b/keyboards/loki65/config.h @@ -0,0 +1,104 @@ +/* +Copyright 2022 Yiancar-Designs + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x8968 +#define PRODUCT_ID 0x4C36 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Yiancar-Designs +#define PRODUCT Loki65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +#define MATRIX_ROW_PINS { A2, B9, B8, B5, B4 } +#define MATRIX_COL_PINS { A1, B1, B0, A7, A6, A5, A4, A3, B2, B10, B11, B12, B13, B14, B15 } + +/* COL2ROW, ROW2COL*/ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* Ensure we jump to bootloader if the RESET keycode was pressed */ +#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE + +/* Indicator LEDs */ +#define LED_CAPS_LOCK_PIN B6 +#define LED_PIN_ON_STATE 0 + +/* RGB Light */ +#define WS2812_PWM_DRIVER PWMD1 +#define WS2812_PWM_CHANNEL 2 +#define WS2812_PWM_PAL_MODE 2 +#define WS2812_DMA_STREAM STM32_DMA1_STREAM5 +#define WS2812_DMA_CHANNEL 5 + +#define RGB_DI_PIN A9 +#define RGBLED_NUM 37 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/loki65/halconf.h b/keyboards/loki65/halconf.h new file mode 100644 index 0000000000..4abd83bd3b --- /dev/null +++ b/keyboards/loki65/halconf.h @@ -0,0 +1,21 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE + +#include_next diff --git a/keyboards/loki65/info.json b/keyboards/loki65/info.json new file mode 100644 index 0000000000..1b4fc1b917 --- /dev/null +++ b/keyboards/loki65/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Loki65", + "url": "https://yiancar-designs.com", + "maintainer": "Yiancar-Designs", + "layouts": { + "LAYOUT_all": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0}, {"x":14, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":1.25}, {"x":1.25, "y":3}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}] + } + } +} diff --git a/keyboards/loki65/keymaps/default/keymap.c b/keyboards/loki65/keymaps/default/keymap.c new file mode 100644 index 0000000000..3c3be3b242 --- /dev/null +++ b/keyboards/loki65/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( /* Base */ + KC_GESC, 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_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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT_all( /* FN */ + KC_GRV, 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_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, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; diff --git a/keyboards/loki65/keymaps/default/readme.md b/keyboards/loki65/keymaps/default/readme.md new file mode 100644 index 0000000000..1ff110941f --- /dev/null +++ b/keyboards/loki65/keymaps/default/readme.md @@ -0,0 +1,5 @@ +# The default keymap for Loki 65. VIA support disabled. + +![Layer 0](https://i.imgur.com/DRphL9D.png) + +![Layer 1](https://i.imgur.com/4Sd4SP9.png) diff --git a/keyboards/loki65/keymaps/via/keymap.c b/keyboards/loki65/keymaps/via/keymap.c new file mode 100644 index 0000000000..2980ec515a --- /dev/null +++ b/keyboards/loki65/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT_all( /* Base */ + KC_GESC, 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_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_BSLS, KC_PGUP, + 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_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT_all( /* FN */ + KC_GRV, 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_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, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[2] = LAYOUT_all( /* Empty for dynamic keymaps */ + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + +[3] = LAYOUT_all( /* Empty for dynamic keymaps */ + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; diff --git a/keyboards/loki65/keymaps/via/readme.md b/keyboards/loki65/keymaps/via/readme.md new file mode 100644 index 0000000000..7f54a19cb3 --- /dev/null +++ b/keyboards/loki65/keymaps/via/readme.md @@ -0,0 +1,5 @@ +# The default keymap for Loki 65. VIA support enabled. + +![Layer 0](https://i.imgur.com/DRphL9D.png) + +![Layer 1](https://i.imgur.com/4Sd4SP9.png) diff --git a/keyboards/loki65/keymaps/via/rules.mk b/keyboards/loki65/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/loki65/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/loki65/loki65.c b/keyboards/loki65/loki65.c new file mode 100644 index 0000000000..1a498e6aa0 --- /dev/null +++ b/keyboards/loki65/loki65.c @@ -0,0 +1,21 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ + #include "loki65.h" + +void led_init_ports(void) { + // Set our LED pins as open drain outputs + palSetLineMode(LED_CAPS_LOCK_PIN, PAL_MODE_OUTPUT_OPENDRAIN); +} diff --git a/keyboards/loki65/loki65.h b/keyboards/loki65/loki65.h new file mode 100644 index 0000000000..ae8eacbea7 --- /dev/null +++ b/keyboards/loki65/loki65.h @@ -0,0 +1,34 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ +#pragma once + +#define XXX KC_NO + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, XXX, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, XXX, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/loki65/mcuconf.h b/keyboards/loki65/mcuconf.h new file mode 100644 index 0000000000..0b3baa9b4b --- /dev/null +++ b/keyboards/loki65/mcuconf.h @@ -0,0 +1,22 @@ +/* Copyright 2022 Yiancar-Designs + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE diff --git a/keyboards/loki65/readme.md b/keyboards/loki65/readme.md new file mode 100644 index 0000000000..ff4c7f8ae6 --- /dev/null +++ b/keyboards/loki65/readme.md @@ -0,0 +1,32 @@ +# Loki 65 + +This is a 65% layout PCB. It supports VIA. + +* Keyboard Maintainer: [Yiancar](http://yiancar-designs.com/) and on [GitHub](https://github.com/yiancar) +* Hardware Supported: A TKL keyboard with STM32F072CB +* Hardware Availability: https://geekhack.org/index.php?topic=111422.0 + +## Instructions + +### Build + +Make example for this keyboard (after setting up your build environment): + + make loki65:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +### Reset + +- Unplug +- Hold Escape +- Plug In +- Unplug +- Release Escape + +### Flash + +- Unplug +- Hold Escape +- Plug In +- Flash using QMK Toolbox or CLI (`make loki65::flash`) diff --git a/keyboards/loki65/rules.mk b/keyboards/loki65/rules.mk new file mode 100644 index 0000000000..a53d7daeb0 --- /dev/null +++ b/keyboards/loki65/rules.mk @@ -0,0 +1,27 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Wildcard to allow APM32 MCU +DFU_SUFFIX_ARGS = -v FFFF -p FFFF + +# Do not put the microcontroller into power saving mode +# when we get USB suspend event. We want it to keep updating +# backlight effects. +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +WS2812_DRIVER = pwm # Driver for RGB uderglow +AUDIO_ENABLE = no # Audio output From 0100629fa2e5e9ddd6d0f855d687938352f82774 Mon Sep 17 00:00:00 2001 From: customMK <67444966+David-customMK@users.noreply.github.com> Date: Fri, 22 Apr 2022 02:33:59 -0500 Subject: [PATCH 320/699] Fix AVR backlight breathing: low brightness limit & exceeding breathing table max index (#16770) Co-authored-by: Drashna Jaelre Co-authored-by: David Hoelscher --- quantum/backlight/backlight_avr.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/quantum/backlight/backlight_avr.c b/quantum/backlight/backlight_avr.c index f3a0252270..474e0a86f5 100644 --- a/quantum/backlight/backlight_avr.c +++ b/quantum/backlight/backlight_avr.c @@ -405,14 +405,18 @@ ISR(TIMERx_OVF_vect) uint16_t interval = (uint16_t)get_breathing_period() * breathing_ISR_frequency / BREATHING_STEPS; // resetting after one period to prevent ugly reset at overflow. breathing_counter = (breathing_counter + 1) % (get_breathing_period() * breathing_ISR_frequency); - uint8_t index = breathing_counter / interval % BREATHING_STEPS; + uint8_t index = breathing_counter / interval; + // limit index to max step value + if (index >= BREATHING_STEPS) { + index = BREATHING_STEPS - 1; + } if (((breathing_halt == BREATHING_HALT_ON) && (index == BREATHING_STEPS / 2)) || ((breathing_halt == BREATHING_HALT_OFF) && (index == BREATHING_STEPS - 1))) { breathing_interrupt_disable(); } // Set PWM to a brightnessvalue scaled to the configured resolution - set_pwm(cie_lightness(rescale_limit_val(scale_backlight((uint16_t)pgm_read_byte(&breathing_table[index]) * ICRx / 255)))); + set_pwm(cie_lightness(rescale_limit_val(scale_backlight((uint32_t)pgm_read_byte(&breathing_table[index]) * ICRx / 255)))); } #endif // BACKLIGHT_BREATHING From ba8b236727cd391addebcedb85ee0da0a8e804fe Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Fri, 22 Apr 2022 15:36:08 +0800 Subject: [PATCH 321/699] [Keyboard]Remove RGB light implementation of ID67, revert the file structure changes by #15558 (#15854) --- keyboards/idobao/id67/{rgb => }/config.h | 0 keyboards/idobao/id67/default_rgb/config.h | 67 ----- .../idobao/id67/default_rgb/default_rgb.h | 33 --- keyboards/idobao/id67/default_rgb/info.json | 85 ------ keyboards/idobao/id67/default_rgb/readme.md | 19 -- keyboards/idobao/id67/default_rgb/rules.mk | 22 -- keyboards/idobao/id67/id67.c | 61 ++++ keyboards/idobao/id67/{rgb/rgb.h => id67.h} | 12 +- keyboards/idobao/id67/{rgb => }/info.json | 0 .../idobao/id67/keymaps/default/keymap.c | 3 +- .../idobao/id67/keymaps/default_nug/config.h | 26 ++ .../default => keymaps/default_nug}/keymap.c | 5 + .../{rgb => }/keymaps/thewerther/config.h | 0 .../{rgb => }/keymaps/thewerther/keymap.c | 0 .../{rgb => }/keymaps/thewerther/rules.mk | 0 .../default_rgb.c => keymaps/via/config.h} | 7 +- .../idobao/id67/keymaps/via_nug/config.h | 27 ++ .../idobao/id67/keymaps/via_nug/keymap.c | 53 ++++ .../idobao/id67/keymaps/via_nug/rules.mk | 2 + .../id67/keymaps/vinorodrigues/config.h | 85 ++++++ .../id67/keymaps/vinorodrigues/keymap.c | 261 ++++++++++++++++++ .../id67/keymaps/vinorodrigues/rules.mk | 5 + keyboards/idobao/id67/readme.md | 37 ++- keyboards/idobao/id67/rgb/readme.md | 36 --- keyboards/idobao/id67/rgb/rgb.c | 49 ---- keyboards/idobao/id67/{rgb => }/rules.mk | 2 +- 26 files changed, 565 insertions(+), 332 deletions(-) rename keyboards/idobao/id67/{rgb => }/config.h (100%) delete mode 100644 keyboards/idobao/id67/default_rgb/config.h delete mode 100644 keyboards/idobao/id67/default_rgb/default_rgb.h delete mode 100644 keyboards/idobao/id67/default_rgb/info.json delete mode 100644 keyboards/idobao/id67/default_rgb/readme.md delete mode 100644 keyboards/idobao/id67/default_rgb/rules.mk create mode 100644 keyboards/idobao/id67/id67.c rename keyboards/idobao/id67/{rgb/rgb.h => id67.h} (68%) rename keyboards/idobao/id67/{rgb => }/info.json (100%) create mode 100644 keyboards/idobao/id67/keymaps/default_nug/config.h rename keyboards/idobao/id67/{rgb/keymaps/default => keymaps/default_nug}/keymap.c (95%) rename keyboards/idobao/id67/{rgb => }/keymaps/thewerther/config.h (100%) rename keyboards/idobao/id67/{rgb => }/keymaps/thewerther/keymap.c (100%) rename keyboards/idobao/id67/{rgb => }/keymaps/thewerther/rules.mk (100%) rename keyboards/idobao/id67/{default_rgb/default_rgb.c => keymaps/via/config.h} (85%) create mode 100644 keyboards/idobao/id67/keymaps/via_nug/config.h create mode 100644 keyboards/idobao/id67/keymaps/via_nug/keymap.c create mode 100644 keyboards/idobao/id67/keymaps/via_nug/rules.mk create mode 100644 keyboards/idobao/id67/keymaps/vinorodrigues/config.h create mode 100644 keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c create mode 100644 keyboards/idobao/id67/keymaps/vinorodrigues/rules.mk delete mode 100644 keyboards/idobao/id67/rgb/readme.md delete mode 100644 keyboards/idobao/id67/rgb/rgb.c rename keyboards/idobao/id67/{rgb => }/rules.mk (97%) diff --git a/keyboards/idobao/id67/rgb/config.h b/keyboards/idobao/id67/config.h similarity index 100% rename from keyboards/idobao/id67/rgb/config.h rename to keyboards/idobao/id67/config.h diff --git a/keyboards/idobao/id67/default_rgb/config.h b/keyboards/idobao/id67/default_rgb/config.h deleted file mode 100644 index fbf99cf673..0000000000 --- a/keyboards/idobao/id67/default_rgb/config.h +++ /dev/null @@ -1,67 +0,0 @@ -/* Copyright 2021 Tybera - * - * 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 . - */ - -#pragma once - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6964 /* "id" */ -#define PRODUCT_ID 0x0067 -#define DEVICE_VER 0x0001 -#define MANUFACTURER IDOBAO -#define PRODUCT ID67 - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 15 - -/* - * 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 { B0, B1, B2, B3, F7 } -#define MATRIX_COL_PINS { C7, F6, F5, F4, F1, B7, D5, D1, D2, D3, D4, D0, D6, D7, B4 } - -#define DIODE_DIRECTION COL2ROW - -#define RGB_DI_PIN F0 -#ifdef RGB_DI_PIN - #define RGBLED_NUM 77 - #define RGBLIGHT_HUE_STEP 8 - #define RGBLIGHT_SAT_STEP 8 - #define RGBLIGHT_VAL_STEP 8 - #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level */ - #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -/*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -#endif diff --git a/keyboards/idobao/id67/default_rgb/default_rgb.h b/keyboards/idobao/id67/default_rgb/default_rgb.h deleted file mode 100644 index 7c0a6d5aa8..0000000000 --- a/keyboards/idobao/id67/default_rgb/default_rgb.h +++ /dev/null @@ -1,33 +0,0 @@ -/* Copyright 2021 Tybera - * - * 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 . - */ - -#pragma once - -#include "quantum.h" - -#define LAYOUT_65_ansi_blocker( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ - K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ - K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ - K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ - K40, K41, K43, K46, K4A, K4B, K4C, K4D, K4E \ -) { \ - { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K2E }, \ - { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ - { K40, K41, KC_NO, K43, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ -} diff --git a/keyboards/idobao/id67/default_rgb/info.json b/keyboards/idobao/id67/default_rgb/info.json deleted file mode 100644 index f3114121c1..0000000000 --- a/keyboards/idobao/id67/default_rgb/info.json +++ /dev/null @@ -1,85 +0,0 @@ -{ - "keyboard_name": "ID67", - "url": "", - "maintainer": "qmk", - "layout_aliases": { - "LAYOUT": "LAYOUT_65_ansi_blocker" - }, - "layouts": { - "LAYOUT_65_ansi_blocker": { - "layout": [ - {"label":"K00 (B0,C7)", "x":0, "y":0}, - {"label":"K01 (B0,F6)", "x":1, "y":0}, - {"label":"K02 (B0,F5)", "x":2, "y":0}, - {"label":"K03 (B0,F4)", "x":3, "y":0}, - {"label":"K04 (B0,F1)", "x":4, "y":0}, - {"label":"K05 (B0,B7)", "x":5, "y":0}, - {"label":"K06 (B0,D5)", "x":6, "y":0}, - {"label":"K07 (B0,D1)", "x":7, "y":0}, - {"label":"K08 (B0,D2)", "x":8, "y":0}, - {"label":"K09 (B0,D3)", "x":9, "y":0}, - {"label":"K0A (B0,D4)", "x":10, "y":0}, - {"label":"K0B (B0,D0)", "x":11, "y":0}, - {"label":"K0C (B0,D6)", "x":12, "y":0}, - {"label":"K0D (B0,D7)", "x":13, "y":0, "w":2}, - {"label":"K0E (B0,B4)", "x":15, "y":0}, - - {"label":"K10 (B1,C7)", "x":0, "y":1, "w":1.5}, - {"label":"K11 (B1,F6)", "x":1.5, "y":1}, - {"label":"K12 (B1,F5)", "x":2.5, "y":1}, - {"label":"K13 (B1,F4)", "x":3.5, "y":1}, - {"label":"K14 (B1,F1)", "x":4.5, "y":1}, - {"label":"K15 (B1,B7)", "x":5.5, "y":1}, - {"label":"K16 (B1,D5)", "x":6.5, "y":1}, - {"label":"K17 (B1,D1)", "x":7.5, "y":1}, - {"label":"K18 (B1,D2)", "x":8.5, "y":1}, - {"label":"K19 (B1,D3)", "x":9.5, "y":1}, - {"label":"K1A (B1,D4)", "x":10.5, "y":1}, - {"label":"K1B (B1,D0)", "x":11.5, "y":1}, - {"label":"K1C (B1,D6)", "x":12.5, "y":1}, - {"label":"K1D (B1,D7)", "x":13.5, "y":1, "w":1.5}, - {"label":"K1E (B1,B4)", "x":15, "y":1}, - - {"label":"K20 (B2,C7)", "x":0, "y":2, "w":1.75}, - {"label":"K21 (B2,F6)", "x":1.75, "y":2}, - {"label":"K22 (B2,F5)", "x":2.75, "y":2}, - {"label":"K23 (B2,F4)", "x":3.75, "y":2}, - {"label":"K24 (B2,F1)", "x":4.75, "y":2}, - {"label":"K25 (B2,B7)", "x":5.75, "y":2}, - {"label":"K26 (B2,D5)", "x":6.75, "y":2}, - {"label":"K27 (B2,D1)", "x":7.75, "y":2}, - {"label":"K28 (B2,D2)", "x":8.75, "y":2}, - {"label":"K29 (B2,D3)", "x":9.75, "y":2}, - {"label":"K2A (B2,D4)", "x":10.75, "y":2}, - {"label":"K2B (B2,D0)", "x":11.75, "y":2}, - {"label":"K2D (B2,D7)", "x":12.75, "y":2, "w":2.25}, - {"label":"K2E (B2,B4)", "x":15, "y":2}, - - {"label":"K30 (B3,C7)", "x":0, "y":3, "w":2.25}, - {"label":"K32 (B3,F5)", "x":2.25, "y":3}, - {"label":"K33 (B3,F4)", "x":3.25, "y":3}, - {"label":"K34 (B3,F1)", "x":4.25, "y":3}, - {"label":"K35 (B3,B7)", "x":5.25, "y":3}, - {"label":"K36 (B3,D5)", "x":6.25, "y":3}, - {"label":"K37 (B3,D1)", "x":7.25, "y":3}, - {"label":"K38 (B3,D2)", "x":8.25, "y":3}, - {"label":"K39 (B3,D3)", "x":9.25, "y":3}, - {"label":"K3A (B3,D4)", "x":10.25, "y":3}, - {"label":"K3B (B3,D0)", "x":11.25, "y":3}, - {"label":"K3C (B3,D6)", "x":12.25, "y":3, "w":1.75}, - {"label":"K3D (B3,D7)", "x":14, "y":3}, - {"label":"K3E (B3,B4)", "x":15, "y":3}, - - {"label":"K40 (F7,C7)", "x":0, "y":4, "w":1.25}, - {"label":"K41 (F7,F6)", "x":1.25, "y":4, "w":1.25}, - {"label":"K43 (F7,F4)", "x":2.5, "y":4, "w":1.25}, - {"label":"K46 (F7,D5)", "x":3.75, "y":4, "w":6.25}, - {"label":"K4A (F7,D4)", "x":10, "y":4, "w":1.25}, - {"label":"K4B (F7,D0)", "x":11.25, "y":4, "w":1.25}, - {"label":"K4C (F7,D6)", "x":13, "y":4}, - {"label":"K4D (F7,D7)", "x":14, "y":4}, - {"label":"K4E (F7,B4)", "x":15, "y":4} - ] - } - } -} diff --git a/keyboards/idobao/id67/default_rgb/readme.md b/keyboards/idobao/id67/default_rgb/readme.md deleted file mode 100644 index 9559384f1e..0000000000 --- a/keyboards/idobao/id67/default_rgb/readme.md +++ /dev/null @@ -1,19 +0,0 @@ -# IDOBAO ID67 - -A 65% hotswap keyboard from IDOBAO. - -## ANSI support: - -* Keyboard Maintainer: Tybera -* Hardware Supported: IDOBAO ID67 -* Hardware Availability: [IDOBAO](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) - -Make example for this keyboard (after setting up your build environment): - - make id67/default_rgb:default - -Flashing example for this keyboard: - - make id67/default_rgb:default:flash - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/idobao/id67/default_rgb/rules.mk b/keyboards/idobao/id67/default_rgb/rules.mk deleted file mode 100644 index 574f0067fb..0000000000 --- a/keyboards/idobao/id67/default_rgb/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = atmel-dfu - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output - -KEY_LOCK_ENABLE = yes # Enable KC_LOCK support - -LAYOUTS = 65_ansi_blocker diff --git a/keyboards/idobao/id67/id67.c b/keyboards/idobao/id67/id67.c new file mode 100644 index 0000000000..5f4ff39ae2 --- /dev/null +++ b/keyboards/idobao/id67/id67.c @@ -0,0 +1,61 @@ +/* Copyright 2021 Tybera + * Copyright 2021 thewerther + * + * 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 . + */ + +#include "id67.h" + +#define __ NO_LED + +// Indices are reveresed on the physical board, top left is bottom right. +led_config_t g_led_config = { { + // Key Matrix to LED Index + {66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52}, + {51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37}, + {36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, __, 24, 23}, + {22, __, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9}, + { 8, 7, __, 6, __, __, 5, __, __, __, 4, 3, 2, 1, 0}, +}, { + // LED Index to Physical Position + // based on: https://gist.github.com/vinorodrigues/07fd735683856b2a06c7c52b9b3878cb + {224, 64}, {209, 64}, {194, 64}, {170, 64}, {151, 64}, {95, 64}, {39, 64}, {21, 64}, {2, 64}, + {224, 48}, {209, 48}, {189, 48}, {168, 48}, {153, 48}, {138, 48}, {123, 48}, {108, 48}, {93, 48}, {78, 48}, {63, 48}, {49, 48}, {34, 48}, {9, 48}, + {224, 32}, {200, 32}, {175, 32}, {161, 32}, {146, 32}, {131, 32}, {116, 32}, {101, 32}, {86, 32}, {71, 32}, {56, 32}, {41, 32}, {26, 32}, {6, 32}, + {224, 16}, {205, 16}, {187, 16}, {172, 16}, {157, 16}, {142, 16}, {127, 16}, {112, 16}, {97, 16}, {82, 16}, {67, 16}, {52, 16}, {37, 16}, {22, 16}, {4, 16}, + {224, 0}, {202, 0}, {179, 0}, {164, 0}, {149, 0}, {134, 0}, {119, 0}, {105, 0}, {90, 0}, {75, 0}, {60, 0}, {45, 0}, {30, 0}, {15, 0}, {0, 0} + #ifndef ID67_DISABLE_UNDERGLOW + // underglow LEDs + , {0, 0}, {56, 0}, {112, 0}, {168, 0}, {224, 0}, + {224, 64}, {168, 64}, {112, 64}, {56, 64}, {0, 64} + #endif +}, { + // LED Index to Flag + 4, 4, 4, 1, 1, 4, 1, 1, 1, // first row + 1, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // second row + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, // third row + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // fourth row + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 // fifth row + // underglow leds + #ifndef ID67_DISABLE_UNDERGLOW + , 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 + #endif +} }; + +__attribute__ ((weak)) +void rgb_matrix_indicators_user(void) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, 0xFF, 0xFF, 0xFF); + } +} diff --git a/keyboards/idobao/id67/rgb/rgb.h b/keyboards/idobao/id67/id67.h similarity index 68% rename from keyboards/idobao/id67/rgb/rgb.h rename to keyboards/idobao/id67/id67.h index cca757bfc7..a8eead92a0 100644 --- a/keyboards/idobao/id67/rgb/rgb.h +++ b/keyboards/idobao/id67/id67.h @@ -19,6 +19,8 @@ #include "quantum.h" +#define ___ KC_NO + #define LAYOUT_65_ansi_blocker( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ @@ -26,9 +28,9 @@ K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ K40, K41, K43, K46, K4A, K4B, K4C, K4D, K4E \ ) { \ - { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K2E }, \ - { K30, KC_NO, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ - { K40, K41, KC_NO, K43, KC_NO, KC_NO, K46, KC_NO, KC_NO, KC_NO, K4A, K4B, K4C, K4D, K4E }, \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, ___, K2D, K2E }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, ___, K43, ___, ___, K46, ___, ___, ___, K4A, K4B, K4C, K4D, K4E }, \ } diff --git a/keyboards/idobao/id67/rgb/info.json b/keyboards/idobao/id67/info.json similarity index 100% rename from keyboards/idobao/id67/rgb/info.json rename to keyboards/idobao/id67/info.json diff --git a/keyboards/idobao/id67/keymaps/default/keymap.c b/keyboards/idobao/id67/keymaps/default/keymap.c index 3bb880891f..450550e12a 100644 --- a/keyboards/idobao/id67/keymaps/default/keymap.c +++ b/keyboards/idobao/id67/keymaps/default/keymap.c @@ -1,4 +1,5 @@ /* Copyright 2021 Tybera + * Copyright 2022 thewerther * * 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 @@ -28,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, RESET, RGB_SPI, RGB_SPD, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/idobao/id67/keymaps/default_nug/config.h b/keyboards/idobao/id67/keymaps/default_nug/config.h new file mode 100644 index 0000000000..d92c93ce1e --- /dev/null +++ b/keyboards/idobao/id67/keymaps/default_nug/config.h @@ -0,0 +1,26 @@ +/* Copyright 2021 thewerther + * + * 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 . + */ + +/** + * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs + * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM + */ + +#pragma once + +#if defined(RGB_MATRIX_ENABLE) + #define ID67_DISABLE_UNDERGLOW +#endif diff --git a/keyboards/idobao/id67/rgb/keymaps/default/keymap.c b/keyboards/idobao/id67/keymaps/default_nug/keymap.c similarity index 95% rename from keyboards/idobao/id67/rgb/keymaps/default/keymap.c rename to keyboards/idobao/id67/keymaps/default_nug/keymap.c index 450550e12a..30e71734a3 100644 --- a/keyboards/idobao/id67/rgb/keymaps/default/keymap.c +++ b/keyboards/idobao/id67/keymaps/default_nug/keymap.c @@ -15,6 +15,11 @@ * along with this program. If not, see . */ +/** + * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs + * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM + */ + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/idobao/id67/rgb/keymaps/thewerther/config.h b/keyboards/idobao/id67/keymaps/thewerther/config.h similarity index 100% rename from keyboards/idobao/id67/rgb/keymaps/thewerther/config.h rename to keyboards/idobao/id67/keymaps/thewerther/config.h diff --git a/keyboards/idobao/id67/rgb/keymaps/thewerther/keymap.c b/keyboards/idobao/id67/keymaps/thewerther/keymap.c similarity index 100% rename from keyboards/idobao/id67/rgb/keymaps/thewerther/keymap.c rename to keyboards/idobao/id67/keymaps/thewerther/keymap.c diff --git a/keyboards/idobao/id67/rgb/keymaps/thewerther/rules.mk b/keyboards/idobao/id67/keymaps/thewerther/rules.mk similarity index 100% rename from keyboards/idobao/id67/rgb/keymaps/thewerther/rules.mk rename to keyboards/idobao/id67/keymaps/thewerther/rules.mk diff --git a/keyboards/idobao/id67/default_rgb/default_rgb.c b/keyboards/idobao/id67/keymaps/via/config.h similarity index 85% rename from keyboards/idobao/id67/default_rgb/default_rgb.c rename to keyboards/idobao/id67/keymaps/via/config.h index 972b0b8b06..336ad1e585 100644 --- a/keyboards/idobao/id67/default_rgb/default_rgb.c +++ b/keyboards/idobao/id67/keymaps/via/config.h @@ -1,4 +1,5 @@ /* Copyright 2021 Tybera + * Copyright 2022 thewerther * * 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 @@ -14,4 +15,8 @@ * along with this program. If not, see . */ -#include "default_rgb.h" +#pragma once + +#if defined(RGB_MATRIX_ENABLE) + #define VIA_QMK_RGBLIGHT_ENABLE +#endif diff --git a/keyboards/idobao/id67/keymaps/via_nug/config.h b/keyboards/idobao/id67/keymaps/via_nug/config.h new file mode 100644 index 0000000000..a2fa129b2e --- /dev/null +++ b/keyboards/idobao/id67/keymaps/via_nug/config.h @@ -0,0 +1,27 @@ +/* Copyright 2021 thewerther + * + * 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 . + */ + +/** + * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs + * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM + */ + +#pragma once + +#if defined(RGB_MATRIX_ENABLE) + #define VIA_QMK_RGBLIGHT_ENABLE + #define ID67_DISABLE_UNDERGLOW +#endif diff --git a/keyboards/idobao/id67/keymaps/via_nug/keymap.c b/keyboards/idobao/id67/keymaps/via_nug/keymap.c new file mode 100644 index 0000000000..b008f9d125 --- /dev/null +++ b/keyboards/idobao/id67/keymaps/via_nug/keymap.c @@ -0,0 +1,53 @@ +/* Copyright 2021 Tybera + * + * 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 . + */ + +/** + * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs + * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_65_ansi_blocker( + 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_BSPC, KC_TILD, + 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, KC_DEL, + 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_PGUP, + 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, KC_PGDN, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_65_ansi_blocker( + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, + _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, + _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_65_ansi_blocker( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/idobao/id67/keymaps/via_nug/rules.mk b/keyboards/idobao/id67/keymaps/via_nug/rules.mk new file mode 100644 index 0000000000..ca9fed0e6b --- /dev/null +++ b/keyboards/idobao/id67/keymaps/via_nug/rules.mk @@ -0,0 +1,2 @@ +LTO_ENABLE = yes +VIA_ENABLE = yes diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/config.h b/keyboards/idobao/id67/keymaps/vinorodrigues/config.h new file mode 100644 index 0000000000..88fe361bde --- /dev/null +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/config.h @@ -0,0 +1,85 @@ +/* + * Idobao ID67 Keymap for a ID67 Bestype, built for Mac use + * Copyright (C) 2022 Vino Rodrigues + * + * 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 3 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 . + */ + +#if defined(RGB_MATRIX_ENABLE) + #define VIA_QMK_RGBLIGHT_ENABLE + #define ID67_DISABLE_UNDERGLOW // personal choice, I use a ID67 Bestype + + #ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS + #undef RGB_MATRIX_MAXIMUM_BRIGHTNESS + #endif + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // // limits maximum brightness of LEDs to 200 out of 255 + + //// #define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended + + //// #define RGB_MATRIX_KEYPRESSES + + // RGB Matrix config, nit-pick a few animations. "////" = already defined in base `config.h`, `#undef` disables it + + //// #define ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue + //// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static gradient top to bottom, speed controls how much gradient changes + //// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Static gradient left to right, speed controls how much gradient changes + //// #define ENABLE_RGB_MATRIX_BREATHING // Single hue brightness cycling animation + //// #define ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right + //// #define ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right + //// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades saturation + //// #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness + //// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Single hue spinning spiral fades saturation + //// #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness + //// #define ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard solid hue cycling through full gradient + //// #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Full gradient scrolling left to right + //// #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom + //// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Full gradient scrolling out to in + //// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in + //// #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right + //// #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard + //// #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard + //// #define ENABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard + //// #define ENABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard + //// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard + //// #define ENABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue + //// #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation + //// #define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time, then shifts back + //// #define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left + //// #define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right + + #undef ENABLE_RGB_MATRIX_PIXEL_RAIN + #undef ENABLE_RGB_MATRIX_PIXEL_FLOW + #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL + + #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) + //// #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + //// #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + #undef ENABLE_RGB_MATRIX_TYPING_HEATMAP + #endif + + #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Pulses keys hit to hue & value then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out + #endif +#endif diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c new file mode 100644 index 0000000000..62fd4cfa8f --- /dev/null +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c @@ -0,0 +1,261 @@ +/* + * Idobao ID67 Keymap for a ID67 Bestype, built for Mac use + * Copyright (C) 2022 Vino Rodrigues + * + * 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 3 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 . + */ + +#include QMK_KEYBOARD_H +#include "version.h" + +enum { + LAYER_0 = 0, + LAYER_1, + LAYER_2, + LAYER_3 +}; + +enum { + KC_MCON = USER00, + KC_LPAD, + KB_VRSN = SAFE_RANGE +}; + +enum macos_consumer_usages { + _AC_SHOW_ALL_WINDOWS = 0x29F, // mapped to KC_MCON + _AC_SHOW_ALL_APPS = 0x2A0 // mapped to KC_LPAD +}; + +#define LT1_C_L LT(LAYER_1, KC_CAPS) + +#ifndef MIN + #define MIN(a, b) (((a) < (b)) ? (a) : (b)) +#endif + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [LAYER_0] = LAYOUT_65_ansi_blocker( + KC_GESC, 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_GRAVE, \ + 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_BSLASH, KC_DELETE, \ + LT1_C_L, 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_PGUP, \ + 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, KC_PGDN, \ + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, FN_MO13, FN_MO23, KC_LEFT, KC_DOWN, KC_RIGHT), + [LAYER_1] = LAYOUT_65_ansi_blocker( + KC_GRAVE, 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_ERAS, KC_F13, \ + _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_HOME, KC_END, KC_EJCT, KC_INS, \ + KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, KC_PGDN, KC_PENT, KC_HOME, \ + KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_DELETE, KC_LSFT, _______, KC_END, \ + KC_RCTL, KC_RALT, KC_RGUI, _______, _______, _______, _______, _______, _______), + [LAYER_2] = LAYOUT_65_ansi_blocker( + KC_ESC, KC_BRID, KC_BRIU, KC_MCON, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_OUT, KC_F14, \ + RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, \ + XXXXXXX, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_SAI, XXXXXXX, KC_SLCK, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUD, RGB_SAD, XXXXXXX, RGB_VAI, KC_PAUS, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SPD, RGB_VAD, RGB_SPI), + [LAYER_3] = LAYOUT_65_ansi_blocker( + RESET, MACRO01, MACRO02, MACRO03, MACRO04, MACRO05, MACRO06, MACRO07, MACRO08, MACRO09, MACRO10, MACRO11, MACRO12, KC_POWER, KC_F15, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SLEP, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DEBUG, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KB_VRSN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MACRO00, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, KC_WAKE, XXXXXXX, XXXXXXX, MACRO13, MACRO14, MACRO15), +}; + +#ifdef RGB_MATRIX_ENABLE + +/* + * RGB Stuff + */ + +#ifdef RGBLIGHT_VAL_STEP + #define RGB_BRIGHTER_BY RGBLIGHT_VAL_STEP +#else + #define RGB_BRIGHTER_BY 26 // about 10% +#endif + +#define LED_FLAG_ALPHA_KEY 0x10 // Alpha keys (for Caps Lock) +#define LED_FLAG_LAYER_IND 0x20 // Layer indicator + +const uint8_t g_led_config_new_flags[DRIVER_LED_TOTAL] = { + // Extended LED Index to Flag + // ** Remember: on ID67 this is in reverse order + 0x21, 0x01, 0x01, 0x01, 0x01, 0x04, 0x01, 0x01, 0x21, // Spc row + 0x21, 0x01, 0x01, 0x04, 0x04, 0x04, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x21, // ZXC row + 0x21, 0x01, 0x04, 0x04, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x29, // ASD row + 0x21, 0x04, 0x04, 0x04, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x14, 0x21, // QWE row + 0x21, 0x01, 0x04, 0x04, 0x04, 0x04, 0x24, 0x24, 0x24, 0x24, 0x04, 0x04, 0x04, 0x04, 0x21 // 123 row +}; + +bool isRGBOff = false; +bool isCapsBlink = false; +static uint16_t recording_timer; + +void keyboard_pre_init_user(void) { + // override `config.h` flags with new values + for (int i = 0; i < DRIVER_LED_TOTAL; i++) g_led_config.flags[i] = g_led_config_new_flags[i]; +} + +void keyboard_post_init_user(void) { + isRGBOff = false; +} + +void rgb_matrix_indicators_user(void) { + // do nothing, override base <> function to disable it +} + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + + uint8_t v = MIN( rgblight_get_val() + RGB_BRIGHTER_BY, 0xFF ); + uint8_t current_layer = get_highest_layer(layer_state); + + // Caps Lock key stuff + + if (host_keyboard_led_state().caps_lock) { + if (isRGBOff) { + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white + } else { + // Caps Lock key/LED + if (timer_elapsed(recording_timer) > 500) { + isCapsBlink = !isCapsBlink; + recording_timer = timer_read(); + } + if (isCapsBlink) { + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white + } + + // Alpha keys/LEDs + for (uint8_t i = led_min; i <= led_max; i++) { + if ((g_led_config.flags[i] & LED_FLAG_ALPHA_KEY) != 0) { + rgb_matrix_set_color(i, v, 0, 0); //red + } + } + } + } else if (isRGBOff) { + uint8_t r = 0; + uint8_t g = 0; + uint8_t b = 0; + + if ((g_led_config.flags[ID67_CAPS_LOCK_KEY_INDEX] & LED_FLAG_LAYER_IND) != 0) { + switch (current_layer) { + case LAYER_1: b = v; break; // blue + case LAYER_2: g = v; break; // green + case LAYER_3: r = v; break; // red + } + } + + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, r, g, b); // off + } + + // Layer indicator stuff + + switch (current_layer) { + case LAYER_1: + for (uint8_t i = led_min; i <= led_max; i++) { + if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { + rgb_matrix_set_color(i, 0, 0, v); // blue + } + } + break; + + case LAYER_2: + for (uint8_t i = led_min; i <= led_max; i++) { + if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { + rgb_matrix_set_color(i, 0, v, 0); // green + } + } + break; + + case LAYER_3: + for (uint8_t i = led_min; i <= led_max; i++) { + if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { + rgb_matrix_set_color(i, v, 0, 0); // red + } + } + break; + + default: + if (isRGBOff) { + // switch layer indicators off only if in OFF mode + for (uint8_t i = led_min; i <= led_max; i++) { + if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { + rgb_matrix_set_color(i, 0, 0, 0); // red + } + } + } + break; + } +} + +/* + * Sleep mode stuff (untested) + */ + +void suspend_power_down_user(void) { + rgb_matrix_set_suspend_state(true); +} + +void suspend_wakeup_init_user(void) { + rgb_matrix_set_suspend_state(false); +} + +#endif + +/* + * Mac Fn-key stuff + */ + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + + switch (keycode) { + // handle RGB toggle key + case RGB_TOG: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: + isRGBOff = true; + rgb_matrix_set_flags(LED_FLAG_INDICATOR | LED_FLAG_LAYER_IND); + rgb_matrix_set_color_all(0, 0, 0); + break; + default: + isRGBOff = false; + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); // turn the lights back on + } + } + return false; + + // print firmware version + case KB_VRSN: + if (!get_mods()) { + if (!record->event.pressed) { + SEND_STRING(QMK_KEYBOARD ":" QMK_KEYMAP " (v" QMK_VERSION ")"); + } + } + return false; + + // @see: https://github.com/qmk/qmk_firmware/issues/10111#issuecomment-752300353 + case KC_MCON: + if (record->event.pressed) { + host_consumer_send(_AC_SHOW_ALL_WINDOWS); + } + return false; + + case KC_LPAD: + if (record->event.pressed) { + host_consumer_send(_AC_SHOW_ALL_APPS); + } + return false; + + default: + return true; /* Process all other keycodes normally */ + } +} diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/rules.mk b/keyboards/idobao/id67/keymaps/vinorodrigues/rules.mk new file mode 100644 index 0000000000..24f7bdab9c --- /dev/null +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/rules.mk @@ -0,0 +1,5 @@ +LTO_ENABLE = yes +VIA_ENABLE = yes + +KEY_LOCK_ENABLE = no # Enable KC_LOCK support +NKRO_ENABLE = no # N-Key Rollover must be OFF for mac keys to work diff --git a/keyboards/idobao/id67/readme.md b/keyboards/idobao/id67/readme.md index 134d45b18e..c061db8f03 100644 --- a/keyboards/idobao/id67/readme.md +++ b/keyboards/idobao/id67/readme.md @@ -1,29 +1,40 @@ # IDOBAO ID67 +![id67](https://i.imgur.com/9roQ4Mih.jpeg) + A 65% hotswap keyboard from IDOBAO. ## ANSI support: -* Keyboard Maintainer: Tybera -* Hardware Supported: IDOBAO ID67 -* Hardware Availability: [IDOBAO](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) +* Keyboard Maintainer: Tybera *(fmr.)*, [thewerther](https://github.com/thewerther) *(curr.)* +* Hardware Supported: IDOBAO ID67, ID67V2, ID67 Crystal & ID67 Bestype +* Hardware Availability: IDOBAO website: +* [ID67](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) +* [ID67V2](https://idobao.net/collections/65-layout/products/idobao-id67v2-65-hot-swappable-mechanical-keyboard-kit) +* [ID67 Crystal](https://idobao.net/collections/65-layout/products/idobao-id67-crystal-keyboard-kit-gasket-mount-version) +* [ID67 Bestype](https://idobao.net/collections/65-layout/products/idobao-id67-bestype-keyboard-kit-aluminum-with-brass-weight) -## Variants +## Layout -Currently there are two variants for the id67: -1. `rgb_default` which uses the `RGB Lightning` feature for the on-board LEDs. -2. `rgb` which uses the more advanced `RGB Matrix` feature for the per-key and underglow (bottom of PCB) LEDs. +![ID67 layout](https://i.imgur.com/Ge6Uxao.png) -Make examples for this keyboard (after setting up your build environment): - make idobao/id67/default_rgb:default +## Compiling and flashing - make idobao/id67/rgb:default +Make example for this keyboard (after setting up your build environment): -Flashing examples for this keyboard: + make id67:default - make idobao/id67/default_rgb:default:flash +Flashing example for this keyboard: - make idobao/id67/rgb:default:flash + make id67:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the `Escape` key and plug in the keyboard. +* **Physical reset button**: Briefly press the button on the back of the PCB. +* **Keycode in layout**: Press the key mapped to `RESET` (FN+Z). diff --git a/keyboards/idobao/id67/rgb/readme.md b/keyboards/idobao/id67/rgb/readme.md deleted file mode 100644 index 8376af1468..0000000000 --- a/keyboards/idobao/id67/rgb/readme.md +++ /dev/null @@ -1,36 +0,0 @@ -# IDOBAO ID67 - -![id67](https://i.imgur.com/9roQ4Mih.jpeg) - -A 65% hotswap keyboard from IDOBAO. - -## ANSI support: - -* Keyboard Maintainer: Tybera -* Hardware Supported: IDOBAO ID67 -* Hardware Availability: [IDOBAO-website](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) - -## Layout - -![ID67 layout](https://i.imgur.com/Ge6Uxao.png) - - -## Compiling and flashing - -Make example for this keyboard (after setting up your build environment): - - make id67/rgb:default - -Flashing example for this keyboard: - - make id67/rgb:default:flash - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). - -## Bootloader - -Enter the bootloader in 3 ways: - -* **Bootmagic reset**: Hold down the `Escape` key and plug in the keyboard. -* **Physical reset button**: Briefly press the button on the back of the PCB. -* **Keycode in layout**: Press the key mapped to `RESET` (FN+Z). diff --git a/keyboards/idobao/id67/rgb/rgb.c b/keyboards/idobao/id67/rgb/rgb.c deleted file mode 100644 index 5fc007d19a..0000000000 --- a/keyboards/idobao/id67/rgb/rgb.c +++ /dev/null @@ -1,49 +0,0 @@ -/* Copyright 2021 Tybera - * Copyright 2021 thewerther - * - * 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 . - */ - -#include "rgb.h" - -#define __ NO_LED - -// Indices are reveresed on the physical board, top left is bottom right. -led_config_t g_led_config = { { - // Key Matrix to LED Index - {66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52}, - {51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38, 37}, - {36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 25, __, 24, 23}, - {22, __, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11, 10, 9}, - { 8, 7, __, 6, __, __, 5, __, __, __, 4, 3, 2, 1, 0}, -}, { - // LED Index to Physical Position - {224, 64}, {196, 64}, {168, 64}, {140, 64}, {112, 64}, {84, 64}, {56, 64}, {28, 64}, {0, 64}, - {224, 48}, {206, 48}, {189, 48}, {172, 48}, {155, 48}, {137, 48}, {120, 48}, {103, 48}, {86, 48}, {68, 48}, {51, 48}, {34, 48}, {17, 48}, {0, 48}, - {224, 32}, {206, 32}, {189, 32}, {172, 32}, {155, 32}, {137, 32}, {120, 32}, {103, 32}, {86, 32}, {68, 32}, {51, 32}, {34, 32}, {17, 32}, {0, 32}, - {224, 16}, {208, 16}, {192, 16}, {176, 16}, {160, 16}, {144, 16}, {128, 16}, {112, 16}, {96, 16}, {80, 16}, {64, 16}, {48, 16}, {32, 16}, {16, 16}, {0, 16}, - {224, 0}, {208, 0}, {192, 0}, {176, 0}, {160, 0}, {144, 0}, {128, 0}, {112, 0}, {96, 0}, {80, 0}, {64, 0}, {48, 0}, {32, 0}, {16, 0}, {0, 0}, - // underglow LEDs - {0, 0}, {56, 0}, {112, 0}, {168, 0}, {224, 0}, - {224, 64}, {168, 64}, {112, 64}, {56, 64}, {0, 64} -}, { - // LED Index to Flag - 4, 4, 4, 1, 1, 4, 1, 1, 1, // first row - 1, 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // second row - 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // third row - 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // fourth row - 4, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // fifth row - // underglow leds - 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 -} }; diff --git a/keyboards/idobao/id67/rgb/rules.mk b/keyboards/idobao/id67/rules.mk similarity index 97% rename from keyboards/idobao/id67/rgb/rules.mk rename to keyboards/idobao/id67/rules.mk index 5ebc2b824a..cda7bbd9cd 100644 --- a/keyboards/idobao/id67/rgb/rules.mk +++ b/keyboards/idobao/id67/rules.mk @@ -21,5 +21,5 @@ RGB_MATRIX_ENABLE = yes # Enable RGB Matrix feature RGB_MATRIX_DRIVER = WS2812 # ID67 uses WS2812 driver KEY_LOCK_ENABLE = yes # Enable KC_LOCK support - +LTO_ENABLE = yes LAYOUTS = 65_ansi_blocker From e4942df39760eb70dc62ae609cb68b07c2786f13 Mon Sep 17 00:00:00 2001 From: dexter93 Date: Fri, 22 Apr 2022 10:36:32 +0300 Subject: [PATCH 322/699] Chibios USB protocol: allow overriding RAW Capacity (#16339) --- tmk_core/protocol/chibios/usb_main.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index bd8af6d194..c59569a85a 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -339,8 +339,12 @@ static usb_driver_configs_t drivers = { .console_driver = QMK_USB_DRIVER_CONFIG(CONSOLE, 0, true), #endif #ifdef RAW_ENABLE -# define RAW_IN_CAPACITY 4 -# define RAW_OUT_CAPACITY 4 +# ifndef RAW_IN_CAPACITY +# define RAW_IN_CAPACITY 4 +# endif +# ifndef RAW_OUT_CAPACITY +# define RAW_OUT_CAPACITY 4 +# endif # define RAW_IN_MODE USB_EP_MODE_TYPE_INTR # define RAW_OUT_MODE USB_EP_MODE_TYPE_INTR .raw_driver = QMK_USB_DRIVER_CONFIG(RAW, 0, false), From 83ce70c821ba669a9643bb8c5b89f18ddf60b866 Mon Sep 17 00:00:00 2001 From: IskandarMa Date: Fri, 22 Apr 2022 15:37:29 +0800 Subject: [PATCH 323/699] [Docs] zh-cn document translate: git parts (#15576) Co-authored-by: peepeetee <43021794+peepeetee@users.noreply.github.com> Co-authored-by: Dasky <32983009+daskygit@users.noreply.github.com> --- docs/zh-cn/newbs_git_best_practices.md | 23 +++++ .../newbs_git_resolving_merge_conflicts.md | 86 +++++++++++++++++++ .../zh-cn/newbs_git_resynchronize_a_branch.md | 76 ++++++++++++++++ .../newbs_git_using_your_master_branch.md | 79 +++++++++++++++++ 4 files changed, 264 insertions(+) create mode 100644 docs/zh-cn/newbs_git_best_practices.md create mode 100644 docs/zh-cn/newbs_git_resolving_merge_conflicts.md create mode 100644 docs/zh-cn/newbs_git_resynchronize_a_branch.md create mode 100644 docs/zh-cn/newbs_git_using_your_master_branch.md diff --git a/docs/zh-cn/newbs_git_best_practices.md b/docs/zh-cn/newbs_git_best_practices.md new file mode 100644 index 0000000000..af3359dfc5 --- /dev/null +++ b/docs/zh-cn/newbs_git_best_practices.md @@ -0,0 +1,23 @@ +# QMK所采用的Git最佳实践 + + + +*译者注:对于git相关的部分,除广为接受的名词外,会尽量保留git命令及各种术语的英文版本,部分名词及关键部分会附带中文翻译* + +## 或者讲,"怎么才能不害怕并喜欢上Git" + +本节旨在以最佳方式指导新手在为QMK做贡献时获得流畅的体验。我们将进行一次完整的QMK贡献操作流程,并在部分环节中详细讲述几种便捷的方法,之后我们会故意搞砸一些东西,并教导你如何回到正轨。 + +该章节做了如下假设: + +1. 你已有Github账号且已[fork了qmk_firmware仓库](zh-cn/getting_started_github.md)到你的账号下。 +2. 已完成了[构建环境](zh-cn/newbs_getting_started.md#set-up-your-environment)及[QMK](zh-cn/newbs_getting_started.md#set-up-qmk)配置。 + +--- + +- 第一节:[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md) +- 第二节:[解决合并冲突](zh-cn/newbs_git_resolving_merge_conflicts.md) +- 第三节:[重新同步一个脱离同步状态的Git分支](zh-cn/newbs_git_resynchronize_a_branch.md) diff --git a/docs/zh-cn/newbs_git_resolving_merge_conflicts.md b/docs/zh-cn/newbs_git_resolving_merge_conflicts.md new file mode 100644 index 0000000000..bd9702a488 --- /dev/null +++ b/docs/zh-cn/newbs_git_resolving_merge_conflicts.md @@ -0,0 +1,86 @@ +# 解决合并冲突 + + + +有时在你致力于一个较长周期才能完成的分支时,其它人提交的变更会与你提交的pull request中的变更发生冲突。我们将这种多个人编辑同一个模块同一个文件时产生的场景叫做 *合并冲突* + +?> 本文中的场景基于[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md)一文。如果你对那篇文章不熟悉,请先阅读它,再回来继续。 + +## 变基/衍合(rebase) + + +Git的*变基*操作会将提交历史中的提交节点摘除并回滚,然后统一提交到一个新节点上。在解决合并冲突时,可以通过对当前分支进行变基,来获取从分支拉取到当前时刻的所有变更。 + +从执行如下命令开始: + +``` +git fetch upstream +git rev-list --left-right --count HEAD...upstram/master +``` + +此处输入的 `git rev-list` 命令可以得到当前分支与QMK主干分支间的提交数量差。而先执行 `git fetch` 是为了确保我们有上游仓库(upstream repo)的最新状态。`git rev-list` 命令会返回两个数字: + +``` +$ git rev-list --left-right --count HEAD...upstream/master +7 35 +``` + +第一个数字为当前分支自创建后新增的提交数量。第二个数字为当前分支创建后在 `upstream/master` 上的提交数量,而这部分就是我们当前分支上缺失的提交记录。 + +在我们了解了当前分支以及上游仓库的状态后,可以发起变基操作了: + +``` +git rebase upstream/master +``` + +这样可以让Git回滚该分支的提交,然后基于QMK的主干版本重新应用这些提交。 + +*译注:以下内容在中文Git下大同小异,且仅作为示例,不进行翻译* +``` +$ git rebase upstream/master +First, rewinding head to replay your work on top of it... +Applying: Commit #1 +Using index info to reconstruct a base tree... +M conflicting_file_1.txt +Falling back to patching base and 3-way merge... +Auto-merging conflicting_file_1.txt +CONFLICT (content): Merge conflict in conflicting_file_1.txt +error: Failed to merge in the changes. +hint: Use 'git am --show-current-patch' to see the failed patch +Patch failed at 0001 Commit #1 + +Resolve all conflicts manually, mark them as resolved with +"git add/rm ", then run "git rebase --continue". +You can instead skip this commit: run "git rebase --skip". +To abort and get back to the state before "git rebase", run "git rebase --abort". +``` + +以上内容是在告诉我们有合并冲突存在,并给出了冲突所在的文件名。在编辑器中打开该文件,可以在某处发现类似如下形式的内容: + +``` +<<<<<<< HEAD +

For help with any issues, email us at support@webhost.us.

+======= +

Need help? Email support@webhost.us.

+>>>>>>> Commit #1 +``` + +`<<<<<<< HEAD` 标记了合并冲突的起始行,直至 `>>>>>>> Commit #1` 标记的结束行,中间通过 `=======` 分隔开冲突双方。其中 `HEAD` 部分为QMK主干上的版本,标记了提交日志的部分为当前分支的本地提交。 + +由于Git存储的是*文件差异部分*而非整个文件,所以当Git无法在文件中找到一个变更发生前的内容时,就无法知道如何去进行文件变更,重新编辑一下可以解决问题。在更改完成后,保存文件。 + +``` +

Need help? Email support@webhost.us.

+``` + +之后,执行: + +``` +git add conflicting_file_1.txt +git rebase --continue +``` + +Git即会记录对文件冲突做出的变更,并继续处理剩余的提交,直至全部完成。 diff --git a/docs/zh-cn/newbs_git_resynchronize_a_branch.md b/docs/zh-cn/newbs_git_resynchronize_a_branch.md new file mode 100644 index 0000000000..3f38138f69 --- /dev/null +++ b/docs/zh-cn/newbs_git_resynchronize_a_branch.md @@ -0,0 +1,76 @@ +# 重新同步已失去同步状态的Git分支 + + + +假设你在自己的 `master` 分支之上有提交,并且想和QMK仓库进行同步,可以通过 `git pull` 拉取QMK的 `master` 分支到你的库,但同时Github也会提醒你当前分支相比 `qmk:master` 有几个领先的提交,会在你向QMK发起pr时造成麻烦。 + +?> 本文中的场景基于[在你Fork的主干上:频繁更新,不要提交](zh-cn/newbs_git_using_your_master_branch.md)一文。如果你对那篇文章不熟悉,请先阅读它,再回来继续。 + +## 备份你在自己的主干分支上的所有变更(可选) + +不会有人想把有用的成果弄丢的。如果你想将你的 `master` 分支上的变更另存一份,简便的方法是直接创建一个当前“脏” `master` 分支的副本: + +``` +git branch old_master master +``` + +现在 `master` 分支拥有了一个副本分支 `old_master`。 + +## 重新同步分支 + +现在可以重新同步 `master` 分支了,这里,我们将QMK仓库设置为Git的远程仓库。通过执行 `git remote -v` 可以确认远程仓库配置,输出信息应类似于: + +``` +QMKuser ~/qmk_firmware (master) +$ git remote -v +origin https://github.com//qmk_firmware.git (fetch) +origin https://github.com//qmk_firmware.git (push) +upstream https://github.com/qmk/qmk_firmware.git (fetch) +upstream https://github.com/qmk/qmk_firmware.git (push) +``` + +如果你只能看到一个仓库: + +``` +QMKuser ~/qmk_firmware (master) +$ git remote -v +origin https://github.com/qmk/qmk_firmware.git (fetch) +origin https://github.com/qmk/qmk_firmware.git (push) +``` + +通过如下命令添加新的远程仓库: + +``` +git remote add upstream https://github.com/qmk/qmk_firmware.git +``` + +然后,重新将 `origin` 远程仓库设置为自己的fork: + +``` +git remote set-url origin https://github.com//qmk_firmware.git +``` + +在两个远程仓库配置完毕后,需要从QMK的 upstream 仓库中获取到更新,执行: + +``` +git fetch upstream +``` + +此时,重新同步你的分支到QMK的版本: + +``` +git reset --hard upstream/master +``` + +以上操作会更新你的本地仓库,而你的Github远程仓库仍然处于未同步状态,通过推送,可以让其进入已同步状态。可以通过如下命令来指引Git强行覆盖掉那些仅在你远程仓库中存在的提交: + +``` +git push --force-with-lease +``` + +!> **不要**在其它使用者也会提交的分支上执行 `git push --force-with-lease`,否则会覆盖掉他人的提交。 + +此时你的Github fork,本地文件副本,以及QMK仓库就是一致的了。之后再进行变更([在分支上!](zh-cn/newbs_git_using_your_master_branch.md#making-changes))和提交。 diff --git a/docs/zh-cn/newbs_git_using_your_master_branch.md b/docs/zh-cn/newbs_git_using_your_master_branch.md new file mode 100644 index 0000000000..2a83fc2139 --- /dev/null +++ b/docs/zh-cn/newbs_git_using_your_master_branch.md @@ -0,0 +1,79 @@ +# 在你Fork的主干上:频繁更新,不要提交 + + + +我们强烈推荐所有QMK开发者,无论在哪里做什么改动,频繁更新你的 `master` 分支,但***不要***在其上提交。相对地,将你所有的改动提交到开发分支上并提交一个pull request。 + +为了减少冲突 — 多人同时编辑同一个文件 — 保持你的 `master` 分支更新到最新,并在新创建的分支上进行开发。 + +## 更新master分支 + +为了保持 `master` 更新到最新,推荐将QMK固件仓库("repo")设置为git远程仓库。打开Git命令行界面并键入: + +``` +git remote add upstream https://github.com/qmk/qmk_firmware.git +``` + +?> 名称 `upstream` 部分可以任意,这里给的是常用的;你可以将QMK远程仓库名称改成你想要的。Git的 `remote` 命令语法为 `git remote add `, `` 是远程仓库的简写名称,这个名称可以在很多Git命令中使用,包括但不限于 `fetch`,`pull` 及 `push`,以指定目标远程仓库。 + +要验证是否添加成功,可以执行 `git remote -v`,输出应该类似于: + +``` +$ git remote -v +origin https://github.com//qmk_firmware.git (fetch) +origin https://github.com//qmk_firmware.git (push) +upstream https://github.com/qmk/qmk_firmware.git (fetch) +upstream https://github.com/qmk/qmk_firmware.git (push) +``` + +在以上操作完成后,可以通过执行 `git fetch upstream` 来检查仓库是否有更新。该命令从QMK仓库拉取的分支(branches)及标签(tags) — 统称为“refs(引用)” —现在也被称作 `upstream`(上游)。此时我们可以比对自己fork版本的 `origin` 与QMK维护的分支的差异了。 + +要更新你的fork的master分支,执行以下指令,每一行结束都需要按回车: + +``` +git checkout master +git fetch upstream +git pull upstream master +git push origin master +``` + +以上操作会切换到 `master` 分支,从QMK仓库拉取refs,下载QMK `master` 分支的当前版本,并上传至你的fork中。 + +## 进行编辑 :id=making-changes + +要进行编辑,通过如下命令创建一个新分支: + +``` +git checkout -b dev_branch +git push --set-upstream origin dev_branch +``` + +以上操作会创建 `dev_branch` 新分支,检出(check out)并保存到你的fork中。`--set-upstream` 参数用于告知git使用你的fork仓库来处理 `dev_branch` 分支下的 `git push` 及 `git pull` 命令,且仅需要在第一次执行push命令时指定,之后再次执行 `git push` 或是 `git pull` 都无需加入该参数了。 + +?> 在 `git push` 时,可以使用 `-u` 替代 `--set-upstram` — `-u` 为 `--set-upsream` 参数的别名。 + +你可以任意命名该分支,但仍建议对分支起一个可以描述将在该分支下要做的工作的名称。 + +默认情况下 `git checkout -b` 会基于你当前检出的分支作为新分支的基准。可以在后面追加已存在但未检出的分支名来指定新分支的基准: + +``` +git checkout -b dev_branch master +``` + +此时你便有了一个开发用分支,可以打开编辑器并进行你期望的变更了。通常推荐提交大量的小规模提交(commit),这样在需要时会更容易地定位并回滚造成问题的提交。若要提交更改,编辑并保存要更新的文件,并将其添加到*暂存区(staged area)*,然后提交到分支中: + +``` +git add path/to/updated_file +git commit -m "My commit message." +``` + +`git add` 会将更改后的文件放到Git的*暂存区*,也称作Git的“装载区”。这里留存着即将通过 `git commit` 所提交并保存到仓库中的变更。请使用确切的描述来填写提交日志,以便于快速了解改动内容。 + +?> 如果更改了多个文件,可以通过 `git add -- path/to/file1 path/to/file2 ...` 来添加所有项目。 + +## 发布变更 + +最后一步为上传你的变更到你的fork中。通过执行 `git push`,Git将发布 `dev_branch` 分支的所有变更至你的fork中。 From 97b861d104a006619d4563c4fc6cbe7acc3e3fe2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?V=C3=ADctor=20Pont?= Date: Fri, 22 Apr 2022 09:38:16 +0200 Subject: [PATCH 324/699] [Keyboard] Fix Pegasus Hoof (2013) layout, matrix and pin assignment (#16042) --- keyboards/bpiphany/pegasushoof/2013/2013.h | 67 ++++++----- keyboards/bpiphany/pegasushoof/2013/matrix.c | 114 +++++++++---------- 2 files changed, 90 insertions(+), 91 deletions(-) diff --git a/keyboards/bpiphany/pegasushoof/2013/2013.h b/keyboards/bpiphany/pegasushoof/2013/2013.h index 7a4d7f0b58..f43fdcf92c 100644 --- a/keyboards/bpiphany/pegasushoof/2013/2013.h +++ b/keyboards/bpiphany/pegasushoof/2013/2013.h @@ -21,21 +21,21 @@ along with this program. If not, see . #include "quantum.h" #define LAYOUT( \ - KG6, KH4, KI4, KI2, KI6, KP5, KL6, KM2, KM4, KO4, KO5, KO6, KO0, KN5, KN7, KP7, \ - KG4, KG5, KH5, KI5, KJ5, KJ4, KK4, KK5, KL5, KM5, KF5, KF4, KL4, KO2, KR4, KC4, KE4, \ - KG2, KG7, KH7, KI7, KJ7, KJ2, KK2, KK7, KL7, KM7, KF7, KF2, KL2, KO3, KQ4, KC5, KE5, \ - KH2, KG3, KH3, KI3, KJ3, KJ6, KK6, KK3, KL3, KM3, KF3, KF6, KO1, \ - KB2, KH6, KG1, KH1, KI1, KJ1, KJ0, KK0, KK1, KL1, KM1, KF0, KB3, KC6, \ - KP4, KD2, KN6, KQ6, KN0, KA3, KM0, KP1, KC0, KQ0, KR0 \ - ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ - /* 0 */ { KC_NO , KC_NO , KC0 , KC_NO , KC_NO , KF0 , KC_NO , KC_NO , KC_NO , KJ0 , KK0 , KC_NO , KM0 , KN0 , KO0 , KC_NO , KQ0 , KR0 }, \ - /* 1 */ { KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KG1 , KH1 , KI1 , KJ1 , KK1 , KL1 , KM1 , KC_NO , KO1 , KP1 , KC_NO , KC_NO }, \ - /* 2 */ { KC_NO , KB2 , KC_NO , KD2 , KC_NO , KF2 , KG2 , KH2 , KI2 , KJ2 , KK2 , KL2 , KM2 , KC_NO , KO2 , KC_NO , KC_NO , KC_NO }, \ - /* 3 */ { KA3 , KB3 , KC_NO , KC_NO , KC_NO , KF3 , KG3 , KH3 , KI3 , KJ3 , KK3 , KL3 , KM3 , KC_NO , KO3 , KC_NO , KC_NO , KC_NO }, \ - /* 4 */ { KC_NO , KC_NO , KC4 , KC_NO , KE4 , KF4 , KG4 , KH4 , KI4 , KJ4 , KK4 , KL4 , KM4 , KC_NO , KO4 , KP4 , KQ4 , KR4 }, \ - /* 5 */ { KC_NO , KC_NO , KC5 , KC_NO , KE5 , KF5 , KG5 , KH5 , KI5 , KJ5 , KK5 , KL5 , KM5 , KN5 , KO5 , KP5 , KC_NO , KC_NO }, \ - /* 6 */ { KC_NO , KC_NO , KC6 , KC_NO , KC_NO , KF6 , KG6 , KH6 , KI6 , KJ6 , KK6 , KL6 , KC_NO , KN6 , KO6 , KC_NO , KQ6 , KC_NO }, \ - /* 7 */ { KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KF7 , KG7 , KH7 , KI7 , KJ7 , KK7 , KL7 , KM7 , KN7 , KC_NO , KP7 , KC_NO , KC_NO } \ + KJ6, KI4, KH4, KH2, KH6, KA7, KE6, KD2, KD4, KB4, KB7, KB6, KB0, KC7, KC5, KA5, \ + KJ4, KJ7, KI7, KH7, KG7, KG4, KF4, KF7, KE7, KD7, KR7, KR4, KE4, KB2, KL4, KO4, KQ4, \ + KJ2, KJ5, KI5, KH5, KG5, KG2, KF2, KF5, KE5, KD5, KR5, KR2, KE2, KB3, KK4, KO7, KQ7, \ + KI2, KJ3, KI3, KH3, KG3, KG6, KF6, KF3, KE3, KD3, KR3, KR6, KB1, \ + KN2, KI6, KJ1, KI1, KH1, KG1, KG0, KF0, KF1, KE1, KD1, KR0, KN3, KO6, \ + KA4, KP2, KC6, KK6, KC0, KM3, KD0, KA1, KO0, KK0, KL0 \ + ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ + /* 0 */ { KC_NO, KB0, KC0, KD0, KC_NO, KF0, KG0, KC_NO, KC_NO, KC_NO, KK0, KL0, KC_NO, KC_NO, KO0, KC_NO, KC_NO, KR0 }, \ + /* 1 */ { KA1, KB1, KC_NO, KD1, KE1, KF1, KG1, KH1, KI1, KJ1, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ + /* 2 */ { KC_NO, KB2, KC_NO, KD2, KE2, KF2, KG2, KH2, KI2, KJ2, KC_NO, KC_NO, KC_NO, KN2, KC_NO, KP2, KC_NO, KR2 }, \ + /* 3 */ { KC_NO, KB3, KC_NO, KD3, KE3, KF3, KG3, KH3, KI3, KJ3, KC_NO, KC_NO, KM3, KN3, KC_NO, KC_NO, KC_NO, KR3 }, \ + /* 4 */ { KA4, KB4, KC_NO, KD4, KE4, KF4, KG4, KH4, KI4, KJ4, KK4, KL4, KC_NO, KC_NO, KO4, KC_NO, KQ4, KR4 }, \ + /* 5 */ { KA5, KC_NO, KC5, KD5, KE5, KF5, KG5, KH5, KI5, KJ5, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KR5 }, \ + /* 6 */ { KC_NO, KB6, KC6, KC_NO, KE6, KF6, KG6, KH6, KI6, KJ6, KK6, KC_NO, KC_NO, KC_NO, KO6, KC_NO, KC_NO, KR6 }, \ + /* 7 */ { KA7, KB7, KC7, KD7, KE7, KF7, KG7, KH7, KI7, KJ7, KC_NO, KC_NO, KC_NO, KC_NO, KO7, KC_NO, KQ7, KR7 } \ } #define LAYOUT_tkl_ansi( \ @@ -45,15 +45,15 @@ along with this program. If not, see . KH2, KG3, KH3, KI3, KJ3, KJ6, KK6, KK3, KL3, KM3, KF3, KF6, KO1, \ KB2, KG1, KH1, KI1, KJ1, KJ0, KK0, KK1, KL1, KM1, KF0, KB3, KC6, \ KP4, KD2, KN6, KQ6, KN0, KA3, KM0, KP1, KC0, KQ0, KR0 \ - ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ - /* 0 */ { KC_NO , KC_NO , KC0 , KC_NO , KC_NO , KF0 , KC_NO , KC_NO , KC_NO , KJ0 , KK0 , KC_NO , KM0 , KN0 , KO0 , KC_NO , KQ0 , KR0 }, \ - /* 1 */ { KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KG1 , KH1 , KI1 , KJ1 , KK1 , KL1 , KM1 , KC_NO , KO1 , KP1 , KC_NO , KC_NO }, \ - /* 2 */ { KC_NO , KB2 , KC_NO , KD2 , KC_NO , KF2 , KG2 , KH2 , KI2 , KJ2 , KK2 , KL2 , KM2 , KC_NO , KO2 , KC_NO , KC_NO , KC_NO }, \ - /* 3 */ { KA3 , KB3 , KC_NO , KC_NO , KC_NO , KF3 , KG3 , KH3 , KI3 , KJ3 , KK3 , KL3 , KM3 , KC_NO , KO3 , KC_NO , KC_NO , KC_NO }, \ - /* 4 */ { KC_NO , KC_NO , KC4 , KC_NO , KE4 , KF4 , KG4 , KH4 , KI4 , KJ4 , KK4 , KL4 , KM4 , KC_NO , KO4 , KP4 , KQ4 , KR4 }, \ - /* 5 */ { KC_NO , KC_NO , KC5 , KC_NO , KE5 , KF5 , KG5 , KH5 , KI5 , KJ5 , KK5 , KL5 , KM5 , KN5 , KO5 , KP5 , KC_NO , KC_NO }, \ - /* 6 */ { KC_NO , KC_NO , KC6 , KC_NO , KC_NO , KF6 , KG6 , KC_NO , KI6 , KJ6 , KK6 , KL6 , KC_NO , KN6 , KO6 , KC_NO , KQ6 , KC_NO }, \ - /* 7 */ { KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KF7 , KG7 , KH7 , KI7 , KJ7 , KK7 , KL7 , KM7 , KN7 , KC_NO , KP7 , KC_NO , KC_NO } \ + ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ + /* 0 */ { KC_NO, KC_NO, KC0, KC_NO, KC_NO, KF0, KC_NO, KC_NO, KC_NO, KJ0, KK0, KC_NO, KM0, KN0, KO0, KC_NO, KQ0, KR0 }, \ + /* 1 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KG1, KH1, KI1, KJ1, KK1, KL1, KM1, KC_NO, KO1, KP1, KC_NO, KC_NO }, \ + /* 2 */ { KC_NO, KB2, KC_NO, KD2, KC_NO, KF2, KG2, KH2, KI2, KJ2, KK2, KL2, KM2, KC_NO, KO2, KC_NO, KC_NO, KC_NO }, \ + /* 3 */ { KA3, KB3, KC_NO, KC_NO, KC_NO, KF3, KG3, KH3, KI3, KJ3, KK3, KL3, KM3, KC_NO, KO3, KC_NO, KC_NO, KC_NO }, \ + /* 4 */ { KC_NO, KC_NO, KC4, KC_NO, KE4, KF4, KG4, KH4, KI4, KJ4, KK4, KL4, KM4, KC_NO, KO4, KP4, KQ4, KR4 }, \ + /* 5 */ { KC_NO, KC_NO, KC5, KC_NO, KE5, KF5, KG5, KH5, KI5, KJ5, KK5, KL5, KM5, KN5, KO5, KP5, KC_NO, KC_NO }, \ + /* 6 */ { KC_NO, KC_NO, KC6, KC_NO, KC_NO, KF6, KG6, KC_NO, KI6, KJ6, KK6, KL6, KC_NO, KN6, KO6, KC_NO, KQ6, KC_NO }, \ + /* 7 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KF7, KG7, KH7, KI7, KJ7, KK7, KL7, KM7, KN7, KC_NO, KP7, KC_NO, KC_NO } \ } #define LAYOUT_tkl_jis( \ @@ -63,15 +63,15 @@ along with this program. If not, see . KH2, KG3, KH3, KI3, KJ3, KJ6, KK6, KK3, KL3, KM3, KF3, KF6, KO3, KO1, \ KB2, KG1, KH1, KI1, KJ1, KJ0, KK0, KK1, KL1, KM1, KF0, KL0, KB3, KC6, \ KP4, KD2, KN6, KG0, KQ6, KH0, KI0, KN0, KM0, KP1, KC0, KQ0, KR0 \ - ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ - /* 0 */ { KC_NO, KC_NO, KC0, KC_NO, KC_NO, KF0, KG0, KH0, KI0, KJ0, KK0, KL0, KM0, KN0, KO0, KC_NO, KQ0, KR0 }, \ - /* 1 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KG1, KH1, KI1, KJ1, KK1, KL1, KM1, KC_NO, KO1, KP1, KC_NO, KC_NO }, \ - /* 2 */ { KC_NO, KB2, KC_NO, KD2, KC_NO, KF2, KG2, KH2, KI2, KJ2, KK2, KL2, KM2, KC_NO, KO2, KC_NO, KC_NO, KC_NO }, \ - /* 3 */ { KC_NO, KB3, KC_NO, KC_NO, KC_NO, KF3, KG3, KH3, KI3, KJ3, KK3, KL3, KM3, KC_NO, KO3, KC_NO, KC_NO, KC_NO }, \ - /* 4 */ { KC_NO, KC_NO, KC4, KC_NO, KE4, KF4, KG4, KH4, KI4, KJ4, KK4, KL4, KM4, KC_NO, KO4, KP4, KQ4, KR4 }, \ - /* 5 */ { KC_NO, KC_NO, KC5, KC_NO, KE5, KF5, KG5, KH5, KI5, KJ5, KK5, KL5, KM5, KN5, KO5, KP5, KC_NO, KC_NO }, \ - /* 6 */ { KC_NO, KC_NO, KC6, KC_NO, KC_NO, KF6, KG6, KC_NO, KI6, KJ6, KK6, KL6, KC_NO, KN6, KO6, KC_NO, KQ6, KC_NO }, \ - /* 7 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KF7, KG7, KH7, KI7, KJ7, KK7, KL7, KK7, KL7, KO7, KP7, KC_NO, KC_NO } \ + ) { /* 00-A 01-B 02-C 03-D 04-E 05-F 06-G 07-H 08-I 09-J 10-K 11-L 12-M 13-N 14-O 15-P 16-Q 17-R */ \ + /* 0 */ { KC_NO, KC_NO, KC0, KC_NO, KC_NO, KF0, KG0, KH0, KI0, KJ0, KK0, KL0, KM0, KN0, KO0, KC_NO, KQ0, KR0 },\ + /* 1 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KG1, KH1, KI1, KJ1, KK1, KL1, KM1, KC_NO, KO1, KP1, KC_NO, KC_NO },\ + /* 2 */ { KC_NO, KB2, KC_NO, KD2, KC_NO, KF2, KG2, KH2, KI2, KJ2, KK2, KL2, KM2, KC_NO, KO2, KC_NO, KC_NO, KC_NO },\ + /* 3 */ { KC_NO, KB3, KC_NO, KC_NO, KC_NO, KF3, KG3, KH3, KI3, KJ3, KK3, KL3, KM3, KC_NO, KO3, KC_NO, KC_NO, KC_NO },\ + /* 4 */ { KC_NO, KC_NO, KC4, KC_NO, KE4, KF4, KG4, KH4, KI4, KJ4, KK4, KL4, KM4, KC_NO, KO4, KP4, KQ4, KR4 },\ + /* 5 */ { KC_NO, KC_NO, KC5, KC_NO, KE5, KF5, KG5, KH5, KI5, KJ5, KK5, KL5, KM5, KN5, KO5, KP5, KC_NO, KC_NO },\ + /* 6 */ { KC_NO, KC_NO, KC6, KC_NO, KC_NO, KF6, KG6, KC_NO, KI6, KJ6, KK6, KL6, KC_NO, KN6, KO6, KC_NO, KQ6, KC_NO },\ + /* 7 */ { KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KF7, KG7, KH7, KI7, KJ7, KK7, KL7, KK7, KL7, KO7, KP7, KC_NO, KC_NO } \ } inline void ph_caps_led_on(void) { DDRC |= (1<<6); PORTC &= ~(1<<6); } @@ -79,4 +79,3 @@ inline void ph_caps_led_off(void) { DDRC &= ~(1<<6); PORTC &= ~(1<<6); } inline void ph_sclk_led_on(void) { DDRC |= (1<<5); PORTC &= ~(1<<5); } inline void ph_sclk_led_off(void) { DDRC &= ~(1<<5); PORTC &= ~(1<<5); } - diff --git a/keyboards/bpiphany/pegasushoof/2013/matrix.c b/keyboards/bpiphany/pegasushoof/2013/matrix.c index a55cba7afd..ed56067dca 100644 --- a/keyboards/bpiphany/pegasushoof/2013/matrix.c +++ b/keyboards/bpiphany/pegasushoof/2013/matrix.c @@ -35,12 +35,12 @@ static void select_row(uint8_t col); __attribute__ ((weak)) void matrix_init_kb(void) { - matrix_init_user(); + matrix_init_user(); } __attribute__ ((weak)) void matrix_scan_kb(void) { - matrix_scan_user(); + matrix_scan_user(); } __attribute__ ((weak)) @@ -66,10 +66,10 @@ void matrix_init(void) /* Column output pins */ DDRD |= 0b01111011; /* Row input pins */ - DDRC &= ~0b10000000; - DDRB &= ~0b01111111; - PORTC |= 0b10000000; - PORTB |= 0b01111111; + DDRC &= (unsigned char) ~0b00000000; + DDRB &= (unsigned char) ~0b11111111; + PORTC |= 0b00000000; + PORTB |= 0b11111111; for (uint8_t i=0; i < MATRIX_ROWS; i++) { matrix[i] = 0; @@ -135,72 +135,72 @@ void matrix_print(void) static matrix_row_t read_cols(void) { return - (PINB & (1 << 5) ? 0 : 1 << 0) | - (PINC & (1 << 7) ? 0 : 1 << 1) | - (PINB & (1 << 4) ? 0 : 1 << 2) | - (PINB & (1 << 6) ? 0 : 1 << 3) | - (PINB & (1 << 1) ? 0 : 1 << 4) | - (PINB & (1 << 0) ? 0 : 1 << 5) | - (PINB & (1 << 3) ? 0 : 1 << 6) | - (PINB & (1 << 2) ? 0 : 1 << 7); + (PINB & (1 << 5) ? 0 : (matrix_row_t) 1 << 0) | + (PINB & (1 << 7) ? 0 : (matrix_row_t) 1 << 1) | + (PINB & (1 << 4) ? 0 : (matrix_row_t) 1 << 2) | + (PINB & (1 << 6) ? 0 : (matrix_row_t) 1 << 3) | + (PINB & (1 << 1) ? 0 : (matrix_row_t) 1 << 4) | + (PINB & (1 << 2) ? 0 : (matrix_row_t) 1 << 5) | + (PINB & (1 << 3) ? 0 : (matrix_row_t) 1 << 6) | + (PINB & (1 << 0) ? 0 : (matrix_row_t) 1 << 7); } static void select_row(uint8_t col) { switch (col) { case 0: - PORTD = (PORTD & ~0b01111011) | 0b00110011; - break; - case 1: - PORTD = (PORTD & ~0b01111011) | 0b01110000; - break; - case 2: PORTD = (PORTD & ~0b01111011) | 0b00010011; break; - case 3: - PORTD = (PORTD & ~0b01111011) | 0b01101000; - break; - case 4: - PORTD = (PORTD & ~0b01111011) | 0b00001011; - break; - case 5: - PORTD = (PORTD & ~0b01111011) | 0b00111011; - break; - case 6: - PORTD = (PORTD & ~0b01111011) | 0b01111000; - break; - case 7: - PORTD = (PORTD & ~0b01111011) | 0b01100001; - break; - case 8: - PORTD = (PORTD & ~0b01111011) | 0b01101001; - break; - case 9: - PORTD = (PORTD & ~0b01111011) | 0b01110001; - break; - case 10: - PORTD = (PORTD & ~0b01111011) | 0b01101010; - break; - case 11: - PORTD = (PORTD & ~0b01111011) | 0b01100010; - break; - case 12: - PORTD = (PORTD & ~0b01111011) | 0b01111001; - break; - case 13: - PORTD = (PORTD & ~0b01111011) | 0b01100000; - break; - case 14: + case 1: PORTD = (PORTD & ~0b01111011) | 0b01000011; break; - case 15: + case 2: + PORTD = (PORTD & ~0b01111011) | 0b01100000; + break; + case 3: + PORTD = (PORTD & ~0b01111011) | 0b01111001; + break; + case 4: + PORTD = (PORTD & ~0b01111011) | 0b01100010; + break; + case 5: + PORTD = (PORTD & ~0b01111011) | 0b01101010; + break; + case 6: + PORTD = (PORTD & ~0b01111011) | 0b01110001; + break; + case 7: + PORTD = (PORTD & ~0b01111011) | 0b01101001; + break; + case 8: + PORTD = (PORTD & ~0b01111011) | 0b01100001; + break; + case 9: + PORTD = (PORTD & ~0b01111011) | 0b01111000; + break; + case 10: PORTD = (PORTD & ~0b01111011) | 0b00011011; break; - case 16: + case 11: PORTD = (PORTD & ~0b01111011) | 0b00100011; break; - case 17: + case 12: PORTD = (PORTD & ~0b01111011) | 0b00101011; break; + case 13: + PORTD = (PORTD & ~0b01111011) | 0b01110000; + break; + case 14: + PORTD = (PORTD & ~0b01111011) | 0b00001011; + break; + case 15: + PORTD = (PORTD & ~0b01111011) | 0b01101000; + break; + case 16: + PORTD = (PORTD & ~0b01111011) | 0b00000011; + break; + case 17: + PORTD = (PORTD & ~0b01111011) | 0b00111011; + break; } } From d8b9796a32b9e7105e0af485d697886f230c094f Mon Sep 17 00:00:00 2001 From: toinux Date: Fri, 22 Apr 2022 09:41:54 +0200 Subject: [PATCH 325/699] [Keymap] Toinux's crkbd keymap and userspace (#16437) --- keyboards/crkbd/keymaps/toinux/config.h | 122 +++++++++++ keyboards/crkbd/keymaps/toinux/glcdfont.c | 232 ++++++++++++++++++++ keyboards/crkbd/keymaps/toinux/keycodes.h | 49 +++++ keyboards/crkbd/keymaps/toinux/keymap.c | 250 ++++++++++++++++++++++ keyboards/crkbd/keymaps/toinux/oled.c | 112 ++++++++++ keyboards/crkbd/keymaps/toinux/oled.h | 71 ++++++ keyboards/crkbd/keymaps/toinux/rgb.c | 68 ++++++ keyboards/crkbd/keymaps/toinux/rules.mk | 9 + users/toinux/keymap_qwerty_fr.h | 158 ++++++++++++++ 9 files changed, 1071 insertions(+) create mode 100644 keyboards/crkbd/keymaps/toinux/config.h create mode 100644 keyboards/crkbd/keymaps/toinux/glcdfont.c create mode 100644 keyboards/crkbd/keymaps/toinux/keycodes.h create mode 100644 keyboards/crkbd/keymaps/toinux/keymap.c create mode 100644 keyboards/crkbd/keymaps/toinux/oled.c create mode 100644 keyboards/crkbd/keymaps/toinux/oled.h create mode 100644 keyboards/crkbd/keymaps/toinux/rgb.c create mode 100644 keyboards/crkbd/keymaps/toinux/rules.mk create mode 100644 users/toinux/keymap_qwerty_fr.h diff --git a/keyboards/crkbd/keymaps/toinux/config.h b/keyboards/crkbd/keymaps/toinux/config.h new file mode 100644 index 0000000000..e7a18800d8 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/config.h @@ -0,0 +1,122 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert + +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 . +*/ + +#pragma once + +//#define USE_MATRIX_I2C + +/* Select hand configuration */ + +#define MASTER_LEFT +// #define MASTER_RIGHT +// #define EE_HANDS + +//#define TAPPING_FORCE_HOLD +//#define TAPPING_TERM 100 + +#ifdef RGBLIGHT_ENABLE + #define RGBLIGHT_EFFECT_BREATHING + // #define RGBLIGHT_EFFECT_RAINBOW_MOOD + // #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_TWINKLE + #define RGBLIGHT_LIMIT_VAL 120 + #define RGBLIGHT_HUE_STEP 10 + #define RGBLIGHT_SAT_STEP 17 + #define RGBLIGHT_VAL_STEP 17 +#endif + +#ifdef RGB_MATRIX_ENABLE +# define RGB_MATRIX_KEYPRESSES // reacts to keypresses +// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) +// # define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects +# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +# define RGB_MATRIX_FRAMEBUFFER_EFFECTS +// # define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) +// # define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash. +# define RGB_MATRIX_HUE_STEP 8 +# define RGB_MATRIX_SAT_STEP 8 +# define RGB_MATRIX_VAL_STEP 8 +# define RGB_MATRIX_SPD_STEP 10 + +/* Enable the animations you want/need. You may need to enable only a small number of these because * + * they take up a lot of space. Enable and confirm that you can still successfully compile your firmware. */ +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +// # define ENABLE_RGB_MATRIX_ALPHAS_MODS +// # define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +// # define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +// # define ENABLE_RGB_MATRIX_BREATHING +// # define ENABLE_RGB_MATRIX_BAND_SAT +// # define ENABLE_RGB_MATRIX_BAND_VAL +// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +// # define ENABLE_RGB_MATRIX_CYCLE_ALL +// # define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +// # define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +// # define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +// # define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +// # define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +// # define ENABLE_RGB_MATRIX_DUAL_BEACON +// # define ENABLE_RGB_MATRIX_RAINBOW_BEACON +// # define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +// # define ENABLE_RGB_MATRIX_RAINDROPS +// # define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +// # define ENABLE_RGB_MATRIX_HUE_BREATHING +// # define ENABLE_RGB_MATRIX_HUE_PENDULUM +// # define ENABLE_RGB_MATRIX_HUE_WAVE +// # define ENABLE_RGB_MATRIX_PIXEL_RAIN +// # define ENABLE_RGB_MATRIX_PIXEL_FLOW +// # define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +// # define ENABLE_RGB_MATRIX_TYPING_HEATMAP +// # define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +// # define ENABLE_RGB_MATRIX_MULTISPLASH +// # define ENABLE_RGB_MATRIX_SOLID_SPLASH +// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif + +#define OLED_FONT_H "keyboards/crkbd/keymaps/toinux/glcdfont.c" + +#define SPLIT_LAYER_STATE_ENABLE +// #define SPLIT_LED_STATE_ENABLE + +#define LAYER_STATE_16BIT diff --git a/keyboards/crkbd/keymaps/toinux/glcdfont.c b/keyboards/crkbd/keymaps/toinux/glcdfont.c new file mode 100644 index 0000000000..74cce5a952 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/glcdfont.c @@ -0,0 +1,232 @@ +// This is the 'classic' fixed-space bitmap font for Adafruit_GFX since 1.0. +// See gfxfont.h for newer custom bitmap font info. + +#include "progmem.h" + +// Standard ASCII 5x7 font +const unsigned char font[] PROGMEM = { + 0x24, 0x7E, 0x24, 0x24, 0x7E, 0x24, + 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, + 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, + 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, + 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, + 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, + 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, + 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, + 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, + 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, + 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, + 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, + 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, + 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, + 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, + 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, + 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, + 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, + 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, + 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, + 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, + 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, + 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, + 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, + 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, + 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, + 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, + 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, + 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, + 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, + 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, + 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, + 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, + 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, + 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, + 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, + 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, + 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, + 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, + 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, + 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, + 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, + 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, + 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, + 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, + 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, + 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, + 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, + 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, + 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, + 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, + 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, + 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, + 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, + 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, + 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, + 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, + 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, + 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, + 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, + 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, + 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, + 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, + 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, + 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, + 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, + 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, + 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, + 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, + 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, + 0x20, 0xD4, 0x54, 0x78, 0x40, 0x00, + 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, + 0x38, 0x44, 0x44, 0x28, 0x7F, 0x00, + 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, + 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, + 0x48, 0x54, 0x54, 0x54, 0x28, 0x00, + 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, + 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, + 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, + 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, + 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, + 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, + 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, + 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, + 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, + 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, + 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, + 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, + 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, + 0x4C, 0x50, 0x50, 0x50, 0x3C, 0x00, + 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, + 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, + 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, + 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, + 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, + 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, + 0x83, 0xC3, 0xC3, 0xC3, 0x9B, 0x03, + 0x03, 0x01, 0x00, 0x00, 0x00, 0x00, + 0x36, 0x32, 0x32, 0x32, 0x32, 0x32, + 0x32, 0xE6, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xFF, 0xFF, 0xFF, 0xFF, 0xE1, 0xFE, + 0xFF, 0xE1, 0xFF, 0xFF, 0xFF, 0xFF, + 0x80, 0x80, 0x80, 0x80, 0x9E, 0x81, + 0x80, 0x9E, 0x80, 0x80, 0x80, 0x80, + 0xFF, 0xEF, 0xD7, 0x0F, 0xDF, 0xDF, + 0xDF, 0xDF, 0x0F, 0xD7, 0xEF, 0xFF, + 0x01, 0x11, 0x29, 0xF1, 0x21, 0x21, + 0x21, 0x21, 0xF1, 0x29, 0x11, 0x01, + 0x00, 0x00, 0x00, 0xFC, 0xFE, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xF7, 0xEF, + 0xDF, 0xBF, 0x7F, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFE, 0xFC, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xFC, 0x02, 0x01, + 0x01, 0x01, 0x01, 0x01, 0x09, 0x11, + 0x21, 0x41, 0x81, 0x01, 0x01, 0x01, + 0x01, 0x02, 0xFC, 0x00, 0x00, 0x00, + 0x3E, 0xFF, 0xF8, 0xF8, 0xFF, 0x3E, + 0x00, 0xE0, 0xF0, 0xF0, 0xF0, 0xE0, + 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x63, + 0x07, 0x7F, 0x7F, 0x07, 0x7F, 0x7F, + 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08, + 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08, + 0x63, 0x7F, 0x7F, 0x63, 0x7F, 0x3E, + 0x1F, 0x3F, 0x63, 0x63, 0x3F, 0x1F, + 0x73, 0x3B, 0x1F, 0x1F, 0x3B, 0x73, + 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x8F, 0x8C, 0x0C, 0x0C, 0x0F, 0x0C, + 0x8C, 0xAC, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0x83, 0x82, 0x82, 0x9E, 0x88, + 0x84, 0x82, 0x81, 0x80, 0x80, 0x80, + 0xFF, 0xEF, 0xD7, 0xE0, 0xF7, 0xF7, + 0xF7, 0xF7, 0xE0, 0xD7, 0xEF, 0xFF, + 0x00, 0x10, 0x28, 0x1F, 0x08, 0x08, + 0x08, 0x08, 0x1F, 0x28, 0x10, 0x00, + 0x00, 0x00, 0x00, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xDF, 0xEF, + 0xF7, 0xFB, 0xFD, 0xFE, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xFF, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x20, 0x10, + 0x08, 0x04, 0x02, 0x01, 0x00, 0x00, + 0x00, 0x00, 0xFF, 0x00, 0x00, 0x00, + 0x00, 0xFF, 0xFF, 0xFF, 0xFF, 0x00, + 0xFF, 0xFF, 0xBD, 0x81, 0x81, 0x00, + 0x63, 0x7F, 0x7F, 0x63, 0x7F, 0x3E, + 0x3E, 0x7F, 0x77, 0x77, 0x77, 0x77, + 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08, + 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08, + 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F, + 0x1C, 0x1C, 0x1C, 0x1C, 0x7F, 0x7F, + 0x03, 0x7F, 0x7F, 0x63, 0x7F, 0x1F, + 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xD9, 0x99, 0x9B, 0x9E, 0x9E, 0x9B, + 0x99, 0xD9, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0xFF, 0xFC, 0xFD, 0xFD, 0xE1, 0xF7, + 0xFB, 0xFD, 0xFE, 0xFF, 0xFF, 0xFF, + 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, 0xFF, + 0x7F, 0xBF, 0xDF, 0xE1, 0xFF, 0xFF, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0x40, 0x3C, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x3F, 0x7F, 0xFF, + 0xFF, 0x1F, 0xDF, 0xDF, 0xC3, 0xF7, + 0xEF, 0xDF, 0xBF, 0x7F, 0xFF, 0xFF, + 0xFF, 0x7F, 0x3F, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x3F, 0x40, 0x80, + 0x00, 0xE0, 0x20, 0x20, 0x3C, 0x08, + 0x10, 0x20, 0x40, 0x80, 0x00, 0x00, + 0x80, 0x40, 0x3F, 0x00, 0x00, 0x00, + 0x00, 0x7F, 0xE3, 0xE3, 0x7F, 0x00, + 0x00, 0x07, 0x0F, 0x0F, 0x0F, 0x07, + 0x1C, 0x3E, 0x77, 0x63, 0x63, 0x63, + 0x63, 0x73, 0x7B, 0x6F, 0x67, 0x63, + 0x08, 0x08, 0x7F, 0x3E, 0x1C, 0x08, + 0x08, 0x1C, 0x3E, 0x7F, 0x08, 0x08, + 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F, + 0x7F, 0x7F, 0x03, 0x03, 0x7F, 0x7F, + 0x3E, 0x7F, 0x63, 0x63, 0x63, 0x63, + 0x3C, 0x00, 0x00, 0x00, 0x00, 0x00, +}; diff --git a/keyboards/crkbd/keymaps/toinux/keycodes.h b/keyboards/crkbd/keymaps/toinux/keycodes.h new file mode 100644 index 0000000000..7d812f5c74 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/keycodes.h @@ -0,0 +1,49 @@ +/* Copyright 2022 toinux + * + * 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 . + */ + +#pragma once + +enum crkbd_layers { + _BASE, + _GAMING, + _GAMING2, + _ACCENTS, + _LOWER, + _RAISE, + _FUN, + _NAV, + _MOUSE, + _ADJUST +}; + +#define CTRLSC LCTL_T(KC_ESC) +#define QUORCTL RCTL_T(KC_QUOT) +#define MOSCLN LT(_MOUSE,KC_SCLN) +#define ACCENTS LT(_ACCENTS,KC_RALT) +#define FUN LT(_FUN,KC_SPC) +#define LOWER MO(_LOWER) +#define RAISE MO(_RAISE) +#define SPCNAV LT(_NAV,KC_SPC) +#define SFTENT MT(MOD_RSFT,KC_ENT) +#define TABLGUI LGUI_T(KC_TAB) +#define BASE DF(_BASE) +#define GAMING DF(_GAMING) +#define GAMING2 MO(_GAMING2) + +#define SC_F1 LSFT(LCTL(KC_F1)) +#define SC_F2 LSFT(LCTL(KC_F2)) +#define SC_F3 LSFT(LCTL(KC_F3)) +#define SC_F4 LSFT(LCTL(KC_F4)) diff --git a/keyboards/crkbd/keymaps/toinux/keymap.c b/keyboards/crkbd/keymaps/toinux/keymap.c new file mode 100644 index 0000000000..ae3de00b79 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/keymap.c @@ -0,0 +1,250 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> +Copyright 2022 @toinux + +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 . +*/ + +#include QMK_KEYBOARD_H +#include "users/toinux/keymap_qwerty_fr.h" +#include "keycodes.h" + +#ifdef OLED_ENABLE +#include "oled.h" +#endif + +// TEMPLATE +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | | | | | | | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | | | | | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | | | | | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// Base +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// |Tab/LGui| Q | W | E | R | T | | Y | U | I | O | P | Bksp | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | CtrlSc | A | S | D | F | G | | H | J | K | L | ;/Mous | '/Rctl | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | Shift | Z | X | C | V | B | | N | M | , | . | / | SftEnT | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | LALT | LOWER |Spc/FUN | | Spc/NAV| RAISE |ACCENTS | +// `--------------------------' `--------------------------' + [_BASE] = LAYOUT_split_3x6_3( + TABLGUI, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + CTRLSC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MOSCLN, QUORCTL, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFTENT, + KC_LALT, LOWER, FUN, SPCNAV, RAISE, ACCENTS + + ), + +// Gaming +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | Esc | Q | W | E | R | T | | Y | U | I | O | P | Bksp | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | Ctrl | A | S | D | F | G | | H | J | K | L | ;/Mous | ' | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | Shift | Z | X | C | V | B | | N | M | , | . | / | SftEnT | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | LALT |GAMING2 | Space | | Spc/NAV| RAISE |ACCENTS | +// `--------------------------' `--------------------------' + [_GAMING] = LAYOUT_split_3x6_3( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, MOSCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, SFTENT, + KC_LALT, GAMING2, KC_SPC, SPCNAV, RAISE, ACCENTS + + ), + +// Gaming 2 +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | Tab | 1 | 2 | 3 | 4 | 5 | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | Ctrl | 6 | 7 | 8 | 9 | 0 | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | LGui | Base | | Vol- | Vol+ | Mute | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_GAMING2] = LAYOUT_split_3x6_3( + KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_LCTL, KC_6, KC_7, KC_8, KC_9, KC_0, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_LGUI, BASE, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______, _______, _______ + + ), + +// Accents, see http://marin.jb.free.fr/qwerty-fr/ +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | | â | é | è | ê | € | | û | ù | î | ô | œ | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | à | æ | ë | | « | | » | ü | ï | ö | ° | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | à | | ç | | | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_ACCENTS] = LAYOUT_split_3x6_3( + _______, QF_ACIR, QF_EACU, QF_EGRV, QF_ECIR, QF_EURO, QF_UCIR, QF_UGRV, QF_ICIR, QF_OCIR, QF_OE, _______, + _______, QF_AGRV, QF_AE, QF_EDIA, _______, QF_LDAQ, QF_RDAQ, QF_UDIA, QF_IDIA, QF_ODIA, QF_DEG, _______, + _______, QF_AGRV, _______, QF_CCED, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______ + + ), + +// Lower +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | ~ | ! | @ | # | $ | % | | ^ | & | * | ( | ) | Del | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | SC_F1 | SC_F2 | SC_F3 | SC_F4 | | | | _ | + | { | } | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | Gaming | | Vol- | Vol+ | Mute | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_LOWER] = LAYOUT_split_3x6_3( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, + _______, SC_F1, SC_F2, SC_F3, SC_F4, XXXXXXX, XXXXXXX, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, GAMING, XXXXXXX, KC_VOLD, KC_VOLU, KC_MUTE, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______ + + ), + +// Raise +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | ` | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | Del | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | | | | | | | - | = | [ | ] | \ | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | | | | | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_RAISE] = LAYOUT_split_3x6_3( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______ + + ), + +// Functions and keypad +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | | F1 | F2 | F2 | F4 | | | | 7 | 8 | 9 | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | F5 | F6 | F7 | F8 | | | | 4 | 5 | 6 | - | / | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | F9 | F10 | F11 | F12 | | | | 1 | 2 | 3 | + | * | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | = | 0 | . | +// `--------------------------' `--------------------------' + [_FUN] = LAYOUT_split_3x6_3( + _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, XXXXXXX, _______, + _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PSLS, + _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, KC_P1, KC_P2, KC_P3, KC_PPLS, KC_PAST, + _______, _______, _______, KC_PENT, KC_P0, KC_PDOT + + ), + +// Navigation and function keys +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | | F1 | F2 | F2 | F4 | | | | Pg Up | Up | Pg Dn | Ins | Del | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | F5 | F6 | F7 | F8 | | | Home | Left | Down | Right | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | F9 | F10 | F11 | F12 | | | Space | End | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_NAV] = LAYOUT_split_3x6_3( + _______, KC_F1, KC_F2, KC_F3, KC_F4, XXXXXXX, XXXXXXX, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_DEL, + _______, KC_F5, KC_F6, KC_F7, KC_F8, XXXXXXX, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, + _______, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, KC_SPC, KC_END, XXXXXXX, XXXXXXX, XXXXXXX, _______, + _______, _______, _______, _______, _______, _______ + + ), + +// Mouse +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | | | Wh up | Ms up | Wh dn | | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | Ms lft | Ms dn | Ms rgt | | | | btn1 | btn3 | btn2 | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | | | Wh lft | | Wh rgt | | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_MOUSE] = LAYOUT_split_3x6_3( + _______, _______, KC_WH_U, KC_MS_U, KC_WH_D, _______, _______, _______, _______, _______, _______, _______, + _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, _______, _______, + _______, _______, KC_WH_L, _______, KC_WH_R, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______ + + ), + +// Adjust +// ,-----------------------------------------------------. ,-----------------------------------------------------. +// | Reset | | | | | Print | | Num | Caps | Scroll | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | On/Off | Hue ↑ | Sat ↑ | Brght ↑| | | | | | | | | | +// |--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| +// | Cycle | Hue ↓ | Sat ↓ | Brght ↓| | | | | | | | | | +// `--------+--------+--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------+--------+--------' +// | | | | | | | | +// `--------------------------' `--------------------------' + [_ADJUST] = LAYOUT_split_3x6_3( + RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_NLCK, KC_CAPS, KC_SCRL, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + _______, _______, _______, _______, _______, _______ + ) +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + return update_tri_layer_state(state, _LOWER, _RAISE, _ADJUST); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + +#ifdef OLED_ENABLE + if (record->event.pressed) { + set_keylog(keycode, record); + } +#endif // OLED_ENABLE + + switch (keycode) { + case FUN: + if (!host_keyboard_led_state().num_lock) { + tap_code(KC_NUMLOCK); + } + return true; + break; + } + return true; +} + +void keyboard_post_init_user(void) { +#if defined(RGBLIGHT_ENABLE) || defined(RGB_MATRIX_ENABLE) + rgb_matrix_mode_noeeprom(RGB_MATRIX_SOLID_COLOR); + rgb_matrix_sethsv_noeeprom(HSV_OFF); +#endif +} diff --git a/keyboards/crkbd/keymaps/toinux/oled.c b/keyboards/crkbd/keymaps/toinux/oled.c new file mode 100644 index 0000000000..df2a693d8d --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/oled.c @@ -0,0 +1,112 @@ +/* Copyright 2022 @toinux + * + * 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 . + */ + + +#include QMK_KEYBOARD_H +#include "keycodes.h" +#include "oled.h" + +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + if (!is_keyboard_master()) { + return OLED_ROTATION_180; // flips the display 180 degrees if offhand + } + return rotation; +} + + +void oled_render_mod_status(void) { + + const uint8_t modifiers = get_mods() | get_oneshot_mods(); + + for (uint8_t i = 0; i < 2; i++) { + oled_set_cursor(9,i); + oled_write_P(gui_icon[(modifiers & MOD_MASK_GUI) ? 1 : 0][i], false); + oled_write_P(ctrl_icon[(modifiers & MOD_MASK_CTRL) ? 1 : 0][i], false); + oled_set_cursor(9,i+2); + oled_write_P(alt_icon[(modifiers & MOD_MASK_ALT) ? 1 : 0][i], false); + oled_write_P(shift_icon[(modifiers & MOD_MASK_SHIFT) ? 1 : 0][i], false); + } + +} + +void oled_render_layer_state(void) { + + char c = 0x9F - get_highest_layer(layer_state|default_layer_state); + + oled_set_cursor(20,0); + oled_write_char(0X00, false); + + oled_set_cursor(20,1); + oled_write_char(c, false); + c += 32; + oled_set_cursor(20,2); + oled_write_char(c, false); + c += 32; + oled_set_cursor(20,3); + oled_write_char(c, false); + +} + +void oled_render_led_state(void) { + // oled_advance_page(false) instead of oled_write_ln_P to not break OLED_TIMEOUT + oled_write_P(PSTR("NUM"), host_keyboard_led_state().num_lock); + oled_advance_page(false); + oled_write_P(PSTR("CAP"), host_keyboard_led_state().caps_lock); + oled_advance_page(false); + oled_write_P(PSTR("SCL"), host_keyboard_led_state().scroll_lock); + oled_advance_page(false); +} + +uint8_t last_row = 0; +uint8_t last_col = 0; + +void set_keylog(uint16_t keycode, keyrecord_t *record) { + last_row = record->event.key.row; + last_col = record->event.key.col; +} + +void oled_render_keylog(void) { + oled_write_char(last_row + '0', false); + oled_write_char('x', false); + oled_write_char(last_col + '0', false); +} + +void oled_render_logo(void) { + static const char PROGMEM kpu_logo[][3] = { + {0x82, 0x83, 0}, + {0x80, 0x81, 0}, + {0xa0, 0xa1, 0}, + {0xc0, 0xc1, 0} + }; + for (uint8_t i = 0; i < 4; i++) { + oled_write_ln_P(kpu_logo[i], false); + } + +} + +bool oled_task_user(void) { + if (is_keyboard_master ()) { + oled_render_led_state(); + oled_render_keylog(); + oled_render_mod_status(); + oled_render_layer_state(); + } else { + oled_render_logo(); + oled_scroll_right(); + oled_scroll_set_speed(4); + } + return false; +} diff --git a/keyboards/crkbd/keymaps/toinux/oled.h b/keyboards/crkbd/keymaps/toinux/oled.h new file mode 100644 index 0000000000..30be16e602 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/oled.h @@ -0,0 +1,71 @@ +/* Copyright 2022 @toinux + * + * 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 . + */ + +#pragma once + +static const char PROGMEM ctrl_icon[2][2][4] = { + { + // off + {0x93, 0x94, 0x95, 0}, + {0xB3, 0xB4, 0xB5, 0}, + }, + { + // on + {0x8F ,0x90, 0x91, 0}, + {0xAF ,0xB0, 0xB1, 0}, + } +}; + +static const char PROGMEM shift_icon[2][2][4] = { + { + // off + {0xD3, 0xD4, 0xB5, 0}, + {0xA8, 0xA9, 0xD5, 0}, + }, + { + // on + {0xCF ,0xD0, 0xB1, 0}, + {0xC8 ,0xC9, 0xD1, 0}, + } +}; + +static const char PROGMEM gui_icon[2][2][4] = { + { + // off + {0x92, 0x8C, 0x8D, 0}, + {0xB2, 0xAC, 0xAD, 0}, + }, + { + // on + {0x8E ,0x8A, 0x8B, 0}, + {0xAE ,0xAA, 0xAB, 0}, + } +}; + +static const char PROGMEM alt_icon[2][2][4] = { + { + // off + {0xB2, 0xCC, 0xCD, 0}, + {0xD2, 0x88, 0x89, 0}, + }, + { + // on + {0xAE ,0xCA, 0xCB, 0}, + {0xCE ,0x86, 0x87, 0}, + } +}; + +void set_keylog(uint16_t keycode, keyrecord_t *record); diff --git a/keyboards/crkbd/keymaps/toinux/rgb.c b/keyboards/crkbd/keymaps/toinux/rgb.c new file mode 100644 index 0000000000..2c5de3b0a7 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/rgb.c @@ -0,0 +1,68 @@ +/* Copyright 2022 @toinux + * + * 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 . + */ + + +#include QMK_KEYBOARD_H +#include "keycodes.h" + +static const char gaming_leds[] = {18, 22, 19, 16}; +static const char gaming2_leds[] = {23, 18, 17, 10, 9, 22, 19, 16, 11, 8}; +static const char nav_leds[] = {38, 43, 44, 46}; +static const char fun_leds[] = {45, 44, 37, 46, 43, 38, 47, 42, 39, 40}; +static const char mouse_leds[] = {11, 16, 17, 19}; + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(26, RGB_RED); + } + switch(get_highest_layer(layer_state|default_layer_state)) { + case _GAMING: + if (is_keyboard_master()) { + for (uint8_t i = 0; i < 4; i++) { + rgb_matrix_set_color(gaming_leds[i], RGB_RED); + } + } + break; + case _GAMING2: + if (is_keyboard_master()) { + for (uint8_t i = 0; i < 10; i++) { + rgb_matrix_set_color(gaming2_leds[i], RGB_GREEN); + } + } + break; + case _NAV: + for (uint8_t i = 0; i < 4; i++) { + rgb_matrix_set_color(nav_leds[i], RGB_BLUE); + } + break; + case _FUN: + for (uint8_t i = 0; i < 10; i++) { + rgb_matrix_set_color(fun_leds[i], RGB_GREEN); + } + break; + case _ADJUST: + rgb_matrix_set_color(6, RGB_RED); + break; + case _MOUSE: + if (is_keyboard_master()) { + for (uint8_t i = 0; i < 4; i++) { + rgb_matrix_set_color(mouse_leds[i], RGB_PURPLE); + } + } + break; + + } +} diff --git a/keyboards/crkbd/keymaps/toinux/rules.mk b/keyboards/crkbd/keymaps/toinux/rules.mk new file mode 100644 index 0000000000..07c98a08f8 --- /dev/null +++ b/keyboards/crkbd/keymaps/toinux/rules.mk @@ -0,0 +1,9 @@ +MOUSEKEY_ENABLE = yes # Mouse keys +RGBLIGHT_ENABLE = no +RGB_MATRIX_ENABLE = yes +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +LTO_ENABLE = yes +BOOTLOADER = atmel-dfu + +SRC += ./oled.c ./rgb.c diff --git a/users/toinux/keymap_qwerty_fr.h b/users/toinux/keymap_qwerty_fr.h new file mode 100644 index 0000000000..3110ee984f --- /dev/null +++ b/users/toinux/keymap_qwerty_fr.h @@ -0,0 +1,158 @@ +/* Copyright 2022 + * + * 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 . + */ + +#pragma once + +#include "keymap.h" + +// clang-format off + +// keymap adapted for http://marin.jb.free.fr/qwerty-fr/ + +/* AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ` │ ¹ │ ² │ ³ │ ê │ € │ ^ │ ŷ │ û │ î │ ô │ – │ ≠ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ â │ é │ è │ ® │ π │ ¥ │ ù │ î │ ò │ œ │ « │ » │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ à │ æ │ ë │ ε │ α │ ÿ │ ü │ ï │ ö │ ¶ │ ´ │ ¦ │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ ≤ │ ä │ × │ ç │ ω │ ß │ ñ │ µ │ ¸ │ ° │ ʕ │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │   │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define QF_DGRV RALT(KC_GRV) // ` (dead) +#define QF_SUP1 RALT(KC_1) // ¹ +#define QF_SUP2 RALT(KC_2) // ² +#define QF_SUP3 RALT(KC_3) // ³ +#define QF_ECIR RALT(KC_4) // ê +#define QF_EURO RALT(KC_5) // € +#define QF_DCIR RALT(KC_6) // ^ (dead) +#define QF_YCIR RALT(KC_7) // ŷ +#define QF_UCIR RALT(KC_8) // û +#define QF_ICIR RALT(KC_9) // î +#define QF_OCIR RALT(KC_0) // ô +#define QF_DASH RALT(KC_MINUS) // – +#define QF_NEQL RALT(KC_EQUAL) // ≠ +// Row 2 +#define QF_ACIR RALT(KC_Q) // â +#define QF_EACU RALT(KC_W) // é +#define QF_EGRV RALT(KC_E) // è +#define QF_REGD RALT(KC_R) // ® +#define QF_PI RALT(KC_T) // π +#define QF_YEN RALT(KC_Y) // ¥ +#define QF_UGRV RALT(KC_U) // ù +#define QF_IGRV RALT(KC_I) // ì +#define QF_OGRV RALT(KC_O) // ò +#define QF_OE RALT(KC_P) // œ +#define QF_LDAQ RALT(KC_LBRC) // « +#define QF_RDAQ RALT(KC_RBRC) // » +// Row 3 +#define QF_AGRV RALT(KC_A) // à +#define QF_AE RALT(KC_S) // æ +#define QF_EDIA RALT(KC_D) // ë +#define QF_EPSL RALT(KC_F) // ε +#define QF_ALPH RALT(KC_G) // α +#define QF_YDIA RALT(KC_H) // ÿ +#define QF_UDIA RALT(KC_J) // ü +#define QF_IDIA RALT(KC_K) // ï +#define QF_ODIA RALT(KC_L) // ö +#define QF_PILC RALT(KC_SCLN) // ¶ +#define QF_ACUT RALT(KC_QUOT) // ´ (dead) +#define QF_BRKP RALT(KC_BSLS) // ¦ +// Row 4 +#define QF_LTEQ RALT(KC_NUBS) // ≤ +#define QF_ADIA RALT(KC_Z) // ä +#define QF_MUL RALT(KC_X) // × +#define QF_CCED RALT(KC_C) // ç +#define QF_OMEG RALT(KC_V) // ω +#define QF_SS RALT(KC_B) // ß +#define QF_NTIL RALT(KC_N) // ñ +#define QF_MICR RALT(KC_M) // µ +#define QF_CEDL RALT(KC_COMM) // ¸ (dead) +#define QF_DEG RALT(KC_DOT) // ° +#define QF_VOPH RALT(KC_SLSH) // ʕ +// Row 5 +#define QF_NBSP RALT(KC_SPC) //   (non-breaking space) + + +/* Shift+AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ~ │ ¡ │ ˝ │ ¯ │ Ê │ £ │ ˇ │ Ŷ │ Û │ Î │ Ô │ — │ ± │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │  │ É │ È │ © │ Π │ ¤ │ Ù │ Ì │ Ò │ Œ │ “ │ ” │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │ + * │ │ À │ Æ │ Ë │ Δ │ β │ Ÿ │ Ü │ Ï │ ö │ § │ ¨ │ ø │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ + * │ │ ≥ │ Ä │ ÷ │ Ç │ Ω │ þ │ Ñ │ Σ │ ˛ │ ˚ │ ¿ │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │   │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define QF_DTIL S(RALT(KC_GRV)) // ~ (dead) +#define QF_IEXL S(RALT(KC_1)) // ¡ +#define QF_DACU S(RALT(KC_2)) // ˝ (dead) +#define QF_MACR S(RALT(KC_3)) // ¯ (dead) +#define QF_ECIU S(RALT(KC_4)) // Ê +#define QF_PND S(RALT(KC_5)) // £ +#define QF_CARN S(RALT(KC_6)) // ˇ (dead) +#define QF_YCIU S(RALT(KC_7)) // Ŷ +#define QF_UCIU S(RALT(KC_8)) // Û +#define QF_ICIU S(RALT(KC_9)) // Î +#define QF_OCIO S(RALT(KC_0)) // Ô +#define QF_NDSH S(RALT(KC_MINUS)) // — +#define QF_PLMN S(RALT(KC_EQUAL)) // ± +// Row 2 +#define QF_ACIU S(RALT(KC_Q)) //  +#define QF_ECUU S(RALT(KC_W)) // É +#define QF_EGRU S(RALT(KC_E)) // È +#define QF_COPY S(RALT(KC_R)) // © +#define QF_PIU S(RALT(KC_T)) // Π +#define QF_CURR S(RALT(KC_Y)) // ¤ +#define QF_UGRU S(RALT(KC_U)) // Ù +#define QF_IGRU S(RALT(KC_I)) // Ì +#define QF_OGRU S(RALT(KC_O)) // Ò +#define QF_OEU S(RALT(KC_P)) // Œ +#define QF_LDQU S(RALT(KC_LBRC)) // “ +#define QF_RDQU S(RALT(KC_RBRC)) // ” +// Row 3 +#define QF_AGRU S(RALT(KC_A)) // À +#define QF_AEU S(RALT(KC_S)) // Æ +#define QF_EDIU S(RALT(KC_D)) // Ë +#define QF_DELT S(RALT(KC_F)) // Δ +#define QF_BETA S(RALT(KC_G)) // β +#define QF_YDIU S(RALT(KC_H)) // Ÿ +#define QF_UDIU S(RALT(KC_J)) // Ü +#define QF_IDIU S(RALT(KC_K)) // Ï +#define QF_ODIU S(RALT(KC_L)) // Ö +#define QF_SECT S(RALT(KC_SCLN)) // § +#define QF_DIAE S(RALT(KC_QUOT)) // ¨ (dead) +#define QF_OSTR S(RALT(KC_BSLS)) // ø +// Row 4 +#define QF_GTEQ S(RALT(KC_NUBS)) // ≥ +#define QF_ADIU S(RALT(KC_Z)) // Ä +#define QF_DIV S(RALT(KC_X)) // ÷ +#define QF_CCDU S(RALT(KC_C)) // Ç +#define QF_OMEU S(RALT(KC_V)) // Ω +#define QF_THRN S(RALT(KC_B)) // þ +#define QF_NTIU S(RALT(KC_N)) // Ñ +#define QF_SIGM S(RALT(KC_M)) // Σ +#define QF_OGON S(RALT(KC_COMM)) // ˛ (dead) +#define QF_RNGA S(RALT(KC_DOT)) // ˚ (dead) +#define QF_IQUE S(RALT(KC_SLSH)) // ¿ From 97f4a75fd7bbdb5f4c170cd9dd4495ba7d64a548 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Fri, 22 Apr 2022 00:48:06 -0700 Subject: [PATCH 326/699] [CI] Format code according to conventions (#16914) --- tmk_core/protocol/chibios/usb_main.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tmk_core/protocol/chibios/usb_main.c b/tmk_core/protocol/chibios/usb_main.c index c59569a85a..19e2e858fc 100644 --- a/tmk_core/protocol/chibios/usb_main.c +++ b/tmk_core/protocol/chibios/usb_main.c @@ -340,10 +340,10 @@ static usb_driver_configs_t drivers = { #endif #ifdef RAW_ENABLE # ifndef RAW_IN_CAPACITY -# define RAW_IN_CAPACITY 4 +# define RAW_IN_CAPACITY 4 # endif # ifndef RAW_OUT_CAPACITY -# define RAW_OUT_CAPACITY 4 +# define RAW_OUT_CAPACITY 4 # endif # define RAW_IN_MODE USB_EP_MODE_TYPE_INTR # define RAW_OUT_MODE USB_EP_MODE_TYPE_INTR From d64ec7cb19708082b168b3cd7f7f6016c650accf Mon Sep 17 00:00:00 2001 From: "E.Iosifidis" Date: Fri, 22 Apr 2022 10:55:25 +0300 Subject: [PATCH 327/699] [Keymap] Addition of new keymap for the anavi macropad8 keyboard (#16910) * Creation of Visual Studio Code keymap * Add files via upload --- .../anavi/macropad8/keymaps/vscode/config.h | 19 ++++ .../anavi/macropad8/keymaps/vscode/keymap.c | 103 ++++++++++++++++++ 2 files changed, 122 insertions(+) create mode 100644 keyboards/anavi/macropad8/keymaps/vscode/config.h create mode 100644 keyboards/anavi/macropad8/keymaps/vscode/keymap.c diff --git a/keyboards/anavi/macropad8/keymaps/vscode/config.h b/keyboards/anavi/macropad8/keymaps/vscode/config.h new file mode 100644 index 0000000000..dd687cad58 --- /dev/null +++ b/keyboards/anavi/macropad8/keymaps/vscode/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 QMK + * + * 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 . + */ + +#pragma once + +#define LAYER_STATE_8BIT diff --git a/keyboards/anavi/macropad8/keymaps/vscode/keymap.c b/keyboards/anavi/macropad8/keymaps/vscode/keymap.c new file mode 100644 index 0000000000..be6ac07f58 --- /dev/null +++ b/keyboards/anavi/macropad8/keymaps/vscode/keymap.c @@ -0,0 +1,103 @@ + /* Copyright 2022 Efthimis Iosifidis + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layers { + _BASIC, + _FN, +}; + + +#define KC_X0 LT(_FN, KC_ESC) + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +/* _BASIC Layer + * ,-------------------------------------. + * | Toggle | Toggle | | | + * | Block | Line | Undo | Redo | + * | Comment | Comment | | | + * |---------+---------+--------+---------+ + * | | | | TO | + * | Cut | Copy | Paste | _FN | + * | | | | | + * `-------------------------------------' + */ + [_BASIC] = LAYOUT_ortho_2x4( + RCS(KC_A), C(KC_SLASH), C(KC_Z), C(KC_Y), + C(KC_X), C(KC_C), C(KC_V), TO(_FN) + ), +/* _FN Layer + * ,--------------------------------------------. + * | RGB | RGB | RGB | RGB | + * | Toggle | Mode | Mode | Snake | + * | | Forward | Reverse | Mode | + * |-----------+-----------+-----------+---------+ + * | | Cycle | Toggle | TO | + * | BackLight | BackLight | BackLight | _BASIC | + * | Toggle | Levels | | | + * `--------------------------------------------' + */ + [_FN] = LAYOUT_ortho_2x4( + RGB_TOG, RGB_MOD, RGB_M_R, RGB_M_SN, + BL_TOGG, BL_STEP, BL_BRTG, TO(_BASIC) + ) +}; + +#ifdef OLED_ENABLE +oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_180; // flips the display 180 degrees if offhand +} + + +bool oled_task_user(void) { + // Host Keyboard Layer Status + oled_write_ln_P(PSTR("ANAVI Macro Pad 8"), false); + oled_write_P(PSTR("Active layer: "), false); + + switch (get_highest_layer(layer_state)) { + case _BASIC: + oled_write_ln_P(PSTR("Basic"), false); + break; + case _FN: + oled_write_ln_P(PSTR("FN"), false); + break; + default: + // Or use the write_ln shortcut over adding '\n' to the end of your string + oled_write_ln_P(PSTR("N/A"), false); + } + + + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_P(PSTR("Num Lock: "), false); + oled_write_ln_P(led_state.num_lock ? PSTR("On") : PSTR("Off"), false); + oled_write_P(PSTR("Caps Lock: "), false); + oled_write_ln_P(led_state.caps_lock ? PSTR("On") : PSTR("Off"), false); + oled_write_P(PSTR("Backlit: "), false); + oled_write_ln_P(is_backlight_enabled() ? PSTR("On") : PSTR("Off"), false); +#ifdef RGBLIGHT_ENABLE + static char rgbStatusLine1[26] = {0}; + snprintf(rgbStatusLine1, sizeof(rgbStatusLine1), "RGB Mode: %d", rgblight_get_mode()); + oled_write_ln(rgbStatusLine1, false); + static char rgbStatusLine2[26] = {0}; + snprintf(rgbStatusLine2, sizeof(rgbStatusLine2), "h:%d s:%d v:%d", rgblight_get_hue(), rgblight_get_sat(), rgblight_get_val()); + oled_write_ln(rgbStatusLine2, false); +#endif + return false; +} +#endif From b1681fb6a11e6eb286bc93af3bcc59422e054eb8 Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Fri, 22 Apr 2022 10:13:31 +0200 Subject: [PATCH 328/699] [Core] Allow usage of AVRs minimal printf library (#16266) Co-authored-by: Sergey Vlasov --- docs/squeezing_avr.md | 13 +++++++++++++ platforms/avr/platform.mk | 9 +++++++++ 2 files changed, 22 insertions(+) diff --git a/docs/squeezing_avr.md b/docs/squeezing_avr.md index 62f0a5d290..f7e21d932b 100644 --- a/docs/squeezing_avr.md +++ b/docs/squeezing_avr.md @@ -30,6 +30,19 @@ MAGIC_ENABLE = no These features are enabled by default, but may not be needed. Double check to make sure, though. Largest in size is "magic" -- the QMK magic keycodes -- which control things like NKRO toggling, GUI and ALT/CTRL swapping, etc. Disabling it will disable those functions. +If you use `sprintf` or `snprintf` functions you can save around ~400 Bytes by enabling this option. +```make +AVR_USE_MINIMAL_PRINTF = yes +``` + +This will include smaller implementations from AVRs libc into your Firmware. They are [not fully featured](https://www.nongnu.org/avr-libc/user-manual/group__avr__stdio.html#gaa3b98c0d17b35642c0f3e4649092b9f1), for instance zero padding and field width specifiers are not supported. So if you use `sprintf` or `snprintf` like this: +```c +sprintf(wpm_str, "%03d", get_current_wpm()); +snprintf(keylog_str, sizeof(keylog_str), "%dx%d, k%2d : %c"); +``` + +you will still need the standard implementation. + ## `config.h` Settings If you've done all of that, and you don't want to disable features like RGB, Audio, OLEDs, etc, there are some additional options that you can add to your config.h that can help. diff --git a/platforms/avr/platform.mk b/platforms/avr/platform.mk index 9f304d2e20..0374e2e058 100644 --- a/platforms/avr/platform.mk +++ b/platforms/avr/platform.mk @@ -37,6 +37,15 @@ CXXFLAGS += -fno-exceptions -std=c++11 LDFLAGS += -Wl,--gc-sections +# Use AVR's libc minimal printf implementation which has less features +# and thus can shave ~400 bytes. Usually we use the xprintf +# implementation but keyboards that use s(n)printf automatically +# pull in the AVR libc implementation, which is ~900 bytes heavy. +AVR_USE_MINIMAL_PRINTF ?= no +ifeq ($(strip $(AVR_USE_MINIMAL_PRINTF)), yes) + LDFLAGS += -Wl,--whole-archive -lprintf_min -Wl,--no-whole-archive +endif + OPT_DEFS += -DF_CPU=$(F_CPU)UL MCUFLAGS = -mmcu=$(MCU) From a727bd646336062c6167a8656ebdcc3f979f9058 Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Fri, 22 Apr 2022 18:14:00 +1000 Subject: [PATCH 329/699] Update ChibiOS-Contrib (#16915) --- lib/chibios-contrib | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/chibios-contrib b/lib/chibios-contrib index ff1c6ec90c..2a6b73ff51 160000 --- a/lib/chibios-contrib +++ b/lib/chibios-contrib @@ -1 +1 @@ -Subproject commit ff1c6ec90cfc250d81e6f29a0d60a4faf2afb46d +Subproject commit 2a6b73ff51baf89083a220b6692a04ca2cae8750 From 56b125ad77d3a06ad3f04e12113adbe7a969c54c Mon Sep 17 00:00:00 2001 From: DL Ford Date: Fri, 22 Apr 2022 01:16:33 -0700 Subject: [PATCH 330/699] Add Dactyl_Manuform/3x5_3 (#16238) --- .../handwired/dactyl_manuform/3x5_3/3x5_3.c | 66 +++ .../handwired/dactyl_manuform/3x5_3/3x5_3.h | 37 ++ .../handwired/dactyl_manuform/3x5_3/config.h | 56 +++ .../handwired/dactyl_manuform/3x5_3/info.json | 48 +++ .../3x5_3/keymaps/dlford/config.h | 106 +++++ .../3x5_3/keymaps/dlford/features/caps_word.c | 76 ++++ .../3x5_3/keymaps/dlford/features/caps_word.h | 36 ++ .../3x5_3/keymaps/dlford/keymap.c | 385 ++++++++++++++++++ .../3x5_3/keymaps/dlford/rules.mk | 17 + .../handwired/dactyl_manuform/3x5_3/rules.mk | 25 ++ .../dactyl_manuform/dactyl_manuform.h | 2 + keyboards/handwired/dactyl_manuform/readme.md | 33 +- 12 files changed, 877 insertions(+), 10 deletions(-) create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.c create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/config.h create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/info.json create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.c create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.h create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/rules.mk create mode 100644 keyboards/handwired/dactyl_manuform/3x5_3/rules.mk diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.c b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.c new file mode 100644 index 0000000000..2bd1aefadb --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.c @@ -0,0 +1,66 @@ +/* +Copyright 2021 @dlford + +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 . +*/ +#include "3x5_3.h" + +#ifdef RGB_MATRIX_ENABLE + +// LED Layout +// Columns +// 0 1 2 3 4 5 6 7 8 9 10 11 +// Physical (Center: 133) +// 20 41 61 81 102 122 143 163 183 204 224 244 +// Rows Physical (Center: 54) +// 17 12 11 06 05 23 24 29 30 35 0 21 +// 16 13 10 07 04 22 25 28 31 34 1 43 +// 15 14 09 08 03 21 26 27 32 33 2 64 +// 02 01 00 18 19 20 3 85 + +led_config_t g_led_config = { { + // Key matrix to LED index + // Left 1-18 + {17, 12, 11, 6, 5}, + {16, 13, 10, 7, 4}, + {15, 14, 9, 8, 3}, + {NO_LED, NO_LED, 2, 1, 0}, + // Right 1-18 + {23, 24, 29, 30, 35}, + {22, 25, 28, 31, 34}, + {21, 26, 27, 32, 33}, + {18, 19, 20, NO_LED, NO_LED}, +}, { + // LED index to physical position + // Left 1-18 + {122,85},{102,85},{81,85},{102,64},{102,43},{102,21}, + {81,21},{81,43},{81,64},{61,64},{61,43},{61,21}, + {41,21},{41,43},{41,64},{20,64},{20,43},{20,21}, + // Right 1-18 + {143,85},{163,85},{183,85},{163,64},{163,43},{163,21}, + {183,21},{183,43},{183,64},{204,64},{204,43},{204,21}, + {224,21},{224,43},{224,64},{244,64},{244,43},{244,21} +}, { + // LED index to flag + // Left 1-18 + 4,4,4,4,4,4, + 4,4,4,4,4,4, + 4,4,4,4,4,4, + // Right 1-18 + 4,4,4,4,4,4, + 4,4,4,4,4,4, + 4,4,4,4,4,4 +} }; + +#endif diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h new file mode 100644 index 0000000000..f9a843d7d6 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h @@ -0,0 +1,37 @@ +/* +Copyright 2021 @dlford + +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 . +*/ +#pragma once + +#include "dactyl_manuform.h" + +#define LAYOUT_split_3x5_3(\ + L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ + L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ + L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ + L32, L33, L34, R30, R31, R32 \ + ) \ + { \ + { L00, L01, L02, L03, L04 }, \ + { L10, L11, L12, L13, L14 }, \ + { L20, L21, L22, L23, L24 }, \ + { KC_NO, KC_NO, L32, L33, L34 }, \ + \ + { R00, R01, R02, R03, R04 }, \ + { R10, R11, R12, R13, R14 }, \ + { R20, R21, R22, R23, R24 }, \ + { R30, R31, R32, KC_NO, KC_NO }, \ +} diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/config.h b/keyboards/handwired/dactyl_manuform/3x5_3/config.h new file mode 100644 index 0000000000..e417599a40 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/config.h @@ -0,0 +1,56 @@ +/* +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2021 @dlford +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 . +*/ + +#pragma once + +#include "config_common.h" + +#define PRODUCT_ID 0x3536 +#define DEVICE_VER 0x0003 +#ifdef MANUFACTURER + #undef MANUFACTURER +#endif +#define MANUFACTURER DLFord +#define PRODUCT Dactyl Minidox (3x5+3) + +// Communication +// #define USE_I2C +#define USE_SERIAL + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 8 +#define MATRIX_COLS 5 + +// wiring of each half +#define MATRIX_COL_PINS { C6, D7, E6, B4, B5 } +#define MATRIX_ROW_PINS { B1, B3, B2, B6 } + +#define DIODE_DIRECTION ROW2COL + +// WS2812 RGB LED strip input and number of LEDs +#define RGB_DI_PIN D3 +#define DRIVER_LED_TOTAL 36 +#define RGB_MATRIX_SPLIT { 18, 18 } +#define RGB_MATRIX_CENTER { 133, 54 } + +/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ +#undef LOCKING_SUPPORT_ENABLE +/* Locking resynchronize hack */ +#undef LOCKING_RESYNC_ENABLE + +/* Enables This makes it easier for fast typists to use dual-function keys */ +#undef PERMISSIVE_HOLD diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/info.json b/keyboards/handwired/dactyl_manuform/3x5_3/info.json new file mode 100644 index 0000000000..4764226221 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/info.json @@ -0,0 +1,48 @@ +{ + "keyboard_name": "Dactyl Manuform 3x5_3", + "url": "https://www.dlford.io/keyboard-build-guide-per-key-rgb-leds/", + "maintainer": "dlford", + "layouts": { + "LAYOUT": { + "layout": [ + { "x": 0, "y": 0 }, + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 0, "y": 1 }, + { "x": 1, "y": 1 }, + { "x": 2, "y": 1 }, + { "x": 3, "y": 1 }, + { "x": 4, "y": 1 }, + { "x": 0, "y": 2 }, + { "x": 1, "y": 2 }, + { "x": 2, "y": 2 }, + { "x": 3, "y": 2 }, + { "x": 4, "y": 2 }, + { "x": 2, "y": 3 }, + { "x": 3, "y": 3 }, + { "x": 4, "y": 3 }, + + { "x": 10, "y": 0 }, + { "x": 11, "y": 0 }, + { "x": 12, "y": 0 }, + { "x": 13, "y": 0 }, + { "x": 14, "y": 0 }, + { "x": 10, "y": 1 }, + { "x": 11, "y": 1 }, + { "x": 12, "y": 1 }, + { "x": 13, "y": 1 }, + { "x": 14, "y": 1 }, + { "x": 10, "y": 2 }, + { "x": 11, "y": 2 }, + { "x": 12, "y": 2 }, + { "x": 13, "y": 2 }, + { "x": 14, "y": 2 }, + { "x": 10, "y": 3 }, + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 } + ] + } + } +} diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h new file mode 100644 index 0000000000..fac9353959 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/config.h @@ -0,0 +1,106 @@ +/* +Copyright 2012 Jun Wako +Copyright 2021 @dlford +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 . +*/ + +#pragma once + +//#define USE_MATRIX_I2C + +/* Select hand configuration */ + +// #define MASTER_LEFT +// #define MASTER_RIGHT +#define EE_HANDS // ./util/docker_build.sh crkbd:dlford:dfu-split-[left|right] (or avrdude-split[left|right]) + +#define TAPPING_TOGGLE 2 // number of taps to toggle TT +#define TAPPING_TERM_PER_KEY // milliseconds from tap to hold for mod tap per key +#define IGNORE_MOD_TAP_INTERRUPT // ignore hold mod if another tap occurs within tapping term +#define PERMISSIVE_HOLD_PER_KEY // activate mod top hold earlier if another key is pressed AND released per key +#define TAPPING_FORCE_HOLD_PER_KEY // disable double tap hold key repeat per key +#undef MOUSEKEY_INTERVAL +#undef MOUSEKEY_DELAY +#undef MOUSEKEY_TIME_TO_MAX +#undef MOUSEKEY_MAX_SPEED +#undef MOUSEKEY_WHEEL_DELAY +#define MK_KINETIC_SPEED +#define MOUSEKEY_DELAY 100 +#define MOUSEKEY_INTERVAL 35 +#define MOUSEKEY_MOVE_DELTA 5 +#define MOUSEKEY_INITIAL_SPEED 1 +#define MOUSEKEY_DECELERATED_SPEED 10 +#define MOUSEKEY_BASE_SPEED 1200 +#define MOUSEKEY_ACCELERATED_SPEED 4800 + +#ifdef RGB_MATRIX_ENABLE +// # define RGB_DISABLE_TIMEOUT 300000 // number of milliseconds to wait until disabling effects +// # define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +# define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) +# define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 150 out of 255. Higher may cause the controller to crash. +# define RGB_MATRIX_HUE_STEP 8 +# define RGB_MATRIX_SAT_STEP 8 +# define RGB_MATRIX_VAL_STEP 8 +# define RGB_MATRIX_SPD_STEP 10 + +// Enable animations +// # define ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue speed is hue for secondary hue +// # define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static gradient top to bottom speed controls how much gradient changes +// # define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Static gradient left to right speed controls how much gradient changes +// # define ENABLE_RGB_MATRIX_BREATHING // Single hue brightness cycling animation +// # define ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right +// # define ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right +// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades saturation +// # define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness +// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Single hue spinning spiral fades saturation +// # define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness +// # define ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard solid hue cycling through full gradient +// # define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Full gradient scrolling left to right +// # define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Full gradient scrolling out to in +// # define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in +// # define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right +// # define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard +// # define ENABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard +// # define ENABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard +// # define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard +// # define ENABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue +// # define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation +// # define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time then shifts back +// # define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right then back to the left +# define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right +// # define RGB_MATRIX_FRAMEBUFFER_EFFECTS // Required for the following two effects +// # define ENABLE_RGB_MATRIX_TYPING_HEATMAP // How hot is your WPM! +// # define ENABLE_RGB_MATRIX_DIGITAL_RAIN // That famous computer simulation +// # define RGB_MATRIX_KEYPRESSES // reacts to keypresses, required for the remaining effects +// # define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Pulses keys hit to hue & value then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue pulses keys hit to shifted hue then fades to current hue +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out +// # define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out +// # define ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out +// # define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out +#endif + +// Features I don't want, remove to save space +// #define NO_ACTION_ONESHOT // Used by caps word +#define NO_ACTION_FUNCTION +#define NO_ACTION_MACRO +#define NO_USB_STARTUP_CHECK diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.c b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.c new file mode 100644 index 0000000000..ee295c7305 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.c @@ -0,0 +1,76 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// For full documentation, see +// https://getreuer.info/posts/keyboards/caps-word + +#include "caps_word.h" +bool caps_word_enabled = false; + +bool process_caps_word(uint16_t keycode, keyrecord_t* record) { + static bool shifted = false; + + if (!caps_word_enabled) { + // Pressing both shift keys at the same time enables caps word. + if (((get_mods() | get_oneshot_mods()) & MOD_MASK_SHIFT) + == MOD_MASK_SHIFT) { + clear_mods(); + clear_oneshot_mods(); + shifted = false; + caps_word_enabled = true; + return false; + } + return true; + } + + if (!record->event.pressed) { return true; } + + if (!((get_mods() | get_oneshot_mods()) & ~MOD_MASK_SHIFT)) { + switch (keycode) { + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: + // Earlier return if this has not been considered tapped yet. + if (record->tap.count == 0) { return true; } + // Get the base tapping keycode of a mod- or layer-tap key. + keycode &= 0xff; + } + + switch (keycode) { + // Letter keys should be shifted. + case KC_A ... KC_Z: + if (!shifted) { register_code(KC_LSFT); } + shifted = true; + return true; + + // Keycodes that continue caps word but shouldn't get shifted. + case KC_1 ... KC_0: + case KC_BSPC: + case KC_MINS: + case KC_UNDS: + if (shifted) { unregister_code(KC_LSFT); } + shifted = false; + return true; + + // Any other keycode disables caps word. + } + } + + // Disable caps word. + caps_word_enabled = false; + if (shifted) { unregister_code(KC_LSFT); } + shifted = false; + return true; +} + diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.h b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.h new file mode 100644 index 0000000000..a609a32544 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/features/caps_word.h @@ -0,0 +1,36 @@ +// Copyright 2021 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. +// +// +// Caps Word, activated by pressing both shift keys at the same time. +// +// This library implements "Caps Word", which is like conventional Caps Lock, +// but automatically disables itself at the end of the word. This is useful for +// typing all-caps identifiers like `MOD_MASK_ALT`. +// +// Caps Word is activated by pressing the left and right shift keys at the same +// time. This way you don't need a dedicated key for using Caps Word. I've +// tested that this works as expected with one-shot mods and Space Cadet Shift. +// If your shift keys are mod-taps, activate Caps Word by holding both shift +// mod-tap keys until the tapping term, release them, then begin typing. +// +// For full documentation, see +// https://getreuer.info/posts/keyboards/caps-word + +#pragma once + +#include QMK_KEYBOARD_H + +bool process_caps_word(uint16_t keycode, keyrecord_t* record); +extern bool caps_word_enabled; diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c new file mode 100644 index 0000000000..b403c2ce3b --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/keymap.c @@ -0,0 +1,385 @@ +/* +Copyright 2019 @foostan +Copyright 2020 Drashna Jaelre <@drashna> +Copyright 2021 @dlford + +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 . +*/ + +#include QMK_KEYBOARD_H +#include "features/caps_word.h" + +// Layers +enum layers { + _QWERTY = 0, + _COLEMAK, + _NAVIGATION, + _SPECIAL, + _MOUSE, +}; + +static uint16_t default_animation = RGB_MATRIX_CYCLE_SPIRAL; +static int default_speed = 50; +static uint16_t secondary_animation = RGB_MATRIX_HUE_WAVE; +static int secondary_speed = 150; +static bool is_macro_recording = false; + +// Init +void keyboard_post_init_user(void) { + rgb_matrix_sethsv_noeeprom(HSV_PURPLE); + rgb_matrix_mode_noeeprom(default_animation); + rgb_matrix_set_speed_noeeprom(default_speed); +} + +// Permissive hold per key +bool get_permissive_hold(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LT(3, KC_SPC): + return true; // Enable permissive hold + case LT(2, KC_TAB): + return true; + default: + return false; // Disable permissive hold + } +} + +// Tapping force hold per key +bool get_tapping_force_hold(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case LT(3, KC_SPC): + return true; // Enable force hold + case LT(2, KC_TAB): + return true; + default: + return false; // Disable force hold + } +} + +// Tapping term per key +uint16_t get_tapping_term(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case C_S_T(KC_E): + case C_S_T(KC_I): + return 215; + default: + return 190; + } +} + +// RGB timeout +#define RGB_CUSTOM_TIMEOUT 5 // in minutes +static uint16_t idle_timer = 0; +static uint8_t halfmin_counter = 0; +static bool led_on = true; +void matrix_scan_user(void) { + if (is_keyboard_master()) { + // idle_timer needs to be set one time + if (idle_timer == 0) idle_timer = timer_read(); + + if (led_on && timer_elapsed(idle_timer) > 30000) { + halfmin_counter++; + idle_timer = timer_read(); + } + + if (led_on && halfmin_counter >= RGB_CUSTOM_TIMEOUT * 2) { + rgb_matrix_disable_noeeprom(); + led_on = false; + halfmin_counter = 0; + } + } +} + +// Macros +enum macro_events { + M_KEYMAP = SAFE_RANGE, + M_COMM, + M_DOT, +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + // RGB resume + if (is_keyboard_master()) { + if (record->event.pressed) { + if (led_on == false) { + rgb_matrix_enable_noeeprom(); + led_on = true; + } + idle_timer = timer_read(); + halfmin_counter = 0; + } + } + + // Caps word + if (!process_caps_word(keycode, record)) { return false; } + + // Macros + const uint8_t mods = get_mods(); + static uint8_t backstepCounter = 0; + static bool keyDown = false; + switch (keycode) { + case M_KEYMAP: + if (record->event.pressed) { + SEND_STRING("https://raw.githubusercontent.com/dlford/qmk_firmware/master/keyboards/crkbd/keymaps/dlford/legends.svg"); + } + return false; + case M_COMM: + if (record->event.pressed) { + if ((mods & MOD_BIT(KC_LCTL)) && (mods & MOD_BIT(KC_LSFT) && (mods & MOD_BIT(KC_LALT)))) { + backstepCounter = 1; + clear_mods(); + SEND_STRING("<>"); + } else if ((mods & MOD_BIT(KC_LCTL)) && (mods & MOD_BIT(KC_LALT))) { + backstepCounter = 1; + clear_mods(); + SEND_STRING("()"); + } else if ((mods & MOD_BIT(KC_LCTL)) && (mods & MOD_BIT(KC_LSFT))) { + backstepCounter = 2; + clear_mods(); + SEND_STRING("{};"); + } else if (mods & MOD_BIT(KC_LCTL)) { + backstepCounter = 1; + clear_mods(); + SEND_STRING("{}"); + } else if ((mods & MOD_BIT(KC_LALT)) && (mods & MOD_BIT(KC_LSFT))) { + backstepCounter = 2; + clear_mods(); + SEND_STRING("[];"); + } else if (mods & MOD_BIT(KC_LALT)) { + backstepCounter = 1; + clear_mods(); + SEND_STRING("[]"); + } else { + keyDown = true; + register_code(KC_COMM); + return true; + } + if (backstepCounter) { + while (backstepCounter > 0) { + tap_code(KC_LEFT); + backstepCounter--; + } + set_mods(mods); + } + } else { + if (keyDown) { + unregister_code(KC_COMM); + keyDown = false; + return true; + } + } + return false; + case M_DOT: + if (record->event.pressed) { + if (mods & MOD_BIT(KC_LCTL)) { + clear_mods(); + SEND_STRING("=>"); + } else if (mods & MOD_BIT(KC_LALT)) { + clear_mods(); + SEND_STRING("->"); + } else { + keyDown = true; + register_code(KC_DOT); + return true; + } + } else { + if (keyDown) { + unregister_code(KC_DOT); + keyDown = false; + return true; + } + } + set_mods(mods); + return false; + } + + return true; +} + +// RGB Layers (Enable animations in config.h) +layer_state_t layer_state_set_user(layer_state_t state) { + switch (get_highest_layer(state)) { + case _SPECIAL: + rgb_matrix_sethsv_noeeprom(HSV_ORANGE); + rgb_matrix_set_speed_noeeprom(secondary_speed); + rgb_matrix_mode_noeeprom(secondary_animation); + break; + case _NAVIGATION: + rgb_matrix_sethsv_noeeprom(HSV_BLUE); + rgb_matrix_set_speed_noeeprom(secondary_speed); + rgb_matrix_mode_noeeprom(secondary_animation); + break; + case _MOUSE: + rgb_matrix_sethsv_noeeprom(HSV_GREEN); + rgb_matrix_set_speed_noeeprom(secondary_speed); + rgb_matrix_mode_noeeprom(secondary_animation); + break; + default: + rgb_matrix_sethsv_noeeprom(HSV_PURPLE); + rgb_matrix_set_speed_noeeprom(default_speed); + rgb_matrix_mode_noeeprom(default_animation); + break; + } + return state; +} + +// Dynamic Macro Recording Backlight +void dynamic_macro_record_start_user(void) { + is_macro_recording = true; +} + +void dynamic_macro_record_end_user(int8_t direction) { + is_macro_recording = false; +} + +// Indicators +void rgb_matrix_indicators_user(void) { + if (host_keyboard_led_state().caps_lock || caps_word_enabled) { + // Left master + rgb_matrix_set_color(3, RGB_RED); + // Right master + rgb_matrix_set_color(21, RGB_RED); + } + if (is_macro_recording) { + // Left master + rgb_matrix_set_color(4, RGB_ORANGE); + // Right master + rgb_matrix_set_color(22, RGB_ORANGE); + } + if (default_layer_state - 1 == _COLEMAK) { + // Left master + rgb_matrix_set_color(5, RGB_GREEN); + // Right master + rgb_matrix_set_color(23, RGB_GREEN); + } +} + +// Quantum keys / Abbreviations +enum custom_keycodes { + VVV = KC_TRNS, + XXX = KC_NO, + CSA_Q = MEH_T(KC_Q), + CSA_F1 = MEH_T(KC_F1), + CSA_1 = MEH_T(KC_1), + CA_W = LCA_T(KC_W), + CA_F2 = LCA_T(KC_F2), + CA_2 = LCA_T(KC_2), + CS_E = C_S_T(KC_E), + CS_F = C_S_T(KC_F), + CS_I = C_S_T(KC_I), + CS_U = C_S_T(KC_U), + CS_F3 = C_S_T(KC_F3), + CS_3 = C_S_T(KC_3), + CS_F8 = C_S_T(KC_F8), + CS_8 = C_S_T(KC_8), + CA_O = LCA_T(KC_O), + CA_Y = LCA_T(KC_Y), + CA_F9 = LCA_T(KC_F9), + CA_9 = LCA_T(KC_9), + CSA_P = MEH_T(KC_P), + CSA_SCLN = MEH_T(KC_SCLN), + CSA_F10 = MEH_T(KC_F10), + CSA_0 = MEH_T(KC_0), + LGUI_A = LGUI_T(KC_A), + LGUI_FIND = LGUI_T(KC_FIND), + LGUI_GRV = LGUI_T(KC_GRV), + LALT_S = LALT_T(KC_S), + LALT_R = LALT_T(KC_R), + LALT_HOME = LALT_T(KC_HOME), + LCTL_D = LCTL_T(KC_D), + LCTL_S = LCTL_T(KC_S), + LCTL_PGUP = LCTL_T(KC_PGUP), + LCTL_LBRC = LCTL_T(KC_LBRC), + LSFT_F = LSFT_T(KC_F), + _LSFT_T = LSFT_T(KC_T), + LSFT_PGDN = LSFT_T(KC_PGDN), + LSFT_RBRC = LSFT_T(KC_RBRC), + RSFT_J = RSFT_T(KC_J), + RSFT_N = RSFT_T(KC_N), + RSFT_DOWN = RSFT_T(KC_DOWN), + RSFT_MINS = RSFT_T(KC_MINS), + RCTL_K = RCTL_T(KC_K), + RCTL_E = RCTL_T(KC_E), + RCTL_UP = RCTL_T(KC_UP), + RCTL_EQL = RCTL_T(KC_EQL), + RALT_L = RALT_T(KC_L), + RALT_I = RALT_T(KC_I), + RALT_RGHT = RALT_T(KC_RGHT), + RALT_BSLS = RALT_T(KC_BSLS), + RGUI_SCLN = RGUI_T(KC_SCLN), + RGUI_O = RGUI_T(KC_O), + RGUI_F11 = RGUI_T(KC_F11), + RGUI_QUOT = RGUI_T(KC_QUOT), + LT3_SPC = LT(3,KC_SPC), + LT2_TAB = LT(2,KC_TAB), + DF_QWERTY = DF(0), + DF_COLEMAK = DF(1), +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_QWERTY] = LAYOUT_split_3x5_3( + //|--------------------------------------------| |--------------------------------------------| + CSA_Q, CA_W, CS_E, KC_R, KC_T, KC_Y, KC_U, CS_I, CA_O, CSA_P, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + LGUI_A, LALT_S, LCTL_D, LSFT_F, KC_G, KC_H, RSFT_J, RCTL_K, RALT_L, RGUI_SCLN, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, M_COMM, M_DOT, KC_SLSH, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_ESC, LT3_SPC, KC_BSPC, KC_DEL, LT2_TAB, KC_ENT + // |--------+--------+--------| |--------+--------+--------| + ), + [_COLEMAK] = LAYOUT_split_3x5_3( + //|--------------------------------------------| |--------------------------------------------| + CSA_Q, CA_W, CS_F, KC_P, KC_G, KC_J, KC_L, CS_U, CA_Y, CSA_SCLN, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + LGUI_A, LALT_R, LCTL_S, _LSFT_T, KC_D, KC_H, RSFT_N, RCTL_E, RALT_I, RGUI_O, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_K, KC_M, M_COMM, M_DOT, KC_SLSH, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + KC_ESC, LT3_SPC, KC_BSPC, KC_DEL, LT2_TAB, KC_ENT + // |--------+--------+--------| |--------+--------+--------| + ), + [_NAVIGATION] = LAYOUT_split_3x5_3( + //|--------------------------------------------| |--------------------------------------------| + CSA_F1, CA_F2, CS_F3, KC_F4, KC_F5, KC_F6, KC_F7, CS_F8, CA_F9, CSA_F10, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + LGUI_FIND,LALT_HOME,LCTL_PGUP,LSFT_PGDN,KC_END, KC_LEFT,RSFT_DOWN,RCTL_UP,RALT_RGHT,RGUI_F11, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + DF_QWERTY,DF_COLEMAK,KC_VOLD, KC_VOLU, RESET, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, KC_F12, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + VVV, TG(4), VVV, VVV, VVV, VVV + // |--------+--------+--------| |--------+--------+--------| + ), + [_SPECIAL] = LAYOUT_split_3x5_3( + //|--------------------------------------------| |--------------------------------------------| + CSA_1, CA_2, CS_3, KC_4, KC_5, KC_6, KC_7, CS_8, CA_9, CSA_0, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + LGUI_GRV,KC_LALT,LCTL_LBRC,LSFT_RBRC,KC_LPRN, KC_RPRN,RSFT_MINS,RCTL_EQL,RALT_BSLS,RGUI_QUOT, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_TILD, KC_CAPS, KC_LCBR, KC_RCBR,TG(_MOUSE), EEP_RST, KC_UNDS, KC_PLUS, KC_PIPE, KC_DQUO, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + VVV, VVV, VVV, VVV, TG(4), VVV + // |--------+--------+--------| |--------+--------+--------| + ), + [_MOUSE] = LAYOUT_split_3x5_3( + //|--------------------------------------------| |--------------------------------------------| + KC_WH_U, KC_WH_L, KC_MS_U, KC_WH_R, DM_REC1, KC_WSTP, KC_ACL2, KC_ACL1, KC_ACL0, KC_WFWD, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, DM_PLY1, KC_WREF, KC_BTN1, KC_BTN2, KC_BTN3, KC_WBAK, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + M_KEYMAP,KC_BTN3, KC_BTN2, KC_BTN1, XXX, XXX, XXX, XXX, XXX, XXX, + //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| + VVV, TG(4), VVV, VVV, TG(4), VVV + // |--------+--------+--------| |--------+--------+--------| + ), +}; diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/rules.mk b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/rules.mk new file mode 100644 index 0000000000..f40ace9606 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/dlford/rules.mk @@ -0,0 +1,17 @@ +# Includes +SRC += features/caps_word.c + +# Build Options +# change yes to no to disable +# +# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work +DYNAMIC_MACRO_ENABLE = yes # Create macros on the fly +RGB_MATRIX_DRIVER = WS2812 +INDICATOR_LIGHTS = yes # Enable indicator lights for caps lock, etc. +# TAP_DANCE_ENABLE = yes # Send different keycodes if tapped multiple times +# KEY_OVERRIDE_ENABLE = yes # Override key combos +# COMBO_ENABLE = yes # Custom key combos + +LTO_ENABLE = yes +RGBLIGHT_SUPPORTED = yes +RGB_MATRIX_SUPPORTED = yes diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk b/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk new file mode 100644 index 0000000000..12812870e3 --- /dev/null +++ b/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk @@ -0,0 +1,25 @@ +# Build Options +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = yes # Audio output + +RGB_MATRIX_ENABLE = yes # Enable WS2812 RGB matrix +RGB_MATRIX_DRIVER = WS2812 +SPLIT_KEYBOARD = yes + +RGBLIGHT_SUPPORTED = yes +RGB_MATRIX_SUPPORTED = yes + +LAYOUTS = split_3x5_3 diff --git a/keyboards/handwired/dactyl_manuform/dactyl_manuform.h b/keyboards/handwired/dactyl_manuform/dactyl_manuform.h index d304814d7d..c339370f8b 100644 --- a/keyboards/handwired/dactyl_manuform/dactyl_manuform.h +++ b/keyboards/handwired/dactyl_manuform/dactyl_manuform.h @@ -22,6 +22,8 @@ # include "6x6_kinesis.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_6x7) # include "6x7.h" +#elif defined(KEYBOARD_handwired_dactyl_manuform_3x5_3) +# include "3x5_3.h" #elif defined(KEYBOARD_handwired_dactyl_manuform_dmote_62key) # include "62key.h" #endif diff --git a/keyboards/handwired/dactyl_manuform/readme.md b/keyboards/handwired/dactyl_manuform/readme.md index da4ac2ad68..560562f544 100644 --- a/keyboards/handwired/dactyl_manuform/readme.md +++ b/keyboards/handwired/dactyl_manuform/readme.md @@ -1,9 +1,8 @@ -Dactyl Manuform (4x5, 5x6, 5x7, 6x6, 6x7) -====== +# Dactyl Manuform (4x5, 5x6, 5x7, 6x6, 6x7) + the [Dactyl-Manuform](https://github.com/tshort/dactyl-keyboard) is a split curved keyboard based on the design of [adereth dactyl](https://github.com/adereth/dactyl-keyboard) and thumb cluster design of the [manuform](https://geekhack.org/index.php?topic=46015.0) keyboard, the hardware is similar to the let's split keyboard. all information needed for making one is in the first link. ![Imgur](https://i.imgur.com/7y0Vbyd.jpg) - ## First Time Setup Download or clone the `qmk_firmware` repo and navigate to its top level directory. Once your build environment is setup, you'll be able to generate the default .hex using: @@ -15,6 +14,7 @@ $ make handwired/dactyl_manuform/YOUR_LAYOUT:YOUR_KEYMAP_NAME ``` example: + ``` $ make handwired/dactyl_manuform/4x5:default ``` @@ -27,21 +27,24 @@ dactyl_manuform_YOUR_LAYOUT_YOUR_KEYMAP_NAME.hex For more information on customizing keymaps, take a look at the primary documentation for [Customizing Your Keymap](/docs/faq_keymap.md) in the main readme.md. - ## Keymaps ### [Keymaps 4x5](/keyboards/handwired/dactyl_manuform/4x5/keymaps/) #### Default + Simple QWERTY layout with 3 Layers. + #### Dvorak ### [Keymaps 5x6](/keyboards/handwired/dactyl_manuform/5x6/keymaps/) #### Default + Just a copy of the Impstyle keymap. Feel free to adjust it. #### Impstyle + A simple QWERTY keymap with 3 Layers. Both sides are connected via serial and the Left ist the master. ### [Keymaps 5x6_5](/keyboards/handwired/dactyl_manuform/5x6_5/keymaps/) @@ -56,32 +59,43 @@ Similar to Default but adds support for the [Via](https://www.caniusevia.com/) k some keys to accomodate that constraint. ### [Keymaps 5x7 aka almost Ergodox](/keyboards/handwired/dactyl_manuform/5x7/keymaps/) + #### Default + Keymap of Loligagger from geekhack. ### [Keymaps 6x6](/keyboards/handwired/dactyl_manuform/6x6/keymaps/) #### Default + Simple QWERTY layout with 3 Layers. ### [Keymaps 6x7](/keyboards/handwired/dactyl_manuform/6x7/keymaps/) #### Default + Simple QWERTY layout with 3 Layers. +### [Keymaps 3x5_3](/keyboards/handwired/dactyl_manuform/3x5_3/keymaps/) + +#### Dlford + +QWERTY/Colemak layout with per key RGB and other features + ## Required Hardware Apart from diodes and key switches for the keyboard matrix in each half, you will need: -* 2 Arduino Pro Micros. You can find these on AliExpress for ≈3.50USD each. -* 2 TRRS sockets and 1 TRRS cable, or 2 TRS sockets and 1 TRS cable +- 2 Arduino Pro Micros. You can find these on AliExpress for ≈3.50USD each. +- 2 TRRS sockets and 1 TRRS cable, or 2 TRS sockets and 1 TRS cable Alternatively, you can use any sort of cable and socket that has at least 3 wires. If you want to use I2C to communicate between halves, you will need a cable with at least 4 wires and 2x 4.7kΩ pull-up resistors ## Optional Hardware + A speaker can be hooked-up to either side to the `5` (`C6`) pin and `GND`, and turned on via `AUDIO_ENABLE`. ## Wiring @@ -114,7 +128,6 @@ the keymaps in here are for the 4x5 layout of the keyboard only. To flash your firmware take a look at: [Flashing Instructions and Bootloader Information](https://docs.qmk.fm/#/flashing) - ## Choosing which board to plug the USB cable into (choosing Master) Because the two boards are identical, the firmware has logic to differentiate the left and right board. @@ -132,6 +145,7 @@ If you always plug the usb cable into the left board, nothing extra is needed as ### Setting the right hand as master If you always plug the usb cable into the right board, add an extra flag to your `config.h` + ``` #define MASTER_RIGHT ``` @@ -146,6 +160,7 @@ half is left handed or right handed. This makes it so that the same firmware file will run on both hands instead of having to flash left and right handed versions of the firmware to each half. To flash the EEPROM file for the left half run: + ``` make handwired/dactyl_promicro:default:dfu-split-left make handwired/dactyl_promicro:default:dfu-split-right @@ -159,9 +174,7 @@ layout and the right half with a Colemak layout using bootmagic's default layout Then if you connect the left half to a computer by USB the keyboard will use QWERTY and Colemak when the right half is connected. - -Notes on Using Pro Micro 3.3V ------------------------------ +## Notes on Using Pro Micro 3.3V Do update the `F_CPU` parameter in `rules.mk` to `8000000` which reflects the frequency on the 3.3V board. From 802095097616abfa9ef9e91419fbbda2dcdf65e1 Mon Sep 17 00:00:00 2001 From: Daniel Weeks <29613475+xanimos@users.noreply.github.com> Date: Fri, 22 Apr 2022 01:19:06 -0700 Subject: [PATCH 331/699] Added massdrop/ctrl:xanimos keymap (#16187) Co-authored-by: xanimos --- .../massdrop/ctrl/keymaps/xanimos/config.h | 132 ++++++ .../ctrl/keymaps/xanimos/config_led.c | 97 +++++ .../massdrop/ctrl/keymaps/xanimos/keymap.c | 410 ++++++++++++++++++ .../massdrop/ctrl/keymaps/xanimos/keymap.h | 129 ++++++ .../massdrop/ctrl/keymaps/xanimos/readme.md | 200 +++++++++ .../massdrop/ctrl/keymaps/xanimos/rules.mk | 14 + 6 files changed, 982 insertions(+) create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/config.h create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/config_led.c create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/readme.md create mode 100644 keyboards/massdrop/ctrl/keymaps/xanimos/rules.mk diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/config.h b/keyboards/massdrop/ctrl/keymaps/xanimos/config.h new file mode 100644 index 0000000000..37987340ce --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/config.h @@ -0,0 +1,132 @@ +/* Copyright 2022 Daniel Weeks (@xanimos) + * + * 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 . + */ + +#pragma once + + +#define MODS_SHIFT (get_mods() & MOD_MASK_SHIFT) +#define MODS_CTRL (get_mods() & MOD_MASK_CTRL) +#define MODS_ALT (get_mods() & MOD_MASK_ALT) + +// #define IS_COMMAND() (get_mods() == MOD_MASK_SHIFT) // Key combination that allows the use of magic commands (useful for debugging) + +// #define NO_DEBUG // Disable debugging +// #define NO_PRINT // Disable printing/debugging using hid_listen +// #define NO_ACTION_LAYER // Disable layers +// #define NO_ACTION_TAPPING // Disable tap dance and other tapping features +// #define NO_ACTION_ONESHOT // Disable one-shot modifiers +// #define NO_ACTION_MACRO // Disable old style macro handling: MACRO() & action_get_macro +#define TERMINAL_HELP +#define MOUSEKEY_INTERVAL 20 +#define MOUSEKEY_DELAY 0 +#define MOUSEKEY_TIME_TO_MAX 60 +#define MOUSEKEY_MAX_SPEED 10 +#define MOUSEKEY_WHEEL_DELAY 0 +#define FORCE_NKRO // NKRO by default requires to be turned on, this forces it on during keyboard startup regardless of EEPROM setting. NKRO can still be turned off but will be turned on again if the keyboard reboots. +// #define QMK_KEYS_PER_SCAN 4 // Allows sending more than one key per scan. By default, only one key event gets sent via process_record() per scan. This has little impact on most typing, but if you're doing a lot of chords, or your scan rate is slow to begin with, you can have some delay in processing key events. Each press and release is a separate event. For a keyboard with 1ms or so scan times, even a very fast typist isn't going to produce the 500 keystrokes a second needed to actually get more than a few ms of delay from this. But if you're doing chording on something with 3-4ms scan times? You probably want this. +// #define STRICT_LAYER_RELEASE // Force a key release to be evaluated using the current layer stack instead of remembering which layer it came from (used for advanced cases) +// #define LOCKING_SUPPORT_ENABLE // Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap +// #define LOCKING_RESYNC_ENABLE // Tries to keep switch state consistent with keyboard LED state +#define TAPPING_TERM 200 // How long before a tap becomes a hold, if set above 500, a key tapped during the tapping term will turn it into a hold too +// #define TAPPING_TERM_PER_KEY // Enables handling for per key TAPPING_TERM settings +// #define RETRO_TAPPING // Tap anyway, even after TAPPING_TERM, if there was no other key interruption between press and release +#define TAPPING_TOGGLE 2 // How many taps before triggering the toggle +// #define PERMISSIVE_HOLD // Makes tap and hold keys trigger the hold if another key is pressed before releasing, even if it hasn't hit the TAPPING_TERM. See Permissive Hold for details +// #define IGNORE_MOD_TAP_INTERRUPT // Makes it possible to do rolling combos (zx) with keys that convert to other keys on hold, by enforcing the TAPPING_TERM for both keys. See Mod tap interrupt for details +// #define TAPPING_FORCE_HOLD // Makes it possible to use a dual role key as modifier shortly after having been tapped. See Hold after tap. Breaks any Tap Toggle functionality (TT or the One Shot Tap Toggle) +// #define LEADER_TIMEOUT 300 // How long before the leader key times out. If you're having issues finishing the sequence before it times out, you may need to increase the timeout setting. Or you may want to enable the LEADER_PER_KEY_TIMING option, which resets the timeout after each key is tapped. +// #define LEADER_PER_KEY_TIMING // Sets the timer for leader key chords to run on each key press rather than overall +// #define LEADER_KEY_STRICT_KEY_PROCESSING // Disables keycode filtering for Mod-Tap and Layer-Tap keycodes. Eg, if you enable this, you would need to specify MT(MOD_CTL, KC_A) if you want to use KC_A. +// #define ONESHOT_TIMEOUT 300 // How long before oneshot times out +// #define ONESHOT_TAP_TOGGLE 2 // How many taps before oneshot toggle is triggered +// #define COMBO_COUNT 2 // Set this to the number of combos that you're using in the Combo feature. +// #define COMBO_TERM 200 // How long for the Combo keys to be detected. Defaults to TAPPING_TERM if not defined. +// #define TAP_CODE_DELAY 100 // Sets the delay between register_code and unregister_code, if you're having issues with it registering properly (common on VUSB boards). The value is in milliseconds. +// #define TAP_HOLD_CAPS_DELAY 80 // Sets the delay for Tap Hold keys (LT, MT) when using KC_CAPSLOCK keycode, as this has some special handling on MacOS. The value is in milliseconds, and defaults to 80 ms if not defined. For macOS, you may want to set this to 200 or higher. + +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_KEYPRESSES // reacts to keypresses +// #define RGB_MATRIX_KEYRELEASES // reacts to keyreleases (instead of keypresses) +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_ALPHAS_MODS // Sets the default mode, if none has been set +// #define RGBLIGHT_HUE_STEP 12 // Units to step when in/decreasing hue +// #define RGBLIGHT_SAT_STEP 25 // Units to step when in/decreasing saturation +// #define RGBLIGHT_VAL_STEP 12 // Units to step when in/decreasing value (brightness) +// #define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects +// #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +// #define RGB_MATRIX_LED_PROCESS_LIMIT (DRIVER_LED_TOTAL + 4) / 5 // limits the number of LEDs to process in an animation per task run (increases keyboard responsiveness) +// #define RGB_MATRIX_LED_FLUSH_LIMIT 16 // limits in milliseconds how frequently an animation will update the LEDs. 16 (16ms) is equivalent to limiting to 60fps (increases keyboard responsiveness) +// #define RGBLIGHT_ANIMATIONS // Run RGB animations +// #define RGBLIGHT_ANIMATIONS // Enable all additional animation modes. +// #define RGBLIGHT_EFFECT_ALTERNATING // Enable alternating animation mode. +#define RGBLIGHT_EFFECT_BREATHING // Enable breathing animation mode. +// #define RGBLIGHT_EFFECT_CHRISTMAS // Enable christmas animation mode. +#define RGBLIGHT_EFFECT_KNIGHT // Enable knight animation mode. +// #define RGBLIGHT_EFFECT_RAINBOW_MOOD // Enable rainbow mood animation mode. +// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL // Enable rainbow swirl animation mode. +// #define RGBLIGHT_EFFECT_RGB_TEST // Enable RGB test animation mode. +#define RGBLIGHT_EFFECT_SNAKE // Enable snake animation mode. +// #define RGBLIGHT_EFFECT_STATIC_GRADIENT // Enable static gradient mode. + +// #define RGBLIGHT_EFFECT_BREATHE_CENTER // If defined, used to calculate the curve for the breathing animation. Valid values are 1.0 to 2.7 +// #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // The maximum brightness for the breathing mode. Valid values are 1 to 255 +// #define RGBLIGHT_EFFECT_CHRISTMAS_INTERVAL 1000 // How long to wait between light changes for the "Christmas" animation, in milliseconds +// #define RGBLIGHT_EFFECT_CHRISTMAS_STEP 2 // The number of LEDs to group the red/green colors by for the "Christmas" animation +#define RGBLIGHT_EFFECT_KNIGHT_LED_NUM RGBLED_NUM // The number of LEDs to have the "Knight" animation travel +#define RGBLIGHT_EFFECT_KNIGHT_LENGTH 3 // The number of LEDs to light up for the "Knight" animation +#define RGBLIGHT_EFFECT_KNIGHT_OFFSET 0 // The number of LEDs to start the "Knight" animation from the start of the strip by +// #define RGBLIGHT_RAINBOW_SWIRL_RANGE 255 // Range adjustment for the rainbow swirl effect to get different swirls +#define RGBLIGHT_EFFECT_SNAKE_LENGTH 4 // The number of LEDs to light up for the "Snake" animation + +// This list in in the correct mode order. Next mode is the following line, previous mode is previous line. Loops around. +// #undef ENABLE_RGB_MATRIX_SOLID_COLOR // Static single hue, no speed support +// #undef ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue +// #undef ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static gradient top to bottom, speed controls how much gradient changes +#undef ENABLE_RGB_MATRIX_BREATHING // Single hue brightness cycling animation +#undef ENABLE_RGB_MATRIX_BAND_SAT // Single hue band fading saturation scrolling left to right +#undef ENABLE_RGB_MATRIX_BAND_VAL // Single hue band fading brightness scrolling left to right +#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT // Single hue 3 blade spinning pinwheel fades saturation +#undef ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL // Single hue 3 blade spinning pinwheel fades brightness +#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT // Single hue spinning spiral fades saturation +#undef ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL // Single hue spinning spiral fades brightness +// #undef ENABLE_RGB_MATRIX_CYCLE_ALL // Full keyboard solid hue cycling through full gradient +#undef ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT // Full gradient scrolling left to right +#undef ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom +#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Full gradient scrolling out to in +#undef ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in +// #undef ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right +#undef ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard +#undef ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard +#undef ENABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard +#undef ENABLE_RGB_MATRIX_RAINBOW_BEACON // Full tighter gradient spinning around center of keyboard +#undef ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard +// #undef ENABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue +// #undef ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation +// =================================================== Requires RGB_MATRIX_FRAMEBUFFER_EFFECTS ============================================================= +// #undef ENABLE_RGB_MATRIX_TYPING_HEATMAP // How hot is your WPM! +// #undef ENABLE_RGB_MATRIX_DIGITAL_RAIN // That famous computer simulation +// =================================================== RGB_MATRIX_KEYPRESSES OR RGB_MATRIX_KEYRELEASES ===================================================== +// #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Pulses keys hit to hue & value then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out +// #undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out +// #undef ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out +#undef ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out +// #undef ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out +#undef ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/config_led.c b/keyboards/massdrop/ctrl/keymaps/xanimos/config_led.c new file mode 100644 index 0000000000..650b31477c --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/config_led.c @@ -0,0 +1,97 @@ +/* Copyright 2022 Daniel Weeks (@xanimos) + * + * 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 . + */ + +#ifdef RGB_MATRIX_ENABLE +#include "ctrl.h" + +#include "md_rgb_matrix.h" +#include "rgb_matrix.h" +#include "config_led.h" + +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5, 6, 7 }, + { 16, 17, 18, 19, 20, 21, 22, 23 }, + { 33, 34, 35, 36, 37, 38, 39, 40 }, + { 50, 51, 52, 53, 54, 55, 56, 57 }, + { 63, 64, 65, 66, 67, 68, 69, 70 }, + { 76, 77, 78, 79, 80, 81, 82, 83 }, + { 8, 9, 10, 11, 12, 13, 14, 15 }, + { 24, 25, 26, 27, 28, 29, 30, 31 }, + { 41, 42, 43, 44, 45, 46, 47, 48 }, + { 58, 59, 60, 61, 62, 75, 49, 32 }, + { 71, 72, 73, 74, 84, 85, 86, NO_LED } +}, { + // 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_PSCR, KC_SLCK, KC_PAUS + { 7, 5 }, { 31, 5 }, { 43, 5 }, { 55, 5 }, { 67, 5 }, { 85, 5 }, { 97, 5 }, { 109, 5 }, + { 121, 5 }, { 139, 5 }, { 151, 5 }, { 163, 5 }, { 175, 5 }, { 193, 5 }, { 205, 5 }, { 217, 5 }, + // KC_GRV, 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_INS, KC_HOME, KC_PGUP + { 7, 20 }, { 19, 20 }, { 31, 20 }, { 43, 20 }, { 55, 20 }, { 67, 20 }, { 79, 20 }, { 91, 20 }, + { 103, 20 }, { 115, 20 }, { 127, 20 }, { 139, 20 }, { 151, 20 }, { 169, 20 }, { 193, 20 }, { 205, 20 }, + { 217, 20 }, + // 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, KC_DEL, KC_END, KC_PGDN + { 10, 30 }, { 25, 30 }, { 37, 30 }, { 49, 30 }, { 61, 30 }, { 73, 30 }, { 85, 30 }, { 97, 30 }, + { 109, 30 }, { 121, 30 }, { 133, 30 }, { 145, 30 }, { 157, 30 }, { 172, 30 }, { 193, 30 }, { 205, 30 }, + { 217, 30 }, + // 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 + { 11, 39 }, { 28, 39 }, { 40, 39 }, { 52, 39 }, { 64, 39 }, { 76, 39 }, { 88, 39 }, { 100, 39 }, + { 112, 39 }, { 124, 39 }, { 136, 39 }, { 148, 39 }, { 168, 39 }, + // 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 + { 14, 49 }, { 34, 49 }, { 46, 49 }, { 58, 49 }, { 70, 49 }, { 82, 49 }, { 94, 49 }, { 106, 49 }, + { 118, 49 }, { 130, 49 }, { 142, 49 }, { 165, 49 }, { 205, 49 }, + // KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + { 8, 59 }, { 23, 59 }, { 38, 59 }, { 83, 59 }, { 129, 59 }, { 144, 59 }, { 159, 59 }, { 174, 59 }, + { 193, 59 }, { 205, 59 }, { 217, 59 }, + // Underglow / Border + { 224, 64 }, { 204, 64 }, { 186, 64 }, { 167, 64 }, { 149, 64 }, { 130, 64 }, { 112, 64 }, { 94, 64 }, + { 75, 64 }, { 57, 64 }, { 38, 64 }, { 20, 64 }, { 0, 64 }, { 0, 47 }, { 0, 32 }, { 0, 17 }, + { 0, 0 }, { 20, 0 }, { 38, 0 }, { 57, 0 }, { 75, 0 }, { 94, 0 }, { 112, 0 }, { 130, 0 }, + { 149, 0 }, { 167, 0 }, { 186, 0 }, { 204, 0 }, { 224, 0 }, { 224, 17 }, { 224, 32 }, { 224, 47 } +}, { + // 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_PSCR, KC_SLCK, KC_PAUS + 1, 4, 4, 4, 4, 1, 1, 1, + 1, 4, 4, 4, 4, 1, 1, 1, + // KC_GRV, 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_INS, KC_HOME, KC_PGUP + 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 1, 1, 1, + 1, + // 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, KC_DEL, KC_END, KC_PGDN + 1, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 1, 1, + 1, + // 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 + 1, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 1, + // 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 + 1, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 1, 1, + // KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + 1, 1, 1, 4, 1, 1, 1, 1, + 1, 1, 1, + // Underglow / Border + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2, 2, 2 +} }; + + +#ifdef USB_LED_INDICATOR_ENABLE +void rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + md_rgb_matrix_indicators_advanced(led_min, led_max); +} +#endif // USB_LED_INDICATOR_ENABLE + +#endif diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c new file mode 100644 index 0000000000..c7bc285eda --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.c @@ -0,0 +1,410 @@ +/* Copyright 2022 Daniel Weeks (@xanimos) + * + * 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 . + */ + +#include "keymap.h" + +static uint16_t idle_timer; // Idle LED timeout timer +static uint8_t idle_second_counter; // Idle LED seconds counter, counts seconds not milliseconds +static uint8_t key_event_counter; // This counter is used to check if any keys are being held + +static const char * sendstring_commands[] = { + "git init", + "git clone ", + "git add ", + "git diff ", + "git reset --soft ", + "git branch --list", + "git checkout ", + "git remote add ", + "git fetch ", + "git pull", + "git pull upstream ", + "git push", + "git push -u origin ", + "git push --force-with-lease", + "git commit ", + "git commit -m \": [TFS-]\"", + "git status", + "git log", +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_KL] = LAYOUT( + // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PRINT SCLCK PAUSE + 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_PSCR, KC_SLCK,RCS(KC_M), + // ~ 1 2 3 4 5 6 7 8 9 0 - = BCKSP INS HOME PGUP + KC_GRV , 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_INS , KC_HOME, KC_PGUP, + // TAB Q W E R T Y U I O P [ ] \ DEL END PGDN + 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, KC_DEL , KC_END , KC_PGDN, + // CAPS A S D F G H J K L ; ' ENTER + 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 , + // SHIFT Z X C V B N M , . / RSHIFT UP + KC_LSPO, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_RSPC, KC_UP , + // CTRL GUI ALT SPACE RALT MENU RGUI RCTRL LEFT DOWN RIGHT + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, TD(TD_FN_SWITCH), KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FL] = LAYOUT( + // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PRINT SCLCK PAUSE + _______, ROUT_TG, ROUT_FM, ROUT_VD, ROUT_VI, _______, _______, _______, _______, _______, _______, KC_WAKE, KC_SLEP, KC_PAUS, _______, KC_MUTE, + // ~ 1 2 3 4 5 6 7 8 9 0 - = BCKSP INS HOME PGUP + RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MSTP, KC_MPLY, KC_VOLU, + // TAB Q W E R T Y U I O P [ ] \ DEL END PGDN + _______, RGB_MOD, RGB_SPI, RGB_VAI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, + // CAPS A S D F G H J K L ; ' ENTER + _______,RGB_RMOD, RGB_SPD, RGB_VAD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, + // SHIFT Z X C V B N M , . / RSHIFT UP + _______, _______, _______,COPY_ALL, _______, MD_BOOT, NK_TOGG, _______, _______, _______, _______, TOG_NPD, KC_BRIU, + // CTRL GUI ALT SPACE RALT MENU RGUI RCTRL LEFT DOWN RIGHT + _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BRID, _______ + ), + [_GL] = LAYOUT( + // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PRINT SCLCK PAUSE + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // ~ 1 2 3 4 5 6 7 8 9 0 - = BCKSP INS HOME PGUP + G_INIT, G_CLONE, G_REMTE, G_RESET, G_PSFWL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // TAB Q W E R T Y U I O P [ ] \ DEL END PGDN + _______, G_PUPST, G_PULL, G_PSORG, G_PUSH, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // CAPS A S D F G H J K L ; ' ENTER + _______, G_ADD, G_STAT, G_DIFF, G_FETCH, _______, _______, _______, _______, _______, _______, _______, _______, + // SHIFT Z X C V B N M , . / RSHIFT UP + _______, G_LOG, G_CHECK, G_COMM, G_COMSG, G_BRANH, _______, _______, _______, _______, _______, _______, _______, + // CTRL GUI ALT SPACE RALT MENU RGUI RCTRL LEFT DOWN RIGHT + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_NUMPAD] = LAYOUT( + // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PRINT SCLCK PAUSE + TOG_NPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // ~ 1 2 3 4 5 6 7 8 9 0 - = BCKSP INS HOME PGUP + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // TAB Q W E R T Y U I O P [ ] \ DEL END PGDN + _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, _______, _______, _______, _______, + // CAPS A S D F G H J K L ; ' ENTER + _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, + // SHIFT Z X C V B N M , . / RSHIFT UP + _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PDOT, _______, _______, _______, _______, + // CTRL GUI ALT SPACE RALT MENU RGUI RCTRL LEFT DOWN RIGHT + _______, _______, _______, KC_P0, _______, _______, _______, _______, _______, _______, _______ + ), + /* + [X] = LAYOUT( + // ESC F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 PRINT SCLCK PAUSE + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // ~ 1 2 3 4 5 6 7 8 9 0 - = BCKSP INS HOME PGUP + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // TAB Q W E R T Y U I O P [ ] \ DEL END PGDN + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // CAPS A S D F G H J K L ; ' ENTER + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // SHIFT Z X C V B N M , . / RSHIFT UP + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + // CTRL GUI ALT SPACE RALT MENU RGUI RCTRL LEFT DOWN RIGHT + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + */ +}; + +#define __OFF__ {0, 0, 0} + +const uint8_t PROGMEM ledmap[][DRIVER_LED_TOTAL][3] = { + [_FL] = { + // These remain on base layer rgb to see adjustments ;) + // |----------------------------------| + // _______, ROUT_TG, ROUT_FM, ROUT_VD, ROUT_VI, _______, _______, _______, _______, _______, _______, KC_WAKE, KC_SLEP, KC_PAUS, _______, KC_MUTE, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, YELLOW, YELLOW, ORANGE, __OFF__, GOLD, + // RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MSTP, KC_MPLY, KC_VOLU, + GOLD, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, RED, SPRING, ORANGE, + // _______, RGB_MOD, RGB_SPI, RGB_VAI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, + __OFF__, ORANGE, GREEN, AZURE, GOLDEN, MAGENT, __OFF__, AZURE, AZURE, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, TEAL, TEAL, ORANGE, + // _______,RGB_RMOD, RGB_SPD, RGB_VAD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, + __OFF__, ORANGE, GREEN, AZURE, GOLDEN, MAGENT, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______,COPY_ALL, _______, MD_BOOT, NK_TOGG, _______, _______, _______, _______, TO(_NUMPAD), KC_BRIU, + __OFF__, __OFF__, __OFF__, CORAL, __OFF__, RED, TURQ, __OFF__, __OFF__, __OFF__, __OFF__, CYAN, SPRING, + // _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BRID, _______ + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, SPRING, __OFF__ + }, + [_GL] = { + // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // G_INIT, G_CLONE, G_REMTE, G_RESET, G_PSFWL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + AZURE, CHART, CHART, RED, CORAL, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, G_PUPST, G_PULL, G_PSORG, G_PUSH, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + __OFF__, BLUE, PURPLE, MAGENT, PINK, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, G_ADD, G_STAT, G_DIFF, G_FETCH, _______, _______, _______, _______, _______, _______, _______, _______, + __OFF__, SPRING, GREEN, TURQ, TEAL, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, G_LOG, G_CHECK, G_COMM, G_COMSG, G_BRANH, _______, _______, _______, _______, _______, _______, _______, + __OFF__, CYAN, GOLDEN, YELLOW, GOLD, CHART, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__ + }, + [_NUMPAD] = { + // TO(_KL), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + RED, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, _______, _______, _______, _______, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, GREEN, GREEN, GREEN, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, TURQ, TURQ, TURQ, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_PDOT, _______, _______, _______, + __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, CYAN, CYAN, CYAN, AZURE, __OFF__, __OFF__, __OFF__, __OFF__, + // _______, _______, _______, KC_P0, _______, _______, _______, _______, _______, _______, _______ + __OFF__, __OFF__, __OFF__, CYAN, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__, __OFF__ + }, +}; + +// Runs just one time when the keyboard initializes. +void matrix_init_user(void) { + // Enable or disable debugging + debug_enable = false; + debug_matrix = false; + debug_keyboard = false; + debug_mouse = false; + + idle_second_counter = 0; // Counter for number of seconds keyboard has been idle. + key_event_counter = 0; // Counter to determine if keys are being held, neutral at 0. + rgb_time_out_seconds = RGB_DEFAULT_TIME_OUT; // RGB timeout initialized to its default configure in keymap.h + rgb_time_out_enable = false; // Disable RGB timeout by default. Enable using toggle key. + rgb_time_out_user_value = false; // Has to have the same initial value as rgb_time_out_enable. + rgb_enabled_flag = true; // Initially, keyboard RGB is enabled. Change to false config.h initializes RGB disabled. + rgb_time_out_fast_mode_enabled = false; // RGB timeout fast mode disabled initially. + rgb_time_out_saved_flag = rgb_matrix_get_flags(); // Save RGB matrix state for when keyboard comes back from ide. +}; + +void keyboard_post_init_user(void) { + rgb_matrix_enable(); +} + +// Runs constantly in the background, in a loop. +void matrix_scan_user(void) { + if(rgb_time_out_enable && rgb_enabled_flag) { + // If the key event counter is not zero then some key was pressed down but not released, thus reset the timeout counter. + if (key_event_counter) { + idle_second_counter = 0; + } else if (timer_elapsed(idle_timer) > MILLISECONDS_IN_SECOND) { + idle_second_counter++; + idle_timer = timer_read(); + } + + if (idle_second_counter >= rgb_time_out_seconds) { + rgb_time_out_saved_flag = rgb_matrix_get_flags(); + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_disable_noeeprom(); + rgb_enabled_flag = false; + idle_second_counter = 0; + } + } +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + static uint32_t key_timer; + + // Increment key event counter for every press and decrement for every release. + if (record->event.pressed) { + key_event_counter++; + + } else { + key_event_counter--; + } + + if (rgb_time_out_enable) { + idle_timer = timer_read(); + // Reset the seconds counter. Without this, something like press> leave x seconds> press, would be x seconds on the effective counter not 0 as it should. + idle_second_counter = 0; + if (!rgb_enabled_flag) { + rgb_matrix_enable_noeeprom(); + rgb_matrix_set_flags(rgb_time_out_saved_flag); + rgb_enabled_flag = true; + } + } + + switch (keycode) { + case MD_BOOT: + if (record->event.pressed) { + key_timer = timer_read32(); + } else { + if (timer_elapsed32(key_timer) >= 500) { + reset_keyboard(); + } + } + return false; + } + + if (record->event.pressed) { + switch (keycode) { + case RGB_TOG: + rgb_time_out_enable = rgb_time_out_user_value; + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER); + rgb_matrix_set_color_all(0, 0, 0); + } + break; + case LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER: { + rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); + rgb_matrix_set_color_all(0, 0, 0); + } + break; + case LED_FLAG_UNDERGLOW: { + // This line is for LED idle timer. It disables the toggle so you can turn off LED completely if you like + rgb_time_out_enable = false; + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_disable_noeeprom(); + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + } + break; + } + return false; + // ======================================================== CUSTOM KEYCOADS BELOW ======================================================== + case COPY_ALL: + // Selects all and text and copy + SEND_STRING(SS_LCTRL("ac")); + return false; + case ROUT_TG: + // Toggle idle LED timeout on or off + rgb_time_out_enable = !rgb_time_out_enable; + rgb_time_out_user_value = rgb_time_out_enable; + return false; + case ROUT_VI: + // Increase idle LED timeout value in seconds + // Only increase if current value is lower than RGB_TIME_OUT_MAX. Don't care what value the result will be + // Modity RGB_TIME_OUT_STEP for bigger or smaller increments + if (!rgb_time_out_fast_mode_enabled && rgb_time_out_seconds <= RGB_TIME_OUT_MAX) { + rgb_time_out_seconds += RGB_TIME_OUT_STEP; + } + return false; + case ROUT_VD: + // Decrease idle LED timeout value in seconds + // Only decrease if current value is higher than minimum value and the result is larger than zero + // Modity RGB_TIME_OUT_STEP for bigger or smaller decrements + if (!rgb_time_out_fast_mode_enabled && rgb_time_out_seconds > RGB_TIME_OUT_MIN) { + rgb_time_out_seconds -= RGB_TIME_OUT_STEP; + } + return false; + case ROUT_FM: + if (rgb_time_out_fast_mode_enabled) { + rgb_time_out_seconds = rgb_time_out_saved_seconds; + } else { + rgb_time_out_saved_seconds = rgb_time_out_seconds; + rgb_time_out_seconds = RGB_FAST_MODE_TIME_OUT; + } + rgb_time_out_fast_mode_enabled = !rgb_time_out_fast_mode_enabled; + return false; + case G_INIT ... G_LOG: + send_string_with_delay(sendstring_commands[keycode - G_INIT], 5); + return false; + case TOG_NPD: + if (get_highest_layer(layer_state) != _NUMPAD) { + layer_move(_NUMPAD); + } else { + layer_move(_KL); + } + return false; + } + } + return true; +} + +void set_layer_color(int layer) { + if (layer == 0) { return; } + for (int i = 0; i < DRIVER_LED_TOTAL; i++) { + HSV hsv = { + .h = pgm_read_byte(&ledmap[layer][i][0]), + .s = pgm_read_byte(&ledmap[layer][i][1]), + .v = pgm_read_byte(&ledmap[layer][i][2]), + }; + if (hsv.h || hsv.s || hsv.v) { + RGB rgb = hsv_to_rgb(hsv); + float f = (float)rgb_matrix_config.hsv.v / UINT8_MAX; + rgb_matrix_set_color(i, f * rgb.r, f * rgb.g, f * rgb.b); + continue; + } + if(layer == _FL && i <= 4 && i >= 1) { + continue; // Leave RGB for F1-F4 of function layer to adjust RGB settings + } + + rgb_matrix_set_color(i, 0, 0, 0); + } +} + +void rgb_matrix_indicators_user(void) { + if (disable_layer_color || + rgb_matrix_get_flags() == LED_FLAG_NONE || + rgb_matrix_get_flags() == LED_FLAG_UNDERGLOW) { + return; + } + set_layer_color(get_highest_layer(layer_state)); +} + + + +td_state_t cur_dance(qk_tap_dance_state_t *state) { + if (state->pressed && !state->interrupted) { + if (state->count == 1) { return TD_SINGLE_HOLD; } + return TD_DOUBLE_HOLD; + } + return TD_UNKNOWN; +} + +static td_tap_t fn_tap_state = { + .is_press_action = true, + .state = TD_NONE +}; + +void fn_tap_finished(qk_tap_dance_state_t *state, void *user_data) { + fn_tap_state.state = cur_dance(state); + switch (fn_tap_state.state) { + case TD_SINGLE_HOLD: + // set function layer + layer_move(_FL); + break; + case TD_DOUBLE_HOLD: + // set git layer + layer_move(_GL); + break; + case TD_UNKNOWN: + register_code(KC_APP); + break; + default: + break; + } +} + +void fn_tap_reset(qk_tap_dance_state_t *state, void *user_data) { + switch (fn_tap_state.state) { + case TD_UNKNOWN: + unregister_code(KC_APP); + break; + case TD_DOUBLE_HOLD: + case TD_SINGLE_HOLD: + // Set default layer if we didn't activate numpad layer in function + if (get_highest_layer(layer_state) != _NUMPAD) { + layer_move(_KL); + } + break; + break; + default: + break; + } + fn_tap_state.state = TD_NONE; +} + +qk_tap_dance_action_t tap_dance_actions[] = { + [TD_FN_SWITCH] = ACTION_TAP_DANCE_FN_ADVANCED(NULL, fn_tap_finished, fn_tap_reset) +}; diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h new file mode 100644 index 0000000000..4f5238e702 --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/keymap.h @@ -0,0 +1,129 @@ +/* Copyright 2022 Daniel Weeks (@xanimos) + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +#include +#include + +#define MILLISECONDS_IN_SECOND 1000 + +// These are just to make it neater to use builtin HSV values in the keymap +#define RED {HSV_RED} +#define CORAL {HSV_CORAL} +#define ORANGE {HSV_ORANGE} +#define GOLDEN {HSV_GOLDENROD} +#define GOLD {HSV_GOLD} +#define YELLOW {HSV_YELLOW} +#define CHART {HSV_CHARTREUSE} +#define GREEN {HSV_GREEN} +#define SPRING {HSV_SPRINGGREEN} +#define TURQ {HSV_TURQUOISE} +#define TEAL {HSV_TEAL} +#define CYAN {HSV_CYAN} +#define AZURE {HSV_AZURE} +#define BLUE {HSV_BLUE} +#define PURPLE {HSV_PURPLE} +#define MAGENT {HSV_MAGENTA} +#define PINK {HSV_PINK} + +//========================================================== CONFIGURABLE DEFAULTS ========================================================== +#define RGB_DEFAULT_TIME_OUT 30 +#define RGB_FAST_MODE_TIME_OUT 3 +#define RGB_TIME_OUT_MAX 600 +#define RGB_TIME_OUT_MIN 10 +#define RGB_TIME_OUT_STEP 10 + +extern rgb_config_t rgb_matrix_config; +bool disable_layer_color; + +bool rgb_enabled_flag; // Current LED state flag. If false then LED is off. +bool rgb_time_out_enable; // Idle LED toggle enable. If false then LED will not turn off after idle timeout. +bool rgb_time_out_fast_mode_enabled; // Enable flag for RGB timeout fast mode +bool rgb_time_out_user_value; // This holds the toggle value set by user with ROUT_TG. It's necessary as RGB_TOG changes timeout enable. +uint16_t rgb_time_out_seconds; // Idle LED timeout value, in seconds not milliseconds +uint16_t rgb_time_out_saved_seconds; // The saved user config for RGB timeout period +led_flags_t rgb_time_out_saved_flag; // Store LED flag before timeout so it can be restored when LED is turned on again. + +enum layout_names { + _KL=0, // Keys Layout: The main keyboard layout that has all the characters + _FL, // Function Layout: The function key activated layout with default functions and some added ones + _GL, // GIT Layout: GIT shortcuts and macros + _NUMPAD, // Numpad Layout: Adds a numpad to the keys +}; + +// Tap Dance keycodes +enum td_keycodes { + TD_FN_SWITCH = 0 +}; + +// Define a type containing as many tapdance states as you need +typedef enum { + TD_NONE, + TD_UNKNOWN, + TD_SINGLE_HOLD, + TD_DOUBLE_HOLD +} td_state_t; + +typedef struct { + bool is_press_action; + td_state_t state; +} td_tap_t; + +// Declare your tapdance functions: + +// Function to determine the current tapdance state +td_state_t cur_dance(qk_tap_dance_state_t *state); + +// `finished` and `reset` functions for each tapdance keycode +void fn_tap_finished(qk_tap_dance_state_t *state, void *user_data); +void fn_tap_reset(qk_tap_dance_state_t *state, void *user_data); + +enum ctrl_keycodes { + MD_BOOT = SAFE_RANGE, // Restart into bootloader after hold timeout + ROUT_TG, // Timeout Toggle. Toggle idle LED time out on or off + ROUT_VI, // Timeout Value Increase. Increase idle time out before LED disabled + ROUT_VD, // Timeout Value Decrease. Decrease idle time out before LED disabled + ROUT_FM, // RGB timeout fast mode toggle + TOG_NPD, // Toggle Numpad On/Off + COPY_ALL, // Copy all text using ctrl(a+c) +}; + +enum string_macro_keycodes { + // The start of this enum should always be equal to end of ctrl_keycodes + 1 + G_INIT = COPY_ALL + 1, // git init + G_CLONE, // git clone + G_ADD, // git add + G_DIFF, // git diff + G_RESET, // git reset --soft + G_BRANH, // git branch list + G_CHECK, // git checkout + G_REMTE, // git remote add + G_FETCH, // git fetch + G_PULL, // git pull + G_PUPST, // git pull upstream + G_PUSH, // git push + G_PSORG, // git push -u origin + G_PSFWL, // git push --force-with-lease + G_COMM, // git commit + G_COMSG, // git commit -m ": [TFS-]" + G_STAT, // git status + G_LOG, // git log +}; + + + + diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/readme.md b/keyboards/massdrop/ctrl/keymaps/xanimos/readme.md new file mode 100644 index 0000000000..1ba87a97bc --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/readme.md @@ -0,0 +1,200 @@ +# Massdrop Ctrl Xanimos + +This keymap is the one I use on my MD CTRL, as a professional software engineer I like to make things my own. I'm also up for spreading the love. +Massdrop has had a pretty bad rap with qmk the past but recently it's not too bad once you put a little pizzazz into it. + +I started with the Endgame keymap and have re-written most of and expanded upon it. + +## Layers + +### Typing Layer + +_I physically switched around my RALT and Menu keys as my personal preference. The label is still in default location but you can see they are mapped to my liking._ + + ``` + __________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________ + | ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE | + | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | 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_PSCR | KC_SLCK | RCS(M) | + |__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________| + ____________________________________________________________________________________________________________________________________________________________________ ________________________________ + | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | KC_GRV | 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_INS | KC_HOME | KC_PGUP | + |__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________| + | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | 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 | | KC_DEL | KC_END | KC_PGDN | + |_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________| + | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | + | 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 | + |_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________ + | SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | + | KC_LSPO | KC_Z | KC_X | KC_C | KC_V | KC_B | KC_N | KC_M | KC_COMM | KC_DOT | KC_SLSH | KC_RSPC | | KC_UP | + |____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________ + | CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | KC_LCTRL | KC_LGUI | KC_LALT | KC_SPC | FN_SWTCH | KC_RALT | KC_RGUI | KC_RCTL | | KC_LEFT | KC_DOWN | KC_RGHT | + |_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________| + + ``` + +### Function Layer + + ``` + __________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________ + | ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE | + | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | ROUT_TG | ROUT_RM | ROUT_VD | ROUT_VI | | | | | | | | KC_WAKE | KC_SLEP | | | KC_PAUS | | KC_MUTE | + |__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________| + ____________________________________________________________________________________________________________________________________________________________________ ________________________________ + | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | | | | | | | | | | KC_MSTP | KC_MPLY | KC_VOLU | + |__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________| + | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | RGB_MOD | RGB_SPI | RBG_VAI | RGB_HUI | | | | | | | | | | | KC_MPRV | KC_MNXT | KC_VOLD | + |_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________| + | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | + | | RGB_RMOD | RGB_SPD | RGB_VAD | RGB_HUD | | | | | | | | | + |_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________ + | SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | + | | | | COPY_ALL | | MD_BOOT | NK_TOGG | | | | | TOGGLE_NUMPAD | | KC_BRIU | + |____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________ + | CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | | | | | KC_BRID | | + |_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________| + + ``` + +### Git Layer + + ``` + __________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________ + | ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE | + | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | | | | | | | | | | | | | | | + |__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________| + ____________________________________________________________________________________________________________________________________________________________________ ________________________________ + | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | G_INIT | G_CLONE | G_REMTE | G_RESET | G_PSFWL | | | | | | | | | | | | | | + |__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________| + | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | G_PUPST | G_PULL | G_PSORG | G_PUSH | | | | | | | | | | | | | | + |_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________| + | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | + | | G_ADD | G_STAT | G_DIFF | G_FETCH | | | | | | | | | + |_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________ + | SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | + | | G_LOG | G_CHECK | G_COMM | G_COMSG | G_BRANH | | | | | | | | | + |____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________ + | CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | | | | | | | + |_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________| + + ``` + + - These are the strings that are dumped/keyed in for each associated keycode + ``` + G_INIT "git init" + G_CLONE "git clone " + G_ADD "git add " + G_DIFF "git diff " + G_RESET "git reset --soft " + G_BRANH "git branch --list" + G_CHECK "git checkout " + G_REMTE "git remote add " + G_FETCH "git fetch " + G_PULL "git pull" + G_PUPST "git pull upstream " + G_PUSH "git push" + G_PSORG "git push -u origin " + G_PSFWL "git push --force-with-lease" + G_COMM "git commit " + G_COMSG "git commit -m \": [TFS-]\"" + G_STAT "git status" + G_LOG "git log" + ``` + +### Numpad Layer + +*activated via the __Function Layer__ and stays active until you escape* + ``` + __________ ___________________________________________ ___________________________________________ ___________________________________________ ________________________________ + | ESC | | F1 | F2 | F3 | F4 | | F5 | F6 | F7 | F8 | | F9 | F10 | F11 | F12 | | PRINT | SCLCK | PAUSE | + | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | TOG_NPD | | | | | | | | | | | | | | | | | | | | + |__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________|__________| |__________|__________|__________| + ____________________________________________________________________________________________________________________________________________________________________ ________________________________ + | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | - | = | BCKSP | | INS | HOME | PGUP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | | | | | | | | | | | | | + |__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_____________________| |__________|__________|__________| + | TAB | Q | W | E | R | T | Y | U | I | O | P | [ | ] | \ | | DEL | END | PGDN | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | | | | KC_P7 | KC_P8 | KC_P9 | | | | | | | | | | + |_______________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|________________| |__________|__________|__________| + | CAPS | A | S | D | F | G | H | J | K | L | ; | ' | ENTER | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | + | | | | | | | KC_P4 | KC_P5 | KC_P6 | | | | | + |_________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________| __________ + | SHIFT | Z | X | C | V | B | N | M | , | . | / | RSHIFT | | UP | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | + | | | | | | KC_P1 | KC_P2 | KC_P3 | KC_PDOT | | | | | | + |____________________|__________|__________|__________|__________|__________|__________|__________|__________|__________|__________|_________________________________| __________|__________|__________ + | CTRL | GUI | ALT | SPACE | RALT | MENU | RGUI | RCTRL | | LEFT | DOWN | RIGHT | + | ------ | ------ | ------ | ------ | ------ | ------ | ------ | ------ | | ------ | ------ | ------ | + | | | | KC_P0 | | | | | | | | | + |_____________|_____________|_____________|_________________________________________________________________|______________|_____________|_____________|_____________| |__________|__________|__________| + + ``` + +## Features + +These are the features currently used by this keymap: + +### RGB Time Out + +This allows setting a dynamic timeout for RGB to turn off. The following is supported: + +1. Restores on the first click of any key. +2. Restores to its previous state before timeout. i.e. if it was edge only before timeout it will restore to edge only, same for all modes. +3. Doesn't interfere with RGB modes. You can set keyboard to All, Edge Only or Off and timeout will not interfere with these modes. +4. The time before RGB is turned off is dynamically adjustable using keycodes ROUT_VI to increase, ROUT_VD to decrease. They have a 10 second steps by default. Minimum value 10 seconds by default and maximum is 10 minutes. +5. Can be toggled on or off dyncamically with the ROUT_TG keycode. +6. Can be put in fast mode using ROUT_FM, for movie watching purposes. Default value is 3 seconds. Note that fast mode disabled ROUT_VD and ROUT_VI so to use them again you have to toggle fast mode off with ROUT_FM. It doesn't impact ROUT_TG and ROUT_TG will remember if fast mode was enabled when toggled back on, so it doesn't disable fast mode on its own, only ROUT_FM can disable or enable fast mode. + +### Tapdance Keys + +Created a tapdance setup to use the same key to switch between the layers, aka a function key. ;) + +Layers are temporary while holding the function key down. + - Single tap and hold: Activates the Function Layer. + - Double tap and hold: Activates the Git Layer. + +### Numpad + +Activated in the *Function Layer* by holding down the fn key and pressing the toggle key (RSHIFT). The keeps the layer activated without needing to hold the fn key anymore. +To leave the numpad layer press the ESC key or hold and let go of the fn key. + +### Space Cadet Shift + +The typing layer is setup to use the [Space Cadet Shift](https://docs.qmk.fm/#/feature_space_cadet). As a software engineer this is massively useful :) + +_Sorry ISO users, you'll need to configure it for your own setup or disable it._ + +## Credits + + - [endgame](https://github.com/qmk/qmk_firmware/tree/master/keyboards/massdrop/ctrl/keymaps/endgame) by [ash0x0](https://github.com/ash0x0) + For the base keymap I started with. \ No newline at end of file diff --git a/keyboards/massdrop/ctrl/keymaps/xanimos/rules.mk b/keyboards/massdrop/ctrl/keymaps/xanimos/rules.mk new file mode 100644 index 0000000000..43a312ce4e --- /dev/null +++ b/keyboards/massdrop/ctrl/keymaps/xanimos/rules.mk @@ -0,0 +1,14 @@ +# RGBLIGHT_ENABLE = no # Not for MD boards. This is here in case you forget. +COMMAND_ENABLE = no # Commands for debug and configuration +# AUTO_SHIFT_ENABLE = yes # Auto Shift +NKRO_ENABLE = yes # USB Nkey Rollover +DYNAMIC_MACRO_ENABLE = no # Dynamic macro recording and play +MOUSEKEY_ENABLE = no # Enable mouse control keycodes. Increases firmware size. +TAP_DANCE_ENABLE = yes # Enable tap dance keys +CONSOLE_ENABLE = no # Enable debugging console. Increases firmware size. +SRC += config_led.c # Used to add files to the compilation/linking list. +EXTRAKEY_ENABLE = yes # Audio control and System control +TERMINAL_ENABLE = no +# RAW_ENABLE = yes # Raw HID has not yet been implemented for this keyboard +# COMBO_ENABLE # Key combo feature +# LEADER_ENABLE # Enable leader key chording From d9737349769a8bd2198733a81c1c74bd7db82c3a Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Fri, 22 Apr 2022 05:50:11 -0600 Subject: [PATCH 332/699] Fix id67 RGB Matrix (#16916) --- keyboards/idobao/id67/id67.c | 2 +- keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/idobao/id67/id67.c b/keyboards/idobao/id67/id67.c index 5f4ff39ae2..8d27298625 100644 --- a/keyboards/idobao/id67/id67.c +++ b/keyboards/idobao/id67/id67.c @@ -56,6 +56,6 @@ led_config_t g_led_config = { { __attribute__ ((weak)) void rgb_matrix_indicators_user(void) { if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, 0xFF, 0xFF, 0xFF); + rgb_matrix_set_color(23, 0xFF, 0xFF, 0xFF); } } diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c index 62fd4cfa8f..2a42295b97 100644 --- a/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c @@ -121,7 +121,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { if (host_keyboard_led_state().caps_lock) { if (isRGBOff) { - rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white + rgb_matrix_set_color(23, v, v, v); // white } else { // Caps Lock key/LED if (timer_elapsed(recording_timer) > 500) { @@ -129,7 +129,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { recording_timer = timer_read(); } if (isCapsBlink) { - rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white + rgb_matrix_set_color(23, v, v, v); // white } // Alpha keys/LEDs @@ -144,7 +144,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { uint8_t g = 0; uint8_t b = 0; - if ((g_led_config.flags[ID67_CAPS_LOCK_KEY_INDEX] & LED_FLAG_LAYER_IND) != 0) { + if ((g_led_config.flags[23] & LED_FLAG_LAYER_IND) != 0) { switch (current_layer) { case LAYER_1: b = v; break; // blue case LAYER_2: g = v; break; // green @@ -152,7 +152,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } } - rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, r, g, b); // off + rgb_matrix_set_color(23, r, g, b); // off } // Layer indicator stuff From 857178e779f8215e0aec0e1eb40cb86e735092de Mon Sep 17 00:00:00 2001 From: Felix Jen Date: Sat, 23 Apr 2022 15:56:58 -0500 Subject: [PATCH 333/699] [Keyboard] Add Rooboard 65 (#15294) Co-authored-by: Drashna Jaelre Co-authored-by: Joel Challis Co-authored-by: Ryan Co-authored-by: James Young <18669334+noroadsleft@users.noreply.github.com> --- .../skippys_custom_pcs/rooboard65/config.h | 117 ++++++++++++++++++ .../skippys_custom_pcs/rooboard65/info.json | 83 +++++++++++++ .../rooboard65/keymaps/default/keymap.c | 40 ++++++ .../rooboard65/keymaps/via/keymap.c | 58 +++++++++ .../rooboard65/keymaps/via/rules.mk | 1 + .../skippys_custom_pcs/rooboard65/readme.md | 27 ++++ .../rooboard65/rooboard65.c | 14 +++ .../rooboard65/rooboard65.h | 32 +++++ .../skippys_custom_pcs/rooboard65/rules.mk | 23 ++++ 9 files changed, 395 insertions(+) create mode 100644 keyboards/skippys_custom_pcs/rooboard65/config.h create mode 100644 keyboards/skippys_custom_pcs/rooboard65/info.json create mode 100644 keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c create mode 100644 keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c create mode 100644 keyboards/skippys_custom_pcs/rooboard65/keymaps/via/rules.mk create mode 100644 keyboards/skippys_custom_pcs/rooboard65/readme.md create mode 100644 keyboards/skippys_custom_pcs/rooboard65/rooboard65.c create mode 100644 keyboards/skippys_custom_pcs/rooboard65/rooboard65.h create mode 100644 keyboards/skippys_custom_pcs/rooboard65/rules.mk diff --git a/keyboards/skippys_custom_pcs/rooboard65/config.h b/keyboards/skippys_custom_pcs/rooboard65/config.h new file mode 100644 index 0000000000..f061840771 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/config.h @@ -0,0 +1,117 @@ +/* +Copyright 2021 + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x36B6 // Skippys Custom PCs +#define PRODUCT_ID 0x0002 // Rooboard65 +#define DEVICE_VER 0x0001 // Version 1 +#define MANUFACTURER FJLabs +#define PRODUCT Rooboard65 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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 { F0, F1, F4, F5, F6 } +#define MATRIX_COL_PINS { C7, C6, B6, B5, B4, D7, D6, D4, D5, D3, D2, B3, B2, B1, D1 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Define RGB Underglow */ +#define RGB_DI_PIN F7 +#define RGBLED_NUM 68 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLIGHT_LIMIT_VAL 96 +#define RGB_VAL_STEP 12 +#define RGBLIGHT_DEFAULT_SPD 144 +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL +/* #define RGBLIGHT_LAYER_BLINK*/ + +/* Define less important options */ + +/* + * 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 + +/* + * 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 diff --git a/keyboards/skippys_custom_pcs/rooboard65/info.json b/keyboards/skippys_custom_pcs/rooboard65/info.json new file mode 100644 index 0000000000..3f195fc7c7 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/info.json @@ -0,0 +1,83 @@ +{ + "keyboard_name": "Rooboard65", + "url": "https://www.fjlaboratories.com/", + "maintainer": "FJLabs", + "layouts": { + "LAYOUT_65_ansi": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6, "y": 0}, + {"x": 7, "y": 0}, + {"x": 8, "y": 0}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0, "w": 2}, + {"x": 15, "y": 0}, + + {"x": 0, "y": 1, "w": 1.5}, + {"x": 1.5, "y": 1}, + {"x": 2.5, "y": 1}, + {"x": 3.5, "y": 1}, + {"x": 4.5, "y": 1}, + {"x": 5.5, "y": 1}, + {"x": 6.5, "y": 1}, + {"x": 7.5, "y": 1}, + {"x": 8.5, "y": 1}, + {"x": 9.5, "y": 1}, + {"x": 10.5, "y": 1}, + {"x": 11.5, "y": 1}, + {"x": 12.5, "y": 1}, + {"x": 13.5, "y": 1, "w": 1.5}, + {"x": 15, "y": 1}, + + {"x": 0, "y": 2, "w": 1.75}, + {"x": 1.75, "y": 2}, + {"x": 2.75, "y": 2}, + {"x": 3.75, "y": 2}, + {"x": 4.75, "y": 2}, + {"x": 5.75, "y": 2}, + {"x": 6.75, "y": 2}, + {"x": 7.75, "y": 2}, + {"x": 8.75, "y": 2}, + {"x": 9.75, "y": 2}, + {"x": 10.75, "y": 2}, + {"x": 11.75, "y": 2}, + {"x": 12.75, "y": 2, "w": 2.25}, + {"x": 15, "y": 2}, + + {"x": 0, "y": 3, "w": 2.25}, + {"x": 2.25, "y": 3}, + {"x": 3.25, "y": 3}, + {"x": 4.25, "y": 3}, + {"x": 5.25, "y": 3}, + {"x": 6.25, "y": 3}, + {"x": 7.25, "y": 3}, + {"x": 8.25, "y": 3}, + {"x": 9.25, "y": 3}, + {"x": 10.25, "y": 3}, + {"x": 11.25, "y": 3}, + {"x": 12.25, "y": 3, "w": 1.75}, + {"x": 14, "y": 3}, + {"x": 15, "y": 3}, + + {"x": 0, "y": 4, "w": 1.25}, + {"x": 1.25, "y": 4, "w": 1.25}, + {"x": 2.5, "y": 4, "w": 1.25}, + {"x": 3.75, "y": 4, "w": 6.25}, + {"x": 10, "y": 4}, + {"x": 11, "y": 4}, + {"x": 12, "y": 4}, + {"x": 13, "y": 4}, + {"x": 14, "y": 4}, + {"x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c b/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c new file mode 100644 index 0000000000..96c2351e89 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c @@ -0,0 +1,40 @@ +/* +Copyright 2021 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_65_ansi( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + + [_LAYER1] = LAYOUT_65_ansi( + KC_GESC, 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_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 + ) + +}; \ No newline at end of file diff --git a/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c new file mode 100644 index 0000000000..3e071bd079 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c @@ -0,0 +1,58 @@ +/* +Copyright 2021 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_65_ansi( + KC_GESC, 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_HOME, + 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, KC_PGUP, + 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_PGDN, + 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, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + ), + + [_LAYER1] = LAYOUT_65_ansi( + KC_GESC, 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_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 + ), + + [_LAYER2] = LAYOUT_65_ansi( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [_LAYER3] = LAYOUT_65_ansi( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + +}; diff --git a/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/rules.mk b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/skippys_custom_pcs/rooboard65/readme.md b/keyboards/skippys_custom_pcs/rooboard65/readme.md new file mode 100644 index 0000000000..63f8217fc8 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/readme.md @@ -0,0 +1,27 @@ +# FJLabs Rooboard65 + +The following is the QMK Firmware for the FJLabs Rooboard65 PCB, a universal tray mount 65% hotswap PCB with per key RGB LED's. + +The PCB will feature: +* Kailh Hotswap sockets +* QMK & VIA compatibility +* Per-Key RGB LED's + +--- + +* Keyboard Maintainer: FJLabs +* Hardware Supported: Rooboard65 + +Make example for this keyboard (after setting up your build environment): + + make skippys_custom_pcs/rooboard65:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available \ No newline at end of file diff --git a/keyboards/skippys_custom_pcs/rooboard65/rooboard65.c b/keyboards/skippys_custom_pcs/rooboard65/rooboard65.c new file mode 100644 index 0000000000..a97cc2307b --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/rooboard65.c @@ -0,0 +1,14 @@ +/* +Copyright 2021 +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 . +*/ +#include "rooboard65.h" diff --git a/keyboards/skippys_custom_pcs/rooboard65/rooboard65.h b/keyboards/skippys_custom_pcs/rooboard65/rooboard65.h new file mode 100644 index 0000000000..434d156688 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/rooboard65.h @@ -0,0 +1,32 @@ +/* +Copyright 2021 +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 . +*/ + +#pragma once + +#include "quantum.h" + +/* TF60 ANSI Keymap Definitions */ +#define LAYOUT_65_ansi( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3C, K3D, K3E, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K1E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, KC_NO, K3C, K3D, K3E }, \ + { K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, K49, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/skippys_custom_pcs/rooboard65/rules.mk b/keyboards/skippys_custom_pcs/rooboard65/rules.mk new file mode 100644 index 0000000000..a1a32c1e92 --- /dev/null +++ b/keyboards/skippys_custom_pcs/rooboard65/rules.mk @@ -0,0 +1,23 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency +F_CPU = 8000000 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi From c2bf039893c6f6f1692c5e470be635436634969c Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Sun, 24 Apr 2022 10:00:54 +0800 Subject: [PATCH 334/699] [Keyboard] Add missing KC_QUOT (#16925) --- keyboards/a_dux/keymaps/default/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/a_dux/keymaps/default/keymap.c b/keyboards/a_dux/keymaps/default/keymap.c index b58c9d447f..c15b596f8f 100644 --- a/keyboards/a_dux/keymaps/default/keymap.c +++ b/keyboards/a_dux/keymaps/default/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_split_3x5_2( KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, LT(3,KC_TAB), KC_LSFT, KC_SPC, LT(1,KC_ENT) ), From e1f6fa579af8eb9f0799f8fe9ba7a8947d1c2c69 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 24 Apr 2022 23:01:29 +1000 Subject: [PATCH 335/699] gergoplex: small cleanup (#16928) --- keyboards/gboards/gergoplex/gergoplex.h | 29 ++++++++++++------------- keyboards/gboards/gergoplex/rules.mk | 22 +++++++++++++------ 2 files changed, 29 insertions(+), 22 deletions(-) diff --git a/keyboards/gboards/gergoplex/gergoplex.h b/keyboards/gboards/gergoplex/gergoplex.h index 507072a376..eda21d2a94 100644 --- a/keyboards/gboards/gergoplex/gergoplex.h +++ b/keyboards/gboards/gergoplex/gergoplex.h @@ -21,8 +21,8 @@ extern i2c_status_t mcp23018_status; #define I2C_TIMEOUT 1000 -#define CPU_PRESCALE(n) (CLKPR = 0x80, CLKPR = (n)) -#define CPU_16MHz 0x00 + +#define XXX KC_NO // I2C aliases and register addresses (see "mcp23018.md") #define I2C_ADDR 0x20 // 0b0100000 @@ -41,16 +41,15 @@ uint8_t init_mcp23018(void); L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ L30, L31, L32, R30, R31, R32 \ - ) \ - { \ - {L04, L14, L24, KC_NO}, \ - {L03, L13, L23, L32}, \ - {L02, L12, L22, L31}, \ - {L01, L11, L21, L30}, \ - {L00, L10, L20, KC_NO}, \ - {R00, R10, R20, KC_NO}, \ - {R01, R11, R21, R30}, \ - {R02, R12, R22, R31}, \ - {R03, R13, R23, R32}, \ - {R04, R14, R24, KC_NO}, \ - } +) { \ + { L04, L14, L24, XXX }, \ + { L03, L13, L23, L32 }, \ + { L02, L12, L22, L31 }, \ + { L01, L11, L21, L30 }, \ + { L00, L10, L20, XXX }, \ + { R00, R10, R20, XXX }, \ + { R01, R11, R21, R30 }, \ + { R02, R12, R22, R31 }, \ + { R03, R13, R23, R32 }, \ + { R04, R14, R24, XXX } \ +} diff --git a/keyboards/gboards/gergoplex/rules.mk b/keyboards/gboards/gergoplex/rules.mk index e557d9f39a..5cd5a7721c 100644 --- a/keyboards/gboards/gergoplex/rules.mk +++ b/keyboards/gboards/gergoplex/rules.mk @@ -1,15 +1,23 @@ +# MCU name MCU = atmega32u4 +# Bootloader selection BOOTLOADER = atmel-dfu -CUSTOM_MATRIX = yes -MOUSEKEY_ENABLE = yes # Mouse keys -COMBO_ENABLE = yes -EXTRAKEY_ENABLE = yes -CONSOLE_ENABLE = no -NKRO_ENABLE = yes # Enable N-Key Rollover -COMMAND_ENABLE = yes +# Build Options +# change yes to no to disable +# BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +COMBO_ENABLE = yes +CUSTOM_MATRIX = yes LAYOUTS = split_3x5_3 From 0369fb004719abbde4904174de7ffff9ceb6717a Mon Sep 17 00:00:00 2001 From: tuvietnamm <64471705+tuvietnamm@users.noreply.github.com> Date: Mon, 25 Apr 2022 15:08:11 +1000 Subject: [PATCH 336/699] Fix backslash bug (#16935) --- keyboards/chickenman/ciel/ciel.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/chickenman/ciel/ciel.h b/keyboards/chickenman/ciel/ciel.h index ea2b566d98..0f898f97c8 100644 --- a/keyboards/chickenman/ciel/ciel.h +++ b/keyboards/chickenman/ciel/ciel.h @@ -54,7 +54,7 @@ k400, k401, k402, k407, k411, k413, k414 \ ) { \ { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ - { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, KC_NO, k414 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, KC_NO, k114 }, \ { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, KC_NO, k213, KC_NO}, \ { k300, KC_NO, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, KC_NO, k313, k314 }, \ { k400, k401, k402, KC_NO, KC_NO, KC_NO, KC_NO, k407, KC_NO, KC_NO, KC_NO, k411, KC_NO, k413, k414 } \ From 73688057f483e8e38cc970e5fe3ab0d04fa2217e Mon Sep 17 00:00:00 2001 From: Ryan Date: Mon, 25 Apr 2022 19:30:20 +1000 Subject: [PATCH 337/699] Add missing dead key LUTs for sendstring headers (#16929) --- quantum/keymap_extras/keymap_br_abnt2.h | 4 ++-- quantum/keymap_extras/keymap_italian.h | 10 ++++----- quantum/keymap_extras/sendstring_belgian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_bepo.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_br_abnt2.h | 20 ++++++++++++++++++ .../sendstring_canadian_multilingual.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_croatian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_czech.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_danish.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_dvorak_fr.h | 19 +++++++++++++++++ quantum/keymap_extras/sendstring_estonian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_finnish.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_fr_ch.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_french.h | 20 ++++++++++++++++++ .../keymap_extras/sendstring_french_afnor.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_french_osx.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_german.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_german_ch.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_german_osx.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_hungarian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_icelandic.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_latvian.h | 21 +++++++++++++++++++ quantum/keymap_extras/sendstring_norwegian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_portuguese.h | 20 ++++++++++++++++++ .../sendstring_portuguese_osx_iso.h | 20 ++++++++++++++++++ .../keymap_extras/sendstring_serbian_latin.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_slovak.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_slovenian.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_spanish.h | 20 ++++++++++++++++++ .../keymap_extras/sendstring_spanish_dvorak.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_swedish.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_turkish_f.h | 20 ++++++++++++++++++ quantum/keymap_extras/sendstring_turkish_q.h | 20 ++++++++++++++++++ .../sendstring_us_international.h | 2 +- 34 files changed, 628 insertions(+), 8 deletions(-) diff --git a/quantum/keymap_extras/keymap_br_abnt2.h b/quantum/keymap_extras/keymap_br_abnt2.h index e91718013a..b5892183be 100644 --- a/quantum/keymap_extras/keymap_br_abnt2.h +++ b/quantum/keymap_extras/keymap_br_abnt2.h @@ -87,8 +87,8 @@ #define BR_SCLN KC_SLSH // ; #define BR_SLSH KC_INT1 // / // Numpad -#define BR_PDOT KC_PCMM // . -#define BR_PCMM KC_PDOT // , +#define BR_PDOT KC_PCMM // . +#define BR_PCMM KC_PDOT // , /* Shifted symbols * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ diff --git a/quantum/keymap_extras/keymap_italian.h b/quantum/keymap_extras/keymap_italian.h index be495f85ba..ece60d06b7 100644 --- a/quantum/keymap_extras/keymap_italian.h +++ b/quantum/keymap_extras/keymap_italian.h @@ -140,12 +140,12 @@ * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ */ // Row 2 -#define IT_EURO ALGR(IT_E) // € -#define IT_LBRC ALGR(IT_EGRV) // [ -#define IT_RBRC ALGR(IT_PLUS) // ] +#define IT_EURO ALGR(IT_E) // € +#define IT_LBRC ALGR(IT_EGRV) // [ +#define IT_RBRC ALGR(IT_PLUS) // ] // Row 3 -#define IT_AT ALGR(IT_OGRV) // @ -#define IT_HASH ALGR(IT_AGRV) // # +#define IT_AT ALGR(IT_OGRV) // @ +#define IT_HASH ALGR(IT_AGRV) // # /* Shift+AltGr symbols * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ diff --git a/quantum/keymap_extras/sendstring_belgian.h b/quantum/keymap_extras/sendstring_belgian.h index 5e7218a2fa..34ca9514c8 100644 --- a/quantum/keymap_extras/sendstring_belgian.h +++ b/quantum/keymap_extras/sendstring_belgian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_bepo.h b/quantum/keymap_extras/sendstring_bepo.h index 8119cd9f54..0f0d5a2111 100644 --- a/quantum/keymap_extras/sendstring_bepo.h +++ b/quantum/keymap_extras/sendstring_bepo.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_br_abnt2.h b/quantum/keymap_extras/sendstring_br_abnt2.h index f2946e54b8..1ca2d28592 100644 --- a/quantum/keymap_extras/sendstring_br_abnt2.h +++ b/quantum/keymap_extras/sendstring_br_abnt2.h @@ -43,6 +43,26 @@ const uint8_t ascii_to_shift_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 0, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_canadian_multilingual.h b/quantum/keymap_extras/sendstring_canadian_multilingual.h index 3679a98c14..92b588c82e 100644 --- a/quantum/keymap_extras/sendstring_canadian_multilingual.h +++ b/quantum/keymap_extras/sendstring_canadian_multilingual.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_croatian.h b/quantum/keymap_extras/sendstring_croatian.h index 67f75992ae..bf51c81a88 100644 --- a/quantum/keymap_extras/sendstring_croatian.h +++ b/quantum/keymap_extras/sendstring_croatian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_czech.h b/quantum/keymap_extras/sendstring_czech.h index 94879dfd4e..6693999f51 100644 --- a/quantum/keymap_extras/sendstring_czech.h +++ b/quantum/keymap_extras/sendstring_czech.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 0, 1, 1, 0), }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_danish.h b/quantum/keymap_extras/sendstring_danish.h index 0ec5b108a5..6923063ce2 100644 --- a/quantum/keymap_extras/sendstring_danish.h +++ b/quantum/keymap_extras/sendstring_danish.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_dvorak_fr.h b/quantum/keymap_extras/sendstring_dvorak_fr.h index 98d0577afa..2f4f281794 100644 --- a/quantum/keymap_extras/sendstring_dvorak_fr.h +++ b/quantum/keymap_extras/sendstring_dvorak_fr.h @@ -42,6 +42,25 @@ const uint8_t ascii_to_shift_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 0, 1, 0, 0, 0), }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL diff --git a/quantum/keymap_extras/sendstring_estonian.h b/quantum/keymap_extras/sendstring_estonian.h index 24d853fb59..9ea2ab3f8f 100644 --- a/quantum/keymap_extras/sendstring_estonian.h +++ b/quantum/keymap_extras/sendstring_estonian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_finnish.h b/quantum/keymap_extras/sendstring_finnish.h index cf23483843..197836ba83 100644 --- a/quantum/keymap_extras/sendstring_finnish.h +++ b/quantum/keymap_extras/sendstring_finnish.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_fr_ch.h b/quantum/keymap_extras/sendstring_fr_ch.h index 2acce5663b..160a2efb05 100644 --- a/quantum/keymap_extras/sendstring_fr_ch.h +++ b/quantum/keymap_extras/sendstring_fr_ch.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_french.h b/quantum/keymap_extras/sendstring_french.h index ab65f28eb7..a37a5d314b 100644 --- a/quantum/keymap_extras/sendstring_french.h +++ b/quantum/keymap_extras/sendstring_french.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_french_afnor.h b/quantum/keymap_extras/sendstring_french_afnor.h index 690daaaf02..1408634a26 100644 --- a/quantum/keymap_extras/sendstring_french_afnor.h +++ b/quantum/keymap_extras/sendstring_french_afnor.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_french_osx.h b/quantum/keymap_extras/sendstring_french_osx.h index 6cadbac153..cc9b857cd0 100644 --- a/quantum/keymap_extras/sendstring_french_osx.h +++ b/quantum/keymap_extras/sendstring_french_osx.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_german.h b/quantum/keymap_extras/sendstring_german.h index 3445a0e5fb..69c7dd996e 100644 --- a/quantum/keymap_extras/sendstring_german.h +++ b/quantum/keymap_extras/sendstring_german.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_german_ch.h b/quantum/keymap_extras/sendstring_german_ch.h index 1e1327c511..b8f7471247 100644 --- a/quantum/keymap_extras/sendstring_german_ch.h +++ b/quantum/keymap_extras/sendstring_german_ch.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_german_osx.h b/quantum/keymap_extras/sendstring_german_osx.h index 03f54da2af..d25c8c0995 100644 --- a/quantum/keymap_extras/sendstring_german_osx.h +++ b/quantum/keymap_extras/sendstring_german_osx.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_hungarian.h b/quantum/keymap_extras/sendstring_hungarian.h index 29dc3ccb8c..9169ba2557 100644 --- a/quantum/keymap_extras/sendstring_hungarian.h +++ b/quantum/keymap_extras/sendstring_hungarian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_icelandic.h b/quantum/keymap_extras/sendstring_icelandic.h index 867eb8743c..b25a4e76e7 100644 --- a/quantum/keymap_extras/sendstring_icelandic.h +++ b/quantum/keymap_extras/sendstring_icelandic.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_latvian.h b/quantum/keymap_extras/sendstring_latvian.h index 61f788693c..bd73a01e48 100644 --- a/quantum/keymap_extras/sendstring_latvian.h +++ b/quantum/keymap_extras/sendstring_latvian.h @@ -19,9 +19,30 @@ #pragma once #include "keymap_latvian.h" +#include "quantum.h" // clang-format off +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 1, 0, 0, 0, 0, 1), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_norwegian.h b/quantum/keymap_extras/sendstring_norwegian.h index d3478f8301..28813da51f 100644 --- a/quantum/keymap_extras/sendstring_norwegian.h +++ b/quantum/keymap_extras/sendstring_norwegian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 0, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_portuguese.h b/quantum/keymap_extras/sendstring_portuguese.h index bec9b2c680..37db5f97aa 100644 --- a/quantum/keymap_extras/sendstring_portuguese.h +++ b/quantum/keymap_extras/sendstring_portuguese.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 0, 1, 0, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_portuguese_osx_iso.h b/quantum/keymap_extras/sendstring_portuguese_osx_iso.h index 1799347f30..f4ac1b37af 100644 --- a/quantum/keymap_extras/sendstring_portuguese_osx_iso.h +++ b/quantum/keymap_extras/sendstring_portuguese_osx_iso.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 0, 1, 0, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_serbian_latin.h b/quantum/keymap_extras/sendstring_serbian_latin.h index 40e2a9ea0c..7e19a62595 100644 --- a/quantum/keymap_extras/sendstring_serbian_latin.h +++ b/quantum/keymap_extras/sendstring_serbian_latin.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_slovak.h b/quantum/keymap_extras/sendstring_slovak.h index f48d30dcb1..c94cca1379 100644 --- a/quantum/keymap_extras/sendstring_slovak.h +++ b/quantum/keymap_extras/sendstring_slovak.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_slovenian.h b/quantum/keymap_extras/sendstring_slovenian.h index adf7ea47db..117af7e76d 100644 --- a/quantum/keymap_extras/sendstring_slovenian.h +++ b/quantum/keymap_extras/sendstring_slovenian.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_spanish.h b/quantum/keymap_extras/sendstring_spanish.h index b984a6f463..680e99ef4e 100644 --- a/quantum/keymap_extras/sendstring_spanish.h +++ b/quantum/keymap_extras/sendstring_spanish.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_spanish_dvorak.h b/quantum/keymap_extras/sendstring_spanish_dvorak.h index 87d582491c..ccf9458247 100644 --- a/quantum/keymap_extras/sendstring_spanish_dvorak.h +++ b/quantum/keymap_extras/sendstring_spanish_dvorak.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_swedish.h b/quantum/keymap_extras/sendstring_swedish.h index 8b07d42301..d451342992 100644 --- a/quantum/keymap_extras/sendstring_swedish.h +++ b/quantum/keymap_extras/sendstring_swedish.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_turkish_f.h b/quantum/keymap_extras/sendstring_turkish_f.h index 8d6dc778fd..cabd5c5dc5 100644 --- a/quantum/keymap_extras/sendstring_turkish_f.h +++ b/quantum/keymap_extras/sendstring_turkish_f.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_turkish_q.h b/quantum/keymap_extras/sendstring_turkish_q.h index 1a409c1e03..986f022333 100644 --- a/quantum/keymap_extras/sendstring_turkish_q.h +++ b/quantum/keymap_extras/sendstring_turkish_q.h @@ -63,6 +63,26 @@ const uint8_t ascii_to_altgr_lut[16] PROGMEM = { KCLUT_ENTRY(0, 0, 0, 1, 1, 1, 1, 0) }; +const uint8_t ascii_to_dead_lut[16] PROGMEM = { + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0), + KCLUT_ENTRY(1, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 0, 0), + KCLUT_ENTRY(0, 0, 0, 0, 0, 0, 1, 0) +}; + const uint8_t ascii_to_keycode_lut[128] PROGMEM = { // NUL SOH STX ETX EOT ENQ ACK BEL XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/quantum/keymap_extras/sendstring_us_international.h b/quantum/keymap_extras/sendstring_us_international.h index 53a5891fb1..d1694ff0f0 100644 --- a/quantum/keymap_extras/sendstring_us_international.h +++ b/quantum/keymap_extras/sendstring_us_international.h @@ -14,7 +14,7 @@ * along with this program. If not, see . */ -// Sendstring lookup tables for UK layouts +// Sendstring lookup tables for US International layouts #pragma once From 645359e5d06758172fe3b6c22ad62641af56b4ad Mon Sep 17 00:00:00 2001 From: Ryan Date: Tue, 26 Apr 2022 08:54:34 +1000 Subject: [PATCH 338/699] Joystick: Simplify report descriptor and clean up error messages (#16926) --- quantum/joystick.h | 8 ++++++ tmk_core/protocol/usb_descriptor.c | 43 +++++++++++++----------------- 2 files changed, 27 insertions(+), 24 deletions(-) diff --git a/quantum/joystick.h b/quantum/joystick.h index 002df3a6d9..5d81b14ef2 100644 --- a/quantum/joystick.h +++ b/quantum/joystick.h @@ -5,10 +5,18 @@ #ifndef JOYSTICK_BUTTON_COUNT # define JOYSTICK_BUTTON_COUNT 8 +#elif JOYSTICK_BUTTON_COUNT > 32 +# error Joystick feature only supports up to 32 buttons #endif #ifndef JOYSTICK_AXES_COUNT # define JOYSTICK_AXES_COUNT 4 +#elif JOYSTICK_AXES_COUNT > 6 +# error Joystick feature only supports up to 6 axes +#endif + +#if JOYSTICK_AXES_COUNT == 0 && JOYSTICK_BUTTON_COUNT == 0 +# error Joystick feature requires at least one axis or button #endif #ifndef JOYSTICK_AXES_RESOLUTION diff --git a/tmk_core/protocol/usb_descriptor.c b/tmk_core/protocol/usb_descriptor.c index 0b992ba6c5..063bd2c3f1 100644 --- a/tmk_core/protocol/usb_descriptor.c +++ b/tmk_core/protocol/usb_descriptor.c @@ -347,49 +347,44 @@ const USB_Descriptor_HIDReport_Datatype_t PROGMEM ConsoleReport[] = { #endif #ifdef JOYSTICK_ENABLE -# if JOYSTICK_AXES_COUNT == 0 && JOYSTICK_BUTTON_COUNT == 0 -# error Need at least one axis or button for joystick -# endif const USB_Descriptor_HIDReport_Datatype_t PROGMEM JoystickReport[] = { - HID_RI_USAGE_PAGE(8, 0x01), // Generic Desktop - HID_RI_USAGE(8, 0x04), // Joystick - HID_RI_COLLECTION(8, 0x01), // Application - HID_RI_COLLECTION(8, 0x00), // Physical + HID_RI_USAGE_PAGE(8, 0x01), // Generic Desktop + HID_RI_USAGE(8, 0x04), // Joystick + HID_RI_COLLECTION(8, 0x01), // Application + HID_RI_COLLECTION(8, 0x00), // Physical +# if JOYSTICK_AXES_COUNT > 0 HID_RI_USAGE_PAGE(8, 0x01), // Generic Desktop -# if JOYSTICK_AXES_COUNT >= 1 HID_RI_USAGE(8, 0x30), // X -# endif -# if JOYSTICK_AXES_COUNT >= 2 +# if JOYSTICK_AXES_COUNT > 1 HID_RI_USAGE(8, 0x31), // Y -# endif -# if JOYSTICK_AXES_COUNT >= 3 +# endif +# if JOYSTICK_AXES_COUNT > 2 HID_RI_USAGE(8, 0x32), // Z -# endif -# if JOYSTICK_AXES_COUNT >= 4 +# endif +# if JOYSTICK_AXES_COUNT > 3 HID_RI_USAGE(8, 0x33), // Rx -# endif -# if JOYSTICK_AXES_COUNT >= 5 +# endif +# if JOYSTICK_AXES_COUNT > 4 HID_RI_USAGE(8, 0x34), // Ry -# endif -# if JOYSTICK_AXES_COUNT >= 6 +# endif +# if JOYSTICK_AXES_COUNT > 5 HID_RI_USAGE(8, 0x35), // Rz -# endif -# if JOYSTICK_AXES_COUNT >= 1 - # if JOYSTICK_AXES_RESOLUTION == 8 +# endif +# if JOYSTICK_AXES_RESOLUTION == 8 HID_RI_LOGICAL_MINIMUM(8, -JOYSTICK_RESOLUTION), HID_RI_LOGICAL_MAXIMUM(8, JOYSTICK_RESOLUTION), HID_RI_REPORT_COUNT(8, JOYSTICK_AXES_COUNT), HID_RI_REPORT_SIZE(8, 0x08), - # else +# else HID_RI_LOGICAL_MINIMUM(16, -JOYSTICK_RESOLUTION), HID_RI_LOGICAL_MAXIMUM(16, JOYSTICK_RESOLUTION), HID_RI_REPORT_COUNT(8, JOYSTICK_AXES_COUNT), HID_RI_REPORT_SIZE(8, 0x10), - # endif +# endif HID_RI_INPUT(8, HID_IOF_DATA | HID_IOF_VARIABLE | HID_IOF_ABSOLUTE), # endif -# if JOYSTICK_BUTTON_COUNT >= 1 +# if JOYSTICK_BUTTON_COUNT > 0 HID_RI_USAGE_PAGE(8, 0x09), // Button HID_RI_USAGE_MINIMUM(8, 0x01), HID_RI_USAGE_MAXIMUM(8, JOYSTICK_BUTTON_COUNT), From 14d6c0b441e093d730a1a393715d8bf2bcbab471 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 27 Apr 2022 00:09:47 +1000 Subject: [PATCH 339/699] dactyl_manuform/3x5_3: fix layout (#16944) --- .../handwired/dactyl_manuform/3x5_3/3x5_3.h | 33 ++++---- .../handwired/dactyl_manuform/3x5_3/info.json | 80 ++++++++++--------- .../handwired/dactyl_manuform/3x5_3/rules.mk | 4 +- 3 files changed, 63 insertions(+), 54 deletions(-) diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h index f9a843d7d6..7db11618cf 100644 --- a/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h +++ b/keyboards/handwired/dactyl_manuform/3x5_3/3x5_3.h @@ -14,24 +14,25 @@ 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 . */ + #pragma once #include "dactyl_manuform.h" -#define LAYOUT_split_3x5_3(\ - L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ - L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ - L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ - L32, L33, L34, R30, R31, R32 \ - ) \ - { \ - { L00, L01, L02, L03, L04 }, \ - { L10, L11, L12, L13, L14 }, \ - { L20, L21, L22, L23, L24 }, \ - { KC_NO, KC_NO, L32, L33, L34 }, \ - \ - { R00, R01, R02, R03, R04 }, \ - { R10, R11, R12, R13, R14 }, \ - { R20, R21, R22, R23, R24 }, \ - { R30, R31, R32, KC_NO, KC_NO }, \ +#define XXX KC_NO + +#define LAYOUT_split_3x5_3( \ + L00, L01, L02, L03, L04, R00, R01, R02, R03, R04, \ + L10, L11, L12, L13, L14, R10, R11, R12, R13, R14, \ + L20, L21, L22, L23, L24, R20, R21, R22, R23, R24, \ + L32, L33, L34, R30, R31, R32 \ +) { \ + { L00, L01, L02, L03, L04 }, \ + { L10, L11, L12, L13, L14 }, \ + { L20, L21, L22, L23, L24 }, \ + { XXX, XXX, L32, L33, L34 }, \ + { R00, R01, R02, R03, R04 }, \ + { R10, R11, R12, R13, R14 }, \ + { R20, R21, R22, R23, R24 }, \ + { R30, R31, R32, XXX, XXX } \ } diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/info.json b/keyboards/handwired/dactyl_manuform/3x5_3/info.json index 4764226221..abf23aa45d 100644 --- a/keyboards/handwired/dactyl_manuform/3x5_3/info.json +++ b/keyboards/handwired/dactyl_manuform/3x5_3/info.json @@ -3,45 +3,51 @@ "url": "https://www.dlford.io/keyboard-build-guide-per-key-rgb-leds/", "maintainer": "dlford", "layouts": { - "LAYOUT": { + "LAYOUT_split_3x5_3": { "layout": [ - { "x": 0, "y": 0 }, - { "x": 1, "y": 0 }, - { "x": 2, "y": 0 }, - { "x": 3, "y": 0 }, - { "x": 4, "y": 0 }, - { "x": 0, "y": 1 }, - { "x": 1, "y": 1 }, - { "x": 2, "y": 1 }, - { "x": 3, "y": 1 }, - { "x": 4, "y": 1 }, - { "x": 0, "y": 2 }, - { "x": 1, "y": 2 }, - { "x": 2, "y": 2 }, - { "x": 3, "y": 2 }, - { "x": 4, "y": 2 }, - { "x": 2, "y": 3 }, - { "x": 3, "y": 3 }, - { "x": 4, "y": 3 }, + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, - { "x": 10, "y": 0 }, - { "x": 11, "y": 0 }, - { "x": 12, "y": 0 }, - { "x": 13, "y": 0 }, - { "x": 14, "y": 0 }, - { "x": 10, "y": 1 }, - { "x": 11, "y": 1 }, - { "x": 12, "y": 1 }, - { "x": 13, "y": 1 }, - { "x": 14, "y": 1 }, - { "x": 10, "y": 2 }, - { "x": 11, "y": 2 }, - { "x": 12, "y": 2 }, - { "x": 13, "y": 2 }, - { "x": 14, "y": 2 }, - { "x": 10, "y": 3 }, - { "x": 11, "y": 3 }, - { "x": 12, "y": 3 } + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 0, "y": 1}, + {"x": 1, "y": 1}, + {"x": 2, "y": 1}, + {"x": 3, "y": 1}, + {"x": 4, "y": 1}, + + {"x": 10, "y": 1}, + {"x": 11, "y": 1}, + {"x": 12, "y": 1}, + {"x": 13, "y": 1}, + {"x": 14, "y": 1}, + + {"x": 0, "y": 2}, + {"x": 1, "y": 2}, + {"x": 2, "y": 2}, + {"x": 3, "y": 2}, + {"x": 4, "y": 2}, + + {"x": 10, "y": 2}, + {"x": 11, "y": 2}, + {"x": 12, "y": 2}, + {"x": 13, "y": 2}, + {"x": 14, "y": 2}, + + {"x": 2, "y": 3}, + {"x": 3, "y": 3}, + {"x": 4, "y": 3}, + + {"x": 10, "y": 3}, + {"x": 11, "y": 3}, + {"x": 12, "y": 3} ] } } diff --git a/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk b/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk index 12812870e3..cdc7369c25 100644 --- a/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk +++ b/keyboards/handwired/dactyl_manuform/3x5_3/rules.mk @@ -1,10 +1,12 @@ -# Build Options # MCU name MCU = atmega32u4 # Bootloader selection BOOTLOADER = caterina +# Build Options +# change yes to no to disable +# BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = yes # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control From e99d6d582cd1ebdda35b2fda1cc170d6d24ad58b Mon Sep 17 00:00:00 2001 From: Ryan Date: Thu, 28 Apr 2022 09:11:41 +1000 Subject: [PATCH 340/699] Add Ukrainian keymap header (#16947) * Add Ukrainian keymap header * Docs --- docs/reference_keymap_extras.md | 1 + quantum/keymap_extras/keymap_ukrainian.h | 134 +++++++++++++++++++++++ 2 files changed, 135 insertions(+) create mode 100644 quantum/keymap_extras/keymap_ukrainian.h diff --git a/docs/reference_keymap_extras.md b/docs/reference_keymap_extras.md index ae3d54e4de..98be5c3669 100644 --- a/docs/reference_keymap_extras.md +++ b/docs/reference_keymap_extras.md @@ -74,6 +74,7 @@ These headers are located in [`quantum/keymap_extras/`](https://github.com/qmk/q |Swedish Pro (macOS, ISO) |`keymap_swedish_pro_osx_iso.h` | | |Turkish (F) |`keymap_turkish_f.h` |`sendstring_turkish_f.h` | |Turkish (Q) |`keymap_turkish_q.h` |`sendstring_turkish_q.h` | +|Ukrainian |`keymap_ukrainian.h` | | There are also a few which are not quite language-specific, but useful if you are not using a QWERTY layout: diff --git a/quantum/keymap_extras/keymap_ukrainian.h b/quantum/keymap_extras/keymap_ukrainian.h new file mode 100644 index 0000000000..e5cd80f3d2 --- /dev/null +++ b/quantum/keymap_extras/keymap_ukrainian.h @@ -0,0 +1,134 @@ +/* Copyright 2022 + * + * 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 . + */ + +#pragma once + +#include "keymap.h" + +// clang-format off + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ' │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ Й │ Ц │ У │ К │ Е │ Н │ Г │ Ш │ Щ │ З │ Х │ Ї │ \ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ Ф │ І │ В │ А │ П │ Р │ О │ Л │ Д │ Ж │ Є │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ Я │ Ч │ С │ М │ И │ Т │ Ь │ Б │ Ю │ . │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define UA_QUOT KC_GRV // ' +#define UA_1 KC_1 // 1 +#define UA_2 KC_2 // 2 +#define UA_3 KC_3 // 3 +#define UA_4 KC_4 // 4 +#define UA_5 KC_5 // 5 +#define UA_6 KC_6 // 6 +#define UA_7 KC_7 // 7 +#define UA_8 KC_8 // 8 +#define UA_9 KC_9 // 9 +#define UA_0 KC_0 // 0 +#define UA_MINS KC_MINS // - +#define UA_EQL KC_EQL // = +// Row 2 +#define UA_YOT KC_Q // Й +#define UA_TSE KC_W // Ц +#define UA_U KC_E // У +#define UA_KA KC_R // К +#define UA_E KC_T // Е +#define UA_EN KC_Y // Н +#define UA_HE KC_U // Г +#define UA_SHA KC_I // Ш +#define UA_SHCH KC_O // Щ +#define UA_ZE KC_P // З +#define UA_KHA KC_LBRC // Х +#define UA_YI KC_RBRC // Ї +#define UA_BSLS KC_BSLS // (backslash) +// Row 3 +#define UA_EF KC_A // Ф +#define UA_I KC_S // І +#define UA_VE KC_D // В +#define UA_A KC_F // А +#define UA_PE KC_G // П +#define UA_ER KC_H // Р +#define UA_O KC_J // О +#define UA_EL KC_K // Л +#define UA_DE KC_L // Д +#define UA_ZHE KC_SCLN // Ж +#define UA_YE KC_QUOT // Є +// Row 4 +#define UA_YA KC_Z // Я +#define UA_CHE KC_X // Ч +#define UA_ES KC_C // С +#define UA_EM KC_V // М +#define UA_Y KC_B // И +#define UA_TE KC_N // Т +#define UA_SOFT KC_M // Ь +#define UA_BE KC_COMM // Б +#define UA_YU KC_DOT // Ю +#define UA_DOT KC_SLSH // . + +/* Shifted symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ ₴ │ ! │ " │ № │ ; │ % │ : │ ? │ * │ ( │ ) │ _ │ + │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ / │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ │ │ │ │ │ │ │ │ │ , │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 1 +#define UA_HRYV S(UA_QUOT) // ₴ +#define UA_EXLM S(UA_1) // ! +#define UA_DQUO S(UA_2) // " +#define UA_NUM S(UA_3) // № +#define UA_SCLN S(UA_4) // ; +#define UA_PERC S(UA_5) // % +#define UA_COLN S(UA_6) // : +#define UA_QUES S(UA_7) // ? +#define UA_ASTR S(UA_8) // * +#define UA_LPRN S(UA_9) // ( +#define UA_RPRN S(UA_0) // ) +#define UA_UNDS S(UA_MINS) // _ +#define UA_PLUS S(UA_EQL) // + +// Row 2 +#define UA_SLSH S(UA_BSLS) // / +// Row 4 +#define UA_COMM S(UA_DOT) // , + +/* AltGr symbols + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ │ │ │ │ │ │ │ ґ │ │ │ │ │ │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ │ │ │ │ │ │ │ │ │ │ │ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ + * │ │ │ │ │ │ │ │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ + */ +// Row 2 +#define UA_GE ALGR(UA_HE) // ґ From 0edc0c05e164e6205f353c4039eed579f38bbdb6 Mon Sep 17 00:00:00 2001 From: XScorpion2 Date: Thu, 28 Apr 2022 12:35:27 -0500 Subject: [PATCH 341/699] [Keyboard] Small fix for Sol3 with only a slave touch bar (#16952) --- keyboards/rgbkb/common/touch_encoder.c | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) diff --git a/keyboards/rgbkb/common/touch_encoder.c b/keyboards/rgbkb/common/touch_encoder.c index 1e6c54e8eb..5f0e4f0cca 100644 --- a/keyboards/rgbkb/common/touch_encoder.c +++ b/keyboards/rgbkb/common/touch_encoder.c @@ -244,12 +244,21 @@ void touch_encoder_update_slave(slave_touch_status_t slave_state) { } void touch_encoder_update(int8_t transaction_id) { - if (!touch_initialized) return; #if TOUCH_UPDATE_INTERVAL > 0 if (!timer_expired(timer_read(), touch_update_timer)) return; touch_update_timer = timer_read() + TOUCH_UPDATE_INTERVAL; #endif + if (is_keyboard_master()) { + slave_touch_status_t slave_state; + if (transaction_rpc_exec(transaction_id, sizeof(bool), &touch_disabled, sizeof(slave_touch_status_t), &slave_state)) { + if (memcmp(&touch_slave_state, &slave_state, sizeof(slave_touch_status_t))) + touch_encoder_update_slave(slave_state); + } + } + + if (!touch_initialized) return; + read_register(QT_DETECTION_STATUS, &touch_raw[0], sizeof(touch_raw)); touch_processed[1] = touch_raw[1]; touch_processed[2] = touch_raw[2]; @@ -277,14 +286,6 @@ void touch_encoder_update(int8_t transaction_id) { if ((touch_raw[0] & SLIDER_BIT) && touch_processed[3] != touch_raw[3]) { touch_encoder_update_position(); } - - if (is_keyboard_master()) { - slave_touch_status_t slave_state; - if (transaction_rpc_exec(transaction_id, sizeof(bool), &touch_disabled, sizeof(slave_touch_status_t), &slave_state)) { - if (memcmp(&touch_slave_state, &slave_state, sizeof(slave_touch_status_t))) - touch_encoder_update_slave(slave_state); - } - } } void touch_encoder_calibrate(void) { From a2a9611f18cb437c612f204bb004f6fddcdbea82 Mon Sep 17 00:00:00 2001 From: Felix Jen Date: Thu, 28 Apr 2022 12:37:57 -0500 Subject: [PATCH 342/699] [Keyboard] Add Maker Keyboards Alexa Solder PCB (#16943) --- keyboards/lucid/alexa_solder/alexa_solder.c | 14 +++ keyboards/lucid/alexa_solder/alexa_solder.h | 32 ++++++ keyboards/lucid/alexa_solder/config.h | 103 ++++++++++++++++++ keyboards/lucid/alexa_solder/info.json | 86 +++++++++++++++ .../alexa_solder/keymaps/default/keymap.c | 39 +++++++ .../lucid/alexa_solder/keymaps/via/keymap.c | 57 ++++++++++ .../lucid/alexa_solder/keymaps/via/rules.mk | 1 + keyboards/lucid/alexa_solder/readme.md | 13 +++ keyboards/lucid/alexa_solder/rules.mk | 21 ++++ 9 files changed, 366 insertions(+) create mode 100644 keyboards/lucid/alexa_solder/alexa_solder.c create mode 100644 keyboards/lucid/alexa_solder/alexa_solder.h create mode 100644 keyboards/lucid/alexa_solder/config.h create mode 100644 keyboards/lucid/alexa_solder/info.json create mode 100644 keyboards/lucid/alexa_solder/keymaps/default/keymap.c create mode 100644 keyboards/lucid/alexa_solder/keymaps/via/keymap.c create mode 100644 keyboards/lucid/alexa_solder/keymaps/via/rules.mk create mode 100644 keyboards/lucid/alexa_solder/readme.md create mode 100644 keyboards/lucid/alexa_solder/rules.mk diff --git a/keyboards/lucid/alexa_solder/alexa_solder.c b/keyboards/lucid/alexa_solder/alexa_solder.c new file mode 100644 index 0000000000..446e4f063a --- /dev/null +++ b/keyboards/lucid/alexa_solder/alexa_solder.c @@ -0,0 +1,14 @@ +/* +Copyright 2022 +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 . +*/ +#include "alexa_solder.h" diff --git a/keyboards/lucid/alexa_solder/alexa_solder.h b/keyboards/lucid/alexa_solder/alexa_solder.h new file mode 100644 index 0000000000..3c835dc943 --- /dev/null +++ b/keyboards/lucid/alexa_solder/alexa_solder.h @@ -0,0 +1,32 @@ +/* +Copyright 2022 +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 . +*/ + +#pragma once + +#include "quantum.h" + +/* Alexa Keymap Definitions */ +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K43, K46, K48, K49, K4A, K4C, K4D, K4E \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, K43, KC_NO, KC_NO, K46, KC_NO, K48, K49, K4A, KC_NO, K4C, K4D, K4E } \ +} diff --git a/keyboards/lucid/alexa_solder/config.h b/keyboards/lucid/alexa_solder/config.h new file mode 100644 index 0000000000..63fd1f2e2d --- /dev/null +++ b/keyboards/lucid/alexa_solder/config.h @@ -0,0 +1,103 @@ +/* +Copyright 2022 + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7667 // Maker Keyboards +#define PRODUCT_ID 0x0006 // Alexa +#define DEVICE_VER 0x0001 // Version 1 +#define MANUFACTURER Maker Keyboards +#define PRODUCT Alexa + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* + * 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) + *å +*/ + +// Checked with Eagle Schematic +#define MATRIX_ROW_PINS { F4, F1, F7, F6, F5 } +#define MATRIX_COL_PINS { F0, B1, B2, B3, B7, D0, D1, D2, D3, D5, D7, B4, B5, B6, C6 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Define Indicator LED's */ +#define LED_CAPS_LOCK_PIN C7 + +/* Define less important options */ + +/* + * 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 + +/* + * 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 diff --git a/keyboards/lucid/alexa_solder/info.json b/keyboards/lucid/alexa_solder/info.json new file mode 100644 index 0000000000..319cb71206 --- /dev/null +++ b/keyboards/lucid/alexa_solder/info.json @@ -0,0 +1,86 @@ +{ + "keyboard_name": "Alexa Solder", + "url": "http://www.makerkeyboards.com", + "maintainer": "Maker Keyboards", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"x": 0, "y": 0}, + {"x": 1, "y": 0}, + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6, "y": 0}, + {"x": 7, "y": 0}, + {"x": 8, "y": 0}, + {"x": 9, "y": 0}, + {"x": 10, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + {"x": 15, "y": 0}, + + {"x": 0, "y": 1, "w": 1.5}, + {"x": 1.5, "y": 1}, + {"x": 2.5, "y": 1}, + {"x": 3.5, "y": 1}, + {"x": 4.5, "y": 1}, + {"x": 5.5, "y": 1}, + {"x": 6.5, "y": 1}, + {"x": 7.5, "y": 1}, + {"x": 8.5, "y": 1}, + {"x": 9.5, "y": 1}, + {"x": 10.5, "y": 1}, + {"x": 11.5, "y": 1}, + {"x": 12.5, "y": 1}, + {"x": 13.5, "y": 1, "w": 1.5}, + {"x": 15, "y": 1}, + + {"x": 0, "y": 2, "w": 1.75}, + {"x": 1.75, "y": 2}, + {"x": 2.75, "y": 2}, + {"x": 3.75, "y": 2}, + {"x": 4.75, "y": 2}, + {"x": 5.75, "y": 2}, + {"x": 6.75, "y": 2}, + {"x": 7.75, "y": 2}, + {"x": 8.75, "y": 2}, + {"x": 9.75, "y": 2}, + {"x": 10.75, "y": 2}, + {"x": 11.75, "y": 2}, + {"x": 12.75, "y": 2, "w": 2.25}, + {"x": 15, "y": 2}, + + {"x": 0, "y": 3, "w": 1.25}, + {"x": 1.25, "y": 3}, + {"x": 2.25, "y": 3}, + {"x": 3.25, "y": 3}, + {"x": 4.25, "y": 3}, + {"x": 5.25, "y": 3}, + {"x": 6.25, "y": 3}, + {"x": 7.25, "y": 3}, + {"x": 8.25, "y": 3}, + {"x": 9.25, "y": 3}, + {"x": 10.25, "y": 3}, + {"x": 11.25, "y": 3}, + {"x": 12.25, "y": 3, "w": 1.75}, + {"x": 14, "y": 3}, + {"x": 15, "y": 3}, + + {"x": 0, "y": 4, "w": 1.25}, + {"x": 1.25, "y": 4, "w": 1.25}, + {"x": 2.5, "y": 4, "w": 1.25}, + {"x": 3.75, "y": 4, "w": 2.25}, + {"x": 6, "y": 4, "w": 1.25}, + {"x": 7.25, "y": 4, "w": 2.75}, + {"x": 10, "y": 4, "w": 1.25}, + {"x": 11.25, "y":4, "w": 1.25}, + {"x": 13, "y": 4}, + {"x": 14, "y": 4}, + {"x": 15, "y": 4} + ] + } + } +} diff --git a/keyboards/lucid/alexa_solder/keymaps/default/keymap.c b/keyboards/lucid/alexa_solder/keymaps/default/keymap.c new file mode 100644 index 0000000000..89ab39deac --- /dev/null +++ b/keyboards/lucid/alexa_solder/keymaps/default/keymap.c @@ -0,0 +1,39 @@ +/* +Copyright 2022 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + KC_GESC, 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_DEL, KC_GRV, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, 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, KC_END, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, 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_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ) +}; diff --git a/keyboards/lucid/alexa_solder/keymaps/via/keymap.c b/keyboards/lucid/alexa_solder/keymaps/via/keymap.c new file mode 100644 index 0000000000..bbf11418c7 --- /dev/null +++ b/keyboards/lucid/alexa_solder/keymaps/via/keymap.c @@ -0,0 +1,57 @@ +/* +Copyright 2022 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + KC_GESC, 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_DEL, KC_GRV, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, 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, KC_END, + KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_all( + KC_GESC, 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_BSPC, KC_TRNS, KC_DEL, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE,RESET, KC_PGUP, + 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_PGDN, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + ), + + [_LAYER2] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [_LAYER3] = LAYOUT_all( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/lucid/alexa_solder/keymaps/via/rules.mk b/keyboards/lucid/alexa_solder/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/lucid/alexa_solder/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/lucid/alexa_solder/readme.md b/keyboards/lucid/alexa_solder/readme.md new file mode 100644 index 0000000000..3a16e58178 --- /dev/null +++ b/keyboards/lucid/alexa_solder/readme.md @@ -0,0 +1,13 @@ +# Alexa Solder PCB by Lucid + +The following is the QMK Firmware for the Alexa *Solder* PCB for [MakerKeyboards](http://www.makerkeyboards.com). +* Keyboard Maintainer: Lucid +* Hardware Supported: Alexa + +Make example for this keyboard (after setting up your build environment): + + make lucid/alexa_solder:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +Bootloader can be entered by pressing the reset button near the main microcontroller while the board is plugged in. Alternatively, it may be entered by holding the top-left-most switch and plugging in the PCB while held. diff --git a/keyboards/lucid/alexa_solder/rules.mk b/keyboards/lucid/alexa_solder/rules.mk new file mode 100644 index 0000000000..67f00abb1e --- /dev/null +++ b/keyboards/lucid/alexa_solder/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Processor frequency +F_CPU = 8000000 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 2275b35e924998645852ae5b85a982c369ebfd8c Mon Sep 17 00:00:00 2001 From: skeletonkbd <90203406+skeletonkbd@users.noreply.github.com> Date: Fri, 29 Apr 2022 03:16:21 +0900 Subject: [PATCH 343/699] [Keyboard] Add SkeletonNumPad (#16753) * add SkeletonNumPad keyboard * fix * fix * fixed info.json * Update keyboards/skeletonkbd/skeletonnumpad/rules.mk Co-authored-by: Ryan * Change RGBLIGHT_LIMIT_VAL Co-authored-by: Ryan --- keyboards/skeletonkbd/skeletonnumpad/config.h | 145 ++++++++++++++++++ .../skeletonkbd/skeletonnumpad/info.json | 10 ++ .../skeletonnumpad/keymaps/default/keymap.c | 56 +++++++ .../skeletonnumpad/keymaps/default/readme.md | 3 + .../skeletonnumpad/keymaps/via/keymap.c | 55 +++++++ .../skeletonnumpad/keymaps/via/readme.md | 3 + .../skeletonnumpad/keymaps/via/rules.mk | 1 + .../skeletonkbd/skeletonnumpad/readme.md | 27 ++++ keyboards/skeletonkbd/skeletonnumpad/rules.mk | 18 +++ .../skeletonnumpad/skeletonnumpad.c | 17 ++ .../skeletonnumpad/skeletonnumpad.h | 42 +++++ 11 files changed, 377 insertions(+) create mode 100644 keyboards/skeletonkbd/skeletonnumpad/config.h create mode 100644 keyboards/skeletonkbd/skeletonnumpad/info.json create mode 100644 keyboards/skeletonkbd/skeletonnumpad/keymaps/default/keymap.c create mode 100644 keyboards/skeletonkbd/skeletonnumpad/keymaps/default/readme.md create mode 100644 keyboards/skeletonkbd/skeletonnumpad/keymaps/via/keymap.c create mode 100644 keyboards/skeletonkbd/skeletonnumpad/keymaps/via/readme.md create mode 100644 keyboards/skeletonkbd/skeletonnumpad/keymaps/via/rules.mk create mode 100644 keyboards/skeletonkbd/skeletonnumpad/readme.md create mode 100644 keyboards/skeletonkbd/skeletonnumpad/rules.mk create mode 100644 keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.c create mode 100644 keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.h diff --git a/keyboards/skeletonkbd/skeletonnumpad/config.h b/keyboards/skeletonkbd/skeletonnumpad/config.h new file mode 100644 index 0000000000..3e93068b5a --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/config.h @@ -0,0 +1,145 @@ +/* +Copyright 2022 SkeletonKBD + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x736C +#define PRODUCT_ID 0x6E70 +#define DEVICE_VER 0x0001 +#define MANUFACTURER SkeletonKBD +#define PRODUCT SkeletonNumPad + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 4 + +/* + * 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 { B6, C6, C7, F7, F6 } +#define MATRIX_COL_PINS { D6, D7, B4, B5 } +#define UNUSED_PINS + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6 + +//#define LED_NUM_LOCK_PIN B0 +//#define LED_CAPS_LOCK_PIN B1 +//#define LED_SCROLL_LOCK_PIN B2 +//#define LED_COMPOSE_PIN B3 +//#define LED_KANA_PIN B4 + +//#define BACKLIGHT_PIN B7 +//#define BACKLIGHT_LEVELS 3 +//#define BACKLIGHT_BREATHING + +#define RGB_DI_PIN D4 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 17 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 120 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +# define RGBLIGHT_EFFECT_SNAKE +# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +# define RGBLIGHT_EFFECT_RGB_TEST +# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + +/* Bootmagic Lite key configuration */ +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/skeletonkbd/skeletonnumpad/info.json b/keyboards/skeletonkbd/skeletonnumpad/info.json new file mode 100644 index 0000000000..62f3861e5e --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "skeletonnumpad", + "url": "https://github.com/skeletonkbd/SkeletonNumPad", + "maintainer": "skeletonkbd", + "layouts": { + "LAYOUT_numpad_5x4": { + "layout": [{"label":"Num Lock", "x":0, "y":0}, {"label":"/", "x":1, "y":0}, {"label":"*", "x":2, "y":0}, {"label":"-", "x":3, "y":0}, {"label":"7", "x":0, "y":1}, {"label":"8", "x":1, "y":1}, {"label":"9", "x":2, "y":1}, {"label":"+", "x":3, "y":1, "h":2}, {"label":"4", "x":0, "y":2}, {"label":"5", "x":1, "y":2}, {"label":"6", "x":2, "y":2}, {"label":"1", "x":0, "y":3}, {"label":"2", "x":1, "y":3}, {"label":"3", "x":2, "y":3}, {"label":"Enter", "x":3, "y":3, "h":2}, {"label":"0", "x":0, "y":4, "w":2}, {"label":".", "x":2, "y":4}] + } + } +} \ No newline at end of file diff --git a/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/keymap.c b/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/keymap.c new file mode 100644 index 0000000000..0f6bd59563 --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/keymap.c @@ -0,0 +1,56 @@ +/* Copyright 2022 SkeletonKBD + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _L1, + _L2, + _L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_numpad_5x4( + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT + ), + [_L1] = LAYOUT_numpad_5x4( + 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 + ), + [_L2] = LAYOUT_numpad_5x4( + 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 + ), + [_L3] = LAYOUT_numpad_5x4( + 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 + ), +}; + diff --git a/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/readme.md b/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/readme.md new file mode 100644 index 0000000000..4a4ed5e7e9 --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/keymaps/default/readme.md @@ -0,0 +1,3 @@ +![SkeletonNumPad Layout Image](https://i.imgur.com/oHqihGI.png) + +# The default keymap for skeletonnumpad \ No newline at end of file diff --git a/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/keymap.c b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/keymap.c new file mode 100644 index 0000000000..d6add70ce1 --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/keymap.c @@ -0,0 +1,55 @@ +/* Copyright 2022 SkeletonKBD + * + * 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 . + */ +#include QMK_KEYBOARD_H + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _L1, + _L2, + _L3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT_numpad_5x4( + KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT + ), + [_L1] = LAYOUT_numpad_5x4( + 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 + ), + [_L2] = LAYOUT_numpad_5x4( + 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 + ), + [_L3] = LAYOUT_numpad_5x4( + 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 + ), +}; diff --git a/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/readme.md b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/readme.md new file mode 100644 index 0000000000..8ebc93b1f8 --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/readme.md @@ -0,0 +1,3 @@ +![SkeletonNumPad Layout Image](https://i.imgur.com/oHqihGI.png) + +# The default keymap for skeletonnumpad diff --git a/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/rules.mk b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/skeletonkbd/skeletonnumpad/readme.md b/keyboards/skeletonkbd/skeletonnumpad/readme.md new file mode 100644 index 0000000000..fc67c79e54 --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/readme.md @@ -0,0 +1,27 @@ +# SkeletonNumPad + +![skeletonnumpad](https://i.imgur.com/nWPda21h.jpeg) + +Simple NumPad with acrylic case. + +- Keyboard Maintainer: [SkeletonKBD](https://github.com/skeletonkbd/SkeletonNumPad) +- Hardware Supported: SkeletonNumPad +- Hardware Availability: https://github.com/skeletonkbd/SkeletonNumPad + +Make example for this keyboard (after setting up your build environment): + + make skeletonkbd/skeletonnumpad:default + +Flashing example for this keyboard: + + make skeletonkbd/skeletonnumpad:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +- **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +- **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +- **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/skeletonkbd/skeletonnumpad/rules.mk b/keyboards/skeletonkbd/skeletonnumpad/rules.mk new file mode 100644 index 0000000000..3ff392a61f --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.c b/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.c new file mode 100644 index 0000000000..38c78ca56e --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.c @@ -0,0 +1,17 @@ +/* Copyright 2022 SkeletonKBD + * + * 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 . + */ + +#include "skeletonnumpad.h" diff --git a/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.h b/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.h new file mode 100644 index 0000000000..9782090efe --- /dev/null +++ b/keyboards/skeletonkbd/skeletonnumpad/skeletonnumpad.h @@ -0,0 +1,42 @@ +/* Copyright 2022 SkeletonKBD + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT_numpad_5x4( \ + K00, K01, K02, K03, \ + K10, K11, K12, \ + K20, K21, K22, K13, \ + K30, K31, K32, \ + K40, K42, K33 \ +) { \ + { K00, K01, K02, K03 }, \ + { K10, K11, K12, K13 }, \ + { K20, K21, K22, KC_NO },\ + { K30, K31, K32, K33 }, \ + { K40, KC_NO, K42, KC_NO } \ +} From 0de08b09e7f756270374ae222561e9880918a71f Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 29 Apr 2022 09:36:48 +1000 Subject: [PATCH 344/699] Sendstring keycode overhaul (#16941) --- quantum/send_string_keycodes.h | 463 +++++++++++++++++++-------------- 1 file changed, 267 insertions(+), 196 deletions(-) diff --git a/quantum/send_string_keycodes.h b/quantum/send_string_keycodes.h index 7017e03d5a..b35bf66b7b 100644 --- a/quantum/send_string_keycodes.h +++ b/quantum/send_string_keycodes.h @@ -21,45 +21,53 @@ /* Punctuation */ #define X_ENT X_ENTER #define X_ESC X_ESCAPE -#define X_BSPC X_BSPACE +#define X_BSPC X_BACKSPACE #define X_SPC X_SPACE #define X_MINS X_MINUS #define X_EQL X_EQUAL -#define X_LBRC X_LBRACKET -#define X_RBRC X_RBRACKET -#define X_BSLS X_BSLASH +#define X_LBRC X_LEFT_BRACKET +#define X_RBRC X_RIGHT_BRACKET +#define X_BSLS X_BACKSLASH #define X_NUHS X_NONUS_HASH -#define X_SCLN X_SCOLON +#define X_SCLN X_SEMICOLON #define X_QUOT X_QUOTE #define X_GRV X_GRAVE #define X_COMM X_COMMA #define X_SLSH X_SLASH -#define X_NUBS X_NONUS_BSLASH +#define X_NUBS X_NONUS_BACKSLASH /* Lock Keys */ -#define X_CLCK X_CAPSLOCK -#define X_CAPS X_CAPSLOCK -#define X_SLCK X_SCROLLLOCK -#define X_NLCK X_NUMLOCK -#define X_LCAP X_LOCKING_CAPS -#define X_LNUM X_LOCKING_NUM -#define X_LSCR X_LOCKING_SCROLL +#define X_CAPS X_CAPS_LOCK +#define X_SCRL X_SCROLL_LOCK +#define X_NUM X_NUM_LOCK +#define X_LCAP X_LOCKING_CAPS_LOCK +#define X_LNUM X_LOCKING_NUM_LOCK +#define X_LSCR X_LOCKING_SCROLL_LOCK /* Commands */ -#define X_PSCR X_PSCREEN +#define X_PSCR X_PRINT_SCREEN #define X_PAUS X_PAUSE #define X_BRK X_PAUSE #define X_INS X_INSERT +#define X_PGUP X_PAGE_UP #define X_DEL X_DELETE -#define X_PGDN X_PGDOWN +#define X_PGDN X_PAGE_DOWN #define X_RGHT X_RIGHT #define X_APP X_APPLICATION #define X_EXEC X_EXECUTE #define X_SLCT X_SELECT #define X_AGIN X_AGAIN #define X_PSTE X_PASTE -#define X_ERAS X_ALT_ERASE +#define X_ERAS X_ALTERNATE_ERASE +#define X_SYRQ X_SYSTEM_REQUEST +#define X_CNCL X_CANCEL #define X_CLR X_CLEAR +#define X_PRIR X_PRIOR +#define X_RETN X_RETURN +#define X_SEPR X_SEPARATOR +#define X_CLAG X_CLEAR_AGAIN +#define X_CRSL X_CRSEL +#define X_EXSL X_EXSEL /* Keypad */ #define X_PSLS X_KP_SLASH @@ -81,30 +89,42 @@ #define X_PEQL X_KP_EQUAL #define X_PCMM X_KP_COMMA -/* Japanese specific */ -#define X_ZKHK X_GRAVE -#define X_RO X_INT1 -#define X_KANA X_INT2 -#define X_JYEN X_INT3 -#define X_HENK X_INT4 -#define X_MHEN X_INT5 - -/* Korean specific */ -#define X_HAEN X_LANG1 -#define X_HANJ X_LANG2 +/* Language Specific */ +#define X_INT1 X_INTERNATIONAL_1 +#define X_INT2 X_INTERNATIONAL_2 +#define X_INT3 X_INTERNATIONAL_3 +#define X_INT4 X_INTERNATIONAL_4 +#define X_INT5 X_INTERNATIONAL_5 +#define X_INT6 X_INTERNATIONAL_6 +#define X_INT7 X_INTERNATIONAL_7 +#define X_INT8 X_INTERNATIONAL_8 +#define X_INT9 X_INTERNATIONAL_9 +#define X_LNG1 X_LANGUAGE_1 +#define X_LNG2 X_LANGUAGE_2 +#define X_LNG3 X_LANGUAGE_3 +#define X_LNG4 X_LANGUAGE_4 +#define X_LNG5 X_LANGUAGE_5 +#define X_LNG6 X_LANGUAGE_6 +#define X_LNG7 X_LANGUAGE_7 +#define X_LNG8 X_LANGUAGE_8 +#define X_LNG9 X_LANGUAGE_9 /* Modifiers */ -#define X_LCTL X_LCTRL -#define X_LSFT X_LSHIFT -#define X_LOPT X_LALT -#define X_LCMD X_LGUI -#define X_LWIN X_LGUI -#define X_RCTL X_RCTRL -#define X_RSFT X_RSHIFT -#define X_ALGR X_RALT -#define X_ROPT X_RALT -#define X_RCMD X_RGUI -#define X_RWIN X_RGUI +#define X_LCTL X_LEFT_CTRL +#define X_LSFT X_LEFT_SHIFT +#define X_LALT X_LEFT_ALT +#define X_LOPT X_LEFT_ALT +#define X_LGUI X_LEFT_GUI +#define X_LCMD X_LEFT_GUI +#define X_LWIN X_LEFT_GUI +#define X_RCTL X_RIGHT_CTRL +#define X_RSFT X_RIGHT_SHIFT +#define X_RALT X_RIGHT_ALT +#define X_ALGR X_RIGHT_ALT +#define X_ROPT X_RIGHT_ALT +#define X_RGUI X_RIGHT_GUI +#define X_RCMD X_RIGHT_GUI +#define X_RWIN X_RIGHT_GUI /* Generic Desktop Page (0x01) */ #define X_PWR X_SYSTEM_POWER @@ -137,7 +157,7 @@ /* System Specific */ #define X_BRMU X_PAUSE -#define X_BRMD X_SCROLLLOCK +#define X_BRMD X_SCROLL_LOCK /* Mouse Keys */ #define X_MS_U X_MS_UP @@ -149,6 +169,9 @@ #define X_BTN3 X_MS_BTN3 #define X_BTN4 X_MS_BTN4 #define X_BTN5 X_MS_BTN5 +#define X_BTN6 X_MS_BTN6 +#define X_BTN7 X_MS_BTN7 +#define X_BTN8 X_MS_BTN8 #define X_WH_U X_MS_WH_UP #define X_WH_D X_MS_WH_DOWN #define X_WH_L X_MS_WH_LEFT @@ -158,157 +181,157 @@ #define X_ACL2 X_MS_ACCEL2 /* Keyboard/Keypad Page (0x07) */ -#define X_A 04 -#define X_B 05 -#define X_C 06 -#define X_D 07 -#define X_E 08 -#define X_F 09 -#define X_G 0a -#define X_H 0b -#define X_I 0c -#define X_J 0d -#define X_K 0e -#define X_L 0f -#define X_M 10 -#define X_N 11 -#define X_O 12 -#define X_P 13 -#define X_Q 14 -#define X_R 15 -#define X_S 16 -#define X_T 17 -#define X_U 18 -#define X_V 19 -#define X_W 1a -#define X_X 1b -#define X_Y 1c -#define X_Z 1d -#define X_1 1e -#define X_2 1f -#define X_3 20 -#define X_4 21 -#define X_5 22 -#define X_6 23 -#define X_7 24 -#define X_8 25 -#define X_9 26 -#define X_0 27 -#define X_ENTER 28 -#define X_ESCAPE 29 -#define X_BSPACE 2a -#define X_TAB 2b -#define X_SPACE 2c -#define X_MINUS 2d -#define X_EQUAL 2e -#define X_LBRACKET 2f -#define X_RBRACKET 30 -#define X_BSLASH 31 -#define X_NONUS_HASH 32 -#define X_SCOLON 33 -#define X_QUOTE 34 -#define X_GRAVE 35 -#define X_COMMA 36 -#define X_DOT 37 -#define X_SLASH 38 -#define X_CAPSLOCK 39 -#define X_F1 3a -#define X_F2 3b -#define X_F3 3c -#define X_F4 3d -#define X_F5 3e -#define X_F6 3f -#define X_F7 40 -#define X_F8 41 -#define X_F9 42 -#define X_F10 43 -#define X_F11 44 -#define X_F12 45 -#define X_PSCREEN 46 -#define X_SCROLLLOCK 47 -#define X_PAUSE 48 -#define X_INSERT 49 -#define X_HOME 4a -#define X_PGUP 4b -#define X_DELETE 4c -#define X_END 4d -#define X_PGDOWN 4e -#define X_RIGHT 4f -#define X_LEFT 50 -#define X_DOWN 51 -#define X_UP 52 -#define X_NUMLOCK 53 -#define X_KP_SLASH 54 -#define X_KP_ASTERISK 55 -#define X_KP_MINUS 56 -#define X_KP_PLUS 57 -#define X_KP_ENTER 58 -#define X_KP_1 59 -#define X_KP_2 5a -#define X_KP_3 5b -#define X_KP_4 5c -#define X_KP_5 5d -#define X_KP_6 5e -#define X_KP_7 5f -#define X_KP_8 60 -#define X_KP_9 61 -#define X_KP_0 62 -#define X_KP_DOT 63 -#define X_NONUS_BSLASH 64 -#define X_APPLICATION 65 -#define X_POWER 66 -#define X_KP_EQUAL 67 -#define X_F13 68 -#define X_F14 69 -#define X_F15 6a -#define X_F16 6b -#define X_F17 6c -#define X_F18 6d -#define X_F19 6e -#define X_F20 6f -#define X_F21 70 -#define X_F22 71 -#define X_F23 72 -#define X_F24 73 -#define X_EXECUTE 74 -#define X_HELP 75 -#define X_MENU 76 -#define X_SELECT 77 -#define X_STOP 78 -#define X_AGAIN 79 -#define X_UNDO 7a -#define X_CUT 7b -#define X_COPY 7c -#define X_PASTE 7d -#define X_FIND 7e -#define X__MUTE 7f -#define X__VOLUP 80 -#define X__VOLDOWN 81 -#define X_LOCKING_CAPS 82 -#define X_LOCKING_NUM 83 -#define X_LOCKING_SCROLL 84 +#define X_A 04 +#define X_B 05 +#define X_C 06 +#define X_D 07 +#define X_E 08 +#define X_F 09 +#define X_G 0a +#define X_H 0b +#define X_I 0c +#define X_J 0d +#define X_K 0e +#define X_L 0f +#define X_M 10 +#define X_N 11 +#define X_O 12 +#define X_P 13 +#define X_Q 14 +#define X_R 15 +#define X_S 16 +#define X_T 17 +#define X_U 18 +#define X_V 19 +#define X_W 1a +#define X_X 1b +#define X_Y 1c +#define X_Z 1d +#define X_1 1e +#define X_2 1f +#define X_3 20 +#define X_4 21 +#define X_5 22 +#define X_6 23 +#define X_7 24 +#define X_8 25 +#define X_9 26 +#define X_0 27 +#define X_ENTER 28 +#define X_ESCAPE 29 +#define X_BACKSPACE 2a +#define X_TAB 2b +#define X_SPACE 2c +#define X_MINUS 2d +#define X_EQUAL 2e +#define X_LEFT_BRACKET 2f +#define X_RIGHT_BRACKET 30 +#define X_BACKSLASH 31 +#define X_NONUS_HASH 32 +#define X_SEMICOLON 33 +#define X_QUOTE 34 +#define X_GRAVE 35 +#define X_COMMA 36 +#define X_DOT 37 +#define X_SLASH 38 +#define X_CAPS_LOCK 39 +#define X_F1 3a +#define X_F2 3b +#define X_F3 3c +#define X_F4 3d +#define X_F5 3e +#define X_F6 3f +#define X_F7 40 +#define X_F8 41 +#define X_F9 42 +#define X_F10 43 +#define X_F11 44 +#define X_F12 45 +#define X_PRINT_SCREEN 46 +#define X_SCROLL_LOCK 47 +#define X_PAUSE 48 +#define X_INSERT 49 +#define X_HOME 4a +#define X_PAGE_UP 4b +#define X_DELETE 4c +#define X_END 4d +#define X_PAGE_DOWN 4e +#define X_RIGHT 4f +#define X_LEFT 50 +#define X_DOWN 51 +#define X_UP 52 +#define X_NUM_LOCK 53 +#define X_KP_SLASH 54 +#define X_KP_ASTERISK 55 +#define X_KP_MINUS 56 +#define X_KP_PLUS 57 +#define X_KP_ENTER 58 +#define X_KP_1 59 +#define X_KP_2 5a +#define X_KP_3 5b +#define X_KP_4 5c +#define X_KP_5 5d +#define X_KP_6 5e +#define X_KP_7 5f +#define X_KP_8 60 +#define X_KP_9 61 +#define X_KP_0 62 +#define X_KP_DOT 63 +#define X_NONUS_BACKSLASH 64 +#define X_APPLICATION 65 +#define X_KB_POWER 66 +#define X_KP_EQUAL 67 +#define X_F13 68 +#define X_F14 69 +#define X_F15 6a +#define X_F16 6b +#define X_F17 6c +#define X_F18 6d +#define X_F19 6e +#define X_F20 6f +#define X_F21 70 +#define X_F22 71 +#define X_F23 72 +#define X_F24 73 +#define X_EXECUTE 74 +#define X_HELP 75 +#define X_MENU 76 +#define X_SELECT 77 +#define X_STOP 78 +#define X_AGAIN 79 +#define X_UNDO 7a +#define X_CUT 7b +#define X_COPY 7c +#define X_PASTE 7d +#define X_FIND 7e +#define X_KB_MUTE 7f +#define X_KB_VOLUME_UP 80 +#define X_KB_VOLUME_DOWN 81 +#define X_LOCKING_CAPS_LOCK 82 +#define X_LOCKING_NUM_LOCK 83 +#define X_LOCKING_SCROLL_LOCK 84 #define X_KP_COMMA 85 #define X_KP_EQUAL_AS400 86 -#define X_INT1 87 -#define X_INT2 88 -#define X_INT3 89 -#define X_INT4 8a -#define X_INT5 8b -#define X_INT6 8c -#define X_INT7 8d -#define X_INT8 8e -#define X_INT9 8f -#define X_LANG1 90 -#define X_LANG2 91 -#define X_LANG3 92 -#define X_LANG4 93 -#define X_LANG5 94 -#define X_LANG6 95 -#define X_LANG7 96 -#define X_LANG8 97 -#define X_LANG9 98 -#define X_ALT_ERASE 99 -#define X_SYSREQ 9a +#define X_INTERNATIONAL_1 87 +#define X_INTERNATIONAL_2 88 +#define X_INTERNATIONAL_3 89 +#define X_INTERNATIONAL_4 8a +#define X_INTERNATIONAL_5 8b +#define X_INTERNATIONAL_6 8c +#define X_INTERNATIONAL_7 8d +#define X_INTERNATIONAL_8 8e +#define X_INTERNATIONAL_9 8f +#define X_LANGUAGE_1 90 +#define X_LANGUAGE_2 91 +#define X_LANGUAGE_3 92 +#define X_LANGUAGE_4 93 +#define X_LANGUAGE_5 94 +#define X_LANGUAGE_6 95 +#define X_LANGUAGE_7 96 +#define X_LANGUAGE_8 97 +#define X_LANGUAGE_9 98 +#define X_ALTERNATE_ERASE 99 +#define X_SYSTEM_REQUEST 9a #define X_CANCEL 9b #define X_CLEAR 9c #define X_PRIOR 9d @@ -321,14 +344,14 @@ #define X_EXSEL a4 /* Modifiers */ -#define X_LCTRL e0 -#define X_LSHIFT e1 -#define X_LALT e2 -#define X_LGUI e3 -#define X_RCTRL e4 -#define X_RSHIFT e5 -#define X_RALT e6 -#define X_RGUI e7 +#define X_LEFT_CTRL e0 +#define X_LEFT_SHIFT e1 +#define X_LEFT_ALT e2 +#define X_LEFT_GUI e3 +#define X_RIGHT_CTRL e4 +#define X_RIGHT_SHIFT e5 +#define X_RIGHT_ALT e6 +#define X_RIGHT_GUI e7 /* Media and Function keys */ /* Generic Desktop Page (0x01) */ @@ -431,4 +454,52 @@ #define SS_RWIN(string) SS_RGUI(string) // DEPRECATED +#define X_BSPACE X_BACKSPACE +#define X_LBRACKET X_LEFT_BRACKET +#define X_RBRACKET X_RIGHT_BRACKET +#define X_BSLASH X_BACKSLASH +#define X_SCOLON X_SEMICOLON +#define X_CAPSLOCK X_CAPS_LOCK +#define X_PSCREEN X_PRINT_SCREEN +#define X_SCROLLLOCK X_SCROLL_LOCK +#define X_PGDOWN X_PAGE_DOWN +#define X_NUMLOCK X_NUM_LOCK +#define X_NONUS_BSLASH X_NONUS_BACKSLASH +#define X_POWER X_KB_POWER +#define X__MUTE X_KB_MUTE +#define X__VOLUP X_KB_VOLUME_UP +#define X__VOLDOWN X_KB_VOLUME_DOWN +#define X_LOCKING_CAPS X_LOCKING_CAPS_LOCK +#define X_LOCKING_NUM X_LOCKING_NUM_LOCK +#define X_LOCKING_SCROLL X_LOCKING_SCROLL_LOCK +#define X_LANG1 X_LANGUAGE_1 +#define X_LANG2 X_LANGUAGE_2 +#define X_LANG3 X_LANGUAGE_3 +#define X_LANG4 X_LANGUAGE_4 +#define X_LANG5 X_LANGUAGE_5 +#define X_LANG6 X_LANGUAGE_6 +#define X_LANG7 X_LANGUAGE_7 +#define X_LANG8 X_LANGUAGE_8 +#define X_LANG9 X_LANGUAGE_9 +#define X_ALT_ERASE X_ALTERNATE_ERASE +#define X_SYSREQ X_SYSTEM_REQUEST + +#define X_LCTRL X_LEFT_CTRL +#define X_LSHIFT X_LEFT_SHIFT +#define X_RCTRL X_RIGHT_CTRL +#define X_RSHIFT X_RIGHT_SHIFT + +#define X_ZKHK X_GRAVE +#define X_RO X_INTERNATIONAL_1 +#define X_KANA X_INTERNATIONAL_2 +#define X_JYEN X_INTERNATIONAL_3 +#define X_HENK X_INTERNATIONAL_4 +#define X_MHEN X_INTERNATIONAL_5 +#define X_HAEN X_LANGUAGE_1 +#define X_HANJ X_LANGUAGE_2 + +#define X_CLCK X_CAPS_LOCK +#define X_SLCK X_SCROLL_LOCK +#define X_NLCK X_NUM_LOCK + #define SS_LCTRL(string) SS_LCTL(string) From d458d4a596cd1fe8f0a21b9b70ab2e5cd190e7c7 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 29 Apr 2022 01:23:50 +0100 Subject: [PATCH 345/699] Move disable_jtag to platforms (#16960) --- platforms/avr/platform.c | 15 +++++++++++++-- quantum/keyboard.c | 14 -------------- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/platforms/avr/platform.c b/platforms/avr/platform.c index 3e35b4fe4c..37decb6ec8 100644 --- a/platforms/avr/platform.c +++ b/platforms/avr/platform.c @@ -16,6 +16,17 @@ #include "platform_deps.h" -void platform_setup(void) { - // do nothing +static void disable_jtag(void) { +// To use PF4-7 (PC2-5 on ATmega32A), disable JTAG by writing JTD bit twice within four cycles. +#if (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) + MCUCR |= _BV(JTD); + MCUCR |= _BV(JTD); +#elif defined(__AVR_ATmega32A__) + MCUCSR |= _BV(JTD); + MCUCSR |= _BV(JTD); +#endif +} + +void platform_setup(void) { + disable_jtag(); } diff --git a/quantum/keyboard.c b/quantum/keyboard.c index 63236f0b20..1dccd48e2f 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -211,17 +211,6 @@ static inline bool has_ghost_in_row(uint8_t row, matrix_row_t rowdata) { #endif -void disable_jtag(void) { -// To use PF4-7 (PC2-5 on ATmega32A), disable JTAG by writing JTD bit twice within four cycles. -#if (defined(__AVR_AT90USB646__) || defined(__AVR_AT90USB647__) || defined(__AVR_AT90USB1286__) || defined(__AVR_AT90USB1287__) || defined(__AVR_ATmega16U4__) || defined(__AVR_ATmega32U4__)) - MCUCR |= _BV(JTD); - MCUCR |= _BV(JTD); -#elif defined(__AVR_ATmega32A__) - MCUCSR |= _BV(JTD); - MCUCSR |= _BV(JTD); -#endif -} - /** \brief matrix_setup * * FIXME: needs doc @@ -263,9 +252,6 @@ __attribute__((weak)) void keyboard_post_init_kb(void) { * FIXME: needs doc */ void keyboard_setup(void) { -#ifndef NO_JTAG_DISABLE - disable_jtag(); -#endif print_set_sendchar(sendchar); #ifdef EEPROM_DRIVER eeprom_driver_init(); From 6e819945ed7d0084f22cbf4221eb166243c3ce07 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 29 Apr 2022 01:31:55 +0100 Subject: [PATCH 346/699] Remove some layout exceptions (#16957) * LAYOUT_JP -> LAYOUT_jp * LAYOUT_ANSI_DEFAULT -> LAYOUT * LAYOUT_reviung34_2uL -> LAYOUT_reviung34_2u --- data/schemas/definitions.jsonschema | 5 +-- keyboards/handwired/xealous/info.json | 23 +++++------- .../xealous/keymaps/default/keymap.c | 9 ++--- keyboards/handwired/xealous/rev1/rev1.h | 2 - keyboards/hhkb/jp/info.json | 2 +- keyboards/hhkb/jp/jp.h | 2 +- keyboards/hhkb/jp/keymaps/bakingpy/keymap.c | 4 +- keyboards/hhkb/jp/keymaps/default/keymap.c | 4 +- .../hhkb/jp/keymaps/default_mac/keymap.c | 4 +- keyboards/hhkb/jp/keymaps/dhertz/keymap.c | 6 +-- keyboards/hhkb/jp/keymaps/enoch_jp/keymap.c | 4 +- .../hhkb/jp/keymaps/halfqwerty_jp/keymap.c | 6 +-- keyboards/hhkb/jp/keymaps/rdg_jp/keymap.c | 6 +-- keyboards/hhkb/jp/keymaps/sh_jp/keymap.c | 10 ++--- keyboards/hhkb/jp/keymaps/via/keymap.c | 6 +-- keyboards/reviung/reviung34/info.json | 37 +++++++++++++++++++ .../{default_2uL => default_2u}/keymap.c | 8 ++-- .../{default_2uL => default_2u}/readme.md | 0 .../reviung34/keymaps/default_rgb2u/keymap.c | 8 ++-- keyboards/reviung/reviung34/reviung34.h | 2 +- 20 files changed, 86 insertions(+), 62 deletions(-) rename keyboards/reviung/reviung34/keymaps/{default_2uL => default_2u}/keymap.c (95%) rename keyboards/reviung/reviung34/keymaps/{default_2uL => default_2u}/readme.md (100%) diff --git a/data/schemas/definitions.jsonschema b/data/schemas/definitions.jsonschema index cca30af827..1bdfbbeb03 100644 --- a/data/schemas/definitions.jsonschema +++ b/data/schemas/definitions.jsonschema @@ -41,8 +41,6 @@ "LAYOUT_2x2uC", "LAYOUT_2x3uC", "LAYOUT_625uC", - "LAYOUT_ANSI_DEFAULT", - "LAYOUT_JP", "LAYOUT_ortho_3x12_1x2uC", "LAYOUT_ortho_4x12_1x2uC", "LAYOUT_ortho_4x12_1x2uL", @@ -57,8 +55,7 @@ "LAYOUT_planck_1x2uR", "LAYOUT_preonic_1x2uC", "LAYOUT_preonic_1x2uL", - "LAYOUT_preonic_1x2uR", - "LAYOUT_reviung34_2uL" + "LAYOUT_preonic_1x2uR" ] }, { diff --git a/keyboards/handwired/xealous/info.json b/keyboards/handwired/xealous/info.json index 7113c311f2..9cd634a210 100644 --- a/keyboards/handwired/xealous/info.json +++ b/keyboards/handwired/xealous/info.json @@ -3,7 +3,7 @@ "url": "", "maintainer": "alex-ong", "layouts": { - "LAYOUT_ANSI_DEFAULT": { + "LAYOUT": { "layout": [ {"label":"Esc", "x":0, "y":0}, {"label":"1", "x":1, "y":0}, @@ -25,11 +25,7 @@ {"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":"R", "x": 4.5,"y":1}, {"label":"T", "x":5.5, "y":1}, {"label":"Y", "x":6.5, "y":1}, @@ -73,15 +69,14 @@ {"label":"Ctrl", "x":0, "y":4, "w":1.25}, {"label":"Win", "x":1.25, "y":4, "w":1.25}, {"label":"Alt", "x":2.5, "y":4, "w":1.25}, - {"x":3.75, "y":4, "w":2.75}, - {"x":6.5, "y":4, "w":1.25}, + {"x":3.75, "y":4, "w":1.25}, + {"x":5, "y":4, "w":2.25}, - {"x":7.75, "y":4, "w":1.25}, - {"x":9, "y":4, "w":2.0}, - {"label":"Alt", "x":11, "y":4}, - {"label":"Win", "x":12, "y":4}, - {"label":"Menu", "x":13, "y":4}, - {"label":"Ctrl", "x":14, "y":4} + {"x":7.25, "y":4, "w":2.75}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Win", "x":11.25, "y":4, "w":1.25}, + {"label":"Menu", "x":12.5, "y":4, "w":1.25}, + {"label":"Ctrl", "x":13.75, "y":4, "w":1.25} ] } } diff --git a/keyboards/handwired/xealous/keymaps/default/keymap.c b/keyboards/handwired/xealous/keymaps/default/keymap.c index bf7caef622..c0ce72214d 100644 --- a/keyboards/handwired/xealous/keymaps/default/keymap.c +++ b/keyboards/handwired/xealous/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' */ /* Layer 0: Qwerty */ - [_QWERTY] = LAYOUT_split60( + [_QWERTY] = 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_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, FN, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Layer 1: Numpad */ - [_NUMPAD] = LAYOUT_split60( + [_NUMPAD] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, KC_NLCK, KC_PSLS, KC_PAST, KC_MINUS, _______, _______, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, KC_PLUS, _______, _______, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_BSPC, _______, _______, @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Layer 2: RAISE */ - [_FN] = LAYOUT_split60( + [_FN] = LAYOUT( KC_GRV, 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_CAPS, KC_PGUP, KC_UP, KC_PGDN, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, KC_LEFT, KC_DOWN,KC_RIGHT, _______, KC_HOME, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_INS, KC_DEL, _______, @@ -96,6 +96,3 @@ layer_state_t default_layer_state_set_kb(layer_state_t state) { return state; } #endif - -void led_set_keymap(uint8_t usb_led) { -} diff --git a/keyboards/handwired/xealous/rev1/rev1.h b/keyboards/handwired/xealous/rev1/rev1.h index 88e5ef376e..ce8d68c2c1 100644 --- a/keyboards/handwired/xealous/rev1/rev1.h +++ b/keyboards/handwired/xealous/rev1/rev1.h @@ -22,5 +22,3 @@ { R30, R31, R32, R33, R34, R35, XXX, XXX }, \ { R40, R41, R42, R43, R44, XXX, XXX, XXX } \ } - -#define LAYOUT_split60 LAYOUT diff --git a/keyboards/hhkb/jp/info.json b/keyboards/hhkb/jp/info.json index b9064880dd..ee9d1de53a 100644 --- a/keyboards/hhkb/jp/info.json +++ b/keyboards/hhkb/jp/info.json @@ -3,7 +3,7 @@ "url": "", "maintainer": "qmk", "layouts": { - "LAYOUT_JP": { + "LAYOUT_jp": { "layout": [ { "label": "Esc", "x": 0, "y": 0 }, { "label": "!", "x": 1, "y": 0 }, diff --git a/keyboards/hhkb/jp/jp.h b/keyboards/hhkb/jp/jp.h index a95796f25f..b243e5546c 100644 --- a/keyboards/hhkb/jp/jp.h +++ b/keyboards/hhkb/jp/jp.h @@ -2,7 +2,7 @@ #include "quantum.h" -#define LAYOUT_JP( \ +#define LAYOUT_jp( \ K02, K32, K62, K22, K12, K52, K72, KA2, K92, K82, KB2, KE2, KF2, KD2, KC2, \ K03, K63, K23, K13, K53, K73, KA3, K93, K83, KB3, KE3, KF3, KD3, \ K06, K66, K26, K16, K56, K76, KA6, K96, K86, KB6, KE6, KF6, KD6, KC6, \ diff --git a/keyboards/hhkb/jp/keymaps/bakingpy/keymap.c b/keyboards/hhkb/jp/keymaps/bakingpy/keymap.c index 04d79f9247..cea713dbf2 100644 --- a/keyboards/hhkb/jp/keymaps/bakingpy/keymap.c +++ b/keyboards/hhkb/jp/keymaps/bakingpy/keymap.c @@ -1,14 +1,14 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_DEL, 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_LCTL, 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_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, KC_BSLS, MO(1), KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_BSPC, KC_RGUI, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/default/keymap.c b/keyboards/hhkb/jp/keymaps/default/keymap.c index 1c7d677ccf..a704ee5647 100644 --- a/keyboards/hhkb/jp/keymaps/default/keymap.c +++ b/keyboards/hhkb/jp/keymaps/default/keymap.c @@ -29,14 +29,14 @@ */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_JYEN, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, 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_RO, KC_UP, KC_RSFT, MO(1), KC_ZKHK, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC, KC_HENK, KC_KANA, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/default_mac/keymap.c b/keyboards/hhkb/jp/keymaps/default_mac/keymap.c index 17127690f4..df08341fa4 100644 --- a/keyboards/hhkb/jp/keymaps/default_mac/keymap.c +++ b/keyboards/hhkb/jp/keymaps/default_mac/keymap.c @@ -29,14 +29,14 @@ */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_JYEN, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, 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_RO, KC_UP, KC_RSFT, MO(1), KC_GRV, KC_LALT, KC_LGUI, KC_MHEN, KC_SPC, KC_HENK, KC_RGUI, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/dhertz/keymap.c b/keyboards/hhkb/jp/keymaps/dhertz/keymap.c index 951af069b0..4c01457464 100644 --- a/keyboards/hhkb/jp/keymaps/dhertz/keymap.c +++ b/keyboards/hhkb/jp/keymaps/dhertz/keymap.c @@ -15,7 +15,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |NCt|| #|Alt|CmT|CmT| LyrSpc |CGv|Iso|Gui|CSL||Rig|Dow|Lef| * `-----------------------------------------------------------' */ - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_DEL,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, SRCH_CTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN,KC_QUOT,KC_NUHS, KC_ENT, @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | || ~| |CAD| | |CmH| | | || | | | * `-----------------------------------------------------------' */ - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( 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, CMD_SPC,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, @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | || ~| | | | | | | | ||Hom|PgD|End| * `-----------------------------------------------------------' */ - [2] = LAYOUT_JP( + [2] = LAYOUT_jp( KC_PWR, 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_INS,KC_DEL, KC_CAPS, DF(0), DF(1),KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_PSCR,KC_SLCK,KC_PAUS, KC_UP,KC_TRNS, KC_TRNS, KC_VOLD,KC_VOLU,KC_MUTE,KC_TRNS,KC_TRNS,KC_TRNS,KC_BSPC, KC_DEL,CMD_SFT_L,KC_LEFT,KC_RGHT,KC_TRNS,KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/enoch_jp/keymap.c b/keyboards/hhkb/jp/keymaps/enoch_jp/keymap.c index 4ebdcf86da..2bec6bb4c6 100644 --- a/keyboards/hhkb/jp/keymaps/enoch_jp/keymap.c +++ b/keyboards/hhkb/jp/keymaps/enoch_jp/keymap.c @@ -29,14 +29,14 @@ */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_GRAVE, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_DEL, 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, KC_BSLS, KC_BSPC, KC_ZKHK, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_BSPC, KC_RSFT, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( _______, 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_INS, KC_DEL, KC_CAPS, KC_MEDIA_PREV_TRACK, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_NEXT_TRACK, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PSCR, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_LEFT, KC_RGHT, _______, KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/halfqwerty_jp/keymap.c b/keyboards/hhkb/jp/keymaps/halfqwerty_jp/keymap.c index 0d4a24c60d..ebbe13393b 100644 --- a/keyboards/hhkb/jp/keymaps/halfqwerty_jp/keymap.c +++ b/keyboards/hhkb/jp/keymaps/halfqwerty_jp/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | ||Ctl|Alt|Cmd| | Spc | | | | ||Lft|Dwn|Rgh| `-----------------------------------------------------------' */ - [BASE] = LAYOUT_JP( + [BASE] = LAYOUT_jp( 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_JYEN, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { `-----------------------------------------------------------' */ - [HHKB] = LAYOUT_JP( + [HHKB] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | || | | | | | | | | || | | | `-----------------------------------------------------------' */ - [MIRROR] = LAYOUT_JP( + [MIRROR] = LAYOUT_jp( _______, KC_0, KC_9, KC_8, KC_7, KC_6, KC_5, KC_4, KC_3, KC_2, KC_1, _______, _______, _______, _______, _______, KC_P, KC_O, KC_I, KC_U, KC_Y, KC_T, KC_R, KC_E, KC_W, KC_Q, _______, _______, _______, KC_SCLN, KC_L, KC_K, KC_J, KC_H, KC_G, KC_F, KC_D, KC_S, KC_A, _______, _______, _______, diff --git a/keyboards/hhkb/jp/keymaps/rdg_jp/keymap.c b/keyboards/hhkb/jp/keymaps/rdg_jp/keymap.c index c893495efe..b4eec44547 100644 --- a/keyboards/hhkb/jp/keymaps/rdg_jp/keymap.c +++ b/keyboards/hhkb/jp/keymaps/rdg_jp/keymap.c @@ -28,21 +28,21 @@ enum */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [ZER] = LAYOUT_JP( + [ZER] = LAYOUT_jp( 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_INS, 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, CTL_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_GRV, 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_BSLS, KC_UP, KC_RSFT, MO(HDN), KC_LCTL, KC_LALT, KC_LGUI, MO(HDN), KC_SPC, SFT_BSP, MO(HDN), MO(OSY), KC_NO, KC_LEFT, KC_DOWN, KC_RGHT), - [HDN] = LAYOUT_JP( + [HDN] = LAYOUT_jp( KC_GRV, 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_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, _______, KC_TILD, KC_GRV, KC_BSLS, KC_PIPE, KC_MINS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TILD, KC_GRV, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, _______, KC_ENT, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_DEL, _______, _______, _______, KC_HOME, KC_PGDN, KC_END), - [OSY] = LAYOUT_JP( + [OSY] = LAYOUT_jp( _______, _______, _______, SCRNS3, SCRNS4, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/hhkb/jp/keymaps/sh_jp/keymap.c b/keyboards/hhkb/jp/keymaps/sh_jp/keymap.c index 097a017525..e13838007b 100644 --- a/keyboards/hhkb/jp/keymaps/sh_jp/keymap.c +++ b/keyboards/hhkb/jp/keymaps/sh_jp/keymap.c @@ -10,34 +10,34 @@ enum }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [DVOR] = LAYOUT_JP( + [DVOR] = LAYOUT_jp( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_LBRC, KC_RBRC, KC_JYEN, KC_BSPC, KC_TAB, KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y, KC_F, KC_G, KC_C, KC_R, KC_L, KC_SLSH, KC_EQL, KC_LCTL, KC_A, KC_O, KC_E, KC_U, KC_I, KC_D, KC_H, KC_T, KC_N, KC_S, KC_MINS, KC_BSLS, KC_ENT, KC_LSFT, KC_SCLN, KC_Q, KC_J, KC_K, KC_X, KC_B, KC_M, KC_W, KC_V, KC_Z, KC_RO, KC_UP, KC_RSFT, MO(FUNC), KC_ZKHK, KC_LALT, MO(NEW_CMD), MO(SYMB), MT(MOD_LSFT, KC_SPC), MO(SYMB), KC_TAB, KC_RGUI, TG(QWER), KC_LEFT, KC_DOWN, KC_RGHT), - [QWER] = LAYOUT_JP( + [QWER] = LAYOUT_jp( 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_JYEN, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, 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_RO, KC_UP, KC_RSFT, MO(FUNC), KC_ZKHK, KC_LALT, MO(NEW_CMD), MO(SYMB), MT(MOD_LSFT, KC_SPC), MO(SYMB), KC_TAB, KC_RGUI, _______, KC_LEFT, KC_DOWN, KC_RGHT), - [NEW_CMD] = LAYOUT_JP( + [NEW_CMD] = LAYOUT_jp( _______, LGUI(KC_1), LGUI(KC_2), LGUI(KC_3), LGUI(KC_4), LGUI(KC_5), LGUI(KC_6), LGUI(KC_7), LGUI(KC_8), LGUI(KC_9), LGUI(KC_0), _______, _______, _______, LGUI(KC_BSPC), _______, LGUI(KC_Q), LGUI(KC_W), LGUI(KC_E), LGUI(KC_R), LGUI(KC_T), LGUI(KC_Y), LGUI(KC_U), LGUI(KC_I), LGUI(KC_O), LGUI(KC_P), LGUI(KC_LBRC), LGUI(KC_RBRC), _______, LGUI(KC_A), LGUI(KC_S), LGUI(KC_D), LGUI(KC_F), LGUI(KC_G), LGUI(KC_H), LGUI(KC_J), LGUI(KC_K), LGUI(KC_L), _______, _______, _______, _______, LGUI(KC_LSFT), LGUI(KC_Z), LGUI(KC_X), LGUI(KC_C), LGUI(KC_V), LGUI(KC_B), LGUI(KC_N), LGUI(KC_M), LGUI(KC_COMM), LGUI(KC_DOT), LGUI(KC_SLSH), _______, _______, _______, _______, _______, _______, _______, _______, LGUI(KC_SPC), _______, _______, _______, _______, LGUI(KC_LEFT), LGUI(KC_DOWN), LGUI(KC_RGHT)), - [SYMB] = LAYOUT_JP( + [SYMB] = LAYOUT_jp( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, _______, LSFT(KC_LBRC), LSFT(KC_RBRC), _______, _______, _______, _______, _______, LSFT(KC_1), LSFT(KC_2), LSFT(KC_3), LSFT(KC_4), LSFT(KC_5), LSFT(KC_6), LSFT(KC_7), LSFT(KC_8), LSFT(KC_9), LSFT(KC_0), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), - [FUNC] = LAYOUT_JP( + [FUNC] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, diff --git a/keyboards/hhkb/jp/keymaps/via/keymap.c b/keyboards/hhkb/jp/keymaps/via/keymap.c index 64323309bb..8f23cfcd2d 100644 --- a/keyboards/hhkb/jp/keymaps/via/keymap.c +++ b/keyboards/hhkb/jp/keymaps/via/keymap.c @@ -29,21 +29,21 @@ */ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_JP( + [0] = LAYOUT_jp( 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_JYEN, 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_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, 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_RO, KC_UP, KC_RSFT, MO(1), KC_ZKHK, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC, KC_HENK, KC_KANA, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_JP( + [1] = LAYOUT_jp( KC_PWR, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_PWR, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, KC_PENT, _______, _______, _______, _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), - [2] = LAYOUT_JP( + [2] = LAYOUT_jp( 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/reviung/reviung34/info.json b/keyboards/reviung/reviung34/info.json index ecd89d4742..6e727a4ff3 100755 --- a/keyboards/reviung/reviung34/info.json +++ b/keyboards/reviung/reviung34/info.json @@ -40,6 +40,43 @@ {"label":"K34", "x":4, "y":3}, {"label":"K38", "x":6, "y":3, "w":2} ] + }, + "LAYOUT_reviung34_2u": { + "layout": [ + {"label":"K00", "x":0, "y":0}, + {"label":"K01", "x":1, "y":0}, + {"label":"K02", "x":2, "y":0}, + {"label":"K03", "x":3, "y":0}, + {"label":"K04", "x":4, "y":0}, + {"label":"K05", "x":6, "y":0}, + {"label":"K06", "x":7, "y":0}, + {"label":"K07", "x":8, "y":0}, + {"label":"K08", "x":9, "y":0}, + {"label":"K35", "x":10, "y":0}, + {"label":"K10", "x":0, "y":1}, + {"label":"K11", "x":1, "y":1}, + {"label":"K12", "x":2, "y":1}, + {"label":"K13", "x":3, "y":1}, + {"label":"K14", "x":4, "y":1}, + {"label":"K15", "x":6, "y":1}, + {"label":"K16", "x":7, "y":1}, + {"label":"K17", "x":8, "y":1}, + {"label":"K18", "x":9, "y":1}, + {"label":"K36", "x":10, "y":1}, + {"label":"K20", "x":0, "y":2}, + {"label":"K21", "x":1, "y":2}, + {"label":"K22", "x":2, "y":2}, + {"label":"K23", "x":3, "y":2}, + {"label":"K24", "x":4, "y":2}, + {"label":"K25", "x":6, "y":2}, + {"label":"K26", "x":7, "y":2}, + {"label":"K27", "x":8, "y":2}, + {"label":"K28", "x":9, "y":2}, + {"label":"K37", "x":10, "y":2}, + {"label":"K32", "x":2, "y":3}, + {"label":"K34", "x":3, "y":3, "w":2}, + {"label":"K38", "x":6, "y":3, "w":2} + ] } } } diff --git a/keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c similarity index 95% rename from keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c rename to keyboards/reviung/reviung34/keymaps/default_2u/keymap.c index 767c0ff4c6..9f586b333c 100755 --- a/keyboards/reviung/reviung34/keymaps/default_2uL/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c @@ -35,28 +35,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34_2uL( + [_BASE] = LAYOUT_reviung34_2u( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, KC_TAB, LOWER, RA_SP ), - [_LOWER] = LAYOUT_reviung34_2uL( + [_LOWER] = LAYOUT_reviung34_2u( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34_2uL( + [_RAISE] = LAYOUT_reviung34_2u( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34_2uL( + [_ADJUST] = LAYOUT_reviung34_2u( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung34/keymaps/default_2uL/readme.md b/keyboards/reviung/reviung34/keymaps/default_2u/readme.md similarity index 100% rename from keyboards/reviung/reviung34/keymaps/default_2uL/readme.md rename to keyboards/reviung/reviung34/keymaps/default_2u/readme.md diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c index f4f1d3be50..d5a5a2223b 100755 --- a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c @@ -34,28 +34,28 @@ enum layer_names { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_reviung34_2uL( + [_BASE] = LAYOUT_reviung34_2u( CT_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, SF_Z, AL_X, KC_C, KC_V, KC_B, KC_N, KC_M, CT_CM, AL_DT, SF_SS, LOWER, KC_SPC, RAISE ), - [_LOWER] = LAYOUT_reviung34_2uL( + [_LOWER] = LAYOUT_reviung34_2u( KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_SCLN, KC_LSFT, KC_ESC, KC_LGUI, KC_LALT, KC_QUOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_BSPC, _______, _______, _______ ), - [_RAISE] = LAYOUT_reviung34_2uL( + [_RAISE] = LAYOUT_reviung34_2u( 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_LBRC, KC_RBRC, KC_BSLS, XXXXXXX, XXXXXXX, KC_GRV, KC_TILD, KC_COLN, KC_LSFT, KC_ESC, KC_RGUI, KC_LALT, KC_DQUO, KC_TAB, XXXXXXX, KC_RCTL, KC_RALT, KC_DEL, _______, _______, _______ ), - [_ADJUST] = LAYOUT_reviung34_2uL( + [_ADJUST] = LAYOUT_reviung34_2u( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, diff --git a/keyboards/reviung/reviung34/reviung34.h b/keyboards/reviung/reviung34/reviung34.h index 8385e5c8c2..1ab783ec36 100755 --- a/keyboards/reviung/reviung34/reviung34.h +++ b/keyboards/reviung/reviung34/reviung34.h @@ -38,7 +38,7 @@ { KC_NO, KC_NO, K32, K33, K34, K35, K36, K37, K38 } \ } -#define LAYOUT_reviung34_2uL( \ +#define LAYOUT_reviung34_2u( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K35, \ K10, K11, K12, K13, K14, K15, K16, K17, K18, K36, \ K20, K21, K22, K23, K24, K25, K26, K27, K28, K37, \ From ff4a6a2fd7301ad04dd89e6beadb1f36677215c3 Mon Sep 17 00:00:00 2001 From: Nicholas Granado Date: Thu, 28 Apr 2022 23:58:22 -0700 Subject: [PATCH 347/699] [Keymap] Add keymap for kinesis advantage (#16862) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/kinesis/keymaps/heatxsink/keymap.c | 228 ++++++++++++++++++ keyboards/kinesis/keymaps/heatxsink/readme.md | 165 +++++++++++++ keyboards/kinesis/keymaps/heatxsink/rules.mk | 5 + 3 files changed, 398 insertions(+) create mode 100644 keyboards/kinesis/keymaps/heatxsink/keymap.c create mode 100644 keyboards/kinesis/keymaps/heatxsink/readme.md create mode 100644 keyboards/kinesis/keymaps/heatxsink/rules.mk diff --git a/keyboards/kinesis/keymaps/heatxsink/keymap.c b/keyboards/kinesis/keymaps/heatxsink/keymap.c new file mode 100644 index 0000000000..1f49c4622c --- /dev/null +++ b/keyboards/kinesis/keymaps/heatxsink/keymap.c @@ -0,0 +1,228 @@ +/* Copyright 2022 Nicholas Granado + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum layer_names { + _DEFAULT, + _QWERTY, + _COLEMAK_MOD_DH, + _WORKMAN, + _KEYPAD, + _LAYERS, +}; + +#define DEFAULT DF(_DEFAULT) +#define QWERTY TO(_QWERTY) +#define CMMDH TO(_COLEMAK_MOD_DH) +#define WM TO(_WORKMAN) +#define KEYPAD TO(_KEYPAD) +#define LAYERS OSL(_LAYERS) +#define HCTLESC CTL_T(KC_ESC) + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_DEFAULT] = LAYOUT( + // LHAND + KC_ESC ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 , + KC_EQL ,KC_1 ,KC_2 ,KC_3 ,KC_4 ,KC_5 , + KC_TAB ,_______,_______,_______,_______,_______, + HCTLESC,_______,_______,_______,_______,_______, + KC_LSPO,_______,_______,_______,_______,_______, + KC_GRV ,LAYERS ,KC_LEFT,KC_RGHT, + // LTHUMB + KC_LALT,KC_LCTL, + KC_HOME, + KC_BSPC,KC_DEL ,KC_END , + // RHAND + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR,KC_SLCK,KC_PAUS,KEYPAD ,RESET , + KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, + _______,_______,_______,_______,_______,KC_BSLS, + _______,_______,_______,_______,_______,KC_QUOT, + _______,_______,_______,_______,_______,KC_RSPC, + KC_UP ,KC_DOWN,KC_LBRC,KC_RBRC, + // RTHUMB + KC_RCTL,KC_LGUI, + KC_PGUP, + KC_PGDN,KC_ENT ,KC_SPC + ), + + [_QWERTY] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,KC_Q ,KC_W ,KC_E ,KC_R ,KC_T , + _______,KC_A ,KC_S ,KC_D ,KC_F ,KC_G , + _______,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B , + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,_______, + KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,_______, + KC_N ,KC_M ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_COLEMAK_MOD_DH] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,KC_Q ,KC_W ,KC_F ,KC_P ,KC_B, + _______,KC_A ,KC_R ,KC_S ,KC_T ,KC_G, + _______,KC_Z ,KC_X ,KC_C ,KC_D ,KC_V, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_J ,KC_L ,KC_U ,KC_Y ,KC_SCLN,_______, + KC_M ,KC_N ,KC_E ,KC_I ,KC_O ,_______, + KC_K ,KC_H ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_WORKMAN] = LAYOUT( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,KC_Q ,KC_D ,KC_R ,KC_W ,KC_B, + _______,KC_A ,KC_S ,KC_H ,KC_T ,KC_G, + _______,KC_Z ,KC_X ,KC_M ,KC_C ,KC_V, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + KC_J ,KC_F ,KC_U ,KC_P ,KC_SCLN,_______, + KC_Y ,KC_N ,KC_E ,KC_O ,KC_I ,_______, + KC_K ,KC_L ,KC_COMM,KC_DOT ,KC_SLSH,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), + + [_KEYPAD] = LAYOUT ( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,KC_MUTE,KC_VOLD,KC_VOLU,_______, + _______,KC_MSTP,KC_MPRV,KC_MPLY,KC_MNXT,KC_MSEL, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,KC_NLCK,KC_PEQL,KC_PSLS,KC_PAST,_______, + _______,KC_P7, KC_P8, KC_P9, KC_PMNS,_______, + _______,KC_P4, KC_P5, KC_P6, KC_PPLS,_______, + _______,KC_P1, KC_P2, KC_P3, KC_PENT,_______, + KC_LPRN,KC_RPRN,KC_PDOT,KC_PENT, + // RTHUMB + _______,_______, + _______, + _______,KC_PENT,KC_P0 + ), + + [_LAYERS] = LAYOUT ( + // LHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,QWERTY ,CMMDH ,WM ,KEYPAD ,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // LTHUMB + _______,_______, + _______, + _______,_______,_______, + + // RHAND + _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______,_______,_______, + _______,_______,_______,_______, + // RTHUMB + _______,_______, + _______, + _______,_______,_______ + ), +}; + +layer_state_t layer_state_set_user(layer_state_t state) { + writePinHigh(LED_NUM_LOCK_PIN); + writePinHigh(LED_SCROLL_LOCK_PIN); + writePinHigh(LED_COMPOSE_PIN); + writePinHigh(LED_CAPS_LOCK_PIN); + switch (get_highest_layer(state)) { + case _QWERTY: + // Caps Lock Lit + writePinLow(LED_CAPS_LOCK_PIN); + break; + case _COLEMAK_MOD_DH: + // Num Lock Lit + writePinLow(LED_NUM_LOCK_PIN); + break; + case _WORKMAN: + // Scroll Lock Lit + writePinLow(LED_SCROLL_LOCK_PIN); + break; + case _KEYPAD: + // Compose Lit + writePinLow(LED_COMPOSE_PIN); + break; + case _LAYERS: + // All LEDs Lit + writePinLow(LED_SCROLL_LOCK_PIN); + writePinLow(LED_NUM_LOCK_PIN); + writePinLow(LED_CAPS_LOCK_PIN); + writePinLow(LED_COMPOSE_PIN); + break; + } + return state; +} + +bool led_update_user(led_t led_state) { + // disable led_update_kb() so that we do not override layer indicators + return false; +} + diff --git a/keyboards/kinesis/keymaps/heatxsink/readme.md b/keyboards/kinesis/keymaps/heatxsink/readme.md new file mode 100644 index 0000000000..83a2b55854 --- /dev/null +++ b/keyboards/kinesis/keymaps/heatxsink/readme.md @@ -0,0 +1,165 @@ +# heatxsink's keymap for kinesis advantage w/ kinx + +## my keymap has three objectives ... +1. Make it easy to add keyboard layouts (layers). +2. Easy to swap between keyboard layouts (layers). +3. Use LED indicators on the kinX controller to provide feedback as to what layer is selected. + +## layer description +0. DEFAULT (function key row, number row, left/right gutter keys, and thumb keys) +1. QWERTY +2. CMMDH [Colemak Mod-DH](https://colemakmods.github.io/mod-dh/) +3. WM [Workman](https://workmanlayout.org/) +3. Keypad (number pad on the right, media keys on the left) + +## layers +``` +Keymap: DEFAULT +Description: keys separated by "/" tap for first, hold for second; uses Space Cadet Shifts + + ,-------------------------------------------------------------------------------------------------------------------. + | Esc | F1 | F2 | F3 | F4 | F5 | F6 | F8 | F9 | F10 | F12 | PSCR | SLCK | PAUS |KEYPAD| BOOT | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | =+ | 1! | 2@ | 3# | 4$ | 5% | | 6^ | 7& | 8* | 9( | 0) | -_ | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | Tab | | | | | | | | | | | | \| | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + |ESC/CTRL| | | | | | | | | | | | '" | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + |SC_Shift| | | | | | | | | | | |SC_Shift| + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | `~ |LAYERS| Left | Right| | Up | Down | [{ | ]} | + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | ALT | CTRL | | CTRL | GUI | + ,------|------|------| |------+------+------. + | | | Home | | PgUp | | | + | BkSp | Del |------| |------|Return| Space| + | | | End | | PgDn | | | + `--------------------' `--------------------' + +Keymap: LAYERS +Description: OSL that allows for easy switching between layers. + + ,-------------------------------------------------------------------------------------------------------------------. + | | | | | | | | | | | | | | | | | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | |QWERTY|CMMDH |WM |KEYPAD| | | | | | | | | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | | | | | | | | | | | | | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | | | | | | | | | | | | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | | | | | | | | | | | | | + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | | | | | | | | | | + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' + +Keymap: QWERTY + + ,-------------------------------------------------------------------------------------------------------------------. + | | | | | | | | | | | | | | | | | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | | | | | | | | | | | | | | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | | Q | W | E | R | T | | Y | U | I | O | P | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | A | S | D | F | G | | H | J | K | L | ;: | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | Z | X | C | V | B | | N | M | ,. | .> | /? | | + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | | | | | | | | | | + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' + +Keymap: CMMDH (Colemak Mod-DH) + + ,-------------------------------------------------------------------------------------------------------------------. + | | | | | | | | | | | | | | | | | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | | | | | | | | | | | | | | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | | Q | W | F | P | B | | J | L | U | Y | ;: | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | A | R | S | T | G | | M | N | E | I | O | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | Z | X | C | D | V | | K | H | ,. | .> | /? | | + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | | | | | | | | | | + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' + +Keymap: WM (Workman) + + ,-------------------------------------------------------------------------------------------------------------------. + | | | | | | | | | | | | | | | | | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | | | | | | | | | | | | | | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | | Q | D | R | W | B | | J | F | U | P | ;: | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | A | S | H | T | G | | Y | N | E | O | I | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | Z | X | M | C | V | | K | L | ,. | .> | /? | | + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | | | | | | | | | | + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------| | | + | | | | | | | | + `--------------------' `--------------------' + +Keymap: KEYPAD + + ,-------------------------------------------------------------------------------------------------------------------. + | | | | | | | | | | | | | | | | | + |--------+------+------+------+------+------+---------------------------+------+------+------+------+------+--------| + | | | | | | | | |NUMLCK| = | / |PASTE | | + |--------+------+------+------+------+------| +------+------+------+------+------+--------| + | | | MUTE | VOL- | VOL+ | | | | 7 | 8 | 9 | - | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | STOP | PREV | PLAY | NEXT |SELECT| | | 4 | 5 | 6 | + | | + |--------+------+------+------+------+------| |------+------+------+------+------+--------| + | | | | | | | | | 1 | 2 | 3 | ENTER| | + `--------+------+------+------+------+------' `------+------+------+------+------+--------' + | | | | | | ( | ) | . | ENTER| + `---------------------------' `---------------------------' + ,-------------. ,-------------. + | | | | | | + ,------|------|------| |------+------+------. + | | | | | | | | + | | |------| |------|ENTER | 0 | + | | | | | | | | + `--------------------' `--------------------' +``` +## requirements +* K500 or K600 Kinesis Advantage MPC or Advantage 2. +* [kinx project / stapelberg controller](https://github.com/kinx-project/kint) + +## shoutout(s) +* `stapelberg` self explanitory +* `jwon` for his LED indicator code +* `tuesdayjohn` for how he did layers + diff --git a/keyboards/kinesis/keymaps/heatxsink/rules.mk b/keyboards/kinesis/keymaps/heatxsink/rules.mk new file mode 100644 index 0000000000..f8c1a24cca --- /dev/null +++ b/keyboards/kinesis/keymaps/heatxsink/rules.mk @@ -0,0 +1,5 @@ +BOOTMAGIC_ENABLE = no +MOUSEKEY_ENABLE = no +EXTRAKEY_ENABLE = yes +NKRO_ENABLE = yes +SLEEP_LED_ENABLE = yes From ef8db9f1040f139e0c30db853dc4f5b61d7dee77 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Fri, 29 Apr 2022 07:58:55 +0100 Subject: [PATCH 348/699] Remove ARM pgm_read_word workaround in rgblight (#16961) --- quantum/rgblight/rgblight.c | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/quantum/rgblight/rgblight.c b/quantum/rgblight/rgblight.c index cc856a0e86..e5d3a98bea 100644 --- a/quantum/rgblight/rgblight.c +++ b/quantum/rgblight/rgblight.c @@ -559,12 +559,8 @@ void rgblight_sethsv_eeprom_helper(uint8_t hue, uint8_t sat, uint8_t val, bool w // static gradient uint8_t delta = rgblight_config.mode - rgblight_status.base_mode; bool direction = (delta % 2) == 0; -# ifdef __AVR__ - // probably due to how pgm_read_word is defined for ARM, but the ARM compiler really hates this line - uint8_t range = pgm_read_word(&RGBLED_GRADIENT_RANGES[delta / 2]); -# else - uint8_t range = RGBLED_GRADIENT_RANGES[delta / 2]; -# endif + + uint8_t range = pgm_read_byte(&RGBLED_GRADIENT_RANGES[delta / 2]); for (uint8_t i = 0; i < rgblight_ranges.effect_num_leds; i++) { uint8_t _hue = ((uint16_t)i * (uint16_t)range) / rgblight_ranges.effect_num_leds; if (direction) { From 3e9fec5dccb7eacfc2ccdadea0cda4cf4a3d623f Mon Sep 17 00:00:00 2001 From: Felix Jen Date: Fri, 29 Apr 2022 02:06:49 -0500 Subject: [PATCH 349/699] [Keyboard] Solanis H87C/H88C Compatible Replacement PCBs (#16942) Co-authored-by: Ryan --- keyboards/fjlabs/solanis/config.h | 116 ++++++++++++++++++ keyboards/fjlabs/solanis/info.json | 108 ++++++++++++++++ .../fjlabs/solanis/keymaps/default/keymap.c | 41 +++++++ keyboards/fjlabs/solanis/keymaps/via/keymap.c | 61 +++++++++ keyboards/fjlabs/solanis/keymaps/via/rules.mk | 1 + keyboards/fjlabs/solanis/readme.md | 15 +++ keyboards/fjlabs/solanis/rules.mk | 21 ++++ keyboards/fjlabs/solanis/solanis.c | 14 +++ keyboards/fjlabs/solanis/solanis.h | 34 +++++ 9 files changed, 411 insertions(+) create mode 100644 keyboards/fjlabs/solanis/config.h create mode 100644 keyboards/fjlabs/solanis/info.json create mode 100644 keyboards/fjlabs/solanis/keymaps/default/keymap.c create mode 100644 keyboards/fjlabs/solanis/keymaps/via/keymap.c create mode 100644 keyboards/fjlabs/solanis/keymaps/via/rules.mk create mode 100644 keyboards/fjlabs/solanis/readme.md create mode 100644 keyboards/fjlabs/solanis/rules.mk create mode 100644 keyboards/fjlabs/solanis/solanis.c create mode 100644 keyboards/fjlabs/solanis/solanis.h diff --git a/keyboards/fjlabs/solanis/config.h b/keyboards/fjlabs/solanis/config.h new file mode 100644 index 0000000000..50649889fc --- /dev/null +++ b/keyboards/fjlabs/solanis/config.h @@ -0,0 +1,116 @@ +/* +Copyright 2022 + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7074 // FJLaboratories +#define PRODUCT_ID 0x0017 // Solanis +#define DEVICE_VER 0x0001 // Version 1 +#define MANUFACTURER FJLaboratories +#define PRODUCT Solanis + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +/* + * 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) + *å +*/ + +// Checked with Eagle Schematic +#define MATRIX_ROW_PINS { B4, B5, B6, C0, E1, E0 } +#define MATRIX_COL_PINS { F2, F3, F4, F5, F6, F7, A0, A1, A2, A3, A4, A5, A6, A7, D5, D6, D7 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 + +/* Define RGB */ +#define RGB_DI_PIN B7 +#define RGBLED_NUM 24 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLIGHT_LIMIT_VAL 172 +#define RGB_VAL_STEP 12 + +/* Define less important options */ + +/* + * 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 + +/* + * 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 \ No newline at end of file diff --git a/keyboards/fjlabs/solanis/info.json b/keyboards/fjlabs/solanis/info.json new file mode 100644 index 0000000000..2963f672de --- /dev/null +++ b/keyboards/fjlabs/solanis/info.json @@ -0,0 +1,108 @@ +{ + "keyboard_name": "Solanis", + "url": "http://www.fjlaboratories.com/", + "maintainer": "FJLabs", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1.25, "y":0}, + {"label":"F2", "x":2.25, "y":0}, + {"label":"F3", "x":3.25, "y":0}, + {"label":"F4", "x":4.25, "y":0}, + {"label":"F5", "x":5.5, "y":0}, + {"label":"F6", "x":6.5, "y":0}, + {"label":"F7", "x":7.5, "y":0}, + {"label":"F8", "x":8.5, "y":0}, + {"label":"F9", "x":9.75, "y":0}, + {"label":"F10", "x":10.75, "y":0}, + {"label":"F11", "x":11.75, "y":0}, + {"label":"F12", "x":12.75, "y":0}, + {"label":"F13", "x":14, "y":0}, + {"label":"PrtSc", "x":15.25, "y":0}, + {"label":"Scroll Lock", "x":16.25, "y":0}, + {"label":"Pause", "x":17.25, "y":0}, + + {"label":"~", "x":0, "y":1.25}, + {"label":"!", "x":1, "y":1.25}, + {"label":"@", "x":2, "y":1.25}, + {"label":"#", "x":3, "y":1.25}, + {"label":"$", "x":4, "y":1.25}, + {"label":"%", "x":5, "y":1.25}, + {"label":"^", "x":6, "y":1.25}, + {"label":"&", "x":7, "y":1.25}, + {"label":"*", "x":8, "y":1.25}, + {"label":"(", "x":9, "y":1.25}, + {"label":")", "x":10, "y":1.25}, + {"label":"_", "x":11, "y":1.25}, + {"label":"+", "x":12, "y":1.25}, + {"label":"Back Space", "x":13, "y":1.25}, + {"label":"Back Space", "x":14, "y":1.25} + {"label":"Insert", "x":15.25, "y":1.25}, + {"label":"Home", "x":16.25, "y":1.25}, + {"label":"PgUp", "x":17.25, "y":1.25}, + + {"label":"Tab", "x":0, "y":2.25, "w":1.5}, + {"label":"Q", "x":1.5, "y":2.25}, + {"label":"W", "x":2.5, "y":2.25}, + {"label":"E", "x":3.5, "y":2.25}, + {"label":"R", "x":4.5, "y":2.25}, + {"label":"T", "x":5.5, "y":2.25}, + {"label":"Y", "x":6.5, "y":2.25}, + {"label":"U", "x":7.5, "y":2.25}, + {"label":"I", "x":8.5, "y":2.25}, + {"label":"O", "x":9.5, "y":2.25}, + {"label":"P", "x":10.5, "y":2.25}, + {"label":"{", "x":11.5, "y":2.25}, + {"label":"}", "x":12.5, "y":2.25}, + {"label":"|", "x":13.5, "y":2.25, "w":1.5}, + {"label":"Delete", "x":15.25, "y":2.25}, + {"label":"End", "x":16.25, "y":2.25}, + {"label":"PgDn", "x":17.25, "y":2.25}, + + {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, + {"label":"A", "x":1.75, "y":3.25}, + {"label":"S", "x":2.75, "y":3.25}, + {"label":"D", "x":3.75, "y":3.25}, + {"label":"F", "x":4.75, "y":3.25}, + {"label":"G", "x":5.75, "y":3.25}, + {"label":"H", "x":6.75, "y":3.25}, + {"label":"J", "x":7.75, "y":3.25}, + {"label":"K", "x":8.75, "y":3.25}, + {"label":"L", "x":9.75, "y":3.25}, + {"label":":", "x":10.75, "y":3.25}, + {"label":"SQ", "x":11.75, "y":3.25}, + {"label":"Enter", "x":12.75, "y":3.25, "w":2.25}, + + {"label":"Shift", "x":0, "y":4.25, "w":2.25}, + {"label":"Z", "x":2.25, "y":4.25}, + {"label":"X", "x":3.25, "y":4.25}, + {"label":"C", "x":4.25, "y":4.25}, + {"label":"V", "x":5.25, "y":4.25}, + {"label":"B", "x":6.25, "y":4.25}, + {"label":"N", "x":7.25, "y":4.25}, + {"label":"M", "x":8.25, "y":4.25}, + {"label":"<", "x":9.25, "y":4.25}, + {"label":">", "x":10.25, "y":4.25}, + {"label":"?", "x":11.25, "y":4.25}, + {"label":"Shift", "x":12.25, "y":4.25, "w":1.75}, + {"label":"Shift", "x":14, "y":4.25}, + {"label":"\u2191", "x":16.25, "y":4.25}, + + {"label":"Ctrl", "x":0, "y":5.25, "w":1.25}, + {"label":"Win", "x":1.25, "y":5.25, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5.25, "w":1.25}, + {"x":3.75, "y":5.25, "w":2.25}, + {"x":6, "y":5.25, "w":1.25}, + {"x":7.25, "y":5.25, "w":2.75}, + {"label":"Alt", "x":10, "y":5.25, "w":1.25}, + {"label":"Win", "x":11.25, "y":5.25, "w":1.25}, + {"label":"Menu", "x":12.5, "y":5.25, "w":1.25}, + {"label":"Ctrl", "x":13.75, "y":5.25, "w":1.25}, + {"label":"\u2190", "x":15.25, "y":5.25}, + {"label":"\u2193", "x":16.25, "y":5.25}, + {"label":"\u2192", "x":17.25, "y":5.25} + ] + } + } +} diff --git a/keyboards/fjlabs/solanis/keymaps/default/keymap.c b/keyboards/fjlabs/solanis/keymaps/default/keymap.c new file mode 100644 index 0000000000..83f2cc220c --- /dev/null +++ b/keyboards/fjlabs/solanis/keymaps/default/keymap.c @@ -0,0 +1,41 @@ +/* +Copyright 2022 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_DEL, + 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_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_all( + 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, 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, 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 + ) +}; diff --git a/keyboards/fjlabs/solanis/keymaps/via/keymap.c b/keyboards/fjlabs/solanis/keymaps/via/keymap.c new file mode 100644 index 0000000000..6bff23728f --- /dev/null +++ b/keyboards/fjlabs/solanis/keymaps/via/keymap.c @@ -0,0 +1,61 @@ +/* +Copyright 2022 +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _LAYER0, + _LAYER1, + _LAYER2, + _LAYER3, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_LAYER0] = LAYOUT_all( + 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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_DEL, + 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_RSFT, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [_LAYER1] = LAYOUT_all( + 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, 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, 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 + ), + + [_LAYER2] = LAYOUT_all( + 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, 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, 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 + ), + + [_LAYER3] = LAYOUT_all( + 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, 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, 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 + ) +}; \ No newline at end of file diff --git a/keyboards/fjlabs/solanis/keymaps/via/rules.mk b/keyboards/fjlabs/solanis/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/fjlabs/solanis/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/fjlabs/solanis/readme.md b/keyboards/fjlabs/solanis/readme.md new file mode 100644 index 0000000000..93f5dd0021 --- /dev/null +++ b/keyboards/fjlabs/solanis/readme.md @@ -0,0 +1,15 @@ +# Solanis H87C/H88C Replacement PCBs by FJLaboratories + +The following is the QMK Firmware for the Solanis by [FJLaboratories](https://www.fjlaboratories.com/). +* Keyboard Maintainer: FJLaboratories +* Hardware Supported: Solanis + +Make example for this keyboard (after setting up your build environment): + + make fjlabs/solanis:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +You can enter the bootloader by shorting the RST pads on the back of the PCB while the PCB is plugged into the computer. diff --git a/keyboards/fjlabs/solanis/rules.mk b/keyboards/fjlabs/solanis/rules.mk new file mode 100644 index 0000000000..a5745c3490 --- /dev/null +++ b/keyboards/fjlabs/solanis/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = at90usb646 + +# Processor frequency +F_CPU = 8000000 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/fjlabs/solanis/solanis.c b/keyboards/fjlabs/solanis/solanis.c new file mode 100644 index 0000000000..3104ff485e --- /dev/null +++ b/keyboards/fjlabs/solanis/solanis.c @@ -0,0 +1,14 @@ +/* +Copyright 2022 +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 . +*/ +#include "solanis.h" diff --git a/keyboards/fjlabs/solanis/solanis.h b/keyboards/fjlabs/solanis/solanis.h new file mode 100644 index 0000000000..507f087001 --- /dev/null +++ b/keyboards/fjlabs/solanis/solanis.h @@ -0,0 +1,34 @@ +/* +Copyright 2022 +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 . +*/ + +#pragma once + +#include "quantum.h" + +/* === All used matrix spots populated === */ +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3D, K3E, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4C, K4D, K4F, \ + K50, K51, K52, K54, K55, K58, K59, K5A, K5B, K5D, K5E, K5F, K5G \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E, KC_NO, KC_NO }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, KC_NO, K4C, K4D, KC_NO, K4F, KC_NO }, \ + { K50, K51, K52, KC_NO, K54, K55, KC_NO, KC_NO, K58, K59, K5A, K5B, KC_NO, K5D, K5E, K5F, K5G } \ +} From d84a1fb9a443c674fa7a7391b0065ae13324d2a4 Mon Sep 17 00:00:00 2001 From: Rucker Machine <98196480+RuckerMachine@users.noreply.github.com> Date: Fri, 29 Apr 2022 01:13:26 -0700 Subject: [PATCH 350/699] [Keyboard] RM_Numpad: Fix layout bug (#16857) Co-authored-by: jason --- keyboards/rmkeebs/rm_numpad/info.json | 10 +++++----- keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c | 8 ++++---- .../rmkeebs/rm_numpad/keymaps/split_plus/keymap.c | 4 ++-- keyboards/rmkeebs/rm_numpad/rm_numpad.h | 6 +++--- 4 files changed, 14 insertions(+), 14 deletions(-) diff --git a/keyboards/rmkeebs/rm_numpad/info.json b/keyboards/rmkeebs/rm_numpad/info.json index 0f60a8ec06..9ad0ebd286 100644 --- a/keyboards/rmkeebs/rm_numpad/info.json +++ b/keyboards/rmkeebs/rm_numpad/info.json @@ -18,19 +18,19 @@ {"label": "7", "x": 0, "y": 2.25}, {"label": "8", "x": 1, "y": 2.25}, {"label": "9", "x": 2, "y": 2.25}, - {"label": "+", "x": 3, "y": 2.25, "h": 2}, {"label": "4", "x": 0, "y": 3.25}, {"label": "5", "x": 1, "y": 3.25}, {"label": "6", "x": 2, "y": 3.25}, + {"label": "+", "x": 3, "y": 2.25, "h": 2}, {"label": "1", "x": 0, "y": 4.25}, {"label": "2", "x": 1, "y": 4.25}, {"label": "3", "x": 2, "y": 4.25}, - {"label": "Enter", "x": 3, "y": 4.25, "h": 2}, {"label": "0", "x": 0, "y": 5.25, "w": 2}, - {"label": ".", "x": 2, "y": 5.25} + {"label": ".", "x": 2, "y": 5.25}, + {"label": "Enter", "x": 3, "y": 4.25, "h": 2} ] }, "LAYOUT_split_plus_6x4": { @@ -58,10 +58,10 @@ {"label": "1", "x": 0, "y": 4.25}, {"label": "2", "x": 1, "y": 4.25}, {"label": "3", "x": 2, "y": 4.25}, - {"label": "Enter", "x": 3, "y": 4.25, "h": 2}, {"label": "0", "x": 0, "y": 5.25, "w": 2}, - {"label": ".", "x": 2, "y": 5.25} + {"label": ".", "x": 2, "y": 5.25}, + {"label": "Enter", "x": 3, "y": 4.25, "h": 2} ] }, "LAYOUT_ortho_6x4": { diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c b/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c index 240442558c..fef4324f19 100644 --- a/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c +++ b/keyboards/rmkeebs/rm_numpad/keymaps/default/keymap.c @@ -22,10 +22,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_numpad_6x4( KC_MPLY, KC_MPRV, KC_MNXT, KC_MUTE, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, - KC_P7, KC_P8, KC_P9, KC_PPLS, - KC_P4, KC_P5, KC_P6, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_PDOT + KC_P7, KC_P8, KC_P9, + KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT ) }; diff --git a/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c index 84fa6b2a64..9c6939e4d6 100644 --- a/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c +++ b/keyboards/rmkeebs/rm_numpad/keymaps/split_plus/keymap.c @@ -24,8 +24,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_P7, KC_P8, KC_P9, KC_EQL, KC_P4, KC_P5, KC_P6, KC_PPLS, - KC_P1, KC_P2, KC_P3, KC_PENT, - KC_P0, KC_PDOT + KC_P1, KC_P2, KC_P3, + KC_P0, KC_PDOT, KC_PENT ) }; diff --git a/keyboards/rmkeebs/rm_numpad/rm_numpad.h b/keyboards/rmkeebs/rm_numpad/rm_numpad.h index 93fa9392e1..b66a8b8249 100644 --- a/keyboards/rmkeebs/rm_numpad/rm_numpad.h +++ b/keyboards/rmkeebs/rm_numpad/rm_numpad.h @@ -48,7 +48,7 @@ k00, k01, k02, k03, \ k10, k11, k12, k13, \ k20, k21, k22, \ - k30, k31, k32, k24, \ + k30, k31, k32, k24,\ k40, k41, k42, \ k51, k53, k44 \ ) { \ @@ -114,8 +114,8 @@ k10, k11, k12, k13, \ k20, k21, k22, k23, \ k30, k31, k32, k33, \ - k40, k41, k42, k44, \ - k51, k53 \ + k40, k41, k42, \ + k51, k53, k44 \ ) { \ { k00, k01, k02, k03, ___ }, \ { k10, k11, k12, k13, ___ }, \ From 28e1cfc27844f80cc430073585257ff63585016f Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Fri, 29 Apr 2022 04:45:56 -0600 Subject: [PATCH 351/699] Fix fjlabs/solanis (#16965) --- keyboards/fjlabs/solanis/keymaps/default/keymap.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/fjlabs/solanis/keymaps/default/keymap.c b/keyboards/fjlabs/solanis/keymaps/default/keymap.c index 83f2cc220c..62c7d01b67 100644 --- a/keyboards/fjlabs/solanis/keymaps/default/keymap.c +++ b/keyboards/fjlabs/solanis/keymaps/default/keymap.c @@ -16,11 +16,11 @@ along with this program. If not, see . enum layers { _LAYER0, - _LAYER1, + _LAYER1 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - + [_LAYER0] = LAYOUT_all( 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_F13, KC_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_INS, KC_HOME, KC_PGUP, @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LAYER1] = LAYOUT_all( - 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, 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, 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, From b2d0dd2f32cfec21a745cb05f9f35e5dec4ffb8e Mon Sep 17 00:00:00 2001 From: Hunter Haugen Date: Fri, 29 Apr 2022 15:56:04 -0700 Subject: [PATCH 352/699] [Keymap] Improve Pain27 default keymap readability (#16956) --- keyboards/wsk/pain27/keymaps/default/keymap.c | 51 ++++++++++++++----- 1 file changed, 37 insertions(+), 14 deletions(-) diff --git a/keyboards/wsk/pain27/keymaps/default/keymap.c b/keyboards/wsk/pain27/keymaps/default/keymap.c index 54098287ef..a1a92ea1bb 100644 --- a/keyboards/wsk/pain27/keymaps/default/keymap.c +++ b/keyboards/wsk/pain27/keymaps/default/keymap.c @@ -1,18 +1,41 @@ +// Copyright 2020 Worldspawn (@worldspawn00) +// Copyright 2022 Hunter Haugen (@hunner) +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H +#define LCTL_Z MT(MOD_LCTL, KC_Z) +#define LALT_X MT(MOD_LALT, KC_X) +#define ONE_C LT(1, KC_C) +#define TWO_V LT(2, KC_V) +#define RGUI_B MT(MOD_RGUI, KC_B) +#define RALT_N MT(MOD_RALT, KC_N) +#define RCTL_M MT(MOD_RCTL, KC_M) +#define LSFT_SPC MT(MOD_LSFT, KC_SPC) + const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT(KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, - KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, - MT(MOD_LCTL, KC_Z), MT(MOD_LALT, KC_X), LT(1, KC_C), LT(2, KC_V), MT(MOD_RGUI,KC_B), MT(MOD_RALT, KC_N), MT(MOD_RCTL, KC_M), MT(MOD_LSFT, KC_SPC)), - [1] = LAYOUT(KC_ESC, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_BSPC, - KC_TAB, RGB_TOG, RGB_VAD, RGB_VAI, RGB_MOD, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, - KC_LCTL, KC_LALT, KC_TRNS, MO(3), KC_RGUI, KC_RALT, KC_RCTL, KC_NO), - [2] = LAYOUT(KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, - KC_GRV, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_SCLN, KC_QUOT, KC_ENT, - KC_LCTL, KC_LALT, MO(3), KC_TRNS, KC_COMM, KC_DOT, KC_SLSH, KC_NO), - [3] = LAYOUT(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - KC_F11, KC_F12, RGB_SPD, RGB_SPI, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_DEL, - KC_LCTL, KC_LALT, KC_TRNS, KC_TRNS, KC_RGUI, KC_RALT, KC_RCTL, KC_NO) - + [0] = LAYOUT( + KC_Q , KC_W , KC_E , KC_R , KC_T , KC_Y , KC_U , KC_I , KC_O , KC_P , + KC_A , KC_S , KC_D , KC_F , KC_G , KC_H , KC_J , KC_K , KC_L , + LCTL_Z , LALT_X , ONE_C , TWO_V , RGUI_B , RALT_N , RCTL_M , + LSFT_SPC + ), + [1] = LAYOUT( + KC_ESC , KC_MUTE, KC_VOLD, KC_VOLU, KC_MPLY, KC_HOME, KC_PGDN, KC_PGUP, KC_END , KC_BSPC, + KC_TAB , RGB_TOG, RGB_VAD, RGB_VAI, RGB_MOD, KC_LEFT, KC_DOWN, KC_UP , KC_RGHT, + KC_LCTL, KC_LALT, _______, MO(3) , KC_RGUI, KC_RALT, KC_RCTL, + XXXXXXX + ), + [2] = LAYOUT( + KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , + KC_GRV , KC_BSLS, KC_MINS, KC_EQL , KC_LBRC, KC_RBRC, KC_SCLN, KC_QUOT, KC_ENT , + KC_LCTL, KC_LALT, MO(3) , _______, KC_COMM, KC_DOT , KC_SLSH, + XXXXXXX + ), + [3] = LAYOUT( + KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , + KC_F11 , KC_F12 , RGB_SPD, RGB_SPI, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_DEL, + KC_LCTL, KC_LALT, _______, _______, KC_RGUI, KC_RALT, KC_RCTL, + XXXXXXX + ) }; - From 8b668a24d65588d460488c811ef38bf23c44c283 Mon Sep 17 00:00:00 2001 From: ROYMEETSWORLD <63612683+ROYMEETSWORLD@users.noreply.github.com> Date: Sun, 1 May 2022 13:59:51 -0400 Subject: [PATCH 353/699] [Keyboard] Add gameroyadvance (#16882) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- .../keystonecaps/gameroyadvance/config.h | 86 +++++++ .../gameroyadvance/gameroyadvance.c | 46 ++++ .../gameroyadvance/gameroyadvance.h | 104 +++++++++ .../keystonecaps/gameroyadvance/info.json | 216 ++++++++++++++++++ .../gameroyadvance/keymaps/default/config.h | 25 ++ .../gameroyadvance/keymaps/default/keymap.c | 45 ++++ .../keymaps/default_all/config.h | 25 ++ .../keymaps/default_all/keymap.c | 45 ++++ .../keystonecaps/gameroyadvance/readme.md | 30 +++ .../keystonecaps/gameroyadvance/rules.mk | 22 ++ 10 files changed, 644 insertions(+) create mode 100644 keyboards/keystonecaps/gameroyadvance/config.h create mode 100644 keyboards/keystonecaps/gameroyadvance/gameroyadvance.c create mode 100644 keyboards/keystonecaps/gameroyadvance/gameroyadvance.h create mode 100644 keyboards/keystonecaps/gameroyadvance/info.json create mode 100644 keyboards/keystonecaps/gameroyadvance/keymaps/default/config.h create mode 100644 keyboards/keystonecaps/gameroyadvance/keymaps/default/keymap.c create mode 100644 keyboards/keystonecaps/gameroyadvance/keymaps/default_all/config.h create mode 100644 keyboards/keystonecaps/gameroyadvance/keymaps/default_all/keymap.c create mode 100644 keyboards/keystonecaps/gameroyadvance/readme.md create mode 100644 keyboards/keystonecaps/gameroyadvance/rules.mk diff --git a/keyboards/keystonecaps/gameroyadvance/config.h b/keyboards/keystonecaps/gameroyadvance/config.h new file mode 100644 index 0000000000..cce7904b91 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/config.h @@ -0,0 +1,86 @@ +/* +Copyright 2022 @RoyMeetsWorld + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x6060 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Keystone Caps +#define PRODUCT Game Roy ADVANCE + +/* key matrix size */ +// Rows are doubled-up +#define MATRIX_ROWS 10 +#define MATRIX_COLS 9 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { F5, F6, F7, B1, B3 } +#define MATRIX_COL_PINS { D4, D0, D1, C6, D7, E6, F4, B2, B6 } +#define MATRIX_ROW_PINS_RIGHT { D7, E6, B4, B5, B6 } +#define MATRIX_COL_PINS_RIGHT { C6, D4, D0, D1, B1, F7, F4, F5, F6 } +#define ENCODERS_PAD_A { B5 } +#define ENCODERS_PAD_B { B4 } +#define ENCODERS_PAD_A_RIGHT { B3 } +#define ENCODERS_PAD_B_RIGHT { B2 } +#define SOFT_SERIAL_PIN D2 + +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* number of backlight levels */ + +#ifdef BACKLIGHT_PIN +#define BACKLIGHT_LEVELS 3 +#endif + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + + + +#define QMK_KEYS_PER_SCAN 12 + +#define RGB_DI_PIN C7 +#ifdef RGB_DI_PIN +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE +#define RGBLED_NUM 0 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 +#define ENCODER_RESOLUTION 4 +#endif diff --git a/keyboards/keystonecaps/gameroyadvance/gameroyadvance.c b/keyboards/keystonecaps/gameroyadvance/gameroyadvance.c new file mode 100644 index 0000000000..797f4dba76 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/gameroyadvance.c @@ -0,0 +1,46 @@ +/* +Copyright 2022 @RoyMeetsWorld + +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 . +*/ + +#include "gameroyadvance.h" + + + +#ifdef ENCODER_ENABLE + +bool encoder_update_kb(uint8_t index, bool clockwise) { + + if (!encoder_update_user(index, clockwise)) { return false; } + + if (index == 0) { + + if (clockwise) { + + tap_code_delay(KC_VOLU, 10); + + } else { + + tap_code_delay(KC_VOLD, 10); + + } + + } + + return true; + +} + +#endif diff --git a/keyboards/keystonecaps/gameroyadvance/gameroyadvance.h b/keyboards/keystonecaps/gameroyadvance/gameroyadvance.h new file mode 100644 index 0000000000..01cb32b572 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/gameroyadvance.h @@ -0,0 +1,104 @@ +/* +Copyright 2022 @RoyMeetsWorld + +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 . +*/ + +#pragma once + +#include "quantum.h" + +/** + * The layout macro for ANSI boards, with illustrative grid of a typical assignment. + * ┌───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┬───┬───────┐ + * │ESC│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ │ 7 │ 8 │ 9 │ 0 │ - │ + │ BACK │ + * ┌─┴───┼───┼───┼───┼───┼───┼───┤┌───┬───┐ ┌───┬───┐ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │ TAB │ Q │ W │ E │ R │ T │ Y ││F1 │F2 │ │F7 │F8 │ │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┘├───┼───┤ ├───┼───┤ └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ CAPS │ A │ S │ D │ F │ G │ │F3 │F4 │ │F9 │F10│ │ H │ J │ K │ L │ ; │ ' │ Enter │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐ ├───┼───┤ ├───┼───┤ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────────┤ + * │ LSHIFT │ Z │ X │ C │ V │ B │ │F5 │F6 │ │F11│F12│ │ B │ N │ M │ , │ . │ / │ RSHIFT │ + * ├────┬───┴┬──┴─┬─┴──┬┴───┼───┴┬┴───┼───┘ └───┼───┴┬┴───┼───┴───┴──┬┴───┼───┴┬────┬────│ + * │LCTL│LGUI│LALT│ FN │ │SPC │MUTE│ │MUTE│SPCE│ │RALT│ FN │RGUI│RCTL│ + * └────┴────┴────┴────┘ └────┼────┤ ├────┼────┘ └────┴────┴────┴────┘ + * │ENTR│ │ENTR│ + * └────┘ └────┘ + */ +#define LAYOUT( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R07, \ + L10, L11, L12, L13, L14, L15, L16, L17, L18, R10, R11, R12, R13, R14, R15, R16, R17, R18, R28, \ + L20, L21, L22, L23, L24, L25, L27, L28, R20, R21, R22, R23, R24, R25, R26, R27, R38, \ + L30, L31, L32, L33, L34, L35, L37, L38, R30, R31, R32, R33, R34, R35, R36, R37, R46, \ + L40, L41, L42, L43, L45, L48, R40, R42, R43, R44, R45, R47, \ + L47, R41 \ +) \ +{ \ + { L00, L01, L02, L03, L04, L05, L06, KC_NO, KC_NO }, \ + { L10, L11, L12, L13, L14, L15, L16, L17, L18 }, \ + { L20, L21, L22, L23, L24, L25, KC_NO, L27, L28 }, \ + { L30, L31, L32, L33, L34, L35, KC_NO, L37, L38 }, \ + { L40, L41, L42, L43, KC_NO, L45, KC_NO, L47, L48 }, \ + { R00, R01, R02, R03, R04, R05, KC_NO, R07, KC_NO }, \ + { R10, R11, R12, R13, R14, R15, R16, R17, R18 }, \ + { R20, R21, R22, R23, R24, R25, R26, R27, R28 }, \ + { R30, R31, R32, R33, R34, R35, R36, R37, R38 }, \ + { R40, R41, R42, R43, R44, R45, R46, R47, KC_NO } \ +} + +/** + * The layout macro for split-key boards, with illustrative grid of a typical assignment. + * + * Backspace has two options with three distinct pads: + * - center pad (regular 2u backspace) + * - left pad + right pad (split backspace) + * + * You may wish to set the unused pad(s) to KC_NO or XXXXXX, as they will be ignored. + * ┌───────┐ + * │ BACK │ (R07) + * └───────┘ + * | + * ┌───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┬───┬───┬───┬───┬───┐ + * │ESC│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ │ 7 │ 8 │ 9 │ 0 │ - │ + │ \ │BCK│ (R06 R08) + * ┌─┴───┼───┼───┼───┼───┼───┼───┤┌───┬───┐ ┌───┬───┐ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ + * │ TAB │ Q │ W │ E │ R │ T │ Y ││F1 │F2 │ │F7 │F8 │ │ Y │ U │ I │ O │ P │ [ │ ] │ \ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┘├───┼───┤ ├───┼───┤ └┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │ CAPS │ A │ S │ D │ F │ G │ │F3 │F4 │ │F9 │F10│ │ H │ J │ K │ L │ ; │ ' │ Enter │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┐ ├───┼───┤ ├───┼───┤ ┌─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ + * │LSFT│ \ │ Z │ X │ C │ V │ B │ │F5 │F6 │ │F11│F12│ │ B │ N │ M │ , │ . │ / │RSHIFT│PSC│ + * ├────┼───┴┬──┴─┬─┴──┬┴───┼───┴┬┴───┼───┘ └───┼───┴┬┴───┼───┴───┴──┬┴───┼───┴┬────┬┴───│ + * │LCTL│LGUI│LALT│ FN │ │SPC │MUTE│ │MUTE│SPCE│ │RALT│ FN │RGUI│RCTL│ + * └────┴────┴────┴────┘ └────┼────┤ ├────┼────┘ └────┴────┴────┴────┘ + * │ENTR│ │ENTR│ + * └────┘ └────┘ + */ +#define LAYOUT_all( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, R07, R08, \ + L10, L11, L12, L13, L14, L15, L16, L17, L18, R10, R11, R12, R13, R14, R15, R16, R17, R18, R28, \ + L20, L21, L22, L23, L24, L25, L27, L28, R20, R21, R22, R23, R24, R25, R26, R27, R38, \ + L30, L44, L31, L32, L33, L34, L35, L37, L38, R30, R31, R32, R33, R34, R35, R36, R37, R46, R48, \ + L40, L41, L42, L43, L45, L48, R40, R42, R43, R44, R45, R47, \ + L47, R41 \ +) \ +{ \ + { L00, L01, L02, L03, L04, L05, L06, KC_NO, KC_NO }, \ + { L10, L11, L12, L13, L14, L15, L16, L17, L18 }, \ + { L20, L21, L22, L23, L24, L25, KC_NO, L27, L28 }, \ + { L30, L31, L32, L33, L34, L35, KC_NO, L37, L38 }, \ + { L40, L41, L42, L43, L44, L45, KC_NO, L47, L48 }, \ + { R00, R01, R02, R03, R04, R05, R06, R07, R08 }, \ + { R10, R11, R12, R13, R14, R15, R16, R17, R18 }, \ + { R20, R21, R22, R23, R24, R25, R26, R27, R28 }, \ + { R30, R31, R32, R33, R34, R35, R36, R37, R38 }, \ + { R40, R41, R42, R43, R44, R45, R46, R47, R48 } \ +} diff --git a/keyboards/keystonecaps/gameroyadvance/info.json b/keyboards/keystonecaps/gameroyadvance/info.json new file mode 100644 index 0000000000..f907de9326 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/info.json @@ -0,0 +1,216 @@ +{ + "keyboard_name": "Game Roy ADVANCE", + "maintainer": "@RoyMeetsWorld", + "url": "https://keystonecaps.store/?product=game-roy-advance-game-pad-group-buy-preorder", + "layouts": { + "LAYOUT": { + "layout": [ + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 5, "y": 0 }, + { "x": 6, "y": 0 }, + { "x": 7, "y": 0 }, + + { "x": 13.75, "y": 0 }, + { "x": 14.75, "y": 0 }, + { "x": 15.75, "y": 0 }, + { "x": 16.75, "y": 0 }, + { "x": 17.75, "y": 0 }, + { "x": 18.75, "y": 0 }, + { "x": 19.75, "y": 0, "w": 2 }, + + { "x": 0.5, "y": 1, "w": 1.5 }, + { "x": 2, "y": 1 }, + { "x": 3, "y": 1 }, + { "x": 4, "y": 1 }, + { "x": 5, "y": 1 }, + { "x": 6, "y": 1 }, + { "x": 7, "y": 1 }, + + { "x": 8.25, "y": 1 }, + { "x": 9.25, "y": 1 }, + + { "x": 11, "y": 1 }, + { "x": 12, "y": 1 }, + + { "x": 13.75, "y": 1 }, + { "x": 14.75, "y": 1 }, + { "x": 15.75, "y": 1 }, + { "x": 16.75, "y": 1 }, + { "x": 17.75, "y": 1 }, + { "x": 18.75, "y": 1 }, + { "x": 19.75, "y": 1 }, + { "x": 20.75, "y": 1, "w": 1.5 }, + + { "x": 0.5, "y": 2, "w": 1.75 }, + { "x": 2.25, "y": 2 }, + { "x": 3.25, "y": 2 }, + { "x": 4.25, "y": 2 }, + { "x": 5.25, "y": 2 }, + { "x": 6.25, "y": 2 }, + + { "x": 8.25, "y": 2 }, + { "x": 9.25, "y": 2 }, + + { "x": 11, "y": 2 }, + { "x": 12, "y": 2 }, + + { "x": 14, "y": 2 }, + { "x": 15, "y": 2 }, + { "x": 16, "y": 2 }, + { "x": 17, "y": 2 }, + { "x": 18, "y": 2 }, + { "x": 19, "y": 2 }, + { "x": 20, "y": 2, "w": 2.25 }, + + { "x": 0.5, "y": 3, "w": 2.25 }, + { "x": 2.75, "y": 3 }, + { "x": 3.75, "y": 3 }, + { "x": 4.75, "y": 3 }, + { "x": 5.75, "y": 3 }, + { "x": 6.75, "y": 3 }, + + { "x": 8.25, "y": 3 }, + { "x": 9.25, "y": 3 }, + + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 }, + + { "x": 13.5, "y": 3 }, + { "x": 14.5, "y": 3 }, + { "x": 15.5, "y": 3 }, + { "x": 16.5, "y": 3 }, + { "x": 17.5, "y": 3 }, + { "x": 18.5, "y": 3 }, + { "x": 19.5, "y": 3, "w": 2.75 }, + + { "x": 1, "y": 4, "w": 1.25 }, + { "x": 2.25, "y": 4, "w": 1.25 }, + { "x": 3.5, "y": 4, "w": 1.25 }, + { "x": 4.75, "y": 4, "w": 1.25 }, + + { "x": 7, "y": 4, "h": 1.5 }, + { "x": 8, "y": 4 }, + + { "x": 12.25, "y": 4 }, + { "x": 13.25, "y": 4, "h": 1.5 }, + + { "x": 16.75, "y": 4, "w": 1.25 }, + { "x": 18, "y": 4, "w": 1.25 }, + { "x": 19.25, "y": 4, "w": 1.25 }, + { "x": 20.5, "y": 4, "w": 1.25 }, + + { "x": 8, "y": 5, "h": 1.5 }, + { "x": 12.25, "y": 5, "h": 1.5 } + ] }, + "LAYOUT_all": { + "layout": [ + { "x": 1, "y": 0 }, + { "x": 2, "y": 0 }, + { "x": 3, "y": 0 }, + { "x": 4, "y": 0 }, + { "x": 5, "y": 0 }, + { "x": 6, "y": 0 }, + { "x": 7, "y": 0 }, + + { "x": 13.75, "y": 0 }, + { "x": 14.75, "y": 0 }, + { "x": 15.75, "y": 0 }, + { "x": 16.75, "y": 0 }, + { "x": 17.75, "y": 0 }, + { "x": 18.75, "y": 0 }, + { "x": 19.75, "y": 0 }, + { "x": 22.75, "y": 0, "w": 2 }, + { "x": 20.75, "y": 0 }, + + { "x": 0.5, "y": 1, "w": 1.5 }, + { "x": 2, "y": 1 }, + { "x": 3, "y": 1 }, + { "x": 4, "y": 1 }, + { "x": 5, "y": 1 }, + { "x": 6, "y": 1 }, + { "x": 7, "y": 1 }, + + { "x": 8.25, "y": 1 }, + { "x": 9.25, "y": 1 }, + + { "x": 11, "y": 1 }, + { "x": 12, "y": 1 }, + + { "x": 13.75, "y": 1 }, + { "x": 14.75, "y": 1 }, + { "x": 15.75, "y": 1 }, + { "x": 16.75, "y": 1 }, + { "x": 17.75, "y": 1 }, + { "x": 18.75, "y": 1 }, + { "x": 19.75, "y": 1 }, + { "x": 20.75, "y": 1, "w": 1.5 }, + + { "x": 0.5, "y": 2, "w": 1.75 }, + { "x": 2.25, "y": 2 }, + { "x": 3.25, "y": 2 }, + { "x": 4.25, "y": 2 }, + { "x": 5.25, "y": 2 }, + { "x": 6.25, "y": 2 }, + + { "x": 8.25, "y": 2 }, + { "x": 9.25, "y": 2 }, + + { "x": 11, "y": 2 }, + { "x": 12, "y": 2 }, + + { "x": 14, "y": 2 }, + { "x": 15, "y": 2 }, + { "x": 16, "y": 2 }, + { "x": 17, "y": 2 }, + { "x": 18, "y": 2 }, + { "x": 19, "y": 2 }, + { "x": 20, "y": 2, "w": 2.25 }, + + { "x": 0.5, "y": 3, "w": 1.75 }, + { "x": 1.75, "y": 3 }, + { "x": 2.75, "y": 3 }, + { "x": 3.75, "y": 3 }, + { "x": 4.75, "y": 3 }, + { "x": 5.75, "y": 3 }, + { "x": 6.75, "y": 3 }, + + { "x": 8.25, "y": 3 }, + { "x": 9.25, "y": 3 }, + + { "x": 11, "y": 3 }, + { "x": 12, "y": 3 }, + + { "x": 13.5, "y": 3 }, + { "x": 14.5, "y": 3 }, + { "x": 15.5, "y": 3 }, + { "x": 16.5, "y": 3 }, + { "x": 17.5, "y": 3 }, + { "x": 18.5, "y": 3 }, + { "x": 19.5, "y": 3, "w": 1.75 }, + { "x": 21.25, "y": 3 }, + + { "x": 1, "y": 4, "w": 1.25 }, + { "x": 2.25, "y": 4, "w": 1.25 }, + { "x": 3.5, "y": 4, "w": 1.25 }, + { "x": 4.75, "y": 4, "w": 1.25 }, + + { "x": 7, "y": 4, "h": 1.5 }, + { "x": 8, "y": 4 }, + + { "x": 12.25, "y": 4 }, + { "x": 13.25, "y": 4, "h": 1.5 }, + + { "x": 16.75, "y": 4, "w": 1.25 }, + { "x": 18, "y": 4, "w": 1.25 }, + { "x": 19.25, "y": 4, "w": 1.25 }, + { "x": 20.5, "y": 4, "w": 1.25 }, + + { "x": 8, "y": 5, "h": 1.5 }, + { "x": 12.25, "y": 5, "h": 1.5 } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/keystonecaps/gameroyadvance/keymaps/default/config.h b/keyboards/keystonecaps/gameroyadvance/keymaps/default/config.h new file mode 100644 index 0000000000..693d5684c1 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/keymaps/default/config.h @@ -0,0 +1,25 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen + +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 . +*/ + +#pragma once + +//#define USE_SERIAL +#define EE_HANDS \ No newline at end of file diff --git a/keyboards/keystonecaps/gameroyadvance/keymaps/default/keymap.c b/keyboards/keystonecaps/gameroyadvance/keymaps/default/keymap.c new file mode 100644 index 0000000000..268a158ee1 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/keymaps/default/keymap.c @@ -0,0 +1,45 @@ +/* +Copyright 2022 @RoyMeetsWorld + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BASE] = 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_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_F1, KC_F2, KC_F7, KC_F8, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_F3, KC_F4, KC_F9, KC_F10, 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_F5, KC_F6, KC_F11, KC_F12, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(_FN), KC_SPC, KC_MUTE, KC_MUTE, KC_SPC, KC_RALT, MO(_FN), KC_RGUI, KC_RCTL, + KC_ENT, KC_ENT + ), + + [_FN] = LAYOUT( + KC_TILD, 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_DEL, + KC_TRNS, KC_TRNS, KC_UP, 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_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS + ) +}; + diff --git a/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/config.h b/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/config.h new file mode 100644 index 0000000000..693d5684c1 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/config.h @@ -0,0 +1,25 @@ +/* +This is the c configuration file for the keymap + +Copyright 2012 Jun Wako +Copyright 2015 Jack Humbert +Copyright 2018 Danny Nguyen + +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 . +*/ + +#pragma once + +//#define USE_SERIAL +#define EE_HANDS \ No newline at end of file diff --git a/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/keymap.c b/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/keymap.c new file mode 100644 index 0000000000..a6adf3f952 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/keymaps/default_all/keymap.c @@ -0,0 +1,45 @@ +/* +Copyright 2022 @RoyMeetsWorld + +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 . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _BASE, + _FN +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_BASE] = LAYOUT_all( + 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_BSPC, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_F1, KC_F2, KC_F7, KC_F8, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, + KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_F3, KC_F4, KC_F9, KC_F10, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, + KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_F5, KC_F6, KC_F11, KC_F12, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_PSCR, + KC_LCTL, KC_LGUI, KC_LALT, MO(_FN), KC_SPC, KC_MUTE, KC_MUTE, KC_SPC, KC_RALT, MO(_FN), KC_RGUI, KC_RCTL, + KC_ENT, KC_ENT + ), + + [_FN] = LAYOUT_all( + KC_TILD, 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_DEL, + KC_TRNS, KC_TRNS, KC_UP, 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_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, + 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 + ) +}; + diff --git a/keyboards/keystonecaps/gameroyadvance/readme.md b/keyboards/keystonecaps/gameroyadvance/readme.md new file mode 100644 index 0000000000..cc733cea46 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/readme.md @@ -0,0 +1,30 @@ +# Game Roy ADVANCE + +![Game Roy ADVANCE](https://i.imgur.com/N6RI4fUh.jpg) +![GRALAYOUTS](https://i.imgur.com/lHjTRQK.png) + +A one-handed, expandable game pad designed to take your pc gaming to the next level. Designed by [Keystone Caps](https://keystonecaps.store). + +* Keyboard Maintainer: [RoyMeetsWorld](https://github.com/ROYMEETSWORLD) +* Hardware Supported: Game Roy ADVANCE +* Hardware Availability: [keystonecaps.store](https://keystonecaps.store) + +Make example for this keyboard (after setting up your build environment): + + make keystonecaps/gameroyadvance:default + +Flashing example for this keyboard: + + make keystonecaps/gameroyadvance:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB +* **Keycode in layout**: Press the key mapped to `RESET` (FN + Escape by default) + +Special thanks to @tpstevens for all of his hard work in creating these firmware files from the mess that I had made. diff --git a/keyboards/keystonecaps/gameroyadvance/rules.mk b/keyboards/keystonecaps/gameroyadvance/rules.mk new file mode 100644 index 0000000000..be3b8b9a61 --- /dev/null +++ b/keyboards/keystonecaps/gameroyadvance/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina # For Pro Micro +# BOOTLOADER = qmk-dfu # For Elite-C + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +ENCODER_ENABLE = yes +SPLIT_KEYBOARD = yes \ No newline at end of file From 66fc18c75646e77d9768803298777d39087577cf Mon Sep 17 00:00:00 2001 From: Ryan Skidmore Date: Mon, 2 May 2022 20:34:44 +0100 Subject: [PATCH 354/699] keyboards/ryanskidmore: add rskeys100 keyboard (#15506) * keyboards/ryanskidmore/rskeys100: add rskeys100 draft firmware * keyboards/ryanskidmore/rskeys100: fix firmware * ryanskidmore/rskeys100: fix remaining bugs * keyboards/ryanskidmore/rskeys100: finishing touches on firmware * keyboards/ryanskidmore/rskeys100: migrate from full replacement matrix scanning to lite, move rgb matrix enable call to keymap * keyboards/ryanskidmore/rskeys100: remove undefines, clarify comments * ryanskidmore/rskeys100: remove unused imports * keyboards/ryanskidmore/rskeys100: pr feedback --- keyboards/ryanskidmore/rskeys100/config.h | 85 ++++++++++++ keyboards/ryanskidmore/rskeys100/info.json | 121 ++++++++++++++++++ .../rskeys100/keymaps/default/keymap.c | 65 ++++++++++ .../rskeys100/keymaps/default/readme.md | 1 + keyboards/ryanskidmore/rskeys100/matrix.c | 110 ++++++++++++++++ keyboards/ryanskidmore/rskeys100/readme.md | 22 ++++ keyboards/ryanskidmore/rskeys100/rskeys100.c | 30 +++++ keyboards/ryanskidmore/rskeys100/rskeys100.h | 22 ++++ keyboards/ryanskidmore/rskeys100/rules.mk | 23 ++++ 9 files changed, 479 insertions(+) create mode 100644 keyboards/ryanskidmore/rskeys100/config.h create mode 100644 keyboards/ryanskidmore/rskeys100/info.json create mode 100644 keyboards/ryanskidmore/rskeys100/keymaps/default/keymap.c create mode 100644 keyboards/ryanskidmore/rskeys100/keymaps/default/readme.md create mode 100644 keyboards/ryanskidmore/rskeys100/matrix.c create mode 100644 keyboards/ryanskidmore/rskeys100/readme.md create mode 100644 keyboards/ryanskidmore/rskeys100/rskeys100.c create mode 100644 keyboards/ryanskidmore/rskeys100/rskeys100.h create mode 100644 keyboards/ryanskidmore/rskeys100/rules.mk diff --git a/keyboards/ryanskidmore/rskeys100/config.h b/keyboards/ryanskidmore/rskeys100/config.h new file mode 100644 index 0000000000..9e036aa70d --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/config.h @@ -0,0 +1,85 @@ +// Copyright 2021 Ryan Skidmore (@ryanskidmore, rskeys@ryanskidmore.co.uk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7273 // rs +#define PRODUCT_ID 0x0064 // 100 +#define DEVICE_VER 0x0001 // rev 1 +#define MANUFACTURER ryanskidmore +#define PRODUCT rsKeys100 + +/* Key Matrix Sizes */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 24 + +/* Rows */ +#define ROW_A D4 +#define ROW_B C6 +#define ROW_C D7 +#define ROW_D E6 +#define ROW_E B4 +#define ROW_F B5 + +/* Columns 0 - 20 (24 with dummy columns for shift registers) */ +#define SHR_LATCH B2 +#define SHR_CLOCK B3 +#define SHR_DATA B1 +#define SHR_COLS { 0x000001, 0x000002, 0x000004, 0x000008, 0x000010, 0x000020, 0x000040, 0x000080, 0x000100, 0x000200, 0x000400, 0x000800, 0x001000, 0x002000, 0x004000, 0x008000, 0x010000, 0x020000, 0x040000, 0x080000, 0x100000, 0x200000, 0x400000, 0x800000 } + +/* The shift registers on the matrix PCB output a signal on each column, which passes through the + * switch and a diode towards the row. The row is then connected to the AVR as an input. This means + * the diode direction is COL(umn) to ROW */ +#define DIODE_DIRECTION COL2ROW + +/* RGB Data Pin */ +#define RGB_DI_PIN C7 +/* The number of RGB LEDs connected */ +#define DRIVER_LED_TOTAL 105 +/* Set the maximum brightness to 110 to avoid going over 500 mA. + * At full brightness with all three indicator LEDs on, the power draw is about 450 mA. */ +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 110 +/* Enable framebuffer effects */ +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +/* Enable the cycle left right animation and set it as the startup mode */ +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_CYCLE_LEFT_RIGHT + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* 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 + +/* Set the max power consumption for the keyboard, which is 500 mA. */ +#define USB_MAX_POWER_CONSUMPTION 500 + +/* + * 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 + +/* disable these deprecated features by default */ +#define NO_ACTION_MACRO +#define NO_ACTION_FUNCTION \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/info.json b/keyboards/ryanskidmore/rskeys100/info.json new file mode 100644 index 0000000000..ed9898d405 --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/info.json @@ -0,0 +1,121 @@ +{ + "keyboard_name": "rskeys100", + "url": "", + "maintainer": "ryanskidmore", + "layouts": { + "LAYOUT_fullsize_iso": { + "layout": [ + {"x":0, "y":0}, + {"x":2, "y":0}, + {"x":3, "y":0}, + {"x":4, "y":0}, + {"x":5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.5, "y":0}, + {"x":11, "y":0}, + {"x":12, "y":0}, + {"x":13, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25, "w":2}, + {"x":15.25, "y":1.25}, + {"x":16.25, "y":1.25}, + {"x":17.25, "y":1.25}, + {"x":18.5, "y":1.25}, + {"x":19.5, "y":1.25}, + {"x":20.5, "y":1.25}, + {"x":21.5, "y":1.25}, + + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":15.25, "y":2.25}, + {"x":16.25, "y":2.25}, + {"x":17.25, "y":2.25}, + {"x":18.5, "y":2.25}, + {"x":19.5, "y":2.25}, + {"x":20.5, "y":2.25}, + {"x":21.5, "y":2.25, "h": 2}, + + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25}, + {"x":13.75, "y":2.25, "w":1.25, "h":2}, + {"x":18.5, "y":3.25}, + {"x":19.5, "y":3.25}, + {"x":20.5, "y":3.25}, + + {"x":0, "y":4.25, "w":1.25}, + {"x":1.25, "y":4.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":2.75}, + {"x":16.25, "y":4.25}, + {"x":18.5, "y":4.25}, + {"x":19.5, "y":4.25}, + {"x":20.5, "y":4.25}, + {"x":21.5, "y":4.25, "h":2}, + + {"x":0, "y":5.25, "w":1.25}, + {"x":1.25, "y":5.25, "w":1.25}, + {"x":2.5, "y":5.25, "w":1.25}, + {"x":3.75, "y":5.25, "w":6.25}, + {"x":10, "y":5.25, "w":1.25}, + {"x":11.25, "y":5.25, "w":1.25}, + {"x":12.5, "y":5.25, "w":1.25}, + {"x":13.75, "y":5.25, "w":1.25}, + {"x":15.25, "y":5.25}, + {"x":16.25, "y":5.25}, + {"x":17.25, "y":5.25}, + {"x":18.5, "y":5.25, "w":2}, + {"x":20.5, "y":5.25} + ] + } + } +} diff --git a/keyboards/ryanskidmore/rskeys100/keymaps/default/keymap.c b/keyboards/ryanskidmore/rskeys100/keymaps/default/keymap.c new file mode 100644 index 0000000000..37f2589760 --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/keymaps/default/keymap.c @@ -0,0 +1,65 @@ +// Copyright 2021 Ryan Skidmore (@ryanskidmore, rskeys@ryanskidmore.co.uk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┬───┐ ┌───┬───┬───┐ + * │Esc│ │F1 │F2 │F3 │F4 │ │F5 │F6 │F7 │F8 │ │F9 │F10│F11│F12│ │PSc│Scr│Pse│ + * └───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┴───┘ └───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ ┌───┬───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Backsp│ │Ins│Hom│PgU│ │Num│ / │ * │ - │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ ├───┼───┼───┤ ├───┼───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ │ │Del│End│PgD│ │ 7 │ 8 │ 9 │ │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ Ent│ └───┴───┴───┘ ├───┼───┼───┤ + │ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │ │ │ 4 │ 5 │ 6 │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴────┤ ┌───┐ ├───┼───┼───┼───┤ + * │Shft│ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift │ │ ↑ │ │ 1 │ 2 │ 3 │ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬────┤ ┌───┼───┼───┐ ├───┴───┼───┤Ent│ + * │Ctrl│GUI │Alt │ │ Alt│ GUI│Menu│Ctrl│ │ ← │ ↓ │ → │ │ 0 │ . │ │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘ + */ + /* Default Layer */ + [0] = LAYOUT_fullsize_iso( + KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, LT(1, KC_F12), KC_PSCR, KC_SLCK, KC_PAUS, + + KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, + 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_ENT, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, + 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_NUHS, KC_P4, KC_P5, KC_P6, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT + ), + /* RGB Control Layer */ + [1] = LAYOUT_fullsize_iso( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______, _______, _______ + ), +}; + +void keyboard_post_init_user(void) { + rgb_matrix_enable_noeeprom(); +} + +void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { + /* We use RGB for the indicator RGB colours since we don't need to adjust the brightness. + * If any of the indicators are enabled, set the key to white. This overrides the active RGB + * matrix animation. */ + + if (host_keyboard_led_state().caps_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(73, 255, 255, 255); + } + + if (host_keyboard_led_state().num_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(19, 255, 255, 255); + } + + if (host_keyboard_led_state().scroll_lock) { + RGB_MATRIX_INDICATOR_SET_COLOR(14, 255, 255, 255); + } +} \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/keymaps/default/readme.md b/keyboards/ryanskidmore/rskeys100/keymaps/default/readme.md new file mode 100644 index 0000000000..03357c206b --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/keymaps/default/readme.md @@ -0,0 +1 @@ +This is the default keymap (UK, ISO) for the rskeys100. The RGB control layer can be activated by holding the F12 key. \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/matrix.c b/keyboards/ryanskidmore/rskeys100/matrix.c new file mode 100644 index 0000000000..faefb29c84 --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/matrix.c @@ -0,0 +1,110 @@ +/* +Copyright 2014 Ralf Schmitt +Modified by Ryan Skidmore (@ryanskidmore) +to support the rskeys100. + +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 . +*/ + +#include +#include "matrix.h" +#include +#include "quantum.h" + +static const uint32_t col_values[24] = SHR_COLS; + +static uint8_t read_rows(void); +static void select_col(uint8_t col); + +static void shift_pulse(void); +static void shift_out_single(uint8_t value); +static void shift_out(uint32_t value); + +void matrix_init_custom(void) { + setPinInput(ROW_A); + setPinInput(ROW_B); + setPinInput(ROW_C); + setPinInput(ROW_D); + setPinInput(ROW_E); + setPinInput(ROW_F); + + setPinOutput(SHR_DATA); + setPinOutput(SHR_LATCH); + setPinOutput(SHR_CLOCK); +} + +bool matrix_scan_custom(matrix_row_t current_matrix[]) { + bool changed = false; + + for (uint8_t col = 0; col < MATRIX_COLS; col++) { + select_col(col); + _delay_us(1); + uint8_t rows = read_rows(); + for (uint8_t row = 0; row < MATRIX_ROWS; row++) { + bool prev_bit = ((uint32_t)(current_matrix[row]) & (matrix_row_t)(1UL << col)) ? 1 : 0; + bool curr_bit = ((uint32_t)rows & (uint32_t)(1UL << row)) ? 1 : 0; + if (prev_bit != curr_bit) { + current_matrix[row] = (uint32_t)(current_matrix[row]) ^ (uint32_t)(1UL << col); + changed = true; + } + } + } + + return changed; +} + +static uint8_t read_rows(void) { + return (readPin(ROW_F) << 5) + | (readPin(ROW_E) << 4) + | (readPin(ROW_D) << 3) + | (readPin(ROW_C) << 2) + | (readPin(ROW_B) << 1) + | (readPin(ROW_A) ); +} + +static void select_col(uint8_t col) { + shift_out(col_values[col]); +} + +static void shift_out(uint32_t value) { + writePinLow(SHR_LATCH); + uint8_t first_byte = (value >> 16) & 0xFF; + uint8_t second_byte = (value >> 8) & 0xFF; + uint8_t third_byte = (uint8_t)(value & 0xFF); + + shift_out_single(first_byte); + shift_out_single(second_byte); + shift_out_single(third_byte); + writePinHigh(SHR_LATCH); + /* We delay here to prevent multiple consecutive keys being triggered with a single switch press */ + _delay_us(10); +} + +static void shift_out_single(uint8_t value) { + for (uint8_t i = 0; i < 8; i++) { + if (value & 0b10000000) { + writePinHigh(SHR_DATA); + } else { + writePinLow(SHR_DATA); + } + + shift_pulse(); + value = value << 1; + } +} + +static inline void shift_pulse(void) { + writePinHigh(SHR_CLOCK); + writePinLow(SHR_CLOCK); +} \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/readme.md b/keyboards/ryanskidmore/rskeys100/readme.md new file mode 100644 index 0000000000..4be465dbde --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/readme.md @@ -0,0 +1,22 @@ +# rskeys100 + +The rskeys100 is a full size, 100% ISO keyboard with per-key RGB. + +* Keyboard Maintainer: [Ryan Skidmore](https://github.com/ryanskidmore) +* Hardware Supported: The rskeys100 matrix PCB is the only supported PCB for the switch matrix. This PCB works with any +Pro Micro or Pro Micro alternative as the daughterboard. +* Hardware Availability: Coming soon + +Make example for this keyboard (after setting up your build environment): + + make ryanskidmore/rskeys100:default + +Flashing example for this keyboard: + + make ryanskidmore/rskeys100:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +To enter the bootloader, press the `RESET` button on your daughterboard PCB while it's plugged in. \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/rskeys100.c b/keyboards/ryanskidmore/rskeys100/rskeys100.c new file mode 100644 index 0000000000..ec98ae62cc --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/rskeys100.c @@ -0,0 +1,30 @@ +// Copyright 2021 Ryan Skidmore (@ryanskidmore, rskeys@ryanskidmore.co.uk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "rskeys100.h" + + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,NO_LED, 14, 15, 16,NO_LED,NO_LED,NO_LED,NO_LED}, + { 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, 24, 24, 23, 22, 21, 20, 19, 18, 17}, + { 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 56, 57, 58, 59, 60}, + { 78, 77, 76, 75, 74, 73, 72, 71, 70, 69, 68, 67, 66,NO_LED,NO_LED,NO_LED,NO_LED, 64, 63, 62,NO_LED}, + { 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90, 91,NO_LED,NO_LED, 93,NO_LED, 94, 95, 96, 97}, + { 117,NO_LED, 116, 115,NO_LED,NO_LED, 112,NO_LED,NO_LED,NO_LED, 109, 108, 107, 106, 105, 103, 102, 101,NO_LED, 99,NO_LED} + }, { + {0, 0}, {21, 0}, {32, 0}, {43, 0}, {53, 0}, {64, 0}, {75, 0}, {85, 0}, {96, 0}, {117, 0}, {128, 0}, {139, 0}, {149, 0}, {160, 0}, {171, 0}, {181, 0}, + {0, 13}, {11, 13}, {21, 13}, {32, 13}, {42, 13}, {53, 13}, {64, 13}, {75, 13}, {85, 13}, {96, 13}, {107, 13}, {117, 13}, {128, 13}, {139, 13}, {160, 13}, {171, 13}, {181, 13}, {192, 13}, {203, 13}, {213, 13}, {224, 13}, + {0, 26}, {11, 26}, {21, 26}, {32, 26}, {42, 26}, {53, 26}, {64, 26}, {75, 26}, {85, 26}, {96, 26}, {107, 26}, {117, 26}, {128, 26}, {149, 26}, {160, 26}, {171, 26}, {181, 26}, {192, 26}, {203, 26}, {213, 26}, {224, 26}, + {0, 38}, {11, 38}, {21, 38}, {32, 38}, {42, 38}, {53, 38}, {64, 38}, {75, 38}, {85, 38}, {96, 38}, {117, 38}, {128, 38}, {149, 38}, {192, 38}, {203, 38}, {213, 38}, + {0, 51}, {11, 51}, {21, 51}, {32, 51}, {42, 51}, {53, 51}, {64, 51}, {75, 51}, {85, 51}, {96, 51}, {107, 51}, {117, 51}, {139, 51}, {171, 51}, {192, 51}, {203, 51}, {213, 51}, {224, 51}, + {0, 64}, {11, 64}, {21, 64}, {64, 64}, {107, 64}, {117, 64}, {128, 64}, {149, 64}, {160, 64}, {171, 64}, {181, 64}, {192, 64}, {213, 64} + }, { + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 + } }; +#endif \ No newline at end of file diff --git a/keyboards/ryanskidmore/rskeys100/rskeys100.h b/keyboards/ryanskidmore/rskeys100/rskeys100.h new file mode 100644 index 0000000000..d297440065 --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/rskeys100.h @@ -0,0 +1,22 @@ +// Copyright 2021 Ryan Skidmore (@ryanskidmore, rskeys@ryanskidmore.co.uk) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define LAYOUT_fullsize_iso( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K014, K015, K016, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, K118, K119, K120, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, K217, K218, K219, K220, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K317, K318, K319, \ + K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K415, K417, K418, K419, K420, \ + K500, K502, K503, K506, K510, K511, K512, K513, K514, K515, K516, K517, K519 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, KC_NO, K014, K015, K016, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, K118, K119, K120, KC_NO, KC_NO, KC_NO }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, K217, K218, K219, K220, KC_NO, KC_NO, KC_NO }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, KC_NO, KC_NO, KC_NO, KC_NO, K317, K318, K319, KC_NO, KC_NO, KC_NO, KC_NO }, \ + { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, KC_NO, K415, KC_NO, K417, K418, K419, K420, KC_NO, KC_NO, KC_NO }, \ + { K500, KC_NO, K502, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515, K516, K517, KC_NO, K519, KC_NO, KC_NO, KC_NO, KC_NO } \ +} diff --git a/keyboards/ryanskidmore/rskeys100/rules.mk b/keyboards/ryanskidmore/rskeys100/rules.mk new file mode 100644 index 0000000000..62e3f42784 --- /dev/null +++ b/keyboards/ryanskidmore/rskeys100/rules.mk @@ -0,0 +1,23 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 +AUDIO_ENABLE = no # Audio output +CUSTOM_MATRIX = lite + +SRC += matrix.c \ No newline at end of file From c03e18f728a8c56bbe49d2c319ae96decc3e48bb Mon Sep 17 00:00:00 2001 From: jonavin <71780717+Jonavin@users.noreply.github.com> Date: Tue, 3 May 2022 06:22:10 -0400 Subject: [PATCH 355/699] Jonavin-kb67-Reduce mem usage (#16991) Co-authored-by: Jonavin <=> --- keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h | 3 +++ keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c | 7 ------- keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk | 2 ++ 3 files changed, 5 insertions(+), 7 deletions(-) diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h index 9d842a7918..4955c0b136 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/config.h @@ -34,3 +34,6 @@ #define RGB_MATRIX_STARTUP_MODE RGB_MATRIX_SOLID_COLOR #define RGB_DISABLE_WHEN_USB_SUSPENDED #endif + +// Reduce layers to 3 to save memory +#define DYNAMIC_KEYMAP_LAYER_COUNT 3 diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c index 1b85354be5..98711fcd86 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/keymap.c @@ -41,13 +41,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_NO, KC_DEL, KC_INS, KC_NO, KC_NO, KC_NO, KC_P0, KC_00, KC_PDOT, KC_PSLS, _______, _______, _______, _______, _______, _______, KC_BSPC, _______, _______, _______, _______, _______ ), - [_RAISE] = LAYOUT_65_ansi_blocker( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, KC_SPC, _______, _______, _______, _______, _______ - ), }; #ifdef RGB_MATRIX_ENABLE diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk index 91153c75a3..c26db537ee 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/jonavin/rules.mk @@ -1,8 +1,10 @@ VIA_ENABLE = yes LTO_ENABLE = yes +CONSOLE_ENABLE = no MOUSEKEY_ENABLE = no TAP_DANCE_ENABLE = yes BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +EXTRAKEY_ENABLE = no TD_LSFT_CAPSLOCK_ENABLE = yes IDLE_TIMEOUT_ENABLE = yes From be9fa68785b30f6cab1c3e2700a2689f601d84af Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Wed, 4 May 2022 05:48:41 +1000 Subject: [PATCH 356/699] Also format *.hpp files. (#16997) --- lib/python/qmk/cli/format/c.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/python/qmk/cli/format/c.py b/lib/python/qmk/cli/format/c.py index 8eb7fa1ed0..a58aef3fbc 100644 --- a/lib/python/qmk/cli/format/c.py +++ b/lib/python/qmk/cli/format/c.py @@ -9,7 +9,7 @@ from milc import cli from qmk.path import normpath from qmk.c_parse import c_source_files -c_file_suffixes = ('c', 'h', 'cpp') +c_file_suffixes = ('c', 'h', 'cpp', 'hpp') core_dirs = ('drivers', 'quantum', 'tests', 'tmk_core', 'platforms') ignored = ('tmk_core/protocol/usb_hid', 'platforms/chibios/boards') From 5e6f9dfc4d5f2dabbfe8e27b52624b4800310544 Mon Sep 17 00:00:00 2001 From: "E.Iosifidis" Date: Wed, 4 May 2022 18:08:47 +0300 Subject: [PATCH 357/699] [Keymap] Introduced New layer & Improvements (#16921) Co-authored-by: Ryan --- .../anavi/macropad8/keymaps/vscode/keymap.c | 142 ++++++++++++++++-- 1 file changed, 133 insertions(+), 9 deletions(-) diff --git a/keyboards/anavi/macropad8/keymaps/vscode/keymap.c b/keyboards/anavi/macropad8/keymaps/vscode/keymap.c index be6ac07f58..46d4a7d8b3 100644 --- a/keyboards/anavi/macropad8/keymaps/vscode/keymap.c +++ b/keyboards/anavi/macropad8/keymaps/vscode/keymap.c @@ -18,39 +18,72 @@ enum layers { _BASIC, + _BRACKETS, + _SELECTORS, _FN, }; #define KC_X0 LT(_FN, KC_ESC) +static char current_alpha_oled [12] = "None"; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* _BASIC Layer * ,-------------------------------------. * | Toggle | Toggle | | | - * | Block | Line | Undo | Redo | + * | Block | Line | Undo | Search | * | Comment | Comment | | | * |---------+---------+--------+---------+ * | | | | TO | - * | Cut | Copy | Paste | _FN | + * | Cut | Copy | Paste | _BASIC | * | | | | | - * `-------------------------------------' + * `-------------------------------------' */ [_BASIC] = LAYOUT_ortho_2x4( - RCS(KC_A), C(KC_SLASH), C(KC_Z), C(KC_Y), - C(KC_X), C(KC_C), C(KC_V), TO(_FN) + RCS(KC_A), LCTL(KC_SLASH), LCTL(KC_Z), LCTL(KC_F), + LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), TO(_BRACKETS) + ), +/* _BRACKETS Layer + * ,-----------------------------------------. + * | | | | | + * | ( | [ | { | Bksp | + * | | | | | + * |---------+---------+--------+------------+ + * | | | | TO | + * | Del | Copy | Paste | _SELECTORS | + * | | | | | + * `----------------------------------------' + */ + [_BRACKETS] = LAYOUT_ortho_2x4( + S(KC_9), KC_LBRC, S(KC_LBRC), KC_BACKSPACE, + KC_DEL, C(KC_C), C(KC_V), TO(_SELECTORS) + ), +/* _SELECTORS Layer +* ,-------------------------------------. +* | | | | | +* | Select | Save | Undo | Bksp | +* | All | | | | +* |---------+---------+--------+---------+ +* | | | | TO | +* | Cut | Copy | Paste | _FN | +* | | | | | +* `-------------------------------------' +*/ + [_SELECTORS] = LAYOUT_ortho_2x4( + C(KC_A), C(KC_S), C(KC_Z), KC_BACKSPACE, + C(KC_X), C(KC_C), C(KC_V), TO(_FN) ), /* _FN Layer * ,--------------------------------------------. * | RGB | RGB | RGB | RGB | * | Toggle | Mode | Mode | Snake | - * | | Forward | Reverse | Mode | + * | | Forward | Reverse | Mode | * |-----------+-----------+-----------+---------+ * | | Cycle | Toggle | TO | - * | BackLight | BackLight | BackLight | _BASIC | - * | Toggle | Levels | | | - * `--------------------------------------------' + * | BackLight | BackLight | BackLight | _BASIC | + * | Toggle | Levels | Breathing | | + * `--------------------------------------------' */ [_FN] = LAYOUT_ortho_2x4( RGB_TOG, RGB_MOD, RGB_M_R, RGB_M_SN, @@ -63,6 +96,89 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; // flips the display 180 degrees if offhand } +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + if (record->event.pressed) { + char string [33]; + switch(keycode) + { + //First Layer with Basic Keys + case LCTL(KC_X): + strncpy(current_alpha_oled, "Cut", sizeof(current_alpha_oled)); + break; + case LCTL(KC_F): + strncpy(current_alpha_oled, "Search", sizeof(current_alpha_oled)); + break; + case LCTL(KC_Z): + strncpy(current_alpha_oled, "Undo", sizeof(current_alpha_oled)); + break; + case LCTL(KC_C): + strncpy(current_alpha_oled, "Copy", sizeof(current_alpha_oled)); + break; + case LCTL(KC_V): + strncpy(current_alpha_oled, "Paste", sizeof(current_alpha_oled)); + break; + case RCS(KC_A): + strncpy(current_alpha_oled, "Block cmt.", sizeof(current_alpha_oled)); + break; + case LCTL(KC_SLASH): + strncpy(current_alpha_oled, "Line cmt.", sizeof(current_alpha_oled)); + break; + //Second Layer with Brackets + case S(KC_9): + strncpy(current_alpha_oled, "()", sizeof(current_alpha_oled)); + break; + case KC_LBRC: + strncpy(current_alpha_oled, "[]", sizeof(current_alpha_oled)); + break; + case S(KC_LBRC): + strncpy(current_alpha_oled, "{}", sizeof(current_alpha_oled)); + break; + case KC_BACKSPACE: + strncpy(current_alpha_oled, "Backspace", sizeof(current_alpha_oled)); + break; + case KC_DEL: + strncpy(current_alpha_oled, "Del", sizeof(current_alpha_oled)); + break; + // Selector Layer keys + case C(KC_A): + strncpy(current_alpha_oled, "Select All", sizeof(current_alpha_oled)); + break; + case C(KC_S): + strncpy(current_alpha_oled, "Save", sizeof(current_alpha_oled)); + break; + // FN Layer keys + case RGB_TOG: + strncpy(current_alpha_oled, "RGB Toggle", sizeof(current_alpha_oled)); + break; + case RGB_MOD: + strncpy(current_alpha_oled, "RGB Fwd", sizeof(current_alpha_oled)); + break; + case RGB_M_R: + strncpy(current_alpha_oled, "RGB Rev", sizeof(current_alpha_oled)); + break; + case RGB_MODE_SNAKE: + strncpy(current_alpha_oled, "RGB Snk", sizeof(current_alpha_oled)); + break; + case BL_TOGG: + strncpy(current_alpha_oled, "BkLgt Tog", sizeof(current_alpha_oled)); + break; + case BL_STEP: + strncpy(current_alpha_oled, "BkLgt Lvl", sizeof(current_alpha_oled)); + break; + case BL_BRTG: + strncpy(current_alpha_oled, "BkLgt Brth", sizeof(current_alpha_oled)); + break; + //FN Key keycodes + case TO(_BASIC) ... TO(_FN): + strncpy(current_alpha_oled, "Switcher", sizeof(current_alpha_oled)); + break; + default: + strncpy(current_alpha_oled, itoa(keycode, string, 10), sizeof(current_alpha_oled)); + break; + } + } + return true; +} bool oled_task_user(void) { // Host Keyboard Layer Status @@ -73,6 +189,12 @@ bool oled_task_user(void) { case _BASIC: oled_write_ln_P(PSTR("Basic"), false); break; + case _BRACKETS: + oled_write_ln_P(PSTR("Brkts"), false); + break; + case _SELECTORS: + oled_write_ln_P(PSTR("Selct"), false); + break; case _FN: oled_write_ln_P(PSTR("FN"), false); break; @@ -90,6 +212,8 @@ bool oled_task_user(void) { oled_write_ln_P(led_state.caps_lock ? PSTR("On") : PSTR("Off"), false); oled_write_P(PSTR("Backlit: "), false); oled_write_ln_P(is_backlight_enabled() ? PSTR("On") : PSTR("Off"), false); + oled_write_P(PSTR("Last Key: "), false); + oled_write_ln(current_alpha_oled, false); #ifdef RGBLIGHT_ENABLE static char rgbStatusLine1[26] = {0}; snprintf(rgbStatusLine1, sizeof(rgbStatusLine1), "RGB Mode: %d", rgblight_get_mode()); From 7608902794d94f0c833ac9f5ae0047a9403408a8 Mon Sep 17 00:00:00 2001 From: npspears <40127181+npspears@users.noreply.github.com> Date: Wed, 4 May 2022 10:10:35 -0500 Subject: [PATCH 358/699] [Keyboard] Add per-key RGB for Quark LP RGB variants (#16671) Co-authored-by: Drashna Jaelre --- keyboards/checkerboards/quark_lp/config.h | 69 +++++++++++++++++++-- keyboards/checkerboards/quark_lp/quark_lp.c | 22 +++++++ keyboards/checkerboards/quark_lp/rules.mk | 3 +- 3 files changed, 87 insertions(+), 7 deletions(-) diff --git a/keyboards/checkerboards/quark_lp/config.h b/keyboards/checkerboards/quark_lp/config.h index 78197d33a2..08f8c75b67 100644 --- a/keyboards/checkerboards/quark_lp/config.h +++ b/keyboards/checkerboards/quark_lp/config.h @@ -46,8 +46,7 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -// ws2812 options -#define RGB_DI_PIN C2 // pin the DI on the ws2812 is hooked-up to +// RGB Matrix #define RGBLIGHT_EFFECT_BREATHING #define RGBLIGHT_EFFECT_RAINBOW_MOOD #define RGBLIGHT_EFFECT_RAINBOW_SWIRL @@ -58,7 +57,65 @@ #define RGBLIGHT_EFFECT_RGB_TEST #define RGBLIGHT_EFFECT_ALTERNATING #define RGBLIGHT_EFFECT_TWINKLE -#define RGBLED_NUM 14 // number of LEDs -#define RGBLIGHT_HUE_STEP 12 // units to step when in/decreasing hue -#define RGBLIGHT_SAT_STEP 12 // units to step when in/decresing saturation -#define RGBLIGHT_VAL_STEP 12 // units to step when in/decreasing value (brightness) +#define RGB_DI_PIN C2 // pin the DI on the ws2812 is hooked-up to +#define RGBLED_NUM 51 // number of LEDs + +#ifdef RGB_MATRIX_ENABLE +#define RGB_MATRIX_KEYPRESSES // reacts to keypresses +#define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +#define RGB_MATRIX_FRAMEBUFFER_EFFECTS +#define RGB_MATRIX_MAXIMUM_BRIGHTNESS 125 // limits maximum brightness of LEDs to 125 out of 255. Higher may cause the controller to crash. +#define RGB_MATRIX_HUE_STEP 8 +#define RGB_MATRIX_SAT_STEP 8 +#define RGB_MATRIX_VAL_STEP 8 +#define RGB_MATRIX_SPD_STEP 10 + +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +#define ENABLE_RGB_MATRIX_ALPHAS_MODS +#define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +#define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_BREATHING +#define ENABLE_RGB_MATRIX_BAND_SAT +#define ENABLE_RGB_MATRIX_BAND_VAL +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +#define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +#define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +#define ENABLE_RGB_MATRIX_CYCLE_ALL +#define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +#define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +#define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +#define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +#define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +#define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +#define ENABLE_RGB_MATRIX_DUAL_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_BEACON +#define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +#define ENABLE_RGB_MATRIX_RAINDROPS +#define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +#define ENABLE_RGB_MATRIX_HUE_BREATHING +#define ENABLE_RGB_MATRIX_HUE_PENDULUM +#define ENABLE_RGB_MATRIX_HUE_WAVE +#define ENABLE_RGB_MATRIX_PIXEL_RAIN +#define ENABLE_RGB_MATRIX_PIXEL_FLOW +#define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +#define ENABLE_RGB_MATRIX_TYPING_HEATMAP +#define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +#define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +#define ENABLE_RGB_MATRIX_SPLASH +#define ENABLE_RGB_MATRIX_MULTISPLASH +#define ENABLE_RGB_MATRIX_SOLID_SPLASH +#define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif diff --git a/keyboards/checkerboards/quark_lp/quark_lp.c b/keyboards/checkerboards/quark_lp/quark_lp.c index bc9a192bf5..ff8f237a5b 100644 --- a/keyboards/checkerboards/quark_lp/quark_lp.c +++ b/keyboards/checkerboards/quark_lp/quark_lp.c @@ -15,3 +15,25 @@ */ #include "quark_lp.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + // Key Matrix to LED Index + { 11, 10, 9, 8, 7, NO_LED, 6, NO_LED, 5, NO_LED, 4, 3, 2, 1, 0 }, + { 12, 13, 14, 15, 16, NO_LED, 17, NO_LED, 18, NO_LED, 19, 20, 21, 22, 23 }, + { 35, 34, 33, 32, 31, NO_LED, 30, NO_LED, 29, NO_LED, 28, 27, 26, 25, 24 }, + { 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 } +}, { + // LED Index to Physical Position + { 244, 0 }, { 224, 0 }, { 203, 0 }, { 183, 0 }, { 163, 0 }, { 143, 0 }, { 122, 0 }, { 102, 0 }, { 81, 0 }, { 61, 0 }, { 41, 0 }, { 20, 0 }, + { 20, 21 }, { 41, 21 }, { 61, 21 }, { 81, 21 }, { 102, 21 }, { 122, 21 }, { 143, 21 }, { 163, 21 }, { 183, 21 }, { 203, 21 }, { 224, 21 }, { 244, 21 }, + { 244, 43 }, { 224, 43 }, { 203, 43 }, { 183, 43 }, { 163, 43 }, { 143, 43 }, { 122, 43 }, { 102, 43 }, { 81, 43 }, { 61, 43 }, { 41, 43 }, { 20, 43 }, + { 20, 64 }, { 41, 64 }, { 61, 64 }, { 81, 64 }, { 102, 64 }, { 112, 64 }, { 122, 64 }, { 132, 64 }, { 143, 64 }, { 153, 64 }, { 163, 64 }, { 183, 64 }, { 203, 64 }, { 224, 64 }, { 244, 64 } +}, { + // LED Index to Flag + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 +} }; +#endif diff --git a/keyboards/checkerboards/quark_lp/rules.mk b/keyboards/checkerboards/quark_lp/rules.mk index 155e14ca68..d5bf779f12 100644 --- a/keyboards/checkerboards/quark_lp/rules.mk +++ b/keyboards/checkerboards/quark_lp/rules.mk @@ -14,5 +14,6 @@ CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output +RGB_MATRIX_ENABLE = yes From 11e20fa0c9fbe60c1559659cb90ade8f5fb39c1f Mon Sep 17 00:00:00 2001 From: Mateusz Mojsiejuk Date: Thu, 5 May 2022 04:55:47 +0200 Subject: [PATCH 359/699] Add missing dependency for qmk setup on Fedora (#17003) --- util/install/fedora.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/util/install/fedora.sh b/util/install/fedora.sh index e123447d3f..b140438b42 100755 --- a/util/install/fedora.sh +++ b/util/install/fedora.sh @@ -8,7 +8,7 @@ _qmk_install() { clang diffutils git gcc glibc-headers kernel-devel kernel-headers \ make unzip wget zip python3 avr-binutils avr-gcc avr-libc \ arm-none-eabi-binutils-cs arm-none-eabi-gcc-cs arm-none-eabi-newlib \ - avrdude dfu-programmer dfu-util hidapi + avrdude dfu-programmer dfu-util hidapi libusb1-devel python3 -m pip install --user -r $QMK_FIRMWARE_DIR/requirements.txt } From 3fbf9dc2902d53940a1cb41d473dd63034f70839 Mon Sep 17 00:00:00 2001 From: Xelus22 <17491233+Xelus22@users.noreply.github.com> Date: Thu, 5 May 2022 18:08:35 +1000 Subject: [PATCH 360/699] [Keyboard] RS60 Rev2 Addition (#16988) --- keyboards/xelus/rs60/config.h | 36 +----------- keyboards/xelus/rs60/readme.md | 3 +- keyboards/xelus/rs60/rev1/config.h | 49 ++++++++++++++++ keyboards/xelus/rs60/rev1/rev1.c | 16 +++++ keyboards/xelus/rs60/rev1/rev1.h | 34 +++++++++++ keyboards/xelus/rs60/{ => rev1}/rules.mk | 0 keyboards/xelus/rs60/rev2/chconf.h | 30 ++++++++++ keyboards/xelus/rs60/rev2/config.h | 74 ++++++++++++++++++++++++ keyboards/xelus/rs60/rev2/halconf.h | 26 +++++++++ keyboards/xelus/rs60/rev2/mcuconf.h | 42 ++++++++++++++ keyboards/xelus/rs60/rev2/rev2.c | 16 +++++ keyboards/xelus/rs60/rev2/rev2.h | 34 +++++++++++ keyboards/xelus/rs60/rev2/rules.mk | 28 +++++++++ keyboards/xelus/rs60/rs60.h | 22 ++----- 14 files changed, 359 insertions(+), 51 deletions(-) create mode 100644 keyboards/xelus/rs60/rev1/config.h create mode 100644 keyboards/xelus/rs60/rev1/rev1.c create mode 100644 keyboards/xelus/rs60/rev1/rev1.h rename keyboards/xelus/rs60/{ => rev1}/rules.mk (100%) create mode 100644 keyboards/xelus/rs60/rev2/chconf.h create mode 100644 keyboards/xelus/rs60/rev2/config.h create mode 100644 keyboards/xelus/rs60/rev2/halconf.h create mode 100644 keyboards/xelus/rs60/rev2/mcuconf.h create mode 100644 keyboards/xelus/rs60/rev2/rev2.c create mode 100644 keyboards/xelus/rs60/rev2/rev2.h create mode 100644 keyboards/xelus/rs60/rev2/rules.mk diff --git a/keyboards/xelus/rs60/config.h b/keyboards/xelus/rs60/config.h index ce0c2e1d02..52c27df6e8 100644 --- a/keyboards/xelus/rs60/config.h +++ b/keyboards/xelus/rs60/config.h @@ -1,4 +1,4 @@ -/* Copyright 2021 Harrison Chan (Xelus) +/* Copyright 2022 Harrison Chan (Xelus) * * 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 @@ -13,37 +13,5 @@ * You should have received a copy of the GNU General Public License * along with this program. If not, see . */ -#pragma once -// USB Device descriptor parameter -#define VENDOR_ID 0x5845 // XE -#define PRODUCT_ID 0x5253 // RS60 -#define DEVICE_VER 0x0001 -#define MANUFACTURER Xelus -#define PRODUCT RS60 - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 14 - -#define MATRIX_ROW_PINS { B3, B7, F0, F4, F1 } -#define MATRIX_COL_PINS { E6, D5, D3, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4} -#define UNUSED_PINS - -// COL2ROW or ROW2COL -#define DIODE_DIRECTION COL2ROW - -// Set 0 if debouncing isn't needed -#define DEBOUNCE 5 - -// 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 - -//Indicator -#define LED_CAPS_LOCK_PIN B0 - -//Force NKRO -#define FORCE_NKRO +#include "config_common.h" diff --git a/keyboards/xelus/rs60/readme.md b/keyboards/xelus/rs60/readme.md index 381aa9dc0d..9e6d17eb86 100644 --- a/keyboards/xelus/rs60/readme.md +++ b/keyboards/xelus/rs60/readme.md @@ -8,7 +8,8 @@ Make example for this keyboard (after setting up your build environment): - make xelus/rs60:default + make xelus/rs60/rev1:default + make xelus/rs60/rev2:default Reset your keyboard in 3 ways: diff --git a/keyboards/xelus/rs60/rev1/config.h b/keyboards/xelus/rs60/rev1/config.h new file mode 100644 index 0000000000..ce0c2e1d02 --- /dev/null +++ b/keyboards/xelus/rs60/rev1/config.h @@ -0,0 +1,49 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ +#pragma once + +// USB Device descriptor parameter +#define VENDOR_ID 0x5845 // XE +#define PRODUCT_ID 0x5253 // RS60 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Xelus +#define PRODUCT RS60 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +#define MATRIX_ROW_PINS { B3, B7, F0, F4, F1 } +#define MATRIX_COL_PINS { E6, D5, D3, F5, F6, F7, C7, C6, B6, B5, B4, D7, D6, D4} +#define UNUSED_PINS + +// COL2ROW or ROW2COL +#define DIODE_DIRECTION COL2ROW + +// Set 0 if debouncing isn't needed +#define DEBOUNCE 5 + +// 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 + +//Indicator +#define LED_CAPS_LOCK_PIN B0 + +//Force NKRO +#define FORCE_NKRO diff --git a/keyboards/xelus/rs60/rev1/rev1.c b/keyboards/xelus/rs60/rev1/rev1.c new file mode 100644 index 0000000000..d997ff979e --- /dev/null +++ b/keyboards/xelus/rs60/rev1/rev1.c @@ -0,0 +1,16 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ + #include "rev1.h" diff --git a/keyboards/xelus/rs60/rev1/rev1.h b/keyboards/xelus/rs60/rev1/rev1.h new file mode 100644 index 0000000000..9b8e841de5 --- /dev/null +++ b/keyboards/xelus/rs60/rev1/rev1.h @@ -0,0 +1,34 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_60_ansi_split_bs_rshift( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + 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, K3B, K3C, K3D, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D \ +) { \ + { 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, K2D }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, XXX, K3B, K3C, K3D }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D } \ +} diff --git a/keyboards/xelus/rs60/rules.mk b/keyboards/xelus/rs60/rev1/rules.mk similarity index 100% rename from keyboards/xelus/rs60/rules.mk rename to keyboards/xelus/rs60/rev1/rules.mk diff --git a/keyboards/xelus/rs60/rev2/chconf.h b/keyboards/xelus/rs60/rev2/chconf.h new file mode 100644 index 0000000000..a9608a4c75 --- /dev/null +++ b/keyboards/xelus/rs60/rev2/chconf.h @@ -0,0 +1,30 @@ +/* Copyright 2022 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/acheron/austin/chconf.h -r platforms/chibios/common/configs/chconf.h` + */ + +#pragma once + +#define CH_CFG_ST_FREQUENCY 10000 + +#define CH_CFG_OPTIMIZE_SPEED FALSE + +#define CH_CFG_USE_CONDVARS_TIMEOUT FALSE + +#include_next diff --git a/keyboards/xelus/rs60/rev2/config.h b/keyboards/xelus/rs60/rev2/config.h new file mode 100644 index 0000000000..cbda2089ef --- /dev/null +++ b/keyboards/xelus/rs60/rev2/config.h @@ -0,0 +1,74 @@ +/* Copyright 2022 Harrison Chan (Xelus) + * + * 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 . + */ +#pragma once + +// USB Device descriptor parameter +#define VENDOR_ID 0x5845 // XE +#define PRODUCT_ID 0x5253 // RS60 +#define DEVICE_VER 0x0002 +#define MANUFACTURER Xelus +#define PRODUCT RS60 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +#define MATRIX_ROW_PINS { B15, B14, B12, B1, B0 } +#define MATRIX_COL_PINS { B13, A7, A6, A5, A4, A3, A2, B7, B6, B5, B4, B3, A15, A14 } +#define UNUSED_PINS + +// COL2ROW or ROW2COL +#define DIODE_DIRECTION COL2ROW + +// Set 0 if debouncing isn't needed +#define DEBOUNCE 5 + +// 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 + +//Indicator +#define LED_CAPS_LOCK_PIN A1 + +// I2C config +#define I2C_DRIVER I2CD3 +#define I2C1_SCL_PIN B8 +#define I2C1_SDA_PIN B9 +#define I2C1_SCL_PAL_MODE 4 +#define I2C1_SDA_PAL_MODE 4 +#define I2C1_CLOCK_SPEED 400000 +#define I2C1_DUTY_CYCLE FAST_DUTY_CYCLE_2 + +// EEPROM config +// 24LC32 +#define EXTERNAL_EEPROM_BYTE_COUNT 4096 +#define EXTERNAL_EEPROM_PAGE_SIZE 32 +#define EXTERNAL_EEPROM_ADDRESS_SIZE 2 +#define EXTERNAL_EEPROM_WRITE_TIME 5 + +// More EEPROM for layers +#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 4095 + +// Hardware Defines +#define EARLY_INIT_PERFORM_BOOTLOADER_JUMP TRUE + +// HSE CLK +#define STM32_HSECLK 16000000 + +//Force NKRO +#define FORCE_NKRO diff --git a/keyboards/xelus/rs60/rev2/halconf.h b/keyboards/xelus/rs60/rev2/halconf.h new file mode 100644 index 0000000000..b3e848852b --- /dev/null +++ b/keyboards/xelus/rs60/rev2/halconf.h @@ -0,0 +1,26 @@ +/* Copyright 2022 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/acheron/austin/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_I2C TRUE + +#include_next diff --git a/keyboards/xelus/rs60/rev2/mcuconf.h b/keyboards/xelus/rs60/rev2/mcuconf.h new file mode 100644 index 0000000000..2ef15d0720 --- /dev/null +++ b/keyboards/xelus/rs60/rev2/mcuconf.h @@ -0,0 +1,42 @@ +/* Copyright 2022 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/xelus/kangaroo/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h` + */ + +#pragma once + +#include_next + +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE +#undef STM32_PPRE1 +#undef STM32_PPRE2 + +// 64MHz core +#define STM32_PLLM_VALUE 8 +#define STM32_PLLN_VALUE 168 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 7 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE1_DIV1 + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE diff --git a/keyboards/xelus/rs60/rev2/rev2.c b/keyboards/xelus/rs60/rev2/rev2.c new file mode 100644 index 0000000000..f51e262ea0 --- /dev/null +++ b/keyboards/xelus/rs60/rev2/rev2.c @@ -0,0 +1,16 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ + #include "rev2.h" diff --git a/keyboards/xelus/rs60/rev2/rev2.h b/keyboards/xelus/rs60/rev2/rev2.h new file mode 100644 index 0000000000..9b8e841de5 --- /dev/null +++ b/keyboards/xelus/rs60/rev2/rev2.h @@ -0,0 +1,34 @@ +/* Copyright 2021 Harrison Chan (Xelus) + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_60_ansi_split_bs_rshift( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ + 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, K3B, K3C, K3D, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D \ +) { \ + { 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, K2D }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, XXX, K3B, K3C, K3D }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D } \ +} diff --git a/keyboards/xelus/rs60/rev2/rules.mk b/keyboards/xelus/rs60/rev2/rules.mk new file mode 100644 index 0000000000..95c0f0bc60 --- /dev/null +++ b/keyboards/xelus/rs60/rev2/rules.mk @@ -0,0 +1,28 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +EEPROM_DRIVER = i2c + +# Save hid interface +KEYBOARD_SHARED_EP = yes + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE + +LAYOUTS = 60_ansi_split_bs_rshift diff --git a/keyboards/xelus/rs60/rs60.h b/keyboards/xelus/rs60/rs60.h index 9b8e841de5..81e4470db5 100644 --- a/keyboards/xelus/rs60/rs60.h +++ b/keyboards/xelus/rs60/rs60.h @@ -1,4 +1,4 @@ -/* Copyright 2021 Harrison Chan (Xelus) +/* Copyright 2022 Harrison Chan (Xelus) * * 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 @@ -17,18 +17,8 @@ #include "quantum.h" -#define XXX KC_NO - -#define LAYOUT_60_ansi_split_bs_rshift( \ - K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K2D, \ - 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, K3B, K3C, K3D, \ - K40, K41, K42, K45, K49, K4A, K4C, K4D \ -) { \ - { 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, K2D }, \ - { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, XXX, K3B, K3C, K3D }, \ - { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D } \ -} +#if defined(KEYBOARD_xelus_rs60_rev1) + #include "rev1.h" +#elif defined(KEYBOARD_xelus_rs60_rev2) + #include "rev2.h" +#endif From 890dfebe8ddb971117d48031e4317d5387447b35 Mon Sep 17 00:00:00 2001 From: Josh Hinnebusch Date: Thu, 5 May 2022 06:31:52 -0400 Subject: [PATCH 361/699] Add ibis PCB (#17001) * initial ibis commit * updates etc * layout updates to fix mismatched keys * Apply suggestions from code review Co-authored-by: Joel Challis * Update keyboards/hineybush/ibis/info.json Co-authored-by: Joel Challis * Update keyboards/hineybush/ibis/readme.md Co-authored-by: Ryan Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/hineybush/ibis/config.h | 20 + keyboards/hineybush/ibis/info.json | 782 ++++++++++++++++++ .../hineybush/ibis/keymaps/default/keymap.c | 28 + keyboards/hineybush/ibis/keymaps/via/keymap.c | 42 + keyboards/hineybush/ibis/keymaps/via/rules.mk | 1 + keyboards/hineybush/ibis/readme.md | 27 + keyboards/hineybush/ibis/rules.mk | 1 + 7 files changed, 901 insertions(+) create mode 100644 keyboards/hineybush/ibis/config.h create mode 100644 keyboards/hineybush/ibis/info.json create mode 100644 keyboards/hineybush/ibis/keymaps/default/keymap.c create mode 100644 keyboards/hineybush/ibis/keymaps/via/keymap.c create mode 100644 keyboards/hineybush/ibis/keymaps/via/rules.mk create mode 100644 keyboards/hineybush/ibis/readme.md create mode 100644 keyboards/hineybush/ibis/rules.mk diff --git a/keyboards/hineybush/ibis/config.h b/keyboards/hineybush/ibis/config.h new file mode 100644 index 0000000000..e8601cd54b --- /dev/null +++ b/keyboards/hineybush/ibis/config.h @@ -0,0 +1,20 @@ +// Copyright 2022 Josh Hinnebusch (@hineybush) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +/* + * 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 diff --git a/keyboards/hineybush/ibis/info.json b/keyboards/hineybush/ibis/info.json new file mode 100644 index 0000000000..69960e13ab --- /dev/null +++ b/keyboards/hineybush/ibis/info.json @@ -0,0 +1,782 @@ +{ + "manufacturer": "Hiney LLC", + "keyboard_name": "ibis", + "maintainer": "hineybush", + "bootloader": "atmel-dfu", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": [ + "F0", + "F1", + "F4", + "F5", + "F6", + "F7", + "B6", + "B5", + "D6", + "D4" + ], + "rows": [ + "B0", + "B1", + "B2", + "B3", + "C7", + "C6", + "B4", + "D7", + "D5", + "D3" + ] + }, + "processor": "atmega32u4", + "url": "", + "usb": { + "device_version": "1.0.0", + "pid": "0xEAA9", + "vid": "0x04D8" + }, + "indicators": { + "num_lock": "B7", + "caps_lock": "D2" + }, + "layouts": { + "LAYOUT_all": { + "layout": [ + { + "matrix": [ + 0, + 0 + ], + "x": 2.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 0 + ], + "x": 3.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 1 + ], + "x": 4.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 1 + ], + "x": 5.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 2 + ], + "x": 6.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 2 + ], + "x": 7.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 3 + ], + "x": 8.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 3 + ], + "x": 9.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 4 + ], + "x": 10.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 4 + ], + "x": 11.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 5 + ], + "x": 12.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 5 + ], + "x": 13.5, + "y": 1.25 + }, + { + "matrix": [ + 0, + 6 + ], + "x": 14.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 6 + ], + "x": 15.5, + "y": 1.25 + }, + { + "matrix": [ + 1, + 7 + ], + "x": 16.5, + "y": 1.25 + }, + { + "matrix": [ + 3, + 7 + ], + "x": 17.75, + "y": 1.25 + }, + { + "matrix": [ + 0, + 8 + ], + "x": 19, + "y": 1.25 + }, + { + "matrix": [ + 1, + 8 + ], + "x": 20, + "y": 1.25 + }, + { + "matrix": [ + 0, + 9 + ], + "x": 21, + "y": 1.25 + }, + { + "matrix": [ + 1, + 9 + ], + "x": 22, + "y": 1.25 + }, + { + "matrix": [ + 2, + 0 + ], + "x": 2.5, + "y": 2.25, + "w": 1.5 + }, + { + "matrix": [ + 3, + 0 + ], + "x": 4, + "y": 2.25 + }, + { + "matrix": [ + 2, + 1 + ], + "x": 5, + "y": 2.25 + }, + { + "matrix": [ + 3, + 1 + ], + "x": 6, + "y": 2.25 + }, + { + "matrix": [ + 2, + 2 + ], + "x": 7, + "y": 2.25 + }, + { + "matrix": [ + 3, + 2 + ], + "x": 8, + "y": 2.25 + }, + { + "matrix": [ + 2, + 3 + ], + "x": 9, + "y": 2.25 + }, + { + "matrix": [ + 3, + 3 + ], + "x": 10, + "y": 2.25 + }, + { + "matrix": [ + 2, + 4 + ], + "x": 11, + "y": 2.25 + }, + { + "matrix": [ + 3, + 4 + ], + "x": 12, + "y": 2.25 + }, + { + "matrix": [ + 2, + 5 + ], + "x": 13, + "y": 2.25 + }, + { + "matrix": [ + 3, + 5 + ], + "x": 14, + "y": 2.25 + }, + { + "matrix": [ + 2, + 6 + ], + "x": 15, + "y": 2.25 + }, + { + "matrix": [ + 3, + 6 + ], + "x": 16, + "y": 2.25, + "w": 1.5 + }, + { + "matrix": [ + 5, + 7 + ], + "x": 17.75, + "y": 2.25 + }, + { + "matrix": [ + 2, + 8 + ], + "x": 19, + "y": 2.25 + }, + { + "matrix": [ + 3, + 8 + ], + "x": 20, + "y": 2.25 + }, + { + "matrix": [ + 2, + 9 + ], + "x": 21, + "y": 2.25 + }, + { + "matrix": [ + 3, + 9 + ], + "x": 22, + "y": 2.25 + }, + { + "matrix": [ + 4, + 0 + ], + "x": 2.5, + "y": 3.25, + "w": 1.75 + }, + { + "matrix": [ + 5, + 0 + ], + "x": 4.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 1 + ], + "x": 5.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 1 + ], + "x": 6.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 2 + ], + "x": 7.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 2 + ], + "x": 8.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 3 + ], + "x": 9.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 3 + ], + "x": 10.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 4 + ], + "x": 11.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 4 + ], + "x": 12.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 5 + ], + "x": 13.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 5 + ], + "x": 14.25, + "y": 3.25 + }, + { + "matrix": [ + 4, + 6 + ], + "x": 15.25, + "y": 3.25 + }, + { + "matrix": [ + 5, + 6 + ], + "x": 15.25, + "y": 3.25, + "w": 2.25 + }, + { + "matrix": [ + 4, + 8 + ], + "x": 19, + "y": 3.25 + }, + { + "matrix": [ + 5, + 8 + ], + "x": 20, + "y": 3.25 + }, + { + "matrix": [ + 4, + 9 + ], + "x": 21, + "y": 3.25 + }, + { + "matrix": [ + 5, + 9 + ], + "x": 22, + "y": 3.25 + }, + { + "matrix": [ + 6, + 0 + ], + "x": 2.5, + "y": 4.25, + "w": 1.25 + }, + { + "matrix": [ + 7, + 0 + ], + "x": 3.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 1 + ], + "x": 4.75, + "y": 4.25 + }, + { + "matrix": [ + 7, + 1 + ], + "x": 5.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 2 + ], + "x": 6.75, + "y": 4.25 + }, + { + "matrix": [ + 7, + 2 + ], + "x": 7.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 3 + ], + "x": 8.75, + "y": 4.25 + }, + { + "matrix": [ + 7, + 3 + ], + "x": 9.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 4 + ], + "x": 10.75, + "y": 4.25 + }, + { + "matrix": [ + 7, + 4 + ], + "x": 11.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 5 + ], + "x": 12.75, + "y": 4.25 + }, + { + "matrix": [ + 7, + 5 + ], + "x": 13.75, + "y": 4.25 + }, + { + "matrix": [ + 6, + 6 + ], + "x": 14.75, + "y": 4.25, + "w": 1.75 + }, + { + "matrix": [ + 7, + 6 + ], + "x": 16.5, + "y": 4.25 + }, + { + "matrix": [ + 7, + 7 + ], + "x": 17.75, + "y": 4.5 + }, + { + "matrix": [ + 6, + 8 + ], + "x": 19, + "y": 4.25 + }, + { + "matrix": [ + 7, + 8 + ], + "x": 20, + "y": 4.25 + }, + { + "matrix": [ + 6, + 9 + ], + "x": 21, + "y": 4.25 + }, + { + "matrix": [ + 7, + 9 + ], + "x": 22, + "y": 4.25 + }, + { + "matrix": [ + 8, + 0 + ], + "x": 2.5, + "y": 5.25, + "w": 1.5 + }, + { + "matrix": [ + 9, + 0 + ], + "x": 4, + "y": 5.25 + }, + { + "matrix": [ + 8, + 1 + ], + "x": 5, + "y": 5.25, + "w": 1.5 + }, + { + "matrix": [ + 8, + 3 + ], + "x": 6.5, + "y": 5.25, + "w": 6.25 + }, + { + "matrix": [ + 8, + 5 + ], + "x": 12.75, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [ + 9, + 5 + ], + "x": 14, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [ + 8, + 6 + ], + "x": 15.25, + "y": 5.25, + "w": 1.25 + }, + { + "matrix": [ + 9, + 6 + ], + "x": 16.75, + "y": 5.5 + }, + { + "matrix": [ + 9, + 7 + ], + "x": 17.75, + "y": 5.5 + }, + { + "matrix": [ + 8, + 8 + ], + "x": 18.75, + "y": 5.5 + }, + { + "matrix": [ + 9, + 8 + ], + "x": 20, + "y": 5.25 + }, + { + "matrix": [ + 8, + 9 + ], + "x": 21, + "y": 5.25 + }, + { + "matrix": [ + 9, + 9 + ], + "x": 22, + "y": 5.25 + } + ] + } + } +} diff --git a/keyboards/hineybush/ibis/keymaps/default/keymap.c b/keyboards/hineybush/ibis/keymaps/default/keymap.c new file mode 100644 index 0000000000..46f0d0221e --- /dev/null +++ b/keyboards/hineybush/ibis/keymaps/default/keymap.c @@ -0,0 +1,28 @@ +// Copyright 2022 Josh Hinnebusch (@hineybush) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k17, k37, k08, k18, k09, k19, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k57, k28, k38, k29, k39, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k48, k58, k49, k59, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, k77, k68, k78, k69, k79, \ + k80, k90, k81, k83, k85, k95, k86, k96, k97, k88, k98, k89, k99 \ */ + + [0] = LAYOUT_all( + 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_GRV, KC_BSPC, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, + 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_TRNS, KC_UP, KC_P1, KC_P2, KC_P3, KC_TRNS, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT + ), + [1] = LAYOUT_all( + KC_GRV, 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_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_LCTL, KC_LGUI, KC_LALT, KC_MPLY, KC_LALT, KC_TRNS, KC_RGUI, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/hineybush/ibis/keymaps/via/keymap.c b/keyboards/hineybush/ibis/keymaps/via/keymap.c new file mode 100644 index 0000000000..d406afb052 --- /dev/null +++ b/keyboards/hineybush/ibis/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +// Copyright 2022 Josh Hinnebusch (@hineybush) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + k00, k10, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k17, k37, k08, k18, k09, k19, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k57, k28, k38, k29, k39, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k48, k58, k49, k59, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, k77, k68, k78, k69, k79, \ + k80, k90, k81, k83, k85, k95, k86, k96, k97, k88, k98, k89, k99 \ */ + + [0] = LAYOUT_all( + 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_GRV, KC_BSPC, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + 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, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, + 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_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_TRNS, KC_UP, KC_P1, KC_P2, KC_P3, KC_TRNS, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, MO(1), KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT + ), + [1] = LAYOUT_all( + KC_GRV, 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_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_LALT, KC_TRNS, KC_RGUI, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,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, RESET ,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, + 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 + ), + [3] = LAYOUT_all( + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,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, RESET ,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, + 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 + ) +}; diff --git a/keyboards/hineybush/ibis/keymaps/via/rules.mk b/keyboards/hineybush/ibis/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/hineybush/ibis/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/hineybush/ibis/readme.md b/keyboards/hineybush/ibis/readme.md new file mode 100644 index 0000000000..0c345e7c81 --- /dev/null +++ b/keyboards/hineybush/ibis/readme.md @@ -0,0 +1,27 @@ +# hineybush/ibis + +![hineybush/ibis](https://i.imgur.com/TaCryDrh.png) + +Duck Blackbird-layout PCB for the ibis keyboard. + +* Keyboard Maintainer: [Josh Hinnebusch](https://github.com/hineybush) +* Hardware Supported: ibis +* Hardware Availability: hiney.cc + +Make example for this keyboard (after setting up your build environment): + + make hineybush/ibis:default + +Flashing example for this keyboard: + + make hineybush/ibis:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/hineybush/ibis/rules.mk b/keyboards/hineybush/ibis/rules.mk new file mode 100644 index 0000000000..6e7633bfe0 --- /dev/null +++ b/keyboards/hineybush/ibis/rules.mk @@ -0,0 +1 @@ +# This file intentionally left blank From 49267b135be6f333cf072f1cdb7f822d012bc4b3 Mon Sep 17 00:00:00 2001 From: Xelus22 <17491233+Xelus22@users.noreply.github.com> Date: Fri, 6 May 2022 16:15:49 +1000 Subject: [PATCH 362/699] [Bug] Fix RS60 Rev2 I2C (#17015) --- keyboards/xelus/rs60/rev2/config.h | 1 - 1 file changed, 1 deletion(-) diff --git a/keyboards/xelus/rs60/rev2/config.h b/keyboards/xelus/rs60/rev2/config.h index cbda2089ef..74258b1289 100644 --- a/keyboards/xelus/rs60/rev2/config.h +++ b/keyboards/xelus/rs60/rev2/config.h @@ -46,7 +46,6 @@ #define LED_CAPS_LOCK_PIN A1 // I2C config -#define I2C_DRIVER I2CD3 #define I2C1_SCL_PIN B8 #define I2C1_SDA_PIN B9 #define I2C1_SCL_PAL_MODE 4 From 8c23f87c5147f2a25784bc4501b40a5f7150b1f1 Mon Sep 17 00:00:00 2001 From: Ryan Date: Fri, 6 May 2022 22:18:03 +1000 Subject: [PATCH 363/699] Ensure .hex file output for ARM Teensys (#17014) --- builddefs/bootloader.mk | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/builddefs/bootloader.mk b/builddefs/bootloader.mk index 226213297e..1a53bfa663 100644 --- a/builddefs/bootloader.mk +++ b/builddefs/bootloader.mk @@ -97,12 +97,18 @@ ifeq ($(strip $(BOOTLOADER)), halfkay) OPT_DEFS += -DBOOTLOADER_HALFKAY BOOTLOADER_TYPE = halfkay + # Teensy 2.0 ifeq ($(strip $(MCU)), atmega32u4) BOOTLOADER_SIZE = 512 endif + # Teensy 2.0++ ifeq ($(strip $(MCU)), at90usb1286) BOOTLOADER_SIZE = 1024 endif + # Teensy LC, 3.x + ifneq (,$(filter $(MCU_ORIG), MKL26Z64 MK20DX128 MK20DX256 MK66FX1M0)) + FIRMWARE_FORMAT = hex + endif endif ifeq ($(strip $(BOOTLOADER)), caterina) OPT_DEFS += -DBOOTLOADER_CATERINA From a8a03b108c47a629de0bb748ecc4d30dd5cd2188 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 7 May 2022 09:48:26 +1000 Subject: [PATCH 364/699] usb-usb converter: community layout support (#16773) --- keyboards/converter/usb_usb/info.json | 1032 +++++++++-------- .../usb_usb/keymaps/chriskopher/keymap.c | 48 +- keyboards/converter/usb_usb/rules.mk | 2 + keyboards/converter/usb_usb/usb_usb.h | 24 +- 4 files changed, 590 insertions(+), 516 deletions(-) diff --git a/keyboards/converter/usb_usb/info.json b/keyboards/converter/usb_usb/info.json index 5ba1a46b71..8df3bb3e76 100644 --- a/keyboards/converter/usb_usb/info.json +++ b/keyboards/converter/usb_usb/info.json @@ -1,483 +1,555 @@ { - "keyboard_name": "converter/usb_usb", - "url": "", - "maintainer": "qmk", - "layouts": { - "LAYOUT_all": { - "layout": [ - {"label":"F13", "x":2, "y":0}, - {"label":"F14", "x":3, "y":0}, - {"label":"F15", "x":4, "y":0}, - {"label":"F16", "x":5, "y":0}, - {"label":"F17", "x":6.5, "y":0}, - {"label":"F18", "x":7.5, "y":0}, - {"label":"F19", "x":8.5, "y":0}, - {"label":"F20", "x":9.5, "y":0}, - {"label":"F21", "x":11, "y":0}, - {"label":"F22", "x":12, "y":0}, - {"label":"F23", "x":13, "y":0}, - {"label":"F24", "x":14, "y":0}, - {"label":"Esc", "x":0, "y":1}, - {"label":"F1", "x":2, "y":1}, - {"label":"F2", "x":3, "y":1}, - {"label":"F3", "x":4, "y":1}, - {"label":"F4", "x":5, "y":1}, - {"label":"F5", "x":6.5, "y":1}, - {"label":"F6", "x":7.5, "y":1}, - {"label":"F7", "x":8.5, "y":1}, - {"label":"F8", "x":9.5, "y":1}, - {"label":"F9", "x":11, "y":1}, - {"label":"F10", "x":12, "y":1}, - {"label":"F11", "x":13, "y":1}, - {"label":"F12", "x":14, "y":1}, - {"label":"Print Screen", "x":15.25, "y":1}, - {"label":"Scroll Lock", "x":16.25, "y":1}, - {"label":"Pause", "x":17.25, "y":1}, - {"label":"Volume Down", "x":18.5, "y":1}, - {"label":"Vol Up", "x":19.5, "y":1}, - {"label":"Mute", "x":20.5, "y":1}, - {"label":"Power", "x":21.5, "y":1}, - {"label":"Help", "x":22.75, "y":1}, - {"label":"`", "x":0, "y":2.5}, - {"label":"1", "x":1, "y":2.5}, - {"label":"2", "x":2, "y":2.5}, - {"label":"3", "x":3, "y":2.5}, - {"label":"4", "x":4, "y":2.5}, - {"label":"5", "x":5, "y":2.5}, - {"label":"6", "x":6, "y":2.5}, - {"label":"7", "x":7, "y":2.5}, - {"label":"8", "x":8, "y":2.5}, - {"label":"9", "x":9, "y":2.5}, - {"label":"0", "x":10, "y":2.5}, - {"label":"-", "x":11, "y":2.5}, - {"label":"=", "x":12, "y":2.5}, - {"label":"Yen", "x":13, "y":2.5}, - {"label":"Back Space", "x":14, "y":2.5}, - {"label":"Insert", "x":15.25, "y":2.5}, - {"label":"Home", "x":16.25, "y":2.5}, - {"label":"Page Up", "x":17.25, "y":2.5}, - {"label":"Num Lock", "x":18.5, "y":2.5}, - {"label":"Num /", "x":19.5, "y":2.5}, - {"label":"Num *", "x":20.5, "y":2.5}, - {"label":"Num -", "x":21.5, "y":2.5}, - {"label":"Stop", "x":22.75, "y":2.5}, - {"label":"Again", "x":23.75, "y":2.5}, - {"label":"Tab", "x":0, "y":3.5, "w":1.5}, - {"label":"Q", "x":1.5, "y":3.5}, - {"label":"W", "x":2.5, "y":3.5}, - {"label":"E", "x":3.5, "y":3.5}, - {"label":"R", "x":4.5, "y":3.5}, - {"label":"T", "x":5.5, "y":3.5}, - {"label":"Y", "x":6.5, "y":3.5}, - {"label":"U", "x":7.5, "y":3.5}, - {"label":"I", "x":8.5, "y":3.5}, - {"label":"O", "x":9.5, "y":3.5}, - {"label":"P", "x":10.5, "y":3.5}, - {"label":"[", "x":11.5, "y":3.5}, - {"label":"]", "x":12.5, "y":3.5}, - {"label":"\\", "x":13.5, "y":3.5, "w":1.5}, - {"label":"Delete", "x":15.25, "y":3.5}, - {"label":"End", "x":16.25, "y":3.5}, - {"label":"Page Down", "x":17.25, "y":3.5}, - {"label":"Num 7", "x":18.5, "y":3.5}, - {"label":"Num 8", "x":19.5, "y":3.5}, - {"label":"Num 9", "x":20.5, "y":3.5}, - {"label":"Num +", "x":21.5, "y":3.5}, - {"label":"Menu", "x":22.75, "y":3.5}, - {"label":"Undo", "x":23.75, "y":3.5}, - {"label":"Caps Lock", "x":0, "y":4.5, "w":1.75}, - {"label":"A", "x":1.75, "y":4.5}, - {"label":"S", "x":2.75, "y":4.5}, - {"label":"D", "x":3.75, "y":4.5}, - {"label":"F", "x":4.75, "y":4.5}, - {"label":"G", "x":5.75, "y":4.5}, - {"label":"H", "x":6.75, "y":4.5}, - {"label":"J", "x":7.75, "y":4.5}, - {"label":"K", "x":8.75, "y":4.5}, - {"label":"L", "x":9.75, "y":4.5}, - {"label":";", "x":10.75, "y":4.5}, - {"label":"\"", "x":11.75, "y":4.5}, - {"label":"ISO #", "x":12.75, "y":4.5}, - {"label":"Enter", "x":13.75, "y":4.5, "w":1.25}, - {"label":"Num 4", "x":18.5, "y":4.5}, - {"label":"Num 5", "x":19.5, "y":4.5}, - {"label":"Num 6", "x":20.5, "y":4.5}, - {"label":"Num , ", "x":21.5, "y":4.5}, - {"label":"Select", "x":22.75, "y":4.5}, - {"label":"Copy", "x":23.75, "y":4.5}, - {"label":"Shift", "x":0, "y":5.5, "w":1.25}, - {"label":"ISO \\", "x":1.25, "y":5.5}, - {"label":"Z", "x":2.25, "y":5.5}, - {"label":"X", "x":3.25, "y":5.5}, - {"label":"C", "x":4.25, "y":5.5}, - {"label":"V", "x":5.25, "y":5.5}, - {"label":"B", "x":6.25, "y":5.5}, - {"label":"N", "x":7.25, "y":5.5}, - {"label":"M", "x":8.25, "y":5.5}, - {"label":",", "x":9.25, "y":5.5}, - {"label":".", "x":10.25, "y":5.5}, - {"label":"/", "x":11.25, "y":5.5}, - {"label":"JIS \\", "x":12.25, "y":5.5}, - {"label":"Shift", "x":13.25, "y":5.5, "w":1.75}, - {"label":"Up", "x":16.25, "y":5.5}, - {"label":"Num 1", "x":18.5, "y":5.5}, - {"label":"Num 2", "x":19.5, "y":5.5}, - {"label":"Num 3", "x":20.5, "y":5.5}, - {"label":"Num =", "x":21.5, "y":5.5}, - {"label":"Exec", "x":22.75, "y":5.5}, - {"label":"Paste", "x":23.75, "y":5.5}, - {"label":"Ctrl", "x":0, "y":6.5}, - {"label":"GUI", "x":1, "y":6.5}, - {"label":"Alt", "x":2, "y":6.5}, - {"label":"JIS Muhenkan", "x":3, "y":6.5}, - {"label":"Hanja", "x":4, "y":6.5}, - {"label":"Space", "x":5, "y":6.5, "w":3}, - {"label":"Hangul/English", "x":8, "y":6.5}, - {"label":"JIS Henkan", "x":9, "y":6.5}, - {"label":"JIS Katakana/Hiragana", "x":10, "y":6.5}, - {"label":"Alt", "x":11, "y":6.5}, - {"label":"GUI", "x":12, "y":6.5}, - {"label":"App", "x":13, "y":6.5}, - {"label":"Ctrl", "x":14, "y":6.5}, - {"label":"Left", "x":15.25, "y":6.5}, - {"label":"Down", "x":16.25, "y":6.5}, - {"label":"Right", "x":17.25, "y":6.5}, - {"label":"Num 0", "x":18.5, "y":6.5, "w":2}, - {"label":"Num .", "x":20.5, "y":6.5}, - {"label":"Num Enter", "x":21.5, "y":6.5}, - {"label":"Find", "x":22.75, "y":6.5}, - {"label":"Cut", "x":23.75, "y":6.5} - ] - }, - "LAYOUT_ansi": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":2, "y":0}, - {"label":"F2", "x":3, "y":0}, - {"label":"F3", "x":4, "y":0}, - {"label":"F4", "x":5, "y":0}, - {"label":"F5", "x":6.5, "y":0}, - {"label":"F6", "x":7.5, "y":0}, - {"label":"F7", "x":8.5, "y":0}, - {"label":"F8", "x":9.5, "y":0}, - {"label":"F9", "x":11, "y":0}, - {"label":"F10", "x":12, "y":0}, - {"label":"F11", "x":13, "y":0}, - {"label":"F12", "x":14, "y":0}, - {"label":"PrtSc", "x":15.25, "y":0}, - {"label":"Scroll Lock", "x":16.25, "y":0}, - {"label":"Pause", "x":17.25, "y":0}, - {"label":"`", "x":0, "y":1.5}, - {"label":"1", "x":1, "y":1.5}, - {"label":"2", "x":2, "y":1.5}, - {"label":"3", "x":3, "y":1.5}, - {"label":"4", "x":4, "y":1.5}, - {"label":"5", "x":5, "y":1.5}, - {"label":"6", "x":6, "y":1.5}, - {"label":"7", "x":7, "y":1.5}, - {"label":"8", "x":8, "y":1.5}, - {"label":"9", "x":9, "y":1.5}, - {"label":"0", "x":10, "y":1.5}, - {"label":"-", "x":11, "y":1.5}, - {"label":"=", "x":12, "y":1.5}, - {"label":"Backspace", "x":13, "y":1.5, "w":2}, - {"label":"Insert", "x":15.25, "y":1.5}, - {"label":"Home", "x":16.25, "y":1.5}, - {"label":"Page Up", "x":17.25, "y":1.5}, - {"label":"Num Lock", "x":18.5, "y":1.5}, - {"label":"Num /", "x":19.5, "y":1.5}, - {"label":"Num *", "x":20.5, "y":1.5}, - {"label":"Num -", "x":21.5, "y":1.5}, - {"label":"Tab", "x":0, "y":2.5, "w":1.5}, - {"label":"Q", "x":1.5, "y":2.5}, - {"label":"W", "x":2.5, "y":2.5}, - {"label":"E", "x":3.5, "y":2.5}, - {"label":"R", "x":4.5, "y":2.5}, - {"label":"T", "x":5.5, "y":2.5}, - {"label":"Y", "x":6.5, "y":2.5}, - {"label":"U", "x":7.5, "y":2.5}, - {"label":"I", "x":8.5, "y":2.5}, - {"label":"O", "x":9.5, "y":2.5}, - {"label":"P", "x":10.5, "y":2.5}, - {"label":"[", "x":11.5, "y":2.5}, - {"label":"]", "x":12.5, "y":2.5}, - {"label":"\\", "x":13.5, "y":2.5, "w":1.5}, - {"label":"Delete", "x":15.25, "y":2.5}, - {"label":"End", "x":16.25, "y":2.5}, - {"label":"Page Down", "x":17.25, "y":2.5}, - {"label":"Num 7", "x":18.5, "y":2.5}, - {"label":"Num 8", "x":19.5, "y":2.5}, - {"label":"Num 9", "x":20.5, "y":2.5}, - {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, - {"label":"A", "x":1.75, "y":3.5}, - {"label":"S", "x":2.75, "y":3.5}, - {"label":"D", "x":3.75, "y":3.5}, - {"label":"F", "x":4.75, "y":3.5}, - {"label":"G", "x":5.75, "y":3.5}, - {"label":"H", "x":6.75, "y":3.5}, - {"label":"J", "x":7.75, "y":3.5}, - {"label":"K", "x":8.75, "y":3.5}, - {"label":"L", "x":9.75, "y":3.5}, - {"label":":", "x":10.75, "y":3.5}, - {"label":"\"", "x":11.75, "y":3.5}, - {"label":"Enter", "x":12.75, "y":3.5, "w":2.25}, - {"label":"Num 4", "x":18.5, "y":3.5}, - {"label":"Num 5", "x":19.5, "y":3.5}, - {"label":"Num 6", "x":20.5, "y":3.5}, - {"label":"Num +", "x":21.5, "y":2.5, "h":2}, - {"label":"Shift", "x":0, "y":4.5, "w":2.25}, - {"label":"Z", "x":2.25, "y":4.5}, - {"label":"X", "x":3.25, "y":4.5}, - {"label":"C", "x":4.25, "y":4.5}, - {"label":"V", "x":5.25, "y":4.5}, - {"label":"B", "x":6.25, "y":4.5}, - {"label":"N", "x":7.25, "y":4.5}, - {"label":"M", "x":8.25, "y":4.5}, - {"label":",", "x":9.25, "y":4.5}, - {"label":".", "x":10.25, "y":4.5}, - {"label":"/", "x":11.25, "y":4.5}, - {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, - {"label":"Up", "x":16.25, "y":4.5}, - {"label":"Num 1", "x":18.5, "y":4.5}, - {"label":"Num 2", "x":19.5, "y":4.5}, - {"label":"Num 3", "x":20.5, "y":4.5}, - {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, - {"label":"GUI", "x":1.25, "y":5.5, "w":1.25}, - {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, - {"label":"Space", "x":3.75, "y":5.5, "w":6.25}, - {"label":"Alt", "x":10, "y":5.5, "w":1.25}, - {"label":"GUI", "x":11.25, "y":5.5, "w":1.25}, - {"label":"Menu", "x":12.5, "y":5.5, "w":1.25}, - {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25}, - {"label":"Left", "x":15.25, "y":5.5}, - {"label":"Down", "x":16.25, "y":5.5}, - {"label":"Right", "x":17.25, "y":5.5}, - {"label":"Num 0", "x":18.5, "y":5.5, "w":2}, - {"label":"Num .", "x":20.5, "y":5.5}, - {"label":"Num Enter", "x":21.5, "y":4.5, "h":2} - ] - }, - "LAYOUT_iso": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":2, "y":0}, - {"label":"F2", "x":3, "y":0}, - {"label":"F3", "x":4, "y":0}, - {"label":"F4", "x":5, "y":0}, - {"label":"F5", "x":6.5, "y":0}, - {"label":"F6", "x":7.5, "y":0}, - {"label":"F7", "x":8.5, "y":0}, - {"label":"F8", "x":9.5, "y":0}, - {"label":"F9", "x":11, "y":0}, - {"label":"F10", "x":12, "y":0}, - {"label":"F11", "x":13, "y":0}, - {"label":"F12", "x":14, "y":0}, - {"label":"Print Screen", "x":15.25, "y":0}, - {"label":"Scroll Lock", "x":16.25, "y":0}, - {"label":"Pause", "x":17.25, "y":0}, - {"label":"`", "x":0, "y":1.5}, - {"label":"1", "x":1, "y":1.5}, - {"label":"2", "x":2, "y":1.5}, - {"label":"3", "x":3, "y":1.5}, - {"label":"4", "x":4, "y":1.5}, - {"label":"5", "x":5, "y":1.5}, - {"label":"6", "x":6, "y":1.5}, - {"label":"7", "x":7, "y":1.5}, - {"label":"8", "x":8, "y":1.5}, - {"label":"9", "x":9, "y":1.5}, - {"label":"0", "x":10, "y":1.5}, - {"label":"-", "x":11, "y":1.5}, - {"label":"=", "x":12, "y":1.5}, - {"label":"Backspace", "x":13, "y":1.5, "w":2}, - {"label":"Insert", "x":15.25, "y":1.5}, - {"label":"Home", "x":16.25, "y":1.5}, - {"label":"Page Up", "x":17.25, "y":1.5}, - {"label":"Num Lock", "x":18.5, "y":1.5}, - {"label":"Num /", "x":19.5, "y":1.5}, - {"label":"Num *", "x":20.5, "y":1.5}, - {"label":"Num -", "x":21.5, "y":1.5}, - {"label":"Tab", "x":0, "y":2.5, "w":1.5}, - {"label":"Q", "x":1.5, "y":2.5}, - {"label":"W", "x":2.5, "y":2.5}, - {"label":"E", "x":3.5, "y":2.5}, - {"label":"R", "x":4.5, "y":2.5}, - {"label":"T", "x":5.5, "y":2.5}, - {"label":"Y", "x":6.5, "y":2.5}, - {"label":"U", "x":7.5, "y":2.5}, - {"label":"I", "x":8.5, "y":2.5}, - {"label":"O", "x":9.5, "y":2.5}, - {"label":"P", "x":10.5, "y":2.5}, - {"label":"[", "x":11.5, "y":2.5}, - {"label":"]", "x":12.5, "y":2.5}, - {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2}, - {"label":"Delete", "x":15.25, "y":2.5}, - {"label":"End", "x":16.25, "y":2.5}, - {"label":"Page Down", "x":17.25, "y":2.5}, - {"label":"Num 7", "x":18.5, "y":2.5}, - {"label":"Num 8", "x":19.5, "y":2.5}, - {"label":"Num 9", "x":20.5, "y":2.5}, - {"label":"Num +", "x":21.5, "y":2.5, "h":2}, - {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, - {"label":"A", "x":1.75, "y":3.5}, - {"label":"S", "x":2.75, "y":3.5}, - {"label":"D", "x":3.75, "y":3.5}, - {"label":"F", "x":4.75, "y":3.5}, - {"label":"G", "x":5.75, "y":3.5}, - {"label":"H", "x":6.75, "y":3.5}, - {"label":"J", "x":7.75, "y":3.5}, - {"label":"K", "x":8.75, "y":3.5}, - {"label":"L", "x":9.75, "y":3.5}, - {"label":";", "x":10.75, "y":3.5}, - {"label":"'", "x":11.75, "y":3.5}, - {"label":"ISO #", "x":12.75, "y":3.5}, - {"label":"Num 4", "x":18.5, "y":3.5}, - {"label":"Num 5", "x":19.5, "y":3.5}, - {"label":"Num 6", "x":20.5, "y":3.5}, - {"label":"Shift", "x":0, "y":4.5, "w":1.25}, - {"label":"ISO \\", "x":1.25, "y":4.5}, - {"label":"Z", "x":2.25, "y":4.5}, - {"label":"X", "x":3.25, "y":4.5}, - {"label":"C", "x":4.25, "y":4.5}, - {"label":"V", "x":5.25, "y":4.5}, - {"label":"B", "x":6.25, "y":4.5}, - {"label":"N", "x":7.25, "y":4.5}, - {"label":"M", "x":8.25, "y":4.5}, - {"label":",", "x":9.25, "y":4.5}, - {"label":".", "x":10.25, "y":4.5}, - {"label":"/", "x":11.25, "y":4.5}, - {"label":"Shift", "x":12.25, "y":4.5, "w":2.75}, - {"label":"Up", "x":16.25, "y":4.5}, - {"label":"Num 1", "x":18.5, "y":4.5}, - {"label":"Num 2", "x":19.5, "y":4.5}, - {"label":"Num 3", "x":20.5, "y":4.5}, - {"label":"Num Enter", "x":21.5, "y":4.5, "h":2}, - {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, - {"label":"GUI", "x":1.25, "y":5.5, "w":1.25}, - {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, - {"label":"Space", "x":3.75, "y":5.5, "w":6.25}, - {"label":"AltGr", "x":10, "y":5.5, "w":1.25}, - {"label":"GUI", "x":11.25, "y":5.5, "w":1.25}, - {"label":"Menu", "x":12.5, "y":5.5, "w":1.25}, - {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25}, - {"label":"Left", "x":15.25, "y":5.5}, - {"label":"Down", "x":16.25, "y":5.5}, - {"label":"Right", "x":17.25, "y":5.5}, - {"label":"Num 0", "x":18.5, "y":5.5, "w":2}, - {"label":"Num .", "x":20.5, "y":5.5} - ] - }, - "LAYOUT_jis": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":2, "y":0}, - {"label":"F2", "x":3, "y":0}, - {"label":"F3", "x":4, "y":0}, - {"label":"F4", "x":5, "y":0}, - {"label":"F5", "x":6.5, "y":0}, - {"label":"F6", "x":7.5, "y":0}, - {"label":"F7", "x":8.5, "y":0}, - {"label":"F8", "x":9.5, "y":0}, - {"label":"F9", "x":11, "y":0}, - {"label":"F10", "x":12, "y":0}, - {"label":"F11", "x":13, "y":0}, - {"label":"F12", "x":14, "y":0}, - {"label":"Print Screen", "x":15.25, "y":0}, - {"label":"Scroll Lock", "x":16.25, "y":0}, - {"label":"Pause", "x":17.25, "y":0}, - {"label":"JIS Hankaku / Zenkaku", "x":0, "y":1.5}, - {"label":"1", "x":1, "y":1.5}, - {"label":"2", "x":2, "y":1.5}, - {"label":"3", "x":3, "y":1.5}, - {"label":"4", "x":4, "y":1.5}, - {"label":"5", "x":5, "y":1.5}, - {"label":"6", "x":6, "y":1.5}, - {"label":"7", "x":7, "y":1.5}, - {"label":"8", "x":8, "y":1.5}, - {"label":"9", "x":9, "y":1.5}, - {"label":"0", "x":10, "y":1.5}, - {"label":"-", "x":11, "y":1.5}, - {"label":"ˆ", "x":12, "y":1.5}, - {"label":"JIS Yen", "x":13, "y":1.5}, - {"label":"Back Space", "x":14, "y":1.5}, - {"label":"Insert", "x":15.25, "y":1.5}, - {"label":"Home", "x":16.25, "y":1.5}, - {"label":"Page Up", "x":17.25, "y":1.5}, - {"label":"Num Lock", "x":18.5, "y":1.5}, - {"label":"Num /", "x":19.5, "y":1.5}, - {"label":"Num *", "x":20.5, "y":1.5}, - {"label":"Num -", "x":21.5, "y":1.5}, - {"label":"Tab", "x":0, "y":2.5, "w":1.5}, - {"label":"Q", "x":1.5, "y":2.5}, - {"label":"W", "x":2.5, "y":2.5}, - {"label":"E", "x":3.5, "y":2.5}, - {"label":"R", "x":4.5, "y":2.5}, - {"label":"T", "x":5.5, "y":2.5}, - {"label":"Y", "x":6.5, "y":2.5}, - {"label":"U", "x":7.5, "y":2.5}, - {"label":"I", "x":8.5, "y":2.5}, - {"label":"O", "x":9.5, "y":2.5}, - {"label":"P", "x":10.5, "y":2.5}, - {"label":"@", "x":11.5, "y":2.5}, - {"label":"[", "x":12.5, "y":2.5}, - {"label":"Enter", "x":13.75, "y":2.5, "w":1.25, "h":2}, - {"label":"Delete", "x":15.25, "y":2.5}, - {"label":"End", "x":16.25, "y":2.5}, - {"label":"Page Down", "x":17.25, "y":2.5}, - {"label":"Num 7", "x":18.5, "y":2.5}, - {"label":"Num 8", "x":19.5, "y":2.5}, - {"label":"Num 9", "x":20.5, "y":2.5}, - {"label":"Num +", "x":21.5, "y":2.5, "h":2}, - {"label":"Caps Lock", "x":0, "y":3.5, "w":1.75}, - {"label":"A", "x":1.75, "y":3.5}, - {"label":"S", "x":2.75, "y":3.5}, - {"label":"D", "x":3.75, "y":3.5}, - {"label":"F", "x":4.75, "y":3.5}, - {"label":"G", "x":5.75, "y":3.5}, - {"label":"H", "x":6.75, "y":3.5}, - {"label":"J", "x":7.75, "y":3.5}, - {"label":"K", "x":8.75, "y":3.5}, - {"label":"L", "x":9.75, "y":3.5}, - {"label":";", "x":10.75, "y":3.5}, - {"label":":", "x":11.75, "y":3.5}, - {"label":"]", "x":12.75, "y":3.5}, - {"label":"Num 4", "x":18.5, "y":3.5}, - {"label":"Num 5", "x":19.5, "y":3.5}, - {"label":"Num 6", "x":20.5, "y":3.5}, - {"label":"Shift", "x":0, "y":4.5, "w":2.25}, - {"label":"Z", "x":2.25, "y":4.5}, - {"label":"X", "x":3.25, "y":4.5}, - {"label":"C", "x":4.25, "y":4.5}, - {"label":"V", "x":5.25, "y":4.5}, - {"label":"B", "x":6.25, "y":4.5}, - {"label":"N", "x":7.25, "y":4.5}, - {"label":"M", "x":8.25, "y":4.5}, - {"label":",", "x":9.25, "y":4.5}, - {"label":".", "x":10.25, "y":4.5}, - {"label":"/", "x":11.25, "y":4.5}, - {"label":"JIS \\", "x":12.25, "y":4.5}, - {"label":"Shift", "x":13.25, "y":4.5, "w":1.75}, - {"label":"Up", "x":16.25, "y":4.5}, - {"label":"Num 1", "x":18.5, "y":4.5}, - {"label":"Num 2", "x":19.5, "y":4.5}, - {"label":"Num 3", "x":20.5, "y":4.5}, - {"label":"Num Enter", "x":21.5, "y":4.5, "h":2}, - {"label":"Ctrl", "x":0, "y":5.5, "w":1.25}, - {"label":"GUI", "x":1.25, "y":5.5, "w":1.25}, - {"label":"Alt", "x":2.5, "y":5.5, "w":1.25}, - {"label":"JIS Muhenkan", "x":3.75, "y":5.5, "w":1.25}, - {"label":"Space", "x":5, "y":5.5, "w":2.5}, - {"label":"JIS Henkan", "x":7.5, "y":5.5, "w":1.25}, - {"label":"JIS Hiragana / Katakana", "x":8.75, "y":5.5, "w":1.25}, - {"label":"Alt", "x":10, "y":5.5, "w":1.25}, - {"label":"GUI", "x":11.25, "y":5.5, "w":1.25}, - {"label":"Menu", "x":12.5, "y":5.5, "w":1.25}, - {"label":"Ctrl", "x":13.75, "y":5.5, "w":1.25}, - {"label":"Left", "x":15.25, "y":5.5}, - {"label":"Down", "x":16.25, "y":5.5}, - {"label":"Right", "x":17.25, "y":5.5}, - {"label":"Num 0", "x":18.5, "y":5.5, "w":2}, - {"label":"Num .", "x":20.5, "y":5.5} - ] + "keyboard_name": "converter/usb_usb", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6.5, "y": 0}, + {"x": 7.5, "y": 0}, + {"x": 8.5, "y": 0}, + {"x": 9.5, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 0, "y": 1}, + + {"x": 2, "y": 1}, + {"x": 3, "y": 1}, + {"x": 4, "y": 1}, + {"x": 5, "y": 1}, + {"x": 6.5, "y": 1}, + {"x": 7.5, "y": 1}, + {"x": 8.5, "y": 1}, + {"x": 9.5, "y": 1}, + {"x": 11, "y": 1}, + {"x": 12, "y": 1}, + {"x": 13, "y": 1}, + {"x": 14, "y": 1}, + + {"x": 15.25, "y": 1}, + {"x": 16.25, "y": 1}, + {"x": 17.25, "y": 1}, + + {"x": 18.5, "y": 1}, + {"x": 19.5, "y": 1}, + {"x": 20.5, "y": 1}, + {"x": 21.5, "y": 1}, + + {"x": 22.75, "y": 1}, + + {"x": 0, "y": 2.5}, + {"x": 1, "y": 2.5}, + {"x": 2, "y": 2.5}, + {"x": 3, "y": 2.5}, + {"x": 4, "y": 2.5}, + {"x": 5, "y": 2.5}, + {"x": 6, "y": 2.5}, + {"x": 7, "y": 2.5}, + {"x": 8, "y": 2.5}, + {"x": 9, "y": 2.5}, + {"x": 10, "y": 2.5}, + {"x": 11, "y": 2.5}, + {"x": 12, "y": 2.5}, + {"x": 13, "y": 2.5}, + {"x": 14, "y": 2.5}, + + {"x": 15.25, "y": 2.5}, + {"x": 16.25, "y": 2.5}, + {"x": 17.25, "y": 2.5}, + + {"x": 18.5, "y": 2.5}, + {"x": 19.5, "y": 2.5}, + {"x": 20.5, "y": 2.5}, + {"x": 21.5, "y": 2.5}, + + {"x": 22.75, "y": 2.5}, + {"x": 23.75, "y": 2.5}, + + {"x": 0, "y": 3.5, "w": 1.5}, + {"x": 1.5, "y": 3.5}, + {"x": 2.5, "y": 3.5}, + {"x": 3.5, "y": 3.5}, + {"x": 4.5, "y": 3.5}, + {"x": 5.5, "y": 3.5}, + {"x": 6.5, "y": 3.5}, + {"x": 7.5, "y": 3.5}, + {"x": 8.5, "y": 3.5}, + {"x": 9.5, "y": 3.5}, + {"x": 10.5, "y": 3.5}, + {"x": 11.5, "y": 3.5}, + {"x": 12.5, "y": 3.5}, + {"x": 13.5, "y": 3.5, "w": 1.5}, + + {"x": 15.25, "y": 3.5}, + {"x": 16.25, "y": 3.5}, + {"x": 17.25, "y": 3.5}, + + {"x": 18.5, "y": 3.5}, + {"x": 19.5, "y": 3.5}, + {"x": 20.5, "y": 3.5}, + {"x": 21.5, "y": 3.5}, + + {"x": 22.75, "y": 3.5}, + {"x": 23.75, "y": 3.5}, + + {"x": 0, "y": 4.5, "w": 1.75}, + {"x": 1.75, "y": 4.5}, + {"x": 2.75, "y": 4.5}, + {"x": 3.75, "y": 4.5}, + {"x": 4.75, "y": 4.5}, + {"x": 5.75, "y": 4.5}, + {"x": 6.75, "y": 4.5}, + {"x": 7.75, "y": 4.5}, + {"x": 8.75, "y": 4.5}, + {"x": 9.75, "y": 4.5}, + {"x": 10.75, "y": 4.5}, + {"x": 11.75, "y": 4.5}, + {"x": 12.75, "y": 4.5}, + {"x": 13.75, "y": 4.5, "w": 1.25}, + + {"x": 18.5, "y": 4.5}, + {"x": 19.5, "y": 4.5}, + {"x": 20.5, "y": 4.5}, + {"x": 21.5, "y": 4.5}, + + {"x": 22.75, "y": 4.5}, + {"x": 23.75, "y": 4.5}, + + {"x": 0, "y": 5.5, "w": 1.25}, + {"x": 1.25, "y": 5.5}, + {"x": 2.25, "y": 5.5}, + {"x": 3.25, "y": 5.5}, + {"x": 4.25, "y": 5.5}, + {"x": 5.25, "y": 5.5}, + {"x": 6.25, "y": 5.5}, + {"x": 7.25, "y": 5.5}, + {"x": 8.25, "y": 5.5}, + {"x": 9.25, "y": 5.5}, + {"x": 10.25, "y": 5.5}, + {"x": 11.25, "y": 5.5}, + {"x": 12.25, "y": 5.5}, + {"x": 13.25, "y": 5.5, "w": 1.75}, + + {"x": 16.25, "y": 5.5}, + + {"x": 18.5, "y": 5.5}, + {"x": 19.5, "y": 5.5}, + {"x": 20.5, "y": 5.5}, + {"x": 21.5, "y": 5.5}, + + {"x": 22.75, "y": 5.5}, + {"x": 23.75, "y": 5.5}, + + {"x": 0, "y": 6.5}, + {"x": 1, "y": 6.5}, + {"x": 2, "y": 6.5}, + {"x": 3, "y": 6.5}, + {"x": 4, "y": 6.5}, + {"x": 5, "y": 6.5, "w": 3}, + {"x": 8, "y": 6.5}, + {"x": 9, "y": 6.5}, + {"x": 10, "y": 6.5}, + {"x": 11, "y": 6.5}, + {"x": 12, "y": 6.5}, + {"x": 13, "y": 6.5}, + {"x": 14, "y": 6.5}, + + {"x": 15.25, "y": 6.5}, + {"x": 16.25, "y": 6.5}, + {"x": 17.25, "y": 6.5}, + + {"x": 18.5, "y": 6.5, "w": 2}, + {"x": 20.5, "y": 6.5}, + {"x": 21.5, "y": 6.5}, + + {"x": 22.75, "y": 6.5}, + {"x": 23.75, "y": 6.5} + ] + }, + "LAYOUT_fullsize_ansi": { + "layout": [ + {"x": 0, "y": 0}, + + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6.5, "y": 0}, + {"x": 7.5, "y": 0}, + {"x": 8.5, "y": 0}, + {"x": 9.5, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 15.25, "y": 0}, + {"x": 16.25, "y": 0}, + {"x": 17.25, "y": 0}, + + {"x": 0, "y": 1.5}, + {"x": 1, "y": 1.5}, + {"x": 2, "y": 1.5}, + {"x": 3, "y": 1.5}, + {"x": 4, "y": 1.5}, + {"x": 5, "y": 1.5}, + {"x": 6, "y": 1.5}, + {"x": 7, "y": 1.5}, + {"x": 8, "y": 1.5}, + {"x": 9, "y": 1.5}, + {"x": 10, "y": 1.5}, + {"x": 11, "y": 1.5}, + {"x": 12, "y": 1.5}, + {"x": 13, "y": 1.5, "w": 2}, + + {"x": 15.25, "y": 1.5}, + {"x": 16.25, "y": 1.5}, + {"x": 17.25, "y": 1.5}, + + {"x": 18.5, "y": 1.5}, + {"x": 19.5, "y": 1.5}, + {"x": 20.5, "y": 1.5}, + {"x": 21.5, "y": 1.5}, + + {"x": 0, "y": 2.5, "w": 1.5}, + {"x": 1.5, "y": 2.5}, + {"x": 2.5, "y": 2.5}, + {"x": 3.5, "y": 2.5}, + {"x": 4.5, "y": 2.5}, + {"x": 5.5, "y": 2.5}, + {"x": 6.5, "y": 2.5}, + {"x": 7.5, "y": 2.5}, + {"x": 8.5, "y": 2.5}, + {"x": 9.5, "y": 2.5}, + {"x": 10.5, "y": 2.5}, + {"x": 11.5, "y": 2.5}, + {"x": 12.5, "y": 2.5}, + {"x": 13.5, "y": 2.5, "w": 1.5}, + + {"x": 15.25, "y": 2.5}, + {"x": 16.25, "y": 2.5}, + {"x": 17.25, "y": 2.5}, + + {"x": 18.5, "y": 2.5}, + {"x": 19.5, "y": 2.5}, + {"x": 20.5, "y": 2.5}, + {"x": 21.5, "y": 2.5, "h": 2}, + + {"x": 0, "y": 3.5, "w": 1.75}, + {"x": 1.75, "y": 3.5}, + {"x": 2.75, "y": 3.5}, + {"x": 3.75, "y": 3.5}, + {"x": 4.75, "y": 3.5}, + {"x": 5.75, "y": 3.5}, + {"x": 6.75, "y": 3.5}, + {"x": 7.75, "y": 3.5}, + {"x": 8.75, "y": 3.5}, + {"x": 9.75, "y": 3.5}, + {"x": 10.75, "y": 3.5}, + {"x": 11.75, "y": 3.5}, + {"x": 12.75, "y": 3.5, "w": 2.25}, + + {"x": 18.5, "y": 3.5}, + {"x": 19.5, "y": 3.5}, + {"x": 20.5, "y": 3.5}, + + {"x": 0, "y": 4.5, "w": 2.25}, + {"x": 2.25, "y": 4.5}, + {"x": 3.25, "y": 4.5}, + {"x": 4.25, "y": 4.5}, + {"x": 5.25, "y": 4.5}, + {"x": 6.25, "y": 4.5}, + {"x": 7.25, "y": 4.5}, + {"x": 8.25, "y": 4.5}, + {"x": 9.25, "y": 4.5}, + {"x": 10.25, "y": 4.5}, + {"x": 11.25, "y": 4.5}, + {"x": 12.25, "y": 4.5, "w": 2.75}, + + {"x": 16.25, "y": 4.5}, + + {"x": 18.5, "y": 4.5}, + {"x": 19.5, "y": 4.5}, + {"x": 20.5, "y": 4.5}, + {"x": 21.5, "y": 4.5, "h": 2}, + + {"x": 0, "y": 5.5, "w": 1.25}, + {"x": 1.25, "y": 5.5, "w": 1.25}, + {"x": 2.5, "y": 5.5, "w": 1.25}, + {"x": 3.75, "y": 5.5, "w": 6.25}, + {"x": 10, "y": 5.5, "w": 1.25}, + {"x": 11.25, "y": 5.5, "w": 1.25}, + {"x": 12.5, "y": 5.5, "w": 1.25}, + {"x": 13.75, "y": 5.5, "w": 1.25}, + + {"x": 15.25, "y": 5.5}, + {"x": 16.25, "y": 5.5}, + {"x": 17.25, "y": 5.5}, + + {"x": 18.5, "y": 5.5, "w": 2}, + {"x": 20.5, "y": 5.5} + ] + }, + "LAYOUT_fullsize_iso": { + "layout": [ + {"x": 0, "y": 0}, + + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6.5, "y": 0}, + {"x": 7.5, "y": 0}, + {"x": 8.5, "y": 0}, + {"x": 9.5, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 15.25, "y": 0}, + {"x": 16.25, "y": 0}, + {"x": 17.25, "y": 0}, + + {"x": 0, "y": 1.5}, + {"x": 1, "y": 1.5}, + {"x": 2, "y": 1.5}, + {"x": 3, "y": 1.5}, + {"x": 4, "y": 1.5}, + {"x": 5, "y": 1.5}, + {"x": 6, "y": 1.5}, + {"x": 7, "y": 1.5}, + {"x": 8, "y": 1.5}, + {"x": 9, "y": 1.5}, + {"x": 10, "y": 1.5}, + {"x": 11, "y": 1.5}, + {"x": 12, "y": 1.5}, + {"x": 13, "y": 1.5, "w": 2}, + + {"x": 15.25, "y": 1.5}, + {"x": 16.25, "y": 1.5}, + {"x": 17.25, "y": 1.5}, + + {"x": 18.5, "y": 1.5}, + {"x": 19.5, "y": 1.5}, + {"x": 20.5, "y": 1.5}, + {"x": 21.5, "y": 1.5}, + + {"x": 0, "y": 2.5, "w": 1.5}, + {"x": 1.5, "y": 2.5}, + {"x": 2.5, "y": 2.5}, + {"x": 3.5, "y": 2.5}, + {"x": 4.5, "y": 2.5}, + {"x": 5.5, "y": 2.5}, + {"x": 6.5, "y": 2.5}, + {"x": 7.5, "y": 2.5}, + {"x": 8.5, "y": 2.5}, + {"x": 9.5, "y": 2.5}, + {"x": 10.5, "y": 2.5}, + {"x": 11.5, "y": 2.5}, + {"x": 12.5, "y": 2.5}, + + {"x": 15.25, "y": 2.5}, + {"x": 16.25, "y": 2.5}, + {"x": 17.25, "y": 2.5}, + + {"x": 18.5, "y": 2.5}, + {"x": 19.5, "y": 2.5}, + {"x": 20.5, "y": 2.5}, + {"x": 21.5, "y": 2.5, "h": 2}, + + {"x": 0, "y": 3.5, "w": 1.75}, + {"x": 1.75, "y": 3.5}, + {"x": 2.75, "y": 3.5}, + {"x": 3.75, "y": 3.5}, + {"x": 4.75, "y": 3.5}, + {"x": 5.75, "y": 3.5}, + {"x": 6.75, "y": 3.5}, + {"x": 7.75, "y": 3.5}, + {"x": 8.75, "y": 3.5}, + {"x": 9.75, "y": 3.5}, + {"x": 10.75, "y": 3.5}, + {"x": 11.75, "y": 3.5}, + {"x": 12.75, "y": 3.5}, + {"x": 13.75, "y": 2.5, "w": 1.25, "h": 2}, + + {"x": 18.5, "y": 3.5}, + {"x": 19.5, "y": 3.5}, + {"x": 20.5, "y": 3.5}, + + {"x": 0, "y": 4.5, "w": 1.25}, + {"x": 1.25, "y": 4.5}, + {"x": 2.25, "y": 4.5}, + {"x": 3.25, "y": 4.5}, + {"x": 4.25, "y": 4.5}, + {"x": 5.25, "y": 4.5}, + {"x": 6.25, "y": 4.5}, + {"x": 7.25, "y": 4.5}, + {"x": 8.25, "y": 4.5}, + {"x": 9.25, "y": 4.5}, + {"x": 10.25, "y": 4.5}, + {"x": 11.25, "y": 4.5}, + {"x": 12.25, "y": 4.5, "w": 2.75}, + + {"x": 16.25, "y": 4.5}, + + {"x": 18.5, "y": 4.5}, + {"x": 19.5, "y": 4.5}, + {"x": 20.5, "y": 4.5}, + {"x": 21.5, "y": 4.5, "h": 2}, + + {"x": 0, "y": 5.5, "w": 1.25}, + {"x": 1.25, "y": 5.5, "w": 1.25}, + {"x": 2.5, "y": 5.5, "w": 1.25}, + {"x": 3.75, "y": 5.5, "w": 6.25}, + {"x": 10, "y": 5.5, "w": 1.25}, + {"x": 11.25, "y": 5.5, "w": 1.25}, + {"x": 12.5, "y": 5.5, "w": 1.25}, + {"x": 13.75, "y": 5.5, "w": 1.25}, + + {"x": 15.25, "y": 5.5}, + {"x": 16.25, "y": 5.5}, + {"x": 17.25, "y": 5.5}, + + {"x": 18.5, "y": 5.5, "w": 2}, + {"x": 20.5, "y": 5.5} + ] + }, + "LAYOUT_fullsize_jis": { + "layout": [ + {"x": 0, "y": 0}, + + {"x": 2, "y": 0}, + {"x": 3, "y": 0}, + {"x": 4, "y": 0}, + {"x": 5, "y": 0}, + {"x": 6.5, "y": 0}, + {"x": 7.5, "y": 0}, + {"x": 8.5, "y": 0}, + {"x": 9.5, "y": 0}, + {"x": 11, "y": 0}, + {"x": 12, "y": 0}, + {"x": 13, "y": 0}, + {"x": 14, "y": 0}, + + {"x": 15.25, "y": 0}, + {"x": 16.25, "y": 0}, + {"x": 17.25, "y": 0}, + + {"x": 0, "y": 1.5}, + {"x": 1, "y": 1.5}, + {"x": 2, "y": 1.5}, + {"x": 3, "y": 1.5}, + {"x": 4, "y": 1.5}, + {"x": 5, "y": 1.5}, + {"x": 6, "y": 1.5}, + {"x": 7, "y": 1.5}, + {"x": 8, "y": 1.5}, + {"x": 9, "y": 1.5}, + {"x": 10, "y": 1.5}, + {"x": 11, "y": 1.5}, + {"x": 12, "y": 1.5}, + {"x": 13, "y": 1.5}, + {"x": 14, "y": 1.5}, + + {"x": 15.25, "y": 1.5}, + {"x": 16.25, "y": 1.5}, + {"x": 17.25, "y": 1.5}, + + {"x": 18.5, "y": 1.5}, + {"x": 19.5, "y": 1.5}, + {"x": 20.5, "y": 1.5}, + {"x": 21.5, "y": 1.5}, + + {"x": 0, "y": 2.5, "w": 1.5}, + {"x": 1.5, "y": 2.5}, + {"x": 2.5, "y": 2.5}, + {"x": 3.5, "y": 2.5}, + {"x": 4.5, "y": 2.5}, + {"x": 5.5, "y": 2.5}, + {"x": 6.5, "y": 2.5}, + {"x": 7.5, "y": 2.5}, + {"x": 8.5, "y": 2.5}, + {"x": 9.5, "y": 2.5}, + {"x": 10.5, "y": 2.5}, + {"x": 11.5, "y": 2.5}, + {"x": 12.5, "y": 2.5}, + + {"x": 15.25, "y": 2.5}, + {"x": 16.25, "y": 2.5}, + {"x": 17.25, "y": 2.5}, + + {"x": 18.5, "y": 2.5}, + {"x": 19.5, "y": 2.5}, + {"x": 20.5, "y": 2.5}, + {"x": 21.5, "y": 2.5, "h": 2}, + + {"x": 0, "y": 3.5, "w": 1.75}, + {"x": 1.75, "y": 3.5}, + {"x": 2.75, "y": 3.5}, + {"x": 3.75, "y": 3.5}, + {"x": 4.75, "y": 3.5}, + {"x": 5.75, "y": 3.5}, + {"x": 6.75, "y": 3.5}, + {"x": 7.75, "y": 3.5}, + {"x": 8.75, "y": 3.5}, + {"x": 9.75, "y": 3.5}, + {"x": 10.75, "y": 3.5}, + {"x": 11.75, "y": 3.5}, + {"x": 12.75, "y": 3.5}, + {"x": 13.75, "y": 2.5, "w": 1.25, "h": 2}, + + {"x": 18.5, "y": 3.5}, + {"x": 19.5, "y": 3.5}, + {"x": 20.5, "y": 3.5}, + + {"x": 0, "y": 4.5, "w": 2.25}, + {"x": 2.25, "y": 4.5}, + {"x": 3.25, "y": 4.5}, + {"x": 4.25, "y": 4.5}, + {"x": 5.25, "y": 4.5}, + {"x": 6.25, "y": 4.5}, + {"x": 7.25, "y": 4.5}, + {"x": 8.25, "y": 4.5}, + {"x": 9.25, "y": 4.5}, + {"x": 10.25, "y": 4.5}, + {"x": 11.25, "y": 4.5}, + {"x": 12.25, "y": 4.5}, + {"x": 13.25, "y": 4.5, "w": 1.75}, + + {"x": 16.25, "y": 4.5}, + + {"x": 18.5, "y": 4.5}, + {"x": 19.5, "y": 4.5}, + {"x": 20.5, "y": 4.5}, + {"x": 21.5, "y": 4.5, "h": 2}, + + {"x": 0, "y": 5.5, "w": 1.25}, + {"x": 1.25, "y": 5.5, "w": 1.25}, + {"x": 2.5, "y": 5.5, "w": 1.25}, + {"x": 3.75, "y": 5.5, "w": 1.25}, + {"x": 5, "y": 5.5, "w": 2.5}, + {"x": 7.5, "y": 5.5, "w": 1.25}, + {"x": 8.75, "y": 5.5, "w": 1.25}, + {"x": 10, "y": 5.5, "w": 1.25}, + {"x": 11.25, "y": 5.5, "w": 1.25}, + {"x": 12.5, "y": 5.5, "w": 1.25}, + {"x": 13.75, "y": 5.5, "w": 1.25}, + + {"x": 15.25, "y": 5.5}, + {"x": 16.25, "y": 5.5}, + {"x": 17.25, "y": 5.5}, + + {"x": 18.5, "y": 5.5, "w": 2}, + {"x": 20.5, "y": 5.5} + ] + } } - } } diff --git a/keyboards/converter/usb_usb/keymaps/chriskopher/keymap.c b/keyboards/converter/usb_usb/keymaps/chriskopher/keymap.c index 716ff19abd..b9b9c5ad2c 100644 --- a/keyboards/converter/usb_usb/keymaps/chriskopher/keymap.c +++ b/keyboards/converter/usb_usb/keymaps/chriskopher/keymap.c @@ -39,10 +39,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CKO] = LAYOUT_ansi( 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_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, - 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN_CLN), KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, - TD(ESPC_L), LT(_DEV,KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, TD(ESPC_R), KC_UP, KC_P1, KC_P2, KC_P3, - MEH_T(KC_CAPS), KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_ADJUST,KC_RGUI), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT + 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_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, + LCTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, TD(SCLN_CLN), KC_QUOT, KC_ENT, KC_P4, KC_P5, KC_P6, + TD(ESPC_L), LT(_DEV,KC_Z), KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, TD(ESPC_R), KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, + MEH_T(KC_CAPS), KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_ADJUST,KC_RGUI), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), /* Regular Qwerty: default layer @@ -64,10 +64,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_QWERTY] = LAYOUT_ansi( 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_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, - 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, - 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_P4, KC_P5, KC_P6, KC_PPLS, - 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, KC_P1, KC_P2, KC_P3, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_ADJUST,KC_RGUI), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT + 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, + 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_P4, KC_P5, KC_P6, + 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, KC_P1, KC_P2, KC_P3, KC_PENT, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, LT(_ADJUST,KC_RGUI), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), /* SuperDuper @@ -89,10 +89,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_SUPERDUPER] = LAYOUT_ansi( ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, C(KC_1), C(S(KC_TAB)), C(KC_TAB), C(KC_9), ______, ______, ______, ______, ______, ______, ______, ______, ______, - ______, KC_LALT, ______, ______, KC_BSPC, KC_LCTL, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_DEL, ______, ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, TG(_SUPERDUPER), ______, ______, ______, ______, ______, - ______, ______, ______, KC_LSFT, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ + ______, ______, ______, ______, ______, ______, ______, C(KC_1), C(S(KC_TAB)), C(KC_TAB), C(KC_9), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + ______, KC_LALT, ______, ______, KC_BSPC, KC_LCTL, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_DEL, ______, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, TG(_SUPERDUPER), ______, ______, ______, ______, ______, ______, + ______, ______, ______, KC_LSFT, ______, ______, ______, ______, ______, ______, ______, ______, ______ ), /* Dev @@ -114,10 +114,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_DEV] = LAYOUT_ansi( ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, KC_MINS, S(KC_EQL), S(KC_9), S(KC_0), ______, ______, ______, ______, ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, S(KC_MINS), KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), ______, ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, KC_EQL, S(KC_BSLASH), S(KC_COMM), S(KC_DOT), S(KC_SLSH), ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ + ______, ______, ______, ______, ______, ______, ______, KC_MINS, S(KC_EQL), S(KC_9), S(KC_0), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, S(KC_MINS), KC_LBRC, KC_RBRC, S(KC_LBRC), S(KC_RBRC), ______, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, KC_EQL, S(KC_BSLASH), S(KC_COMM), S(KC_DOT), S(KC_SLSH), ______, ______, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ ), /* Adjust @@ -139,10 +139,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ansi( ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MPLY, KC_MNXT, KC_VOLU, ______, ______, ______, ______, - ______, DF(_QWERTY), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MSTP, KC_MPRV, KC_VOLD, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - ______, ______, ______, DF(_CKO), ______, ______, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, TG(_SUPERDUPER), ______, ______, ______, ______, ______, - ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ + ______, DF(_QWERTY), ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MSTP, KC_MPRV, KC_VOLD, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + ______, ______, ______, DF(_CKO), ______, ______, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, TG(_SUPERDUPER), ______, ______, ______, ______, ______, ______, + ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ ) /* Empty layout for future reference @@ -165,10 +165,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * [_EMPTY] = LAYOUT_ansi( * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, - * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ + * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + * ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ * ), */ }; diff --git a/keyboards/converter/usb_usb/rules.mk b/keyboards/converter/usb_usb/rules.mk index a33c0aaa54..1bdf3416aa 100644 --- a/keyboards/converter/usb_usb/rules.mk +++ b/keyboards/converter/usb_usb/rules.mk @@ -22,3 +22,5 @@ CUSTOM_MATRIX = yes SRC += custom_matrix.cpp DEFAULT_FOLDER = converter/usb_usb/hasu + +LAYOUTS = fullsize_ansi fullsize_iso diff --git a/keyboards/converter/usb_usb/usb_usb.h b/keyboards/converter/usb_usb/usb_usb.h index 99baa003cb..f0188313b7 100644 --- a/keyboards/converter/usb_usb/usb_usb.h +++ b/keyboards/converter/usb_usb/usb_usb.h @@ -114,14 +114,14 @@ along with this program. If not, see . * |Ctl|Gui|Alt| Space |Alt|Gui|App|Ctl| |Lef|Dow|Rig| | 0| .|Ent| * `-----------------------------------------------------------' `-----------' `---------------' */ -#define LAYOUT_ansi( \ +#define LAYOUT_fullsize_ansi( \ k29, k3A, k3B, k3C, k3D, k3E, k3F, k40, k41, k42, k43, k44, k45, k46, k47, k48, \ \ k35, k1E, k1F, k20, k21, k22, k23, k24, k25, k26, k27, k2D, k2E, k2A, k49, k4A, k4B, k53, k54, k55, k56, \ - k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k31, k4C, k4D, k4E, k5F, k60, k61, \ - k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k28, k5C, k5D, k5E, k57, \ - kE1, k1D, k1B, k06, k19, k05, k11, k10, k36, k37, k38, kE5, k52, k59, k5A, k5B, \ - kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63, k58 \ + k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k31, k4C, k4D, k4E, k5F, k60, k61, k57, \ + k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k28, k5C, k5D, k5E, \ + kE1, k1D, k1B, k06, k19, k05, k11, k10, k36, k37, k38, kE5, k52, k59, k5A, k5B, k58, \ + kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63, \ ) { \ { XXX, XXX, XXX, XXX, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ @@ -156,14 +156,14 @@ along with this program. If not, see . * |Ctl|Gui|Alt| Space |Alt|Gui|App|Ctl| |Lef|Dow|Rig| | 0| .| | * `-----------------------------------------------------------' `-----------' `---------------' */ -#define LAYOUT_iso( \ +#define LAYOUT_fullsize_iso( \ k29, k3A, k3B, k3C, k3D, k3E, k3F, k40, k41, k42, k43, k44, k45, k46, k47, k48, \ \ k35, k1E, k1F, k20, k21, k22, k23, k24, k25, k26, k27, k2D, k2E, k2A, k49, k4A, k4B, k53, k54, k55, k56, \ - k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k28, k4C, k4D, k4E, k5F, k60, k61, k57, \ - k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k32, k5C, k5D, k5E, \ + k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k4C, k4D, k4E, k5F, k60, k61, k57, \ + k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k32, k28, k5C, k5D, k5E, \ kE1, k64, k1D, k1B, k06, k19, k05, k11, k10, k36, k37, k38, kE5, k52, k59, k5A, k5B, k58, \ - kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63 \ + kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63 \ ) { \ { XXX, XXX, XXX, XXX, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ @@ -198,12 +198,12 @@ along with this program. If not, see . * |Ctl|Gui|Alt|MHEN| Space |HENK|KNA|Alt|Gui|App|Ctl| |Lef|Dow|Rig| | 0| .| | * `-----------------------------------------------------------' `-----------' `---------------' */ -#define LAYOUT_jis( \ +#define LAYOUT_fullsize_jis( \ k29, k3A, k3B, k3C, k3D, k3E, k3F, k40, k41, k42, k43, k44, k45, k46, k47, k48, \ \ k35, k1E, k1F, k20, k21, k22, k23, k24, k25, k26, k27, k2D, k2E, k89, k2A, k49, k4A, k4B, k53, k54, k55, k56, \ - k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k28, k4C, k4D, k4E, k5F, k60, k61, k57, \ - k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k32, k5C, k5D, k5E, \ + k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k4C, k4D, k4E, k5F, k60, k61, k57, \ + k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k32, k28, k5C, k5D, k5E, \ kE1, k1D, k1B, k06, k19, k05, k11, k10, k36, k37, k38, k87, kE5, k52, k59, k5A, k5B, k58, \ kE0, kE3, kE2, k8B, k2C, k8A, k88, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63 \ ) { \ From ceb9b0f7b8cd63cdaf9b0c8a853229f871189d4a Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 7 May 2022 09:58:38 +1000 Subject: [PATCH 365/699] gboards/gergoplex: move `COMBO_ENABLE` to keymap level (#16667) --- keyboards/gboards/gergoplex/config.h | 2 -- keyboards/gboards/gergoplex/keymaps/colemak-dhm/config.h | 4 ++++ keyboards/gboards/gergoplex/keymaps/colemak-dhm/rules.mk | 1 + keyboards/gboards/gergoplex/keymaps/default/config.h | 4 ++++ keyboards/gboards/gergoplex/keymaps/default/rules.mk | 1 + keyboards/gboards/gergoplex/keymaps/georgepetri/config.h | 2 ++ keyboards/gboards/gergoplex/keymaps/georgepetri/rules.mk | 1 + keyboards/gboards/gergoplex/keymaps/tgrosinger/config.h | 4 ++++ keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk | 1 + keyboards/gboards/gergoplex/rules.mk | 1 - 10 files changed, 18 insertions(+), 3 deletions(-) create mode 100644 keyboards/gboards/gergoplex/keymaps/colemak-dhm/config.h create mode 100644 keyboards/gboards/gergoplex/keymaps/default/config.h create mode 100644 keyboards/gboards/gergoplex/keymaps/tgrosinger/config.h diff --git a/keyboards/gboards/gergoplex/config.h b/keyboards/gboards/gergoplex/config.h index a6d8d6b1be..6a73ccc4ea 100644 --- a/keyboards/gboards/gergoplex/config.h +++ b/keyboards/gboards/gergoplex/config.h @@ -44,8 +44,6 @@ along with this program. If not, see . #define MATRIX_COL_PINS { B1, B2, B3, D2, D3 } #define UNUSED_PINS #define IGNORE_MOD_TAP_INTERRUPT -#define COMBO_ALLOW_ACTION_KEYS -#define COMBO_VARIABLE_LEN #define IS_COMMAND() (get_mods() == (MOD_BIT(KC_LCTL) | MOD_BIT(KC_RCTL)) || get_mods() == (MOD_BIT(KC_LSFT) | MOD_BIT(KC_RSFT))) diff --git a/keyboards/gboards/gergoplex/keymaps/colemak-dhm/config.h b/keyboards/gboards/gergoplex/keymaps/colemak-dhm/config.h new file mode 100644 index 0000000000..1b30cc73b3 --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/colemak-dhm/config.h @@ -0,0 +1,4 @@ +#pragma once + +#define COMBO_ALLOW_ACTION_KEYS +#define COMBO_VARIABLE_LEN diff --git a/keyboards/gboards/gergoplex/keymaps/colemak-dhm/rules.mk b/keyboards/gboards/gergoplex/keymaps/colemak-dhm/rules.mk index e882b8008d..620cab16c0 100644 --- a/keyboards/gboards/gergoplex/keymaps/colemak-dhm/rules.mk +++ b/keyboards/gboards/gergoplex/keymaps/colemak-dhm/rules.mk @@ -10,6 +10,7 @@ DEBUG_MATRIX = no CONSOLE_ENABLE = no #Combos! +COMBO_ENABLE = yes VPATH += keyboards/gboards/ ifeq ($(strip $(DEBUG_MATRIX)), yes) diff --git a/keyboards/gboards/gergoplex/keymaps/default/config.h b/keyboards/gboards/gergoplex/keymaps/default/config.h new file mode 100644 index 0000000000..1b30cc73b3 --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/default/config.h @@ -0,0 +1,4 @@ +#pragma once + +#define COMBO_ALLOW_ACTION_KEYS +#define COMBO_VARIABLE_LEN diff --git a/keyboards/gboards/gergoplex/keymaps/default/rules.mk b/keyboards/gboards/gergoplex/keymaps/default/rules.mk index e882b8008d..620cab16c0 100644 --- a/keyboards/gboards/gergoplex/keymaps/default/rules.mk +++ b/keyboards/gboards/gergoplex/keymaps/default/rules.mk @@ -10,6 +10,7 @@ DEBUG_MATRIX = no CONSOLE_ENABLE = no #Combos! +COMBO_ENABLE = yes VPATH += keyboards/gboards/ ifeq ($(strip $(DEBUG_MATRIX)), yes) diff --git a/keyboards/gboards/gergoplex/keymaps/georgepetri/config.h b/keyboards/gboards/gergoplex/keymaps/georgepetri/config.h index d3fe5b8145..f66c334b85 100644 --- a/keyboards/gboards/gergoplex/keymaps/georgepetri/config.h +++ b/keyboards/gboards/gergoplex/keymaps/georgepetri/config.h @@ -25,3 +25,5 @@ along with this program. If not, see . #undef DEBOUNCE #define DEBOUNCE 25 +#define COMBO_ALLOW_ACTION_KEYS +#define COMBO_VARIABLE_LEN diff --git a/keyboards/gboards/gergoplex/keymaps/georgepetri/rules.mk b/keyboards/gboards/gergoplex/keymaps/georgepetri/rules.mk index e4064d4932..74d02c23bd 100644 --- a/keyboards/gboards/gergoplex/keymaps/georgepetri/rules.mk +++ b/keyboards/gboards/gergoplex/keymaps/georgepetri/rules.mk @@ -10,6 +10,7 @@ DEBUG_MATRIX = no CONSOLE_ENABLE = no #Combos! +COMBO_ENABLE = yes VPATH += keyboards/gboards/ ifeq ($(strip $(DEBUG_MATRIX)), yes) diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/config.h b/keyboards/gboards/gergoplex/keymaps/tgrosinger/config.h new file mode 100644 index 0000000000..1b30cc73b3 --- /dev/null +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/config.h @@ -0,0 +1,4 @@ +#pragma once + +#define COMBO_ALLOW_ACTION_KEYS +#define COMBO_VARIABLE_LEN diff --git a/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk b/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk index e882b8008d..620cab16c0 100644 --- a/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk +++ b/keyboards/gboards/gergoplex/keymaps/tgrosinger/rules.mk @@ -10,6 +10,7 @@ DEBUG_MATRIX = no CONSOLE_ENABLE = no #Combos! +COMBO_ENABLE = yes VPATH += keyboards/gboards/ ifeq ($(strip $(DEBUG_MATRIX)), yes) diff --git a/keyboards/gboards/gergoplex/rules.mk b/keyboards/gboards/gergoplex/rules.mk index 5cd5a7721c..31a7d6bae8 100644 --- a/keyboards/gboards/gergoplex/rules.mk +++ b/keyboards/gboards/gergoplex/rules.mk @@ -16,7 +16,6 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output -COMBO_ENABLE = yes CUSTOM_MATRIX = yes LAYOUTS = split_3x5_3 From 4e9a811e58e9029ac36cf4f0f4097febcb86214d Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 7 May 2022 10:00:55 +1000 Subject: [PATCH 366/699] converter/usb_usb: remove surplus commas (#17024) --- keyboards/converter/usb_usb/usb_usb.h | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/keyboards/converter/usb_usb/usb_usb.h b/keyboards/converter/usb_usb/usb_usb.h index f0188313b7..bcd8b52974 100644 --- a/keyboards/converter/usb_usb/usb_usb.h +++ b/keyboards/converter/usb_usb/usb_usb.h @@ -121,7 +121,7 @@ along with this program. If not, see . k2B, k14, k1A, k08, k15, k17, k1C, k18, k0C, k12, k13, k2F, k30, k31, k4C, k4D, k4E, k5F, k60, k61, k57, \ k39, k04, k16, k07, k09, k0A, k0B, k0D, k0E, k0F, k33, k34, k28, k5C, k5D, k5E, \ kE1, k1D, k1B, k06, k19, k05, k11, k10, k36, k37, k38, kE5, k52, k59, k5A, k5B, k58, \ - kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63, \ + kE0, kE3, kE2, k2C, kE6, kE7, k65, kE4, k50, k51, k4F, k62, k63 \ ) { \ { XXX, XXX, XXX, XXX, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k0F }, \ { k10, k11, k12, k13, k14, k15, k16, k17, k18, k19, k1A, k1B, k1C, k1D, k1E, k1F }, \ @@ -129,8 +129,8 @@ along with this program. If not, see . { k30, k31, XXX, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k4F }, \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B, k5C, k5D, k5E, k5F }, \ - { k60, k61, k62, k63, XXX, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ - { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ + { k60, k61, k62, k63, XXX, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ + { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ @@ -213,8 +213,8 @@ along with this program. If not, see . { k30, XXX, k32, k33, k34, k35, k36, k37, k38, k39, k3A, k3B, k3C, k3D, k3E, k3F }, \ { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k4F }, \ { k50, k51, k52, k53, k54, k55, k56, k57, k58, k59, k5A, k5B, k5C, k5D, k5E, k5F }, \ - { k60, k61, k62, k63, XXX, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ - { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX,}, \ + { k60, k61, k62, k63, XXX, k65, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ + { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, k87, k88, k89, k8A, k8B, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ { XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX, XXX }, \ From 5acdb4c921cbe3d1b10f35fc46334c8df9fc4374 Mon Sep 17 00:00:00 2001 From: Doomsdayrs <38189170+Doomsdayrs@users.noreply.github.com> Date: Fri, 6 May 2022 20:01:16 -0400 Subject: [PATCH 367/699] Sol3 fix rgb map (#17019) * Fix for key -> LED mapping * Revert whitespace changes * Revert whitespace changes 2 Co-authored-by: theVDude --- keyboards/rgbkb/sol3/rev1/rev1.c | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/keyboards/rgbkb/sol3/rev1/rev1.c b/keyboards/rgbkb/sol3/rev1/rev1.c index 5dc156c94d..c66e145e80 100644 --- a/keyboards/rgbkb/sol3/rev1/rev1.c +++ b/keyboards/rgbkb/sol3/rev1/rev1.c @@ -113,16 +113,18 @@ void matrix_slave_scan_kb() { #ifdef RGB_MATRIX_ENABLE // clang-format off led_config_t g_led_config = { { - { 41, 42, 43, 44, 45, 46, 47 }, - { 54, 53, 52, 51, 50, 49, 48 }, - { 55, 56, 57, 58, 59, 60, 61 }, - { 68, 67, 66, 65, 64, 63, 62 }, + { 41, 42, 43, 44, 45, 46, 47, NO_LED }, + { 54, 53, 52, 51, 50, 49, 48, NO_LED }, + { 55, 56, 57, 58, 59, 60, 61, NO_LED }, + { 68, 67, 66, 65, 64, 63, 62, NO_LED }, { 69, 70, 71, 72, 73, 74, 75, 76 }, - { 119, 120, 121, 122, 123, 124, 125 }, - { 132, 131, 130, 129, 128, 127, 126 }, - { 133, 134, 135, 136, 137, 138, 139 }, - { 146, 145, 144, 143, 142, 141, 140 }, - { 147, 148, 149, 150, 151, 152, 153 } + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { 119, 120, 121, 122, 123, 124, 125, NO_LED }, + { 132, 131, 130, 129, 128, 127, 126, NO_LED }, + { 133, 134, 135, 136, 137, 138, 139, NO_LED }, + { 146, 145, 144, 143, 142, 141, 140, NO_LED }, + { 147, 148, 149, 150, 151, 152, 153, 154 }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } }, { // ALL XY VALUES DIVIDE BY 2, THEN ADD 5 { 1, 6 }, { 1, 13 }, { 1, 19 }, { 1, 25 }, { 1, 31 }, { 1, 37 }, { 1, 43 }, { 1, 49 }, { 4, 52 }, { 11, 52 }, { 17, 52 }, { 23, 52 }, { 29, 52 }, { 35, 52 }, { 41, 54 }, { 46, 57 }, { 52, 60 }, { 57, 63 }, { 62, 66 }, { 68, 69 }, @@ -284,4 +286,4 @@ bool process_record_kb(uint16_t keycode, keyrecord_t *record) { #endif } return true; -}; \ No newline at end of file +}; From 7177434a02496793e8e8b4ff5d43da8aad3cf029 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sat, 7 May 2022 22:01:46 +1000 Subject: [PATCH 368/699] MSYS2 install: add some Python dependencies through Pacman (#17025) --- util/install/msys2.sh | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/util/install/msys2.sh b/util/install/msys2.sh index 203f8eff0c..c57c455eb4 100755 --- a/util/install/msys2.sh +++ b/util/install/msys2.sh @@ -12,7 +12,8 @@ _qmk_install() { base-devel: toolchain:x clang:x git: unzip: python3-pip:x \ avr-binutils:x avr-gcc:x avr-libc:x arm-none-eabi-binutils:x \ arm-none-eabi-gcc:x arm-none-eabi-newlib:x avrdude:x bootloadhid:x \ - dfu-programmer:x dfu-util:x teensy-loader-cli:x hidapi:x + dfu-programmer:x dfu-util:x teensy-loader-cli:x hidapi:x \ + python-appdirs:x python-colorama:x python-jsonschema:x python-pillow:x python-pygments:x _qmk_install_drivers From 76eff706f6f0a5a4599be52aa5553465449cccc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Guillaume=20G=C3=A9rard?= <1322081+GreatWizard@users.noreply.github.com> Date: Mon, 9 May 2022 03:05:05 +0200 Subject: [PATCH 369/699] feat: add support for JJ50 VIA (#16420) --- .../kprepublic/jj50/keymaps/via/config.h | 20 +++ .../kprepublic/jj50/keymaps/via/keymap.c | 138 ++++++++++++++++++ .../kprepublic/jj50/keymaps/via/rules.mk | 2 + 3 files changed, 160 insertions(+) create mode 100644 keyboards/kprepublic/jj50/keymaps/via/config.h create mode 100644 keyboards/kprepublic/jj50/keymaps/via/keymap.c create mode 100644 keyboards/kprepublic/jj50/keymaps/via/rules.mk diff --git a/keyboards/kprepublic/jj50/keymaps/via/config.h b/keyboards/kprepublic/jj50/keymaps/via/config.h new file mode 100644 index 0000000000..e05e2c8741 --- /dev/null +++ b/keyboards/kprepublic/jj50/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* +Copyright 2022 Guillaume Gérard + +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 LicensezZZ +along with this program. If not, see . +*/ + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 5 diff --git a/keyboards/kprepublic/jj50/keymaps/via/keymap.c b/keyboards/kprepublic/jj50/keymaps/via/keymap.c new file mode 100644 index 0000000000..978ac4c12c --- /dev/null +++ b/keyboards/kprepublic/jj50/keymaps/via/keymap.c @@ -0,0 +1,138 @@ +/* +Copyright 2022 Guillaume Gérard + +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 LicensezZZ +along with this program. If not, see . +*/ + +#include QMK_KEYBOARD_H + +enum layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST, + _FN +}; + +#define FN MO(_FN) +#define LOWER FN_MO13 +#define RAISE FN_MO23 + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Qwerty + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Tab | Q | W | E | R | T | Y | U | I | O | P | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Esc | A | S | D | F | G | H | J | K | L | ; | ' | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | FN | Ctrl | Alt | GUI |Lower | Space |Raise | Left | Down | Up |Right | + * `-----------------------------------------------------------------------------------' + */ + [_QWERTY] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, 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_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, + KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, + FN, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, KC_SPC, RAISE, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + ), + + /* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | Home | End | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ + [_LOWER] = LAYOUT( + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + + /* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |PageUp|PageDn| | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ + [_RAISE] = LAYOUT( + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + + /* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | Reset| | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * |CPSLCK| | | | | | | | | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ + [_ADJUST] = LAYOUT( + 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + /* Fn (rgblight and backlight layout) + * ,-----------------------------------------------------------------------------------. + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | |RGBVA-|RGBVA+| | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | |RGBSA-|RGBSA+| | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | |RGBTOG|RGBHU-|RGBHU+|RGBMOD| + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | |BLTOGG| BL- | BL+ |BLBRTG| + * `-----------------------------------------------------------------------------------' + */ + [_FN] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_SAI, _______, + _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_HUI, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_BRTG + ) +}; diff --git a/keyboards/kprepublic/jj50/keymaps/via/rules.mk b/keyboards/kprepublic/jj50/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/kprepublic/jj50/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes From 120d5d5520eff41a06f6544df42547ec4602d007 Mon Sep 17 00:00:00 2001 From: Jay Greco Date: Mon, 9 May 2022 18:28:16 -0700 Subject: [PATCH 370/699] Update RMKB to support SNAP (#17042) --- keyboards/nullbitsco/common/remote_kb.c | 10 +++++----- keyboards/nullbitsco/common/remote_kb.h | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/nullbitsco/common/remote_kb.c b/keyboards/nullbitsco/common/remote_kb.c index 4dcc9f4616..8e3f7f6766 100644 --- a/keyboards/nullbitsco/common/remote_kb.c +++ b/keyboards/nullbitsco/common/remote_kb.c @@ -62,13 +62,12 @@ static void send_msg(uint16_t keycode, bool pressed) { msg[IDX_KCMSB] = (keycode >> 8) & 0xFF; msg[IDX_PRESSED] = pressed; msg[IDX_CHECKSUM] = chksum8(msg, UART_MSG_LEN-1); - uart_transmit(msg, UART_MSG_LEN); } -static void print_message_buffer(void) { +static inline void print_message_buffer(void) { for (int i=0; i Date: Tue, 10 May 2022 14:25:42 +0200 Subject: [PATCH 371/699] converter/a1200/mistress1200: further firmware shrinking to fit on Atmega16U4 (16kb) (#17040) * Create dummy.txt * Add files via upload * Add files via upload * Delete dummy.txt * Update config.h * Update rules.mk * Update keymap.c * Update keyboards/converter/a1200/mistress1200/rules.mk Co-authored-by: Joel Challis * Update keyboards/converter/a1200/mistress1200/rules.mk Co-authored-by: Joel Challis * Update keyboards/converter/a1200/mistress1200/rules.mk Co-authored-by: Joel Challis * Update keyboards/converter/a1200/mistress1200/config.h Co-authored-by: Drashna Jaelre * Update keyboards/converter/a1200/mistress1200/config.h Co-authored-by: Drashna Jaelre * Update keyboards/converter/a1200/mistress1200/config.h Co-authored-by: Drashna Jaelre * Update keyboards/converter/a1200/mistress1200/rules.mk Co-authored-by: Drashna Jaelre * Update config.h * Update rules.mk * Update readme.md * Update config.h * Update rules.mk * Update config.h * Update keyboards/converter/a1200/mistress1200/config.h Co-authored-by: Joel Challis Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- keyboards/converter/a1200/mistress1200/config.h | 5 +++++ keyboards/converter/a1200/mistress1200/rules.mk | 3 +++ 2 files changed, 8 insertions(+) diff --git a/keyboards/converter/a1200/mistress1200/config.h b/keyboards/converter/a1200/mistress1200/config.h index 2ae2525398..123d6165d6 100644 --- a/keyboards/converter/a1200/mistress1200/config.h +++ b/keyboards/converter/a1200/mistress1200/config.h @@ -49,6 +49,11 @@ along with this program. If not, see . #define LED_CAPS_LOCK_PIN B0 #define LED_PIN_ON_STATE 0 +#define TAPPING_TOGGLE 3 + +#undef LOCKING_SUPPORT_ENABLE +#undef LOCKING_RESYNC_ENABLE +#define LAYER_STATE_8BIT /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 diff --git a/keyboards/converter/a1200/mistress1200/rules.mk b/keyboards/converter/a1200/mistress1200/rules.mk index 56aa5d9ba9..90c20bafc9 100644 --- a/keyboards/converter/a1200/mistress1200/rules.mk +++ b/keyboards/converter/a1200/mistress1200/rules.mk @@ -17,3 +17,6 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output LTO_ENABLE = yes +SPACE_CADET_ENABLE = no +GRAVE_ESC_ENABLE = no +MAGIC_ENABLE = no From a3e057e779ae1d9f827a859722428f03c2b118f1 Mon Sep 17 00:00:00 2001 From: Eugene-Yuan Kou Date: Wed, 11 May 2022 00:00:30 +0800 Subject: [PATCH 372/699] Adding akira (#16982) * keyboard:akira initial commit * Update keyboards/ekow/akira/akira.h Co-authored-by: Joel Challis * Update keyboards/ekow/akira/keymaps/via/rules.mk Co-authored-by: Joel Challis * Update keyboards/ekow/akira/readme.md Co-authored-by: Joel Challis * Update .gitignore Co-authored-by: Joel Challis * Update readme.md * Update keyboards/ekow/akira/rules.mk Co-authored-by: Drashna Jaelre * Update rules.mk remove redundant content. * added keyboard/ekow/keymaps/via/keymap.c * remove .ccls-cache * add instructions of enter the bootloader * add instructions of enter the bootloader * modify ekow/akira:via * Update keyboards/ekow/akira/readme.md Co-authored-by: Ryan * Update keyboards/ekow/akira/keymaps/via/rules.mk Co-authored-by: Ryan Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/ekow/akira/akira.c | 16 + keyboards/ekow/akira/akira.h | 35 ++ keyboards/ekow/akira/config.h | 51 +++ keyboards/ekow/akira/info.json | 319 ++++++++++++++++++ keyboards/ekow/akira/keymaps/default/keymap.c | 25 ++ .../ekow/akira/keymaps/default/readme.md | 1 + keyboards/ekow/akira/keymaps/via/keymap.c | 26 ++ keyboards/ekow/akira/keymaps/via/rules.mk | 3 + keyboards/ekow/akira/readme.md | 24 ++ keyboards/ekow/akira/rules.mk | 18 + 10 files changed, 518 insertions(+) create mode 100644 keyboards/ekow/akira/akira.c create mode 100644 keyboards/ekow/akira/akira.h create mode 100644 keyboards/ekow/akira/config.h create mode 100644 keyboards/ekow/akira/info.json create mode 100644 keyboards/ekow/akira/keymaps/default/keymap.c create mode 100644 keyboards/ekow/akira/keymaps/default/readme.md create mode 100644 keyboards/ekow/akira/keymaps/via/keymap.c create mode 100644 keyboards/ekow/akira/keymaps/via/rules.mk create mode 100644 keyboards/ekow/akira/readme.md create mode 100644 keyboards/ekow/akira/rules.mk diff --git a/keyboards/ekow/akira/akira.c b/keyboards/ekow/akira/akira.c new file mode 100644 index 0000000000..420a05e04a --- /dev/null +++ b/keyboards/ekow/akira/akira.c @@ -0,0 +1,16 @@ +/* Copyright 2022 eugenepy + * + * 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 . + */ +#include "akira.h" diff --git a/keyboards/ekow/akira/akira.h b/keyboards/ekow/akira/akira.h new file mode 100644 index 0000000000..0417458027 --- /dev/null +++ b/keyboards/ekow/akira/akira.h @@ -0,0 +1,35 @@ +/* Copyright 2022 eugenepy + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT_60_hhkb( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, \ + 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, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K41, K42, K47, K4B, K4C \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D , K0E}, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D , XXX}, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX}, \ + { K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D , XXX, XXX}, \ + { K41, K42, XXX, XXX, XXX, K47, XXX, XXX, XXX, XXX, K4B, K4C, XXX, XXX, XXX} \ +} diff --git a/keyboards/ekow/akira/config.h b/keyboards/ekow/akira/config.h new file mode 100644 index 0000000000..678827543f --- /dev/null +++ b/keyboards/ekow/akira/config.h @@ -0,0 +1,51 @@ +/* +Copyright 2022 eugenepy + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4B59 // KY +#define PRODUCT_ID 0x414B // AK +#define DEVICE_VER 0x0000 +#define MANUFACTURER Keeboyzlab +#define PRODUCT AKIRA + +// key matrix size +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +// M60-A PCB default pin-out +#define MATRIX_ROW_PINS \ + { B0, B1, B2, B10, B11 } +#define MATRIX_COL_PINS \ + { B12, B13, B14, B15, A8, A9, A10, A15, B3, B4, B5, B6, B7, B8, B9 } + +/* + * 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) + * + */ +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW +#define DEBOUNCE 3 diff --git a/keyboards/ekow/akira/info.json b/keyboards/ekow/akira/info.json new file mode 100644 index 0000000000..b6ebf9b8a2 --- /dev/null +++ b/keyboards/ekow/akira/info.json @@ -0,0 +1,319 @@ +{ + "keyboard_name": "KEYBOYZLAB:AKIRA", + "maintainer": "eugenepy", + "url": "http://github.com/EugenePY", + "layouts": { + "LAYOUT_60_hhkb": { + "layout": [ + { + "label": "Esc", + "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 + }, + { + "label": "|", + "x": 13, + "y": 0 + }, + { + "label": "~", + "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": "Delete", + "x": 13.5, + "y": 1, + "w": 1.5 + }, + { + "label": "Control", + "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 + }, + { + "label": "Fn", + "x": 14, + "y": 3 + }, + { + "label": "Os", + "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": "Os", + "x": 12.5, + "y": 4 + } + ] + } + } +} diff --git a/keyboards/ekow/akira/keymaps/default/keymap.c b/keyboards/ekow/akira/keymaps/default/keymap.c new file mode 100644 index 0000000000..672516840d --- /dev/null +++ b/keyboards/ekow/akira/keymaps/default/keymap.c @@ -0,0 +1,25 @@ +/* Copyright 2022 eugenepy + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // Default layer + [0] = LAYOUT_60_hhkb(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_LCTL, 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_LGUI, KC_LALT, KC_SPC, KC_RCTL, KC_RALT), + + // Fn1 Layer + [1] = LAYOUT_60_hhkb(KC_GRV, 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_INS, KC_DEL, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), +}; diff --git a/keyboards/ekow/akira/keymaps/default/readme.md b/keyboards/ekow/akira/keymaps/default/readme.md new file mode 100644 index 0000000000..b20d478699 --- /dev/null +++ b/keyboards/ekow/akira/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for akira diff --git a/keyboards/ekow/akira/keymaps/via/keymap.c b/keyboards/ekow/akira/keymaps/via/keymap.c new file mode 100644 index 0000000000..e7c70a6f9e --- /dev/null +++ b/keyboards/ekow/akira/keymaps/via/keymap.c @@ -0,0 +1,26 @@ +/* Copyright 2022 eugenepy + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + // Default layer + [0] = LAYOUT_60_hhkb(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_LCTL, 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_LGUI, KC_LALT, KC_SPC, KC_RCTL, KC_RALT), + + // Fn1 Layer + [1] = LAYOUT_60_hhkb(KC_GRV, 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_INS, KC_DEL, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + [2] = LAYOUT_60_hhkb(XXX, 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_INS, KC_DEL, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) +}; diff --git a/keyboards/ekow/akira/keymaps/via/rules.mk b/keyboards/ekow/akira/keymaps/via/rules.mk new file mode 100644 index 0000000000..c859353a46 --- /dev/null +++ b/keyboards/ekow/akira/keymaps/via/rules.mk @@ -0,0 +1,3 @@ +VIA_ENABLE = yes +CONSOLE_ENABLE = no +COMMAND_ENABLE = no diff --git a/keyboards/ekow/akira/readme.md b/keyboards/ekow/akira/readme.md new file mode 100644 index 0000000000..e1a0c90366 --- /dev/null +++ b/keyboards/ekow/akira/readme.md @@ -0,0 +1,24 @@ +# AKIRA + +* Keyboard Maintainer: [eugenepy](https://github.com/eugenepy) +* Hardware Supported: AKIRA pcb, both Hotswap and solderable. +* Hardware Availability: Not yet on groupbuy + +# Build +Make example for this keyboard (after setting up your build environment): + + make ekow/akira:default + +Flashing example for this keyboard: + + make ekow/akira:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the Buttom on the back of the PCB, the board will enter the dfu-mode, no extra pads need to short. +* **Keycode in layout**: Press the key mapped to `RESET` if it is available + diff --git a/keyboards/ekow/akira/rules.mk b/keyboards/ekow/akira/rules.mk new file mode 100644 index 0000000000..6653c66b16 --- /dev/null +++ b/keyboards/ekow/akira/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = STM32F042 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From 615dbd62e945fde4c26335ed24774d1feeb1dadf Mon Sep 17 00:00:00 2001 From: takashicompany Date: Wed, 11 May 2022 03:07:01 +0900 Subject: [PATCH 373/699] [Keyboard] Fix led num for center_enter/qoolee (#17050) --- keyboards/takashicompany/center_enter/config.h | 2 +- keyboards/takashicompany/qoolee/config.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/takashicompany/center_enter/config.h b/keyboards/takashicompany/center_enter/config.h index 9900d35f37..d6840ca682 100644 --- a/keyboards/takashicompany/center_enter/config.h +++ b/keyboards/takashicompany/center_enter/config.h @@ -68,7 +68,7 @@ along with this program. If not, see . #define RGB_DI_PIN D3 #ifdef RGB_DI_PIN -# define RGBLED_NUM 16 +# define RGBLED_NUM 6 # define RGBLIGHT_HUE_STEP 8 # define RGBLIGHT_SAT_STEP 8 # define RGBLIGHT_VAL_STEP 8 diff --git a/keyboards/takashicompany/qoolee/config.h b/keyboards/takashicompany/qoolee/config.h index 3095f84159..36bb330c95 100644 --- a/keyboards/takashicompany/qoolee/config.h +++ b/keyboards/takashicompany/qoolee/config.h @@ -68,7 +68,7 @@ along with this program. If not, see . #define RGB_DI_PIN D3 #ifdef RGB_DI_PIN -# define RGBLED_NUM 16 +# define RGBLED_NUM 6 # define RGBLIGHT_HUE_STEP 8 # define RGBLIGHT_SAT_STEP 8 # define RGBLIGHT_VAL_STEP 8 From f3fdd6ae5d150f39df75ed1524c72b184e06d3a6 Mon Sep 17 00:00:00 2001 From: kb-elmo Date: Wed, 11 May 2022 12:13:50 +0200 Subject: [PATCH 374/699] [Keyboard] Add Axostudio Yeti hotswap version (#16820) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/axolstudio/yeti/hotswap/config.h | 92 ++++++++++++++ keyboards/axolstudio/yeti/hotswap/hotswap.c | 118 ++++++++++++++++++ keyboards/axolstudio/yeti/hotswap/hotswap.h | 35 ++++++ keyboards/axolstudio/yeti/hotswap/info.json | 75 +++++++++++ .../yeti/hotswap/keymaps/default/keymap.c | 33 +++++ .../yeti/hotswap/keymaps/via/keymap.c | 47 +++++++ .../yeti/{ => hotswap}/keymaps/via/rules.mk | 0 keyboards/axolstudio/yeti/hotswap/readme.md | 27 ++++ keyboards/axolstudio/yeti/hotswap/rules.mk | 21 ++++ .../axolstudio/yeti/{ => soldered}/config.h | 0 .../axolstudio/yeti/{ => soldered}/info.json | 2 +- .../{ => soldered}/keymaps/default/keymap.c | 0 .../yeti/{ => soldered}/keymaps/via/keymap.c | 0 .../yeti/soldered/keymaps/via/rules.mk | 1 + .../axolstudio/yeti/{ => soldered}/readme.md | 12 +- .../axolstudio/yeti/{ => soldered}/rules.mk | 0 .../yeti/{yeti.c => soldered/soldered.c} | 2 +- .../yeti/{yeti.h => soldered/soldered.h} | 0 18 files changed, 461 insertions(+), 4 deletions(-) create mode 100644 keyboards/axolstudio/yeti/hotswap/config.h create mode 100644 keyboards/axolstudio/yeti/hotswap/hotswap.c create mode 100644 keyboards/axolstudio/yeti/hotswap/hotswap.h create mode 100644 keyboards/axolstudio/yeti/hotswap/info.json create mode 100644 keyboards/axolstudio/yeti/hotswap/keymaps/default/keymap.c create mode 100644 keyboards/axolstudio/yeti/hotswap/keymaps/via/keymap.c rename keyboards/axolstudio/yeti/{ => hotswap}/keymaps/via/rules.mk (100%) create mode 100644 keyboards/axolstudio/yeti/hotswap/readme.md create mode 100644 keyboards/axolstudio/yeti/hotswap/rules.mk rename keyboards/axolstudio/yeti/{ => soldered}/config.h (100%) rename keyboards/axolstudio/yeti/{ => soldered}/info.json (99%) rename keyboards/axolstudio/yeti/{ => soldered}/keymaps/default/keymap.c (100%) rename keyboards/axolstudio/yeti/{ => soldered}/keymaps/via/keymap.c (100%) create mode 100644 keyboards/axolstudio/yeti/soldered/keymaps/via/rules.mk rename keyboards/axolstudio/yeti/{ => soldered}/readme.md (58%) rename keyboards/axolstudio/yeti/{ => soldered}/rules.mk (100%) rename keyboards/axolstudio/yeti/{yeti.c => soldered/soldered.c} (96%) rename keyboards/axolstudio/yeti/{yeti.h => soldered/soldered.h} (100%) diff --git a/keyboards/axolstudio/yeti/hotswap/config.h b/keyboards/axolstudio/yeti/hotswap/config.h new file mode 100644 index 0000000000..559b62a81d --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/config.h @@ -0,0 +1,92 @@ +/* +Copyright 2022 kb-elmo + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x525C +#define PRODUCT_ID 0x9F9E +#define DEVICE_VER 0x0001 +#define MANUFACTURER DZtech +#define PRODUCT Yeti RGB + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* Keyboard Matrix Assignments */ + +#define MATRIX_ROW_PINS { E6, C6, B4, B5, B6 } +#define MATRIX_COL_PINS { C7, F7, F6, F5, F4, F1, F0, B0, B1, B2, B3, B7, D2, D3, D5 } + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* RGB Matrix */ +#ifdef RGB_MATRIX_ENABLE +# define RGB_MATRIX_KEYPRESSES +# define RGB_MATRIX_FRAMEBUFFER_EFFECTS +// RGB Matrix Animation modes. Explicitly enabled +// For full list of effects, see: +// https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +# define ENABLE_RGB_MATRIX_SOLID_COLOR +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +# define RGB_MATRIX_LED_FLUSH_LIMIT 16 // 16 is equivalent to limiting to 60fps +# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects +# define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended +# define DRIVER_ADDR_1 0b1010000 +# define DRIVER_COUNT 1 +# define DRIVER_LED_TOTAL 64 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 diff --git a/keyboards/axolstudio/yeti/hotswap/hotswap.c b/keyboards/axolstudio/yeti/hotswap/hotswap.c new file mode 100644 index 0000000000..d1debb4e35 --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/hotswap.c @@ -0,0 +1,118 @@ +/* Copyright 2022 kb-elmo + * + * 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 . + */ + +#include "hotswap.h" + +#ifdef RGB_MATRIX_ENABLE +const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { + { 0, B_1, A_1, C_1 }, + { 0, B_2, A_2, C_2 }, + { 0, B_3, A_3, C_3 }, + { 0, B_4, A_4, C_4 }, + { 0, B_5, A_5, C_5 }, + { 0, B_6, A_6, C_6 }, + { 0, B_7, A_7, C_7 }, + { 0, B_8, A_8, C_8 }, + { 0, B_9, A_9, C_9 }, + { 0, B_10, A_10, C_10 }, + { 0, B_11, A_11, C_11 }, + { 0, B_12, A_12, C_12 }, + { 0, B_13, A_13, C_13 }, + { 0, B_14, A_14, C_14 }, + { 0, B_15, A_15, C_15 }, + + { 0, E_1, D_1, F_1 }, + { 0, E_2, D_2, F_2 }, + { 0, E_3, D_3, F_3 }, + { 0, E_4, D_4, F_4 }, + { 0, E_5, D_5, F_5 }, + { 0, E_6, D_6, F_6 }, + { 0, E_7, D_7, F_7 }, + { 0, E_8, D_8, F_8 }, + { 0, E_9, D_9, F_9 }, + { 0, E_10, D_10, F_10 }, + { 0, E_11, D_11, F_11 }, + { 0, E_12, D_12, F_12 }, + { 0, E_13, D_13, F_13 }, + { 0, E_14, D_14, F_14 }, + { 0, E_15, D_15, F_15 }, + + { 0, H_1, G_1, I_1 }, + { 0, H_2, G_2, I_2 }, + { 0, H_3, G_3, I_3 }, + { 0, H_4, G_4, I_4 }, + { 0, H_5, G_5, I_5 }, + { 0, H_6, G_6, I_6 }, + { 0, H_7, G_7, I_7 }, + { 0, H_8, G_8, I_8 }, + { 0, H_9, G_9, I_9 }, + { 0, H_10, G_10, I_10 }, + { 0, H_11, G_11, I_11 }, + { 0, H_12, G_12, I_12 }, + { 0, H_13, G_13, I_13 }, + { 0, H_14, G_14, I_14 }, + + { 0, K_2, J_2, L_2 }, + { 0, K_3, J_3, L_3 }, + { 0, K_4, J_4, L_4 }, + { 0, K_5, J_5, L_5 }, + { 0, K_6, J_6, L_6 }, + { 0, K_7, J_7, L_7 }, + { 0, K_8, J_8, L_8 }, + { 0, K_9, J_9, L_9 }, + { 0, K_10, J_10, L_10 }, + { 0, K_11, J_11, L_11 }, + { 0, K_12, J_12, L_12 }, + { 0, K_13, J_13, L_13 }, + { 0, K_14, J_14, L_14 }, + + { 0, K_1, J_1, L_1 }, + { 0, K_16, J_16, L_16 }, + { 0, H_16, G_16, I_16 }, + { 0, E_16, D_16, F_16 }, + { 0, B_16, A_16, C_16 }, + { 0, H_15, G_15, I_15 }, + { 0, K_15, J_15, L_15 }, +}; + +led_config_t g_led_config = { + { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14 }, + { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29 }, + { 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, NO_LED, 43 }, + { NO_LED, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, NO_LED, 56 }, + { NO_LED, 57, NO_LED, 58, NO_LED, 59, 60, NO_LED, 61, NO_LED, 62, NO_LED, NO_LED, NO_LED, 63 } + }, { + {0, 0},{16, 0},{16*2, 0},{16*3, 0},{16*4, 0},{16*5, 0},{16*6, 0},{16*7, 0},{16*8, 0},{16*9, 0},{16*10, 0},{16*11, 0},{16*12, 0},{16*13, 0},{16*14, 0}, + {0, 16},{16,16},{16*2,16},{16*3,16},{16*4,16},{16*5,16},{16*6,16},{16*7,16},{16*8,16},{16*9,16},{16*10,16},{16*11,16},{16*12,16},{16*13,16},{16*14,16}, + {0,32},{16,32},{16*2,32},{16*3,32},{16*4,32},{16*5,32},{16*6,32},{16*7,32},{16*8,32},{16*9,32},{16*10,32},{16*11,32},{16*12,32},{16*14}, + {16,48},{16*2,48},{16*3,48},{16*4,48},{16*5,48},{16*6,48},{16*7,48},{16*8,48},{16*9,48},{16*10,48},{16*11,48},{16*12,48},{16*14,48}, + {16,64},{16*3,64},{16*5,64},{16*6,64},{16*8,64},{16*10,64},{16*14,64} + }, { + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 1, 4, 1, 4, 1, 1 + } +}; +#endif +__attribute__ ((weak)) +void rgb_matrix_indicators_user(void) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(31, 0xFF, 0xFF, 0xFF); + } +} diff --git a/keyboards/axolstudio/yeti/hotswap/hotswap.h b/keyboards/axolstudio/yeti/hotswap/hotswap.h new file mode 100644 index 0000000000..736f26ed7f --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/hotswap.h @@ -0,0 +1,35 @@ +/* Copyright 2022 kb-elmo + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define ____ KC_NO + +#define LAYOUT( \ + k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, \ + k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, \ + k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k214, \ + k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, k314, \ + k401, k403, k405, k406, k408, k410, k414 \ +) { \ + { k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014 }, \ + { k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114 }, \ + { k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, ____, k214 }, \ + { ____, k301, k302, k303, k304, k305, k306, k307, k308, k309, k310, k311, k312, ____, k314 }, \ + { ____, k401, ____, k403, ____, k405, k406, ____, k408, ____, k410, ____, ____, ____, k414 } \ +} diff --git a/keyboards/axolstudio/yeti/hotswap/info.json b/keyboards/axolstudio/yeti/hotswap/info.json new file mode 100644 index 0000000000..72042a98a3 --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/info.json @@ -0,0 +1,75 @@ +{ + "keyboard_name": "yeti hotswap", + "url": "https://axolstudio.ca/yeti", + "maintainer": "kb-elmo", + "layouts": { + "LAYOUT": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.25, "y":0}, + {"x":6.25, "y":0}, + {"x":7.25, "y":0}, + {"x":10.25, "y":0}, + {"x":11.25, "y":0}, + {"x":12.25, "y":0}, + {"x":13.25, "y":0}, + {"x":14.25, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0, "w":2}, + {"x":0, "y":1}, + {"x":1.25, "y":1, "w":1.5}, + {"x":2.75, "y":1}, + {"x":3.75, "y":1}, + {"x":4.75, "y":1}, + {"x":5.75, "y":1}, + {"x":6.75, "y":1}, + {"x":9.75, "y":1}, + {"x":10.75, "y":1}, + {"x":11.75, "y":1}, + {"x":12.75, "y":1}, + {"x":13.75, "y":1}, + {"x":14.75, "y":1}, + {"x":15.75, "y":1}, + {"x":16.75, "y":1, "w":1.5}, + {"x":0, "y":2}, + {"x":1.25, "y":2, "w":1.75}, + {"x":3, "y":2}, + {"x":4, "y":2}, + {"x":5, "y":2}, + {"x":6, "y":2}, + {"x":7, "y":2}, + {"x":10, "y":2}, + {"x":11, "y":2}, + {"x":12, "y":2}, + {"x":13, "y":2}, + {"x":14, "y":2}, + {"x":15, "y":2}, + {"x":16, "y":2, "w":2.25}, + {"x":1.25, "y":3, "w":2.25}, + {"x":3.5, "y":3}, + {"x":4.5, "y":3}, + {"x":5.5, "y":3}, + {"x":6.5, "y":3}, + {"x":7.5, "y":3}, + {"x":9.5, "y":3}, + {"x":10.5, "y":3}, + {"x":11.5, "y":3}, + {"x":12.5, "y":3}, + {"x":13.5, "y":3}, + {"x":14.5, "y":3}, + {"x":15.5, "y":3, "w":2.75}, + {"x":1.25, "y":4, "w":1.5}, + {"x":4.25, "y":4, "w":1.5}, + {"x":5.75, "y":4, "w":2}, + {"x":7.75, "y":4, "w":1.25}, + {"x":9.5, "y":4, "w":2.75}, + {"x":12.25, "y":4, "w":1.5}, + {"x":16.75, "y":4, "w":1.5} + ] + } + } +} diff --git a/keyboards/axolstudio/yeti/hotswap/keymaps/default/keymap.c b/keyboards/axolstudio/yeti/hotswap/keymaps/default/keymap.c new file mode 100644 index 0000000000..cb1ae43a64 --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/keymaps/default/keymap.c @@ -0,0 +1,33 @@ +/* Copyright 2022 kb-elmo + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_PAUS, 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_BSPC, + KC_PSCR, 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, + KC_F5, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL + ), + [1] = LAYOUT( + KC_TRNS, KC_GRV, 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_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) +}; diff --git a/keyboards/axolstudio/yeti/hotswap/keymaps/via/keymap.c b/keyboards/axolstudio/yeti/hotswap/keymaps/via/keymap.c new file mode 100644 index 0000000000..349bd1223d --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2022 kb-elmo + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_PAUS, 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_BSPC, + KC_PSCR, 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, + KC_F5, 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_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, + KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL + ), + [1] = LAYOUT( + KC_TRNS, KC_GRV, 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_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + [2] = LAYOUT( + 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, 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 + ), + [3] = LAYOUT( + 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, 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 + ) +}; diff --git a/keyboards/axolstudio/yeti/keymaps/via/rules.mk b/keyboards/axolstudio/yeti/hotswap/keymaps/via/rules.mk similarity index 100% rename from keyboards/axolstudio/yeti/keymaps/via/rules.mk rename to keyboards/axolstudio/yeti/hotswap/keymaps/via/rules.mk diff --git a/keyboards/axolstudio/yeti/hotswap/readme.md b/keyboards/axolstudio/yeti/hotswap/readme.md new file mode 100644 index 0000000000..79fad346f3 --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/readme.md @@ -0,0 +1,27 @@ +# Axolstudio Yeti RGB + +![yeti](https://i.imgur.com/eoRH6W1l.png) + +**TGR Alice inspired board with some extra heft** + +* Keyboard Maintainer: [kb-elmo](https://github.com/kb-elmo) +* Hardware Supported: Axolstudio Yeti Hotswap RGB PCB +* Hardware Availability: https://axolstudio.ca/yeti + +Make example for this keyboard (after setting up your build environment): + + make axolstudio/yeti/hotswap:default + +Flashing example for this keyboard: + + make axolstudio/yeti/hotswap:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/axolstudio/yeti/hotswap/rules.mk b/keyboards/axolstudio/yeti/hotswap/rules.mk new file mode 100644 index 0000000000..52474311b1 --- /dev/null +++ b/keyboards/axolstudio/yeti/hotswap/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +RGB_MATRIX_ENABLE = yes # Use RGB matrix +RGB_MATRIX_DRIVER = IS31FL3733 + +LTO_ENABLE = yes diff --git a/keyboards/axolstudio/yeti/config.h b/keyboards/axolstudio/yeti/soldered/config.h similarity index 100% rename from keyboards/axolstudio/yeti/config.h rename to keyboards/axolstudio/yeti/soldered/config.h diff --git a/keyboards/axolstudio/yeti/info.json b/keyboards/axolstudio/yeti/soldered/info.json similarity index 99% rename from keyboards/axolstudio/yeti/info.json rename to keyboards/axolstudio/yeti/soldered/info.json index 7d256ccf36..9c6c122ce3 100644 --- a/keyboards/axolstudio/yeti/info.json +++ b/keyboards/axolstudio/yeti/soldered/info.json @@ -1,5 +1,5 @@ { - "keyboard_name": "yeti", + "keyboard_name": "yeti soldered", "url": "https://axolstudio.ca/yeti", "maintainer": "kb-elmo", "layouts": { diff --git a/keyboards/axolstudio/yeti/keymaps/default/keymap.c b/keyboards/axolstudio/yeti/soldered/keymaps/default/keymap.c similarity index 100% rename from keyboards/axolstudio/yeti/keymaps/default/keymap.c rename to keyboards/axolstudio/yeti/soldered/keymaps/default/keymap.c diff --git a/keyboards/axolstudio/yeti/keymaps/via/keymap.c b/keyboards/axolstudio/yeti/soldered/keymaps/via/keymap.c similarity index 100% rename from keyboards/axolstudio/yeti/keymaps/via/keymap.c rename to keyboards/axolstudio/yeti/soldered/keymaps/via/keymap.c diff --git a/keyboards/axolstudio/yeti/soldered/keymaps/via/rules.mk b/keyboards/axolstudio/yeti/soldered/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/axolstudio/yeti/soldered/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/axolstudio/yeti/readme.md b/keyboards/axolstudio/yeti/soldered/readme.md similarity index 58% rename from keyboards/axolstudio/yeti/readme.md rename to keyboards/axolstudio/yeti/soldered/readme.md index 6be59ebd26..78ca4d5deb 100644 --- a/keyboards/axolstudio/yeti/readme.md +++ b/keyboards/axolstudio/yeti/soldered/readme.md @@ -10,10 +10,18 @@ Make example for this keyboard (after setting up your build environment): - make axolstudio/yeti:default + make axolstudio/yeti/soldered:default Flashing example for this keyboard: - make axolstudio/yeti:default:flash + make axolstudio/yeti/soldered:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/axolstudio/yeti/rules.mk b/keyboards/axolstudio/yeti/soldered/rules.mk similarity index 100% rename from keyboards/axolstudio/yeti/rules.mk rename to keyboards/axolstudio/yeti/soldered/rules.mk diff --git a/keyboards/axolstudio/yeti/yeti.c b/keyboards/axolstudio/yeti/soldered/soldered.c similarity index 96% rename from keyboards/axolstudio/yeti/yeti.c rename to keyboards/axolstudio/yeti/soldered/soldered.c index 9c11b8c78c..5041fabed0 100644 --- a/keyboards/axolstudio/yeti/yeti.c +++ b/keyboards/axolstudio/yeti/soldered/soldered.c @@ -14,4 +14,4 @@ * along with this program. If not, see . */ -#include "yeti.h" +#include "soldered.h" diff --git a/keyboards/axolstudio/yeti/yeti.h b/keyboards/axolstudio/yeti/soldered/soldered.h similarity index 100% rename from keyboards/axolstudio/yeti/yeti.h rename to keyboards/axolstudio/yeti/soldered/soldered.h From 371499c3a79227d55ac481d23060074edc8c155a Mon Sep 17 00:00:00 2001 From: peepeetee <43021794+peepeetee@users.noreply.github.com> Date: Wed, 11 May 2022 18:57:46 +0800 Subject: [PATCH 375/699] [Keyboard] Momokai Tap Trio (#16463) * add winry3m3w * change name to Momokai Tap Trio * Delete settings.json * add rgb effects * amend default keymap * add limited RGB controls to default keymap * fix VAD * Update keyboards/momokai/tap_trio/tap_trio.h Co-authored-by: Joel Challis * Update keyboards/momokai/tap_trio/tap_trio.h Co-authored-by: Joel Challis * Update keyboards/momokai/tap_trio/config.h Co-authored-by: Drashna Jaelre * Update keyboards/momokai/tap_trio/rules.mk Co-authored-by: Ryan * implement RGB matrix, change default keymap * change keymaps * change rgb effects * comment out the RGB matrix and switch back to RGB light due to VIA not playing ball Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/momokai/tap_trio/config.h | 126 ++++++++++++++++++ keyboards/momokai/tap_trio/info.json | 18 +++ .../momokai/tap_trio/keymaps/default/keymap.c | 27 ++++ .../momokai/tap_trio/keymaps/via/keymap.c | 42 ++++++ .../momokai/tap_trio/keymaps/via/rules.mk | 2 + keyboards/momokai/tap_trio/readme.md | 12 ++ keyboards/momokai/tap_trio/rules.mk | 20 +++ keyboards/momokai/tap_trio/tap_trio.c | 31 +++++ keyboards/momokai/tap_trio/tap_trio.h | 26 ++++ 9 files changed, 304 insertions(+) create mode 100644 keyboards/momokai/tap_trio/config.h create mode 100644 keyboards/momokai/tap_trio/info.json create mode 100644 keyboards/momokai/tap_trio/keymaps/default/keymap.c create mode 100644 keyboards/momokai/tap_trio/keymaps/via/keymap.c create mode 100644 keyboards/momokai/tap_trio/keymaps/via/rules.mk create mode 100644 keyboards/momokai/tap_trio/readme.md create mode 100644 keyboards/momokai/tap_trio/rules.mk create mode 100644 keyboards/momokai/tap_trio/tap_trio.c create mode 100644 keyboards/momokai/tap_trio/tap_trio.h diff --git a/keyboards/momokai/tap_trio/config.h b/keyboards/momokai/tap_trio/config.h new file mode 100644 index 0000000000..8dc38b10ea --- /dev/null +++ b/keyboards/momokai/tap_trio/config.h @@ -0,0 +1,126 @@ +/* Copyright 2022 Momokai + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x69F9 // "69" + "Popular Racing Movie 9" = Momokai (?) +#define PRODUCT_ID 0x0006 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Momokai +#define PRODUCT Tap Trio + +#define MATRIX_ROWS 1 +#define MATRIX_COLS 6 + +#define MATRIX_ROW_PINS { E0 } +#define MATRIX_COL_PINS { E6, B2, B7, D1, D2, D3 } + +#define DIODE_DIRECTION COL2ROW + + +//TODO: implement RGB Matrix +#define RGB_DI_PIN F0 +#define RGBLED_NUM 5 +#define RGBLIGHT_HUE_STEP 8 +#define RGBLIGHT_SAT_STEP 8 +#define RGBLIGHT_VAL_STEP 8 + +#define RGBLIGHT_DEFAULT_MODE RGBLIGHT_MODE_RAINBOW_SWIRL + + +/*== all animations enable ==*/ +// #define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ + /*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ + #define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 + /*==== use exp() and sin() ====*/ + #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 + #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 + + +// #ifdef RGB_DI_PIN +// #define DRIVER_LED_TOTAL 5 + +// #define RGB_MATRIX_KEYPRESSES // reacts to keypresses +// // # define RGBLIGHT_LIMIT_VAL 180 // Limit to vendor-recommended value +// #endif +// #ifdef RGB_MATRIX_ENABLE +// // # define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 // Limit to vendor-recommended value +// // RGB Matrix Animation modes. Explicitly enabled +// // For full list of effects, see: +// // https://docs.qmk.fm/#/feature_rgb_matrix?id=rgb-matrix-effects +// #define ENABLE_RGB_MATRIX_SOLID_COLOR +// #define ENABLE_RGB_MATRIX_ALPHAS_MODS +// #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +// #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +// #define ENABLE_RGB_MATRIX_BREATHING +// // #define ENABLE_RGB_MATRIX_BAND_SAT +// // #define ENABLE_RGB_MATRIX_BAND_VAL +// // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +// // #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +// // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +// // #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +// #define ENABLE_RGB_MATRIX_CYCLE_ALL +// #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +// #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +// // #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +// // #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +// #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +// #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +// // #define ENABLE_RGB_MATRIX_DUAL_BEACON +// #define ENABLE_RGB_MATRIX_RAINBOW_BEACON +// // #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +// #define ENABLE_RGB_MATRIX_RAINDROPS +// #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +// #define ENABLE_RGB_MATRIX_HUE_BREATHING +// #define ENABLE_RGB_MATRIX_HUE_PENDULUM +// #define ENABLE_RGB_MATRIX_HUE_WAVE +// #define ENABLE_RGB_MATRIX_PIXEL_RAIN +// #define ENABLE_RGB_MATRIX_PIXEL_FLOW +// #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL + +// // enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined +// // #define ENABLE_RGB_MATRIX_TYPING_HEATMAP +// // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + +// // enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined +// // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE +// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +// // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +// // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +// // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +// // #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +// #define ENABLE_RGB_MATRIX_SPLASH +// // #define ENABLE_RGB_MATRIX_MULTISPLASH +// #define ENABLE_RGB_MATRIX_SOLID_SPLASH +// // #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +// #endif diff --git a/keyboards/momokai/tap_trio/info.json b/keyboards/momokai/tap_trio/info.json new file mode 100644 index 0000000000..efe4fc6111 --- /dev/null +++ b/keyboards/momokai/tap_trio/info.json @@ -0,0 +1,18 @@ +{ + "keyboard_name": "Momokai Tap Trio", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "K00 (E0,E6)", "x": 0, "y": 0, "w": 1.5, "h": 1.5 }, + { "label": "K01 (E0,B2)", "x": 2.25, "y": 0, "w": 1.5, "h": 1.5 }, + { "label": "K02 (E0,B7)", "x": 4.5, "y": 0, "w": 1.5, "h": 1.5 }, + { "label": "K03 (E0,D1)", "x": 2.25, "y": 2.5 }, + { "label": "K04 (E0,D2)", "x": 3.75, "y": 2.5 }, + { "label": "K05 (E0,D3)", "x": 5.25, "y": 2.5 } + ] + } + } + ,"meta": "https://noroadsleft.github.io/kbf_qmk_converter/" +} diff --git a/keyboards/momokai/tap_trio/keymaps/default/keymap.c b/keyboards/momokai/tap_trio/keymaps/default/keymap.c new file mode 100644 index 0000000000..99d55aabaf --- /dev/null +++ b/keyboards/momokai/tap_trio/keymaps/default/keymap.c @@ -0,0 +1,27 @@ +/* Copyright 2022 Momokai + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_Z, KC_X, KC_C, + KC_GRV, KC_ESC, KC_F2 + ), + + +}; diff --git a/keyboards/momokai/tap_trio/keymaps/via/keymap.c b/keyboards/momokai/tap_trio/keymaps/via/keymap.c new file mode 100644 index 0000000000..880e12e422 --- /dev/null +++ b/keyboards/momokai/tap_trio/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +/* Copyright 2022 Momokai + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT( + KC_Z, KC_X, KC_C, + KC_GRV, KC_ESC, KC_F2 + ), + + [1] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT( + KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS + ), + + +}; diff --git a/keyboards/momokai/tap_trio/keymaps/via/rules.mk b/keyboards/momokai/tap_trio/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/momokai/tap_trio/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/momokai/tap_trio/readme.md b/keyboards/momokai/tap_trio/readme.md new file mode 100644 index 0000000000..8027955ba2 --- /dev/null +++ b/keyboards/momokai/tap_trio/readme.md @@ -0,0 +1,12 @@ +# Momokai tap trio + + +* Keyboard Maintainer: [peepeetee](https://github.com/peepeetee) + + +Make example for this keyboard (after setting up your build environment): + + make momokai/tap_trio:default + + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/momokai/tap_trio/rules.mk b/keyboards/momokai/tap_trio/rules.mk new file mode 100644 index 0000000000..07e6f2d07f --- /dev/null +++ b/keyboards/momokai/tap_trio/rules.mk @@ -0,0 +1,20 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +LTO_ENABLE = yes diff --git a/keyboards/momokai/tap_trio/tap_trio.c b/keyboards/momokai/tap_trio/tap_trio.c new file mode 100644 index 0000000000..02bd0d3add --- /dev/null +++ b/keyboards/momokai/tap_trio/tap_trio.c @@ -0,0 +1,31 @@ +/* Copyright 2022 Momokai + * + * 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 . + */ + +#include "tap_trio.h" + +// #ifdef RGB_MATRIX_ENABLE +// led_config_t g_led_config = { { +// // Key Matrix to LED Index +// { 0, 1, 2, NO_LED, NO_LED, NO_LED} +// }, { +// // LED Index to Physical Position +// { 56, 0}, { 112, 0}, { 168, 0}, { 0, 64}, { 224, 64} +// }, { +// // LED Index to Flag +// 4,4,4,2,2 +// } }; + +// #endif diff --git a/keyboards/momokai/tap_trio/tap_trio.h b/keyboards/momokai/tap_trio/tap_trio.h new file mode 100644 index 0000000000..b2b17b3436 --- /dev/null +++ b/keyboards/momokai/tap_trio/tap_trio.h @@ -0,0 +1,26 @@ +/* Copyright 2022 Momokai + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + K00, K01, K02, \ + K03, K04, K05 \ +) { \ + { K00, K01, K02, K03, K04, K05 } \ +} + From 214d2a31ed51bebde1b0635ec0591dd444d2d706 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Wed, 11 May 2022 19:12:47 +0800 Subject: [PATCH 376/699] [Keyboard] Add usable tap-hold defaults for ferris via (#16696) --- keyboards/ferris/keymaps/via/config.h | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 keyboards/ferris/keymaps/via/config.h diff --git a/keyboards/ferris/keymaps/via/config.h b/keyboards/ferris/keymaps/via/config.h new file mode 100644 index 0000000000..5539c55f1d --- /dev/null +++ b/keyboards/ferris/keymaps/via/config.h @@ -0,0 +1,9 @@ +// Copyright 2020 Pierre Chevalier +// SPDX-License-Identifier: GPL-2.0+ + +#pragma once + +// Good defaults for home row modifiers +#define TAPPING_TERM 230 +#define IGNORE_MOD_TAP_INTERRUPT + From c9e336fde6c69b87ab7f57832c762c67222ff06c Mon Sep 17 00:00:00 2001 From: Willy Breitenbach Date: Wed, 11 May 2022 13:30:05 +0200 Subject: [PATCH 377/699] [Keyboard] fix tf65rgbv2 keyboard layout (#17029) --- keyboards/fjlabs/tf65rgbv2/tf65rgbv2.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/keyboards/fjlabs/tf65rgbv2/tf65rgbv2.h b/keyboards/fjlabs/tf65rgbv2/tf65rgbv2.h index 434d156688..ce435977c1 100644 --- a/keyboards/fjlabs/tf65rgbv2/tf65rgbv2.h +++ b/keyboards/fjlabs/tf65rgbv2/tf65rgbv2.h @@ -25,8 +25,8 @@ along with this program. If not, see . K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4E \ ) { \ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ - { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K2E }, \ - { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K1E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, KC_NO, K2D, K2E }, \ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, KC_NO, K3C, K3D, K3E }, \ { K40, K41, K42, KC_NO, KC_NO, K45, KC_NO, KC_NO, KC_NO, K49, K4A, K4B, K4C, K4D, K4E } \ } From 8e9a81a86077349b98b6c381d7f75ff10b161295 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Wed, 11 May 2022 12:51:39 -0700 Subject: [PATCH 378/699] KBDfans KBD75 Refactor - 2022 Edition (#17052) * add license headers * tidy-up revision rules.mk files - convert tabs to spaces - align inline comments - update rule ordering * touch-up readme.md * touch-up rev1/rev1.h - convert tabs to spaces - convert to QMK 3-character notation for matrix positions * rev1/rev1.h: add matrix diagram * touch-up rev2/rev2.h - convert tabs to spaces - convert to QMK 3-character notation for matrix positions * rev2/rev2.h: add matrix diagrams * rev1/info.json: apply friendly formatting * rev2/info.json: apply friendly formatting * refactor layout macros - switch `LAYOUT_ansi_1u` with `LAYOUT_75_ansi` - makes `LAYOUT_75_ansi` the canonical macro name, with `LAYOUT_ansi_1u` as an alias for backwards compatibility - move `LAYOUT_ansi_1u` alias to `info.json` files from revision headers - remove `LAYOUT_iso_1u` (was unused) - rename `LAYOUT_ansi` to `LAYOUT_75_ansi_rwkl` - rename `LAYOUT_iso` to `LAYOUT_75_iso_rwkl` * refactor default keymap - use four-space indent - update grid alignment * refactor iso keymap - refactor to use `LAYOUT_75_iso` macro - change from Split to 2u Backspace - change from Split to Standard Spacebar - change `KC_BSLS` keycode to `KC_NUHS`, and place on home row - use four-space indent - update grid alignment * refactor via keymap - use four-space indent - update grid alignment * touch-up readme.md again Fix a broken link. * update section comments in revision header files * add Full Winkeyless layouts - add `LAYOUT_75_ansi_wkl` and `LAYOUT_75_iso_wkl` layout macros --- keyboards/kbdfans/kbd75/config.h | 3 + keyboards/kbdfans/kbd75/kbd75.c | 3 + keyboards/kbdfans/kbd75/kbd75.h | 3 + .../kbdfans/kbd75/keymaps/default/keymap.c | 36 +- keyboards/kbdfans/kbd75/keymaps/iso/keymap.c | 36 +- keyboards/kbdfans/kbd75/keymaps/via/keymap.c | 68 +- keyboards/kbdfans/kbd75/readme.md | 10 +- keyboards/kbdfans/kbd75/rev1/config.h | 3 + keyboards/kbdfans/kbd75/rev1/info.json | 760 +++++++++++++--- keyboards/kbdfans/kbd75/rev1/rev1.c | 3 + keyboards/kbdfans/kbd75/rev1/rev1.h | 228 +++-- keyboards/kbdfans/kbd75/rev1/rules.mk | 14 +- keyboards/kbdfans/kbd75/rev2/config.h | 3 + keyboards/kbdfans/kbd75/rev2/info.json | 860 +++++++++++++++--- keyboards/kbdfans/kbd75/rev2/rev2.c | 3 + keyboards/kbdfans/kbd75/rev2/rev2.h | 274 +++--- keyboards/kbdfans/kbd75/rev2/rules.mk | 14 +- 17 files changed, 1815 insertions(+), 506 deletions(-) diff --git a/keyboards/kbdfans/kbd75/config.h b/keyboards/kbdfans/kbd75/config.h index 20ffa32855..b54ce4d24c 100644 --- a/keyboards/kbdfans/kbd75/config.h +++ b/keyboards/kbdfans/kbd75/config.h @@ -1,3 +1,6 @@ +// Copyright 2017-2021 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "config_common.h" diff --git a/keyboards/kbdfans/kbd75/kbd75.c b/keyboards/kbdfans/kbd75/kbd75.c index 9f6e545ca2..1a1bffa360 100644 --- a/keyboards/kbdfans/kbd75/kbd75.c +++ b/keyboards/kbdfans/kbd75/kbd75.c @@ -1 +1,4 @@ +// Copyright 2017 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include "kbd75.h" diff --git a/keyboards/kbdfans/kbd75/kbd75.h b/keyboards/kbdfans/kbd75/kbd75.h index e412242878..a2c5d9e4c3 100644 --- a/keyboards/kbdfans/kbd75/kbd75.h +++ b/keyboards/kbdfans/kbd75/kbd75.h @@ -1,3 +1,6 @@ +// Copyright 2017-2019 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "quantum.h" diff --git a/keyboards/kbdfans/kbd75/keymaps/default/keymap.c b/keyboards/kbdfans/kbd75/keymaps/default/keymap.c index 839030aaa9..7ac80e4d49 100644 --- a/keyboards/kbdfans/kbd75/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/default/keymap.c @@ -1,22 +1,26 @@ +// Copyright 2017-2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = 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_PSCR, MO(1), KC_DEL, - KC_GRV, 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_DEL, KC_BSPC, KC_HOME, - 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, KC_PGUP, - 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_PGDN, - KC_LSFT, MO(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = 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_PSCR, MO(1), KC_DEL, + KC_GRV, 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_DEL, KC_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, MO(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), }; diff --git a/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c b/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c index 0b7c701a30..1eec87e1ec 100644 --- a/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c @@ -1,22 +1,26 @@ +// Copyright 2018-2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = 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_PSCR, MO(1), KC_DEL, - KC_GRV, 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_DEL, KC_BSPC, KC_HOME, - 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, KC_PGUP, - 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_PGDN, - KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = LAYOUT_75_iso( + 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_PSCR, MO(1), KC_DEL, + KC_GRV, 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_HOME, + 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_PGUP, + 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_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + + [1] = LAYOUT_75_iso( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ) }; diff --git a/keyboards/kbdfans/kbd75/keymaps/via/keymap.c b/keyboards/kbdfans/kbd75/keymaps/via/keymap.c index 861d711dd1..b8ac2aacb7 100644 --- a/keyboards/kbdfans/kbd75/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/via/keymap.c @@ -1,40 +1,44 @@ +// Copyright 2020-2022 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = 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_PSCR, MO(1), KC_DEL, - KC_GRV, 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_DEL, KC_BSPC, KC_HOME, - 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, KC_PGUP, - 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_PGDN, - KC_LSFT, MO(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), + [0] = 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_PSCR, MO(1), KC_DEL, + KC_GRV, 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_DEL, KC_BSPC, KC_HOME, + 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, KC_PGUP, + 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_PGDN, + KC_LSFT, MO(1), KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), - [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), + [1] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), - [2] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), + [2] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + + [3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), - [3] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), }; diff --git a/keyboards/kbdfans/kbd75/readme.md b/keyboards/kbdfans/kbd75/readme.md index b7bf379c10..60e71fdc94 100644 --- a/keyboards/kbdfans/kbd75/readme.md +++ b/keyboards/kbdfans/kbd75/readme.md @@ -3,18 +3,18 @@ The KBD75 was sold through various rounds, with various PCB changes between them. * **Round 1 (2017)**: Black PCB - Bootmapper Client, atmega32a MCU (Use [Winkeyless.kr B.mini](../../winkeyless/bmini/) firmware) -* **Round 2 (2018)**: White PCB - Bootmapper Client, atmega32a MCU (Use [ymd75/rev1](../../ymd75/rev1/) firmware) +* **Round 2 (2018)**: White PCB - Bootmapper Client, atmega32a MCU (Use [ymdk/ymd75/rev1](../../ymdk/ymd75/rev1/) firmware) * **Round 3-5 (2018)**: White PCB - QMK Firmware, atmega32u4 MCU (Use KBD75 rev1 or rev2(without numpad support)) * **Round 6 (2019)**: White PCB with USB C - QMK Firmware, atmega32u4 MCU (Use KBD75 rev1 or rev2(with numpad support)) * **V2 (2019-)**: Same as **Round 6** (above). **Firmware files are SPECIFIC to each board. Firmware files from one, will not work on the other.** -* Keyboard Maintainer: QMK Community -* Hardware Supported: KBD75 PCB rev 1 and 2 +* Keyboard Maintainer: [The QMK Community](https://github.com/qmk) +* Hardware Supported: KBD75 PCB [rev1](./rev1) and [rev2](./rev2) * Hardware Availability: - * https://kbdfans.com/collections/75-diy-kit/products/kbd75-keyboard-set - * https://kbdfans.com/collections/75-diy-kit/products/kbd75v2-custom-keyboard-diy-kit + * [KBD75 rev2 Kit – KBDfans.com](https://kbdfans.com/collections/75-diy-kit/products/kbd75v2-custom-keyboard-diy-kit) + * [KBD75 rev2 PCB – KBDfans.com](https://kbdfans.com/collections/pcb/products/kbdfans-75-pcb-75) Make example for this keyboard (after setting up your build environment): diff --git a/keyboards/kbdfans/kbd75/rev1/config.h b/keyboards/kbdfans/kbd75/rev1/config.h index 4f27efe648..9e036b5839 100644 --- a/keyboards/kbdfans/kbd75/rev1/config.h +++ b/keyboards/kbdfans/kbd75/rev1/config.h @@ -1,3 +1,6 @@ +// Copyright 2020 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #define PRODUCT_ID 0x6060 diff --git a/keyboards/kbdfans/kbd75/rev1/info.json b/keyboards/kbdfans/kbd75/rev1/info.json index 142e53e353..499b9e9a43 100644 --- a/keyboards/kbdfans/kbd75/rev1/info.json +++ b/keyboards/kbdfans/kbd75/rev1/info.json @@ -1,116 +1,662 @@ { - "keyboard_name": "KBD75", - "url": "", - "maintainer": "qmk", - "layouts": { - "LAYOUT": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":2.25}, {"x":6, "y":5}, {"x":7, "y":5, "w":3}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] + "keyboard_name": "KBD75 rev1", + "url": "", + "maintainer": "qmk", + "layout_aliases": { + "LAYOUT_ansi_1u": "LAYOUT_75_ansi" }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, - "LAYOUT_ansi_1u": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1}, + {"label":"Backspace", "x":14, "y":1}, + {"label":"Home", "x":15, "y":1}, - "LAYOUT_iso_1u": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"@", "x":11.75, "y":3}, {"label":"~", "x":12.75, "y":3}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, - "LAYOUT_ansi": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, - "LAYOUT_iso": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"\u00ac", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"\"", "x":2, "y":1}, {"label":"\u00a3", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"@", "x":11.75, "y":3}, {"label":"~", "x":12.75, "y":3}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"label":"|", "x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"AltGr", "x":10, "y":5, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, - "LAYOUT_75_iso": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":1, "y":0}, - {"label":"F2", "x":2, "y":0}, - {"label":"F3", "x":3, "y":0}, - {"label":"F4", "x":4, "y":0}, - {"label":"F5", "x":5, "y":0}, - {"label":"F6", "x":6, "y":0}, - {"label":"F7", "x":7, "y":0}, - {"label":"F8", "x":8, "y":0}, - {"label":"F9", "x":9, "y":0}, - {"label":"F10", "x":10, "y":0}, - {"label":"F11", "x":11, "y":0}, - {"label":"F12", "x":12, "y":0}, - {"label":"PrtSc", "x":13, "y":0}, - {"label":"Scroll Lock", "x":14, "y":0}, - {"label":"Pause", "x":15, "y":0}, - {"label":"`", "x":0, "y":1}, - {"label":"1", "x":1, "y":1}, - {"label":"2", "x":2, "y":1}, - {"label":"3", "x":3, "y":1}, - {"label":"4", "x":4, "y":1}, - {"label":"5", "x":5, "y":1}, - {"label":"6", "x":6, "y":1}, - {"label":"7", "x":7, "y":1}, - {"label":"8", "x":8, "y":1}, - {"label":"9", "x":9, "y":1}, - {"label":"0", "x":10, "y":1}, - {"label":"-", "x":11, "y":1}, - {"label":"=", "x":12, "y":1}, - {"label":"Backspace", "x":13, "y":1, "w":2}, - {"label":"Home", "x":15, "y":1}, - {"label":"Tab", "x":0, "y":2, "w":1.5}, - {"label":"Q", "x":1.5, "y":2}, - {"label":"W", "x":2.5, "y":2}, - {"label":"E", "x":3.5, "y":2}, - {"label":"R", "x":4.5, "y":2}, - {"label":"T", "x":5.5, "y":2}, - {"label":"Y", "x":6.5, "y":2}, - {"label":"U", "x":7.5, "y":2}, - {"label":"I", "x":8.5, "y":2}, - {"label":"O", "x":9.5, "y":2}, - {"label":"P", "x":10.5, "y":2}, - {"label":"[", "x":11.5, "y":2}, - {"label":"]", "x":12.5, "y":2}, - {"label":"PgUp", "x":15, "y":2}, - {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, - {"label":"A", "x":1.75, "y":3}, - {"label":"S", "x":2.75, "y":3}, - {"label":"D", "x":3.75, "y":3}, - {"label":"F", "x":4.75, "y":3}, - {"label":"G", "x":5.75, "y":3}, - {"label":"H", "x":6.75, "y":3}, - {"label":"J", "x":7.75, "y":3}, - {"label":"K", "x":8.75, "y":3}, - {"label":"L", "x":9.75, "y":3}, - {"label":";", "x":10.75, "y":3}, - {"label":"'", "x":11.75, "y":3}, - {"label":"ISO #", "x":12.75, "y":3}, - {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, - {"label":"PgDn", "x":15, "y":3}, - {"label":"Shift", "x":0, "y":4, "w":1.25}, - {"label":"ISO \\", "x":1.25, "y":4}, - {"label":"Z", "x":2.25, "y":4}, - {"label":"X", "x":3.25, "y":4}, - {"label":"C", "x":4.25, "y":4}, - {"label":"V", "x":5.25, "y":4}, - {"label":"B", "x":6.25, "y":4}, - {"label":"N", "x":7.25, "y":4}, - {"label":"M", "x":8.25, "y":4}, - {"label":",", "x":9.25, "y":4}, - {"label":".", "x":10.25, "y":4}, - {"label":"/", "x":11.25, "y":4}, - {"label":"Shift", "x":12.25, "y":4, "w":1.75}, - {"label":"Up", "x":14, "y":4}, - {"label":"End", "x":15, "y":4}, - {"label":"Ctrl", "x":0, "y":5, "w":1.25}, - {"label":"GUI", "x":1.25, "y":5, "w":1.25}, - {"label":"Alt", "x":2.5, "y":5, "w":1.25}, - {"label":"Space", "x":3.75, "y":5, "w":6.25}, - {"label":"AltGr", "x":10, "y":5}, - {"label":"Fn", "x":11, "y":5}, - {"label":"Ctrl", "x":12, "y":5}, - {"label":"Left", "x":13, "y":5}, - {"label":"Down", "x":14, "y":5}, - {"label":"Right", "x":15, "y":5} - ] + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":2.25}, + {"label":"Space", "x":6, "y":5, "w":1.25}, + {"label":"Space", "x":7.25, "y":5, "w":2.75}, + {"label":"Alt", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"Alt", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Scroll Lock", "x":14, "y":0}, + {"label":"Pause", "x":15, "y":0}, + + {"label":"`", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"-", "x":11, "y":1}, + {"label":"=", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"[", "x":11.5, "y":2}, + {"label":"]", "x":12.5, "y":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":";", "x":10.75, "y":3}, + {"label":"'", "x":11.75, "y":3}, + {"label":"ISO #", "x":12.75, "y":3}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"ISO \\", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":",", "x":9.25, "y":4}, + {"label":".", "x":10.25, "y":4}, + {"label":"/", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"Up", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"GUI", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"AltGr", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"Left", "x":13, "y":5}, + {"label":"Down", "x":14, "y":5}, + {"label":"Right", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.5}, + {"label":"Alt", "x":1.5, "y":5, "w":1.5}, + {"label":"Space", "x":3, "y":5, "w":7}, + {"label":"Alt", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"\u00ac", "x":0, "y":1}, + {"label":"!", "x":1, "y":1}, + {"label":"\"", "x":2, "y":1}, + {"label":"\u00a3", "x":3, "y":1}, + {"label":"$", "x":4, "y":1}, + {"label":"%", "x":5, "y":1}, + {"label":"^", "x":6, "y":1}, + {"label":"&", "x":7, "y":1}, + {"label":"*", "x":8, "y":1}, + {"label":"(", "x":9, "y":1}, + {"label":")", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"@", "x":11.75, "y":3}, + {"label":"~", "x":12.75, "y":3}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.5}, + {"label":"Alt", "x":1.5, "y":5, "w":1.5}, + {"label":"Space", "x":3, "y":5, "w":7}, + {"label":"AltGr", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi_rwkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"Alt", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso_rwkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"\u00ac", "x":0, "y":1}, + {"label":"!", "x":1, "y":1}, + {"label":"\"", "x":2, "y":1}, + {"label":"\u00a3", "x":3, "y":1}, + {"label":"$", "x":4, "y":1}, + {"label":"%", "x":5, "y":1}, + {"label":"^", "x":6, "y":1}, + {"label":"&", "x":7, "y":1}, + {"label":"*", "x":8, "y":1}, + {"label":"(", "x":9, "y":1}, + {"label":")", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"@", "x":11.75, "y":3}, + {"label":"~", "x":12.75, "y":3}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"AltGr", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + } } - } } diff --git a/keyboards/kbdfans/kbd75/rev1/rev1.c b/keyboards/kbdfans/kbd75/rev1/rev1.c index 520a869e57..e7ba9f3722 100644 --- a/keyboards/kbdfans/kbd75/rev1/rev1.c +++ b/keyboards/kbdfans/kbd75/rev1/rev1.c @@ -1 +1,4 @@ +// Copyright 2019-2020 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include "rev1.h" diff --git a/keyboards/kbdfans/kbd75/rev1/rev1.h b/keyboards/kbdfans/kbd75/rev1/rev1.h index 196d1d8e14..ac7b38ed02 100644 --- a/keyboards/kbdfans/kbd75/rev1/rev1.h +++ b/keyboards/kbdfans/kbd75/rev1/rev1.h @@ -1,131 +1,165 @@ +// Copyright 2018-2021 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "kbd75.h" -/* LAYOUT - * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ - * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ - * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ - * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ - * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ - * │1.5U │ │ │ │ │ │ │ │ │ │ │ │ │1.5U │ │ - * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ - * │1.75U │ │ │ │ │ │ │ │ │ │ │ │2.25U │ │ - * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ - * │2.25U │ │ │ │ │ │ │ │ │ │ │1.75U │ │ │ - * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ - * │1.25│1.25│1.25│2.25U │1.25│2.75U │ │ │ │ │ │ │ - * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘ +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │1F │ │1E │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │2E │2F │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐3D │ ISO Enter + * LShift │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │ │2E │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ ┌─┴───┴────┤ + * │40 │ │40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4D │4E │4F │ │4D │ 2.75u RShift + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ └──────────┘ + * │50 │51 │53 │54 │56 │58 │5A │5B │5C │5D │5E │5F │ + * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬───┬───┬───┐ + * │50 │51 │53 │56 │5A │5B │5C │ Standard Spacebar + * └────┴────┴────┴────────────────────────┴───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬─────┬─────┐ + * │50 │51 │53 │56 │5A │5C │ Right-Side Winkeyless + * └────┴────┴────┴────────────────────────┴─────┴─────┘ + * ┌─────┬─────┬───────────────────────────┬─────┬─────┐ + * │50 │51 │56 │5A │5C │ Winkeyless + * └─────┴─────┴───────────────────────────┴─────┴─────┘ */ // LAYOUT for all possible switch positions on a KBD75 rev 1 #define LAYOUT( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K504, K506, K508, K510, K511, K512, K513, K514, K515 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K54, K56, K58, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, K54, ___, K56, ___, K58, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } -/* 1U bottom row ─────────────────────────── ↓ ─ ↓ ─ ↓ +/* Standard bottom row * ┌────┬────┬────┬────────────────────────┬───┬───┬───┬───┬───┬───┐ * │1.25│1.25│1.25│6.25U │1U │1U │1U │1U │1U │1U │ * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ */ -#define LAYOUT_ansi_1u( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ +#define LAYOUT_75_ansi( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ -} - -#define LAYOUT_75_ansi LAYOUT_ansi_1u - -#define LAYOUT_iso_1u( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ -) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } #define LAYOUT_75_iso( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K313, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3D, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } -/* normal bottom row ──────────────────────── ↓ ─── ↓ +/* Full Winkeyless (WKL) + * ┌─────┬─────┬───────────────────────────┬─────┬─────┬───┬───┬───┐ + * │1.5 │1.5 │7U │1.5U │1.5U │1U │1U │1U │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_75_ansi_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K56, K5A, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, ___, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ +} + +#define LAYOUT_75_iso_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K3D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K56, K5A, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, ___, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ +} + +/* Right-Side Winkeyless (RWKL) * ┌────┬────┬────┬────────────────────────┬─────┬─────┬───┬───┬───┐ * │1.25│1.25│1.25│6.25U │1.5U │1.5U │1U │1U │1U │ * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ */ -#define LAYOUT_ansi( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K512, K513, K514, K515 \ +#define LAYOUT_75_ansi_rwkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ } -#define LAYOUT_iso( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K512, K513, K514, K515 \ +#define LAYOUT_75_iso_rwkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K3D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ } diff --git a/keyboards/kbdfans/kbd75/rev1/rules.mk b/keyboards/kbdfans/kbd75/rev1/rules.mk index e5d5d2c9a2..8bd068589c 100644 --- a/keyboards/kbdfans/kbd75/rev1/rules.mk +++ b/keyboards/kbdfans/kbd75/rev1/rules.mk @@ -8,13 +8,13 @@ BOOTLOADER = atmel-dfu # change yes to no to disable # BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -AUDIO_ENABLE = no -RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output LAYOUTS = 75_ansi 75_iso diff --git a/keyboards/kbdfans/kbd75/rev2/config.h b/keyboards/kbdfans/kbd75/rev2/config.h index a6b9e3eb16..c65ac48677 100644 --- a/keyboards/kbdfans/kbd75/rev2/config.h +++ b/keyboards/kbdfans/kbd75/rev2/config.h @@ -1,3 +1,6 @@ +// Copyright 2020 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #define PRODUCT_ID 0x6061 diff --git a/keyboards/kbdfans/kbd75/rev2/info.json b/keyboards/kbdfans/kbd75/rev2/info.json index 63c7171790..8518527eed 100644 --- a/keyboards/kbdfans/kbd75/rev2/info.json +++ b/keyboards/kbdfans/kbd75/rev2/info.json @@ -1,120 +1,760 @@ { - "keyboard_name": "KBD75", - "url": "", - "maintainer": "qmk", - "layouts": { - "LAYOUT": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"x":13, "y":1}, {"x":14, "y":1}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":2.25}, {"x":6, "y":5}, {"x":7, "y":5, "w":3}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] + "keyboard_name": "KBD75 rev2", + "url": "", + "maintainer": "qmk", + "layout_aliases": { + "LAYOUT_ansi_1u": "LAYOUT_75_ansi" }, + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, - "LAYOUT_ansi_1u": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1}, + {"label":"Backspace", "x":14, "y":1}, + {"label":"Home", "x":15, "y":1}, - "LAYOUT_iso_1u": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"@", "x":11.75, "y":3}, {"label":"~", "x":12.75, "y":3}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5}, {"label":"Fn", "x":11, "y":5}, {"label":"Ctrl", "x":12, "y":5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, - "LAYOUT_ansi": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"1", "x":1, "y":1}, {"label":"2", "x":2, "y":1}, {"label":"3", "x":3, "y":1}, {"label":"4", "x":4, "y":1}, {"label":"5", "x":5, "y":1}, {"label":"6", "x":6, "y":1}, {"label":"7", "x":7, "y":1}, {"label":"8", "x":8, "y":1}, {"label":"9", "x":9, "y":1}, {"label":"0", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"delete", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"|", "x":13.5, "y":2, "w":1.5}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"\"", "x":11.75, "y":3}, {"label":"Enter", "x":12.75, "y":3, "w":2.25}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":2.25}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"Alt", "x":10, "y":5, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, - "LAYOUT_iso": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"\u00ac", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"\"", "x":2, "y":1}, {"label":"\u00a3", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"label":"_", "x":11, "y":1}, {"label":"+", "x":12, "y":1}, {"label":"Backspace", "x":13, "y":1, "w":2}, {"label":"Home", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"{", "x":11.5, "y":2}, {"label":"}", "x":12.5, "y":2}, {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, {"label":"Page Up", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":":", "x":10.75, "y":3}, {"label":"@", "x":11.75, "y":3}, {"label":"~", "x":12.75, "y":3}, {"label":"Page Down", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"label":"|", "x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"<", "x":9.25, "y":4}, {"label":">", "x":10.25, "y":4}, {"label":"?", "x":11.25, "y":4}, {"label":"Shift", "x":12.25, "y":4, "w":1.75}, {"label":"\u2191", "x":14, "y":4}, {"label":"End", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":6.25}, {"label":"AltGr", "x":10, "y":5, "w":1.5}, {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, {"label":"\u2190", "x":13, "y":5}, {"label":"\u2193", "x":14, "y":5}, {"label":"\u2192", "x":15, "y":5}] - }, + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, - "LAYOUT_numpad": { - "layout": [{"label":"Esc", "x":0, "y":0}, {"label":"F1", "x":1, "y":0}, {"label":"F2", "x":2, "y":0}, {"label":"F3", "x":3, "y":0}, {"label":"F4", "x":4, "y":0}, {"label":"F5", "x":5, "y":0}, {"label":"F6", "x":6, "y":0}, {"label":"F7", "x":7, "y":0}, {"label":"F8", "x":8, "y":0}, {"label":"F9", "x":9, "y":0}, {"label":"F10", "x":10, "y":0}, {"label":"F11", "x":11, "y":0}, {"label":"F12", "x":12, "y":0}, {"label":"PrtSc", "x":13, "y":0}, {"label":"Pause", "x":14, "y":0}, {"label":"Delete", "x":15, "y":0}, {"label":"~", "x":0, "y":1}, {"label":"!", "x":1, "y":1}, {"label":"@", "x":2, "y":1}, {"label":"#", "x":3, "y":1}, {"label":"$", "x":4, "y":1}, {"label":"%", "x":5, "y":1}, {"label":"^", "x":6, "y":1}, {"label":"&", "x":7, "y":1}, {"label":"*", "x":8, "y":1}, {"label":"(", "x":9, "y":1}, {"label":")", "x":10, "y":1}, {"x":11, "y":1}, {"x":12, "y":1}, {"label":"Home", "x":13, "y":1}, {"label":"_", "x":14, "y":1}, {"label":"+", "x":15, "y":1}, {"label":"Tab", "x":0, "y":2, "w":1.5}, {"label":"Q", "x":1.5, "y":2}, {"label":"W", "x":2.5, "y":2}, {"label":"E", "x":3.5, "y":2}, {"label":"R", "x":4.5, "y":2}, {"label":"T", "x":5.5, "y":2}, {"label":"Y", "x":6.5, "y":2}, {"label":"U", "x":7.5, "y":2}, {"label":"I", "x":8.5, "y":2}, {"label":"O", "x":9.5, "y":2}, {"label":"P", "x":10.5, "y":2}, {"label":"|", "x":11.5, "y":2, "w":1.5}, {"label":"Page Up", "x":13, "y":2}, {"label":"{", "x":14, "y":2}, {"label":"}", "x":15, "y":2}, {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, {"label":"A", "x":1.75, "y":3}, {"label":"S", "x":2.75, "y":3}, {"label":"D", "x":3.75, "y":3}, {"label":"F", "x":4.75, "y":3}, {"label":"G", "x":5.75, "y":3}, {"label":"H", "x":6.75, "y":3}, {"label":"J", "x":7.75, "y":3}, {"label":"K", "x":8.75, "y":3}, {"label":"L", "x":9.75, "y":3}, {"label":"Enter", "x":10.75, "y":3, "w":2.25}, {"label":"Page Down", "x":13, "y":3}, {"label":":", "x":14, "y":3}, {"label":"\"", "x":15, "y":3}, {"label":"Shift", "x":0, "y":4, "w":1.25}, {"x":1.25, "y":4}, {"label":"Z", "x":2.25, "y":4}, {"label":"X", "x":3.25, "y":4}, {"label":"C", "x":4.25, "y":4}, {"label":"V", "x":5.25, "y":4}, {"label":"B", "x":6.25, "y":4}, {"label":"N", "x":7.25, "y":4}, {"label":"M", "x":8.25, "y":4}, {"label":"?", "x":9.25, "y":4}, {"label":"Shift", "x":10.25, "y":4, "w":1.75}, {"label":"\u2191", "x":12, "y":4}, {"label":"End", "x":13, "y":4}, {"label":"<", "x":14, "y":4}, {"label":">", "x":15, "y":4}, {"label":"Ctrl", "x":0, "y":5, "w":1.25}, {"label":"Win", "x":1.25, "y":5, "w":1.25}, {"label":"Alt", "x":2.5, "y":5, "w":1.25}, {"x":3.75, "y":5, "w":1.25}, {"x":5, "y":5, "w":2.25}, {"x":7.25, "y":5, "w":1.75}, {"x":9, "y":5}, {"label":"Alt", "x":10, "y":5}, {"label":"\u2190", "x":11, "y":5}, {"label":"\u2193", "x":12, "y":5}, {"label":"\u2192", "x":13, "y":5}, {"label":"Fn", "x":14, "y":5}, {"label":"Ctrl", "x":15, "y":5}] - }, + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":2.25}, + {"label":"Space", "x":6, "y":5, "w":1.25}, + {"label":"Space", "x":7.25, "y":5, "w":2.75}, + {"label":"Alt", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, - "LAYOUT_75_iso": { - "layout": [ - {"label":"Esc", "x":0, "y":0}, - {"label":"F1", "x":1, "y":0}, - {"label":"F2", "x":2, "y":0}, - {"label":"F3", "x":3, "y":0}, - {"label":"F4", "x":4, "y":0}, - {"label":"F5", "x":5, "y":0}, - {"label":"F6", "x":6, "y":0}, - {"label":"F7", "x":7, "y":0}, - {"label":"F8", "x":8, "y":0}, - {"label":"F9", "x":9, "y":0}, - {"label":"F10", "x":10, "y":0}, - {"label":"F11", "x":11, "y":0}, - {"label":"F12", "x":12, "y":0}, - {"label":"PrtSc", "x":13, "y":0}, - {"label":"Scroll Lock", "x":14, "y":0}, - {"label":"Pause", "x":15, "y":0}, - {"label":"`", "x":0, "y":1}, - {"label":"1", "x":1, "y":1}, - {"label":"2", "x":2, "y":1}, - {"label":"3", "x":3, "y":1}, - {"label":"4", "x":4, "y":1}, - {"label":"5", "x":5, "y":1}, - {"label":"6", "x":6, "y":1}, - {"label":"7", "x":7, "y":1}, - {"label":"8", "x":8, "y":1}, - {"label":"9", "x":9, "y":1}, - {"label":"0", "x":10, "y":1}, - {"label":"-", "x":11, "y":1}, - {"label":"=", "x":12, "y":1}, - {"label":"Backspace", "x":13, "y":1, "w":2}, - {"label":"Home", "x":15, "y":1}, - {"label":"Tab", "x":0, "y":2, "w":1.5}, - {"label":"Q", "x":1.5, "y":2}, - {"label":"W", "x":2.5, "y":2}, - {"label":"E", "x":3.5, "y":2}, - {"label":"R", "x":4.5, "y":2}, - {"label":"T", "x":5.5, "y":2}, - {"label":"Y", "x":6.5, "y":2}, - {"label":"U", "x":7.5, "y":2}, - {"label":"I", "x":8.5, "y":2}, - {"label":"O", "x":9.5, "y":2}, - {"label":"P", "x":10.5, "y":2}, - {"label":"[", "x":11.5, "y":2}, - {"label":"]", "x":12.5, "y":2}, - {"label":"PgUp", "x":15, "y":2}, - {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, - {"label":"A", "x":1.75, "y":3}, - {"label":"S", "x":2.75, "y":3}, - {"label":"D", "x":3.75, "y":3}, - {"label":"F", "x":4.75, "y":3}, - {"label":"G", "x":5.75, "y":3}, - {"label":"H", "x":6.75, "y":3}, - {"label":"J", "x":7.75, "y":3}, - {"label":"K", "x":8.75, "y":3}, - {"label":"L", "x":9.75, "y":3}, - {"label":";", "x":10.75, "y":3}, - {"label":"'", "x":11.75, "y":3}, - {"label":"ISO #", "x":12.75, "y":3}, - {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, - {"label":"PgDn", "x":15, "y":3}, - {"label":"Shift", "x":0, "y":4, "w":1.25}, - {"label":"ISO \\", "x":1.25, "y":4}, - {"label":"Z", "x":2.25, "y":4}, - {"label":"X", "x":3.25, "y":4}, - {"label":"C", "x":4.25, "y":4}, - {"label":"V", "x":5.25, "y":4}, - {"label":"B", "x":6.25, "y":4}, - {"label":"N", "x":7.25, "y":4}, - {"label":"M", "x":8.25, "y":4}, - {"label":",", "x":9.25, "y":4}, - {"label":".", "x":10.25, "y":4}, - {"label":"/", "x":11.25, "y":4}, - {"label":"Shift", "x":12.25, "y":4, "w":1.75}, - {"label":"Up", "x":14, "y":4}, - {"label":"End", "x":15, "y":4}, - {"label":"Ctrl", "x":0, "y":5, "w":1.25}, - {"label":"GUI", "x":1.25, "y":5, "w":1.25}, - {"label":"Alt", "x":2.5, "y":5, "w":1.25}, - {"label":"Space", "x":3.75, "y":5, "w":6.25}, - {"label":"AltGr", "x":10, "y":5}, - {"label":"Fn", "x":11, "y":5}, - {"label":"Ctrl", "x":12, "y":5}, - {"label":"Left", "x":13, "y":5}, - {"label":"Down", "x":14, "y":5}, - {"label":"Right", "x":15, "y":5} - ] + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"Alt", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Scroll Lock", "x":14, "y":0}, + {"label":"Pause", "x":15, "y":0}, + + {"label":"`", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"-", "x":11, "y":1}, + {"label":"=", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"[", "x":11.5, "y":2}, + {"label":"]", "x":12.5, "y":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":";", "x":10.75, "y":3}, + {"label":"'", "x":11.75, "y":3}, + {"label":"ISO #", "x":12.75, "y":3}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"ISO \\", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":", ", "x":9.25, "y":4}, + {"label":".", "x":10.25, "y":4}, + {"label":"/", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"Up", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"GUI", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"AltGr", "x":10, "y":5}, + {"label":"Fn", "x":11, "y":5}, + {"label":"Ctrl", "x":12, "y":5}, + {"label":"Left", "x":13, "y":5}, + {"label":"Down", "x":14, "y":5}, + {"label":"Right", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.5}, + {"label":"Alt", "x":1.5, "y":5, "w":1.5}, + {"label":"Space", "x":3, "y":5, "w":7}, + {"label":"Alt", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"\u00ac", "x":0, "y":1}, + {"label":"!", "x":1, "y":1}, + {"label":"\"", "x":2, "y":1}, + {"label":"\u00a3", "x":3, "y":1}, + {"label":"$", "x":4, "y":1}, + {"label":"%", "x":5, "y":1}, + {"label":"^", "x":6, "y":1}, + {"label":"&", "x":7, "y":1}, + {"label":"*", "x":8, "y":1}, + {"label":"(", "x":9, "y":1}, + {"label":")", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"@", "x":11.75, "y":3}, + {"label":"~", "x":12.75, "y":3}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.5}, + {"label":"Alt", "x":1.5, "y":5, "w":1.5}, + {"label":"Space", "x":3, "y":5, "w":7}, + {"label":"AltGr", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_ansi_rwkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"1", "x":1, "y":1}, + {"label":"2", "x":2, "y":1}, + {"label":"3", "x":3, "y":1}, + {"label":"4", "x":4, "y":1}, + {"label":"5", "x":5, "y":1}, + {"label":"6", "x":6, "y":1}, + {"label":"7", "x":7, "y":1}, + {"label":"8", "x":8, "y":1}, + {"label":"9", "x":9, "y":1}, + {"label":"0", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"|", "x":13.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"\"", "x":11.75, "y":3}, + {"label":"Enter", "x":12.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":2.25}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"Alt", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_75_iso_rwkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"\u00ac", "x":0, "y":1}, + {"label":"!", "x":1, "y":1}, + {"label":"\"", "x":2, "y":1}, + {"label":"\u00a3", "x":3, "y":1}, + {"label":"$", "x":4, "y":1}, + {"label":"%", "x":5, "y":1}, + {"label":"^", "x":6, "y":1}, + {"label":"&", "x":7, "y":1}, + {"label":"*", "x":8, "y":1}, + {"label":"(", "x":9, "y":1}, + {"label":")", "x":10, "y":1}, + {"label":"_", "x":11, "y":1}, + {"label":"+", "x":12, "y":1}, + {"label":"Backspace", "x":13, "y":1, "w":2}, + {"label":"Home", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"{", "x":11.5, "y":2}, + {"label":"}", "x":12.5, "y":2}, + {"label":"Enter", "x":13.75, "y":2, "w":1.25, "h":2}, + {"label":"Page Up", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":":", "x":10.75, "y":3}, + {"label":"@", "x":11.75, "y":3}, + {"label":"~", "x":12.75, "y":3}, + {"label":"Page Down", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"label":"|", "x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"<", "x":9.25, "y":4}, + {"label":">", "x":10.25, "y":4}, + {"label":"?", "x":11.25, "y":4}, + {"label":"Shift", "x":12.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":14, "y":4}, + {"label":"End", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"label":"Space", "x":3.75, "y":5, "w":6.25}, + {"label":"AltGr", "x":10, "y":5, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":5, "w":1.5}, + {"label":"\u2190", "x":13, "y":5}, + {"label":"\u2193", "x":14, "y":5}, + {"label":"\u2192", "x":15, "y":5} + ] + }, + "LAYOUT_numpad": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"F1", "x":1, "y":0}, + {"label":"F2", "x":2, "y":0}, + {"label":"F3", "x":3, "y":0}, + {"label":"F4", "x":4, "y":0}, + {"label":"F5", "x":5, "y":0}, + {"label":"F6", "x":6, "y":0}, + {"label":"F7", "x":7, "y":0}, + {"label":"F8", "x":8, "y":0}, + {"label":"F9", "x":9, "y":0}, + {"label":"F10", "x":10, "y":0}, + {"label":"F11", "x":11, "y":0}, + {"label":"F12", "x":12, "y":0}, + {"label":"PrtSc", "x":13, "y":0}, + {"label":"Pause", "x":14, "y":0}, + {"label":"Delete", "x":15, "y":0}, + + {"label":"~", "x":0, "y":1}, + {"label":"!", "x":1, "y":1}, + {"label":"@", "x":2, "y":1}, + {"label":"#", "x":3, "y":1}, + {"label":"$", "x":4, "y":1}, + {"label":"%", "x":5, "y":1}, + {"label":"^", "x":6, "y":1}, + {"label":"&", "x":7, "y":1}, + {"label":"*", "x":8, "y":1}, + {"label":"(", "x":9, "y":1}, + {"label":")", "x":10, "y":1}, + {"x":11, "y":1}, + {"x":12, "y":1}, + {"label":"Home", "x":13, "y":1}, + {"label":"_", "x":14, "y":1}, + {"label":"+", "x":15, "y":1}, + + {"label":"Tab", "x":0, "y":2, "w":1.5}, + {"label":"Q", "x":1.5, "y":2}, + {"label":"W", "x":2.5, "y":2}, + {"label":"E", "x":3.5, "y":2}, + {"label":"R", "x":4.5, "y":2}, + {"label":"T", "x":5.5, "y":2}, + {"label":"Y", "x":6.5, "y":2}, + {"label":"U", "x":7.5, "y":2}, + {"label":"I", "x":8.5, "y":2}, + {"label":"O", "x":9.5, "y":2}, + {"label":"P", "x":10.5, "y":2}, + {"label":"|", "x":11.5, "y":2, "w":1.5}, + {"label":"Page Up", "x":13, "y":2}, + {"label":"{", "x":14, "y":2}, + {"label":"}", "x":15, "y":2}, + + {"label":"Caps Lock", "x":0, "y":3, "w":1.75}, + {"label":"A", "x":1.75, "y":3}, + {"label":"S", "x":2.75, "y":3}, + {"label":"D", "x":3.75, "y":3}, + {"label":"F", "x":4.75, "y":3}, + {"label":"G", "x":5.75, "y":3}, + {"label":"H", "x":6.75, "y":3}, + {"label":"J", "x":7.75, "y":3}, + {"label":"K", "x":8.75, "y":3}, + {"label":"L", "x":9.75, "y":3}, + {"label":"Enter", "x":10.75, "y":3, "w":2.25}, + {"label":"Page Down", "x":13, "y":3}, + {"label":":", "x":14, "y":3}, + {"label":"\"", "x":15, "y":3}, + + {"label":"Shift", "x":0, "y":4, "w":1.25}, + {"x":1.25, "y":4}, + {"label":"Z", "x":2.25, "y":4}, + {"label":"X", "x":3.25, "y":4}, + {"label":"C", "x":4.25, "y":4}, + {"label":"V", "x":5.25, "y":4}, + {"label":"B", "x":6.25, "y":4}, + {"label":"N", "x":7.25, "y":4}, + {"label":"M", "x":8.25, "y":4}, + {"label":"?", "x":9.25, "y":4}, + {"label":"Shift", "x":10.25, "y":4, "w":1.75}, + {"label":"\u2191", "x":12, "y":4}, + {"label":"End", "x":13, "y":4}, + {"label":"<", "x":14, "y":4}, + {"label":">", "x":15, "y":4}, + + {"label":"Ctrl", "x":0, "y":5, "w":1.25}, + {"label":"Win", "x":1.25, "y":5, "w":1.25}, + {"label":"Alt", "x":2.5, "y":5, "w":1.25}, + {"x":3.75, "y":5, "w":1.25}, + {"x":5, "y":5, "w":2.25}, + {"x":7.25, "y":5, "w":1.75}, + {"x":9, "y":5}, + {"label":"Alt", "x":10, "y":5}, + {"label":"\u2190", "x":11, "y":5}, + {"label":"\u2193", "x":12, "y":5}, + {"label":"\u2192", "x":13, "y":5}, + {"label":"Fn", "x":14, "y":5}, + {"label":"Ctrl", "x":15, "y":5} + ] + } } - } } diff --git a/keyboards/kbdfans/kbd75/rev2/rev2.c b/keyboards/kbdfans/kbd75/rev2/rev2.c index b1af81707d..352d837437 100644 --- a/keyboards/kbdfans/kbd75/rev2/rev2.c +++ b/keyboards/kbdfans/kbd75/rev2/rev2.c @@ -1 +1,4 @@ +// Copyright 2019-2020 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #include "rev2.h" diff --git a/keyboards/kbdfans/kbd75/rev2/rev2.h b/keyboards/kbdfans/kbd75/rev2/rev2.h index 77392cbd24..f37be40094 100644 --- a/keyboards/kbdfans/kbd75/rev2/rev2.h +++ b/keyboards/kbdfans/kbd75/rev2/rev2.h @@ -1,148 +1,204 @@ +// Copyright 2018-2021 QMK +// SPDX-License-Identifier: GPL-2.0-or-later + #pragma once #include "kbd75.h" -/* LAYOUT - * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ - * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ - * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ - * │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ - * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ - * │1.5U │ │ │ │ │ │ │ │ │ │ │ │ │1.5U │ │ - * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ - * │1.75U │ │ │ │ │ │ │ │ │ │ │ │2.25U │ │ - * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ - * │2.25U │ │ │ │ │ │ │ │ │ │ │1.75U │ │ │ - * ├────┬───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ - * │1.25│1.25│1.25│2.25U │1.25│2.75U │ │ │ │ │ │ │ - * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘ +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │1F │ │1E │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │2E │2F │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐3D │ ISO Enter + * LShift │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │ │2E │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ ┌─┴───┴────┤ + * │40 │ │40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4D │4E │4F │ │4D │ 2.75u RShift + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴──┬┴───┼───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ └──────────┘ + * │50 │51 │53 │54 │56 │58 │5A │5B │5C │5D │5E │5F │ + * └────┴────┴────┴────────┴────┴──────────┴───┴───┴───┴───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬───┬───┬───┐ + * │50 │51 │53 │56 │5A │5B │5C │ Standard Spacebar + * └────┴────┴────┴────────────────────────┴───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬─────┬─────┐ + * │50 │51 │53 │56 │5A │5C │ Right-Side Winkeyless + * └────┴────┴────┴────────────────────────┴─────┴─────┘ + * ┌─────┬─────┬───────────────────────────┬─────┬─────┐ + * │50 │51 │56 │5A │5C │ Winkeyless + * └─────┴─────┴───────────────────────────┴─────┴─────┘ */ // LAYOUT for all possible switch positions on a KBD75 rev 2 #define LAYOUT( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K504, K506, K508, K510, K511, K512, K513, K514, K515 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K54, K56, K58, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, K54, ___, K56, ___, K58, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } -/* 1U bottom row ─────────────────────────── ↓ ─ ↓ ─ ↓ +/* Standard bottom row * ┌────┬────┬────┬────────────────────────┬───┬───┬───┬───┬───┬───┐ * │1.25│1.25│1.25│6.25U │1U │1U │1U │1U │1U │1U │ * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ */ -#define LAYOUT_ansi_1u( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ +#define LAYOUT_75_ansi( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ -} - -#define LAYOUT_75_ansi LAYOUT_ansi_1u - -#define LAYOUT_iso_1u( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ -) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } #define LAYOUT_75_iso( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K313, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K511, K512, K513, K514, K515 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3D, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, K5B, K5C, K5D, K5E, K5F } \ } -/* normal bottom row ──────────────────────── ↓ ─── ↓ +/* Full Winkeyless (WKL) + * ┌─────┬─────┬───────────────────────────┬─────┬─────┬───┬───┬───┐ + * │1.5 │1.5 │7U │1.5U │1.5U │1U │1U │1U │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_75_ansi_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K56, K5A, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, ___, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ +} + +#define LAYOUT_75_iso_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K3D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K56, K5A, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, ___, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ +} + +/* Right-Side Winkeyless (RWKL) * ┌────┬────┬────┬────────────────────────┬─────┬─────┬───┬───┬───┐ * │1.25│1.25│1.25│6.25U │1.5U │1.5U │1U │1U │1U │ * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ */ -#define LAYOUT_ansi( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K512, K513, K514, K515 \ +#define LAYOUT_75_ansi_rwkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, ___, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ } -#define LAYOUT_iso( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K313, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K214, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K506, K510, K512, K513, K514, K515 \ +#define LAYOUT_75_iso_rwkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K3D, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K2E, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K56, K5A, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, KC_NO, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, KC_NO, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, ___, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, ___, ___, K56, ___, ___, ___, K5A, ___, K5C, K5D, K5E, K5F } \ } + +/* The KBD75 rev1 and rev2 PCBs have the same matrix, but only the rev2 + * supports the numpad layout. I own a rev1, so I don't know what the numpad + * layout's matrix is entirely. + * + * - @noroadsleft + * + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ + * ├───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┼───┤ ┌───────┐ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1E │1F │ │?? │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┼───┼───┤ └─┬─────┤ + * │20 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2D │2E │2F │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┼───┼───┤ ┌──┴┐?? │ ISO Enter + * LShift │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3F │ │?? │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┼───┼───┤ └───┴────┘ + * │40 │ │40 │41 │42 │43 │44 │45 │46 │47 │48 │49 │4A │4B │4D │4E │4F │ + * └────────┘ ├────┼───┴┬──┴─┬─┴──┬┴───┴───┼───┴──┬┴──┬┴──┬───┼───┼───┼───┼───┤ + * │50 │51 │53 │54 │56 │58 │59 │5A │5B │5C │5D │5E │5F │ + * └────┴────┴────┴────┴────────┴──────┴───┴───┴───┴───┴───┴───┴───┘ + */ + // LAYOUT for all possible switch positions on a KBD75 rev 2 #define LAYOUT_numpad( \ - K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015, \ - K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, \ - K200, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, \ - K300, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, K315, \ - K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K413, K414, K415, \ - K500, K501, K503, K504, K506, K508, K509, K510, K511, K512, K513, K514, K515 \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, \ + K20, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4D, K4E, K4F, \ + K50, K51, K53, K54, K56, K58, K59, K5A, K5B, K5C, K5D, K5E, K5F \ ) { \ - { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, K014, K015 }, \ - { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115 }, \ - { K200, KC_NO, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215 }, \ - { K300, KC_NO, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, KC_NO, K315 }, \ - { K400, K401, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, KC_NO, K413, K414, K415 }, \ - { K500, K501, KC_NO, K503, K504, KC_NO, K506, KC_NO, K508, K509, K510, K511, K512, K513, K514, K515 } \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ + { K20, ___, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ + { K30, ___, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, K3F }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, ___, K4D, K4E, K4F }, \ + { K50, K51, ___, K53, K54, ___, K56, ___, K58, K59, K5A, K5B, K5C, K5D, K5E, K5F } \ } diff --git a/keyboards/kbdfans/kbd75/rev2/rules.mk b/keyboards/kbdfans/kbd75/rev2/rules.mk index e5d5d2c9a2..8bd068589c 100644 --- a/keyboards/kbdfans/kbd75/rev2/rules.mk +++ b/keyboards/kbdfans/kbd75/rev2/rules.mk @@ -8,13 +8,13 @@ BOOTLOADER = atmel-dfu # change yes to no to disable # BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = yes # Enable N-Key Rollover -BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -AUDIO_ENABLE = no -RGBLIGHT_ENABLE = yes +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output LAYOUTS = 75_ansi 75_iso From ba599270189242a728a230e7879b9c189a22053f Mon Sep 17 00:00:00 2001 From: Daniel Osipishin <88534270+subrezon@users.noreply.github.com> Date: Thu, 12 May 2022 00:39:08 +0200 Subject: [PATCH 379/699] [Keyboard] Add subrezon/la_nc keyboard (#16833) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Daniel Osipishin --- keyboards/subrezon/info.json | 4 ++ keyboards/subrezon/la_nc/config.h | 33 ++++++++++ keyboards/subrezon/la_nc/info.json | 52 +++++++++++++++ .../subrezon/la_nc/keymaps/default/keymap.c | 63 +++++++++++++++++++ .../subrezon/la_nc/keymaps/default/rules.mk | 3 + keyboards/subrezon/la_nc/la_nc.c | 45 +++++++++++++ keyboards/subrezon/la_nc/la_nc.h | 6 ++ keyboards/subrezon/la_nc/readme.md | 27 ++++++++ keyboards/subrezon/la_nc/rules.mk | 18 ++++++ 9 files changed, 251 insertions(+) create mode 100644 keyboards/subrezon/info.json create mode 100644 keyboards/subrezon/la_nc/config.h create mode 100644 keyboards/subrezon/la_nc/info.json create mode 100644 keyboards/subrezon/la_nc/keymaps/default/keymap.c create mode 100644 keyboards/subrezon/la_nc/keymaps/default/rules.mk create mode 100644 keyboards/subrezon/la_nc/la_nc.c create mode 100644 keyboards/subrezon/la_nc/la_nc.h create mode 100644 keyboards/subrezon/la_nc/readme.md create mode 100644 keyboards/subrezon/la_nc/rules.mk diff --git a/keyboards/subrezon/info.json b/keyboards/subrezon/info.json new file mode 100644 index 0000000000..faad074acb --- /dev/null +++ b/keyboards/subrezon/info.json @@ -0,0 +1,4 @@ +{ + "manufacturer": "subrezon", + "maintainer": "subrezon" +} \ No newline at end of file diff --git a/keyboards/subrezon/la_nc/config.h b/keyboards/subrezon/la_nc/config.h new file mode 100644 index 0000000000..6d5aad031a --- /dev/null +++ b/keyboards/subrezon/la_nc/config.h @@ -0,0 +1,33 @@ +// Copyright 2022 Daniel Osipishin (@subrezon) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +// USB device parameters +#define VENDOR_ID 0xFEED +#define PRODUCT_ID 0x1A7C +#define DEVICE_VER 0x0100 + +// key matrix +#define MATRIX_ROWS 6 +#define MATRIX_ROW_PINS {D3, F4, D2, B2, B5, B6} + +#define MATRIX_COLS 10 +#define MATRIX_COL_PINS {B3, B1, F7, F6, F5, D4, C6, D7, E6, B4} + +#define UNUSED_PINS +#define DIODE_DIRECTION COL2ROW +#define DEBOUNCE 5 + +// Bootmagic Lite +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 + +// uncomment to reduce firmware size +//#define NO_DEBUG +//#define NO_PRINT +//#define NO_ACTION_LAYER +//#define NO_ACTION_TAPPING +//#define NO_ACTION_ONESHOT diff --git a/keyboards/subrezon/la_nc/info.json b/keyboards/subrezon/la_nc/info.json new file mode 100644 index 0000000000..d668d94b4b --- /dev/null +++ b/keyboards/subrezon/la_nc/info.json @@ -0,0 +1,52 @@ +{ + "keyboard_name": "la_nc", + "url": "https://github.com/subrezon/la_nc", + "layouts": { + "LAYOUT": { + "layout": [ + { "label": "Q", "matrix": [0, 0], "x": 0, "y": 0}, + { "label": "W", "matrix": [0, 1], "x": 1, "y": 0}, + { "label": "E", "matrix": [0, 2], "x": 2, "y": 0}, + { "label": "R", "matrix": [0, 3], "x": 3, "y": 0}, + { "label": "T", "matrix": [0, 4], "x": 4, "y": 0}, + { "label": "Y", "matrix": [0, 5], "x": 7, "y": 0}, + { "label": "U", "matrix": [0, 6], "x": 8, "y": 0}, + { "label": "I", "matrix": [0, 7], "x": 9, "y": 0}, + { "label": "O", "matrix": [0, 8], "x": 10, "y": 0}, + { "label": "P", "matrix": [0, 9], "x": 11, "y": 0}, + { "label": "A", "matrix": [1, 0], "x": 0, "y": 1}, + { "label": "S", "matrix": [1, 1], "x": 1, "y": 1}, + { "label": "D", "matrix": [1, 2], "x": 2, "y": 1}, + { "label": "F", "matrix": [1, 3], "x": 3, "y": 1}, + { "label": "G", "matrix": [1, 4], "x": 4, "y": 1}, + { "label": "H", "matrix": [2, 5], "x": 7, "y": 1}, + { "label": "J", "matrix": [2, 6], "x": 8, "y": 1}, + { "label": "K", "matrix": [2, 7], "x": 9, "y": 1}, + { "label": "L", "matrix": [2, 8], "x": 10, "y": 1}, + { "label": ";", "matrix": [2, 9], "x": 11, "y": 1}, + { "label": "Z", "matrix": [3, 0], "x": 0, "y": 2}, + { "label": "X", "matrix": [3, 1], "x": 1, "y": 2}, + { "label": "C", "matrix": [3, 2], "x": 2, "y": 2}, + { "label": "V", "matrix": [3, 3], "x": 3, "y": 2}, + { "label": "B", "matrix": [3, 4], "x": 4, "y": 2}, + { "label": "N", "matrix": [4, 5], "x": 7, "y": 2}, + { "label": "M", "matrix": [4, 6], "x": 8, "y": 2}, + { "label": ",", "matrix": [4, 7], "x": 9, "y": 2}, + { "label": ".", "matrix": [4, 8], "x": 10, "y": 2}, + { "label": "/", "matrix": [4, 9], "x": 11, "y": 2}, + { "label": "Tab", "matrix": [5, 0], "x": 0, "y": 3}, + { "label": "Alt", "matrix": [5, 1], "x": 1, "y": 3}, + { "label": "Ctrl", "matrix": [5, 2], "x": 2, "y": 3}, + { "label": "Raise", "matrix": [5, 3], "x": 3, "y": 3}, + { "label": "", "matrix": [5, 4], "x": 4, "y": 3}, + { "label": "Esc", "matrix": [3, 5], "x": 5, "y": 3}, + { "label": "GUI", "matrix": [4, 4], "x": 6, "y": 3}, + { "label": "Bksp", "matrix": [5, 5], "x": 7, "y": 3}, + { "label": "Shift", "matrix": [5, 6], "x": 8, "y": 3}, + { "label": "Lower", "matrix": [5, 7], "x": 9, "y": 3}, + { "label": "Delete","matrix": [5, 8], "x": 10, "y": 3}, + { "label": "Enter", "matrix": [5, 9], "x": 11, "y": 3} + ] + } + } +} \ No newline at end of file diff --git a/keyboards/subrezon/la_nc/keymaps/default/keymap.c b/keyboards/subrezon/la_nc/keymaps/default/keymap.c new file mode 100644 index 0000000000..430a99c510 --- /dev/null +++ b/keyboards/subrezon/la_nc/keymaps/default/keymap.c @@ -0,0 +1,63 @@ +// Copyright 2022 Daniel Osipishin (@subrezon) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum layer_id { + _QWE = 0, + _NUM, + _SYM, + _OPT +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [_QWE] = LAYOUT( + //.--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------. + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_DOT, KC_COMM, KC_SLSH, + //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_TAB, KC_LALT, KC_LCTL,MO(_NUM), KC_SPC, KC_ESC, KC_LGUI, KC_BSPC, KC_LSFT,MO(_SYM), KC_DEL, KC_ENT + //'--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' + ), + + [_NUM] = LAYOUT( + //.--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------. + KC_LBRC, KC_7, KC_8, KC_9, KC_RBRC, KC_F12, KC_F7, KC_F8, KC_F9, KC_BSLS, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_MINS, KC_4, KC_5, KC_6, KC_0, KC_F11, KC_F4, KC_F5, KC_F6, KC_CAPS, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_GRV, KC_1, KC_2, KC_3, KC_EQL, KC_F10, KC_F1, KC_F2, KC_F3, KC_QUOT, + //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_TAB, KC_LALT, KC_LCTL, _______, KC_SPC, KC_ESC, KC_LGUI, KC_BSPC, KC_LSFT,MO(_OPT), KC_DEL, KC_ENT + //'--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' + ), + + [_SYM] = LAYOUT( + //.--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------. + KC_LCBR, KC_AMPR, KC_ASTR, KC_LPRN, KC_RCBR, KC_MPRV, KC_PGUP, KC_UP, KC_PGDN, KC_PIPE, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_UNDS, KC_DLR, KC_PERC, KC_CIRC, KC_RPRN, KC_MPLY, KC_LEFT, KC_DOWN, KC_RGHT, KC_LSFT, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_PLUS, KC_MNXT, KC_HOME, KC_INS, KC_END, KC_DQUO, + //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + KC_TAB, KC_LALT, KC_LCTL,MO(_OPT), KC_SPC, KC_ESC, KC_LGUI, KC_BSPC, KC_LSFT, _______, KC_DEL, KC_ENT + //'--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' + ), + + [_OPT] = LAYOUT( + //.--------+--------+--------+--------+--------. .--------+--------+--------+--------+--------. + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| + XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX + //'--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------' + ), + +}; diff --git a/keyboards/subrezon/la_nc/keymaps/default/rules.mk b/keyboards/subrezon/la_nc/keymaps/default/rules.mk new file mode 100644 index 0000000000..b7c57d87b9 --- /dev/null +++ b/keyboards/subrezon/la_nc/keymaps/default/rules.mk @@ -0,0 +1,3 @@ +OLED_ENABLE = yes +OLED_DRIVER = SSD1306 +LTO_ENABLE = yes diff --git a/keyboards/subrezon/la_nc/la_nc.c b/keyboards/subrezon/la_nc/la_nc.c new file mode 100644 index 0000000000..44f1f5afc1 --- /dev/null +++ b/keyboards/subrezon/la_nc/la_nc.c @@ -0,0 +1,45 @@ +// Copyright 2022 Daniel Osipishin (@subrezon) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "la_nc.h" + +#ifdef OLED_ENABLE + +enum layer_id { + _QWE = 0, + _NUM, + _SYM, + _OPT +}; + +bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + oled_write_P(PSTR("Layer:\n"), false); + + switch (get_highest_layer(layer_state)) { + case _QWE : + oled_write_P(PSTR("QWERTY\n"), false); + break; + + case _NUM : + oled_write_P(PSTR("Numbers\n"), false); + break; + + case _SYM : + oled_write_P(PSTR("Symbols\n"), false); + break; + + case _OPT : + oled_write_P(PSTR("Options\n"), false); + break; + + default : + oled_write_P(PSTR("Undefined\n"), false); + } + + return false; +}; + +#endif diff --git a/keyboards/subrezon/la_nc/la_nc.h b/keyboards/subrezon/la_nc/la_nc.h new file mode 100644 index 0000000000..039fc487da --- /dev/null +++ b/keyboards/subrezon/la_nc/la_nc.h @@ -0,0 +1,6 @@ +// Copyright 2022 Daniel Osipishin (@subrezon) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" \ No newline at end of file diff --git a/keyboards/subrezon/la_nc/readme.md b/keyboards/subrezon/la_nc/readme.md new file mode 100644 index 0000000000..26a7b4d79a --- /dev/null +++ b/keyboards/subrezon/la_nc/readme.md @@ -0,0 +1,27 @@ +# subrezon/la_nc + +![subrezon/la_nc](https://i.imgur.com/xYDcTtsh.jpg) + +Loosely based on the Planck keyboard, la_nc aims to deliver a lightly split, ortho typing experience in a similar footprint, as well as an easy build process. + +* Keyboard Maintainer: [Daniel Osipishin](https://github.com/subrezon) +* Hardware Supported: la_nc PCB, with an atmega32u4-based ProMicro compatible controller board +* Hardware Availability: https://github.com/subrezon/la_nc + +Make example for this keyboard (after setting up your build environment): + + make subrezon/la_nc:default + +Flashing example for this keyboard: + + make subrezon/la_nc:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/subrezon/la_nc/rules.mk b/keyboards/subrezon/la_nc/rules.mk new file mode 100644 index 0000000000..a74aa4dbc1 --- /dev/null +++ b/keyboards/subrezon/la_nc/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output From df9c266f45c947a2ae71f213096ef0d832f3e336 Mon Sep 17 00:00:00 2001 From: Minke Zhang Date: Wed, 11 May 2022 16:09:14 -0700 Subject: [PATCH 380/699] [Keyboard] Update YMDK Split 64 config (#16979) Co-authored-by: Joel Challis Co-authored-by: Ryan --- keyboards/ymdk/sp64/config.h | 5 +++++ keyboards/ymdk/sp64/rules.mk | 9 +++++---- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/keyboards/ymdk/sp64/config.h b/keyboards/ymdk/sp64/config.h index 38880d1a85..f7b34575af 100644 --- a/keyboards/ymdk/sp64/config.h +++ b/keyboards/ymdk/sp64/config.h @@ -30,6 +30,11 @@ along with this program. If not, see . #define RIGHT_HALF +/* LED indicator lights */ +#define LED_CAPS_LOCK_PIN D1 +#define LED_NUM_LOCK_PIN D0 +#define LED_SCROLL_LOCK_PIN D6 + /* RGB underglow */ #define RGBLED_NUM 12 #define RGBLIGHT_HUE_STEP 8 diff --git a/keyboards/ymdk/sp64/rules.mk b/keyboards/ymdk/sp64/rules.mk index 7d52d7ca78..3dfe95cc0f 100644 --- a/keyboards/ymdk/sp64/rules.mk +++ b/keyboards/ymdk/sp64/rules.mk @@ -10,16 +10,17 @@ BOOTLOADER = bootloadhid BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = no # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug +CONSOLE_ENABLE = no # Console for debug COMMAND_ENABLE = yes # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover -#BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -AUDIO_ENABLE = no # There is no speaker on this PCB +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +AUDIO_ENABLE = no # Audio output +AUDIO_SUPPORTED = no RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow CUSTOM_MATRIX = yes # Needed for underglow WS2812_DRIVER = i2c -SRC += matrix.c +SRC += matrix.c QUANTUM_LIB_SRC += i2c_master.c From ddba52325cee971c83aeb030536340f79db37204 Mon Sep 17 00:00:00 2001 From: 4pplet Date: Thu, 12 May 2022 00:37:43 +0100 Subject: [PATCH 381/699] [Keyboard] Yakiimo PCB (#16984) Co-authored-by: Joel Challis Co-authored-by: Ryan Co-authored-by: 4pplet <4pplet@protonmail.com> Co-authored-by: 4pplet --- keyboards/4pplet/yakiimo/info.json | 10 ++++ .../4pplet/yakiimo/keymaps/default/keymap.c | 36 +++++++++++++ keyboards/4pplet/yakiimo/keymaps/via/keymap.c | 53 +++++++++++++++++++ keyboards/4pplet/yakiimo/keymaps/via/rules.mk | 1 + keyboards/4pplet/yakiimo/readme.md | 17 ++++++ keyboards/4pplet/yakiimo/rev_a/config.h | 44 +++++++++++++++ keyboards/4pplet/yakiimo/rev_a/mcuconf.h | 37 +++++++++++++ keyboards/4pplet/yakiimo/rev_a/readme.md | 19 +++++++ keyboards/4pplet/yakiimo/rev_a/rev_a.c | 17 ++++++ keyboards/4pplet/yakiimo/rev_a/rev_a.h | 42 +++++++++++++++ keyboards/4pplet/yakiimo/rev_a/rules.mk | 21 ++++++++ 11 files changed, 297 insertions(+) create mode 100644 keyboards/4pplet/yakiimo/info.json create mode 100644 keyboards/4pplet/yakiimo/keymaps/default/keymap.c create mode 100644 keyboards/4pplet/yakiimo/keymaps/via/keymap.c create mode 100644 keyboards/4pplet/yakiimo/keymaps/via/rules.mk create mode 100644 keyboards/4pplet/yakiimo/readme.md create mode 100644 keyboards/4pplet/yakiimo/rev_a/config.h create mode 100644 keyboards/4pplet/yakiimo/rev_a/mcuconf.h create mode 100644 keyboards/4pplet/yakiimo/rev_a/readme.md create mode 100644 keyboards/4pplet/yakiimo/rev_a/rev_a.c create mode 100644 keyboards/4pplet/yakiimo/rev_a/rev_a.h create mode 100644 keyboards/4pplet/yakiimo/rev_a/rules.mk diff --git a/keyboards/4pplet/yakiimo/info.json b/keyboards/4pplet/yakiimo/info.json new file mode 100644 index 0000000000..aa3dcb429b --- /dev/null +++ b/keyboards/4pplet/yakiimo/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Yakiimo Rev A", + "url": "https://github.com/4pplet/yakiimo-PCB", + "maintainer": "4pplet", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "x":2.75, "y":0}, {"label":"F1", "x":4.75, "y":0}, {"label":"F2", "x":5.75, "y":0}, {"label":"F3", "x":6.75, "y":0}, {"label":"F4", "x":7.75, "y":0}, {"label":"F5", "x":9.25, "y":0}, {"label":"F6", "x":10.25, "y":0}, {"label":"F7", "x":11.25, "y":0}, {"label":"F8", "x":12.25, "y":0}, {"label":"F9", "x":13.75, "y":0}, {"label":"F10", "x":14.75, "y":0}, {"label":"F11", "x":15.75, "y":0}, {"label":"F12", "x":16.75, "y":0}, {"label":"PrtSc", "x":18, "y":0}, {"label":"Scroll Lock", "x":19, "y":0}, {"label":"Pause", "x":20, "y":0}, {"label":"~", "x":2.75, "y":1.5}, {"label":"!", "x":3.75, "y":1.5}, {"label":"@", "x":4.75, "y":1.5}, {"label":"#", "x":5.75, "y":1.5}, {"label":"$", "x":6.75, "y":1.5}, {"label":"%", "x":7.75, "y":1.5}, {"label":"^", "x":8.75, "y":1.5}, {"label":"&", "x":9.75, "y":1.5}, {"label":"*", "x":10.75, "y":1.5}, {"label":"(", "x":11.75, "y":1.5}, {"label":")", "x":12.75, "y":1.5}, {"label":"_", "x":13.75, "y":1.5}, {"label":"+", "x":14.75, "y":1.5}, {"label":"|", "x":15.75, "y":1.5}, {"label":"~", "x":16.75, "y":1.5}, {"label":"Insert", "x":18, "y":1.5}, {"label":"Home", "x":19, "y":1.5}, {"label":"PgUp", "x":20, "y":1.5}, {"label":"Tab", "x":2.75, "y":2.5, "w":1.5}, {"label":"Q", "x":4.25, "y":2.5}, {"label":"W", "x":5.25, "y":2.5}, {"label":"E", "x":6.25, "y":2.5}, {"label":"R", "x":7.25, "y":2.5}, {"label":"T", "x":8.25, "y":2.5}, {"label":"Y", "x":9.25, "y":2.5}, {"label":"U", "x":10.25, "y":2.5}, {"label":"I", "x":11.25, "y":2.5}, {"label":"O", "x":12.25, "y":2.5}, {"label":"P", "x":13.25, "y":2.5}, {"label":"{", "x":14.25, "y":2.5}, {"label":"}", "x":15.25, "y":2.5}, {"label":"|", "x":16.25, "y":2.5, "w":1.5}, {"label":"Delete", "x":18, "y":2.5}, {"label":"End", "x":19, "y":2.5}, {"label":"PgDn", "x":20, "y":2.5}, {"label":"Caps Lock", "x":2.75, "y":3.5, "w":1.75}, {"label":"A", "x":4.5, "y":3.5}, {"label":"S", "x":5.5, "y":3.5}, {"label":"D", "x":6.5, "y":3.5}, {"label":"F", "x":7.5, "y":3.5}, {"label":"G", "x":8.5, "y":3.5}, {"label":"H", "x":9.5, "y":3.5}, {"label":"J", "x":10.5, "y":3.5}, {"label":"K", "x":11.5, "y":3.5}, {"label":"L", "x":12.5, "y":3.5}, {"label":":", "x":13.5, "y":3.5}, {"label":"\"", "x":14.5, "y":3.5}, {"label":"~", "x":15.5, "y":3.5}, {"label":"Enter", "x":16.5, "y":3.5, "w":1.25}, {"label":"Shift", "x":2.75, "y":4.5, "w":1.25}, {"label":"|", "x":4, "y":4.5}, {"label":"Z", "x":5, "y":4.5}, {"label":"X", "x":6, "y":4.5}, {"label":"C", "x":7, "y":4.5}, {"label":"V", "x":8, "y":4.5}, {"label":"B", "x":9, "y":4.5}, {"label":"N", "x":10, "y":4.5}, {"label":"M", "x":11, "y":4.5}, {"label":"<", "x":12, "y":4.5}, {"label":">", "x":13, "y":4.5}, {"label":"?", "x":14, "y":4.5}, {"label":"Shift", "x":15, "y":4.5, "w":1.75}, {"label":"Fn", "x":16.75, "y":4.5}, {"label":"\u2191", "x":19, "y":4.5}, {"label":"Ctrl", "x":2.75, "y":5.5, "w":1.5}, {"label":"Win", "x":4.25, "y":5.5}, {"label":"Alt", "x":5.25, "y":5.5, "w":1.5}, {"x":6.75, "y":5.5, "w":3}, {"x":9.75, "y":5.5}, {"x":10.75, "y":5.5, "w":3}, {"label":"AltGr", "x":13.75, "y":5.5, "w":1.5}, {"label":"Win", "x":15.25, "y":5.5}, {"label":"Ctrl", "x":16.25, "y":5.5, "w":1.5}, {"label":"\u2190", "x":18, "y":5.5}, {"label":"\u2193", "x":19, "y":5.5}, {"label":"\u2192", "x":20, "y":5.5}] + } + } +} diff --git a/keyboards/4pplet/yakiimo/keymaps/default/keymap.c b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c new file mode 100644 index 0000000000..e16d204c32 --- /dev/null +++ b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c @@ -0,0 +1,36 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) +// basic function layer +[1] = LAYOUT_all( + RESET, 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, 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, + 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), +}; diff --git a/keyboards/4pplet/yakiimo/keymaps/via/keymap.c b/keyboards/4pplet/yakiimo/keymaps/via/keymap.c new file mode 100644 index 0000000000..969b05c868 --- /dev/null +++ b/keyboards/4pplet/yakiimo/keymaps/via/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" + +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 . +*/ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +// main layer +[0] = LAYOUT_all( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), +// basic function layer +[1] = LAYOUT_all( + RESET, 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, 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, + 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), +// extra layer for VIA +[2] = LAYOUT_all( + RESET, 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, 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, + 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), + +// extra layer for VIA +[3] = LAYOUT_all( + RESET, 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, 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, + 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) +}; diff --git a/keyboards/4pplet/yakiimo/keymaps/via/rules.mk b/keyboards/4pplet/yakiimo/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/4pplet/yakiimo/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/4pplet/yakiimo/readme.md b/keyboards/4pplet/yakiimo/readme.md new file mode 100644 index 0000000000..bdd5b9c272 --- /dev/null +++ b/keyboards/4pplet/yakiimo/readme.md @@ -0,0 +1,17 @@ +# Yakiimo Rev A + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: Yakiimo Rev A + +Make example for this keyboard (after setting up your build environment): + + make 4pplet/yakiimo/rev_a:via:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Press and hold the button on the keyboard (the small one on the same side as the MCU) for more than 1 second. The keyboard will then enter bootloader (DFU) mode and it's ready to flash the firmware. +* Note: If holding the button a shorter time, the keyboard will just reset. If you want to exit bootloader mode without flashing a firmware, dissconnect the keyboard from your PC and reconnect it. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. Bootmagic lite is enabled by default. diff --git a/keyboards/4pplet/yakiimo/rev_a/config.h b/keyboards/4pplet/yakiimo/rev_a/config.h new file mode 100644 index 0000000000..762ff55c41 --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/config.h @@ -0,0 +1,44 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4444 +#define PRODUCT_ID 0x000A +#define DEVICE_VER 0x0002 +#define MANUFACTURER 4pplet +#define PRODUCT Yakiimo Rev A + +#define MATRIX_ROWS 12 +#define MATRIX_COLS 9 + +#define MATRIX_COL_PINS { B0, A5, A4, A3, A2, A1, A0, C15, A8 } +#define MATRIX_ROW_PINS { B10, B1, C13, C14, B14, B12, B9, B8, B5, B4, A15, B3 } +#define DIODE_DIRECTION COL2ROW + +#define LED_CAPS_LOCK_PIN A6 +#define LED_SCROLL_LOCK_PIN A7 + +/* 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 + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +#define STM32_HSECLK 8000000 diff --git a/keyboards/4pplet/yakiimo/rev_a/mcuconf.h b/keyboards/4pplet/yakiimo/rev_a/mcuconf.h new file mode 100644 index 0000000000..566a38124d --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/mcuconf.h @@ -0,0 +1,37 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/acheron/austin/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h` + */ + +#pragma once + +#include_next +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE +#undef STM32_PPRE1 +#undef STM32_PPRE2 + +#define STM32_PLLM_VALUE 4 +#define STM32_PLLN_VALUE 168 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 7 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV1 diff --git a/keyboards/4pplet/yakiimo/rev_a/readme.md b/keyboards/4pplet/yakiimo/rev_a/readme.md new file mode 100644 index 0000000000..06fc9ab21b --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/readme.md @@ -0,0 +1,19 @@ +# Yakiimo Rev A + +* Keyboard Maintainer: [4pplet](https://github.com/4pplet) +* Hardware Supported: Yakiimo Rev A + +If your PCB is of revision A1, use the "proto" code in the Yakiimo directory + +Make example for this keyboard (after setting up your build environment): + + make 4pplet/yakiimo/rev_a:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +How to enter bootloader (DFU): +* Press and hold the button on the keyboard (the small one on the same side as the MCU) for more than 1 second. The keyboard will then enter bootloader (DFU) mode and it's ready to flash the firmware. +* Note: If holding the button a shorter time, the keyboard will just reset. If you want to exit bootloader mode without flashing a firmware, dissconnect the keyboard from your PC and reconnect it. + +Alternative option if the firmware is already pre-flashed: +* Unplug your keyboard, hold down the Spacebar and B at the same time, plug in your keyboard and wait a second before releasing the keys. Bootmagic lite is enabled by default. diff --git a/keyboards/4pplet/yakiimo/rev_a/rev_a.c b/keyboards/4pplet/yakiimo/rev_a/rev_a.c new file mode 100644 index 0000000000..f60dbbdf24 --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/rev_a.c @@ -0,0 +1,17 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#include "rev_a.h" diff --git a/keyboards/4pplet/yakiimo/rev_a/rev_a.h b/keyboards/4pplet/yakiimo/rev_a/rev_a.h new file mode 100644 index 0000000000..cc3f9dee85 --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/rev_a.h @@ -0,0 +1,42 @@ +/* +Copyright 2022 Stefan Sundin "4pplet" <4pplet@protonmail.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 . +*/ +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + k00, k01, k11, k02, k12, k03, k13, k04, k14, k05, k15, k06, k16, k07, k18, k08, \ + k20, k30, k21, k31, k22, k32, k23, k33, k24, k34, k25, k35, k26, k36, k27, k37, k28, k38, \ + k40, k50, k41, k51, k42, k52, k43, k53, k44, k54, k45, k55, k46, k56, k47, k48, k58, \ + k60, k70, k61, k71, k62, k72, k63, k73, k64, k74, k65, k75, k66, k76, \ + k80, k90, k81, k91, k82, k92, k83, k93, k84, k94, k85, k95, k86, k96, k98, \ + ka0, ka1, kb1, kb2, kb3, kb4, kb5, ka6, kb6, ka7, kb8, ka8 \ +) \ +{ \ + {k00, k01, k02, k03, k04, k05, k06, k07, k08}, \ + {KC_NO, k11, k12, k13, k14, k15, k16, KC_NO, k18}, \ + {k20, k21, k22, k23, k24, k25, k26, k27, k28}, \ + {k30, k31, k32, k33, k34, k35, k36, k37, k38}, \ + {k40, k41, k42, k43, k44, k45, k46, k47, k48}, \ + {k50, k51, k52, k53, k54, k55, k56, KC_NO, k58}, \ + {k60, k61, k62, k63, k64, k65, k66, KC_NO, KC_NO}, \ + {k70, k71, k72, k73, k74, k75, k76, KC_NO, KC_NO}, \ + {k80, k81, k82, k83, k84, k85, k86, KC_NO, KC_NO}, \ + {k90, k91, k92, k93, k94, k95, k96, KC_NO, k98}, \ + {ka0, ka1, KC_NO, KC_NO, KC_NO, KC_NO, ka6, ka7, ka8}, \ + {KC_NO, kb1, kb2, kb3, kb4, kb5, kb6, KC_NO, kb8} \ +} diff --git a/keyboards/4pplet/yakiimo/rev_a/rules.mk b/keyboards/4pplet/yakiimo/rev_a/rules.mk new file mode 100644 index 0000000000..69e3ba1629 --- /dev/null +++ b/keyboards/4pplet/yakiimo/rev_a/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = STM32F411 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE From 767e7db0edb4a5d3b40699cdb350c8eba37ebd19 Mon Sep 17 00:00:00 2001 From: TJ Date: Wed, 11 May 2022 18:39:35 -0500 Subject: [PATCH 382/699] [Keyboard] Littlefoot lx dev (#16771) Co-authored-by: Ryan --- .../littlefoot_lx/keymaps/default/keymap.c | 54 +++++++++++++++++++ .../littlefoot_lx/keymaps/via/keymap.c | 54 +++++++++++++++++++ .../littlefoot_lx/keymaps/via/rules.mk | 1 + keyboards/tominabox1/littlefoot_lx/readme.md | 30 +++++++++++ .../tominabox1/littlefoot_lx/rev1/config.h | 44 +++++++++++++++ .../tominabox1/littlefoot_lx/rev1/info.json | 14 +++++ .../tominabox1/littlefoot_lx/rev1/rev1.c | 18 +++++++ .../tominabox1/littlefoot_lx/rev1/rev1.h | 50 +++++++++++++++++ .../tominabox1/littlefoot_lx/rev1/rules.mk | 18 +++++++ .../tominabox1/littlefoot_lx/rev2/config.h | 44 +++++++++++++++ .../tominabox1/littlefoot_lx/rev2/info.json | 14 +++++ .../tominabox1/littlefoot_lx/rev2/rev2.c | 18 +++++++ .../tominabox1/littlefoot_lx/rev2/rev2.h | 50 +++++++++++++++++ .../tominabox1/littlefoot_lx/rev2/rules.mk | 18 +++++++ keyboards/tominabox1/littlefoot_lx/rules.mk | 1 + 15 files changed, 428 insertions(+) create mode 100644 keyboards/tominabox1/littlefoot_lx/keymaps/default/keymap.c create mode 100644 keyboards/tominabox1/littlefoot_lx/keymaps/via/keymap.c create mode 100644 keyboards/tominabox1/littlefoot_lx/keymaps/via/rules.mk create mode 100644 keyboards/tominabox1/littlefoot_lx/readme.md create mode 100644 keyboards/tominabox1/littlefoot_lx/rev1/config.h create mode 100644 keyboards/tominabox1/littlefoot_lx/rev1/info.json create mode 100644 keyboards/tominabox1/littlefoot_lx/rev1/rev1.c create mode 100644 keyboards/tominabox1/littlefoot_lx/rev1/rev1.h create mode 100644 keyboards/tominabox1/littlefoot_lx/rev1/rules.mk create mode 100644 keyboards/tominabox1/littlefoot_lx/rev2/config.h create mode 100644 keyboards/tominabox1/littlefoot_lx/rev2/info.json create mode 100644 keyboards/tominabox1/littlefoot_lx/rev2/rev2.c create mode 100644 keyboards/tominabox1/littlefoot_lx/rev2/rev2.h create mode 100644 keyboards/tominabox1/littlefoot_lx/rev2/rules.mk create mode 100644 keyboards/tominabox1/littlefoot_lx/rules.mk diff --git a/keyboards/tominabox1/littlefoot_lx/keymaps/default/keymap.c b/keyboards/tominabox1/littlefoot_lx/keymaps/default/keymap.c new file mode 100644 index 0000000000..67641741fa --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/keymaps/default/keymap.c @@ -0,0 +1,54 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_split( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_ENT, KC_SPC, KC_SPC, KC_BSPC + ), + + [1] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; diff --git a/keyboards/tominabox1/littlefoot_lx/keymaps/via/keymap.c b/keyboards/tominabox1/littlefoot_lx/keymaps/via/keymap.c new file mode 100644 index 0000000000..8bef2373f3 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/keymaps/via/keymap.c @@ -0,0 +1,54 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_split( + KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, + KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, + KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_ENT, + KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, + KC_ENT, KC_SPC, KC_SPC, KC_BSPC + ), + + [1] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [2] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ), + + [3] = LAYOUT_split( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + ) + +}; diff --git a/keyboards/tominabox1/littlefoot_lx/keymaps/via/rules.mk b/keyboards/tominabox1/littlefoot_lx/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/tominabox1/littlefoot_lx/readme.md b/keyboards/tominabox1/littlefoot_lx/readme.md new file mode 100644 index 0000000000..5ef9186347 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/readme.md @@ -0,0 +1,30 @@ +# Littlefoot LX + +![littlefoot_lx](https://i.imgur.com/0WhgT5yh.jpeg) + +The Littlefoot LX is a premium, integrated pcb version of the Littlefoot by The_Royal. + +* Keyboard Maintainer: [tominabox1](https://github.com/tominabox1) +* Hardware Supported: Littlefoot LX integrated ATMega32u4 +* Hardware Availability: https://tachfactory.bigcartel.com + +There are two versions of this PCB: + Rev1 is the PCB that shipped with the group buy run by RPMorrison on Tach Factory. These PCBs can be identified by the bodge wire on column 4. + Rev2 is the PCB available after this group buy. + +Make example for this keyboard (after setting up your build environment): + + make tominabox1/littlefoot_lx:default + +Flashing example for this keyboard: + + make tominabox1/littlefoot_lx:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/config.h b/keyboards/tominabox1/littlefoot_lx/rev1/config.h new file mode 100644 index 0000000000..0f9ad3c918 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev1/config.h @@ -0,0 +1,44 @@ + +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#pragma once + +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7431 +#define PRODUCT_ID 0x6C78 +#define DEVICE_VER 0x0001 +#define PRODUCT Littlefoot LX +#define MANUFACTURER tominabox1 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 10 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { D5, F4, D3, F1, F0 } +#define MATRIX_COL_PINS { D7, D6, D4, E2, F5, F6, F7, B6, B5, B4 } // uncomment for original groupbuy +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/info.json b/keyboards/tominabox1/littlefoot_lx/rev1/info.json new file mode 100644 index 0000000000..ee2d32e667 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev1/info.json @@ -0,0 +1,14 @@ +{ + "keyboard_name": "Littlefoot LX", + "url": "", + "maintainer": "tominabox1", + "layouts": { + "LAYOUT": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"1,0", "x":0, "y":1}, {"label":"1,1", "x":1, "y":1}, {"label":"1,2", "x":2, "y":1}, {"label":"1,3", "x":3, "y":1}, {"label":"1,4", "x":4, "y":1}, {"label":"1,5", "x":5, "y":1}, {"label":"1,6", "x":6, "y":1}, {"label":"1,7", "x":7, "y":1}, {"label":"1,8", "x":8, "y":1}, {"label":"1,9", "x":9, "y":1}, {"label":"2,0", "x":0, "y":2}, {"label":"2,1", "x":1, "y":2}, {"label":"2,2", "x":2, "y":2}, {"label":"2,3", "x":3, "y":2}, {"label":"2,4", "x":4, "y":2}, {"label":"2,5", "x":5, "y":2}, {"label":"2,6", "x":6, "y":2}, {"label":"2,7", "x":7, "y":2}, {"label":"2,8", "x":8, "y":2}, {"label":"2,9", "x":9, "y":2}, {"label":"3,0", "x":0, "y":3}, {"label":"3,1", "x":1, "y":3}, {"label":"3,2", "x":2, "y":3}, {"label":"3,3", "x":3, "y":3}, {"label":"3,4", "x":4, "y":3}, {"label":"3,5", "x":5, "y":3}, {"label":"3,6", "x":6, "y":3}, {"label":"3,7", "x":7, "y":3}, {"label":"3,8", "x":8, "y":3}, {"label":"3,9", "x":9, "y":3}, {"x":1.5, "y":4, "w":7}] + }, + "LAYOUT_split": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"1,0", "x":0, "y":1}, {"label":"1,1", "x":1, "y":1}, {"label":"1,2", "x":2, "y":1}, {"label":"1,3", "x":3, "y":1}, {"label":"1,4", "x":4, "y":1}, {"label":"1,5", "x":5, "y":1}, {"label":"1,6", "x":6, "y":1}, {"label":"1,7", "x":7, "y":1}, {"label":"1,8", "x":8, "y":1}, {"label":"1,9", "x":9, "y":1}, {"label":"2,0", "x":0, "y":2}, {"label":"2,1", "x":1, "y":2}, {"label":"2,2", "x":2, "y":2}, {"label":"2,3", "x":3, "y":2}, {"label":"2,4", "x":4, "y":2}, {"label":"2,5", "x":5, "y":2}, {"label":"2,6", "x":6, "y":2}, {"label":"2,7", "x":7, "y":2}, {"label":"2,8", "x":8, "y":2}, {"label":"2,9", "x":9, "y":2}, {"label":"3,0", "x":0, "y":3}, {"label":"3,1", "x":1, "y":3}, {"label":"3,2", "x":2, "y":3}, {"label":"3,3", "x":3, "y":3}, {"label":"3,4", "x":4, "y":3}, {"label":"3,5", "x":5, "y":3}, {"label":"3,6", "x":6, "y":3}, {"label":"3,7", "x":7, "y":3}, {"label":"3,8", "x":8, "y":3}, {"label":"3,9", "x":9, "y":3}, {"label":"4,2", "x":1.5, "y":4, "w":1.5}, {"label":"4,4", "x":3, "y":4, "w":2}, {"label":"4,6", "x":5, "y":4, "w":2}, {"label":"4,7", "x":7, "y":4, "w":1.5}] + } + + } +} diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/rev1.c b/keyboards/tominabox1/littlefoot_lx/rev1/rev1.c new file mode 100644 index 0000000000..67d6fd800d --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev1/rev1.c @@ -0,0 +1,18 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#include "rev1.h" diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/rev1.h b/keyboards/tominabox1/littlefoot_lx/rev1/rev1.h new file mode 100644 index 0000000000..f42ded450c --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev1/rev1.h @@ -0,0 +1,50 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, \ + K45 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39 }, \ + { XXX, XXX, XXX, XXX, XXX, K45, XXX, XXX, XXX, XXX } \ +} + +#define LAYOUT_split( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, \ + K42, K44, K46, K47 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39 }, \ + { XXX, XXX, K42, XXX, K44, XXX, K46, K47, XXX, XXX } \ +} diff --git a/keyboards/tominabox1/littlefoot_lx/rev1/rules.mk b/keyboards/tominabox1/littlefoot_lx/rev1/rules.mk new file mode 100644 index 0000000000..67bea6b609 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev1/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/config.h b/keyboards/tominabox1/littlefoot_lx/rev2/config.h new file mode 100644 index 0000000000..db97c0f133 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev2/config.h @@ -0,0 +1,44 @@ + +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#pragma once + +#include "config_common.h" + + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7431 +#define PRODUCT_ID 0x6C78 +#define DEVICE_VER 0x0001 +#define PRODUCT Littlefoot LX +#define MANUFACTURER tominabox1 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 10 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { D5, F4, D3, F1, F0 } +#define MATRIX_COL_PINS { D7, D6, D4, C7, F5, F6, F7, B6, B5, B4 } +#define UNUSED_PINS + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/info.json b/keyboards/tominabox1/littlefoot_lx/rev2/info.json new file mode 100644 index 0000000000..ee2d32e667 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev2/info.json @@ -0,0 +1,14 @@ +{ + "keyboard_name": "Littlefoot LX", + "url": "", + "maintainer": "tominabox1", + "layouts": { + "LAYOUT": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"1,0", "x":0, "y":1}, {"label":"1,1", "x":1, "y":1}, {"label":"1,2", "x":2, "y":1}, {"label":"1,3", "x":3, "y":1}, {"label":"1,4", "x":4, "y":1}, {"label":"1,5", "x":5, "y":1}, {"label":"1,6", "x":6, "y":1}, {"label":"1,7", "x":7, "y":1}, {"label":"1,8", "x":8, "y":1}, {"label":"1,9", "x":9, "y":1}, {"label":"2,0", "x":0, "y":2}, {"label":"2,1", "x":1, "y":2}, {"label":"2,2", "x":2, "y":2}, {"label":"2,3", "x":3, "y":2}, {"label":"2,4", "x":4, "y":2}, {"label":"2,5", "x":5, "y":2}, {"label":"2,6", "x":6, "y":2}, {"label":"2,7", "x":7, "y":2}, {"label":"2,8", "x":8, "y":2}, {"label":"2,9", "x":9, "y":2}, {"label":"3,0", "x":0, "y":3}, {"label":"3,1", "x":1, "y":3}, {"label":"3,2", "x":2, "y":3}, {"label":"3,3", "x":3, "y":3}, {"label":"3,4", "x":4, "y":3}, {"label":"3,5", "x":5, "y":3}, {"label":"3,6", "x":6, "y":3}, {"label":"3,7", "x":7, "y":3}, {"label":"3,8", "x":8, "y":3}, {"label":"3,9", "x":9, "y":3}, {"x":1.5, "y":4, "w":7}] + }, + "LAYOUT_split": { + "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"1,0", "x":0, "y":1}, {"label":"1,1", "x":1, "y":1}, {"label":"1,2", "x":2, "y":1}, {"label":"1,3", "x":3, "y":1}, {"label":"1,4", "x":4, "y":1}, {"label":"1,5", "x":5, "y":1}, {"label":"1,6", "x":6, "y":1}, {"label":"1,7", "x":7, "y":1}, {"label":"1,8", "x":8, "y":1}, {"label":"1,9", "x":9, "y":1}, {"label":"2,0", "x":0, "y":2}, {"label":"2,1", "x":1, "y":2}, {"label":"2,2", "x":2, "y":2}, {"label":"2,3", "x":3, "y":2}, {"label":"2,4", "x":4, "y":2}, {"label":"2,5", "x":5, "y":2}, {"label":"2,6", "x":6, "y":2}, {"label":"2,7", "x":7, "y":2}, {"label":"2,8", "x":8, "y":2}, {"label":"2,9", "x":9, "y":2}, {"label":"3,0", "x":0, "y":3}, {"label":"3,1", "x":1, "y":3}, {"label":"3,2", "x":2, "y":3}, {"label":"3,3", "x":3, "y":3}, {"label":"3,4", "x":4, "y":3}, {"label":"3,5", "x":5, "y":3}, {"label":"3,6", "x":6, "y":3}, {"label":"3,7", "x":7, "y":3}, {"label":"3,8", "x":8, "y":3}, {"label":"3,9", "x":9, "y":3}, {"label":"4,2", "x":1.5, "y":4, "w":1.5}, {"label":"4,4", "x":3, "y":4, "w":2}, {"label":"4,6", "x":5, "y":4, "w":2}, {"label":"4,7", "x":7, "y":4, "w":1.5}] + } + + } +} diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/rev2.c b/keyboards/tominabox1/littlefoot_lx/rev2/rev2.c new file mode 100644 index 0000000000..759d6f506d --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev2/rev2.c @@ -0,0 +1,18 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#include "rev2.h" diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/rev2.h b/keyboards/tominabox1/littlefoot_lx/rev2/rev2.h new file mode 100644 index 0000000000..f42ded450c --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev2/rev2.h @@ -0,0 +1,50 @@ +/* +Copyright 2022 tominabox1 + +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 . +*/ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, \ + K45 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39 }, \ + { XXX, XXX, XXX, XXX, XXX, K45, XXX, XXX, XXX, XXX } \ +} + +#define LAYOUT_split( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, \ + K42, K44, K46, K47 \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09 }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19 }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29 }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39 }, \ + { XXX, XXX, K42, XXX, K44, XXX, K46, K47, XXX, XXX } \ +} diff --git a/keyboards/tominabox1/littlefoot_lx/rev2/rules.mk b/keyboards/tominabox1/littlefoot_lx/rev2/rules.mk new file mode 100644 index 0000000000..67bea6b609 --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rev2/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = no # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/tominabox1/littlefoot_lx/rules.mk b/keyboards/tominabox1/littlefoot_lx/rules.mk new file mode 100644 index 0000000000..4756f7600f --- /dev/null +++ b/keyboards/tominabox1/littlefoot_lx/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = tominabox1/littlefoot_lx/rev1 From fa6fe11c33354699a84023a7a6a2dcdf5f0b46b3 Mon Sep 17 00:00:00 2001 From: sauvehoo <76417304+sauvehoo@users.noreply.github.com> Date: Wed, 11 May 2022 16:39:59 -0700 Subject: [PATCH 383/699] [Keyboard] Add ano keyboard (#16885) Co-authored-by: Ryan --- keyboards/ano/ano.c | 41 ++++++++++++++++ keyboards/ano/ano.h | 35 ++++++++++++++ keyboards/ano/config.h | 65 ++++++++++++++++++++++++++ keyboards/ano/info.json | 10 ++++ keyboards/ano/keymaps/default/keymap.c | 38 +++++++++++++++ keyboards/ano/readme.md | 20 ++++++++ keyboards/ano/rules.mk | 19 ++++++++ 7 files changed, 228 insertions(+) create mode 100644 keyboards/ano/ano.c create mode 100644 keyboards/ano/ano.h create mode 100644 keyboards/ano/config.h create mode 100644 keyboards/ano/info.json create mode 100644 keyboards/ano/keymaps/default/keymap.c create mode 100644 keyboards/ano/readme.md create mode 100644 keyboards/ano/rules.mk diff --git a/keyboards/ano/ano.c b/keyboards/ano/ano.c new file mode 100644 index 0000000000..0b6926deaf --- /dev/null +++ b/keyboards/ano/ano.c @@ -0,0 +1,41 @@ +/* Copyright 2022 Sebastien Sauve-Hoover (@sauvehoo) + * + * 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 . + */ + +#include "ano.h" + +/* The encoder_update_user is a function. + * It'll be called by QMK every time you turn the encoder. + * + * The index parameter tells you which encoder was turned. If you only have + * one encoder, the index will always be zero. + * + * The clockwise parameter tells you the direction of the encoder. It'll be + * true when you turned the encoder clockwise, and false otherwise. + */ + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + if (index == 0) { + if (clockwise) { + tap_code(KC_AUDIO_VOL_UP); + } else { + tap_code(KC_AUDIO_VOL_DOWN); + } + } + return true; +} +#endif \ No newline at end of file diff --git a/keyboards/ano/ano.h b/keyboards/ano/ano.h new file mode 100644 index 0000000000..ecbebec4c8 --- /dev/null +++ b/keyboards/ano/ano.h @@ -0,0 +1,35 @@ +/* Copyright 2022 Sebastien Sauve-Hoover (@sauvehoo) + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define LAYOUT_all( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, K217, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K313, K314, K315, K316, K317, \ + K400, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417, \ + K500, K501, K502, K506, K510, K511, K512, K513, K514, K515, K516, K517 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, KC_NO, KC_NO, KC_NO, KC_NO }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, K114, K115, K116, K117 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K212, K213, K214, K215, K216, K217 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, KC_NO, K313, K314, K315, K316, K317 }, \ + { K400, KC_NO, K402, K403, K404, K405, K406, K407, K408, K409, K410, K411, K412, K413, K414, K415, K416, K417 }, \ + { K500, K501, K502, KC_NO, KC_NO, KC_NO, K506, KC_NO, KC_NO, KC_NO, K510, K511, K512, K513, K514, K515, K516, K517 } \ +} diff --git a/keyboards/ano/config.h b/keyboards/ano/config.h new file mode 100644 index 0000000000..3c3ee05fbe --- /dev/null +++ b/keyboards/ano/config.h @@ -0,0 +1,65 @@ +/* Copyright 2022 Sebastien Sauve-Hoover (@sauvehoo) + * + * 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 . + */ + + #pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x8372 +#define PRODUCT_ID 0x0651 +#define DEVICE_VER 0x0000 +#define MANUFACTURER Sebastien Sauve-Hoover +#define PRODUCT Ano Keyboard +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 18 + +#define MATRIX_ROW_PINS { A4, B14, B15, B9, B10, B11 } +#define MATRIX_COL_PINS { B0, B1, B2, B3, B4, B5, B6, B7, A5, A6, A7, A8, A15, A2, A1, A0, B8, B13 } + +#define UNUSED_PINS + +#define ENCODERS_PAD_A { B12 } +#define ENCODERS_PAD_B { A14 } +#define ENCODER_RESOLUTION 2 + +#define DIODE_DIRECTION COL2ROW + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + + +#define TAP_CODE_DELAY 10 + +/* 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 + +/* + * 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 diff --git a/keyboards/ano/info.json b/keyboards/ano/info.json new file mode 100644 index 0000000000..3eda03c74f --- /dev/null +++ b/keyboards/ano/info.json @@ -0,0 +1,10 @@ +{ + "keyboard_name": "Ano", + "url": "https://github.com/sauvehoo", + "maintainer": "sauvehoo", + "layouts": { + "LAYOUT_all": { + "layout": [{"label":"Esc", "x":0.25, "y":0.25}, {"label":"F1", "x":1.5, "y":0.25}, {"label":"F2", "x":2.5, "y":0.25}, {"label":"F3", "x":3.5, "y":0.25}, {"label":"F4", "x":4.5, "y":0.25}, {"label":"F5", "x":5.75, "y":0.25}, {"label":"F6", "x":6.75, "y":0.25}, {"label":"F7", "x":7.75, "y":0.25}, {"label":"F8", "x":8.75, "y":0.25}, {"label":"F9", "x":10, "y":0.25}, {"label":"F10", "x":11, "y":0.25}, {"label":"F11", "x":12, "y":0.25}, {"label":"F12", "x":13, "y":0.25}, {"label":"Delete", "x":14.25, "y":0.25}, {"label":"Encoder", "x":18.25, "y":0.25}, {"label":"~", "x":0.25, "y":1.5}, {"label":"!", "x":1.25, "y":1.5}, {"label":"@", "x":2.25, "y":1.5}, {"label":"#", "x":3.25, "y":1.5}, {"label":"$", "x":4.25, "y":1.5}, {"label":"%", "x":5.25, "y":1.5}, {"label":"^", "x":6.25, "y":1.5}, {"label":"&", "x":7.25, "y":1.5}, {"label":"*", "x":8.25, "y":1.5}, {"label":"(", "x":9.25, "y":1.5}, {"label":")", "x":10.25, "y":1.5}, {"label":"_", "x":11.25, "y":1.5}, {"label":"+", "x":12.25, "y":1.5}, {"label":"Backspace", "x":13.25, "y":1.5, "w":2}, {"label":"Num Lock", "x":15.25, "y":1.5}, {"label":"/", "x":16.25, "y":1.5}, {"label":"*", "x":17.25, "y":1.5}, {"label":"*", "x":18.25, "y":1.5}, {"label":"Tab", "x":0.25, "y":2.5, "w":1.5}, {"label":"Q", "x":1.75, "y":2.5}, {"label":"W", "x":2.75, "y":2.5}, {"label":"E", "x":3.75, "y":2.5}, {"label":"R", "x":4.75, "y":2.5}, {"label":"T", "x":5.75, "y":2.5}, {"label":"Y", "x":6.75, "y":2.5}, {"label":"U", "x":7.75, "y":2.5}, {"label":"I", "x":8.75, "y":2.5}, {"label":"O", "x":9.75, "y":2.5}, {"label":"P", "x":10.75, "y":2.5}, {"label":"{", "x":11.75, "y":2.5}, {"label":"}", "x":12.75, "y":2.5}, {"label":"|", "x":13.75, "y":2.5, "w":1.5}, {"label":"7", "x":15.25, "y":2.5}, {"label":"8", "x":16.25, "y":2.5}, {"label":"9", "x":17.25, "y":2.5}, {"label":"-", "x":18.25, "y":2.5}, {"label":"Caps Lock", "x":0.25, "y":3.5, "w":1.75}, {"label":"A", "x":2, "y":3.5}, {"label":"S", "x":3, "y":3.5}, {"label":"D", "x":4, "y":3.5}, {"label":"F", "x":5, "y":3.5}, {"label":"G", "x":6, "y":3.5}, {"label":"H", "x":7, "y":3.5}, {"label":"J", "x":8, "y":3.5}, {"label":"K", "x":9, "y":3.5}, {"label":"L", "x":10, "y":3.5}, {"label":":", "x":11, "y":3.5}, {"label":"\"", "x":12, "y":3.5}, {"label":"Enter", "x":13, "y":3.5, "w":2.25}, {"label":"4", "x":15.25, "y":3.5}, {"label":"5", "x":16.25, "y":3.5}, {"label":"6", "x":17.25, "y":3.5}, {"label":"+", "x":18.25, "y":3.5}, {"label":"Shift", "x":0.25, "y":4.5, "w":2.25}, {"label":"Z", "x":2.5, "y":4.5}, {"label":"X", "x":3.5, "y":4.5}, {"label":"C", "x":4.5, "y":4.5}, {"label":"V", "x":5.5, "y":4.5}, {"label":"B", "x":6.5, "y":4.5}, {"label":"N", "x":7.5, "y":4.5}, {"label":"M", "x":8.5, "y":4.5}, {"label":"<", "x":9.5, "y":4.5}, {"label":">", "x":10.5, "y":4.5}, {"label":"?", "x":11.5, "y":4.5}, {"label":"Shift", "x":12.5, "y":4.5, "w":1.75}, {"label":"\u2191", "x":14.25, "y":4.5}, {"label":"1", "x":15.25, "y":4.5}, {"label":"2", "x":16.25, "y":4.5}, {"label":"3", "x":17.25, "y":4.5}, {"label":"Enter", "x":18.25, "y":4.5, "h":2}, {"label":"Ctrl", "x":0.25, "y":5.5, "w":1.25}, {"label":"Win", "x":1.5, "y":5.5, "w":1.25}, {"label":"Alt", "x":2.75, "y":5.5, "w":1.25}, {"x":4, "y":5.5, "w":6.25}, {"label":"Alt", "x":10.25, "y":5.5, "w":1.5}, {"label":"Ctrl", "x":11.75, "y":5.5, "w":1.5}, {"label":"\u2190", "x":13.25, "y":5.5}, {"label":"\u2193", "x":14.25, "y":5.5}, {"label":"\u2192", "x":15.25, "y":5.5}, {"label":"0", "x":16.25, "y":5.5}, {"label":".", "x":17.25, "y":5.5}] + } + } +} diff --git a/keyboards/ano/keymaps/default/keymap.c b/keyboards/ano/keymaps/default/keymap.c new file mode 100644 index 0000000000..c457cf851c --- /dev/null +++ b/keyboards/ano/keymaps/default/keymap.c @@ -0,0 +1,38 @@ +/* Copyright 2022 Sebastien Sauve-Hoover (@sauvehoo) + * + * 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 . + */ + + #include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + [0] = LAYOUT_all( + 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_GRV, 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_NLCK,KC_PSLS,KC_PAST,KC_MEDIA_PLAY_PAUSE, + 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, KC_P7, KC_P8, KC_P9, KC_B, + 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_P4, KC_P5, KC_P6, KC_PMNS, + 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, KC_P1, KC_P2, KC_P3, KC_PPLS, + KC_LCTL,KC_LGUI,KC_LALT, KC_SPC, MO(1), KC_RCTL,KC_LEFT, KC_DOWN, KC_RGHT,KC_P0, KC_PDOT,KC_PENT + ), + + [1] = LAYOUT_all( + 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, RESET, + 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, 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 + ), +}; diff --git a/keyboards/ano/readme.md b/keyboards/ano/readme.md new file mode 100644 index 0000000000..cc879d77b5 --- /dev/null +++ b/keyboards/ano/readme.md @@ -0,0 +1,20 @@ +# ano + +95 key custom keyboard made as DIY project + +* Keyboard Maintainer: [keebnewb](https://github.com/sauvehoo) +* Hardware Supported: Proton C +* Hardware Availability: Not available + +Make example for this keyboard (after setting up your build environment): + + make ano:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +# Bootloader + +Enter the bootloader in 2 ways: + +* Physical reset button: Briefly press the button on the back of the PCB - or short reset and ground pins +* Keycode in layout: Press the key mapped to `RESET`. By default this is done by pressing RALT to access second layer and pressing rotary encoder down. \ No newline at end of file diff --git a/keyboards/ano/rules.mk b/keyboards/ano/rules.mk new file mode 100644 index 0000000000..151f0cd8bc --- /dev/null +++ b/keyboards/ano/rules.mk @@ -0,0 +1,19 @@ +# MCU name +MCU = STM32F303 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes \ No newline at end of file From 37417d531d524d674ea7b1dcf8678f6679738e2f Mon Sep 17 00:00:00 2001 From: Vino Rodrigues <366673+vinorodrigues@users.noreply.github.com> Date: Thu, 12 May 2022 09:54:27 +1000 Subject: [PATCH 384/699] [Keyboard] remove handwired/reddot as per #14211 (#17033) --- keyboards/handwired/reddot/config.h | 100 ----------------- keyboards/handwired/reddot/info.json | 106 ------------------ .../handwired/reddot/keymaps/default/keymap.c | 22 ---- .../reddot/keymaps/default/readme.md | 1 - keyboards/handwired/reddot/readme.md | 14 --- keyboards/handwired/reddot/reddot.c | 1 - keyboards/handwired/reddot/reddot.h | 17 --- keyboards/handwired/reddot/rules.mk | 17 --- 8 files changed, 278 deletions(-) delete mode 100755 keyboards/handwired/reddot/config.h delete mode 100644 keyboards/handwired/reddot/info.json delete mode 100644 keyboards/handwired/reddot/keymaps/default/keymap.c delete mode 100755 keyboards/handwired/reddot/keymaps/default/readme.md delete mode 100755 keyboards/handwired/reddot/readme.md delete mode 100755 keyboards/handwired/reddot/reddot.c delete mode 100755 keyboards/handwired/reddot/reddot.h delete mode 100755 keyboards/handwired/reddot/rules.mk diff --git a/keyboards/handwired/reddot/config.h b/keyboards/handwired/reddot/config.h deleted file mode 100755 index 6028971dda..0000000000 --- a/keyboards/handwired/reddot/config.h +++ /dev/null @@ -1,100 +0,0 @@ -/* -Copyright 2012 Jun Wako - -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 . -*/ - -#pragma once - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0xFEED -#define PRODUCT_ID 0x6060 -#define DEVICE_VER 0x0001 -#define MANUFACTURER upils -#define PRODUCT reddot - -/* key matrix size */ -#define MATRIX_ROWS 5 -#define MATRIX_COLS 19 - -/* - * 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 { B0, B1, B2, B3, E6 } -#define MATRIX_COL_PINS { B7, D0, D1, D2, D3, C6, C7, D5, D4, D7, B4, B5, B6, F7, F6, F5, F4, F1, F0 } -#define UNUSED_PINS - -/* COL2ROW or ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -// #define BACKLIGHT_PIN B7 -// #define BACKLIGHT_BREATHING -// #define BACKLIGHT_LEVELS 3 - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 5 - -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - -/* 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 - -/* - * 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 - -/* - * 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 diff --git a/keyboards/handwired/reddot/info.json b/keyboards/handwired/reddot/info.json deleted file mode 100644 index 7551041e71..0000000000 --- a/keyboards/handwired/reddot/info.json +++ /dev/null @@ -1,106 +0,0 @@ -{ - "keyboard_name": "handwired/reddot", - "url": "", - "maintainer": "qmk", - "layouts": { - "LAYOUT": { - "layout": [ - {"label":"k00 (Esc)", "x":0, "y":0}, - {"label":"k01 (F1)", "x":1, "y":0}, - {"label":"k02 (F2)", "x":2, "y":0}, - {"label":"k03 (F3)", "x":3, "y":0}, - {"label":"k04 (F4)", "x":4, "y":0}, - {"label":"k05 (F5)", "x":5, "y":0}, - {"label":"k06 (Tab)", "x":6, "y":0, "w":2}, - {"label":"k07 (Caps Lock)", "x":8, "y":0}, - {"label":"k08 (F6)", "x":9, "y":0}, - {"label":"k09 (F7)", "x":10, "y":0}, - {"label":"k0A (F8)", "x":11, "y":0}, - {"label":"k0B (F9)", "x":12, "y":0}, - {"label":"k0C (F10)", "x":13, "y":0}, - {"label":"k0D (F11)", "x":14, "y":0}, - {"label":"k0E (F12)", "x":15, "y":0}, - {"label":"k10 (Function)", "x":16.5, "y":0}, - {"label":"k11 (Keypad /)", "x":17.5, "y":0}, - {"label":"k12 (Keypad *)", "x":18.5, "y":0}, - {"label":"k13 (Keypad -)", "x":19.5, "y":0}, - - {"label":"k20 (Left Alt)", "x":0, "y":1}, - {"label":"k21 (1 / FR Ampersand)", "x":1, "y":1}, - {"label":"k22 (2 / FR É)", "x":2, "y":1}, - {"label":"k23 (3 / FR Quote)", "x":3, "y":1}, - {"label":"k24 (4 / FR Apostrophe)", "x":4, "y":1}, - {"label":"k25 (5 / FR Left Parenthesis)", "x":5, "y":1}, - {"label":"k26 (Backspace)", "x":6, "y":1, "w":2}, - {"label":"k27 (Delete)", "x":8, "y":1}, - {"label":"k28 (6 / FR Minus)", "x":9, "y":1}, - {"label":"k29 (7 / FR È)", "x":10, "y":1}, - {"label":"k2A (8 / FR Underscore)", "x":11, "y":1}, - {"label":"k2B (9 / FR Ç)", "x":12, "y":1}, - {"label":"k2C (0 / FR À)", "x":13, "y":1}, - {"label":"k2D (Minus / FR Right Parenthesis)", "x":14, "y":1}, - {"label":"k2E (Equals / FR Equals)", "x":15, "y":1}, - {"label":"k30 (Insert)", "x":16.5, "y":1}, - {"label":"k31 (Home)", "x":17.5, "y":1}, - {"label":"k32 (Page Up)", "x":18.5, "y":1}, - - {"label":"k40 (GUI)", "x":0, "y":2}, - {"label":"k41 (Q / FR A)", "x":1, "y":2}, - {"label":"k42 (W / FR Z)", "x":2, "y":2}, - {"label":"k43 (E)", "x":3, "y":2}, - {"label":"k44 (R)", "x":4, "y":2}, - {"label":"k45 (T)", "x":5, "y":2}, - {"label":"k46 (Shift)", "x":6, "y":2, "h":2}, - {"label":"k66 (Enter)", "x":7, "y":2, "h":2}, - {"label":"k47 (Enter)", "x":8, "y":2, "h":2}, - {"label":"k48 (Y)", "x":9, "y":2}, - {"label":"k49 (U)", "x":10, "y":2}, - {"label":"k4A (I)", "x":11, "y":2}, - {"label":"k4B (O)", "x":12, "y":2}, - {"label":"k4C (P)", "x":13, "y":2}, - {"label":"k4D (Left Bracket / FR Circumflex)", "x":14, "y":2}, - {"label":"k4E (Right Bracket / FR Dollar)", "x":15, "y":2}, - {"label":"k50 (Delete)", "x":16.5, "y":2}, - {"label":"k51 (End)", "x":17.5, "y":2}, - {"label":"k52 (Page Down)", "x":18.5, "y":2}, - {"label":"k53 (Keypad +)", "x":19.5, "y":1, "h":2}, - - {"label":"k60 (Ctrl)", "x":0, "y":3}, - {"label":"k61 (A / FR Q)", "x":1, "y":3}, - {"label":"k62 (S)", "x":2, "y":3}, - {"label":"k63 (D)", "x":3, "y":3}, - {"label":"k64 (F)", "x":4, "y":3}, - {"label":"k65 (G)", "x":5, "y":3}, - {"label":"k68 (H)", "x":9, "y":3}, - {"label":"k69 (J)", "x":10, "y":3}, - {"label":"k6A (K)", "x":11, "y":3}, - {"label":"k6B (L)", "x":12, "y":3}, - {"label":"k6C (Semicolon / FR M)", "x":13, "y":3}, - {"label":"k6D (Quote / FR Ù)", "x":14, "y":3}, - {"label":"k6E (ISO Hash / FR Asterisk)", "x":15, "y":3}, - {"label":"k70 (Keypad 1)", "x":16.5, "y":3}, - {"label":"k71 (Up)", "x":17.5, "y":3}, - {"label":"k72 (Keypad 3)", "x":18.5, "y":3}, - - {"label":"k80 (ISO Backslash / FR Less Than)", "x":0, "y":4}, - {"label":"k81 (Z / FR W)", "x":1, "y":4}, - {"label":"k82 (X)", "x":2, "y":4}, - {"label":"k83 (C)", "x":3, "y":4}, - {"label":"k84 (V)", "x":4, "y":4}, - {"label":"k85 (B)", "x":5, "y":4}, - {"label":"k86 (Space)", "x":6, "y":4, "w":2}, - {"label":"k88 (Space)", "x":8, "y":4, "w":2}, - {"label":"k89 (N)", "x":10, "y":4}, - {"label":"k8A (M / FR Comma)", "x":11, "y":4}, - {"label":"k8B (Comma / FR Semicolon)", "x":12, "y":4}, - {"label":"k8C (Period / Colon)", "x":13, "y":4}, - {"label":"k8D (Slash / FR Exclaim)", "x":14, "y":4}, - {"label":"k8E (Right Alt / FR AltGr)", "x":15, "y":4}, - {"label":"k90 (Left)", "x":16.5, "y":4}, - {"label":"k91 (Down)", "x":17.5, "y":4}, - {"label":"k92 (Right)", "x":18.5, "y":4}, - {"label":"k93 (Keypad Enter)", "x":19.5, "y":3, "h":2} - ] - } - } -} diff --git a/keyboards/handwired/reddot/keymaps/default/keymap.c b/keyboards/handwired/reddot/keymaps/default/keymap.c deleted file mode 100644 index 0f3334834a..0000000000 --- a/keyboards/handwired/reddot/keymaps/default/keymap.c +++ /dev/null @@ -1,22 +0,0 @@ -#include QMK_KEYBOARD_H -#include "keymap_french.h" - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - - [0] = LAYOUT( - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, TG(1), KC_PSLS, KC_PAST, KC_PMNS, - KC_LALT, FR_AMPR, FR_EACU, FR_DQUO, FR_QUOT, FR_LPRN, KC_BSPC, KC_DEL, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_INS, KC_HOME, KC_PGUP, - KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_DEL, KC_END, KC_PGDN, KC_PPLS, - KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_P1, KC_UP, KC_P3, - FR_LABK, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPC, KC_SPC, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RGHT, KC_PENT - ), - - [1] = LAYOUT( - KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_TAB, KC_CAPS, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_PSLS, KC_PAST, KC_PMNS, - KC_LALT, FR_AMPR, FR_EACU, FR_DQUO, FR_QUOT, FR_LPRN, KC_BSPC, KC_DEL, FR_MINS, FR_EGRV, FR_UNDS, FR_CCED, FR_AGRV, FR_RPRN, FR_EQL, KC_7, KC_8, KC_9, - KC_LGUI, FR_A, FR_Z, KC_E, KC_R, KC_T, KC_LSFT, KC_ENT, KC_ENT, KC_Y, KC_U, KC_I, KC_O, KC_P, FR_CIRC, FR_DLR, KC_4, KC_5, KC_6, KC_PPLS, - KC_LCTL, FR_Q, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, FR_M, FR_UGRV, FR_ASTR, KC_1, KC_2, KC_3, - FR_LABK, FR_W, KC_X, KC_C, KC_V, KC_B, KC_SPC, KC_SPC, KC_N, FR_COMM, FR_SCLN, FR_COLN, FR_EXLM, KC_ALGR, KC_LEFT, KC_DOWN, KC_RGHT, KC_PENT - ), - -}; diff --git a/keyboards/handwired/reddot/keymaps/default/readme.md b/keyboards/handwired/reddot/keymaps/default/readme.md deleted file mode 100755 index f04833c3e0..0000000000 --- a/keyboards/handwired/reddot/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for handwired/reddot diff --git a/keyboards/handwired/reddot/readme.md b/keyboards/handwired/reddot/readme.md deleted file mode 100755 index 27c8b54d60..0000000000 --- a/keyboards/handwired/reddot/readme.md +++ /dev/null @@ -1,14 +0,0 @@ -# RedDot - -An ortholinear compact fullsize keyboard configured for French AZERTY layout. - -- [Layout](http://www.keyboard-layout-editor.com/##@_plate:true%3B&@_sm=cherry&sb=cherry&st=MX1A-L1xx%3B&=Esc&=F1&=F2&=F3&=F4&=F5&_w:2%3B&=Tab&=Caps%20Lock&=F6&=F7&=F8&=F9&=F10&=F11&=F12&_x:0.5%3B&=Fn&=%2F%2F&=*&=-%3B&@=Alt&=1%0A%2F&&=2%0A%C3%A9%0A%0A~&=3%0A%22%0A%0A%23&=4%0A'%0A%0A%7B&=5%0A(%0A%0A%5B&_w:2%3B&=Back&=Del&=6%0A-%0A%0A%7C&=7%0A%C3%A8%0A%0A%60&=8%0A%2F_%0A%0A%5C&=9%0A%C3%A7%0A%0A%5E&=0%0A%C3%A0%0A%0A%2F@&=%C2%B0%0A)%0A%0A%5D&=+%0A%2F=%0A%0A%7D&_x:0.5%3B&=Insert&=Home&=Page%20Up&_h:2%3B&=+%3B&@=Win&=A&=Z&=E&=R&=T&_h:2%3B&=Shift&_h:2%3B&=Enter&_h:2%3B&=Enter&=Y&=U&=I&=O&=P&=%C2%A8%0A%5E&=%C2%A3%0A$&_x:0.5%3B&=Delete&=End&=Page%20Down%3B&@=Ctrl&=Q&=S&=D&=F&=G&_x:3%3B&=H&=J&=K&=L&=M&=%25%0A%C3%B9&=%C2%B5%0A*&_x:0.5%3B&=1%0AEnd&=Up&=3%0APgDn&_h:2%3B&=Enter%3B&@=%3E%0A%3C&=W&=X&=C&=V&=B&_w:2%3B&=Space&_w:2%3B&=Space&=N&=%3F%0A,&=.%0A%2F%3B&=%2F%2F%0A%2F:&=%C2%A7%0A!&=Alt%20Gr&_x:0.5%3B&=Left&=Down&=Right) - -Keyboard Maintainer: [The QMK Community](https://github.com/qmk) -Hardware Supported: RedDot handwired - -Make example for this keyboard (after setting up your build environment): - - make handwired/reddot:default - -See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). diff --git a/keyboards/handwired/reddot/reddot.c b/keyboards/handwired/reddot/reddot.c deleted file mode 100755 index 1c4720b5cf..0000000000 --- a/keyboards/handwired/reddot/reddot.c +++ /dev/null @@ -1 +0,0 @@ -#include "reddot.h" diff --git a/keyboards/handwired/reddot/reddot.h b/keyboards/handwired/reddot/reddot.h deleted file mode 100755 index a763f2ddc3..0000000000 --- a/keyboards/handwired/reddot/reddot.h +++ /dev/null @@ -1,17 +0,0 @@ -#pragma once - -#include "quantum.h" - -#define LAYOUT( \ - k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13, \ - k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, \ - k40, k41, k42, k43, k44, k45, k46, k66, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53, \ - k60, k61, k62, k63, k64, k65, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, \ - k80, k81, k82, k83, k84, k85, k86, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93 \ -) { \ - { k00, k01, k02, k03, k04, k05, k06, k07, k08, k09, k0A, k0B, k0C, k0D, k0E, k10, k11, k12, k13 }, \ - { k20, k21, k22, k23, k24, k25, k26, k27, k28, k29, k2A, k2B, k2C, k2D, k2E, k30, k31, k32, KC_NO }, \ - { k40, k41, k42, k43, k44, k45, k46, k47, k48, k49, k4A, k4B, k4C, k4D, k4E, k50, k51, k52, k53 }, \ - { k60, k61, k62, k63, k64, k65, k66, KC_NO, k68, k69, k6A, k6B, k6C, k6D, k6E, k70, k71, k72, KC_NO }, \ - { k80, k81, k82, k83, k84, k85, k86, KC_NO, k88, k89, k8A, k8B, k8C, k8D, k8E, k90, k91, k92, k93 } \ -} diff --git a/keyboards/handwired/reddot/rules.mk b/keyboards/handwired/reddot/rules.mk deleted file mode 100755 index 8d562b0bd1..0000000000 --- a/keyboards/handwired/reddot/rules.mk +++ /dev/null @@ -1,17 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = caterina - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = no # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -AUDIO_ENABLE = no # Audio output From 7fd05afb100966032ebd10378f68d0446e23ed71 Mon Sep 17 00:00:00 2001 From: Vino Rodrigues <366673+vinorodrigues@users.noreply.github.com> Date: Thu, 12 May 2022 10:09:10 +1000 Subject: [PATCH 385/699] [Keyboard] Revert "Fix id67 RGB Matrix (#16916)" - on IDOBAO ID67 kb (#16917) Co-authored-by: Drashna Jaelre --- keyboards/idobao/id67/config.h | 56 ++++++++---------- keyboards/idobao/id67/id67.c | 43 ++++++++++++-- keyboards/idobao/id67/info.json | 6 +- .../idobao/id67/keymaps/default_nug/config.h | 26 --------- .../idobao/id67/keymaps/default_nug/keymap.c | 41 ------------- .../idobao/id67/keymaps/thewerther/config.h | 7 +-- keyboards/idobao/id67/keymaps/via/config.h | 22 ------- .../idobao/id67/keymaps/via_nug/config.h | 27 --------- .../idobao/id67/keymaps/via_nug/keymap.c | 53 ----------------- .../idobao/id67/keymaps/via_nug/rules.mk | 2 - .../id67/keymaps/vinorodrigues/config.h | 57 ++++++++++--------- .../id67/keymaps/vinorodrigues/keymap.c | 42 +++++++------- keyboards/idobao/id67/post_rules.mk | 14 +++++ keyboards/idobao/id67/readme.md | 12 ++-- keyboards/idobao/id67/rules.mk | 4 -- 15 files changed, 139 insertions(+), 273 deletions(-) delete mode 100644 keyboards/idobao/id67/keymaps/default_nug/config.h delete mode 100644 keyboards/idobao/id67/keymaps/default_nug/keymap.c delete mode 100644 keyboards/idobao/id67/keymaps/via/config.h delete mode 100644 keyboards/idobao/id67/keymaps/via_nug/config.h delete mode 100644 keyboards/idobao/id67/keymaps/via_nug/keymap.c delete mode 100644 keyboards/idobao/id67/keymaps/via_nug/rules.mk create mode 100644 keyboards/idobao/id67/post_rules.mk diff --git a/keyboards/idobao/id67/config.h b/keyboards/idobao/id67/config.h index be6594b0c1..f94606c9e7 100644 --- a/keyboards/idobao/id67/config.h +++ b/keyboards/idobao/id67/config.h @@ -22,7 +22,7 @@ /* USB Device descriptor parameter */ #define VENDOR_ID 0x6964 /* "id" */ #define PRODUCT_ID 0x0067 -#define DEVICE_VER 0x0001 +#define DEVICE_VER 0x0002 #define MANUFACTURER IDOBAO #define PRODUCT ID67 @@ -46,37 +46,19 @@ #define DIODE_DIRECTION COL2ROW #define RGB_DI_PIN F0 -// RGB Light config -#if defined(RGBLIGHT_ENABLE) - #define RGBLED_NUM 77 - #define RGBLIGHT_HUE_STEP 8 - #define RGBLIGHT_SAT_STEP 8 - #define RGBLIGHT_VAL_STEP 8 - #define RGBLIGHT_LIMIT_VAL 150 /* The maximum brightness level */ - #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -/*== all animations enable ==*/ - #define RGBLIGHT_ANIMATIONS -// /*== or choose animations ==*/ -// #define RGBLIGHT_EFFECT_BREATHING -// #define RGBLIGHT_EFFECT_RAINBOW_MOOD -// #define RGBLIGHT_EFFECT_RAINBOW_SWIRL -// #define RGBLIGHT_EFFECT_SNAKE -// #define RGBLIGHT_EFFECT_KNIGHT -// #define RGBLIGHT_EFFECT_CHRISTMAS -// #define RGBLIGHT_EFFECT_STATIC_GRADIENT -// #define RGBLIGHT_EFFECT_RGB_TEST -// #define RGBLIGHT_EFFECT_ALTERNATING -#endif - // RGB Matrix config #if defined(RGB_MATRIX_ENABLE) - #define DRIVER_LED_TOTAL 77 - #define DRIVER_LED_UNDERGLOW 10 + #ifndef ID67_DISABLE_UNDERGLOW + #define DRIVER_LED_TOTAL 77 + #else + #define DRIVER_LED_TOTAL 67 + #endif - #define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 + #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 150 // limits maximum brightness of LEDs to x out of 255. If not defined maximum brightness is set to 255 #define RGB_MATRIX_KEYPRESSES + #define ENABLE_RGB_MATRIX_ALPHAS_MODS // Static dual hue, speed is hue for secondary hue #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN // Static gradient top to bottom, speed controls how much gradient changes #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT // Static gradient left to right, speed controls how much gradient changes @@ -92,7 +74,7 @@ #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Full gradient scrolling out to in #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in - #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradient Chevron shaped scrolling left to right #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard #define ENABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard @@ -100,10 +82,18 @@ #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard #define ENABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation - #define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time, then shifts back - #define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left - #define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right -#if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + #define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight amount at the same time, then shifts back + #define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight amount in a wave to the right, then back to the left + #define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight amount and then back down in a wave to the right + + // don't need `#if`, animation modes themselves check defines + // #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) + // #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + // #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + // #endif // #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) + + // don't need `#if`, animation modes themselves check defines + // #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE// Pulses keys hit to hue & value then fades value out #define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out @@ -116,5 +106,5 @@ #define ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out #define ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out -#endif // #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + // #endif // #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) #endif // #if defined(RGB_MATRIX_ENABLE) diff --git a/keyboards/idobao/id67/id67.c b/keyboards/idobao/id67/id67.c index 8d27298625..155cc74087 100644 --- a/keyboards/idobao/id67/id67.c +++ b/keyboards/idobao/id67/id67.c @@ -19,7 +19,11 @@ #define __ NO_LED -// Indices are reveresed on the physical board, top left is bottom right. +#if defined(RGB_MATRIX_ENABLE) + +/* NB!!: Indices are reversed on the physical board, top left is bottom right. + * These "LED Index to *" arrays are in that reversed order! + * i.e., Space row on top, listed right to left */ led_config_t g_led_config = { { // Key Matrix to LED Index {66, 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52}, @@ -47,15 +51,46 @@ led_config_t g_led_config = { { 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 9, // third row 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, // fourth row 1, 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 // fifth row - // underglow leds + // underglow LEDs #ifndef ID67_DISABLE_UNDERGLOW , 2, 2, 2, 2, 2, 2, 2, 2, 2, 2 #endif } }; -__attribute__ ((weak)) +#endif // #ifdef RGB_MATRIX_ENABLE + + +/* Use `#define ID67_CAPS_LOCK_KEY_INDEX 36` in `keymaps/yourkeymap/config.h` + * if you want to enable Caps-Lock LED mode */ +#if defined(RGB_MATRIX_ENABLE) && defined(ID67_CAPS_LOCK_KEY_INDEX) + +#define ID67_CAPS_LOCK_MAX_BRIGHTNESS 0xFF +#ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS + #undef ID67_CAPS_LOCK_MAX_BRIGHTNESS + #define ID67_CAPS_LOCK_MAX_BRIGHTNESS RGB_MATRIX_MAXIMUM_BRIGHTNESS +#endif + +#define ID67_CAPS_LOCK_VAL_STEP 8 +#ifdef RGB_MATRIX_VAL_STEP + #undef ID67_CAPS_LOCK_VAL_STEP + #define ID67_CAPS_LOCK_VAL_STEP RGB_MATRIX_VAL_STEP +#endif + +/* This function is defined as weak, so if you create your own in keymap then + * that will compile, not this */ +__attribute__((weak)) void rgb_matrix_indicators_user(void) { if (host_keyboard_led_state().caps_lock) { - rgb_matrix_set_color(23, 0xFF, 0xFF, 0xFF); + uint8_t b = rgb_matrix_get_val(); + if (b < ID67_CAPS_LOCK_VAL_STEP) { + b = ID67_CAPS_LOCK_VAL_STEP; + } else if (b < (ID67_CAPS_LOCK_MAX_BRIGHTNESS - ID67_CAPS_LOCK_VAL_STEP)) { + b += ID67_CAPS_LOCK_VAL_STEP; // one step more than current brightness + } else { + b = ID67_CAPS_LOCK_MAX_BRIGHTNESS; + } + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, b, b, b); // white, with the adjusted brightness } } + +#endif // #ifdef ID67_CAPS_LOCK_KEY_INDEX diff --git a/keyboards/idobao/id67/info.json b/keyboards/idobao/id67/info.json index 774d913413..545cd863d8 100644 --- a/keyboards/idobao/id67/info.json +++ b/keyboards/idobao/id67/info.json @@ -1,7 +1,7 @@ { - "keyboard_name": "ID67 RGB Matrix variant", - "url": "", - "maintainer": "qmk", + "keyboard_name": "ID67", + "url": "https://idobao.net", + "maintainer": "thewerther", "layout_aliases": { "LAYOUT": "LAYOUT_65_ansi_blocker" }, diff --git a/keyboards/idobao/id67/keymaps/default_nug/config.h b/keyboards/idobao/id67/keymaps/default_nug/config.h deleted file mode 100644 index d92c93ce1e..0000000000 --- a/keyboards/idobao/id67/keymaps/default_nug/config.h +++ /dev/null @@ -1,26 +0,0 @@ -/* Copyright 2021 thewerther - * - * 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 . - */ - -/** - * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs - * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) - #define ID67_DISABLE_UNDERGLOW -#endif diff --git a/keyboards/idobao/id67/keymaps/default_nug/keymap.c b/keyboards/idobao/id67/keymaps/default_nug/keymap.c deleted file mode 100644 index 30e71734a3..0000000000 --- a/keyboards/idobao/id67/keymaps/default_nug/keymap.c +++ /dev/null @@ -1,41 +0,0 @@ -/* Copyright 2021 Tybera - * Copyright 2022 thewerther - * - * 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 . - */ - -/** - * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs - * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM - */ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_65_ansi_blocker( - 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_BSPC, KC_TILD, - 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, KC_DEL, - 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_PGUP, - 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, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [1] = LAYOUT_65_ansi_blocker( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, RESET, RGB_SPI, RGB_SPD, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - -}; diff --git a/keyboards/idobao/id67/keymaps/thewerther/config.h b/keyboards/idobao/id67/keymaps/thewerther/config.h index 539e3bbb41..a63a92b171 100644 --- a/keyboards/idobao/id67/keymaps/thewerther/config.h +++ b/keyboards/idobao/id67/keymaps/thewerther/config.h @@ -20,9 +20,8 @@ #define TAPPING_TERM 500 #if defined(RGB_MATRIX_ENABLE) - #define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended #undef RGB_MATRIX_MAXIMUM_BRIGHTNESS - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 255 // limits maximum brightness of LEDs to 200 out of 255. If not defined maximum brightness is set to 255 // change saturation and hue step size #undef RGBLIGHT_HUE_STEP @@ -85,11 +84,11 @@ #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN -#if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + // #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE// Pulses keys hit to hue & value then fades value out #define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out -#endif // # if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + // #endif // # if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) #endif // # if defined(RGB_MATRIX_ENABLE) diff --git a/keyboards/idobao/id67/keymaps/via/config.h b/keyboards/idobao/id67/keymaps/via/config.h deleted file mode 100644 index 336ad1e585..0000000000 --- a/keyboards/idobao/id67/keymaps/via/config.h +++ /dev/null @@ -1,22 +0,0 @@ -/* Copyright 2021 Tybera - * Copyright 2022 thewerther - * - * 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 . - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) - #define VIA_QMK_RGBLIGHT_ENABLE -#endif diff --git a/keyboards/idobao/id67/keymaps/via_nug/config.h b/keyboards/idobao/id67/keymaps/via_nug/config.h deleted file mode 100644 index a2fa129b2e..0000000000 --- a/keyboards/idobao/id67/keymaps/via_nug/config.h +++ /dev/null @@ -1,27 +0,0 @@ -/* Copyright 2021 thewerther - * - * 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 . - */ - -/** - * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs - * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM - */ - -#pragma once - -#if defined(RGB_MATRIX_ENABLE) - #define VIA_QMK_RGBLIGHT_ENABLE - #define ID67_DISABLE_UNDERGLOW -#endif diff --git a/keyboards/idobao/id67/keymaps/via_nug/keymap.c b/keyboards/idobao/id67/keymaps/via_nug/keymap.c deleted file mode 100644 index b008f9d125..0000000000 --- a/keyboards/idobao/id67/keymaps/via_nug/keymap.c +++ /dev/null @@ -1,53 +0,0 @@ -/* Copyright 2021 Tybera - * - * 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 . - */ - -/** - * NB! THIS VARIANT DISABLES THE UNDERGLOW LEDs - * FOR BOARDS WITH A SOLID (NON-ACRILIC) BOTTOM - */ - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_65_ansi_blocker( - 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_BSPC, KC_TILD, - 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, KC_DEL, - 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_PGUP, - 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, KC_PGDN, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT - ), - [1] = LAYOUT_65_ansi_blocker( - KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [2] = LAYOUT_65_ansi_blocker( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [3] = LAYOUT_65_ansi_blocker( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), -}; diff --git a/keyboards/idobao/id67/keymaps/via_nug/rules.mk b/keyboards/idobao/id67/keymaps/via_nug/rules.mk deleted file mode 100644 index ca9fed0e6b..0000000000 --- a/keyboards/idobao/id67/keymaps/via_nug/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -LTO_ENABLE = yes -VIA_ENABLE = yes diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/config.h b/keyboards/idobao/id67/keymaps/vinorodrigues/config.h index 88fe361bde..92b3ec0658 100644 --- a/keyboards/idobao/id67/keymaps/vinorodrigues/config.h +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/config.h @@ -1,5 +1,5 @@ /* - * Idobao ID67 Keymap for a ID67 Bestype, built for Mac use + * IDOBAO ID67 Keymap for a ID67 Bestype, built for Mac use * Copyright (C) 2022 Vino Rodrigues * * This program is free software: you can redistribute it and/or modify @@ -16,6 +16,8 @@ * along with this program. If not, see . */ +#pragma once + #if defined(RGB_MATRIX_ENABLE) #define VIA_QMK_RGBLIGHT_ENABLE #define ID67_DISABLE_UNDERGLOW // personal choice, I use a ID67 Bestype @@ -23,9 +25,7 @@ #ifdef RGB_MATRIX_MAXIMUM_BRIGHTNESS #undef RGB_MATRIX_MAXIMUM_BRIGHTNESS #endif - #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // // limits maximum brightness of LEDs to 200 out of 255 - - //// #define RGB_DISABLE_WHEN_USB_SUSPENDED true // turn off effects when suspended + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 // limits maximum brightness of LEDs to x out of 255 //// #define RGB_MATRIX_KEYPRESSES @@ -46,7 +46,7 @@ //// #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN // Full gradient scrolling top to bottom //// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN // Full gradient scrolling out to in //// #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL // Full dual gradients scrolling out to in - //// #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradent Chevron shapped scrolling left to right + //// #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON // Full gradient Chevron shaped scrolling left to right //// #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL // Full gradient spinning pinwheel around center of keyboard //// #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL // Full gradient spinning spiral around center of keyboard //// #define ENABLE_RGB_MATRIX_DUAL_BEACON // Full gradient spinning around center of keyboard @@ -54,32 +54,33 @@ //// #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS // Full dual gradients spinning two halfs of keyboard //// #define ENABLE_RGB_MATRIX_RAINDROPS // Randomly changes a single key's hue //// #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS // Randomly changes a single key's hue and saturation - //// #define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight ammount at the same time, then shifts back - //// #define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight ammount in a wave to the right, then back to the left - //// #define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight ammount and then back down in a wave to the right + //// #define ENABLE_RGB_MATRIX_HUE_BREATHING // Hue shifts up a slight amount at the same time, then shifts back + //// #define ENABLE_RGB_MATRIX_HUE_PENDULUM // Hue shifts up a slight amount in a wave to the right, then back to the left + //// #define ENABLE_RGB_MATRIX_HUE_WAVE // Hue shifts up a slight amount and then back down in a wave to the right #undef ENABLE_RGB_MATRIX_PIXEL_RAIN #undef ENABLE_RGB_MATRIX_PIXEL_FLOW - #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL + //// #undef ENABLE_RGB_MATRIX_PIXEL_FRACTAL - #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) - //// #define ENABLE_RGB_MATRIX_TYPING_HEATMAP - //// #define ENABLE_RGB_MATRIX_DIGITAL_RAIN - #undef ENABLE_RGB_MATRIX_TYPING_HEATMAP - #endif + // don't need `#if`, animation modes themselves check defines + // #if defined(RGB_MATRIX_FRAMEBUFFER_EFFECTS) + //// #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + //// #define ENABLE_RGB_MATRIX_DIGITAL_RAIN + // #endif - #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Pulses keys hit to hue & value then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out - //// #define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out - //// #define ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out - //// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out - #endif + // don't need `#if`, animation modes themselves check defines + // #if defined(RGB_MATRIX_KEYPRESSES) || defined(RGB_MATRIX_KEYRELEASES) + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE // Pulses keys hit to hue & value then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE // Static single hue, pulses keys hit to shifted hue then fades to current hue + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE // Hue & value pulse near a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE // Hue & value pulse near multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS // Hue & value pulse the same column and row of a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS // Hue & value pulse the same column and row of multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS // Hue & value pulse away on the same column and row of a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS // Hue & value pulse away on the same column and row of multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SPLASH // Full gradient & value pulse away from a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_MULTISPLASH // Full gradient & value pulse away from multiple key hits then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_SPLASH // Hue & value pulse away from a single key hit then fades value out + //// #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH // Hue & value pulse away from multiple key hits then fades value out + // #endif #endif diff --git a/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c index 2a42295b97..c62db2c724 100644 --- a/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c +++ b/keyboards/idobao/id67/keymaps/vinorodrigues/keymap.c @@ -1,5 +1,5 @@ /* - * Idobao ID67 Keymap for a ID67 Bestype, built for Mac use + * IDOBAO ID67 Keymap for a ID67 Bestype, built for Mac use * Copyright (C) 2022 Vino Rodrigues * * This program is free software: you can redistribute it and/or modify @@ -20,10 +20,10 @@ #include "version.h" enum { - LAYER_0 = 0, - LAYER_1, - LAYER_2, - LAYER_3 + _BASE = 0, + _FN1, + _FN2, + _FN3 }; enum { @@ -37,32 +37,32 @@ enum macos_consumer_usages { _AC_SHOW_ALL_APPS = 0x2A0 // mapped to KC_LPAD }; -#define LT1_C_L LT(LAYER_1, KC_CAPS) +#define LT1_C_L LT(_FN1, KC_CAPS) #ifndef MIN #define MIN(a, b) (((a) < (b)) ? (a) : (b)) #endif const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [LAYER_0] = LAYOUT_65_ansi_blocker( + [_BASE] = LAYOUT_65_ansi_blocker( KC_GESC, 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_GRAVE, \ 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_BSLASH, KC_DELETE, \ LT1_C_L, 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_PGUP, \ 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, KC_PGDN, \ KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, FN_MO13, FN_MO23, KC_LEFT, KC_DOWN, KC_RIGHT), - [LAYER_1] = LAYOUT_65_ansi_blocker( + [_FN1] = LAYOUT_65_ansi_blocker( KC_GRAVE, 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_ERAS, KC_F13, \ _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_HOME, KC_END, KC_EJCT, KC_INS, \ KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, KC_PGDN, KC_PENT, KC_HOME, \ KC_RSFT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_DELETE, KC_LSFT, _______, KC_END, \ KC_RCTL, KC_RALT, KC_RGUI, _______, _______, _______, _______, _______, _______), - [LAYER_2] = LAYOUT_65_ansi_blocker( + [_FN2] = LAYOUT_65_ansi_blocker( KC_ESC, KC_BRID, KC_BRIU, KC_MCON, KC_LPAD, RGB_VAD, RGB_VAI, KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE, KC_VOLD, KC_VOLU, KC_OUT, KC_F14, \ RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, \ XXXXXXX, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_SAI, XXXXXXX, KC_SLCK, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUD, RGB_SAD, XXXXXXX, RGB_VAI, KC_PAUS, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SPD, RGB_VAD, RGB_SPI), - [LAYER_3] = LAYOUT_65_ansi_blocker( + [_FN3] = LAYOUT_65_ansi_blocker( RESET, MACRO01, MACRO02, MACRO03, MACRO04, MACRO05, MACRO06, MACRO07, MACRO08, MACRO09, MACRO10, MACRO11, MACRO12, KC_POWER, KC_F15, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_SLEP, XXXXXXX, \ XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, DEBUG, XXXXXXX, \ @@ -95,6 +95,8 @@ const uint8_t g_led_config_new_flags[DRIVER_LED_TOTAL] = { 0x21, 0x01, 0x04, 0x04, 0x04, 0x04, 0x24, 0x24, 0x24, 0x24, 0x04, 0x04, 0x04, 0x04, 0x21 // 123 row }; +#define ID67_CAPS_LOCK_KEY_INDEX 36 // position of Caps Lock key + bool isRGBOff = false; bool isCapsBlink = false; static uint16_t recording_timer; @@ -121,7 +123,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { if (host_keyboard_led_state().caps_lock) { if (isRGBOff) { - rgb_matrix_set_color(23, v, v, v); // white + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white } else { // Caps Lock key/LED if (timer_elapsed(recording_timer) > 500) { @@ -129,7 +131,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { recording_timer = timer_read(); } if (isCapsBlink) { - rgb_matrix_set_color(23, v, v, v); // white + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, v, v, v); // white } // Alpha keys/LEDs @@ -144,21 +146,21 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { uint8_t g = 0; uint8_t b = 0; - if ((g_led_config.flags[23] & LED_FLAG_LAYER_IND) != 0) { + if ((g_led_config.flags[ID67_CAPS_LOCK_KEY_INDEX] & LED_FLAG_LAYER_IND) != 0) { switch (current_layer) { - case LAYER_1: b = v; break; // blue - case LAYER_2: g = v; break; // green - case LAYER_3: r = v; break; // red + case _FN1: b = v; break; // blue + case _FN2: g = v; break; // green + case _FN3: r = v; break; // red } } - rgb_matrix_set_color(23, r, g, b); // off + rgb_matrix_set_color(ID67_CAPS_LOCK_KEY_INDEX, r, g, b); // off } // Layer indicator stuff switch (current_layer) { - case LAYER_1: + case _FN1: for (uint8_t i = led_min; i <= led_max; i++) { if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { rgb_matrix_set_color(i, 0, 0, v); // blue @@ -166,7 +168,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } break; - case LAYER_2: + case _FN2: for (uint8_t i = led_min; i <= led_max; i++) { if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { rgb_matrix_set_color(i, 0, v, 0); // green @@ -174,7 +176,7 @@ void rgb_matrix_indicators_advanced_user(uint8_t led_min, uint8_t led_max) { } break; - case LAYER_3: + case _FN3: for (uint8_t i = led_min; i <= led_max; i++) { if ((g_led_config.flags[i] & LED_FLAG_LAYER_IND) != 0) { rgb_matrix_set_color(i, v, 0, 0); // red diff --git a/keyboards/idobao/id67/post_rules.mk b/keyboards/idobao/id67/post_rules.mk new file mode 100644 index 0000000000..5eecdef4ce --- /dev/null +++ b/keyboards/idobao/id67/post_rules.mk @@ -0,0 +1,14 @@ +# Some ID67 variants (v1 base build & "Bestype") have a solid back plate, +# this enables switching off thoes LEDs +# Usage: `make idobao/id67:default UNDERGLOW=off` + +ifeq ($(findstring off,$(UNDERGLOW)), off) + $(info ** UNDERGLOW OFF) + OPT_DEFS += -DID67_DISABLE_UNDERGLOW +else ifeq ($(findstring no,$(UNDERGLOW)), no) + $(info ** NO UNDERGLOW) + OPT_DEFS += -DID67_DISABLE_UNDERGLOW +else ifeq ($(findstring 0,$(UNDERGLOW)), 0) + $(info ** Nil UNDERGLOW) + OPT_DEFS += -DID67_DISABLE_UNDERGLOW +endif diff --git a/keyboards/idobao/id67/readme.md b/keyboards/idobao/id67/readme.md index c061db8f03..b69e2e60b1 100644 --- a/keyboards/idobao/id67/readme.md +++ b/keyboards/idobao/id67/readme.md @@ -1,6 +1,6 @@ # IDOBAO ID67 -![id67](https://i.imgur.com/9roQ4Mih.jpeg) +![id67](https://idobao.github.io/assets/img/idobao-id67.png) A 65% hotswap keyboard from IDOBAO. @@ -9,14 +9,14 @@ A 65% hotswap keyboard from IDOBAO. * Keyboard Maintainer: Tybera *(fmr.)*, [thewerther](https://github.com/thewerther) *(curr.)* * Hardware Supported: IDOBAO ID67, ID67V2, ID67 Crystal & ID67 Bestype * Hardware Availability: IDOBAO website: -* [ID67](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) -* [ID67V2](https://idobao.net/collections/65-layout/products/idobao-id67v2-65-hot-swappable-mechanical-keyboard-kit) -* [ID67 Crystal](https://idobao.net/collections/65-layout/products/idobao-id67-crystal-keyboard-kit-gasket-mount-version) -* [ID67 Bestype](https://idobao.net/collections/65-layout/products/idobao-id67-bestype-keyboard-kit-aluminum-with-brass-weight) + * [ID67](https://www.idobao.net/products/idobao-id67-65-hot-swappable-mechanical-keyboard-kit-1) + * [ID67V2](https://idobao.net/products/idobao-id67v2-65-hot-swappable-mechanical-keyboard-kit) + * [ID67 Crystal](https://idobao.net/products/idobao-id67-crystal-keyboard-kit-gasket-mount-version) + * [ID67 Bestype](https://idobao.net/products/idobao-id67-bestype-keyboard-kit-aluminum-with-brass-weight) ## Layout -![ID67 layout](https://i.imgur.com/Ge6Uxao.png) +![ID67 layout](https://idobao.github.io/kle/idobao-id67.png) ## Compiling and flashing diff --git a/keyboards/idobao/id67/rules.mk b/keyboards/idobao/id67/rules.mk index cda7bbd9cd..729e1ca67c 100644 --- a/keyboards/idobao/id67/rules.mk +++ b/keyboards/idobao/id67/rules.mk @@ -16,10 +16,6 @@ NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output - RGB_MATRIX_ENABLE = yes # Enable RGB Matrix feature RGB_MATRIX_DRIVER = WS2812 # ID67 uses WS2812 driver - -KEY_LOCK_ENABLE = yes # Enable KC_LOCK support -LTO_ENABLE = yes LAYOUTS = 65_ansi_blocker From ffa1b37634418a4928e7d2b64cb08f31512dcedf Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Thu, 12 May 2022 11:47:41 +0700 Subject: [PATCH 386/699] [Keyboard] Add Black E6.5 keyboard (#16807) --- .../chinese_pcb/black_e65/black_e65.c | 17 + .../chinese_pcb/black_e65/black_e65.h | 858 ++++++ .../chinese_pcb/black_e65/config.h | 76 + .../chinese_pcb/black_e65/info.json | 2346 +++++++++++++++++ .../black_e65/keymaps/default/keymap.c | 87 + .../black_e65/keymaps/default/readme.md | 3 + .../black_e65/keymaps/via/config.h | 19 + .../black_e65/keymaps/via/keymap.c | 87 + .../black_e65/keymaps/via/readme.md | 3 + .../black_e65/keymaps/via/rules.mk | 2 + .../chinese_pcb/black_e65/readme.md | 24 + .../chinese_pcb/black_e65/rules.mk | 18 + keyboards/horrortroll/chinese_pcb/readme.md | 11 +- keyboards/horrortroll/readme.md | 13 +- 14 files changed, 3558 insertions(+), 6 deletions(-) create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/black_e65.c create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/black_e65.h create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/config.h create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/info.json create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/keymap.c create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/readme.md create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/config.h create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/keymap.c create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/readme.md create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/rules.mk create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/readme.md create mode 100644 keyboards/horrortroll/chinese_pcb/black_e65/rules.mk diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.c b/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.c new file mode 100644 index 0000000000..968d0da903 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.c @@ -0,0 +1,17 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#include "black_e65.h" diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.h b/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.h new file mode 100644 index 0000000000..a28f3fed2b --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/black_e65.h @@ -0,0 +1,858 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + */ + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_all_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_noblocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_iso_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_iso_noblocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │ │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_all_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │ │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │ │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_blocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │ │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │48 │49 │ │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_blocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │46 │48 │4A │4B │4C │4D │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_all_7u_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │46 │48 │4A │4B │4C │4D │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │46 │48 │4A │4B │4C │4D │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_noblocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │46 │48 │4A │4B │4C │4D │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_noblocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴──┬───┼───┼───┤ + * │40 │41 │46 │48 │4A │4B │4C │4D │ + * └─────┴─────┴───────────────────────────┴─────┴─────┴───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_noblocker_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K4A, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, XXX, K4A, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │ │4B │4C │4D │ + * └─────┴───┴─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_all_7u_wk( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │ │4B │4C │4D │ + * └─────┴───┴─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_wk( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │ │4B │4C │4D │ + * └─────┴───┴─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_wk_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │ │4B │4C │4D │ + * └─────┴───┴─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_wk( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │41 │42 │46 │49 │ │4B │4C │4D │ + * └─────┴───┴─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_wk_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │ │42 │46 │49 │ │4B │4C │4D │ + * └─────┘ └─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_all_7u_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, XXX, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │ │42 │46 │49 │ │4B │4C │4D │ + * └─────┘ └─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, XXX, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │ │42 │46 │49 │ │4B │4C │4D │ + * └─────┘ └─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_wkl_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, XXX, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │ │42 │46 │49 │ │4B │4C │4D │ + * └─────┘ └─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_wkl( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, XXX, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬─┬───┼───┼───┤ + * │40 │ │42 │46 │49 │ │4B │4C │4D │ + * └─────┘ └─────┴───────────────────────────┴─────┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_wkl_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K42, K46, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, XXX, K42, XXX, XXX, XXX, K46, XXX, XXX, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └─┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─┬───┼───┼───┤ + * │40 │41 │46 │48 │49 │ │4B │4C │4D │ + * └───┴─────┴───────────────────────────┴─────┴───┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_all_7u_hhkb( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └─┬───┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─┬───┼───┼───┤ + * │40 │41 │46 │48 │49 │ │4B │4C │4D │ + * └───┴─────┴───────────────────────────┴─────┴───┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_hhkb( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │2C │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │1D │2E │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + * │30 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └─┬───┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─┬───┼───┼───┤ + * │40 │41 │46 │48 │49 │ │4B │4C │4D │ + * └───┴─────┴───────────────────────────┴─────┴───┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_ansi_7u_hhkb_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K2C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K1D, K2E, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └─┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─┬───┼───┼───┤ + * │40 │41 │46 │48 │49 │ │4B │4C │4D │ + * └───┴─────┴───────────────────────────┴─────┴───┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_hhkb( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, XXX, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │4E │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │ │1E │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐1D ├───┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │ │2E │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │3E │ + * └─┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬──┴┬─┬───┼───┼───┤ + * │40 │41 │46 │48 │49 │ │4B │4C │4D │ + * └───┴─────┴───────────────────────────┴─────┴───┘ └───┴───┴───┘ + */ + +#define LAYOUT_65_iso_7u_hhkb_splitbs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K4E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1E, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2E, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E, \ + K40, K41, K46, K48, K49, K4B, K4C, K4D \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, XXX, XXX, XXX, XXX, K46, XXX, K48, K49, XXX, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/config.h b/keyboards/horrortroll/chinese_pcb/black_e65/config.h new file mode 100644 index 0000000000..c3b5ff75a5 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/config.h @@ -0,0 +1,76 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x7516 +#define PRODUCT_ID 0x6003 +#define DEVICE_VER 0x0001 +#define MANUFACTURER HorrorTroll +#define PRODUCT Black E6.5 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B0, B1, B2, B3, B7 } +#define MATRIX_COL_PINS { D0, D1, D2, D3, D5, D4, D6, D7, B4, F7, F6, F5, F4, F1, F0 } + +#define BOOTMAGIC_LITE_ROW 3 +#define BOOTMAGIC_LITE_COLUMN 6 + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION ROW2COL + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* Forcing to use NKRO instead 6KRO */ +#define FORCE_NKRO + +/* Change larger keys per scan for elite gaming */ +#define QMK_KEYS_PER_SCAN 12 + +/* LED Indicator */ +#define LED_CAPS_LOCK_PIN C7 + +#ifdef BACKLIGHT_ENABLE + /* Backlight config */ + #define BACKLIGHT_PIN B6 + #define BACKLIGHT_LEVELS 6 +#endif + +#ifdef RGBLIGHT_ENABLE + /* RGB Lighting config */ + #define RGB_DI_PIN E2 + #define RGBLED_NUM 24 + + /* RGB Lighting effect */ + #define RGBLIGHT_EFFECT_BREATHING + #define RGBLIGHT_EFFECT_RAINBOW_MOOD + #define RGBLIGHT_EFFECT_RAINBOW_SWIRL + #define RGBLIGHT_EFFECT_SNAKE + #define RGBLIGHT_EFFECT_KNIGHT + #define RGBLIGHT_EFFECT_CHRISTMAS + #define RGBLIGHT_EFFECT_STATIC_GRADIENT + #define RGBLIGHT_EFFECT_RGB_TEST + #define RGBLIGHT_EFFECT_ALTERNATING + #define RGBLIGHT_EFFECT_TWINKLE +#endif diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/info.json b/keyboards/horrortroll/chinese_pcb/black_e65/info.json new file mode 100644 index 0000000000..1b6c9ce006 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/info.json @@ -0,0 +1,2346 @@ +{ + "keyboard_name": "Devil68 Pro", + "url": "", + "maintainer": "HorrorTroll", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4}, + {"label":"Fn", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_noblocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_noblocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Fn", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Fn", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_blocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Fn", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Fn", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_blocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4, "w":1.25}, + {"label":"Fn", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_7u_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_noblocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_noblocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_noblocker_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Ctrl", "x":11.5, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_7u_wk": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "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}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_wk": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "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}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_wk_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "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}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_wk": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "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}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_wk_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "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}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_7u_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_wkl_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_wkl": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_wkl_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Fn", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_all_7u_hhkb": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0.5, "y":4}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Fn", "x":11.5, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_hhkb": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0.5, "y":4}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Fn", "x":11.5, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_ansi_7u_hhkb_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"PgDn", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0.5, "y":4}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Fn", "x":11.5, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_hhkb": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0.5, "y":4}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Fn", "x":11.5, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + "LAYOUT_65_iso_7u_hhkb_splitbs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"`~", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"PgUp", "x":15, "y":1}, + + {"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":"ISO Hash", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"Shift", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"Fn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0.5, "y":4}, + {"label":"Win", "x":1.5, "y":4, "w":1.5}, + {"label":"Space", "x":3, "y":4, "w":7}, + {"label":"Alt", "x":10, "y":4, "w":1.5}, + {"label":"Fn", "x":11.5, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + } + } +} diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/keymap.c b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/keymap.c new file mode 100644 index 0000000000..0f838488ef --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/keymap.c @@ -0,0 +1,87 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ ` │Bks│Del│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │PgU│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │PgD│ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │LSft│LSt│ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │ ↑ │Fn │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │LCrl│GUI │LAlt│ Space │RAt│Fn │RCl│ ← │ ↓ │ → │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ ~ │ │ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ │ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │LSft│LSt│ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSft │ │ │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_BASE] = LAYOUT_all( + 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_GRV, 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, KC_PGUP, + 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_PGDN, + KC_LSFT, 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL + ), + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │Rst│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ │ │PSc│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │RTog │Mod│Hui│Hud│Sai│Sad│Vai│Vad│ │ │ │ │ │ │Hom│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │BTog │BTg│Dec│Inc│Ste│ │ │ │ │ │ │ │ │End│ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_FN] = LAYOUT_all( + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_HOME, + BL_TOGG, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR + ), +}; diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/readme.md b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/readme.md new file mode 100644 index 0000000000..820d3551c3 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# Default Layout + +Keymap is default 68 qwerty, 65% layout diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/config.h b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/config.h new file mode 100644 index 0000000000..6e5965cd67 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/config.h @@ -0,0 +1,19 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/keymap.c b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/keymap.c new file mode 100644 index 0000000000..0f838488ef --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/keymap.c @@ -0,0 +1,87 @@ +/* Copyright 2021 HorrorTroll + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ ` │Bks│Del│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │PgU│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │PgD│ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │LSft│LSt│ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │ RSft │ ↑ │Fn │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │LCrl│GUI │LAlt│ Space │RAt│Fn │RCl│ ← │ ↓ │ → │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ ~ │ │ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ │ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │LSft│LSt│ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │ RSft │ │ │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_BASE] = LAYOUT_all( + 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_GRV, 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, KC_PGUP, + 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_PGDN, + KC_LSFT, 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(_FN), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_DEL + ), + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ + │Rst│F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ │ │PSc│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ + │RTog │Mod│Hui│Hud│Sai│Sad│Vai│Vad│ │ │ │ │ │ │Hom│ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ + │BTog │BTg│Dec│Inc│Ste│ │ │ │ │ │ │ │ │End│ + ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ + ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ + [_FN] = LAYOUT_all( + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_HOME, + BL_TOGG, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR + ), +}; diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/readme.md b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/readme.md new file mode 100644 index 0000000000..b0407cd266 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/readme.md @@ -0,0 +1,3 @@ +# Default Layout with VIA + +Keymap is default 68 qwerty, 65% multi-layout diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/rules.mk b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/readme.md b/keyboards/horrortroll/chinese_pcb/black_e65/readme.md new file mode 100644 index 0000000000..2a08ee20f3 --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/readme.md @@ -0,0 +1,24 @@ +# Black E6.5 + +A chinese PCB clone of Exclusive E6.5. + +* Keyboard Maintainer: [HorrorTroll](https://github.com/HorrorTroll) +* Hardware Supported: Atmega32u4 + +Make example for this keyboard (after setting up your build environment): + + make horrortroll/chinese_pcb/black_e65:default + +Flashing example for this keyboard: + + make horrortroll/chinese_pcb/black_e65:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (3,6) in the matrix (B key) and plug in the keyboard +* **Physical reset button**: Press and hold the button on the back of the PCB, then plug in the keyboard +* **Keycode in layout**: Press the key mapped to RESET if it is available diff --git a/keyboards/horrortroll/chinese_pcb/black_e65/rules.mk b/keyboards/horrortroll/chinese_pcb/black_e65/rules.mk new file mode 100644 index 0000000000..38f81fd4dc --- /dev/null +++ b/keyboards/horrortroll/chinese_pcb/black_e65/rules.mk @@ -0,0 +1,18 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = atmel-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output diff --git a/keyboards/horrortroll/chinese_pcb/readme.md b/keyboards/horrortroll/chinese_pcb/readme.md index 3aa0ce6195..3ed2a7c71b 100644 --- a/keyboards/horrortroll/chinese_pcb/readme.md +++ b/keyboards/horrortroll/chinese_pcb/readme.md @@ -6,9 +6,10 @@ This is a folder for collection code of Chinese PCB, where they only sold one-ti
Click to expand! - | Keyboard name | MCU | Layout | Hotswap | LED | OLED | Other | - | ------------- | ------------- | ------------- | ------- | ---- | ---- | ----- | - | Devil68 Pro | Atmega32U4 | 68 Keys (65%) | Yes | RGB | No | No | - | M63 RGB | STM32F072CBU6 | 63 Keys (60%) | Yes | RGB | No | No | - | | | | | | | | + | Keyboard name | MCU | Layout | Hotswap | LED | OLED | Other | + | ------------- | ------------- | ------------- | ------- | ------------------------ | ---- | ----- | + | Black E6.5 | Atmega32U4 | 68 Keys (65%) | No | Backlight & RGB Lighting | No | No | + | Devil68 Pro | Atmega32U4 | 68 Keys (65%) | Yes | RGB Matrix | No | No | + | M63 RGB | STM32F072CBU6 | 63 Keys (60%) | Yes | RGB Matrix | No | No | + | | | | | | | |
diff --git a/keyboards/horrortroll/readme.md b/keyboards/horrortroll/readme.md index 0cef793ef9..da9ab0ae2f 100644 --- a/keyboards/horrortroll/readme.md +++ b/keyboards/horrortroll/readme.md @@ -2,7 +2,18 @@ In here, you can find: - Chinese PCB that doesn't have source code (lost contact of Maker, can't found on Taobao, ... etc) -- My keyboard (ETA on future) +- My keyboard + +## List for my keyboard in here: +
+ Click to expand! + + | Keyboard name | MCU | Layout | Hotswap | LED | OLED | Other | + | -------------- | ------------- | ------------- | ------- | ------------ | ---- | ----- | + | Handwired K552 | STM32F103RCT6 | 87 Keys (TKL) | Yes | RGB Lighting | Yes | No | + | Paws 60 | Atmega32U4 | 68 Keys (65%) | Yes | No | No | No | + | | | | | | | | +
## Contact me if you have any problem From 4d1332b62c53282631aa8d24fee1105c6322352a Mon Sep 17 00:00:00 2001 From: JX <572673807@qq.com> Date: Thu, 12 May 2022 12:48:47 +0800 Subject: [PATCH 387/699] [Keyboard] Cleanup zhou65 and add nz64 keyboard (#17032) Co-authored-by: Drashna Jaelre --- keyboards/yandrstudio/info.json | 8 ++ keyboards/yandrstudio/nz64/board.h | 21 +++ keyboards/yandrstudio/nz64/config.h | 122 ++++++++++++++++++ keyboards/yandrstudio/nz64/halconf.h | 21 +++ keyboards/yandrstudio/nz64/info.json | 13 ++ .../yandrstudio/nz64/keymaps/default/keymap.c | 32 +++++ .../yandrstudio/nz64/keymaps/via/keymap.c | 44 +++++++ .../yandrstudio/nz64/keymaps/via/rules.mk | 1 + keyboards/yandrstudio/nz64/mcuconf.h | 36 ++++++ keyboards/yandrstudio/nz64/nz64.c | 109 ++++++++++++++++ keyboards/yandrstudio/nz64/nz64.h | 40 ++++++ keyboards/yandrstudio/nz64/readme.md | 22 ++++ keyboards/yandrstudio/nz64/rules.mk | 21 +++ keyboards/yandrstudio/zhou65/board.h | 2 +- keyboards/yandrstudio/zhou65/config.h | 2 - keyboards/yandrstudio/zhou65/info.json | 13 +- .../zhou65/keymaps/default/keymap.c | 2 +- .../yandrstudio/zhou65/keymaps/via/keymap.c | 8 +- keyboards/yandrstudio/zhou65/mcuconf.h | 59 +-------- keyboards/yandrstudio/zhou65/readme.md | 2 +- 20 files changed, 510 insertions(+), 68 deletions(-) create mode 100644 keyboards/yandrstudio/info.json create mode 100644 keyboards/yandrstudio/nz64/board.h create mode 100644 keyboards/yandrstudio/nz64/config.h create mode 100644 keyboards/yandrstudio/nz64/halconf.h create mode 100644 keyboards/yandrstudio/nz64/info.json create mode 100644 keyboards/yandrstudio/nz64/keymaps/default/keymap.c create mode 100644 keyboards/yandrstudio/nz64/keymaps/via/keymap.c create mode 100644 keyboards/yandrstudio/nz64/keymaps/via/rules.mk create mode 100644 keyboards/yandrstudio/nz64/mcuconf.h create mode 100644 keyboards/yandrstudio/nz64/nz64.c create mode 100644 keyboards/yandrstudio/nz64/nz64.h create mode 100644 keyboards/yandrstudio/nz64/readme.md create mode 100644 keyboards/yandrstudio/nz64/rules.mk diff --git a/keyboards/yandrstudio/info.json b/keyboards/yandrstudio/info.json new file mode 100644 index 0000000000..2d4293ea31 --- /dev/null +++ b/keyboards/yandrstudio/info.json @@ -0,0 +1,8 @@ +{ + "url": "https://github.com/Oh-My-Mechanical-Keyboard", + "maintainer": "Jason Ren (biu)", + "manufacturer": "Y&R", + "usb": { + "vid": "0xAA96" + } +} diff --git a/keyboards/yandrstudio/nz64/board.h b/keyboards/yandrstudio/nz64/board.h new file mode 100644 index 0000000000..8a068cd883 --- /dev/null +++ b/keyboards/yandrstudio/nz64/board.h @@ -0,0 +1,21 @@ +/* Copyright 2020 Nick Brassel (tzarc) + * + * 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 3 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 . + */ +#pragma once + +#include_next "board.h" + +#undef STM32_HSECLK +#define STM32_HSECLK 16000000 diff --git a/keyboards/yandrstudio/nz64/config.h b/keyboards/yandrstudio/nz64/config.h new file mode 100644 index 0000000000..5ef9ef1ece --- /dev/null +++ b/keyboards/yandrstudio/nz64/config.h @@ -0,0 +1,122 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0xAA96 +#define PRODUCT_ID 0xAAAF +#define DEVICE_VER 0x0001 +#define MANUFACTURER Y&R +#define PRODUCT nz64 + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 +#define MATRIX_COL_PINS { A15, B3, B4, B6, B7, B5, C13, A5, A4, B14, B15, A8, A9, A10 } +#define MATRIX_ROW_PINS { C14, B13, B12, C15, A3 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Fix VIA RGB_light */ +#define VIA_HAS_BROKEN_KEYCODES + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + + +/* RGN Matrix */ +#ifdef RGB_MATRIX_ENABLE +# define RGB_DI_PIN A7 +# define RGBLED_NUM 82 +# define DRIVER_LED_TOTAL RGBLED_NUM + +# define WS2812_PWM_DRIVER PWMD3 // default: PWMD2 +# define WS2812_PWM_CHANNEL 2 // default: 2 +# define WS2812_PWM_PAL_MODE 2 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2 +# define WS2812_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +# define WS2812_DMA_CHANNEL 5 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. + + +# define RGB_MATRIX_MAXIMUM_BRIGHTNESS 180 +# define RGBLIGHT_VAL_STEP 18 +# define RGB_DISABLE_WHEN_USB_SUSPENDED true +# define RGB_MATRIX_CENTER { 96, 32 } +# define RGB_MATRIX_KEYPRESSES +# define RGB_MATRIX_FRAMEBUFFER_EFFECTS + +# define ENABLE_RGB_MATRIX_ALPHAS_MODS +# define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN +# define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_BREATHING +# define ENABLE_RGB_MATRIX_BAND_SAT +# define ENABLE_RGB_MATRIX_BAND_VAL +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT +# define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT +# define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL +# define ENABLE_RGB_MATRIX_CYCLE_ALL +# define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT +# define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN +# define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN +# define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL +# define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL +# define ENABLE_RGB_MATRIX_CYCLE_SPIRAL +# define ENABLE_RGB_MATRIX_DUAL_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_BEACON +# define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS +# define ENABLE_RGB_MATRIX_RAINDROPS +# define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS +# define ENABLE_RGB_MATRIX_HUE_BREATHING +# define ENABLE_RGB_MATRIX_HUE_PENDULUM +# define ENABLE_RGB_MATRIX_HUE_WAVE +# define ENABLE_RGB_MATRIX_PIXEL_RAIN +# define ENABLE_RGB_MATRIX_PIXEL_FLOW +# define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +/* enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined */ +# define ENABLE_RGB_MATRIX_TYPING_HEATMAP +# define ENABLE_RGB_MATRIX_DIGITAL_RAIN +/* enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined */ +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS +# define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS +# define ENABLE_RGB_MATRIX_SPLASH +# define ENABLE_RGB_MATRIX_MULTISPLASH +# define ENABLE_RGB_MATRIX_SOLID_SPLASH +# define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH + +#endif + + +#ifdef RGBLIGHT_ENABLE +# define RGB_DI_PIN A7 +# define RGBLED_NUM 82 +# define DRIVER_LED_TOTAL RGBLED_NUM + +# define WS2812_PWM_DRIVER PWMD3 // default: PWMD2 +# define WS2812_PWM_CHANNEL 2 // default: 2 +# define WS2812_PWM_PAL_MODE 2 // Pin "alternate function", see the respective datasheet for the appropriate values for your MCU. default: 2 +# define WS2812_DMA_STREAM STM32_DMA1_STREAM2 // DMA Stream for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +# define WS2812_DMA_CHANNEL 5 // DMA Channel for TIMx_UP, see the respective reference manual for the appropriate values for your MCU. +#endif diff --git a/keyboards/yandrstudio/nz64/halconf.h b/keyboards/yandrstudio/nz64/halconf.h new file mode 100644 index 0000000000..1e6019b97f --- /dev/null +++ b/keyboards/yandrstudio/nz64/halconf.h @@ -0,0 +1,21 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once +#include_next + +#undef HAL_USE_PWM +#define HAL_USE_PWM TRUE diff --git a/keyboards/yandrstudio/nz64/info.json b/keyboards/yandrstudio/nz64/info.json new file mode 100644 index 0000000000..3275ac6f6e --- /dev/null +++ b/keyboards/yandrstudio/nz64/info.json @@ -0,0 +1,13 @@ +{ + "keyboard_name": "nz64", + "processor": "STM32F401", + "usb": { + "pid": "0xAAAF", + "device_version": "1.0.0" + }, + "layouts": { + "LAYOUT": { + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0, "w":2}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":0, "y":3, "w":2}, {"x":2, "y":3}, {"x":3, "y":3}, {"x":4, "y":3}, {"x":5, "y":3}, {"x":6, "y":3}, {"x":7, "y":3}, {"x":8, "y":3}, {"x":9, "y":3}, {"x":10, "y":3}, {"x":11, "y":3}, {"x":12, "y":3}, {"x":13, "y":3}, {"x":14, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4}, {"x":11, "y":4}, {"x":12, "y":4}, {"x":13, "y":4}, {"x":14, "y":4}] + } + } +} diff --git a/keyboards/yandrstudio/nz64/keymaps/default/keymap.c b/keyboards/yandrstudio/nz64/keymaps/default/keymap.c new file mode 100644 index 0000000000..1ff72b568b --- /dev/null +++ b/keyboards/yandrstudio/nz64/keymaps/default/keymap.c @@ -0,0 +1,32 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_GESC, 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, + 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, KC_UP, KC_DELETE, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT), + [1] = LAYOUT( + KC_GRV , 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_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, URGB_K, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, LOCK_GUI, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_VAI, RGB_VAD, 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) +}; diff --git a/keyboards/yandrstudio/nz64/keymaps/via/keymap.c b/keyboards/yandrstudio/nz64/keymaps/via/keymap.c new file mode 100644 index 0000000000..195a39ff39 --- /dev/null +++ b/keyboards/yandrstudio/nz64/keymaps/via/keymap.c @@ -0,0 +1,44 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#include QMK_KEYBOARD_H + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT( + KC_GESC, 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, + 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, KC_UP, KC_DELETE, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT), + [1] = LAYOUT( + KC_GRV , 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_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, URGB_K, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, LOCK_GUI, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_VAI, RGB_VAD, 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), + [2] = LAYOUT( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, 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), + [3] = LAYOUT( + 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, RGB_TOG, 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) +}; diff --git a/keyboards/yandrstudio/nz64/keymaps/via/rules.mk b/keyboards/yandrstudio/nz64/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/yandrstudio/nz64/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/yandrstudio/nz64/mcuconf.h b/keyboards/yandrstudio/nz64/mcuconf.h new file mode 100644 index 0000000000..f3222bcfcc --- /dev/null +++ b/keyboards/yandrstudio/nz64/mcuconf.h @@ -0,0 +1,36 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE + +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE + +#define STM32_PLLM_VALUE (STM32_HSECLK/1000000) +#define STM32_PLLN_VALUE 192 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 4 + + + + diff --git a/keyboards/yandrstudio/nz64/nz64.c b/keyboards/yandrstudio/nz64/nz64.c new file mode 100644 index 0000000000..9945dec04e --- /dev/null +++ b/keyboards/yandrstudio/nz64/nz64.c @@ -0,0 +1,109 @@ +/* Copyright 2021 JasonRen(biu) + * + * 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 . + */ +#include "nz64.h" + +#ifdef RGB_MATRIX_ENABLE + +typedef union { + uint32_t raw; + uint8_t underground_rgb_sw :8; +} kb_cums_t; +kb_cums_t kb_cums; + +led_config_t g_led_config = { + { + { 65, 64, 63, 62, 61, 60, 59, 58, 57, 56, 55, 54, 53, 52 }, + { 51, 50, 49, 48, 47, 46, 45, 44, 43, 42, 41, 40, 39, 38 }, + { 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27, 26, NO_LED, 25 }, + { 24, 23, 22, 21, 20, 19, 18, 17, 16, 15, 14, 13, 12, 11 }, + { 10, 9, 8, NO_LED, NO_LED, 6, NO_LED, NO_LED, NO_LED, 4, 3, 2, 1, 0 } + }, + { + /* LED Index to Physical Position */ + {224,64},{207,64},{190,64},{172,64},{155,64}, {121,64}, {86,64}, {52,64}, {34,64},{17,64},{0,64}, + {224,48},{207,48},{190,48},{172,48},{155,48},{138,48},{121,48},{103,48},{86,48},{69,48},{52,48},{34,48},{17,48},{0,48}, + {224,32},{190,32},{172,32},{155,32},{138,32},{121,32},{103,32},{86,32},{69,32},{52,32},{34,32},{17,32},{0,32}, + {224,16},{207,16},{190,16},{172,16},{155,16},{138,16},{121,16},{103,16},{86,16},{69,16},{52,16},{34,16},{17,16},{0,16}, + {224,0},{207,0},{190,0},{172,0},{155,0},{138,0},{121,0},{103,0},{86,0},{69,0},{52,0},{34,0},{17,0},{0,0}, + {0,0},{37,0},{75,0},{112,0},{149,0},{187,0},{224,0}, + {0,32}, + {224,64},{187,64},{149,64},{112,64},{75,64},{37,64},{0,64}, + {224,32} + }, + { + /* LED Index to Flag */ + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4,4,4,4,4, + 4,4,4,4,4, 4, + 2,2,2,2,2, 2,2,2,2,2, + 2,2,2,2,2, 2 + } +}; + +void rgb_matrix_indicators_advanced_kb(uint8_t led_min, uint8_t led_max) { + if (rgb_matrix_is_enabled()) { + if (kb_cums.underground_rgb_sw == 1) { + for (uint8_t i = led_min; i < led_max; ++i) { + if ((g_led_config.flags[i] == 4)) { + rgb_matrix_set_color(i, 0, 0, 0); + } + } + } else if (kb_cums.underground_rgb_sw == 2) { + for (uint8_t i = led_min; i < led_max; ++i) { + if ((g_led_config.flags[i] == 2)) { + rgb_matrix_set_color(i, 0, 0, 0); + } + } + } + } else { + rgb_matrix_set_color_all(0,0,0); + } +} + +void eeconfig_init_kb(void) { + kb_cums.raw = 0; + eeconfig_update_kb(kb_cums.raw); +} + +void keyboard_post_init_kb(void) { + kb_cums.underground_rgb_sw = eeconfig_read_kb(); +} + +#endif + +bool process_record_kb(uint16_t keycode, keyrecord_t *record) { + switch(keycode) { +#ifdef RGB_MATRIX_ENABLE + case URGB_K: + if (rgb_matrix_config.enable && record->event.pressed) { + kb_cums.underground_rgb_sw += 1; + kb_cums.underground_rgb_sw %= 3; + } + eeconfig_update_kb(kb_cums.raw); + return false; +#endif + case LOCK_GUI: + process_magic(GUI_TOG, record); + return false; + default: + return true; + } + return true; +} diff --git a/keyboards/yandrstudio/nz64/nz64.h b/keyboards/yandrstudio/nz64/nz64.h new file mode 100644 index 0000000000..fd28481d55 --- /dev/null +++ b/keyboards/yandrstudio/nz64/nz64.h @@ -0,0 +1,40 @@ +/* Copyright 2020 zvecr + * + * 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 . + */ +#pragma once + +#include "quantum.h" + +#define LAYOUT( \ + K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013, \ + K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113, \ + K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, K213, \ + K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313, \ + K400, K401, K402, K405, K409, K410, K411, K412, K413 \ +) { \ + { K000, K001, K002, K003, K004, K005, K006, K007, K008, K009, K010, K011, K012, K013 }, \ + { K100, K101, K102, K103, K104, K105, K106, K107, K108, K109, K110, K111, K112, K113 }, \ + { K200, K201, K202, K203, K204, K205, K206, K207, K208, K209, K210, K211, KC_NO, K213 }, \ + { K300, K301, K302, K303, K304, K305, K306, K307, K308, K309, K310, K311, K312, K313 }, \ + { K400, K401, K402, KC_NO, KC_NO, K405, KC_NO, KC_NO, KC_NO, K409, K410, K411, K412, K413 } \ +} + +#ifdef RGB_MATRIX_ENABLE +#define URGB_K KC_F24 +#else +#define URGB_K KC_TRNS +#endif + +#define LOCK_GUI KC_F23 diff --git a/keyboards/yandrstudio/nz64/readme.md b/keyboards/yandrstudio/nz64/readme.md new file mode 100644 index 0000000000..ca52d65ee9 --- /dev/null +++ b/keyboards/yandrstudio/nz64/readme.md @@ -0,0 +1,22 @@ +# nz64 + +A 64 keys keyboard with rgb (keys). +This keyboard use 16mhz HSE and STM32F401 as MCU. + +- Keyboard Maintainer: https://github.com/jiaxin96 +- Hardware Supported: nz64 +- Hardware Availability: https://github.com/Oh-My-Mechanical-Keyboard + +Make example for this keyboard (after setting up your build environment): + + make yandrstudio/nz64:default + +See [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) then the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key which is Escape in this keyboard) and plug in the keyboard +* **Physical reset pins**: Short circuit the `bt0` and `vcc` pins on the back of the PCB and plug in the keyboard +* **Keycode in layout**: Press the key mapped to `RESET` if it is available. diff --git a/keyboards/yandrstudio/nz64/rules.mk b/keyboards/yandrstudio/nz64/rules.mk new file mode 100644 index 0000000000..298305d3f9 --- /dev/null +++ b/keyboards/yandrstudio/nz64/rules.mk @@ -0,0 +1,21 @@ +# MCU name +MCU = STM32F401 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +RGB_MATRIX_ENABLE = yes # Enable keyboard RGB matrix (do not use together with RGBLIGHT_ENABLE) +RGB_MATRIX_DRIVER = WS2812 # RGB matrix driver support +WS2812_DRIVER = pwm # Driver for RGB diff --git a/keyboards/yandrstudio/zhou65/board.h b/keyboards/yandrstudio/zhou65/board.h index 80dd97ed57..8a068cd883 100644 --- a/keyboards/yandrstudio/zhou65/board.h +++ b/keyboards/yandrstudio/zhou65/board.h @@ -18,4 +18,4 @@ #include_next "board.h" #undef STM32_HSECLK -#define STM32_HSECLK 8000000 +#define STM32_HSECLK 16000000 diff --git a/keyboards/yandrstudio/zhou65/config.h b/keyboards/yandrstudio/zhou65/config.h index f4d8199e13..3dbfd3b436 100644 --- a/keyboards/yandrstudio/zhou65/config.h +++ b/keyboards/yandrstudio/zhou65/config.h @@ -43,5 +43,3 @@ /* Set 0 if debouncing isn't needed */ #define DEBOUNCE 5 - -#define QMK_KEYS_PER_SCAN 4 diff --git a/keyboards/yandrstudio/zhou65/info.json b/keyboards/yandrstudio/zhou65/info.json index 640fb7ad68..26fc92799a 100644 --- a/keyboards/yandrstudio/zhou65/info.json +++ b/keyboards/yandrstudio/zhou65/info.json @@ -1,10 +1,13 @@ { - "keyboard_name": "zhou65", - "url": "https://github.com/Oh-My-Mechanical-Keyboard ", - "maintainer": "Jason Ren (biu)", + "keyboard_name": "zhou65", + "processor": "STM32F401", + "usb": { + "pid": "0xAAAD", + "device_version": "1.0.0" + }, "layouts": { "LAYOUT": { - "layout": [{"label":"0,0", "x":0, "y":0}, {"label":"0,1", "x":1, "y":0}, {"label":"0,2", "x":2, "y":0}, {"label":"0,3", "x":3, "y":0}, {"label":"0,4", "x":4, "y":0}, {"label":"0,5", "x":5, "y":0}, {"label":"0,6", "x":6, "y":0}, {"label":"0,7", "x":7, "y":0}, {"label":"0,8", "x":8, "y":0}, {"label":"0,9", "x":9, "y":0}, {"label":"0,10", "x":10, "y":0}, {"label":"0,11", "x":11, "y":0}, {"label":"0,12", "x":12, "y":0}, {"label":"0,13", "x":13, "y":0, "w":2}, {"label":"0,14", "x":15, "y":0}, {"label":"1,0", "x":0, "y":1, "w":1.5}, {"label":"1,1", "x":1.5, "y":1}, {"label":"1,2", "x":2.5, "y":1}, {"label":"1,3", "x":3.5, "y":1}, {"label":"1,4", "x":4.5, "y":1}, {"label":"1,5", "x":5.5, "y":1}, {"label":"1,6", "x":6.5, "y":1}, {"label":"1,7", "x":7.5, "y":1}, {"label":"1,8", "x":8.5, "y":1}, {"label":"1,9", "x":9.5, "y":1}, {"label":"1,10", "x":10.5, "y":1}, {"label":"1,11", "x":11.5, "y":1}, {"label":"1,12", "x":12.5, "y":1}, {"label":"1,13", "x":13.5, "y":1, "w":1.5}, {"label":"1,14", "x":15, "y":1}, {"label":"2,0", "x":0, "y":2, "w":1.75}, {"label":"2,1", "x":1.75, "y":2}, {"label":"2,2", "x":2.75, "y":2}, {"label":"2,3", "x":3.75, "y":2}, {"label":"2,4", "x":4.75, "y":2}, {"label":"2,5", "x":5.75, "y":2}, {"label":"2,6", "x":6.75, "y":2}, {"label":"2,7", "x":7.75, "y":2}, {"label":"2,8", "x":8.75, "y":2}, {"label":"2,9", "x":9.75, "y":2}, {"label":"2,10", "x":10.75, "y":2}, {"label":"2,11", "x":11.75, "y":2}, {"label":"2,13", "x":12.75, "y":2, "w":2.25}, {"label":"2,14", "x":15, "y":2}, {"label":"3,0", "x":0, "y":3, "w":2.25}, {"label":"3,1", "x":2.25, "y":3}, {"label":"3,2", "x":3.25, "y":3}, {"label":"3,3", "x":4.25, "y":3}, {"label":"3,4", "x":5.25, "y":3}, {"label":"3,5", "x":6.25, "y":3}, {"label":"3,6", "x":7.25, "y":3}, {"label":"3,7", "x":8.25, "y":3}, {"label":"3,8", "x":9.25, "y":3}, {"label":"3,9", "x":10.25, "y":3}, {"label":"3,10", "x":11.25, "y":3}, {"label":"3,12", "x":12.25, "y":3, "w":1.75}, {"label":"3,13", "x":14, "y":3}, {"label":"3,14", "x":15, "y":3}, {"label":"4,0", "x":0, "y":4, "w":1.25}, {"label":"4,1", "x":1.25, "y":4, "w":1.25}, {"label":"4,2", "x":2.5, "y":4, "w":1.25}, {"label":"4,5", "x":3.75, "y":4, "w":6.25}, {"label":"4,9", "x":10, "y":4, "w":1.25}, {"label":"4,10", "x":11.25, "y":4, "w":1.25}, {"label":"4,12", "x":13, "y":4}, {"label":"4,13", "x":14, "y":4}, {"label":"4,14", "x":15, "y":4}] + "layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":4, "y":0}, {"x":5, "y":0}, {"x":6, "y":0}, {"x":7, "y":0}, {"x":8, "y":0}, {"x":9, "y":0}, {"x":10, "y":0}, {"x":11, "y":0}, {"x":12, "y":0}, {"x":13, "y":0, "w":2}, {"x":15, "y":0}, {"x":0, "y":1, "w":1.5}, {"x":1.5, "y":1}, {"x":2.5, "y":1}, {"x":3.5, "y":1}, {"x":4.5, "y":1}, {"x":5.5, "y":1}, {"x":6.5, "y":1}, {"x":7.5, "y":1}, {"x":8.5, "y":1}, {"x":9.5, "y":1}, {"x":10.5, "y":1}, {"x":11.5, "y":1}, {"x":12.5, "y":1}, {"x":13.5, "y":1, "w":1.5}, {"x":15, "y":1}, {"x":0, "y":2, "w":1.75}, {"x":1.75, "y":2}, {"x":2.75, "y":2}, {"x":3.75, "y":2}, {"x":4.75, "y":2}, {"x":5.75, "y":2}, {"x":6.75, "y":2}, {"x":7.75, "y":2}, {"x":8.75, "y":2}, {"x":9.75, "y":2}, {"x":10.75, "y":2}, {"x":11.75, "y":2}, {"x":12.75, "y":2, "w":2.25}, {"x":15, "y":2}, {"x":0, "y":3, "w":2.25}, {"x":2.25, "y":3}, {"x":3.25, "y":3}, {"x":4.25, "y":3}, {"x":5.25, "y":3}, {"x":6.25, "y":3}, {"x":7.25, "y":3}, {"x":8.25, "y":3}, {"x":9.25, "y":3}, {"x":10.25, "y":3}, {"x":11.25, "y":3}, {"x":12.25, "y":3, "w":1.75}, {"x":14, "y":3}, {"x":15, "y":3}, {"x":0, "y":4, "w":1.25}, {"x":1.25, "y":4, "w":1.25}, {"x":2.5, "y":4, "w":1.25}, {"x":3.75, "y":4, "w":6.25}, {"x":10, "y":4, "w":1.25}, {"x":11.25, "y":4, "w":1.25}, {"x":13, "y":4}, {"x":14, "y":4}, {"x":15, "y":4}] } } -} \ No newline at end of file +} diff --git a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c index bf15ded873..0d6dfb42a4 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c @@ -28,5 +28,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RESET, 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, KC_TRNS) }; diff --git a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c index 2a13c6d4ac..6e4d6381a7 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c @@ -31,16 +31,16 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [2] = LAYOUT( - KC_GRV, 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, RESET, 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, 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), [3] = LAYOUT( - KC_GRV, 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, RESET, 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, 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), diff --git a/keyboards/yandrstudio/zhou65/mcuconf.h b/keyboards/yandrstudio/zhou65/mcuconf.h index 85376734f4..918717451c 100644 --- a/keyboards/yandrstudio/zhou65/mcuconf.h +++ b/keyboards/yandrstudio/zhou65/mcuconf.h @@ -1,4 +1,4 @@ -/* Copyright 2020 QMK +/* Copyright 2021 JasonRen(biu) * * 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 @@ -18,61 +18,12 @@ #include_next -#undef STM32_NO_INIT -#undef STM32_HSI_ENABLED -#undef STM32_LSI_ENABLED -#undef STM32_HSE_ENABLED -#undef STM32_LSE_ENABLED -#undef STM32_CLOCK48_REQUIRED -#undef STM32_SW -#undef STM32_PLLSRC #undef STM32_PLLM_VALUE #undef STM32_PLLN_VALUE #undef STM32_PLLP_VALUE #undef STM32_PLLQ_VALUE -#undef STM32_HPRE -#undef STM32_PPRE1 -#undef STM32_PPRE2 -#undef STM32_RTCSEL -#undef STM32_RTCPRE_VALUE -#undef STM32_MCO1SEL -#undef STM32_MCO1PRE -#undef STM32_MCO2SEL -#undef STM32_MCO2PRE -#undef STM32_I2SSRC -#undef STM32_PLLI2SN_VALUE -#undef STM32_PLLI2SR_VALUE -#undef STM32_PVD_ENABLE -#undef STM32_PLS -#undef STM32_BKPRAM_ENABLE -#define STM32_NO_INIT FALSE -#define STM32_HSI_ENABLED TRUE -#define STM32_LSI_ENABLED TRUE -#define STM32_HSE_ENABLED TRUE -#define STM32_LSE_ENABLED FALSE -#define STM32_CLOCK48_REQUIRED TRUE -#define STM32_SW STM32_SW_PLL -#define STM32_PLLSRC STM32_PLLSRC_HSE -#define STM32_PLLM_VALUE 8 -#define STM32_PLLN_VALUE 192 -#define STM32_PLLP_VALUE 4 -#define STM32_PLLQ_VALUE 4 -// AHB prescaler value. -#define STM32_HPRE STM32_HPRE_DIV1 -//APB1 prescaler value. -#define STM32_PPRE1 STM32_PPRE1_DIV4 -//APB2 prescaler value. -#define STM32_PPRE2 STM32_PPRE2_DIV2 -#define STM32_RTCSEL STM32_RTCSEL_LSI -#define STM32_RTCPRE_VALUE 8 -#define STM32_MCO1SEL STM32_MCO1SEL_HSI -#define STM32_MCO1PRE STM32_MCO1PRE_DIV1 -#define STM32_MCO2SEL STM32_MCO2SEL_SYSCLK -#define STM32_MCO2PRE STM32_MCO2PRE_DIV5 -#define STM32_I2SSRC STM32_I2SSRC_CKIN -#define STM32_PLLI2SN_VALUE 192 -#define STM32_PLLI2SR_VALUE 5 -#define STM32_PVD_ENABLE FALSE -#define STM32_PLS STM32_PLS_LEV0 -#define STM32_BKPRAM_ENABLE FALSE +#define STM32_PLLM_VALUE (STM32_HSECLK/1000000) +#define STM32_PLLN_VALUE 192 +#define STM32_PLLP_VALUE 4 +#define STM32_PLLQ_VALUE 4 diff --git a/keyboards/yandrstudio/zhou65/readme.md b/keyboards/yandrstudio/zhou65/readme.md index bcbc59c1b1..31f57f2f96 100644 --- a/keyboards/yandrstudio/zhou65/readme.md +++ b/keyboards/yandrstudio/zhou65/readme.md @@ -1,7 +1,7 @@ # zhou65 version 1.0 A 65% keys keyboard with rgb (keys). -This keyboard use 8mhz HSE and STM32F401 as MCU. +This keyboard use 16mhz HSE and STM32F401 as MCU. - Keyboard Maintainer: https://github.com/jiaxin96 - Hardware Supported: zhou65 From d6e1de8c83996e4cef8ca8df6b2745281c46c754 Mon Sep 17 00:00:00 2001 From: Kyle McCreery Date: Thu, 12 May 2022 00:49:11 -0400 Subject: [PATCH 388/699] [Keyboard] Add Mokulua keyboard (#17055) Co-authored-by: Drashna Jaelre --- keyboards/mechwild/mokulua/info.json | 13 + keyboards/mechwild/mokulua/lib/mokulua.c | 244 ++++++++++++++++++ keyboards/mechwild/mokulua/mirrored/config.h | 98 +++++++ .../mokulua/mirrored/keymaps/default/keymap.c | 46 ++++ .../mirrored/keymaps/default/readme.md | 1 + .../mokulua/mirrored/keymaps/via/keymap.c | 46 ++++ .../mokulua/mirrored/keymaps/via/readme.md | 1 + .../mokulua/mirrored/keymaps/via/rules.mk | 2 + .../mechwild/mokulua/mirrored/mirrored.c | 82 ++++++ .../mechwild/mokulua/mirrored/mirrored.h | 53 ++++ keyboards/mechwild/mokulua/mirrored/rules.mk | 22 ++ keyboards/mechwild/mokulua/readme.md | 27 ++ keyboards/mechwild/mokulua/rules.mk | 1 + keyboards/mechwild/mokulua/standard/config.h | 135 ++++++++++ .../mokulua/standard/keymaps/default/keymap.c | 46 ++++ .../standard/keymaps/default/readme.md | 1 + .../mokulua/standard/keymaps/silly/config.h | 7 + .../mokulua/standard/keymaps/silly/keymap.c | 128 +++++++++ .../mokulua/standard/keymaps/silly/readme.md | 1 + .../mokulua/standard/keymaps/silly/rules.mk | 2 + .../mokulua/standard/keymaps/via/keymap.c | 46 ++++ .../mokulua/standard/keymaps/via/readme.md | 1 + .../mokulua/standard/keymaps/via/rules.mk | 2 + keyboards/mechwild/mokulua/standard/rules.mk | 22 ++ .../mechwild/mokulua/standard/standard.c | 82 ++++++ .../mechwild/mokulua/standard/standard.h | 52 ++++ 26 files changed, 1161 insertions(+) create mode 100644 keyboards/mechwild/mokulua/info.json create mode 100644 keyboards/mechwild/mokulua/lib/mokulua.c create mode 100644 keyboards/mechwild/mokulua/mirrored/config.h create mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c create mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md create mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c create mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md create mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk create mode 100644 keyboards/mechwild/mokulua/mirrored/mirrored.c create mode 100644 keyboards/mechwild/mokulua/mirrored/mirrored.h create mode 100644 keyboards/mechwild/mokulua/mirrored/rules.mk create mode 100644 keyboards/mechwild/mokulua/readme.md create mode 100644 keyboards/mechwild/mokulua/rules.mk create mode 100644 keyboards/mechwild/mokulua/standard/config.h create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/default/readme.md create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/config.h create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/readme.md create mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk create mode 100644 keyboards/mechwild/mokulua/standard/rules.mk create mode 100644 keyboards/mechwild/mokulua/standard/standard.c create mode 100644 keyboards/mechwild/mokulua/standard/standard.h diff --git a/keyboards/mechwild/mokulua/info.json b/keyboards/mechwild/mokulua/info.json new file mode 100644 index 0000000000..9620a4ddda --- /dev/null +++ b/keyboards/mechwild/mokulua/info.json @@ -0,0 +1,13 @@ +{ + "keyboard_name": "Mokulua", + "url": "https://mechwild.com", + "maintainer": "kylemccreery", + "layouts": { + "LAYOUT_standard": { + "layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":15.75, "y":0}, {"x":16.75, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.5, "y":1}, {"x":16.5, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.85, "y":2}, {"x":16.85, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.5, "y":3}, {"x":16.5, "y":3}, {"x":17.5, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.5, "y":4}, {"x":16.5, "y":4}, {"x":17.5, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.5, "y":2}, {"x":-0.5, "y":2}, {"x":0.5, "y":2}, {"x":1.5, "y":2}, {"x":2.5, "y":2}, {"x":-1.0, "y":3}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}] + }, + "LAYOUT_mirrored": { + "layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.78, "y":1}, {"x":16.78, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.63, "y":2}, {"x":16.63, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.28, "y":3}, {"x":16.28, "y":3}, {"x":17.28, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.25, "y":4}, {"x":16.25, "y":4}, {"x":17.25, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.0, "y":2}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":-1.5, "y":3}, {"x":-0.5, "y":3}, {"x":0.5, "y":3}, {"x":1.5, "y":3}, {"x":2.5, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}] + } + } +} diff --git a/keyboards/mechwild/mokulua/lib/mokulua.c b/keyboards/mechwild/mokulua/lib/mokulua.c new file mode 100644 index 0000000000..d2a7720117 --- /dev/null +++ b/keyboards/mechwild/mokulua/lib/mokulua.c @@ -0,0 +1,244 @@ +/* Copyright 2020 Kyle McCreery + * + * 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 . + */ + +#include "progmem.h" + +const unsigned char font[] PROGMEM = { + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3E, 0x5B, 0x4F, 0x5B, 0x3E, 0x00, + 0x3E, 0x6B, 0x4F, 0x6B, 0x3E, 0x00, + 0x1C, 0x3E, 0x7C, 0x3E, 0x1C, 0x00, + 0x18, 0x3C, 0x7E, 0x3C, 0x18, 0x00, + 0x1C, 0x57, 0x7D, 0x57, 0x1C, 0x00, + 0x1C, 0x5E, 0x7F, 0x5E, 0x1C, 0x00, + 0x00, 0x18, 0x3C, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xC3, 0xE7, 0xFF, 0x00, + 0x00, 0x18, 0x24, 0x18, 0x00, 0x00, + 0xFF, 0xE7, 0xDB, 0xE7, 0xFF, 0x00, + 0x30, 0x48, 0x3A, 0x06, 0x0E, 0x00, + 0x26, 0x29, 0x79, 0x29, 0x26, 0x00, + 0x40, 0x7F, 0x05, 0x05, 0x07, 0x00, + 0x40, 0x7F, 0x05, 0x25, 0x3F, 0x00, + 0x5A, 0x3C, 0xE7, 0x3C, 0x5A, 0x00, + 0x7F, 0x3E, 0x1C, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x1C, 0x3E, 0x7F, 0x00, + 0x14, 0x22, 0x7F, 0x22, 0x14, 0x00, + 0x5F, 0x5F, 0x00, 0x5F, 0x5F, 0x00, + 0x06, 0x09, 0x7F, 0x01, 0x7F, 0x00, + 0x00, 0x66, 0x89, 0x95, 0x6A, 0x00, + 0x60, 0x60, 0x60, 0x60, 0x60, 0x00, + 0x94, 0xA2, 0xFF, 0xA2, 0x94, 0x00, + 0x08, 0x04, 0x7E, 0x04, 0x08, 0x00, + 0x10, 0x20, 0x7E, 0x20, 0x10, 0x00, + 0x08, 0x08, 0x2A, 0x1C, 0x08, 0x00, + 0x08, 0x1C, 0x2A, 0x08, 0x08, 0x00, + 0x1E, 0x10, 0x10, 0x10, 0x10, 0x00, + 0x0C, 0x1E, 0x0C, 0x1E, 0x0C, 0x00, + 0x30, 0x38, 0x3E, 0x38, 0x30, 0x00, + 0x06, 0x0E, 0x3E, 0x0E, 0x06, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x5F, 0x00, 0x00, 0x00, + 0x00, 0x07, 0x00, 0x07, 0x00, 0x00, + 0x14, 0x7F, 0x14, 0x7F, 0x14, 0x00, + 0x24, 0x2A, 0x7F, 0x2A, 0x12, 0x00, + 0x23, 0x13, 0x08, 0x64, 0x62, 0x00, + 0x36, 0x49, 0x56, 0x20, 0x50, 0x00, + 0x00, 0x08, 0x07, 0x03, 0x00, 0x00, + 0x00, 0x1C, 0x22, 0x41, 0x00, 0x00, + 0x00, 0x41, 0x22, 0x1C, 0x00, 0x00, + 0x2A, 0x1C, 0x7F, 0x1C, 0x2A, 0x00, + 0x08, 0x08, 0x3E, 0x08, 0x08, 0x00, + 0x00, 0x80, 0x70, 0x30, 0x00, 0x00, + 0x08, 0x08, 0x08, 0x08, 0x08, 0x00, + 0x00, 0x00, 0x60, 0x60, 0x00, 0x00, + 0x20, 0x10, 0x08, 0x04, 0x02, 0x00, + 0x3E, 0x51, 0x49, 0x45, 0x3E, 0x00, + 0x00, 0x42, 0x7F, 0x40, 0x00, 0x00, + 0x72, 0x49, 0x49, 0x49, 0x46, 0x00, + 0x21, 0x41, 0x49, 0x4D, 0x33, 0x00, + 0x18, 0x14, 0x12, 0x7F, 0x10, 0x00, + 0x27, 0x45, 0x45, 0x45, 0x39, 0x00, + 0x3C, 0x4A, 0x49, 0x49, 0x31, 0x00, + 0x41, 0x21, 0x11, 0x09, 0x07, 0x00, + 0x36, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x46, 0x49, 0x49, 0x29, 0x1E, 0x00, + 0x00, 0x00, 0x14, 0x00, 0x00, 0x00, + 0x00, 0x40, 0x34, 0x00, 0x00, 0x00, + 0x00, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x14, 0x14, 0x14, 0x14, 0x14, 0x00, + 0x00, 0x41, 0x22, 0x14, 0x08, 0x00, + 0x02, 0x01, 0x59, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x5D, 0x59, 0x4E, 0x00, + 0x7C, 0x12, 0x11, 0x12, 0x7C, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x36, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x22, 0x00, + 0x7F, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x49, 0x49, 0x49, 0x41, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x01, 0x00, + 0x3E, 0x41, 0x41, 0x51, 0x73, 0x00, + 0x7F, 0x08, 0x08, 0x08, 0x7F, 0x00, + 0x00, 0x41, 0x7F, 0x41, 0x00, 0x00, + 0x20, 0x40, 0x41, 0x3F, 0x01, 0x00, + 0x7F, 0x08, 0x14, 0x22, 0x41, 0x00, + 0x7F, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x7F, 0x02, 0x1C, 0x02, 0x7F, 0x00, + 0x7F, 0x04, 0x08, 0x10, 0x7F, 0x00, + 0x3E, 0x41, 0x41, 0x41, 0x3E, 0x00, + 0x7F, 0x09, 0x09, 0x09, 0x06, 0x00, + 0x3E, 0x41, 0x51, 0x21, 0x5E, 0x00, + 0x7F, 0x09, 0x19, 0x29, 0x46, 0x00, + 0x26, 0x49, 0x49, 0x49, 0x32, 0x00, + 0x03, 0x01, 0x7F, 0x01, 0x03, 0x00, + 0x3F, 0x40, 0x40, 0x40, 0x3F, 0x00, + 0x1F, 0x20, 0x40, 0x20, 0x1F, 0x00, + 0x3F, 0x40, 0x38, 0x40, 0x3F, 0x00, + 0x63, 0x14, 0x08, 0x14, 0x63, 0x00, + 0x03, 0x04, 0x78, 0x04, 0x03, 0x00, + 0x61, 0x59, 0x49, 0x4D, 0x43, 0x00, + 0x00, 0x7F, 0x41, 0x41, 0x41, 0x00, + 0x02, 0x04, 0x08, 0x10, 0x20, 0x00, + 0x00, 0x41, 0x41, 0x41, 0x7F, 0x00, + 0x04, 0x02, 0x01, 0x02, 0x04, 0x00, + 0x40, 0x40, 0x40, 0x40, 0x40, 0x00, + 0x00, 0x03, 0x07, 0x08, 0x00, 0x00, + 0x20, 0x54, 0x54, 0x78, 0x40, 0x00, + 0x7F, 0x28, 0x44, 0x44, 0x38, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x28, 0x00, + 0x38, 0x44, 0x44, 0x28, 0x7E, 0x00, + 0x38, 0x54, 0x54, 0x54, 0x18, 0x00, + 0x00, 0x08, 0x7E, 0x09, 0x02, 0x00, + 0x18, 0x24, 0x24, 0x1C, 0x78, 0x00, + 0x7F, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x00, 0x44, 0x7D, 0x40, 0x00, 0x00, + 0x20, 0x40, 0x40, 0x3D, 0x00, 0x00, + 0x7F, 0x10, 0x28, 0x44, 0x00, 0x00, + 0x00, 0x41, 0x7F, 0x40, 0x00, 0x00, + 0x7C, 0x04, 0x78, 0x04, 0x78, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x78, 0x00, + 0x38, 0x44, 0x44, 0x44, 0x38, 0x00, + 0x7C, 0x18, 0x24, 0x24, 0x18, 0x00, + 0x18, 0x24, 0x24, 0x18, 0x7C, 0x00, + 0x7C, 0x08, 0x04, 0x04, 0x08, 0x00, + 0x48, 0x54, 0x54, 0x54, 0x24, 0x00, + 0x04, 0x04, 0x3F, 0x44, 0x24, 0x00, + 0x3C, 0x40, 0x40, 0x20, 0x7C, 0x00, + 0x1C, 0x20, 0x40, 0x20, 0x1C, 0x00, + 0x3C, 0x40, 0x30, 0x40, 0x3C, 0x00, + 0x44, 0x28, 0x10, 0x28, 0x44, 0x00, + 0x4C, 0x90, 0x90, 0x90, 0x7C, 0x00, + 0x44, 0x64, 0x54, 0x4C, 0x44, 0x00, + 0x00, 0x08, 0x36, 0x41, 0x00, 0x00, + 0x00, 0x00, 0x77, 0x00, 0x00, 0x00, + 0x00, 0x41, 0x36, 0x08, 0x00, 0x00, + 0x02, 0x01, 0x02, 0x04, 0x02, 0x00, + 0x3C, 0x26, 0x23, 0x26, 0x3C, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF, + 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE, + 0xF0, 0xC0, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x01, 0x3E, + 0xE0, 0x80, 0x70, 0x0E, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x07, 0x3C, 0xE0, + 0x80, 0x78, 0x07, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0xE0, 0xFE, 0xFF, + 0xFE, 0xF8, 0xC0, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xE0, 0xFC, 0xFF, 0xFE, + 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x01, 0x3E, 0xE0, 0x80, 0x70, 0x0E, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x07, + 0x3C, 0xE0, 0x80, 0x78, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xF8, 0xFF, 0xFF, 0x1F, + 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0, + 0xF8, 0xFF, 0xF7, 0x07, 0x07, 0x7F, + 0xFF, 0xFF, 0xF8, 0x00, 0xC0, 0x38, + 0x0C, 0x18, 0x60, 0x80, 0x00, 0x00, + 0x00, 0xF0, 0x0C, 0x04, 0xF4, 0x1C, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x80, 0xC0, 0xFC, 0xE6, 0xC3, 0xC1, + 0xC1, 0xC3, 0xE6, 0xFC, 0xC0, 0x80, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0xF8, 0xFF, 0xF7, 0x07, + 0x07, 0x1F, 0xFF, 0xFE, 0xF0, 0xC0, + 0xF8, 0x3F, 0x8F, 0x0F, 0x3F, 0xFF, + 0xFF, 0xFE, 0x80, 0xF0, 0x0C, 0x04, + 0xF4, 0x1C, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x00, + 0x00, 0x00, 0x00, 0x03, 0x1F, 0x1F, + 0x0F, 0x01, 0x03, 0x06, 0xF8, 0x00, + 0x07, 0x7F, 0x3F, 0x0E, 0xC1, 0x38, + 0x07, 0x0E, 0x70, 0x83, 0x1C, 0x60, + 0x1E, 0x03, 0xC0, 0x3E, 0x01, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x3F, 0x7F, 0xFF, 0xFF, 0xF9, 0xC0, + 0xC0, 0xF9, 0xFF, 0xFF, 0x7F, 0x3F, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x1F, 0x1F, 0x1F, 0x07, 0x06, + 0xF8, 0x00, 0x00, 0x73, 0x3F, 0x0F, + 0xC1, 0x38, 0x07, 0x0F, 0x70, 0x83, + 0x07, 0x7F, 0x1F, 0x03, 0xC0, 0x3E, + 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, + 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, +}; diff --git a/keyboards/mechwild/mokulua/mirrored/config.h b/keyboards/mechwild/mokulua/mirrored/config.h new file mode 100644 index 0000000000..d5887c7ff5 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/config.h @@ -0,0 +1,98 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6D77 // mw = "MechWild" +#define PRODUCT_ID 0x170C +#define DEVICE_VER 0x0103 +#define MANUFACTURER MechWild +#define PRODUCT Mokulua + +/* Key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 6 + +/* Key matrix pins */ +#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 } +#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } +#define UNUSED_PINS + +/* Encoder pins */ +#define ENCODERS_PAD_A { D2 } +#define ENCODERS_PAD_B { B2 } + +/* Encoder resolution */ +#define ENCODER_RESOLUTION 4 +#define TAP_CODE_DELAY 10 + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c" + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D3 +#define MASTER_LEFT +//#define MASTER_RIGHT +#define RGBLIGHT_SPLIT +#define RGBLED_SPLIT { 8, 8 } +#define SPLIT_LAYER_STATE_ENABLE +#define SPLIT_LED_STATE_ENABLE +#define SPLIT_MODS_ENABLE +#define SPLIT_OLED_ENABLE + +/* RGB options */ +#define RGB_DI_PIN B6 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 16 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful for the Windows task manager shortcut (ctrl+shift+esc). + */ +//#define GRAVE_ESC_CTRL_OVERRIDE + + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c new file mode 100644 index 0000000000..330c9320a0 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c @@ -0,0 +1,46 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define FN1_SPC LT(1, KC_SPC) +#define FN2_SPC LT(2, KC_SPC) + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, _______, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ), + [_FN2] = LAYOUT( + _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FN3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md new file mode 100644 index 0000000000..727105dcba --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Mokulua using a mirrored right-half diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c new file mode 100644 index 0000000000..330c9320a0 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define FN1_SPC LT(1, KC_SPC) +#define FN2_SPC LT(2, KC_SPC) + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, _______, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ), + [_FN2] = LAYOUT( + _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FN3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md new file mode 100644 index 0000000000..37aca6eac7 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for Mokulua using a mirrored right-half diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.c b/keyboards/mechwild/mokulua/mirrored/mirrored.c new file mode 100644 index 0000000000..777c146d64 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/mirrored.c @@ -0,0 +1,82 @@ +// Copyright 2022 Kyle McCreery (@Kyle McCreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "standard.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + switch (index) { + case 0: + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + break; + case 1: + if (clockwise) { + tap_code(KC_PGUP); + } else { + tap_code(KC_PGDN); + } + break; + + } + return true; +} +#endif + +#ifdef OLED_ENABLE + oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_270; // flips the display 270 degrees + } + + static void render_logo(void) { // Render MechWild "MW" Logo + static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00}; + static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00}; + static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00}; + static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00}; + oled_set_cursor(0,0); + oled_write_P(logo_1, false); + oled_set_cursor(0,1); + oled_write_P(logo_2, false); + oled_set_cursor(0,2); + oled_write_P(logo_3, false); + oled_set_cursor(0,3); + oled_write_P(logo_4, false); + } + bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + render_logo(); + oled_set_cursor(0,6); + + oled_write_ln_P(PSTR("Layer"), false); + + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_ln_P(PSTR("Base"), false); + break; + case 1: + oled_write_ln_P(PSTR("FN 1"), false); + break; + case 2: + oled_write_ln_P(PSTR("FN 2"), false); + break; + case 3: + oled_write_ln_P(PSTR("FN 3"), false); + break; + default: + oled_write_ln_P(PSTR("Undef"), false); + } + oled_write_ln_P(PSTR(""), false); + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); + oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); + oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); + return false; + } +#endif diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.h b/keyboards/mechwild/mokulua/mirrored/mirrored.h new file mode 100644 index 0000000000..5b7dd29c25 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/mirrored.h @@ -0,0 +1,53 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +#define LAYOUT_mirrored( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ + L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \ + L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ + L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ + L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ +) { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ + { L46, L36, L37, L26, L16, L06 }, \ + { R06, R05, R04, R03, R02, R01 }, \ + { R16, R15, R14, R13, R12, R11 }, \ + { R26, R25, R24, R23, R22, R21 }, \ + { R37, R36, R35, R34, R33, R32 }, \ + { R46, R45, R44, R43, R42, R41 }, \ + { R40, R31, R30, R20, R10, R00 } \ +} + +#define LAYOUT_standard( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ + L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \ + L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ + L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ + L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ +) { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ + { L46, L36, L37, L26, L16, L06 }, \ + { R01, R02, R03, R04, R05, R06 }, \ + { R11, R12, R13, R14, R15, R16 }, \ + { R21, R22, R23, R24, R25, R26 }, \ + { R32, R33, R34, R35, R36, R37 }, \ + { R41, R42, R43, R44, R45, R46 }, \ + { R00, R20, R31, R30, R40, ___ } \ +} + + +#define LAYOUT LAYOUT_mirrored \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/mirrored/rules.mk b/keyboards/mechwild/mokulua/mirrored/rules.mk new file mode 100644 index 0000000000..5aae5c7c76 --- /dev/null +++ b/keyboards/mechwild/mokulua/mirrored/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Enable encoder +OLED_ENABLE = yes # Enable OLED Screen +OLED_DRIVER = SSD1306 # Define OLED Driver +SPLIT_KEYBOARD = yes # Define split functionality \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/readme.md b/keyboards/mechwild/mokulua/readme.md new file mode 100644 index 0000000000..a8f2b055df --- /dev/null +++ b/keyboards/mechwild/mokulua/readme.md @@ -0,0 +1,27 @@ +# Mokulua + +![Mokulua](https://i.imgur.com/7fifiQch.jpg) + +*A short description of the keyboard/project* + +* Keyboard Maintainer: [Kyle McCreery](https://github.com/kylemccreery) +* Hardware Supported: Mokulua v1.3 +* Hardware Availability: https://mechwild.com/product/mokulua/ + +Make example for this keyboard (after setting up your build environment): + + make mechwild/mokulua:default + +Flashing example for this keyboard: + + make mechwild/mokulua:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/rules.mk b/keyboards/mechwild/mokulua/rules.mk new file mode 100644 index 0000000000..3a87a143e5 --- /dev/null +++ b/keyboards/mechwild/mokulua/rules.mk @@ -0,0 +1 @@ +DEFAULT_FOLDER = mechwild/mokulua/standard \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/standard/config.h b/keyboards/mechwild/mokulua/standard/config.h new file mode 100644 index 0000000000..be6495048c --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/config.h @@ -0,0 +1,135 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x6D77 // mw = "MechWild" +#define PRODUCT_ID 0x170B +#define DEVICE_VER 0x0103 +#define MANUFACTURER MechWild +#define PRODUCT Mokulua + +/* Key matrix size */ +#define MATRIX_ROWS 12 +#define MATRIX_COLS 6 + +/* Key matrix pins */ +#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 } +#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } +#define UNUSED_PINS + +/* Encoder pins */ +#define ENCODERS_PAD_A { D2 } +#define ENCODERS_PAD_B { B2 } + +/* Encoder resolution */ +#define ENCODER_RESOLUTION 4 +#define TAP_CODE_DELAY 10 + +/* COL2ROW, ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c" + +/* + * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. + */ +#define SOFT_SERIAL_PIN D3 +#define MASTER_LEFT +//#define MASTER_RIGHT +#define RGBLIGHT_SPLIT +#define RGBLED_SPLIT { 8, 8 } +#define SPLIT_LAYER_STATE_ENABLE +#define SPLIT_LED_STATE_ENABLE +#define SPLIT_MODS_ENABLE +#define SPLIT_OLED_ENABLE + +/* RGB options */ +#define RGB_DI_PIN B6 +#ifdef RGB_DI_PIN +# define RGBLED_NUM 16 +# define RGBLIGHT_HUE_STEP 8 +# define RGBLIGHT_SAT_STEP 8 +# define RGBLIGHT_VAL_STEP 8 +# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ +# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ +/*== all animations enable ==*/ +//# define RGBLIGHT_ANIMATIONS +/*== or choose animations ==*/ +//# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +//# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +/*== customize breathing effect ==*/ +/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ +//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 +/*==== use exp() and sin() ====*/ +//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 +//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 +#endif + +/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ +#define DEBOUNCE 5 + +/* define if matrix has ghost (lacks anti-ghosting diodes) */ +//#define MATRIX_HAS_GHOST + +/* 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 useful 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 + +/* + * 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 + + +/* Bootmagic Lite key configuration */ +#define BOOTMAGIC_LITE_ROW 0 +#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c new file mode 100644 index 0000000000..724dfee41c --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c @@ -0,0 +1,46 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define FN1_SPC LT(1, KC_SPC) +#define FN2_SPC LT(2, KC_SPC) + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ), + [_FN2] = LAYOUT( + _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FN3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md new file mode 100644 index 0000000000..81569df142 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md @@ -0,0 +1 @@ +# The default keymap for Mokulua using a standard right-half diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h b/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h new file mode 100644 index 0000000000..1e0e3ac5eb --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h @@ -0,0 +1,7 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" +#define RGBLIGHT_LAYERS \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c new file mode 100644 index 0000000000..9463f162c0 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c @@ -0,0 +1,128 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define FN1_SPC LT(1, KC_SPC) +#define FN2_SPC LT(2, KC_SPC) +#define HSV_SILLY_PURPLE 180, 255, 255 + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _RS3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, TG(_RS3), KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN1] = LAYOUT( + KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ), + [_FN2] = LAYOUT( + _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_RS3] = LAYOUT( + KC_PAST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_PSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_PPLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_PMNS, _______, _______, _______, _______, _______, _______, TG(_RS3), _______, _______, _______, _______, _______, _______, _______, _______, + KC_HOME, KC_END, KC_PGUP, KC_K, KC_L, KC_M, KC_PGDN, _______, KC_F1, KC_F2, KC_F3, _______, _______, _______ + ) +}; + +#ifdef OLED_ENABLE + static void render_logo(void) { // Render MechWild "MW" Logo + static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00}; + static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00}; + static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00}; + static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00}; + oled_set_cursor(0,0); + oled_write_P(logo_1, false); + oled_set_cursor(0,1); + oled_write_P(logo_2, false); + oled_set_cursor(0,2); + oled_write_P(logo_3, false); + oled_set_cursor(0,3); + oled_write_P(logo_4, false); + } + bool oled_task_user(void) { + render_logo(); + oled_set_cursor(0,6); + + oled_write_ln_P(PSTR("Layer"), false); + + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_ln_P(PSTR("Base"), false); + break; + case 1: + oled_write_ln_P(PSTR("FN 1"), false); + break; + case 2: + oled_write_ln_P(PSTR("FN 2"), false); + break; + case 3: + oled_write_ln_P(PSTR("RS3"), false); + break; + default: + oled_write_ln_P(PSTR("Undef"), false); + } + oled_write_ln_P(PSTR(""), false); + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); + oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); + oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); + return false; + } +#endif + +#ifdef RGBLIGHT_ENABLE + // Optional RGB Light Mapping Zones {LED Posiiton, Number of LEDs, Colour} + const rgblight_segment_t PROGMEM _rgb_fn1[] = RGBLIGHT_LAYER_SEGMENTS( + {4, 3, HSV_GREEN}, + {12, 3, HSV_GREEN} + ); + // Light LEDs 9 & 10 in cyan when keyboard layer 1 is active + const rgblight_segment_t PROGMEM _rgb_fn2[] = RGBLIGHT_LAYER_SEGMENTS( + {4, 3, HSV_GREEN}, + {12, 3, HSV_GREEN} + ); + const rgblight_segment_t PROGMEM _rgb_rs3[] = RGBLIGHT_LAYER_SEGMENTS( + {0, 16, HSV_SILLY_PURPLE} + ); + const rgblight_segment_t* const PROGMEM _rgb_layers[] = RGBLIGHT_LAYERS_LIST( + _rgb_fn1, + _rgb_fn2, + _rgb_rs3 + ); + layer_state_t layer_state_set_user(layer_state_t state) { + rgblight_set_layer_state(0, layer_state_cmp(state, _FN1)); + rgblight_set_layer_state(1, layer_state_cmp(state, _FN2)); + rgblight_set_layer_state(2, layer_state_cmp(state, _RS3)); + return state; + } +#endif // RGBLIGHT_ENABLE + +void keyboard_post_init_user(void) { + // Enable the LED layers + #ifdef RGBLIGHT_ENABLE + rgblight_layers = _rgb_layers; + #endif // RGBLIGHT_ENABLE + } \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md new file mode 100644 index 0000000000..4659a3aaeb --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md @@ -0,0 +1 @@ +# A keymap customized for use by Silly. Makes use of RGB Layer indication and a remapped layer for use in specific video games. diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk b/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c new file mode 100644 index 0000000000..724dfee41c --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c @@ -0,0 +1,46 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +#define FN1_SPC LT(1, KC_SPC) +#define FN2_SPC LT(2, KC_SPC) + +// Defines names for use in layer keycodes and the keymap +enum layer_names { + _BASE, + _FN1, + _FN2, + _FN3 +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [_BASE] = LAYOUT( + KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_MINS, KC_7, KC_8, KC_9, KC_0, _______, KC_BSPC, + KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSLS, + MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, + KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, + KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT + ), + [_FN1] = LAYOUT( + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_EQL, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + ), + [_FN2] = LAYOUT( + _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [_FN3] = LAYOUT( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) +}; diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md b/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md new file mode 100644 index 0000000000..4f47e50e88 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md @@ -0,0 +1 @@ +# The VIA keymap for Mokulua using a standard right-half diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk new file mode 100644 index 0000000000..36b7ba9cbc --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk @@ -0,0 +1,2 @@ +VIA_ENABLE = yes +LTO_ENABLE = yes diff --git a/keyboards/mechwild/mokulua/standard/rules.mk b/keyboards/mechwild/mokulua/standard/rules.mk new file mode 100644 index 0000000000..5aae5c7c76 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Enable encoder +OLED_ENABLE = yes # Enable OLED Screen +OLED_DRIVER = SSD1306 # Define OLED Driver +SPLIT_KEYBOARD = yes # Define split functionality \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/standard/standard.c b/keyboards/mechwild/mokulua/standard/standard.c new file mode 100644 index 0000000000..777c146d64 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/standard.c @@ -0,0 +1,82 @@ +// Copyright 2022 Kyle McCreery (@Kyle McCreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include "standard.h" + +#ifdef ENCODER_ENABLE +bool encoder_update_kb(uint8_t index, bool clockwise) { + if (!encoder_update_user(index, clockwise)) { return false; } + switch (index) { + case 0: + if (clockwise) { + tap_code(KC_VOLU); + } else { + tap_code(KC_VOLD); + } + break; + case 1: + if (clockwise) { + tap_code(KC_PGUP); + } else { + tap_code(KC_PGDN); + } + break; + + } + return true; +} +#endif + +#ifdef OLED_ENABLE + oled_rotation_t oled_init_user(oled_rotation_t rotation) { + return OLED_ROTATION_270; // flips the display 270 degrees + } + + static void render_logo(void) { // Render MechWild "MW" Logo + static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00}; + static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00}; + static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00}; + static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00}; + oled_set_cursor(0,0); + oled_write_P(logo_1, false); + oled_set_cursor(0,1); + oled_write_P(logo_2, false); + oled_set_cursor(0,2); + oled_write_P(logo_3, false); + oled_set_cursor(0,3); + oled_write_P(logo_4, false); + } + bool oled_task_kb(void) { + if (!oled_task_user()) { + return false; + } + render_logo(); + oled_set_cursor(0,6); + + oled_write_ln_P(PSTR("Layer"), false); + + switch (get_highest_layer(layer_state)) { + case 0: + oled_write_ln_P(PSTR("Base"), false); + break; + case 1: + oled_write_ln_P(PSTR("FN 1"), false); + break; + case 2: + oled_write_ln_P(PSTR("FN 2"), false); + break; + case 3: + oled_write_ln_P(PSTR("FN 3"), false); + break; + default: + oled_write_ln_P(PSTR("Undef"), false); + } + oled_write_ln_P(PSTR(""), false); + // Host Keyboard LED Status + led_t led_state = host_keyboard_led_state(); + oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); + oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); + oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); + return false; + } +#endif diff --git a/keyboards/mechwild/mokulua/standard/standard.h b/keyboards/mechwild/mokulua/standard/standard.h new file mode 100644 index 0000000000..a25fe3eff4 --- /dev/null +++ b/keyboards/mechwild/mokulua/standard/standard.h @@ -0,0 +1,52 @@ +// Copyright 2022 Kyle McCreery (@kylemccreery) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "quantum.h" + +#define ___ KC_NO + +#define LAYOUT_mirrored( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ + L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \ + L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ + L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ + L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ +) { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ + { L46, L36, L37, L26, L16, L06 }, \ + { R06, R05, R04, R03, R02, R01 }, \ + { R16, R15, R14, R13, R12, R11 }, \ + { R26, R25, R24, R23, R22, R21 }, \ + { R37, R36, R35, R34, R33, R32 }, \ + { R46, R45, R44, R43, R42, R41 }, \ + { R40, R31, R30, R20, R10, R00 } \ +} + +#define LAYOUT_standard( \ + L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ + L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \ + L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ + L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ + L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ +) { \ + { L00, L01, L02, L03, L04, L05 }, \ + { L10, L11, L12, L13, L14, L15 }, \ + { L20, L21, L22, L23, L24, L25 }, \ + { L30, L31, L32, L33, L34, L35 }, \ + { L40, L41, L42, L43, L44, L45 }, \ + { L46, L36, L37, L26, L16, L06 }, \ + { R01, R02, R03, R04, R05, R06 }, \ + { R11, R12, R13, R14, R15, R16 }, \ + { R21, R22, R23, R24, R25, R26 }, \ + { R32, R33, R34, R35, R36, R37 }, \ + { R41, R42, R43, R44, R45, R46 }, \ + { R00, R20, R31, R30, R40, ___ } \ +} + +#define LAYOUT LAYOUT_standard From 77aba32bc61a47d551b030f61cae582599652712 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Wed, 11 May 2022 23:27:58 -0600 Subject: [PATCH 389/699] initial (#17067) --- .../4pplet/yakiimo/keymaps/default/keymap.c | 32 +++++++++---------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/keyboards/4pplet/yakiimo/keymaps/default/keymap.c b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c index e16d204c32..37784917dc 100644 --- a/keyboards/4pplet/yakiimo/keymaps/default/keymap.c +++ b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c @@ -17,20 +17,20 @@ along with this program. If not, see . #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { -// main layer -[0] = LAYOUT_all( - 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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, KC_DEL , KC_END, KC_PGDN, - 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_NUHS, KC_ENT, - KC_LSFT, KC_NUBS, 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_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT) -// basic function layer -[1] = LAYOUT_all( - RESET, 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, 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, - 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), + // main layer + [0] = LAYOUT_all( + 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_PSCR, KC_SLCK, KC_PAUS, + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, 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_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + // basic function layer + [1] = LAYOUT_all( + RESET, 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, 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, + 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), }; From 8a4ef2b3c4a388a563c95e75eb744514a210dfe2 Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Thu, 12 May 2022 12:51:37 +0700 Subject: [PATCH 390/699] [Keyboard] Move M63 RGB into maker folder (#17061) --- keyboards/horrortroll/chinese_pcb/readme.md | 1 - .../chinese_pcb => mss_studio}/m63_rgb/config.h | 12 +++++------- .../chinese_pcb => mss_studio}/m63_rgb/info.json | 0 .../m63_rgb/keymaps/default/keymap.c | 7 ++++--- .../m63_rgb/keymaps/default/readme.md | 0 .../m63_rgb/keymaps/via/config.h | 3 ++- .../m63_rgb/keymaps/via/keymap.c | 7 ++++--- .../m63_rgb/keymaps/via/readme.md | 0 .../m63_rgb/keymaps/via/rules.mk | 0 .../chinese_pcb => mss_studio}/m63_rgb/m63_rgb.c | 3 ++- .../chinese_pcb => mss_studio}/m63_rgb/m63_rgb.h | 3 ++- .../chinese_pcb => mss_studio}/m63_rgb/readme.md | 6 +++--- .../chinese_pcb => mss_studio}/m63_rgb/rules.mk | 0 13 files changed, 22 insertions(+), 20 deletions(-) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/config.h (94%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/info.json (100%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/default/keymap.c (98%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/default/readme.md (100%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/via/config.h (89%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/via/keymap.c (98%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/via/readme.md (100%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/keymaps/via/rules.mk (100%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/m63_rgb.c (96%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/m63_rgb.h (97%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/readme.md (79%) rename keyboards/{horrortroll/chinese_pcb => mss_studio}/m63_rgb/rules.mk (100%) diff --git a/keyboards/horrortroll/chinese_pcb/readme.md b/keyboards/horrortroll/chinese_pcb/readme.md index 3ed2a7c71b..cb73d8a43b 100644 --- a/keyboards/horrortroll/chinese_pcb/readme.md +++ b/keyboards/horrortroll/chinese_pcb/readme.md @@ -10,6 +10,5 @@ This is a folder for collection code of Chinese PCB, where they only sold one-ti | ------------- | ------------- | ------------- | ------- | ------------------------ | ---- | ----- | | Black E6.5 | Atmega32U4 | 68 Keys (65%) | No | Backlight & RGB Lighting | No | No | | Devil68 Pro | Atmega32U4 | 68 Keys (65%) | Yes | RGB Matrix | No | No | - | M63 RGB | STM32F072CBU6 | 63 Keys (60%) | Yes | RGB Matrix | No | No | | | | | | | | | diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/config.h b/keyboards/mss_studio/m63_rgb/config.h similarity index 94% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/config.h rename to keyboards/mss_studio/m63_rgb/config.h index 4c126bb3f3..ad5fbfa1c3 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/config.h +++ b/keyboards/mss_studio/m63_rgb/config.h @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 @@ -19,10 +20,10 @@ #include "config_common.h" /* USB Device descriptor parameter */ -#define VENDOR_ID 0x7516 -#define PRODUCT_ID 0x6002 +#define VENDOR_ID 0x4D4B +#define PRODUCT_ID 0x6063 #define DEVICE_VER 0x0001 -#define MANUFACTURER HorrorTroll +#define MANUFACTURER Mss Studio #define PRODUCT M63 RGB /* key matrix size */ @@ -33,9 +34,6 @@ #define MATRIX_ROW_PINS { B3, B4, A0, A2, A3 } #define MATRIX_COL_PINS { B0, B1, B2, B10, A7, A6, A5, A4, B5, B6, A1, B7, B8, B9 } -#define BOOTMAGIC_LITE_ROW 3 -#define BOOTMAGIC_LITE_COLUMN 5 - /* COL2ROW or ROW2COL */ #define DIODE_DIRECTION COL2ROW diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/info.json b/keyboards/mss_studio/m63_rgb/info.json similarity index 100% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/info.json rename to keyboards/mss_studio/m63_rgb/info.json diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/default/keymap.c b/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c similarity index 98% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/default/keymap.c rename to keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c index 8f421c22f5..713b1288eb 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/default/keymap.c +++ b/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 @@ -27,8 +28,8 @@ // entirely and just use numbers. enum layer_names { - _BASE = 0, - _FN = 1 + _BASE, + _FN, }; enum user_rgb_mode { diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/default/readme.md b/keyboards/mss_studio/m63_rgb/keymaps/default/readme.md similarity index 100% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/default/readme.md rename to keyboards/mss_studio/m63_rgb/keymaps/default/readme.md diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/config.h b/keyboards/mss_studio/m63_rgb/keymaps/via/config.h similarity index 89% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/config.h rename to keyboards/mss_studio/m63_rgb/keymaps/via/config.h index fe6aa8c1f7..db20f3b87b 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/config.h +++ b/keyboards/mss_studio/m63_rgb/keymaps/via/config.h @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/keymap.c b/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c similarity index 98% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/keymap.c rename to keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c index 8f421c22f5..713b1288eb 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/keymap.c +++ b/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 @@ -27,8 +28,8 @@ // entirely and just use numbers. enum layer_names { - _BASE = 0, - _FN = 1 + _BASE, + _FN, }; enum user_rgb_mode { diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/readme.md b/keyboards/mss_studio/m63_rgb/keymaps/via/readme.md similarity index 100% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/readme.md rename to keyboards/mss_studio/m63_rgb/keymaps/via/readme.md diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/rules.mk b/keyboards/mss_studio/m63_rgb/keymaps/via/rules.mk similarity index 100% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/keymaps/via/rules.mk rename to keyboards/mss_studio/m63_rgb/keymaps/via/rules.mk diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.c b/keyboards/mss_studio/m63_rgb/m63_rgb.c similarity index 96% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.c rename to keyboards/mss_studio/m63_rgb/m63_rgb.c index ef1eabddf8..dd071849b5 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.c +++ b/keyboards/mss_studio/m63_rgb/m63_rgb.c @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.h b/keyboards/mss_studio/m63_rgb/m63_rgb.h similarity index 97% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.h rename to keyboards/mss_studio/m63_rgb/m63_rgb.h index b2461758e2..19f7c7b167 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/m63_rgb.h +++ b/keyboards/mss_studio/m63_rgb/m63_rgb.h @@ -1,4 +1,5 @@ -/* Copyright 2021 HorrorTroll +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll * * 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 diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/readme.md b/keyboards/mss_studio/m63_rgb/readme.md similarity index 79% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/readme.md rename to keyboards/mss_studio/m63_rgb/readme.md index 7ec01047b1..942b7a60a6 100644 --- a/keyboards/horrortroll/chinese_pcb/m63_rgb/readme.md +++ b/keyboards/mss_studio/m63_rgb/readme.md @@ -7,11 +7,11 @@ Support STM32F072CBU6 keyboard. Make example for this keyboard (after setting up your build environment): - make horrortroll/chinese_pcb/m63_rgb:default + make mss_studio/m63_rgb:default Flashing example for this keyboard: - make horrortroll/chinese_pcb/m63_rgb:default:flash + make mss_studio/m63_rgb:default:flash See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). @@ -19,6 +19,6 @@ See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_to Enter the bootloader in 3 ways: -* **Bootmagic reset**: Hold down the key at (3,5) in the matrix (B key) and plug in the keyboard +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Esc key) and plug in the keyboard * **Physical reset button**: Press and hold the button on the back of the PCB, then plug in the keyboard * **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/horrortroll/chinese_pcb/m63_rgb/rules.mk b/keyboards/mss_studio/m63_rgb/rules.mk similarity index 100% rename from keyboards/horrortroll/chinese_pcb/m63_rgb/rules.mk rename to keyboards/mss_studio/m63_rgb/rules.mk From c0ab4ed539bad0a490e19ee86c093d3c3f5e02c2 Mon Sep 17 00:00:00 2001 From: Astrid Yu Date: Wed, 11 May 2022 23:49:15 -0700 Subject: [PATCH 391/699] Allow overriding Niv inputs in shell.nix (#16602) --- shell.nix | 37 +++++++++++++++++++------------------ 1 file changed, 19 insertions(+), 18 deletions(-) diff --git a/shell.nix b/shell.nix index 5023a3b0f7..4701c83bb6 100644 --- a/shell.nix +++ b/shell.nix @@ -1,10 +1,26 @@ -{ avr ? true, arm ? true, teensy ? true }: let # We specify sources via Niv: use "niv update nixpkgs" to update nixpkgs, for example. sources = import ./util/nix/sources.nix { }; - pkgs = import sources.nixpkgs { }; +in +# However, if you want to override Niv's inputs, this will let you do that. +{ pkgs ? import sources.nixpkgs { } +, poetry2nix ? pkgs.callPackage (import sources.poetry2nix) { } +, avr ? true +, arm ? true +, teensy ? true }: +with pkgs; +let + avrlibc = pkgsCross.avr.libcCross; - poetry2nix = pkgs.callPackage (import sources.poetry2nix) { }; + avr_incflags = [ + "-isystem ${avrlibc}/avr/include" + "-B${avrlibc}/avr/lib/avr5" + "-L${avrlibc}/avr/lib/avr5" + "-B${avrlibc}/avr/lib/avr35" + "-L${avrlibc}/avr/lib/avr35" + "-B${avrlibc}/avr/lib/avr51" + "-L${avrlibc}/avr/lib/avr51" + ]; # Builds the python env based on nix/pyproject.toml and # nix/poetry.lock Use the "poetry update --lock", "poetry add @@ -21,21 +37,6 @@ let }); }; in - -with pkgs; -let - avrlibc = pkgsCross.avr.libcCross; - - avr_incflags = [ - "-isystem ${avrlibc}/avr/include" - "-B${avrlibc}/avr/lib/avr5" - "-L${avrlibc}/avr/lib/avr5" - "-B${avrlibc}/avr/lib/avr35" - "-L${avrlibc}/avr/lib/avr35" - "-B${avrlibc}/avr/lib/avr51" - "-L${avrlibc}/avr/lib/avr51" - ]; -in mkShell { name = "qmk-firmware"; From 59fa34a6fab9a3dfa281e8595bdbd08f728dacb8 Mon Sep 17 00:00:00 2001 From: jack <0x6A73@pm.me> Date: Thu, 12 May 2022 12:24:03 -0600 Subject: [PATCH 392/699] [Keyboard] Refactor mechwild/mokulua (#17068) --- .../mechwild/mokulua/{standard => }/config.h | 9 +- .../mokulua/{lib/mokulua.c => glcdfont.c} | 0 keyboards/mechwild/mokulua/info.json | 5 +- .../{standard => }/keymaps/default/keymap.c | 4 +- .../{standard => }/keymaps/default/readme.md | 0 .../{standard => }/keymaps/silly/config.h | 0 .../{standard => }/keymaps/silly/keymap.c | 0 .../{standard => }/keymaps/silly/readme.md | 0 .../keymaps/via => keymaps/silly}/rules.mk | 0 .../{standard => }/keymaps/via/keymap.c | 4 +- .../{standard => }/keymaps/via/readme.md | 0 .../keymaps/silly => keymaps/via}/rules.mk | 0 keyboards/mechwild/mokulua/mirrored/config.h | 98 ------------------- .../mokulua/mirrored/keymaps/default/keymap.c | 46 --------- .../mirrored/keymaps/default/readme.md | 1 - .../mokulua/mirrored/keymaps/via/keymap.c | 46 --------- .../mokulua/mirrored/keymaps/via/readme.md | 1 - keyboards/mechwild/mokulua/mirrored/rules.mk | 22 ----- .../{mirrored/mirrored.c => mokulua.c} | 4 +- .../{mirrored/mirrored.h => mokulua.h} | 26 +---- keyboards/mechwild/mokulua/rules.mk | 23 ++++- .../mokulua/standard/keymaps/via/rules.mk | 2 - keyboards/mechwild/mokulua/standard/rules.mk | 22 ----- .../mechwild/mokulua/standard/standard.c | 82 ---------------- .../mechwild/mokulua/standard/standard.h | 52 ---------- 25 files changed, 33 insertions(+), 414 deletions(-) rename keyboards/mechwild/mokulua/{standard => }/config.h (94%) rename keyboards/mechwild/mokulua/{lib/mokulua.c => glcdfont.c} (100%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/default/keymap.c (99%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/default/readme.md (100%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/silly/config.h (100%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/silly/keymap.c (100%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/silly/readme.md (100%) rename keyboards/mechwild/mokulua/{mirrored/keymaps/via => keymaps/silly}/rules.mk (100%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/via/keymap.c (99%) rename keyboards/mechwild/mokulua/{standard => }/keymaps/via/readme.md (100%) rename keyboards/mechwild/mokulua/{standard/keymaps/silly => keymaps/via}/rules.mk (100%) delete mode 100644 keyboards/mechwild/mokulua/mirrored/config.h delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c delete mode 100644 keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md delete mode 100644 keyboards/mechwild/mokulua/mirrored/rules.mk rename keyboards/mechwild/mokulua/{mirrored/mirrored.c => mokulua.c} (96%) rename keyboards/mechwild/mokulua/{mirrored/mirrored.h => mokulua.h} (51%) delete mode 100644 keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk delete mode 100644 keyboards/mechwild/mokulua/standard/rules.mk delete mode 100644 keyboards/mechwild/mokulua/standard/standard.c delete mode 100644 keyboards/mechwild/mokulua/standard/standard.h diff --git a/keyboards/mechwild/mokulua/standard/config.h b/keyboards/mechwild/mokulua/config.h similarity index 94% rename from keyboards/mechwild/mokulua/standard/config.h rename to keyboards/mechwild/mokulua/config.h index be6495048c..a424bc6648 100644 --- a/keyboards/mechwild/mokulua/standard/config.h +++ b/keyboards/mechwild/mokulua/config.h @@ -32,7 +32,7 @@ /* COL2ROW, ROW2COL */ #define DIODE_DIRECTION COL2ROW -#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c" +#define OLED_FONT_H "keyboards/mechwild/mokulua/glcdfont.c" /* * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. @@ -79,9 +79,6 @@ /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - /* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */ #define LOCKING_SUPPORT_ENABLE /* Locking resynchronize hack */ @@ -131,5 +128,5 @@ /* Bootmagic Lite key configuration */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 +//#define BOOTMAGIC_LITE_ROW 0 +//#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechwild/mokulua/lib/mokulua.c b/keyboards/mechwild/mokulua/glcdfont.c similarity index 100% rename from keyboards/mechwild/mokulua/lib/mokulua.c rename to keyboards/mechwild/mokulua/glcdfont.c diff --git a/keyboards/mechwild/mokulua/info.json b/keyboards/mechwild/mokulua/info.json index 9620a4ddda..0be62ecf80 100644 --- a/keyboards/mechwild/mokulua/info.json +++ b/keyboards/mechwild/mokulua/info.json @@ -3,11 +3,8 @@ "url": "https://mechwild.com", "maintainer": "kylemccreery", "layouts": { - "LAYOUT_standard": { + "LAYOUT": { "layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":15.75, "y":0}, {"x":16.75, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.5, "y":1}, {"x":16.5, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.85, "y":2}, {"x":16.85, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.5, "y":3}, {"x":16.5, "y":3}, {"x":17.5, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.5, "y":4}, {"x":16.5, "y":4}, {"x":17.5, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.5, "y":2}, {"x":-0.5, "y":2}, {"x":0.5, "y":2}, {"x":1.5, "y":2}, {"x":2.5, "y":2}, {"x":-1.0, "y":3}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}] - }, - "LAYOUT_mirrored": { - "layout": [{"x":0.5, "y":0}, {"x":1.5, "y":0}, {"x":16.25, "y":0}, {"x":17.25, "y":0}, {"x":0.47, "y":1, "w":1.5}, {"x":1.97, "y":1}, {"x":15.78, "y":1}, {"x":16.78, "y":1, "w":1.5}, {"x":0.37, "y":2, "w":1.75}, {"x":2.12, "y":2}, {"x":15.63, "y":2}, {"x":16.63, "y":2, "w":1.75}, {"x":0.22, "y":3, "w":1.25}, {"x":1.47, "y":3}, {"x":2.47, "y":3}, {"x":9.43, "y":3}, {"x":15.28, "y":3}, {"x":16.28, "y":3}, {"x":17.28, "y":3, "w":1.25}, {"x":0.47, "y":4}, {"x":1.47, "y":4}, {"x":2.47, "y":4}, {"x":9.68, "y":4}, {"x":15.25, "y":4}, {"x":16.25, "y":4}, {"x":17.25, "y":4}, {"x":0, "y":1.25}, {"x":1, "y":1.25}, {"x":2, "y":1.25}, {"x":3, "y":1.25}, {"x":4, "y":1.25}, {"x":0.5, "y":2.25}, {"x":1.5, "y":2.25}, {"x":2.5, "y":2.25}, {"x":3.5, "y":2.25}, {"x":4.5, "y":2.25}, {"x":0.75, "y":3.25}, {"x":1.75, "y":3.25}, {"x":2.75, "y":3.25}, {"x":3.75, "y":3.25}, {"x":4.75, "y":3.25}, {"x":1.25, "y":4.25}, {"x":2.25, "y":4.25}, {"x":3.25, "y":4.25}, {"x":4.25, "y":4.25}, {"x":5.57, "y":4.25}, {"x":1, "y":5.25, "w":1.25}, {"x":2.25, "y":5.25, "w":1.5}, {"x":3.75, "y":5.25, "w":1.5}, {"x":5.32, "y":5.25}, {"x":-1.0, "y":2}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":2}, {"x":-1.5, "y":3}, {"x":-0.5, "y":3}, {"x":0.5, "y":3}, {"x":1.5, "y":3}, {"x":2.5, "y":3}, {"x":-1.75, "y":4}, {"x":-0.75, "y":4}, {"x":0.25, "y":4}, {"x":1.25, "y":4}, {"x":2.25, "y":4}, {"x":-1.25, "y":5}, {"x":-0.25, "y":5}, {"x":0.75, "y":5}, {"x":1.75, "y":5}, {"x":-1.25, "y":6, "w":1.5}, {"x":0.25, "y":6, "w":1.5}, {"x":1.75, "y":6, "w":1.25}] } } } diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/keymaps/default/keymap.c similarity index 99% rename from keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c rename to keyboards/mechwild/mokulua/keymaps/default/keymap.c index 724dfee41c..69a16d090f 100644 --- a/keyboards/mechwild/mokulua/standard/keymaps/default/keymap.c +++ b/keyboards/mechwild/mokulua/keymaps/default/keymap.c @@ -10,8 +10,8 @@ enum layer_names { _BASE, _FN1, - _FN2, - _FN3 + _FN2, + _FN3 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/mechwild/mokulua/standard/keymaps/default/readme.md b/keyboards/mechwild/mokulua/keymaps/default/readme.md similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/default/readme.md rename to keyboards/mechwild/mokulua/keymaps/default/readme.md diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/config.h b/keyboards/mechwild/mokulua/keymaps/silly/config.h similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/silly/config.h rename to keyboards/mechwild/mokulua/keymaps/silly/config.h diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c b/keyboards/mechwild/mokulua/keymaps/silly/keymap.c similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/silly/keymap.c rename to keyboards/mechwild/mokulua/keymaps/silly/keymap.c diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md b/keyboards/mechwild/mokulua/keymaps/silly/readme.md similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/silly/readme.md rename to keyboards/mechwild/mokulua/keymaps/silly/readme.md diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/keymaps/silly/rules.mk similarity index 100% rename from keyboards/mechwild/mokulua/mirrored/keymaps/via/rules.mk rename to keyboards/mechwild/mokulua/keymaps/silly/rules.mk diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/keymaps/via/keymap.c similarity index 99% rename from keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c rename to keyboards/mechwild/mokulua/keymaps/via/keymap.c index 724dfee41c..69a16d090f 100644 --- a/keyboards/mechwild/mokulua/standard/keymaps/via/keymap.c +++ b/keyboards/mechwild/mokulua/keymaps/via/keymap.c @@ -10,8 +10,8 @@ enum layer_names { _BASE, _FN1, - _FN2, - _FN3 + _FN2, + _FN3 }; const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/readme.md b/keyboards/mechwild/mokulua/keymaps/via/readme.md similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/via/readme.md rename to keyboards/mechwild/mokulua/keymaps/via/readme.md diff --git a/keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk b/keyboards/mechwild/mokulua/keymaps/via/rules.mk similarity index 100% rename from keyboards/mechwild/mokulua/standard/keymaps/silly/rules.mk rename to keyboards/mechwild/mokulua/keymaps/via/rules.mk diff --git a/keyboards/mechwild/mokulua/mirrored/config.h b/keyboards/mechwild/mokulua/mirrored/config.h deleted file mode 100644 index d5887c7ff5..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/config.h +++ /dev/null @@ -1,98 +0,0 @@ -// Copyright 2022 Kyle McCreery (@kylemccreery) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#include "config_common.h" - -/* USB Device descriptor parameter */ -#define VENDOR_ID 0x6D77 // mw = "MechWild" -#define PRODUCT_ID 0x170C -#define DEVICE_VER 0x0103 -#define MANUFACTURER MechWild -#define PRODUCT Mokulua - -/* Key matrix size */ -#define MATRIX_ROWS 12 -#define MATRIX_COLS 6 - -/* Key matrix pins */ -#define MATRIX_ROW_PINS { F4, F5, F6, F7, B1, B3 } -#define MATRIX_COL_PINS { D4, C6, D7, E6, B4, B5 } -#define UNUSED_PINS - -/* Encoder pins */ -#define ENCODERS_PAD_A { D2 } -#define ENCODERS_PAD_B { B2 } - -/* Encoder resolution */ -#define ENCODER_RESOLUTION 4 -#define TAP_CODE_DELAY 10 - -/* COL2ROW, ROW2COL */ -#define DIODE_DIRECTION COL2ROW - -#define OLED_FONT_H "keyboards/mechwild/mokulua/lib/mokulua.c" - -/* - * Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN. - */ -#define SOFT_SERIAL_PIN D3 -#define MASTER_LEFT -//#define MASTER_RIGHT -#define RGBLIGHT_SPLIT -#define RGBLED_SPLIT { 8, 8 } -#define SPLIT_LAYER_STATE_ENABLE -#define SPLIT_LED_STATE_ENABLE -#define SPLIT_MODS_ENABLE -#define SPLIT_OLED_ENABLE - -/* RGB options */ -#define RGB_DI_PIN B6 -#ifdef RGB_DI_PIN -# define RGBLED_NUM 16 -# define RGBLIGHT_HUE_STEP 8 -# define RGBLIGHT_SAT_STEP 8 -# define RGBLIGHT_VAL_STEP 8 -# define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -# define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -/*== all animations enable ==*/ -//# define RGBLIGHT_ANIMATIONS -/*== or choose animations ==*/ -//# define RGBLIGHT_EFFECT_BREATHING -# define RGBLIGHT_EFFECT_RAINBOW_MOOD -# define RGBLIGHT_EFFECT_RAINBOW_SWIRL -//# define RGBLIGHT_EFFECT_SNAKE -//# define RGBLIGHT_EFFECT_KNIGHT -//# define RGBLIGHT_EFFECT_CHRISTMAS -//# define RGBLIGHT_EFFECT_STATIC_GRADIENT -//# define RGBLIGHT_EFFECT_RGB_TEST -//# define RGBLIGHT_EFFECT_ALTERNATING -/*== customize breathing effect ==*/ -/*==== (DEFAULT) use fixed table instead of exp() and sin() ====*/ -//# define RGBLIGHT_BREATHE_TABLE_SIZE 256 // 256(default) or 128 or 64 -/*==== use exp() and sin() ====*/ -//# define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 -//# define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -#endif - -/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ -#define DEBOUNCE 5 - -/* define if matrix has ghost (lacks anti-ghosting diodes) */ -//#define MATRIX_HAS_GHOST - -/* 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 useful for the Windows task manager shortcut (ctrl+shift+esc). - */ -//#define GRAVE_ESC_CTRL_OVERRIDE - - -/* Bootmagic Lite key configuration */ -#define BOOTMAGIC_LITE_ROW 0 -#define BOOTMAGIC_LITE_COLUMN 0 diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c deleted file mode 100644 index 330c9320a0..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/keymaps/default/keymap.c +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2022 Kyle McCreery (@kylemccreery) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include QMK_KEYBOARD_H - -#define FN1_SPC LT(1, KC_SPC) -#define FN2_SPC LT(2, KC_SPC) - -// Defines names for use in layer keycodes and the keymap -enum layer_names { - _BASE, - _FN1, - _FN2, - _FN3 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( - KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, _______, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS, - MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, - KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, - KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT - ), - [_FN1] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END - ), - [_FN2] = LAYOUT( - _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [_FN3] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ) -}; diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md deleted file mode 100644 index 727105dcba..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/keymaps/default/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The default keymap for Mokulua using a mirrored right-half diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c deleted file mode 100644 index 330c9320a0..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/keymaps/via/keymap.c +++ /dev/null @@ -1,46 +0,0 @@ -// Copyright 2022 Kyle McCreery (@kylemccreery) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include QMK_KEYBOARD_H - -#define FN1_SPC LT(1, KC_SPC) -#define FN2_SPC LT(2, KC_SPC) - -// Defines names for use in layer keycodes and the keymap -enum layer_names { - _BASE, - _FN1, - _FN2, - _FN3 -}; - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT( - KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_BSPC, _______, - KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_RBRC, KC_BSLS, - MO(1), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_SCLN, KC_H, KC_J, KC_K, KC_L, KC_QUOT, KC_ENT, - KC_LSFT, _______, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_MUTE, KC_MUTE, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_RSFT, - KC_LCTL, KC_LGUI, KC_LALT, MO(2), FN1_SPC, FN2_SPC, RGB_RMOD, RGB_MOD, FN2_SPC, FN1_SPC, MO(2), KC_LEFT, KC_DOWN, KC_RGHT - ), - [_FN1] = LAYOUT( - _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, KC_DEL, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLSH, KC_PGUP, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END - ), - [_FN2] = LAYOUT( - _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ), - [_FN3] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ - ) -}; diff --git a/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md b/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md deleted file mode 100644 index 37aca6eac7..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/keymaps/via/readme.md +++ /dev/null @@ -1 +0,0 @@ -# The VIA keymap for Mokulua using a mirrored right-half diff --git a/keyboards/mechwild/mokulua/mirrored/rules.mk b/keyboards/mechwild/mokulua/mirrored/rules.mk deleted file mode 100644 index 5aae5c7c76..0000000000 --- a/keyboards/mechwild/mokulua/mirrored/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = caterina - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes # Enable encoder -OLED_ENABLE = yes # Enable OLED Screen -OLED_DRIVER = SSD1306 # Define OLED Driver -SPLIT_KEYBOARD = yes # Define split functionality \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.c b/keyboards/mechwild/mokulua/mokulua.c similarity index 96% rename from keyboards/mechwild/mokulua/mirrored/mirrored.c rename to keyboards/mechwild/mokulua/mokulua.c index 777c146d64..57c800ef89 100644 --- a/keyboards/mechwild/mokulua/mirrored/mirrored.c +++ b/keyboards/mechwild/mokulua/mokulua.c @@ -1,7 +1,7 @@ // Copyright 2022 Kyle McCreery (@Kyle McCreery) // SPDX-License-Identifier: GPL-2.0-or-later -#include "standard.h" +#include "mokulua.h" #ifdef ENCODER_ENABLE bool encoder_update_kb(uint8_t index, bool clockwise) { @@ -28,7 +28,7 @@ bool encoder_update_kb(uint8_t index, bool clockwise) { #endif #ifdef OLED_ENABLE - oled_rotation_t oled_init_user(oled_rotation_t rotation) { + oled_rotation_t oled_init_kb(oled_rotation_t rotation) { return OLED_ROTATION_270; // flips the display 270 degrees } diff --git a/keyboards/mechwild/mokulua/mirrored/mirrored.h b/keyboards/mechwild/mokulua/mokulua.h similarity index 51% rename from keyboards/mechwild/mokulua/mirrored/mirrored.h rename to keyboards/mechwild/mokulua/mokulua.h index 5b7dd29c25..95ea1e3709 100644 --- a/keyboards/mechwild/mokulua/mirrored/mirrored.h +++ b/keyboards/mechwild/mokulua/mokulua.h @@ -7,28 +7,7 @@ #define ___ KC_NO -#define LAYOUT_mirrored( \ - L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ - L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \ - L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ - L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ - L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ -) { \ - { L00, L01, L02, L03, L04, L05 }, \ - { L10, L11, L12, L13, L14, L15 }, \ - { L20, L21, L22, L23, L24, L25 }, \ - { L30, L31, L32, L33, L34, L35 }, \ - { L40, L41, L42, L43, L44, L45 }, \ - { L46, L36, L37, L26, L16, L06 }, \ - { R06, R05, R04, R03, R02, R01 }, \ - { R16, R15, R14, R13, R12, R11 }, \ - { R26, R25, R24, R23, R22, R21 }, \ - { R37, R36, R35, R34, R33, R32 }, \ - { R46, R45, R44, R43, R42, R41 }, \ - { R40, R31, R30, R20, R10, R00 } \ -} - -#define LAYOUT_standard( \ +#define LAYOUT( \ L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \ L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ @@ -48,6 +27,3 @@ { R41, R42, R43, R44, R45, R46 }, \ { R00, R20, R31, R30, R40, ___ } \ } - - -#define LAYOUT LAYOUT_mirrored \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/rules.mk b/keyboards/mechwild/mokulua/rules.mk index 3a87a143e5..17eb654430 100644 --- a/keyboards/mechwild/mokulua/rules.mk +++ b/keyboards/mechwild/mokulua/rules.mk @@ -1 +1,22 @@ -DEFAULT_FOLDER = mechwild/mokulua/standard \ No newline at end of file +# MCU name +MCU = atmega32u4 + +# Bootloader selection +BOOTLOADER = caterina + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = no # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = yes # Enable encoder +OLED_ENABLE = yes # Enable OLED Screen +OLED_DRIVER = SSD1306 # Define OLED Driver +SPLIT_KEYBOARD = yes # Define split functionality diff --git a/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk b/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk deleted file mode 100644 index 36b7ba9cbc..0000000000 --- a/keyboards/mechwild/mokulua/standard/keymaps/via/rules.mk +++ /dev/null @@ -1,2 +0,0 @@ -VIA_ENABLE = yes -LTO_ENABLE = yes diff --git a/keyboards/mechwild/mokulua/standard/rules.mk b/keyboards/mechwild/mokulua/standard/rules.mk deleted file mode 100644 index 5aae5c7c76..0000000000 --- a/keyboards/mechwild/mokulua/standard/rules.mk +++ /dev/null @@ -1,22 +0,0 @@ -# MCU name -MCU = atmega32u4 - -# Bootloader selection -BOOTLOADER = caterina - -# Build Options -# change yes to no to disable -# -BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite -MOUSEKEY_ENABLE = yes # Mouse keys -EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = no # Console for debug -COMMAND_ENABLE = no # Commands for debug and configuration -NKRO_ENABLE = no # Enable N-Key Rollover -BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow -AUDIO_ENABLE = no # Audio output -ENCODER_ENABLE = yes # Enable encoder -OLED_ENABLE = yes # Enable OLED Screen -OLED_DRIVER = SSD1306 # Define OLED Driver -SPLIT_KEYBOARD = yes # Define split functionality \ No newline at end of file diff --git a/keyboards/mechwild/mokulua/standard/standard.c b/keyboards/mechwild/mokulua/standard/standard.c deleted file mode 100644 index 777c146d64..0000000000 --- a/keyboards/mechwild/mokulua/standard/standard.c +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2022 Kyle McCreery (@Kyle McCreery) -// SPDX-License-Identifier: GPL-2.0-or-later - -#include "standard.h" - -#ifdef ENCODER_ENABLE -bool encoder_update_kb(uint8_t index, bool clockwise) { - if (!encoder_update_user(index, clockwise)) { return false; } - switch (index) { - case 0: - if (clockwise) { - tap_code(KC_VOLU); - } else { - tap_code(KC_VOLD); - } - break; - case 1: - if (clockwise) { - tap_code(KC_PGUP); - } else { - tap_code(KC_PGDN); - } - break; - - } - return true; -} -#endif - -#ifdef OLED_ENABLE - oled_rotation_t oled_init_user(oled_rotation_t rotation) { - return OLED_ROTATION_270; // flips the display 270 degrees - } - - static void render_logo(void) { // Render MechWild "MW" Logo - static const char PROGMEM logo_1[] = {0x8A, 0x8B, 0x8C, 0x8D, 0x00}; - static const char PROGMEM logo_2[] = {0xAA, 0xAB, 0xAC, 0xAD, 0xAE, 0x00}; - static const char PROGMEM logo_3[] = {0xCA, 0xCB, 0xCC, 0xCD, 0x00}; - static const char PROGMEM logo_4[] = {0x20, 0x8E, 0x8F, 0x90, 0x00}; - oled_set_cursor(0,0); - oled_write_P(logo_1, false); - oled_set_cursor(0,1); - oled_write_P(logo_2, false); - oled_set_cursor(0,2); - oled_write_P(logo_3, false); - oled_set_cursor(0,3); - oled_write_P(logo_4, false); - } - bool oled_task_kb(void) { - if (!oled_task_user()) { - return false; - } - render_logo(); - oled_set_cursor(0,6); - - oled_write_ln_P(PSTR("Layer"), false); - - switch (get_highest_layer(layer_state)) { - case 0: - oled_write_ln_P(PSTR("Base"), false); - break; - case 1: - oled_write_ln_P(PSTR("FN 1"), false); - break; - case 2: - oled_write_ln_P(PSTR("FN 2"), false); - break; - case 3: - oled_write_ln_P(PSTR("FN 3"), false); - break; - default: - oled_write_ln_P(PSTR("Undef"), false); - } - oled_write_ln_P(PSTR(""), false); - // Host Keyboard LED Status - led_t led_state = host_keyboard_led_state(); - oled_write_ln_P(led_state.num_lock ? PSTR("NUM ") : PSTR(" "), false); - oled_write_ln_P(led_state.caps_lock ? PSTR("CAP ") : PSTR(" "), false); - oled_write_ln_P(led_state.scroll_lock ? PSTR("SCR ") : PSTR(" "), false); - return false; - } -#endif diff --git a/keyboards/mechwild/mokulua/standard/standard.h b/keyboards/mechwild/mokulua/standard/standard.h deleted file mode 100644 index a25fe3eff4..0000000000 --- a/keyboards/mechwild/mokulua/standard/standard.h +++ /dev/null @@ -1,52 +0,0 @@ -// Copyright 2022 Kyle McCreery (@kylemccreery) -// SPDX-License-Identifier: GPL-2.0-or-later - -#pragma once - -#include "quantum.h" - -#define ___ KC_NO - -#define LAYOUT_mirrored( \ - L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ - L10, L11, L12, L13, L14, L15, L16, R10, R11, R12, R13, R14, R15, R16, \ - L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ - L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ - L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ -) { \ - { L00, L01, L02, L03, L04, L05 }, \ - { L10, L11, L12, L13, L14, L15 }, \ - { L20, L21, L22, L23, L24, L25 }, \ - { L30, L31, L32, L33, L34, L35 }, \ - { L40, L41, L42, L43, L44, L45 }, \ - { L46, L36, L37, L26, L16, L06 }, \ - { R06, R05, R04, R03, R02, R01 }, \ - { R16, R15, R14, R13, R12, R11 }, \ - { R26, R25, R24, R23, R22, R21 }, \ - { R37, R36, R35, R34, R33, R32 }, \ - { R46, R45, R44, R43, R42, R41 }, \ - { R40, R31, R30, R20, R10, R00 } \ -} - -#define LAYOUT_standard( \ - L00, L01, L02, L03, L04, L05, L06, R00, R01, R02, R03, R04, R05, R06, \ - L10, L11, L12, L13, L14, L15, L16, R11, R12, R13, R14, R15, R16, \ - L20, L21, L22, L23, L24, L25, L26, R20, R21, R22, R23, R24, R25, R26, \ - L30, L31, L32, L33, L34, L35, L36, L37, R30, R31, R32, R33, R34, R35, R36, R37, \ - L40, L41, L42, L43, L44, L45, L46, R40, R41, R42, R43, R44, R45, R46 \ -) { \ - { L00, L01, L02, L03, L04, L05 }, \ - { L10, L11, L12, L13, L14, L15 }, \ - { L20, L21, L22, L23, L24, L25 }, \ - { L30, L31, L32, L33, L34, L35 }, \ - { L40, L41, L42, L43, L44, L45 }, \ - { L46, L36, L37, L26, L16, L06 }, \ - { R01, R02, R03, R04, R05, R06 }, \ - { R11, R12, R13, R14, R15, R16 }, \ - { R21, R22, R23, R24, R25, R26 }, \ - { R32, R33, R34, R35, R36, R37 }, \ - { R41, R42, R43, R44, R45, R46 }, \ - { R00, R20, R31, R30, R40, ___ } \ -} - -#define LAYOUT LAYOUT_standard From b26ba52bdde82ec2920fa258079026f31d14b192 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 12 May 2022 11:24:40 -0700 Subject: [PATCH 393/699] [Keyboard] KBIC65 Refactor (#17066) --- keyboards/karlb/kbic65/info.json | 1051 +++++++++++------ keyboards/karlb/kbic65/kbic65.h | 170 ++- .../karlb/kbic65/keymaps/default/keymap.c | 4 +- .../karlb/kbic65/keymaps/default_iso/keymap.c | 23 + .../keymaps/{iso => default_iso}/readme.md | 0 .../keymaps/default_iso_split_bs/keymap.c | 23 + .../readme.md | 0 keyboards/karlb/kbic65/keymaps/iso/keymap.c | 22 - .../karlb/kbic65/keymaps/iso_full/keymap.c | 22 - keyboards/karlb/kbic65/keymaps/via/keymap.c | 4 +- keyboards/karlb/kbic65/rules.mk | 2 + 11 files changed, 909 insertions(+), 412 deletions(-) create mode 100644 keyboards/karlb/kbic65/keymaps/default_iso/keymap.c rename keyboards/karlb/kbic65/keymaps/{iso => default_iso}/readme.md (100%) create mode 100644 keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c rename keyboards/karlb/kbic65/keymaps/{iso_full => default_iso_split_bs}/readme.md (100%) delete mode 100644 keyboards/karlb/kbic65/keymaps/iso/keymap.c delete mode 100644 keyboards/karlb/kbic65/keymaps/iso_full/keymap.c diff --git a/keyboards/karlb/kbic65/info.json b/keyboards/karlb/kbic65/info.json index 857f8d3cc5..d572a92fc2 100644 --- a/keyboards/karlb/kbic65/info.json +++ b/keyboards/karlb/kbic65/info.json @@ -31,369 +31,698 @@ "pid": "0xD87A", "device_version": "0.0.1" }, + "layout_aliases": { + "LAYOUT": "LAYOUT_all" + }, "layouts": { - "LAYOUT": { + "LAYOUT_all": { "layout": [ - { - "label": "Esc", - "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 - }, - { - "label": "BkSp1", - "x": 13, - "y": 0 - }, - { - "label": "BkSp2", - "x": 14, - "y": 0 - }, - { - "label": "Delete", - "x": 15.5, - "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": "Enter_ISO", - "x": 13.75, - "y": 1, - "w": 1.25, - "h": 2 - }, - { - "label": "¬", - "x": 15.5, - "y": 1 - }, - { - "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": "~", - "x": 12.75, - "y": 2 - }, - { - "label": "PgUp", - "x": 15.5, - "y": 2 - }, - { - "label": "Shift", - "x": 0, - "y": 3, - "w": 1.25 - }, - { - "label": "|", - "x": 1.25, - "y": 3 - }, - { - "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 - }, - { - "label": "PgDn", - "x": 15.5, - "y": 3 - }, - { - "label": "↑", - "x": 14.25, - "y": 3.25 - }, - { - "label": "Ctrl", - "x": 0, - "y": 4, - "w": 1.25 - }, - { - "label": "Win", - "x": 1.25, - "y": 4, - "w": 1.25 - }, - { - "label": "Alt", - "x": 2.5, - "y": 4, - "w": 1.25 - }, - { - "label": "Space", - "x": 3.75, - "y": 4, - "w": 6.25 - }, - { - "label": "AltGr", - "x": 10, - "y": 4 - }, - { - "label": "Win", - "x": 11, - "y": 4 - }, - { - "label": "Ctrl", - "x": 12, - "y": 4 - }, - { - "label": "←", - "x": 13.25, - "y": 4.25 - }, - { - "label": "↓", - "x": 14.25, - "y": 4.25 - }, - { - "label": "→", - "x": 15.25, - "y": 4.25 - } + {"label":"Esc", "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}, + {"label":"BkSp1", "x":13, "y":0}, + {"label":"BkSp2", "x":14, "y":0}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"PgDn", "x":15.5, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"ISO |", "x":1.25, "y":3}, + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4}, + {"label":"Win", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_iso": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BackSpace", "x":13, "y":0, "w":2}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15.5, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"|", "x":1.25, "y":3}, + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4}, + {"label":"Win", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_iso_split_bs": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BkSp1", "x":13, "y":0}, + {"label":"BkSp2", "x":14, "y":0}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15.5, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"|", "x":1.25, "y":3}, + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4}, + {"label":"Win", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BackSpace", "x":13, "y":0, "w":2}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15.5, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"|", "x":1.25, "y":3}, + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BkSp1", "x":13, "y":0}, + {"label":"BkSp2", "x":14, "y":0}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgDn", "x":15.5, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"|", "x":1.25, "y":3}, + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_ansi": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BackSpace", "x":13, "y":0, "w":2}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"PgDn", "x":15.5, "y":2}, + + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4}, + {"label":"Win", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_ansi_split_bs": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BkSp1", "x":13, "y":0}, + {"label":"BkSp2", "x":14, "y":0}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"PgDn", "x":15.5, "y":2}, + + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4}, + {"label":"Win", "x":11, "y":4}, + {"label":"Ctrl", "x":12, "y":4}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BackSpace", "x":13, "y":0, "w":2}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"PgDn", "x":15.5, "y":2}, + + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} + ] + }, + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + {"label":"Esc", "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}, + {"label":"BkSp1", "x":13, "y":0}, + {"label":"BkSp2", "x":14, "y":0}, + {"label":"Home", "x":15.5, "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":"PgUp", "x":15.5, "y":1}, + + {"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":"PgDn", "x":15.5, "y":2}, + + {"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}, + {"label":"↑", "x":14.25, "y":3.25}, + {"label":"End", "x":15.5, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"AltGr", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"←", "x":13.25, "y":4.25}, + {"label":"↓", "x":14.25, "y":4.25}, + {"label":"→", "x":15.25, "y":4.25} ] } } diff --git a/keyboards/karlb/kbic65/kbic65.h b/keyboards/karlb/kbic65/kbic65.h index 112386bc60..697072b550 100644 --- a/keyboards/karlb/kbic65/kbic65.h +++ b/keyboards/karlb/kbic65/kbic65.h @@ -5,10 +5,31 @@ #include "quantum.h" +#define ___ KC_NO + +/* + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┐ ┌───────┐ + * │10 │00 │11 │01 │12 │02 │13 │03 │14 │04 │15 │05 │16 │06 │17 │ │07 │ │06 │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┤ └─┬─────┤ + * │30 │20 │31 │21 │32 │22 │33 │23 │34 │24 │35 │25 │36 │26 │ │37 │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ ├───┤ ┌──┴┐26 │ ISO Enter + * LShift │50 │40 │51 │41 │52 │42 │53 │43 │54 │44 │55 │45 │56 │ │47 │ │56 │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┘ ├───┤ └───┴────┘ + * │70 │ │70 │60 │71 │61 │72 │62 │73 │63 │74 │64 │75 │65 │76 │┌───┐│57 │ + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┬┴──┬───┘│66 │└───┘ + * │80 │81 │82 │83 │84 │85 │86 │┌───┼───┼───┐ + * └────┴────┴────┴────────────────────────┴───┴───┴───┘│87 │77 │67 │ + * └───┴───┴───┘ + * K83+K84 can be 6.25u/1u or 6u/1.25u + * ┌────┬────┬────┬────────────────────────┬────┬────┐ + * │80 │81 │82 │83 │84 │85 │ 65% with Blocker + * └────┴────┴────┴────────────────────────┴────┴────┘ + */ + // This a shortcut to help you visually see your layout. // The first section contains all of the arguements // The second converts the arguments into a two-dimensional array -#define LAYOUT( \ +#define LAYOUT_all( \ K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \ K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \ K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \ @@ -17,12 +38,155 @@ ) { \ {K00, K01, K02, K03, K04, K05, K06, K07}, \ {K10, K11, K12, K13, K14, K15, K16, K17}, \ - {K20, K21, K22, K23, K24, K25, K26, KC_NO}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ {K30, K31, K32, K33, K34, K35, K36, K37}, \ - {K40, K41, K42, K43, K44, K45, KC_NO, K47}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ {K50, K51, K52, K53, K54, K55, K56, K57}, \ {K60, K61, K62, K63, K64, K65, K66, K67}, \ {K70, K71, K72, K73, K74, K75, K76, K77}, \ {K80, K81, K82, K83, K84, K85, K86, K87} \ } +#define LAYOUT_65_iso( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \ + K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, ___}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {K60, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, K86, K87} \ +} + +#define LAYOUT_65_iso_split_bs( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \ + K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, K17}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {K60, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, K86, K87} \ +} + +#define LAYOUT_65_iso_blocker( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \ + K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, ___}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {K60, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, ___, K87} \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K26, K47, \ + K70, K60, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, K17}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {K60, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, ___, K87} \ +} + +#define LAYOUT_65_ansi( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \ + K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, ___}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {___, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, K86, K87} \ +} + +#define LAYOUT_65_ansi_split_bs( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \ + K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K86, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, K17}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {___, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, K86, K87} \ +} + +#define LAYOUT_65_ansi_blocker( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \ + K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, ___}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {___, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, ___, K87} \ +} + +#define LAYOUT_65_ansi_blocker_split_bs( \ + K10, K00, K11, K01, K12, K02, K13, K03, K14, K04, K15, K05, K16, K06, K17, K07, \ + K30, K20, K31, K21, K32, K22, K33, K23, K34, K24, K35, K25, K36, K26, K37, \ + K50, K40, K51, K41, K52, K42, K53, K43, K54, K44, K55, K45, K56, K47, \ + K70, K71, K61, K72, K62, K73, K63, K74, K64, K75, K65, K76, K66, K57, \ + K80, K81, K82, K83, K84, K85, K87, K77, K67 \ +) { \ + {K00, K01, K02, K03, K04, K05, K06, K07}, \ + {K10, K11, K12, K13, K14, K15, K16, K17}, \ + {K20, K21, K22, K23, K24, K25, K26, ___}, \ + {K30, K31, K32, K33, K34, K35, K36, K37}, \ + {K40, K41, K42, K43, K44, K45, ___, K47}, \ + {K50, K51, K52, K53, K54, K55, K56, K57}, \ + {___, K61, K62, K63, K64, K65, K66, K67}, \ + {K70, K71, K72, K73, K74, K75, K76, K77}, \ + {K80, K81, K82, K83, K84, K85, ___, K87} \ +} diff --git a/keyboards/karlb/kbic65/keymaps/default/keymap.c b/keyboards/karlb/kbic65/keymaps/default/keymap.c index 1691cdd193..5926dcf805 100644 --- a/keyboards/karlb/kbic65/keymaps/default/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/default/keymap.c @@ -6,14 +6,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Default ANSI keymap -[0] = LAYOUT( +[0] = LAYOUT_all( 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_BSPC, _______, KC_HOME, 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, KC_PGUP, 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_PGDN, 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, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), -[1] = LAYOUT( +[1] = LAYOUT_all( KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, diff --git a/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c b/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c new file mode 100644 index 0000000000..73628ebef8 --- /dev/null +++ b/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c @@ -0,0 +1,23 @@ +// Copyright 2021 Karl Berggren <@bkarl> +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// ISO keymap +[0] = LAYOUT_65_iso( + 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_BSPC, KC_HOME, + 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_PGUP, + 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_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT_65_iso( + KC_GRV, 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_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, + _______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) + +}; diff --git a/keyboards/karlb/kbic65/keymaps/iso/readme.md b/keyboards/karlb/kbic65/keymaps/default_iso/readme.md similarity index 100% rename from keyboards/karlb/kbic65/keymaps/iso/readme.md rename to keyboards/karlb/kbic65/keymaps/default_iso/readme.md diff --git a/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c b/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c new file mode 100644 index 0000000000..a69855dde5 --- /dev/null +++ b/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c @@ -0,0 +1,23 @@ +// Copyright 2021 Karl Berggren <@bkarl> +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +// ISO keymap +[0] = LAYOUT_65_iso_split_bs( + 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_BSPC, KC_DEL, KC_HOME, + 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_PGUP, + 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_NUHS, KC_ENT, KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + +[1] = LAYOUT_65_iso_split_bs( + KC_GRV, 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_INS, + _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, + _______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) + +}; diff --git a/keyboards/karlb/kbic65/keymaps/iso_full/readme.md b/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/readme.md similarity index 100% rename from keyboards/karlb/kbic65/keymaps/iso_full/readme.md rename to keyboards/karlb/kbic65/keymaps/default_iso_split_bs/readme.md diff --git a/keyboards/karlb/kbic65/keymaps/iso/keymap.c b/keyboards/karlb/kbic65/keymaps/iso/keymap.c deleted file mode 100644 index ad2b23626f..0000000000 --- a/keyboards/karlb/kbic65/keymaps/iso/keymap.c +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2021 Karl Berggren <@bkarl> -// SPDX-License-Identifier: GPL-2.0-or-later - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ISO keymap -[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_BSPC, _______, KC_HOME, -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_ENT, KC_PGUP, -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_NUHS, KC_PGDN, -KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, -KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[1] = LAYOUT( -KC_GRV, 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_INS, -_______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, -_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, -_______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, -_______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) -}; diff --git a/keyboards/karlb/kbic65/keymaps/iso_full/keymap.c b/keyboards/karlb/kbic65/keymaps/iso_full/keymap.c deleted file mode 100644 index 671cc8b8a8..0000000000 --- a/keyboards/karlb/kbic65/keymaps/iso_full/keymap.c +++ /dev/null @@ -1,22 +0,0 @@ -// Copyright 2021 Karl Berggren <@bkarl> -// SPDX-License-Identifier: GPL-2.0-or-later - -#include QMK_KEYBOARD_H - -const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - -// ISO keymap -[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_BSPC, KC_DEL, KC_HOME, -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_ENT, KC_PGUP, -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_NUHS, KC_PGDN, -KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_END, -KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - -[1] = LAYOUT( -KC_GRV, 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_INS, -_______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, -_______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, -_______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, -_______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) -}; diff --git a/keyboards/karlb/kbic65/keymaps/via/keymap.c b/keyboards/karlb/kbic65/keymaps/via/keymap.c index 1691cdd193..5926dcf805 100644 --- a/keyboards/karlb/kbic65/keymaps/via/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/via/keymap.c @@ -6,14 +6,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Default ANSI keymap -[0] = LAYOUT( +[0] = LAYOUT_all( 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_BSPC, _______, KC_HOME, 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, KC_PGUP, 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_PGDN, 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, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), -[1] = LAYOUT( +[1] = LAYOUT_all( KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, diff --git a/keyboards/karlb/kbic65/rules.mk b/keyboards/karlb/kbic65/rules.mk index f7da71aab2..5f2f840e89 100644 --- a/keyboards/karlb/kbic65/rules.mk +++ b/keyboards/karlb/kbic65/rules.mk @@ -15,3 +15,5 @@ NKRO_ENABLE = yes # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi 65_ansi_blocker 65_ansi_blocker_split_bs 65_ansi_split_bs 65_iso 65_iso_blocker 65_iso_blocker_split_bs 65_iso_split_bs From 58c37c08149ca0bd754a13a32fc4ee6946e07662 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Thu, 12 May 2022 13:11:02 -0700 Subject: [PATCH 394/699] 65_iso_split_bs Community Layout keymap bugfix (#17072) Fix the layout macro reference in the `keymap.c` file, which caused this keymap to not be able to be compiled. --- .../default/65_iso_split_bs/default_65_iso_split_bs/keymap.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/layouts/default/65_iso_split_bs/default_65_iso_split_bs/keymap.c b/layouts/default/65_iso_split_bs/default_65_iso_split_bs/keymap.c index 6fa642b43d..65293bd58f 100644 --- a/layouts/default/65_iso_split_bs/default_65_iso_split_bs/keymap.c +++ b/layouts/default/65_iso_split_bs/default_65_iso_split_bs/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │Ctrl│GUI │Alt │ │Alt│GUI│Ctl│ ← │ ↓ │ → │ * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ */ - [0] = LAYOUT_65_iso( + [0] = LAYOUT_65_iso_split_bs( KC_GRV, 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_BSPC, KC_HOME, 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_PGUP, 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_NUHS, KC_ENT, KC_PGDN, From c199514372b40dea4b79cb02a65558715e1a628e Mon Sep 17 00:00:00 2001 From: Kyle McCreery Date: Fri, 13 May 2022 02:21:25 -0400 Subject: [PATCH 395/699] [Bug] Updated Cirque Pinnacle SPI driver to read data correctly (#17074) --- drivers/sensors/cirque_pinnacle_spi.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/drivers/sensors/cirque_pinnacle_spi.c b/drivers/sensors/cirque_pinnacle_spi.c index e00e73eb8c..34c77df07b 100644 --- a/drivers/sensors/cirque_pinnacle_spi.c +++ b/drivers/sensors/cirque_pinnacle_spi.c @@ -7,6 +7,7 @@ // Masks for Cirque Register Access Protocol (RAP) #define WRITE_MASK 0x80 #define READ_MASK 0xA0 +#define FILLER_BYTE 0xFC extern bool touchpad_init; @@ -16,11 +17,11 @@ void RAP_ReadBytes(uint8_t address, uint8_t* data, uint8_t count) { uint8_t cmdByte = READ_MASK | address; // Form the READ command byte if (touchpad_init) { if (spi_start(CIRQUE_PINNACLE_SPI_CS_PIN, CIRQUE_PINNACLE_SPI_LSBFIRST, CIRQUE_PINNACLE_SPI_MODE, CIRQUE_PINNACLE_SPI_DIVISOR)) { - spi_write(cmdByte); - spi_read(); // filler - spi_read(); // filler + spi_write(cmdByte); // write command byte, receive filler + spi_write(FILLER_BYTE); // write & receive filler + spi_write(FILLER_BYTE); // write & receive filler for (uint8_t i = 0; i < count; i++) { - data[i] = spi_read(); // each sepsequent read gets another register's contents + data[i] = spi_write(FILLER_BYTE); // write filler, receive data on the third filler send } } else { #ifdef CONSOLE_ENABLE From fc3d3ef0764c9b3703e9aa5b57ec298b1ab24c6a Mon Sep 17 00:00:00 2001 From: Andrew Kannan Date: Fri, 13 May 2022 02:22:03 -0400 Subject: [PATCH 396/699] [Keyboard] Add caps and num indicators to Balance keyboard (#17075) --- keyboards/cannonkeys/balance/config.h | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/keyboards/cannonkeys/balance/config.h b/keyboards/cannonkeys/balance/config.h index 937de92f55..a16e9ea072 100644 --- a/keyboards/cannonkeys/balance/config.h +++ b/keyboards/cannonkeys/balance/config.h @@ -32,6 +32,10 @@ along with this program. If not, see . #define MATRIX_ROW_PINS { B4, A15, A14, A0, F0 } #define DIODE_DIRECTION COL2ROW +#define LED_CAPS_LOCK_PIN B12 +#define LED_NUM_LOCK_PIN B14 +#define LED_PIN_ON_STATE 0 + /* define if matrix has ghost */ //#define MATRIX_HAS_GHOST @@ -48,7 +52,7 @@ along with this program. If not, see . #define ENCODERS_PAD_B { B6 } #define ENCODER_RESOLUTION 2 -#define TAP_CODE_DELAY 25 +#define TAP_CODE_DELAY 25 #define DYNAMIC_KEYMAP_LAYER_COUNT 3 From ffe16386f0d4ad280fe8eb6a97e3fac082930f83 Mon Sep 17 00:00:00 2001 From: Josh Hinnebusch Date: Fri, 13 May 2022 02:33:53 -0400 Subject: [PATCH 397/699] [Keyboard] H60 updates (#16999) Co-authored-by: Drashna Jaelre Co-authored-by: Ryan --- keyboards/hineybush/h60/config.h | 36 ++++++++++++-------- keyboards/hineybush/h60/keymaps/via/keymap.c | 18 +++------- keyboards/hineybush/h60/rules.mk | 6 ++-- 3 files changed, 29 insertions(+), 31 deletions(-) diff --git a/keyboards/hineybush/h60/config.h b/keyboards/hineybush/h60/config.h index 044f05fa84..00c238a860 100644 --- a/keyboards/hineybush/h60/config.h +++ b/keyboards/hineybush/h60/config.h @@ -38,21 +38,27 @@ along with this program. If not, see . #define DIODE_DIRECTION COL2ROW #define BACKLIGHT_PIN B7 -#define BACKLIGHT_BREATHING -#define BACKLIGHT_LEVELS 3 +#define BACKLIGHT_LEVELS 12 -// leaving this here if I decide to add RGB down the line - -// #define RGB_DI_PIN E2 -// #ifdef RGB_DI_PIN -// #define RGBLED_NUM 16 -// #define RGBLIGHT_HUE_STEP 8 -// #define RGBLIGHT_SAT_STEP 8 -// #define RGBLIGHT_VAL_STEP 8 -// #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ -// #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ -// /*== all animations enable ==*/ -// #define RGBLIGHT_ANIMATIONS +#define RGB_DI_PIN B0 + #ifdef RGB_DI_PIN + #define RGBLED_NUM 16 + #define RGBLIGHT_HUE_STEP 8 + #define RGBLIGHT_SAT_STEP 8 + #define RGBLIGHT_VAL_STEP 8 + #define RGBLIGHT_LIMIT_VAL 255 /* The maximum brightness level */ + #define RGBLIGHT_SLEEP /* If defined, the RGB lighting will be switched off when the host goes to sleep */ + /*== all animations enable ==*/ +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE // /*== or choose animations ==*/ // #define RGBLIGHT_EFFECT_BREATHING // #define RGBLIGHT_EFFECT_RAINBOW_MOOD @@ -69,7 +75,7 @@ along with this program. If not, see . // /*==== use exp() and sin() ====*/ // #define RGBLIGHT_EFFECT_BREATHE_CENTER 1.85 // 1 to 2.7 // #define RGBLIGHT_EFFECT_BREATHE_MAX 255 // 0 to 255 -// #endif + #endif /* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */ #define DEBOUNCE 5 diff --git a/keyboards/hineybush/h60/keymaps/via/keymap.c b/keyboards/hineybush/h60/keymaps/via/keymap.c index 75c9ac2dd2..5f73376701 100644 --- a/keyboards/hineybush/h60/keymaps/via/keymap.c +++ b/keyboards/hineybush/h60/keymaps/via/keymap.c @@ -3,35 +3,27 @@ */ #include QMK_KEYBOARD_H -// Defines names for use in layer keycodes and the keymap -enum layer_names { - _BASE, - _FN1, - _FN2, - _FN3 -}; - const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [_BASE] = LAYOUT_all( - 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_BSPC, KC_TRNS, + LAYOUT_all( + 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_TRNS, 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, 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, KC_TRNS, KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_SPC, KC_TRNS, KC_RALT, MO(1), KC_RGUI, KC_RCTL), - [_FN1] = LAYOUT_all( + LAYOUT_all( KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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, RESET, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), - [_FN2] = LAYOUT_all( + LAYOUT_all( 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, 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, KC_TRNS), - [_FN3] = LAYOUT_all( + LAYOUT_all( 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/hineybush/h60/rules.mk b/keyboards/hineybush/h60/rules.mk index 6444ea87d8..dfbde71e2b 100644 --- a/keyboards/hineybush/h60/rules.mk +++ b/keyboards/hineybush/h60/rules.mk @@ -10,11 +10,11 @@ BOOTLOADER = atmel-dfu BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite MOUSEKEY_ENABLE = no # Mouse keys EXTRAKEY_ENABLE = yes # Audio control and System control -CONSOLE_ENABLE = yes # Console for debug -COMMAND_ENABLE = yes # Commands for debug and configuration +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = yes # Enable keyboard backlight functionality -RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output SLEEP_LED_ENABLE = yes From e5e7039368f2efd03005ce6b37a49d591608e8dc Mon Sep 17 00:00:00 2001 From: Stephon Parker Date: Fri, 13 May 2022 02:36:12 -0400 Subject: [PATCH 398/699] [Keymap] Contra - QWERTY US basic layout; MechWild Marcuio - EN update layout (#16787) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre Co-authored-by: Ryan Co-authored-by: Stephon Parker --- keyboards/contra/keymaps/basic/readme.md | 2 +- .../contra/keymaps/basic_qwerty/config.h | 35 +++ .../contra/keymaps/basic_qwerty/keymap.c | 140 +++++++++ .../contra/keymaps/basic_qwerty/readme.md | 64 ++++ .../keymaps/fearless_spiff_en/config.h | 19 ++ .../keymaps/fearless_spiff_en/keymap.c | 293 ++++++++++++++++++ .../keymaps/fearless_spiff_en/readme.md | 22 ++ .../keymaps/fearless_spiff_en/rules.mk | 3 + 8 files changed, 577 insertions(+), 1 deletion(-) create mode 100644 keyboards/contra/keymaps/basic_qwerty/config.h create mode 100644 keyboards/contra/keymaps/basic_qwerty/keymap.c create mode 100644 keyboards/contra/keymaps/basic_qwerty/readme.md create mode 100644 keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/config.h create mode 100644 keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/keymap.c create mode 100644 keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/readme.md create mode 100644 keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/rules.mk diff --git a/keyboards/contra/keymaps/basic/readme.md b/keyboards/contra/keymaps/basic/readme.md index 195bc2c1b6..a2397b798b 100644 --- a/keyboards/contra/keymaps/basic/readme.md +++ b/keyboards/contra/keymaps/basic/readme.md @@ -69,4 +69,4 @@ Switch from `Adjust` layer. |------+------+------+------+------+------+------+------+------+------+------+------| | | | | | | | | | | | | `-----------------------------------------------------------------------------------' -``` \ No newline at end of file +``` diff --git a/keyboards/contra/keymaps/basic_qwerty/config.h b/keyboards/contra/keymaps/basic_qwerty/config.h new file mode 100644 index 0000000000..95ad308ff2 --- /dev/null +++ b/keyboards/contra/keymaps/basic_qwerty/config.h @@ -0,0 +1,35 @@ +// Copyright 2021 Stehpon Parker (@stephondoestech) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +#ifdef AUDIO_ENABLE + #define STARTUP_SONG SONG(PLANCK_SOUND) + // #define STARTUP_SONG SONG(NO_SOUND) + + #define DEFAULT_LAYER_SONGS { SONG(QWERTY_SOUND), \ + SONG(DVORAK_SOUND) \ + } +#endif + +#define MUSIC_MASK (keycode != KC_NO) + +/* + * MIDI options + */ + +/* 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 diff --git a/keyboards/contra/keymaps/basic_qwerty/keymap.c b/keyboards/contra/keymaps/basic_qwerty/keymap.c new file mode 100644 index 0000000000..7cb947b5f6 --- /dev/null +++ b/keyboards/contra/keymaps/basic_qwerty/keymap.c @@ -0,0 +1,140 @@ +/* Copyright 2015-2017 Jack Humbert + * Contributor 2022 Stephon Parker + * + * 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 . + */ + +#include QMK_KEYBOARD_H + +enum planck_layers { + _QWERTY, + _LOWER, + _RAISE, + _ADJUST +}; + +enum planck_keycodes { + QWERTY = SAFE_RANGE, + LOWER, + RAISE +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + + /* Qwerty + * ,-----------------------------------------------------------------------------------. + * | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Tab | A | S | D | F | G | H | J | K | L | ; |Enter | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| Z | X | C | V | B | N | M | , | . | / | ' | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | CAPS | Ctrl | Alt | GUI |Lower | Space |Raise | Left |Right | Up |Down | + * `-----------------------------------------------------------------------------------' + */ + [_QWERTY] = LAYOUT_planck_mit( + KC_ESC, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_TAB, KC_A, KC_S, KC_D, KC_F, KC_G, 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_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_QUOT, + KC_CAPSLOCK, KC_LCTL, KC_LALT, KC_LGUI, LOWER, KC_SPC, RAISE, KC_LEFT, KC_RGHT, KC_UP, KC_DOWN + ), + + /* Lower + * ,-----------------------------------------------------------------------------------. + * | ~ | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | ` | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | Shift| F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | \ | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | Del | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ + [_LOWER] = LAYOUT_planck_mit( + KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, + KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + KC_DEL, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + + /* Raise + * ,-----------------------------------------------------------------------------------. + * | ` | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | Next | Vol- | Vol+ | Play | + * `-----------------------------------------------------------------------------------' + */ + [_RAISE] = LAYOUT_planck_mit( + KC_GRV, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, + KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_PGUP, KC_PGDN, _______, + _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + ), + + /* Adjust (Lower + Raise) + * ,-----------------------------------------------------------------------------------. + * | | | | | | | | | | | | Del | + * |------+------+------+------+------+-------------+------+------+------+------+------| + * | | | | | |AGnorm|AGswap|Qwerty| | | | | + * |------+------+------+------+------+------|------+------+------+------+------+------| + * | | | | | | | | | | | | | + * |------+------+------+------+------+------+------+------+------+------+------+------| + * | | | | | | | | | | | | + * `-----------------------------------------------------------------------------------' + */ + [_ADJUST] = LAYOUT_planck_mit( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , + _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ) + +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case QWERTY: + if (record->event.pressed) { + print("mode just switched to qwerty and this is a huge string\n"); + set_single_persistent_default_layer(_QWERTY); + } + return false; + break; + case LOWER: + if (record->event.pressed) { + layer_on(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_LOWER); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + case RAISE: + if (record->event.pressed) { + layer_on(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } else { + layer_off(_RAISE); + update_tri_layer(_LOWER, _RAISE, _ADJUST); + } + return false; + break; + } + return true; +} diff --git a/keyboards/contra/keymaps/basic_qwerty/readme.md b/keyboards/contra/keymaps/basic_qwerty/readme.md new file mode 100644 index 0000000000..d5aa56666d --- /dev/null +++ b/keyboards/contra/keymaps/basic_qwerty/readme.md @@ -0,0 +1,64 @@ +# A Basic QWERTY Layout + +The Contra layer was something that I didn't see widely utilized as a US standard so I tweaked the basic layout layout by Jack Humbert. It's closer to the standard layout you would get on a US keyboard. I also moved the rest of the special characters to the lower layer. + +This is almost the same as my MechWild Marcuio keyboard. + +# A Basic Contra Layout + +The *default* layout currently (as of Mar 19, 2018) has a lot of components from Planck's default layout and is not very suitable for a basic Contra board. This basic layout is developed from Planck's default layout but has removed the parts that's irrelevant to a Contra board. + +My other keyboard is a HHKB and I don't use `Tab` or `Esc` key that much and hence the unusual placements for those keys. + +## QWERTY (Normal) Layer +``` +,-----------------------------------------------------------------------------------. + | Esc | Q | W | E | R | T | Y | U | I | O | P | Bksp | + |------+------+------+------+------+-------------+------+------+------+------+------| + | Tab | A | S | D | F | G | H | J | K | L | ; | ' | + |------+------+------+------+------+------|------+------+------+------+------+------| + | Shift| Z | X | C | V | B | N | M | , | . | / |Enter | + |------+------+------+------+------+------+------+------+------+------+------+------| + | CAPS | Tab | Alt | GUI |Lower | Space |Raise | Left |Right | Up |Down | + `-----------------------------------------------------------------------------------' +``` + +## Lower +``` +,-----------------------------------------------------------------------------------. + | ~ | ! | @ | # | $ | % | ^ | & | * | ( | ) | Bksp | + |------+------+------+------+------+-------------+------+------+------+------+------| + | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | { | } | | | + |------+------+------+------+------+------|------+------+------+------+------+------| + | | F7 | F8 | F9 | F10 | F11 | F12 | - | = | [ | ] | \ | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | Next | Vol- | Vol+ | Play | + `-----------------------------------------------------------------------------------' +``` + +## Raise +``` +,-----------------------------------------------------------------------------------. + | ` | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0 | Bksp | + |------+------+------+------+------+-------------+------+------+------+------+------| + | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | + |------+------+------+------+------+------|------+------+------+------+------+------| + | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / |Pg Up |Pg Dn | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | Next | Vol- | Vol+ | Play | + `-----------------------------------------------------------------------------------' +``` + +## Adjust +`AGnorm` and `AGswap` switches `alt` and `os` key on the keyboard. +``` +,-----------------------------------------------------------------------------------. + | | | | | | | | | | | | Del | + |------+------+------+------+------+-------------+------+------+------+------+------| + | | | | | |AGnorm|AGswap|Qwerty| | | | | + |------+------+------+------+------+------|------+------+------+------+------+------| + | | | | | | | | | | | | | + |------+------+------+------+------+------+------+------+------+------+------+------| + | | | | | | | | | | | | + `-----------------------------------------------------------------------------------' +``` diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/config.h b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/config.h new file mode 100644 index 0000000000..9d588ed8c0 --- /dev/null +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/config.h @@ -0,0 +1,19 @@ +/* Copyright 2022 Fearless Spiff + * + * 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 . + */ + +#pragma once + +#define TAPPING_TERM 180 diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/keymap.c b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/keymap.c new file mode 100644 index 0000000000..267d3add14 --- /dev/null +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/keymap.c @@ -0,0 +1,293 @@ +/* Copyright 2021 Kyle McCreery + * Copyright 2021 Jonavin Eng + * Copyright 2022 Fearless Spiff + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include "keymap_german.h" + +// OLED setup for bongocat +#define IDLE_FRAMES 5 +#define IDLE_SPEED 30 +#define TAP_FRAMES 2 +#define TAP_SPEED 40 +#define ANIM_FRAME_DURATION 200 +#define ANIM_SIZE 512 + +#define LABEL_LENGTH 8 + +#define KC_CAD LALT(LCTL(KC_DEL)) +#define KC_TEAMS_CAM C(S(KC_O)) +#define KC_TEAMS_MUTE C(S(KC_M)) + +enum layers { + QWERT, + FN_1, + FN_2 +}; + +enum custom_user_keycodes { + KC_ENC = SAFE_RANGE +}; + +static long int oled_timeout = 1800000; // 30 minutes +bool gui_on = true; +char wpm_str[10]; +uint32_t anim_timer = 0; +uint32_t anim_sleep = 0; +uint8_t current_idle_frame = 0; +uint8_t current_tap_frame = 0; + +// Tap Dance declarations +enum { + TD_TAB_ESC, +}; + +// Tap Dance definitions +qk_tap_dance_action_t tap_dance_actions[] = { + // Tap once for Tab, twice for Esc + [TD_TAB_ESC] = ACTION_TAP_DANCE_DOUBLE(KC_TAB, KC_ESC), +}; + +typedef struct { + char label_top[LABEL_LENGTH]; + char label_mid[LABEL_LENGTH]; + char label_bottom[LABEL_LENGTH]; + uint16_t keycode; +} encoder_key; + +static const encoder_key PROGMEM encoder_keys[] = { + // list of key codes that will be scrolled through by encoder and description + // Be aware that it only works when using one char less than defined. In this case 7 max. No idea why? + {"Teams", "Toggle", "Mic", KC_TEAMS_MUTE}, + {"Teams", "Toggle", "Cam", KC_TEAMS_CAM}, + {"Ctrl", "Alt", "Del", KC_CAD}, + {"Caps", "Lock", "", KC_CAPSLOCK}, + {"Pause", "", "", KC_PAUSE}, + {"PrtScr", "", "", KC_PSCR}, + {"Insert", "", "", KC_INS}, + {"Play", "", "", KC_MEDIA_PLAY_PAUSE} +}; + +#define NUMBER_OF_ENCODER_KEYS sizeof(encoder_keys)/sizeof(encoder_keys[0]) + +static uint8_t selected_encoder_key_id = 0; +static encoder_key selected_encoder_key; + +static void set_selected_encoder_key(uint8_t idx) { + // make a copy from PROGMEM + memcpy_P (&selected_encoder_key, &encoder_keys[idx], sizeof selected_encoder_key); +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case KC_ENC: + if (record->event.pressed) { + tap_code16(selected_encoder_key.keycode); + } + break; + } + return true; +} + + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [QWERT] = LAYOUT_all( + KC_ENC, + TD(TD_TAB_ESC), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + LT(1,KC_CAPSLOCK), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_PLUS, KC_ENT, + KC_LSFT, KC_LABK, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, + KC_LCTL, KC_LGUI, LT(2,KC_LALT), KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(2), KC_RCTL ), + + [FN_1] = LAYOUT_all( + KC_MUTE, + KC_GESC, _______, KC_UP, _______, KC_LCBR, KC_RCBR, _______, _______, KC_UP, _______, KC_QUES, KC_DEL, + _______, KC_LEFT, KC_DOWN, KC_RIGHT, KC_LPRN, KC_RPRN, KC_QUES, KC_LEFT, KC_DOWN, KC_LABK, KC_RABK, _______, + _______, KC_BSLS, KC_SLSH, KC_PIPE, _______, KC_LBRC, KC_RBRC, KC_HOME, KC_END, KC_QUOT, KC_DQUO, KC_EQL, + _______, _______, _______, _______, _______, _______, KC_BSLS, KC_SLSH, KC_TILD ), + + [FN_2] = LAYOUT_all( + _______, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, + _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_AMPR, KC_PERC, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, + _______, _______, KC_MINS, KC_PLUS, KC_BSLS, KC_SLSH, KC_SCLN, KC_COLN, KC_QUES, KC_LBRC, KC_RBRC, KC_DOT, + KC_DQUO, KC_QUOT, KC_DQUO, _______, _______, _______, _______, _______, KC_PIPE ) +}; + +#ifdef ENCODER_ENABLE + bool encoder_update_user(uint8_t index, bool clockwise) { + if (clockwise) { + if (IS_LAYER_ON(QWERT) && selected_encoder_key_id < NUMBER_OF_ENCODER_KEYS-1) { + selected_encoder_key_id ++; + set_selected_encoder_key(selected_encoder_key_id); + } + if (IS_LAYER_ON(FN_1)) { + tap_code16(KC_PGDOWN); + } + if (IS_LAYER_ON(FN_2)) { + tap_code(KC_VOLU); + } + } else { + if (IS_LAYER_ON(QWERT) && selected_encoder_key_id > 0) { + selected_encoder_key_id --; + set_selected_encoder_key(selected_encoder_key_id); + } + if (IS_LAYER_ON(FN_1)) { + tap_code16(KC_PGUP); + } + if (IS_LAYER_ON(FN_2)) { + tap_code(KC_VOLD); + } + } + return false; + } +#endif + +#ifdef OLED_ENABLE + oled_rotation_t oled_init_user(oled_rotation_t rotation) { + set_selected_encoder_key(selected_encoder_key_id); + + return OLED_ROTATION_180; // flips the display 180 degrees + } + + static void render_anim(void) { + + // Idle animation + static const char PROGMEM idle[IDLE_FRAMES][ANIM_SIZE] = { + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,16,8,8,4,4,4,8,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,100,130,2,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64, + 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,56,4,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + }, + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,16,8,8,4,4,4,8,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,24,100,130,2,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64, + 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,192,56,4,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8, + 7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + }, + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,64,64,64,64,32,32,32,32,16,8,4,2,2,4,24,96,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,60,194,1,1,2,2,4,4,2,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,96,96,0,129,130,130,132,8,16,32,64,128,0,0,0,0,128,128,128,128,64,64,64,64,32, + 32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,25,6,0,0,0,0,0,0,0,24,24,24,27,3,0,64,160,34,36,20,18,18,18,11,8,8,8,8,5,5,9,9,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + }, + + { + 0,0,0,0,0,0,0,0,0,0, 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64, + 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8, + 7,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + }, + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,8,4,2,2,2,4,56,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,28,226,1,1,2,2,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,192,193,193,194,4,8,16,32,64,128,0,0,0,128,128,128,128,64,64,64,64, + 32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,12,12,12,13,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,2,2,4,4,8,8,8,8,8,7,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + } + + }; + + // Prep animation + static const char PROGMEM prep[][ANIM_SIZE] = { + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,129,128,128,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,225,26,6,9,49,53,1,138,124,0,0,128,128,128,128,64,64, + 64,64,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,24,6,5,152,153,132,195,124,65,65,64,64,32,33,34,18,17,17,17,9,8,8,8,8,4,4,4,4,4,4,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1,1,1,1,0,0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + } + + }; + + // Typing animation + static const char PROGMEM tap[TAP_FRAMES][ANIM_SIZE] = { + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,248,248,248,248,0,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,129,128,128,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,1,2,4,8,16,32,67,135,7,1,0,184,188,190,159, + 95,95,79,76,32,32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,24,6,5,152,153,132,67,124,65,65,64,64,32,33,34,18,17,17,17,9,8,8,8,8,4,4,8,8,16,16,16,16,16,17,15,1,61,124,252,252,252,252,252,60,12,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,2,2,1,1,1, + 1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,3,3,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + }, + + { + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,0,0,0,0,0,128,64,64,32,32,32,32,16,16,16,16,8,4,2,1,1,2,12,48,64,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,30,225,0,0,1,1,2,2,1,0,0,0,0,128,128,0,0,0,0,0,0,0,0,0,128,0,48,48,0,0,1,225,26,6,9,49,53,1,138,124,0,0,128,128,128,128,64,64,64,64,32, + 32,32,32,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,112,12,3,0,0,0,0,0,0,0,0,0,0,1,1,0,64,160,33,34,18,17,17,17,9,8,8,8,8,4,4,4,4,4,4,2,2,2,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,128,128,128,128,128,64,64,64,64,64,32,32,32,32,32,16,16,16,16,16,8,8,8,8,8,4,4,4,4,4,2,3,122,122,121,121,121,121,57,49,2,2,4,4,8,8,8,136,136,135,128, + 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 + } + + }; + + void animation_phase(void) { + if (get_current_wpm() <= IDLE_SPEED) { + current_idle_frame = (current_idle_frame + 1) % IDLE_FRAMES; + oled_write_raw_P(idle[abs((IDLE_FRAMES-1)-current_idle_frame)], ANIM_SIZE); + } + + if (get_current_wpm() > IDLE_SPEED && get_current_wpm() < TAP_SPEED) { + oled_write_raw_P(prep[0], ANIM_SIZE); + } + + if (get_current_wpm() >= TAP_SPEED) { + current_tap_frame = (current_tap_frame + 1) % TAP_FRAMES; + oled_write_raw_P(tap[abs((TAP_FRAMES-1)-current_tap_frame)], ANIM_SIZE); + } + } + + if (get_current_wpm() != 000) { + oled_on(); + + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animation_phase(); + } + + anim_sleep = timer_read32(); + } else { + if (timer_elapsed32(anim_sleep) > oled_timeout) { + oled_off(); + } else { + if (timer_elapsed32(anim_timer) > ANIM_FRAME_DURATION) { + anim_timer = timer_read32(); + animation_phase(); + } + } + } + } + + bool oled_task_user(void) { + + render_anim(); + + oled_set_cursor(0,0); + oled_write(selected_encoder_key.label_top, false); + + oled_set_cursor(0,1); + oled_write(selected_encoder_key.label_mid, false); + + oled_set_cursor(0,2); + oled_write(selected_encoder_key.label_bottom, false); + + /* hide wpm display for now + oled_set_cursor(13,3); + oled_write_P(PSTR("WPM: "), false); + oled_write(get_u8_str(get_current_wpm(), ' '), false); + */ + + return false; + } + + void suspend_power_down_user(void) { + oled_off(); + } +#endif diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/readme.md b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/readme.md new file mode 100644 index 0000000000..dea71bf358 --- /dev/null +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/readme.md @@ -0,0 +1,22 @@ +Fearless Spiff's Custom Mercutio Keymap + - "Programmer"-centric and German layout based keymap + - Based on Bongocat and Jonavin keymap + +Features + - Fancy Bongocat! Yay! (borrowed from bongocat obviously) + - Encoder selectable key codes and displayed on OLED (borrowed and multi-line-enhanced from Jonavin) + - Change encoder_keys in keymap.c to assign your desired key selection + - Additional encoder functionality + - While holding FN_1, page up and down + - While holding FN_2, volume up and down + - Use my templates for your own layout overview at [Keyboard Layout Editor](http://www.keyboard-layout-editor.com) using my gist [here](https://gist.github.com/FearlessSpiff) + +QWERT Layer +![image](https://user-images.githubusercontent.com/1927259/148683284-04932e15-a34d-451e-b657-335780033f36.png) + +FN_1 Layer +![image](https://user-images.githubusercontent.com/1927259/148683299-f2c80403-3f29-4ba8-9fc4-957729f30b05.png) + +FN_2 layer +![image](https://user-images.githubusercontent.com/1927259/148683306-364bc59c-b41b-4092-b93b-d7b4fc58567b.png) + diff --git a/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/rules.mk b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/rules.mk new file mode 100644 index 0000000000..4775e0e11d --- /dev/null +++ b/keyboards/mechwild/mercutio/keymaps/fearless_spiff_en/rules.mk @@ -0,0 +1,3 @@ +WPM_ENABLE = yes +TAP_DANCE_ENABLE = yes +MOUSEKEY_ENABLE = no From 3a80275fa1720aabf95eedb5e2c644d81a764a01 Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Fri, 13 May 2022 23:34:47 +0700 Subject: [PATCH 399/699] [Keyboard] Fixed info.json issue, some key got wrong pos for Gas75 (#17070) --- keyboards/ml/gas75/info.json | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/keyboards/ml/gas75/info.json b/keyboards/ml/gas75/info.json index 4f9e0ad9d1..3cb3d912f5 100644 --- a/keyboards/ml/gas75/info.json +++ b/keyboards/ml/gas75/info.json @@ -18,10 +18,10 @@ {"label":"F10", "x":10.75, "y":0}, {"label":"F11", "x":11.75, "y":0}, {"label":"F12", "x":12.75, "y":0}, - {"label":"Pause", "x":14, "y":0}, - {"label":"Encoder CCW", "x":15.25, "y":0, "w":0.5, "h":0.5}, - {"label":"Encoder CW", "x":15.75, "y":0, "w":0.5, "h":0.5}, - {"label":"Delete", "x":15.25, "y":0.5, "h":0.5}, + {"label":"Delete", "x":14, "y":0}, + {"label":"Encoder CCW", "x":15, "y":0, "w":0.5}, + {"label":"Mute", "x":15.5, "y":0}, + {"label":"Encoder CW", "x":16.5, "y":0, "w":0.5}, {"label":"`~", "x":0, "y":1.25}, {"label":"1!", "x":1, "y":1.25}, @@ -53,7 +53,7 @@ {"label":"[{", "x":11.5, "y":2.25}, {"label":"]}", "x":12.5, "y":2.25}, {"label":"\\|", "x":13.5, "y":2.25, "w":1.5}, - {"label":"PgUp", "x":12.5, "y":2.25}, + {"label":"PgUp", "x":15.25, "y":2.25}, {"label":"Caps Lock", "x":0, "y":3.25, "w":1.75}, {"label":"A", "x":1.75, "y":3.25}, @@ -68,7 +68,7 @@ {"label":";:", "x":10.75, "y":3.25}, {"label":"'\"", "x":11.75, "y":3.25}, {"label":"Enter", "x":12.75, "y":3.25, "w":2.25}, - {"label":"PgDn", "x":12.5, "y":3.25}, + {"label":"PgDn", "x":15.25, "y":3.25}, {"label":"Shift", "x":0, "y":4.25, "w":2.25}, {"label":"Z", "x":2.25, "y":4.25}, From 82828c3205848ff0e5c1400c2da7018f6c260a0f Mon Sep 17 00:00:00 2001 From: takashicompany Date: Sat, 14 May 2022 01:53:43 +0900 Subject: [PATCH 400/699] [Keyboard] Add keyboard "Spreadwriter" (#17031) Co-authored-by: Joel Challis Co-authored-by: Drashna Jaelre --- .../takashicompany/spreadwriter/config.h | 10 + .../takashicompany/spreadwriter/info.json | 507 ++++++++++++++++++ .../spreadwriter/keymaps/default/keymap.c | 97 ++++ .../spreadwriter/keymaps/via/config.h | 20 + .../spreadwriter/keymaps/via/keymap.c | 127 +++++ .../spreadwriter/keymaps/via/rules.mk | 1 + .../takashicompany/spreadwriter/readme.md | 35 ++ .../takashicompany/spreadwriter/rules.mk | 2 + 8 files changed, 799 insertions(+) create mode 100644 keyboards/takashicompany/spreadwriter/config.h create mode 100644 keyboards/takashicompany/spreadwriter/info.json create mode 100644 keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c create mode 100644 keyboards/takashicompany/spreadwriter/keymaps/via/config.h create mode 100644 keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c create mode 100644 keyboards/takashicompany/spreadwriter/keymaps/via/rules.mk create mode 100644 keyboards/takashicompany/spreadwriter/readme.md create mode 100644 keyboards/takashicompany/spreadwriter/rules.mk diff --git a/keyboards/takashicompany/spreadwriter/config.h b/keyboards/takashicompany/spreadwriter/config.h new file mode 100644 index 0000000000..e22f102dc1 --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/config.h @@ -0,0 +1,10 @@ +// Copyright 2022 takashicompany (@takashicompany) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#include "config_common.h" + +#define ENCODER_RESOLUTION 4 +#define ENCODERS_PAD_A { D1 } +#define ENCODERS_PAD_B { D0 } diff --git a/keyboards/takashicompany/spreadwriter/info.json b/keyboards/takashicompany/spreadwriter/info.json new file mode 100644 index 0000000000..2f802bab0b --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/info.json @@ -0,0 +1,507 @@ +{ + "manufacturer": "takashicompany", + "keyboard_name": "Spreadwriter", + "maintainer": "takashicompany", + "bootloader": "caterina", + "diode_direction": "COL2ROW", + "features": { + "bootmagic": true, + "command": false, + "console": false, + "extrakey": true, + "mousekey": true, + "nkro": true + }, + "matrix_pins": { + "cols": [ + "D4", + "C6", + "D7", + "E6", + "B4", + "B5", + "D2" + ], + "rows": [ + "F4", + "F5", + "F6", + "F7", + "B1", + "B3", + "B2", + "B6" + ] + }, + "processor": "atmega32u4", + "url": "https://github.com/takashicompany/spreadwriter", + "usb": { + "device_version": "1.0.0", + "pid": "0x0023", + "vid": "0x7463" + }, + "rgblight": { + "led_count": 53, + "pin": "D3", + "hue_steps": 10, + "saturation_steps": 17, + "brightness_steps": 17, + "animations": { + "all": true + } + }, + "layouts": { + "LAYOUT": { + "layout": [ + { + "matrix": [ + 0, + 0 + ], + "x": 0, + "y": 0.5 + }, + { + "matrix": [ + 0, + 1 + ], + "x": 1, + "y": 0.5 + }, + { + "matrix": [ + 0, + 2 + ], + "x": 2, + "y": 0.25 + }, + { + "matrix": [ + 0, + 3 + ], + "x": 3, + "y": 0 + }, + { + "matrix": [ + 0, + 4 + ], + "x": 4, + "y": 0 + }, + { + "matrix": [ + 0, + 5 + ], + "x": 5, + "y": 0 + }, + { + "matrix": [ + 4, + 1 + ], + "x": 10, + "y": 0 + }, + { + "matrix": [ + 4, + 2 + ], + "x": 11, + "y": 0 + }, + { + "matrix": [ + 4, + 3 + ], + "x": 12, + "y": 0 + }, + { + "matrix": [ + 4, + 4 + ], + "x": 13, + "y": 0.25 + }, + { + "matrix": [ + 4, + 5 + ], + "x": 14, + "y": 0.5 + }, + { + "matrix": [ + 4, + 6 + ], + "x": 15, + "y": 0.5 + }, + { + "matrix": [ + 1, + 0 + ], + "x": 0, + "y": 1.5 + }, + { + "matrix": [ + 1, + 1 + ], + "x": 1, + "y": 1.5 + }, + { + "matrix": [ + 1, + 2 + ], + "x": 2, + "y": 1.25 + }, + { + "matrix": [ + 1, + 3 + ], + "x": 3, + "y": 1 + }, + { + "matrix": [ + 1, + 4 + ], + "x": 4, + "y": 1 + }, + { + "matrix": [ + 1, + 5 + ], + "x": 5, + "y": 1 + }, + { + "matrix": [ + 1, + 6 + ], + "x": 7.5, + "y": 1 + }, + { + "matrix": [ + 5, + 1 + ], + "x": 10, + "y": 1 + }, + { + "matrix": [ + 5, + 2 + ], + "x": 11, + "y": 1 + }, + { + "matrix": [ + 5, + 3 + ], + "x": 12, + "y": 1 + }, + { + "matrix": [ + 5, + 4 + ], + "x": 13, + "y": 1.25 + }, + { + "matrix": [ + 5, + 5 + ], + "x": 14, + "y": 1.5 + }, + { + "matrix": [ + 5, + 6 + ], + "x": 15, + "y": 1.5 + }, + { + "matrix": [ + 2, + 0 + ], + "x": 0, + "y": 2.5 + }, + { + "matrix": [ + 2, + 1 + ], + "x": 1, + "y": 2.5 + }, + { + "matrix": [ + 2, + 2 + ], + "x": 2, + "y": 2.25 + }, + { + "matrix": [ + 2, + 3 + ], + "x": 3, + "y": 2 + }, + { + "matrix": [ + 2, + 4 + ], + "x": 4, + "y": 2 + }, + { + "matrix": [ + 2, + 5 + ], + "x": 5, + "y": 2 + }, + { + "matrix": [ + 2, + 6 + ], + "x": 6, + "y": 2 + }, + { + "matrix": [ + 6, + 0 + ], + "x": 9, + "y": 2 + }, + { + "matrix": [ + 6, + 1 + ], + "x": 10, + "y": 2 + }, + { + "matrix": [ + 6, + 2 + ], + "x": 11, + "y": 2 + }, + { + "matrix": [ + 6, + 3 + ], + "x": 12, + "y": 2 + }, + { + "matrix": [ + 6, + 4 + ], + "x": 13, + "y": 2.25 + }, + { + "matrix": [ + 6, + 5 + ], + "x": 14, + "y": 2.5 + }, + { + "matrix": [ + 6, + 6 + ], + "x": 15, + "y": 2.5 + }, + { + "matrix": [ + 3, + 0 + ], + "x": 0, + "y": 3.5 + }, + { + "matrix": [ + 3, + 1 + ], + "x": 1, + "y": 3.5 + }, + { + "matrix": [ + 3, + 2 + ], + "x": 2, + "y": 3.25 + }, + { + "matrix": [ + 3, + 3 + ], + "x": 3, + "y": 3 + }, + { + "matrix": [ + 3, + 4 + ], + "x": 4, + "y": 3 + }, + { + "matrix": [ + 3, + 5 + ], + "x": 5, + "y": 3 + }, + { + "matrix": [ + 3, + 6 + ], + "x": 6, + "y": 3 + }, + { + "matrix": [ + 5, + 0 + ], + "x": 7.5, + "y": 3 + }, + { + "matrix": [ + 7, + 0 + ], + "x": 9, + "y": 3 + }, + { + "matrix": [ + 7, + 1 + ], + "x": 10, + "y": 3 + }, + { + "matrix": [ + 7, + 2 + ], + "x": 11, + "y": 3 + }, + { + "matrix": [ + 7, + 3 + ], + "x": 12, + "y": 3 + }, + { + "matrix": [ + 7, + 4 + ], + "x": 13, + "y": 3.25 + }, + { + "matrix": [ + 7, + 5 + ], + "x": 14, + "y": 3.5 + }, + { + "matrix": [ + 7, + 6 + ], + "x": 15, + "y": 3.5 + }, + { + "matrix": [ + 0, + 6 + ], + "x": 7, + "y": 4.25 + }, + { + "matrix": [ + 4, + 0 + ], + "x": 8, + "y": 4.25 + } + ] + } + } +} \ No newline at end of file diff --git a/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c b/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c new file mode 100644 index 0000000000..665f180a38 --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c @@ -0,0 +1,97 @@ +// Copyright 2022 takashicompany (@takashicompany) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum custom_keycodes { + SPREADWRITER = SAFE_RANGE, + WEB, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT( + KC_ESC, LT(2, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, LT(2, KC_D), KC_F, KC_G, SPREADWRITER, KC_H, KC_J, LT(2, KC_K), KC_L, KC_ENT, KC_ENT, + KC_LSFT, SFT_T(KC_Z), GUI_T(KC_X), KC_C, KC_V, KC_B, MEH(KC_4), LSA(KC_5), KC_N, KC_M, KC_COMM, CTL_T(KC_DOT), KC_BSPC, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, MO(5), MO(4), ALT_T(KC_LANG2), SFT_T(KC_TAB), WEB, LT(6, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, + KC_WH_U, KC_WH_D + ), + + LAYOUT( + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_LCTL, CTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, 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 + ), + + LAYOUT( + KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, 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, MO(3), 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_BSPC, KC_SPC + ), + + LAYOUT( + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, RESET, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, 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 + ), + + LAYOUT( + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_JYEN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_6, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SCLN, KC_QUOT, KC_NUHS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P0, KC_COMM, KC_DOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_TRNS, + KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_TRNS, KC_TRNS, S(KC_MINS), S(KC_EQL), S(KC_JYEN), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_6, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_LBRC), S(KC_RBRC), KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_SCLN), S(KC_QUOT), S(KC_NUHS), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P0, KC_COMM, KC_DOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_COMM), S(KC_DOT), S(KC_SLSH), S(KC_RO), KC_TRNS, + KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_TRNS, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), G(KC_JYEN), KC_TRNS, + KC_LCTL, S(KC_EQL), S(KC_LBRC), S(KC_SLSH), S(KC_MINS), S(KC_RO), KC_TRNS, S(KC_SCLN), S(KC_QUOT), S(KC_RBRC), S(KC_NUHS), S(KC_JYEN), 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 + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case SPREADWRITER: + if (record->event.pressed) { + SEND_STRING("Spreadwriter"); + rgblight_toggle(); + } + return false; + + case WEB: + if (record->event.pressed) { + SEND_STRING("github.com/takashicompany/spreadwriter"); + } + return false; + } + + return true; +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + + if (clockwise) { + tap_code(KC_MS_WH_DOWN); + } else { + tap_code(KC_MS_WH_UP); + } + + return true; +} \ No newline at end of file diff --git a/keyboards/takashicompany/spreadwriter/keymaps/via/config.h b/keyboards/takashicompany/spreadwriter/keymaps/via/config.h new file mode 100644 index 0000000000..adbbc6ce83 --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/keymaps/via/config.h @@ -0,0 +1,20 @@ +// Copyright 2022 takashicompany (@takashicompany) +// SPDX-License-Identifier: GPL-2.0-or-later + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 7 + +//------------------------------------------------------------------------------ +// Rotary Encoder +//------------------------------------------------------------------------------ +// Encoder triggers specific key matrix position, +// when turn knob clockwise or counterclockwise. +// This is handy to assign key codes by VIA. + +// Number of endoder +#define ENCODERS 1 + +// Mappings of encoder rotation to key position in key matrix. +#define ENCODERS_CW_KEY { { 0, 4 }} +#define ENCODERS_CCW_KEY { { 6, 0 }} \ No newline at end of file diff --git a/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c b/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c new file mode 100644 index 0000000000..defca4b55a --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c @@ -0,0 +1,127 @@ +// Copyright 2022 takashicompany (@takashicompany) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +enum custom_keycodes { + SPREADWRITER = SAFE_RANGE, + WEB, +}; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT( + KC_ESC, LT(2, KC_Q), KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, + KC_LCTL, KC_A, KC_S, LT(2, KC_D), KC_F, KC_G, SPREADWRITER, KC_H, KC_J, LT(2, KC_K), KC_L, KC_ENT, KC_ENT, + KC_LSFT, SFT_T(KC_Z), GUI_T(KC_X), KC_C, KC_V, KC_B, MEH(KC_4), LSA(KC_5), KC_N, KC_M, KC_COMM, CTL_T(KC_DOT), KC_BSPC, KC_DEL, + KC_LCTL, KC_LGUI, KC_LALT, MO(5), MO(4), ALT_T(KC_LANG2), SFT_T(KC_TAB), WEB, LT(6, KC_SPC), LT(1, KC_LANG1), KC_RALT, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, + KC_WH_U, KC_WH_D + ), + + LAYOUT( + KC_TRNS, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, + KC_LCTL, CTL_T(KC_EQL), KC_LBRC, KC_SLSH, KC_MINS, KC_RO, KC_TRNS, KC_SCLN, KC_QUOT, KC_RBRC, KC_NUHS, KC_JYEN, 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 + ), + + LAYOUT( + KC_ESC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, KC_NO, KC_NO, + KC_TRNS, KC_LCTL, KC_TRNS, KC_QUES, KC_EXLM, KC_NO, KC_TRNS, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, 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, MO(3), 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_BSPC, KC_SPC + ), + + LAYOUT( + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, RESET, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, 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 + ), + + LAYOUT( + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_JYEN, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_6, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SCLN, KC_QUOT, KC_NUHS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P0, KC_COMM, KC_DOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_COMM, KC_DOT, KC_SLSH, KC_RO, KC_TRNS, + KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_TRNS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_TRNS, KC_TRNS, S(KC_MINS), S(KC_EQL), S(KC_JYEN), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P4, KC_P5, KC_6, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_LBRC), S(KC_RBRC), KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_SCLN), S(KC_QUOT), S(KC_NUHS), KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_P0, KC_COMM, KC_DOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_COMM), S(KC_DOT), S(KC_SLSH), S(KC_RO), KC_TRNS, + KC_TRNS, KC_TRNS + ), + + LAYOUT( + KC_TRNS, S(KC_1), S(KC_2), S(KC_3), S(KC_4), S(KC_5), S(KC_6), S(KC_7), S(KC_8), S(KC_9), G(KC_JYEN), KC_TRNS, + KC_LCTL, S(KC_EQL), S(KC_LBRC), S(KC_SLSH), S(KC_MINS), S(KC_RO), KC_TRNS, S(KC_SCLN), S(KC_QUOT), S(KC_RBRC), S(KC_NUHS), S(KC_JYEN), 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 + ) +}; + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case SPREADWRITER: + if (record->event.pressed) { + SEND_STRING("Spreadwriter"); + rgblight_toggle(); + } + return false; + + case WEB: + if (record->event.pressed) { + SEND_STRING("github.com/takashicompany/spreadwriter"); + } + return false; + } + + return true; +} + +//------------------------------------------------------------------------------ +// Rotary Encoder +//------------------------------------------------------------------------------ +static uint8_t encoder_state[ENCODERS] = {0}; +static keypos_t encoder_cw[ENCODERS] = ENCODERS_CW_KEY; +static keypos_t encoder_ccw[ENCODERS] = ENCODERS_CCW_KEY; + +void encoder_action_unregister(void) { + for (int index = 0; index < ENCODERS; ++index) { + if (encoder_state[index]) { + keyevent_t encoder_event = (keyevent_t) { + .key = encoder_state[index] >> 1 ? encoder_cw[index] : encoder_ccw[index], + .pressed = false, + .time = (timer_read() | 1) + }; + encoder_state[index] = 0; + action_exec(encoder_event); + } + } +} + +void encoder_action_register(uint8_t index, bool clockwise) { + keyevent_t encoder_event = (keyevent_t) { + .key = clockwise ? encoder_cw[index] : encoder_ccw[index], + .pressed = true, + .time = (timer_read() | 1) + }; + encoder_state[index] = (clockwise ^ 1) | (clockwise << 1); + action_exec(encoder_event); +} + +void matrix_scan_kb(void) { + encoder_action_unregister(); + matrix_scan_user(); +} + +bool encoder_update_user(uint8_t index, bool clockwise) { + encoder_action_register(index, clockwise); + return true; +}; \ No newline at end of file diff --git a/keyboards/takashicompany/spreadwriter/keymaps/via/rules.mk b/keyboards/takashicompany/spreadwriter/keymaps/via/rules.mk new file mode 100644 index 0000000000..036bd6d1c3 --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes \ No newline at end of file diff --git a/keyboards/takashicompany/spreadwriter/readme.md b/keyboards/takashicompany/spreadwriter/readme.md new file mode 100644 index 0000000000..972dcba4de --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/readme.md @@ -0,0 +1,35 @@ +# takashicompany/spreadwriter + +![takashicompany/spreadwriter](https://i.imgur.com/mMAzyvUh.jpg) + +"Spreadwriter" はGL516ケースに対応した50%キーボードです。 +放射状のキーレイアウトは、手を自然な形で置くことができ、楽な姿勢での打鍵を可能にしています。 + +LEDを用いたキーの照明や、ロータリーエンコーダの搭載も可能です。 +--- +"Spreadwriter" is a 50% keyboard for the GL516 case. +The radial key layout allows for a natural hand placement and comfortable typing posture. + +LED-based key illumination and a rotary encoder are also available. + +* Keyboard Maintainer: [takashicompany](https://github.com/takashicompany) +* Hardware Supported: Spreadwriter PCB, Pro Micro +* Hardware Availability: https://github.com/takashicompany/spreadwriter + +Make example for this keyboard (after setting up your build environment): + + make takashicompany/spreadwriter:default + +Flashing example for this keyboard: + + make takashicompany/spreadwriter:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard +* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/takashicompany/spreadwriter/rules.mk b/keyboards/takashicompany/spreadwriter/rules.mk new file mode 100644 index 0000000000..248f19320f --- /dev/null +++ b/keyboards/takashicompany/spreadwriter/rules.mk @@ -0,0 +1,2 @@ +ENCODER_ENABLE = yes +RGBLIGHT_ENABLE = yes \ No newline at end of file From 8e2b8413b4b0c464da383def06d0269d85aa47cb Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Sat, 14 May 2022 10:16:46 +0700 Subject: [PATCH 401/699] [Keyboard] Add M64 RGB (#17069) --- keyboards/mss_studio/m63_rgb/m63_rgb.c | 10 +- keyboards/mss_studio/m64_rgb/config.h | 104 ++++++++++ keyboards/mss_studio/m64_rgb/info.json | 79 ++++++++ .../m64_rgb/keymaps/default/keymap.c | 184 ++++++++++++++++++ .../m64_rgb/keymaps/default/readme.md | 3 + .../mss_studio/m64_rgb/keymaps/via/config.h | 20 ++ .../mss_studio/m64_rgb/keymaps/via/keymap.c | 184 ++++++++++++++++++ .../mss_studio/m64_rgb/keymaps/via/readme.md | 3 + .../mss_studio/m64_rgb/keymaps/via/rules.mk | 1 + keyboards/mss_studio/m64_rgb/m64_rgb.c | 50 +++++ keyboards/mss_studio/m64_rgb/m64_rgb.h | 49 +++++ keyboards/mss_studio/m64_rgb/readme.md | 24 +++ keyboards/mss_studio/m64_rgb/rules.mk | 22 +++ 13 files changed, 728 insertions(+), 5 deletions(-) create mode 100644 keyboards/mss_studio/m64_rgb/config.h create mode 100644 keyboards/mss_studio/m64_rgb/info.json create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/default/readme.md create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/via/config.h create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/via/readme.md create mode 100644 keyboards/mss_studio/m64_rgb/keymaps/via/rules.mk create mode 100644 keyboards/mss_studio/m64_rgb/m64_rgb.c create mode 100644 keyboards/mss_studio/m64_rgb/m64_rgb.h create mode 100644 keyboards/mss_studio/m64_rgb/readme.md create mode 100644 keyboards/mss_studio/m64_rgb/rules.mk diff --git a/keyboards/mss_studio/m63_rgb/m63_rgb.c b/keyboards/mss_studio/m63_rgb/m63_rgb.c index dd071849b5..fdc216f199 100644 --- a/keyboards/mss_studio/m63_rgb/m63_rgb.c +++ b/keyboards/mss_studio/m63_rgb/m63_rgb.c @@ -26,11 +26,11 @@ led_config_t g_led_config = { { { 54, 55, 56, NO_LED, NO_LED, 57, NO_LED, NO_LED, NO_LED, 58, 59, 60, 61, 62 } }, { // Key matrix (0 -> 62) - {0 , 0}, {16 , 0}, {33 , 0}, {49 , 0}, {66 , 0}, {82 , 0}, {99 , 0}, {115, 0}, {132, 0}, {148, 0}, {165, 0}, {181, 0}, {198, 0}, {214, 0}, - {3 , 16}, {23 , 16}, {39 , 16}, {56 , 16}, {72 , 16}, {88 , 16}, {105, 16}, {121, 16}, {138, 16}, {154, 16}, {171, 16}, {187, 16}, {204, 16}, {220, 16}, - {5 , 32}, {26 , 32}, {42 , 32}, {59 , 32}, {75 , 32}, {92 , 32}, {108, 32}, {124, 32}, {141, 32}, {157, 32}, {174, 32}, {190, 32}, {214, 32}, - {8 , 48}, {28 , 48}, {48 , 48}, {65 , 48}, {81 , 48}, {98 , 48}, {114, 48}, {131, 48}, {147, 48}, {164, 48}, {186, 48}, {208, 48}, {224, 48}, - {2 , 64}, {20 , 64}, {38 , 64}, {100, 64}, {160, 64}, {176, 64}, {192, 64}, {208, 64}, {224, 64}, + {0 , 0}, {16 , 0}, {32 , 0}, {48 , 0}, {64 , 0}, {80 , 0}, {96 , 0}, {112, 0}, {128, 0}, {144, 0}, {160, 0}, {176, 0}, {192, 0}, {216, 0}, + {4 , 16}, {24 , 16}, {40 , 16}, {56 , 16}, {72 , 16}, {88 , 16}, {104, 16}, {120, 16}, {136, 16}, {152, 16}, {168, 16}, {184, 16}, {200, 16}, {220, 16}, + {6 , 32}, {28 , 32}, {44 , 32}, {60 , 32}, {76 , 32}, {92 , 32}, {108, 32}, {124, 32}, {140, 32}, {156, 32}, {172, 32}, {188, 32}, {214, 32}, + {10 , 48}, {36 , 48}, {52 , 48}, {68 , 48}, {84 , 48}, {100, 48}, {116, 48}, {132, 48}, {148, 48}, {164, 48}, {186, 48}, {208, 48}, {224, 48}, + {2 , 64}, {22 , 64}, {42 , 64}, {102, 64}, {160, 64}, {176, 64}, {192, 64}, {208, 64}, {224, 64}, // Underglow (63 -> 74) {216, 56}, {181, 57}, {138, 59}, {105, 58}, {52 , 60}, {10 , 60}, diff --git a/keyboards/mss_studio/m64_rgb/config.h b/keyboards/mss_studio/m64_rgb/config.h new file mode 100644 index 0000000000..0c7f8d17e1 --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/config.h @@ -0,0 +1,104 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x4D4B +#define PRODUCT_ID 0x6064 +#define DEVICE_VER 0x0001 +#define MANUFACTURER Mss Studio +#define PRODUCT M64 RGB + +/* key matrix size */ +#define MATRIX_ROWS 5 +#define MATRIX_COLS 14 + +/* key matrix pins */ +#define MATRIX_ROW_PINS { B3, B4, A0, A2, A3 } +#define MATRIX_COL_PINS { B0, B1, B2, B10, A7, A6, A5, A4, B5, B6, A1, B7, B8, B9 } + +/* COL2ROW or ROW2COL */ +#define DIODE_DIRECTION COL2ROW + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* Forcing to use NKRO instead 6KRO */ +#define FORCE_NKRO + +/* Change larger keys per scan for elite gaming */ +#define QMK_KEYS_PER_SCAN 12 + +#ifdef RGB_MATRIX_ENABLE + #define DRIVER_LED_TOTAL 76 + #define RGB_MATRIX_MAXIMUM_BRIGHTNESS 200 + #define RGB_MATRIX_STARTUP_VAL RGB_MATRIX_MAXIMUM_BRIGHTNESS + #define RGB_MATRIX_KEYPRESSES + #define RGB_MATRIX_FRAMEBUFFER_EFFECTS + + /* RGB Matrix config */ + #define RGB_DI_PIN B15 + + /* RGB Matrix effect */ + #define ENABLE_RGB_MATRIX_ALPHAS_MODS + #define ENABLE_RGB_MATRIX_GRADIENT_UP_DOWN + #define ENABLE_RGB_MATRIX_GRADIENT_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_BREATHING + #define ENABLE_RGB_MATRIX_BAND_SAT + #define ENABLE_RGB_MATRIX_BAND_VAL + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_SAT + #define ENABLE_RGB_MATRIX_BAND_PINWHEEL_VAL + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_SAT + #define ENABLE_RGB_MATRIX_BAND_SPIRAL_VAL + #define ENABLE_RGB_MATRIX_CYCLE_ALL + #define ENABLE_RGB_MATRIX_CYCLE_LEFT_RIGHT + #define ENABLE_RGB_MATRIX_CYCLE_UP_DOWN + #define ENABLE_RGB_MATRIX_RAINBOW_MOVING_CHEVRON + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN + #define ENABLE_RGB_MATRIX_CYCLE_OUT_IN_DUAL + #define ENABLE_RGB_MATRIX_CYCLE_PINWHEEL + #define ENABLE_RGB_MATRIX_CYCLE_SPIRAL + #define ENABLE_RGB_MATRIX_DUAL_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_BEACON + #define ENABLE_RGB_MATRIX_RAINBOW_PINWHEELS + #define ENABLE_RGB_MATRIX_RAINDROPS + #define ENABLE_RGB_MATRIX_JELLYBEAN_RAINDROPS + #define ENABLE_RGB_MATRIX_HUE_BREATHING + #define ENABLE_RGB_MATRIX_HUE_PENDULUM + #define ENABLE_RGB_MATRIX_HUE_WAVE + #define ENABLE_RGB_MATRIX_PIXEL_RAIN + #define ENABLE_RGB_MATRIX_PIXEL_FRACTAL +// enabled only if RGB_MATRIX_FRAMEBUFFER_EFFECTS is defined + #define ENABLE_RGB_MATRIX_TYPING_HEATMAP + #define ENABLE_RGB_MATRIX_DIGITAL_RAIN +// enabled only of RGB_MATRIX_KEYPRESSES or RGB_MATRIX_KEYRELEASES is defined + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_SIMPLE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_WIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTIWIDE + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_CROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTICROSS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_NEXUS + #define ENABLE_RGB_MATRIX_SOLID_REACTIVE_MULTINEXUS + #define ENABLE_RGB_MATRIX_SPLASH + #define ENABLE_RGB_MATRIX_MULTISPLASH + #define ENABLE_RGB_MATRIX_SOLID_SPLASH + #define ENABLE_RGB_MATRIX_SOLID_MULTISPLASH +#endif diff --git a/keyboards/mss_studio/m64_rgb/info.json b/keyboards/mss_studio/m64_rgb/info.json new file mode 100644 index 0000000000..264e894377 --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/info.json @@ -0,0 +1,79 @@ +{ + "keyboard_name": "M64 RGB", + "url": "", + "maintainer": "HorrorTroll", + "layouts": { + "LAYOUT_64_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + + {"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}, + {"label":"Z", "x":2, "y":3}, + {"label":"X", "x":3, "y":3}, + {"label":"C", "x":4, "y":3}, + {"label":"V", "x":5, "y":3}, + {"label":"B", "x":6, "y":3}, + {"label":"N", "x":7, "y":3}, + {"label":"M", "x":8, "y":3}, + {"label":",<", "x":9, "y":3}, + {"label":".>", "x":10, "y":3}, + {"label":"/?", "x":11, "y":3}, + {"label":"Shift", "x":12, "y":3}, + {"label":"\u2191", "x":13, "y":3}, + {"label":"Delete", "x":14, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"Win", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Alt", "x":10, "y":4}, + {"label":"Fn", "x":11, "y":4}, + {"label":"\u2190", "x":12, "y":4}, + {"label":"\u2193", "x":13, "y":4}, + {"label":"\u2192", "x":14, "y":4} + ] + } + } +} diff --git a/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c new file mode 100644 index 0000000000..f348dc69fe --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c @@ -0,0 +1,184 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +enum user_rgb_mode { + RGB_MODE_ALL, + RGB_MODE_KEYLIGHT, + RGB_MODE_UNDERGLOW, + RGB_MODE_NONE, +}; + +typedef union { + uint32_t raw; + struct { + uint8_t rgb_mode :8; + }; +} user_config_t; + +user_config_t user_config; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bakspc│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │Rft│ ↑ │Del│ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │LCrl│GUI │LAlt│ Space │RAt│Fn │ ← │ ↓ │ → │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │Rft│ │ │ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ + [_BASE] = LAYOUT_64_ansi( + 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_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, + 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, KC_UP, KC_SLSH, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT + ), + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │ ` │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ Delete│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │Reset│ │ │ │ │ │ │ │Ins│ │PSc│ │Hui│ Mod │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ │ │ │ │ │ │ │ │ │Tog│ │ │ │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │ │ │ │Cal│ │ │ │Mut│VoD│VoU│ │ │Vai│ │ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │ │ │ │ │ │ │Spd│Vad│Spi│ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ + [_FN] = LAYOUT_64_ansi( + KC_GRV, 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, + RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, + _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, _______, + _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI + ), +}; + +void keyboard_post_init_user(void) { + user_config.raw = eeconfig_read_user(); + switch (user_config.rgb_mode) { + case RGB_MODE_ALL: + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + break; + case RGB_MODE_KEYLIGHT: + rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); + rgb_matrix_set_color_all(0, 0, 0); + break; + case RGB_MODE_UNDERGLOW: + rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); + rgb_matrix_set_color_all(0, 0, 0); + break; + case RGB_MODE_NONE: + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + break; + } +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGB_TOG: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_KEYLIGHT; + } + break; + case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): { + rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_UNDERGLOW; + } + break; + case (LED_FLAG_UNDERGLOW): { + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_NONE; + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + user_config.rgb_mode = RGB_MODE_ALL; + } + break; + } + eeconfig_update_user(user_config.raw); + } + return false; + } + + return true; +} + +void rgb_matrix_indicators_user(void) { + HSV hsv = rgb_matrix_config.hsv; + uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1)); + hsv.h = time; + RGB rgb = hsv_to_rgb(hsv); + + if ((rgb_matrix_get_flags() & LED_FLAG_KEYLIGHT)) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(28, rgb.r, rgb.g, rgb.b); + } + } else { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(28, rgb.r, rgb.g, rgb.b); + } else { + rgb_matrix_set_color(28, 0, 0, 0); + } + } +} diff --git a/keyboards/mss_studio/m64_rgb/keymaps/default/readme.md b/keyboards/mss_studio/m64_rgb/keymaps/default/readme.md new file mode 100644 index 0000000000..810af1193b --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/default/readme.md @@ -0,0 +1,3 @@ +# Default Layout + +Keymap is default 64 qwerty, 64% layout diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/config.h b/keyboards/mss_studio/m64_rgb/keymaps/via/config.h new file mode 100644 index 0000000000..188407396a --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/config.h @@ -0,0 +1,20 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#pragma once + +#define DYNAMIC_KEYMAP_LAYER_COUNT 2 diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c new file mode 100644 index 0000000000..f348dc69fe --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c @@ -0,0 +1,184 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#include QMK_KEYBOARD_H +#include + +// Each layer gets a name for readability, which is then used in the keymap matrix below. +// The underscores don't mean anything - you can have a layer called STUFF or any other name. +// Layer names don't all need to be of the same length, obviously, and you can also skip them +// entirely and just use numbers. + +enum layer_names { + _BASE, + _FN, +}; + +enum user_rgb_mode { + RGB_MODE_ALL, + RGB_MODE_KEYLIGHT, + RGB_MODE_UNDERGLOW, + RGB_MODE_NONE, +}; + +typedef union { + uint32_t raw; + struct { + uint8_t rgb_mode :8; + }; +} user_config_t; + +user_config_t user_config; + +// enum layer_keycodes { }; + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │Esc│ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │ Bakspc│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │ Tab │ q │ w │ e │ r │ t │ y │ u │ i │ o │ p │ [ │ ] │ \ │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ Caps │ a │ s │ d │ f │ g │ h │ j │ k │ l │ ; │ ' │ Enter │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │LShift │ z │ x │ c │ v │ b │ n │ m │ , │ . │ / │Rft│ ↑ │Del│ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │LCrl│GUI │LAlt│ Space │RAt│Fn │ ← │ ↓ │ → │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │ │ ! │ @ │ # │ $ │ % │ ^ │ & │ * │ ( │ ) │ _ │ + │ │ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │ │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ { │ } │ | │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ : │ " │ │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │LShift │ Z │ X │ C │ V │ B │ N │ M │ < │ > │ ? │Rft│ │ │ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │ │ │ │ │ │ │ │ │ │ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ + [_BASE] = LAYOUT_64_ansi( + 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_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, + 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, KC_UP, KC_SLSH, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT + ), + +/* + ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + │ ` │F1 │F2 │F3 │F4 │F5 │F6 │F7 │F8 │F9 │F10│F11│F12│ Delete│ + ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + │Reset│ │ │ │ │ │ │ │Ins│ │PSc│ │Hui│ Mod │ + ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + │ │ │ │ │ │ │ │ │ │Tog│ │ │ │ + ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + │ │ │ │Cal│ │ │ │Mut│VoD│VoU│ │ │Vai│ │ + ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + │ │ │ │ │ │ │Spd│Vad│Spi│ + └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ +*/ + /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ + [_FN] = LAYOUT_64_ansi( + KC_GRV, 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, + RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, + _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, _______, + _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI + ), +}; + +void keyboard_post_init_user(void) { + user_config.raw = eeconfig_read_user(); + switch (user_config.rgb_mode) { + case RGB_MODE_ALL: + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + break; + case RGB_MODE_KEYLIGHT: + rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); + rgb_matrix_set_color_all(0, 0, 0); + break; + case RGB_MODE_UNDERGLOW: + rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); + rgb_matrix_set_color_all(0, 0, 0); + break; + case RGB_MODE_NONE: + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + break; + } +} + +bool process_record_user(uint16_t keycode, keyrecord_t *record) { + switch (keycode) { + case RGB_TOG: + if (record->event.pressed) { + switch (rgb_matrix_get_flags()) { + case LED_FLAG_ALL: { + rgb_matrix_set_flags(LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_KEYLIGHT; + } + break; + case (LED_FLAG_KEYLIGHT | LED_FLAG_MODIFIER | LED_FLAG_INDICATOR): { + rgb_matrix_set_flags(LED_FLAG_UNDERGLOW); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_UNDERGLOW; + } + break; + case (LED_FLAG_UNDERGLOW): { + rgb_matrix_set_flags(LED_FLAG_NONE); + rgb_matrix_set_color_all(0, 0, 0); + user_config.rgb_mode = RGB_MODE_NONE; + } + break; + default: { + rgb_matrix_set_flags(LED_FLAG_ALL); + rgb_matrix_enable_noeeprom(); + user_config.rgb_mode = RGB_MODE_ALL; + } + break; + } + eeconfig_update_user(user_config.raw); + } + return false; + } + + return true; +} + +void rgb_matrix_indicators_user(void) { + HSV hsv = rgb_matrix_config.hsv; + uint8_t time = scale16by8(g_rgb_timer, qadd8(32, 1)); + hsv.h = time; + RGB rgb = hsv_to_rgb(hsv); + + if ((rgb_matrix_get_flags() & LED_FLAG_KEYLIGHT)) { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(28, rgb.r, rgb.g, rgb.b); + } + } else { + if (host_keyboard_led_state().caps_lock) { + rgb_matrix_set_color(28, rgb.r, rgb.g, rgb.b); + } else { + rgb_matrix_set_color(28, 0, 0, 0); + } + } +} diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/readme.md b/keyboards/mss_studio/m64_rgb/keymaps/via/readme.md new file mode 100644 index 0000000000..ee17118130 --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/readme.md @@ -0,0 +1,3 @@ +# Default Layout with VIA + +Keymap is default 64 qwerty, 64% layout diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/rules.mk b/keyboards/mss_studio/m64_rgb/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/mss_studio/m64_rgb/m64_rgb.c b/keyboards/mss_studio/m64_rgb/m64_rgb.c new file mode 100644 index 0000000000..26fed2b2fe --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/m64_rgb.c @@ -0,0 +1,50 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#include "m64_rgb.h" + +#ifdef RGB_MATRIX_ENABLE +led_config_t g_led_config = { { + { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13 }, + { 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27 }, + { 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, NO_LED, 40 }, + { 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54 }, + { 55, 56, 57, NO_LED, NO_LED, 58, NO_LED, NO_LED, NO_LED, 59, 60, 61, 62, 63 } +}, { + // Key matrix (0 -> 63) + {0 , 0}, {16 , 0}, {32 , 0}, {48 , 0}, {64 , 0}, {80 , 0}, {96 , 0}, {112, 0}, {128, 0}, {144, 0}, {160, 0}, {176, 0}, {192, 0}, {216, 0}, + {4 , 16}, {24 , 16}, {40 , 16}, {56 , 16}, {72 , 16}, {88 , 16}, {104, 16}, {120, 16}, {136, 16}, {152, 16}, {168, 16}, {184, 16}, {200, 16}, {220, 16}, + {6 , 32}, {28 , 32}, {44 , 32}, {60 , 32}, {76 , 32}, {92 , 32}, {108, 32}, {124, 32}, {140, 32}, {156, 32}, {172, 32}, {188, 32}, {214, 32}, + {8 , 48}, {32 , 48}, {48 , 48}, {64 , 48}, {80 , 48}, {96 , 48}, {112, 48}, {128, 48}, {144, 48}, {160, 48}, {176, 48}, {192, 48}, {208, 48}, {224, 48}, + {2 , 64}, {22 , 64}, {42 , 64}, {102, 64}, {160, 64}, {176, 64}, {192, 64}, {208, 64}, {224, 64}, + + // Underglow (64 -> 75) + {216, 56}, {181, 57}, {138, 59}, {105, 58}, {52 , 60}, {10 , 60}, + {20 , 12}, {54 , 12}, {102, 10}, {145, 13}, {182, 9}, {211, 10}, +}, { + // Key matrix (0 -> 63) + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, + 8, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, 4, 4, + 1, 1, 1, 4, 1, 1, 4, 4, 4, + + // Underglow (64 -> 75) + 2, 2, 2, 2, 2, 2, + 2, 2, 2, 2, 2, 2 +} }; +#endif diff --git a/keyboards/mss_studio/m64_rgb/m64_rgb.h b/keyboards/mss_studio/m64_rgb/m64_rgb.h new file mode 100644 index 0000000000..e12bf5bc7b --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/m64_rgb.h @@ -0,0 +1,49 @@ +/* Copyright 2021 Mss Studio + * Copyright 2022 HorrorTroll + * + * 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 . + */ + +#pragma once + +#include "quantum.h" + +#define XXX KC_NO + +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ + * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2D │ + * ├──────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬───┬───┤ + * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B │3C │3D │ + * ├────┬──┴─┬─┴──┬┴───┴───┴───┴───┴───┴───┼───┼───┼───┼───┼───┤ + * │40 │41 │42 │45 │49 │4A │4B │4C │4D │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘ + */ + +#define LAYOUT_64_ansi( \ + 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, K2D, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D \ +) { \ + { 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, XXX, K2D }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D } \ +} diff --git a/keyboards/mss_studio/m64_rgb/readme.md b/keyboards/mss_studio/m64_rgb/readme.md new file mode 100644 index 0000000000..1925622b9c --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/readme.md @@ -0,0 +1,24 @@ +# M64 RGB + +Support STM32F072CBU6 keyboard. + +* Keyboard Maintainer: [HorrorTroll](https://github.com/HorrorTroll) +* Hardware Supported: STM32F072CBU6 + +Make example for this keyboard (after setting up your build environment): + + make mss_studio/m64_rgb:default + +Flashing example for this keyboard: + + make mss_studio/m64_rgb:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## Bootloader + +Enter the bootloader in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (Esc key) and plug in the keyboard +* **Physical reset button**: Press and hold the button on the back of the PCB, then plug in the keyboard +* **Keycode in layout**: Press the key mapped to `RESET` if it is available diff --git a/keyboards/mss_studio/m64_rgb/rules.mk b/keyboards/mss_studio/m64_rgb/rules.mk new file mode 100644 index 0000000000..9291499b77 --- /dev/null +++ b/keyboards/mss_studio/m64_rgb/rules.mk @@ -0,0 +1,22 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = no # Commands for debug and configuration +NKRO_ENABLE = yes # Enable N-Key Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output + +# RGB Matrix enabled +RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 From 787a68948fa0d5e251e22a623071082c8c0561b1 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Fri, 13 May 2022 20:35:49 -0700 Subject: [PATCH 402/699] [Core] Add Reboot keycode to core (#15990) --- docs/keycodes.md | 1 + docs/quantum_keycodes.md | 1 + .../handwired/onekey/keymaps/reboot/keymap.c | 5 +++++ platforms/arm_atsam/bootloaders/md_boot.c | 4 ++++ platforms/avr/bootloaders/bootloadhid.c | 7 +++++++ platforms/avr/bootloaders/caterina.c | 9 +++++++++ platforms/avr/bootloaders/custom.c | 9 +++++++++ platforms/avr/bootloaders/dfu.c | 9 ++++++++- platforms/avr/bootloaders/halfkay.c | 10 ++++++++++ platforms/avr/bootloaders/usbasploader.c | 9 +++++++++ platforms/bootloader.h | 1 + .../boards/STM32_F103_STM32DUINO/board/board.c | 3 --- .../STM32_F103_STM32DUINO/configs/config.h | 9 +++++++++ platforms/chibios/bootloaders/custom.c | 1 + platforms/chibios/bootloaders/gd32v_dfu.c | 7 +++++++ platforms/chibios/bootloaders/halfkay.c | 2 ++ platforms/chibios/bootloaders/kiibohd.c | 1 + platforms/chibios/bootloaders/stm32_dfu.c | 7 +++++++ platforms/chibios/bootloaders/stm32duino.c | 5 +++++ platforms/chibios/bootloaders/tinyuf2.c | 4 ++++ platforms/chibios/bootloaders/wb32_dfu.c | 4 ++++ platforms/test/bootloaders/none.c | 1 + quantum/quantum.c | 17 ++++++++++++++++- quantum/quantum.h | 1 + quantum/quantum_keycodes.h | 2 ++ 25 files changed, 124 insertions(+), 5 deletions(-) create mode 100644 keyboards/handwired/onekey/keymaps/reboot/keymap.c create mode 100644 platforms/chibios/boards/STM32_F103_STM32DUINO/configs/config.h diff --git a/docs/keycodes.md b/docs/keycodes.md index 942e0a6616..10652bdb2f 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -225,6 +225,7 @@ See also: [Quantum Keycodes](quantum_keycodes.md#qmk-keycodes) |`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | |`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory) | |`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held | +|`QK_REBOOT` |`QK_RBT` |Resets the keyboard. Does not load the bootloader | ## Audio Keys :id=audio-keys diff --git a/docs/quantum_keycodes.md b/docs/quantum_keycodes.md index 46a8b7de19..a1923777ef 100644 --- a/docs/quantum_keycodes.md +++ b/docs/quantum_keycodes.md @@ -14,3 +14,4 @@ On this page we have documented keycodes between `0x00FF` and `0xFFFF` which are |`QK_DEBUG_TOGGLE`|`DB_TOGG`|Toggle debug mode | |`QK_CLEAR_EEPROM`|`EE_CLR` |Reinitializes the keyboard's EEPROM (persistent memory) | |`QK_MAKE` | |Sends `qmk compile -kb (keyboard) -km (keymap)`, or `qmk flash` if shift is held | +|`QK_REBOOT` |`QK_RBT` |Resets the keyboard. Does not load the bootloader | diff --git a/keyboards/handwired/onekey/keymaps/reboot/keymap.c b/keyboards/handwired/onekey/keymaps/reboot/keymap.c new file mode 100644 index 0000000000..c3d147a76c --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/reboot/keymap.c @@ -0,0 +1,5 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(QK_REBOOT) +}; diff --git a/platforms/arm_atsam/bootloaders/md_boot.c b/platforms/arm_atsam/bootloaders/md_boot.c index 32cf850448..1cf7aec62c 100644 --- a/platforms/arm_atsam/bootloaders/md_boot.c +++ b/platforms/arm_atsam/bootloaders/md_boot.c @@ -63,3 +63,7 @@ void bootloader_jump(void) { while (1) ; // Wait on timeout } + +__attribute__((weak)) void mcu_reset(void) { + NVIC_SystemReset(); +} diff --git a/platforms/avr/bootloaders/bootloadhid.c b/platforms/avr/bootloaders/bootloadhid.c index ae58760d7d..b91dca6d27 100644 --- a/platforms/avr/bootloaders/bootloadhid.c +++ b/platforms/avr/bootloaders/bootloadhid.c @@ -31,3 +31,10 @@ __attribute__((weak)) void bootloader_jump(void) { for (;;) ; } + +__attribute__((weak)) void mcu_reset(void) { + // watchdog reset + wdt_enable(WDTO_250MS); + for (;;) + ; +} diff --git a/platforms/avr/bootloaders/caterina.c b/platforms/avr/bootloaders/caterina.c index 82a16a3765..2b5f613d6d 100644 --- a/platforms/avr/bootloaders/caterina.c +++ b/platforms/avr/bootloaders/caterina.c @@ -37,3 +37,12 @@ __attribute__((weak)) void bootloader_jump(void) { while (1) { } } + +__attribute__((weak)) void mcu_reset(void) { + // setup watchdog timeout + wdt_enable(WDTO_60MS); + + // wait for watchdog timer to trigger + while (1) { + } +} diff --git a/platforms/avr/bootloaders/custom.c b/platforms/avr/bootloaders/custom.c index 624fbe242a..72b19f6671 100644 --- a/platforms/avr/bootloaders/custom.c +++ b/platforms/avr/bootloaders/custom.c @@ -15,5 +15,14 @@ */ #include "bootloader.h" +#include __attribute__((weak)) void bootloader_jump(void) {} +__attribute__((weak)) void mcu_reset(void) { + // setup watchdog timeout + wdt_enable(WDTO_60MS); + + // wait for watchdog timer to trigger + while (1) { + } +} diff --git a/platforms/avr/bootloaders/dfu.c b/platforms/avr/bootloaders/dfu.c index 06b2c8963a..dbbb5f4ab6 100644 --- a/platforms/avr/bootloaders/dfu.c +++ b/platforms/avr/bootloaders/dfu.c @@ -34,8 +34,15 @@ __attribute__((weak)) void bootloader_jump(void) { UCSR1B = 0; _delay_ms(5); // 5 seems to work fine - // watchdog reset reset_key = BOOTLOADER_RESET_KEY; + // watchdog reset + wdt_enable(WDTO_250MS); + for (;;) + ; +} + +__attribute__((weak)) void mcu_reset(void) { + // watchdog reset wdt_enable(WDTO_250MS); for (;;) ; diff --git a/platforms/avr/bootloaders/halfkay.c b/platforms/avr/bootloaders/halfkay.c index 651696f988..402f5f2778 100644 --- a/platforms/avr/bootloaders/halfkay.c +++ b/platforms/avr/bootloaders/halfkay.c @@ -17,6 +17,7 @@ #include "bootloader.h" #include +#include #include __attribute__((weak)) void bootloader_jump(void) { @@ -126,3 +127,12 @@ __attribute__((weak)) void bootloader_jump(void) { asm volatile("jmp 0x1FC00"); #endif } + +__attribute__((weak)) void mcu_reset(void) { + // setup watchdog timeout + wdt_enable(WDTO_60MS); + + // wait for watchdog timer to trigger + while (1) { + } +} diff --git a/platforms/avr/bootloaders/usbasploader.c b/platforms/avr/bootloaders/usbasploader.c index 008bd16069..333010eefa 100644 --- a/platforms/avr/bootloaders/usbasploader.c +++ b/platforms/avr/bootloaders/usbasploader.c @@ -54,3 +54,12 @@ __attribute__((weak)) void bootloader_jump(void) { #endif [bootaddrme] "M"((((FLASH_SIZE - BOOTLOADER_SIZE) >> 1) >> 8) & 0xff), [bootaddrlo] "M"((((FLASH_SIZE - BOOTLOADER_SIZE) >> 1) >> 0) & 0xff)); } + +__attribute__((weak)) void mcu_reset(void) { + // setup watchdog timeout + wdt_enable(WDTO_15MS); + + // wait for watchdog timer to trigger + while (1) { + } +} diff --git a/platforms/bootloader.h b/platforms/bootloader.h index 25ebd95288..77c6c80287 100644 --- a/platforms/bootloader.h +++ b/platforms/bootloader.h @@ -19,3 +19,4 @@ along with this program. If not, see . /* give code for your bootloader to come up if needed */ void bootloader_jump(void); +void mcu_reset(void); diff --git a/platforms/chibios/boards/STM32_F103_STM32DUINO/board/board.c b/platforms/chibios/boards/STM32_F103_STM32DUINO/board/board.c index 8a34e81f25..cba977da77 100644 --- a/platforms/chibios/boards/STM32_F103_STM32DUINO/board/board.c +++ b/platforms/chibios/boards/STM32_F103_STM32DUINO/board/board.c @@ -16,9 +16,6 @@ #include -// Value to place in RTC backup register 10 for persistent bootloader mode -#define RTC_BOOTLOADER_FLAG 0x424C - /** * @brief PAL setup. * @details Digital I/O ports static configuration as defined in @p board.h. diff --git a/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/config.h b/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/config.h new file mode 100644 index 0000000000..d8b852cab7 --- /dev/null +++ b/platforms/chibios/boards/STM32_F103_STM32DUINO/configs/config.h @@ -0,0 +1,9 @@ +// Copyright 2022 Nick Brassel (@tzarc) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +// Value to place in RTC backup register 10 for persistent bootloader mode +#define RTC_BOOTLOADER_FLAG 0x424C + +// Value to place in RTC backup register 10 for instant reboot mode +#define RTC_BOOTLOADER_JUST_UPLOADED 0x424D diff --git a/platforms/chibios/bootloaders/custom.c b/platforms/chibios/bootloaders/custom.c index bba9fc4637..6c5a433953 100644 --- a/platforms/chibios/bootloaders/custom.c +++ b/platforms/chibios/bootloaders/custom.c @@ -17,5 +17,6 @@ #include "bootloader.h" __attribute__((weak)) void bootloader_jump(void) {} +__attribute__((weak)) void mcu_reset(void) {} __attribute__((weak)) void enter_bootloader_mode_if_requested(void) {} diff --git a/platforms/chibios/bootloaders/gd32v_dfu.c b/platforms/chibios/bootloaders/gd32v_dfu.c index baa7d1f882..100fc472f8 100644 --- a/platforms/chibios/bootloaders/gd32v_dfu.c +++ b/platforms/chibios/bootloaders/gd32v_dfu.c @@ -36,5 +36,12 @@ __attribute__((weak)) void bootloader_jump(void) { *DBGMCU_CMD = DBGMCU_CMD_RESET; } +__attribute__((weak)) void mcu_reset(void) { + // Confirmed by karlk90, there is no actual reset to bootloader. + // This just resets the controller. + *DBGMCU_KEY = DBGMCU_KEY_UNLOCK; + *DBGMCU_CMD = DBGMCU_CMD_RESET; +} + /* Jumping to bootloader is not possible from user code. */ void enter_bootloader_mode_if_requested(void) {} diff --git a/platforms/chibios/bootloaders/halfkay.c b/platforms/chibios/bootloaders/halfkay.c index 168c2abc23..aa11e6c5f4 100644 --- a/platforms/chibios/bootloaders/halfkay.c +++ b/platforms/chibios/bootloaders/halfkay.c @@ -23,3 +23,5 @@ __attribute__((weak)) void bootloader_jump(void) { wait_ms(100); __BKPT(0); } + +__attribute__((weak)) void mcu_reset(void) {} diff --git a/platforms/chibios/bootloaders/kiibohd.c b/platforms/chibios/bootloaders/kiibohd.c index 911e807092..09a4d49b78 100644 --- a/platforms/chibios/bootloaders/kiibohd.c +++ b/platforms/chibios/bootloaders/kiibohd.c @@ -30,3 +30,4 @@ __attribute__((weak)) void bootloader_jump(void) { // request reset SCB->AIRCR = SCB_AIRCR_VECTKEY_WRITEMAGIC | SCB_AIRCR_SYSRESETREQ_Msk; } +__attribute__((weak)) void mcu_reset(void) {} diff --git a/platforms/chibios/bootloaders/stm32_dfu.c b/platforms/chibios/bootloaders/stm32_dfu.c index 0e74111367..ff866bd2bc 100644 --- a/platforms/chibios/bootloaders/stm32_dfu.c +++ b/platforms/chibios/bootloaders/stm32_dfu.c @@ -61,6 +61,9 @@ __attribute__((weak)) void bootloader_jump(void) { NVIC_SystemReset(); } +__attribute__((weak)) void mcu_reset(void) { + NVIC_SystemReset(); +} // not needed at all, but if anybody attempts to invoke it.... void enter_bootloader_mode_if_requested(void) {} @@ -76,6 +79,10 @@ __attribute__((weak)) void bootloader_jump(void) { NVIC_SystemReset(); } +__attribute__((weak)) void mcu_reset(void) { + NVIC_SystemReset(); +} + void enter_bootloader_mode_if_requested(void) { unsigned long *check = MAGIC_ADDR; if (*check == BOOTLOADER_MAGIC) { diff --git a/platforms/chibios/bootloaders/stm32duino.c b/platforms/chibios/bootloaders/stm32duino.c index 53d3ba0adb..e2db7fa16c 100644 --- a/platforms/chibios/bootloaders/stm32duino.c +++ b/platforms/chibios/bootloaders/stm32duino.c @@ -21,3 +21,8 @@ __attribute__((weak)) void bootloader_jump(void) { NVIC_SystemReset(); } + +__attribute__((weak)) void mcu_reset(void) { + BKP->DR10 = RTC_BOOTLOADER_JUST_UPLOADED; + NVIC_SystemReset(); +} \ No newline at end of file diff --git a/platforms/chibios/bootloaders/tinyuf2.c b/platforms/chibios/bootloaders/tinyuf2.c index 9ffca5dec8..e08855b6c4 100644 --- a/platforms/chibios/bootloaders/tinyuf2.c +++ b/platforms/chibios/bootloaders/tinyuf2.c @@ -25,6 +25,10 @@ extern uint32_t _board_dfu_dbl_tap[]; #define DBL_TAP_REG _board_dfu_dbl_tap[0] +__attribute__((weak)) void mcu_reset(void) { + NVIC_SystemReset(); +} + __attribute__((weak)) void bootloader_jump(void) { DBL_TAP_REG = DBL_TAP_MAGIC; NVIC_SystemReset(); diff --git a/platforms/chibios/bootloaders/wb32_dfu.c b/platforms/chibios/bootloaders/wb32_dfu.c index bbc382a2d0..d021b0863b 100644 --- a/platforms/chibios/bootloaders/wb32_dfu.c +++ b/platforms/chibios/bootloaders/wb32_dfu.c @@ -47,3 +47,7 @@ void enter_bootloader_mode_if_requested(void) { ; } } + +__attribute__((weak)) void mcu_reset(void) { + NVIC_SystemReset(); +} diff --git a/platforms/test/bootloaders/none.c b/platforms/test/bootloaders/none.c index 5155d9ff04..e88a79ae05 100644 --- a/platforms/test/bootloaders/none.c +++ b/platforms/test/bootloaders/none.c @@ -17,3 +17,4 @@ #include "bootloader.h" void bootloader_jump(void) {} +void mcu_reset(void) {} diff --git a/quantum/quantum.c b/quantum/quantum.c index 673ea91b11..c0e801a4bb 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -121,7 +121,7 @@ __attribute__((weak)) void post_process_record_kb(uint16_t keycode, keyrecord_t __attribute__((weak)) void post_process_record_user(uint16_t keycode, keyrecord_t *record) {} -void reset_keyboard(void) { +void shutdown_quantum(void) { clear_keyboard(); #if defined(MIDI_ENABLE) && defined(MIDI_BASIC) process_midi_all_notes_off(); @@ -143,9 +143,18 @@ void reset_keyboard(void) { #ifdef HAPTIC_ENABLE haptic_shutdown(); #endif +} + +void reset_keyboard(void) { + shutdown_quantum(); bootloader_jump(); } +void soft_reset_keyboard(void) { + shutdown_quantum(); + mcu_reset(); +} + /* Convert record into usable keycode via the contained event. */ uint16_t get_record_keycode(keyrecord_t *record, bool update_layer_cache) { #ifdef COMBO_ENABLE @@ -326,6 +335,9 @@ bool process_record_quantum(keyrecord_t *record) { case QK_BOOTLOADER: reset_keyboard(); return false; + case QK_REBOOT: + soft_reset_keyboard(); + return false; #endif #ifndef NO_DEBUG case QK_DEBUG_TOGGLE: @@ -339,6 +351,9 @@ bool process_record_quantum(keyrecord_t *record) { return false; case QK_CLEAR_EEPROM: eeconfig_init(); +#ifndef NO_RESET + soft_reset_keyboard(); +#endif return false; #ifdef VELOCIKEY_ENABLE case VLK_TOG: diff --git a/quantum/quantum.h b/quantum/quantum.h index d021e7c05c..7829ec7e0c 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -254,6 +254,7 @@ void post_process_record_kb(uint16_t keycode, keyrecord_t *record); void post_process_record_user(uint16_t keycode, keyrecord_t *record); void reset_keyboard(void); +void soft_reset_keyboard(void); void startup_user(void); void shutdown_user(void); diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index c7b4ea593f..5d5c4ed8c4 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -596,6 +596,7 @@ enum quantum_keycodes { MAGIC_TOGGLE_CONTROL_CAPSLOCK, QK_MAKE, + QK_REBOOT, SECURE_LOCK, SECURE_UNLOCK, @@ -717,6 +718,7 @@ enum quantum_keycodes { #define QK_BOOT QK_BOOTLOADER #define DB_TOGG QK_DEBUG_TOGGLE #define EE_CLR QK_CLEAR_EEPROM +#define QK_RBT QK_REBOOT // Audio Clicky aliases #define CK_TOGG CLICKY_TOGGLE From 90eef4cd153cdc1b00d973e6abb029828f656294 Mon Sep 17 00:00:00 2001 From: Yorick Peterse Date: Sat, 14 May 2022 07:26:12 +0200 Subject: [PATCH 403/699] Fix kinetic mouse mode (#16951) Co-authored-by: Jan Christoph Ebersbach --- quantum/mousekey.c | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/quantum/mousekey.c b/quantum/mousekey.c index 64d0e66682..a15bd8f13e 100644 --- a/quantum/mousekey.c +++ b/quantum/mousekey.c @@ -66,11 +66,16 @@ uint8_t mk_time_to_max = MOUSEKEY_TIME_TO_MAX; /* milliseconds between the initial key press and first repeated motion event (0-2550) */ uint8_t mk_wheel_delay = MOUSEKEY_WHEEL_DELAY / 10; /* milliseconds between repeated motion events (0-255) */ -uint8_t mk_wheel_interval = MOUSEKEY_WHEEL_INTERVAL; +# ifndef MK_KINETIC_SPEED +uint8_t mk_wheel_interval = MOUSEKEY_WHEEL_INTERVAL; +# else /* #ifndef MK_KINETIC_SPEED */ +float mk_wheel_interval = 1000.0f / MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; +# endif /* #ifndef MK_KINETIC_SPEED */ uint8_t mk_wheel_max_speed = MOUSEKEY_WHEEL_MAX_SPEED; uint8_t mk_wheel_time_to_max = MOUSEKEY_WHEEL_TIME_TO_MAX; # ifndef MK_COMBINED +# ifndef MK_KINETIC_SPEED static uint8_t move_unit(void) { uint16_t unit; @@ -108,8 +113,7 @@ static uint8_t wheel_unit(void) { return (unit > MOUSEKEY_WHEEL_MAX ? MOUSEKEY_WHEEL_MAX : (unit == 0 ? 1 : unit)); } -# else /* #ifndef MK_COMBINED */ -# ifdef MK_KINETIC_SPEED +# else /* #ifndef MK_KINETIC_SPEED */ /* * Kinetic movement acceleration algorithm @@ -129,7 +133,7 @@ const uint16_t mk_decelerated_speed = MOUSEKEY_DECELERATED_SPEED; const uint16_t mk_initial_speed = MOUSEKEY_INITIAL_SPEED; static uint8_t move_unit(void) { - float speed = mk_initial_speed; + float speed = (float)mk_initial_speed; if (mousekey_accel & ((1 << 0) | (1 << 2))) { speed = mousekey_accel & (1 << 2) ? mk_accelerated_speed : mk_decelerated_speed; @@ -147,8 +151,6 @@ static uint8_t move_unit(void) { return speed > MOUSEKEY_MOVE_MAX ? MOUSEKEY_MOVE_MAX : speed; } -float mk_wheel_interval = 1000.0f / MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; - static uint8_t wheel_unit(void) { float speed = MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; @@ -167,7 +169,8 @@ static uint8_t wheel_unit(void) { return 1; } -# else /* #ifndef MK_KINETIC_SPEED */ +# endif /* #ifndef MK_KINETIC_SPEED */ +# else /* #ifndef MK_COMBINED */ static uint8_t move_unit(void) { uint16_t unit; @@ -205,8 +208,7 @@ static uint8_t wheel_unit(void) { return (unit > MOUSEKEY_WHEEL_MAX ? MOUSEKEY_WHEEL_MAX : (unit == 0 ? 1 : unit)); } -# endif /* #ifndef MK_KINETIC_SPEED */ -# endif /* #ifndef MK_COMBINED */ +# endif /* #ifndef MK_COMBINED */ void mousekey_task(void) { // report cursor and scroll movement independently From 68b16bba68d79c63bbd649a5be58756e937c96da Mon Sep 17 00:00:00 2001 From: Pascal Getreuer <50221757+getreuer@users.noreply.github.com> Date: Fri, 13 May 2022 23:00:32 -0700 Subject: [PATCH 404/699] [Core] Add Caps Word feature to core (#16588) Co-authored-by: precondition <57645186+precondition@users.noreply.github.com> Co-authored-by: Drashna Jaelre --- builddefs/generic_features.mk | 1 + builddefs/show_options.mk | 3 +- data/mappings/info_config.json | 3 + data/mappings/info_rules.json | 1 + data/schemas/keyboard.jsonschema | 10 + docs/_summary.md | 1 + docs/feature_caps_word.md | 156 ++++++++ docs/keycodes.md | 8 + quantum/caps_word.c | 80 ++++ quantum/caps_word.h | 43 ++ quantum/keyboard.c | 7 + quantum/process_keycode/process_caps_word.c | 160 ++++++++ quantum/process_keycode/process_caps_word.h | 37 ++ quantum/quantum.c | 3 + quantum/quantum.h | 5 + quantum/quantum_keycodes.h | 3 + tests/caps_word/config.h | 21 + tests/caps_word/test.mk | 19 + tests/caps_word/test_caps_word.cpp | 423 ++++++++++++++++++++ 19 files changed, 983 insertions(+), 1 deletion(-) create mode 100644 docs/feature_caps_word.md create mode 100644 quantum/caps_word.c create mode 100644 quantum/caps_word.h create mode 100644 quantum/process_keycode/process_caps_word.c create mode 100644 quantum/process_keycode/process_caps_word.h create mode 100644 tests/caps_word/config.h create mode 100644 tests/caps_word/test.mk create mode 100644 tests/caps_word/test_caps_word.cpp diff --git a/builddefs/generic_features.mk b/builddefs/generic_features.mk index 0475a2ff09..c3f1ec0f72 100644 --- a/builddefs/generic_features.mk +++ b/builddefs/generic_features.mk @@ -17,6 +17,7 @@ SPACE_CADET_ENABLE ?= yes GRAVE_ESC_ENABLE ?= yes GENERIC_FEATURES = \ + CAPS_WORD \ COMBO \ COMMAND \ DEFERRED_EXEC \ diff --git a/builddefs/show_options.mk b/builddefs/show_options.mk index 16b69ef0ea..f67d009191 100644 --- a/builddefs/show_options.mk +++ b/builddefs/show_options.mk @@ -81,7 +81,8 @@ OTHER_OPTION_NAMES = \ RGBLIGHT_FULL_POWER \ LTO_ENABLE \ PROGRAMMABLE_BUTTON_ENABLE \ - SECURE_ENABLE + SECURE_ENABLE \ + CAPS_WORD_ENABLE define NAME_ECHO @printf " %-30s = %-16s # %s\\n" "$1" "$($1)" "$(origin $1)" diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json index 02ad3226c2..d9f96b5892 100644 --- a/data/mappings/info_config.json +++ b/data/mappings/info_config.json @@ -11,6 +11,8 @@ "BACKLIGHT_BREATHING": {"info_key": "backlight.breathing", "value_type": "bool"}, "BREATHING_PERIOD": {"info_key": "backlight.breathing_period", "value_type": "int"}, "BACKLIGHT_PIN": {"info_key": "backlight.pin"}, + "BOTH_SHIFTS_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.both_shifts_turns_on", "value_type": "bool"}, + "CAPS_WORD_IDLE_TIMEOUT": {"info_key": "caps_word.idle_timeout", "value_type": "int"}, "COMBO_COUNT": {"info_key": "combo.count", "value_type": "int"}, "COMBO_TERM": {"info_key": "combo.term", "value_type": "int"}, "DEBOUNCE": {"info_key": "debounce", "value_type": "int"}, @@ -19,6 +21,7 @@ #"DEVICE_VER": {"info_key": "usb.device_version", "value_type": "bcd_version"}, "DESCRIPTION": {"info_key": "keyboard_folder", "value_type": "str", "to_json": false}, "DIODE_DIRECTION": {"info_key": "diode_direction"}, + "DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.double_tap_shift_turns_on", "value_type": "bool"}, "FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "bool"}, "DYNAMIC_KEYMAP_EEPROM_MAX_ADDR": {"info_key": "dynamic_keymap.eeprom_max_addr", "value_type": "int"}, "DYNAMIC_KEYMAP_LAYER_COUNT": {"info_key": "dynamic_keymap.layer_count", "value_type": "int"}, diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json index 4b0fde5629..a8b39afbd1 100644 --- a/data/mappings/info_rules.json +++ b/data/mappings/info_rules.json @@ -10,6 +10,7 @@ "BOARD": {"info_key": "board"}, "BOOTLOADER": {"info_key": "bootloader", "warn_duplicate": false}, "BLUETOOTH": {"info_key": "bluetooth.driver"}, + "CAPS_WORD_ENABLE": {"info_key": "caps_word.enabled", "value_type": "bool"}, "FIRMWARE_FORMAT": {"info_key": "build.firmware_format"}, "KEYBOARD_SHARED_EP": {"info_key": "usb.shared_endpoint.keyboard", "value_type": "bool"}, "MOUSE_SHARED_EP": {"info_key": "usb.shared_endpoint.mouse", "value_type": "bool"}, diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index 6b1e543e48..aaf6f887d5 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -92,6 +92,16 @@ "enum": ["COL2ROW", "ROW2COL"] }, "debounce": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + "caps_word": { + "type": "object", + "additionalProperties": false, + "properties": { + "enabled": {"type": "boolean"}, + "both_shifts_turns_on": {"type": "boolean"}, + "double_tap_shift_turns_on": {"type": "boolean"}, + "idle_timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"}, + }, + }, "combo": { "type": "object", "properties": { diff --git a/docs/_summary.md b/docs/_summary.md index 786685eba4..fed75196b4 100644 --- a/docs/_summary.md +++ b/docs/_summary.md @@ -75,6 +75,7 @@ * Software Features * [Auto Shift](feature_auto_shift.md) + * [Caps Word](feature_caps_word.md) * [Combos](feature_combo.md) * [Debounce API](feature_debounce_type.md) * [Key Lock](feature_key_lock.md) diff --git a/docs/feature_caps_word.md b/docs/feature_caps_word.md new file mode 100644 index 0000000000..0b71119917 --- /dev/null +++ b/docs/feature_caps_word.md @@ -0,0 +1,156 @@ +# Caps Word + +It is often useful to type a single word in all capitals, for instance +abbreviations like "QMK", or in code, identifiers like `KC_SPC`. "Caps Word" is +a modern alternative to Caps Lock: + +* Letters are capitalized while active, and Caps Word automatically disables + itself at the end of the word. That is, it stops by default once a space or + any key other than `a`--`z`, `0`--`9`, `-`, `_`, delete, or backspace is + pressed. Caps Word also disables itself if the keyboard is idle for 5 seconds. + This is configurable, see below. + +* To avoid requiring a dedicated key for Caps Word, there is an option + (`BOTH_SHIFTS_TURNS_ON_CAPS_WORD`) to activate Caps Word by simultaneously + pressing both shift keys. See below for other options. + +* The implementation does not use the Caps Lock (`KC_CAPS`) keycode. Caps Word + works even if you're remapping Caps Lock at the OS level to Ctrl or something + else, as Emacs and Vim users often do. + + +## How do I enable Caps Word :id=how-do-i-enable-caps-word + +In your `rules.mk`, add: + +```make +CAPS_WORD_ENABLE = yes +``` + +Next, use one the following methods to activate Caps Word: + +* **Activate by pressing a key**: Use the `CAPS_WORD` keycode (short + alias `CAPSWRD`) in your keymap. + +* **Activate by pressing Left Shift + Right Shift**: Add `#define + BOTH_SHIFTS_TURNS_ON_CAPS_WORD` to config.h. You may also need to disable or + reconfigure Command, details below. Then, simultaneously pressing both left + and right shifts turns on Caps Word. This method works with the plain + `KC_LSFT` and `KC_RSFT` keycodes as well as one-shot shifts and Space Cadet + shifts. If your shift keys are mod-taps, hold both shift mod-tap keys until + the tapping term, then release them. + +* **Activate by double tapping Left Shift**: Add `#define + DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD` config.h. Then, double tapping Left Shift + turns on Caps Word. This method works with `KC_LSFT` or one-shot Left Shift + `OSM(MOD_LSFT)`. To count as a double tap, the maximum time in milliseconds + between taps is `TAPPING_TERM`, or if using `TAPPING_TERM_PER_KEY`, the time + returned by `get_tapping_term()` for the shift keycode being tapped. + +* **Custom activation**: You can activate Caps Word from code by calling + `caps_word_on()`. This may be used to activate Caps Word through [a + combo](feature_combo.md) or [tap dance](feature_tap_dance.md) or any means + you like. + +### Troubleshooting: Command :id=troubleshooting-command + +When using `BOTH_SHIFTS_TURNS_ON_CAPS_WORD`, you might see a compile message +**"BOTH_SHIFTS_TURNS_ON_CAPS_WORD and Command should not be enabled at the same +time, since both use the Left Shift + Right Shift key combination."** + +Many keyboards enable the [Command feature](feature_command.md), which by +default is also activated using the Left Shift + Right Shift key combination. To +fix this conflict, please disable Command by adding in rules.mk: + +```make +COMMAND_ENABLE = no +``` + +Or configure Command to use another key combination like Left Ctrl + Right Ctrl +by defining `IS_COMMAND()` in config.h: + +```c +// Activate Command with Left Ctrl + Right Ctrl. +#define IS_COMMAND() (get_mods() == MOD_MASK_CTRL) +``` + + +## Customizing Caps Word :id=customizing-caps-word + +### Idle timeout :id=idle-timeout + +Caps Word turns off automatically if no keys are pressed for +`CAPS_WORD_IDLE_TIMEOUT` milliseconds. The default is 5000 (5 seconds). +Configure the timeout duration in config.h, for instance + +```c +#define CAPS_WORD_IDLE_TIMEOUT 3000 // 3 seconds. +``` + +Setting `CAPS_WORD_IDLE_TIMEOUT` to 0 configures Caps Word to never time out. +Caps Word then remains active indefinitely until a word breaking key is pressed. + + +### Functions :id=functions + +Functions to manipulate Caps Word: + +| Function | Description | +|-------------------------|------------------------------------------------| +| `caps_word_on()` | Turns Caps Word on. | +| `caps_word_off()` | Turns Caps Word off. | +| `caps_word_toggle()` | Toggles Caps Word. | +| `is_caps_word_on()` | Returns true if Caps Word is currently on. | + + +### Configure which keys are "word breaking" :id=configure-which-keys-are-word-breaking + +You can define the `caps_word_press_user(uint16_t keycode)` callback to +configure which keys should be shifted and which keys are considered "word +breaking" and stop Caps Word. + +The callback is called on every key press while Caps Word is active. When the +key should be shifted (that is, a letter key), the callback should call +`add_weak_mods(MOD_BIT(KC_LSFT))` to shift the key. Returning true continues the +current "word," while returning false is "word breaking" and deactivates Caps +Word. The default callback is + +```c +bool caps_word_press_user(uint16_t keycode) { + switch (keycode) { + // Keycodes that continue Caps Word, with shift applied. + case KC_A ... KC_Z: + case KC_MINS: + add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to next key. + return true; + + // Keycodes that continue Caps Word, without shifting. + case KC_1 ... KC_0: + case KC_BSPC: + case KC_DEL: + case KC_UNDS: + return true; + + default: + return false; // Deactivate Caps Word. + } +} +``` + + +### Representing Caps Word state :id=representing-caps-word-state + +Define `caps_word_set_user(bool active)` to get callbacks when Caps Word turns +on or off. This is useful to represent the current Caps Word state, e.g. by +setting an LED or playing a sound. In your keymap, define + +```c +void caps_word_set_user(bool active) { + if (active) { + // Do something when Caps Word activates. + } else { + // Do something when Caps Word deactivates. + } +} +``` + diff --git a/docs/keycodes.md b/docs/keycodes.md index 10652bdb2f..bd5af32dd3 100644 --- a/docs/keycodes.md +++ b/docs/keycodes.md @@ -269,6 +269,14 @@ See also: [Bluetooth](feature_bluetooth.md) |`OUT_USB` |USB only | |`OUT_BT` |Bluetooth only | +## Caps Word :id=caps-word + +See also: [Caps Word](feature_caps_word.md) + +|Key |Aliases |Description | +|-----------|---------|------------------------------| +|`CAPS_WORD`|`CAPSWRD`|Toggles Caps Word | + ## Dynamic Macros :id=dynamic-macros See also: [Dynamic Macros](feature_dynamic_macros.md) diff --git a/quantum/caps_word.c b/quantum/caps_word.c new file mode 100644 index 0000000000..5b83659f28 --- /dev/null +++ b/quantum/caps_word.c @@ -0,0 +1,80 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "caps_word.h" + +/** @brief True when Caps Word is active. */ +static bool caps_word_active = false; + +#if CAPS_WORD_IDLE_TIMEOUT > 0 +// Constrain timeout to a sensible range. With 16-bit timers, the longest +// timeout possible is 32768 ms, rounded here to 30000 ms = half a minute. +# if CAPS_WORD_IDLE_TIMEOUT < 100 || CAPS_WORD_IDLE_TIMEOUT > 30000 +# error "CAPS_WORD_IDLE_TIMEOUT must be between 100 and 30000 ms" +# endif + +/** @brief Deadline for idle timeout. */ +static uint16_t idle_timer = 0; + +void caps_word_task(void) { + if (caps_word_active && timer_expired(timer_read(), idle_timer)) { + caps_word_off(); + } +} + +void caps_word_reset_idle_timer(void) { + idle_timer = timer_read() + CAPS_WORD_IDLE_TIMEOUT; +} +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + +void caps_word_on(void) { + if (caps_word_active) { + return; + } + + clear_mods(); +#ifndef NO_ACTION_ONESHOT + clear_oneshot_mods(); +#endif // NO_ACTION_ONESHOT +#if CAPS_WORD_IDLE_TIMEOUT > 0 + caps_word_reset_idle_timer(); +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + + caps_word_active = true; + caps_word_set_user(true); +} + +void caps_word_off(void) { + if (!caps_word_active) { + return; + } + + unregister_weak_mods(MOD_MASK_SHIFT); // Make sure weak shift is off. + caps_word_active = false; + caps_word_set_user(false); +} + +void caps_word_toggle(void) { + if (caps_word_active) { + caps_word_off(); + } else { + caps_word_on(); + } +} + +bool is_caps_word_on(void) { + return caps_word_active; +} + +__attribute__((weak)) void caps_word_set_user(bool active) {} diff --git a/quantum/caps_word.h b/quantum/caps_word.h new file mode 100644 index 0000000000..b83f73371e --- /dev/null +++ b/quantum/caps_word.h @@ -0,0 +1,43 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include "quantum.h" + +#ifndef CAPS_WORD_IDLE_TIMEOUT +# define CAPS_WORD_IDLE_TIMEOUT 5000 // Default timeout of 5 seconds. +#endif // CAPS_WORD_IDLE_TIMEOUT + +#if CAPS_WORD_IDLE_TIMEOUT > 0 +/** @brief Matrix scan task for Caps Word feature */ +void caps_word_task(void); + +/** @brief Resets timer for Caps Word idle timeout. */ +void caps_word_reset_idle_timer(void); +#else +static inline void caps_word_task(void) {} +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + +void caps_word_on(void); /**< Activates Caps Word. */ +void caps_word_off(void); /**< Deactivates Caps Word. */ +void caps_word_toggle(void); /**< Toggles Caps Word. */ +bool is_caps_word_on(void); /**< Gets whether currently active. */ + +/** + * @brief Caps Word set callback. + * + * @param active True if Caps Word is active, false otherwise + */ +void caps_word_set_user(bool active); diff --git a/quantum/keyboard.c b/quantum/keyboard.c index 1dccd48e2f..a65f9d6d18 100644 --- a/quantum/keyboard.c +++ b/quantum/keyboard.c @@ -108,6 +108,9 @@ along with this program. If not, see . #ifdef BLUETOOTH_ENABLE # include "outputselect.h" #endif +#ifdef CAPS_WORD_ENABLE +# include "caps_word.h" +#endif static uint32_t last_input_modification_time = 0; uint32_t last_input_activity_time(void) { @@ -549,6 +552,10 @@ void quantum_task(void) { autoshift_matrix_scan(); #endif +#ifdef CAPS_WORD_ENABLE + caps_word_task(); +#endif + #ifdef SECURE_ENABLE secure_task(); #endif diff --git a/quantum/process_keycode/process_caps_word.c b/quantum/process_keycode/process_caps_word.c new file mode 100644 index 0000000000..15238f04a1 --- /dev/null +++ b/quantum/process_keycode/process_caps_word.c @@ -0,0 +1,160 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#include "process_caps_word.h" + +bool process_caps_word(uint16_t keycode, keyrecord_t* record) { + if (keycode == CAPSWRD) { // Pressing CAPSWRD toggles Caps Word. + if (record->event.pressed) { + caps_word_toggle(); + } + return false; + } + +#ifndef NO_ACTION_ONESHOT + const uint8_t mods = get_mods() | get_oneshot_mods(); +#else + const uint8_t mods = get_mods(); +#endif // NO_ACTION_ONESHOT + + if (!is_caps_word_on()) { + // The following optionally turns on Caps Word by holding left and + // right shifts or by double tapping left shift. This way Caps Word + // may be used without needing a dedicated key and also without + // needing combos or tap dance. + +#ifdef BOTH_SHIFTS_TURNS_ON_CAPS_WORD + // Many keyboards enable the Command feature by default, which also + // uses left+right shift. It can be configured to use a different + // key combination by defining IS_COMMAND(). We make a non-fatal + // warning if Command is enabled but IS_COMMAND() is *not* defined. +# if defined(COMMAND_ENABLE) && !defined(IS_COMMAND) +# pragma message "BOTH_SHIFTS_TURNS_ON_CAPS_WORD and Command should not be enabled at the same time, since both use the Left Shift + Right Shift key combination. Please disable Command, or ensure that `IS_COMMAND` is not set to (get_mods() == MOD_MASK_SHIFT)." +# else + if (mods == MOD_MASK_SHIFT +# ifdef COMMAND_ENABLE + // Don't activate Caps Word at the same time as Command. + && !(IS_COMMAND()) +# endif // COMMAND_ENABLE + ) { + caps_word_on(); + } +# endif // defined(COMMAND_ENABLE) && !defined(IS_COMMAND) +#endif // BOTH_SHIFTS_TURNS_ON_CAPS_WORD + +#ifdef DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD + // Double tapping left shift turns on Caps Word. + // + // NOTE: This works with KC_LSFT and one-shot left shift. It + // wouldn't make sense with mod-tap or Space Cadet shift since + // double tapping would of course trigger the tapping action. + if (record->event.pressed) { + static bool tapped = false; + static uint16_t timer = 0; + if (keycode == KC_LSFT || keycode == OSM(MOD_LSFT)) { + if (tapped && !timer_expired(record->event.time, timer)) { + // Left shift was double tapped, activate Caps Word. + caps_word_on(); + } + tapped = true; + timer = record->event.time + GET_TAPPING_TERM(keycode, record); + } else { + tapped = false; // Reset when any other key is pressed. + } + } +#endif // DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD + + return true; + } + +#if CAPS_WORD_IDLE_TIMEOUT > 0 + caps_word_reset_idle_timer(); +#endif // CAPS_WORD_IDLE_TIMEOUT > 0 + + // From here on, we only take action on press events. + if (!record->event.pressed) { + return true; + } + + if (!(mods & ~MOD_MASK_SHIFT)) { + switch (keycode) { + // Ignore MO, TO, TG, TT, and OSL layer switch keys. + case QK_MOMENTARY ... QK_MOMENTARY_MAX: + case QK_TO ... QK_TO_MAX: + case QK_TOGGLE_LAYER ... QK_TOGGLE_LAYER_MAX: + case QK_LAYER_TAP_TOGGLE ... QK_LAYER_TAP_TOGGLE_MAX: + case QK_ONE_SHOT_LAYER ... QK_ONE_SHOT_LAYER_MAX: + return true; + +#ifndef NO_ACTION_TAPPING + case QK_MOD_TAP ... QK_MOD_TAP_MAX: + if (record->tap.count == 0) { + // Deactivate if a mod becomes active through holding + // a mod-tap key. + caps_word_off(); + return true; + } + keycode &= 0xff; + break; + +# ifndef NO_ACTION_LAYER + case QK_LAYER_TAP ... QK_LAYER_TAP_MAX: +# endif // NO_ACTION_LAYER + if (record->tap.count == 0) { + return true; + } + keycode &= 0xff; + break; +#endif // NO_ACTION_TAPPING + +#ifdef SWAP_HANDS_ENABLE + case QK_SWAP_HANDS ... QK_SWAP_HANDS_MAX: + if (keycode > 0x56F0 || record->tap.count == 0) { + return true; + } + keycode &= 0xff; + break; +#endif // SWAP_HANDS_ENABLE + } + + clear_weak_mods(); + if (caps_word_press_user(keycode)) { + send_keyboard_report(); + return true; + } + } + + caps_word_off(); + return true; +} + +__attribute__((weak)) bool caps_word_press_user(uint16_t keycode) { + switch (keycode) { + // Keycodes that continue Caps Word, with shift applied. + case KC_A ... KC_Z: + case KC_MINS: + add_weak_mods(MOD_BIT(KC_LSFT)); // Apply shift to next key. + return true; + + // Keycodes that continue Caps Word, without shifting. + case KC_1 ... KC_0: + case KC_BSPC: + case KC_DEL: + case KC_UNDS: + return true; + + default: + return false; // Deactivate Caps Word. + } +} diff --git a/quantum/process_keycode/process_caps_word.h b/quantum/process_keycode/process_caps_word.h new file mode 100644 index 0000000000..f215bbc3a3 --- /dev/null +++ b/quantum/process_keycode/process_caps_word.h @@ -0,0 +1,37 @@ +// Copyright 2021-2022 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// https://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +#pragma once + +#include "quantum.h" +#include "caps_word.h" + +/** + * @brief Process handler for Caps Word feature. + * + * @param keycode Keycode registered by matrix press, per keymap + * @param record keyrecord_t structure + * @return true Continue processing keycodes, and send to host + * @return false Stop processing keycodes, and don't send to host + */ +bool process_caps_word(uint16_t keycode, keyrecord_t* record); + +/** + * @brief Weak function for user-level Caps Word press modification. + * + * @param keycode Keycode registered by matrix press, per keymap + * @return true Continue Caps Word + * @return false Stop Caps Word + */ +bool caps_word_press_user(uint16_t keycode); diff --git a/quantum/quantum.c b/quantum/quantum.c index c0e801a4bb..b54b46760c 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -307,6 +307,9 @@ bool process_record_quantum(keyrecord_t *record) { #ifdef TERMINAL_ENABLE process_terminal(keycode, record) && #endif +#ifdef CAPS_WORD_ENABLE + process_caps_word(keycode, record) && +#endif #ifdef SPACE_CADET_ENABLE process_space_cadet(keycode, record) && #endif diff --git a/quantum/quantum.h b/quantum/quantum.h index 7829ec7e0c..92e1af1c40 100644 --- a/quantum/quantum.h +++ b/quantum/quantum.h @@ -233,6 +233,11 @@ extern layer_state_t layer_state; # include "pointing_device.h" #endif +#ifdef CAPS_WORD_ENABLE +# include "caps_word.h" +# include "process_caps_word.h" +#endif + // For tri-layer void update_tri_layer(uint8_t layer1, uint8_t layer2, uint8_t layer3); layer_state_t update_tri_layer_state(layer_state_t state, uint8_t layer1, uint8_t layer2, uint8_t layer3); diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 5d5c4ed8c4..2f8ee2322e 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -602,6 +602,8 @@ enum quantum_keycodes { SECURE_UNLOCK, SECURE_TOGGLE, + CAPS_WORD, + // Start of custom keycode range for keyboards and keymaps - always leave at the end SAFE_RANGE }; @@ -964,5 +966,6 @@ enum quantum_keycodes { #define PB_32 PROGRAMMABLE_BUTTON_32 #define PROGRAMMABLE_BUTTON_MIN PROGRAMMABLE_BUTTON_1 #define PROGRAMMABLE_BUTTON_MAX PROGRAMMABLE_BUTTON_32 +#define CAPSWRD CAPS_WORD #include "quantum_keycodes_legacy.h" diff --git a/tests/caps_word/config.h b/tests/caps_word/config.h new file mode 100644 index 0000000000..0d5cebd778 --- /dev/null +++ b/tests/caps_word/config.h @@ -0,0 +1,21 @@ +// Copyright 2022 Google LLC +// +// 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 . + +#pragma once + +#include "test_common.h" + +#define BOTH_SHIFTS_TURNS_ON_CAPS_WORD +#define DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD diff --git a/tests/caps_word/test.mk b/tests/caps_word/test.mk new file mode 100644 index 0000000000..2509b01858 --- /dev/null +++ b/tests/caps_word/test.mk @@ -0,0 +1,19 @@ +# Copyright 2022 Google LLC +# +# 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 . + +CAPS_WORD_ENABLE = yes +COMMAND_ENABLE = no +SPACE_CADET_ENABLE = yes + diff --git a/tests/caps_word/test_caps_word.cpp b/tests/caps_word/test_caps_word.cpp new file mode 100644 index 0000000000..bcc8c53326 --- /dev/null +++ b/tests/caps_word/test_caps_word.cpp @@ -0,0 +1,423 @@ +// Copyright 2022 Google LLC +// +// 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 . + +#include "keyboard_report_util.hpp" +#include "keycode.h" +#include "test_common.hpp" +#include "test_fixture.hpp" +#include "test_keymap_key.hpp" + +using ::testing::_; +using ::testing::AnyNumber; +using ::testing::AnyOf; +using ::testing::InSequence; +using ::testing::TestParamInfo; + +class CapsWord : public TestFixture { + public: + void SetUp() override { + caps_word_off(); + } + + // Convenience function to tap `key`. + void TapKey(KeymapKey key) { + key.press(); + run_one_scan_loop(); + key.release(); + run_one_scan_loop(); + } + + // Taps in order each key in `keys`. + template + void TapKeys(Ts... keys) { + for (KeymapKey key : {keys...}) { + TapKey(key); + } + } +}; + +// Tests caps_word_on(), _off(), and _toggle() functions. +TEST_F(CapsWord, OnOffToggleFuns) { + TestDriver driver; + + EXPECT_EQ(is_caps_word_on(), false); + + caps_word_on(); + EXPECT_EQ(is_caps_word_on(), true); + caps_word_on(); + EXPECT_EQ(is_caps_word_on(), true); + + caps_word_off(); + EXPECT_EQ(is_caps_word_on(), false); + caps_word_off(); + EXPECT_EQ(is_caps_word_on(), false); + + caps_word_toggle(); + EXPECT_EQ(is_caps_word_on(), true); + caps_word_toggle(); + EXPECT_EQ(is_caps_word_on(), false); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Tests the default `caps_word_press_user()` function. +TEST_F(CapsWord, DefaultCapsWordPressUserFun) { + // Spot check some keycodes that continue Caps Word, with shift applied. + for (uint16_t keycode : {KC_A, KC_B, KC_Z, KC_MINS}) { + SCOPED_TRACE("keycode: " + testing::PrintToString(keycode)); + clear_weak_mods(); + EXPECT_TRUE(caps_word_press_user(keycode)); + EXPECT_EQ(get_weak_mods(), MOD_BIT(KC_LSFT)); + } + + // Some keycodes that continue Caps Word, without shifting. + for (uint16_t keycode : {KC_1, KC_9, KC_0, KC_BSPC, KC_DEL}) { + SCOPED_TRACE("keycode: " + testing::PrintToString(keycode)); + clear_weak_mods(); + EXPECT_TRUE(caps_word_press_user(keycode)); + EXPECT_EQ(get_weak_mods(), 0); + } + + // Some keycodes that turn off Caps Word. + for (uint16_t keycode : {KC_SPC, KC_DOT, KC_COMM, KC_TAB, KC_ESC, KC_ENT}) { + SCOPED_TRACE("keycode: " + testing::PrintToString(keycode)); + EXPECT_FALSE(caps_word_press_user(keycode)); + } +} + +// Tests that `CAPSWRD` key toggles Caps Word. +TEST_F(CapsWord, CapswrdKey) { + TestDriver driver; + KeymapKey key_capswrd(0, 0, 0, CAPSWRD); + set_keymap({key_capswrd}); + + // No keyboard reports should be sent. + EXPECT_CALL(driver, send_keyboard_mock(_)).Times(0); + + TapKey(key_capswrd); // Tap the CAPSWRD key. + EXPECT_EQ(is_caps_word_on(), true); + + TapKey(key_capswrd); // Tap the CAPSWRD key again. + EXPECT_EQ(is_caps_word_on(), false); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Tests that being idle for CAPS_WORD_IDLE_TIMEOUT turns off Caps Word. +TEST_F(CapsWord, IdleTimeout) { + TestDriver driver; + KeymapKey key_a(0, 0, 0, KC_A); + set_keymap({key_a}); + + // Allow any number of reports with no keys or only KC_LSFT. + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + // Expect "Shift+A". + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A))); + + // Turn on Caps Word and tap "A". + caps_word_on(); + TapKey(key_a); + + testing::Mock::VerifyAndClearExpectations(&driver); + + idle_for(CAPS_WORD_IDLE_TIMEOUT); + run_one_scan_loop(); + + // Caps Word should be off and mods should be clear. + EXPECT_EQ(is_caps_word_on(), false); + EXPECT_EQ(get_mods() | get_weak_mods(), 0); + + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(AnyNumber()); + // Expect unshifted "A". + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A))); + TapKey(key_a); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Tests that typing "A, 4, A, 4" produces "Shift+A, 4, Shift+A, 4". +TEST_F(CapsWord, ShiftsLettersButNotDigits) { + TestDriver driver; + KeymapKey key_a(0, 0, 0, KC_A); + KeymapKey key_4(0, 1, 0, KC_4); + set_keymap({key_a, key_4}); + + // Allow any number of reports with no keys or only KC_LSFT. + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + { // Expect: "Shift+A, 4, Shift+A, 4". + InSequence s; + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_4))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_4))); + } + + // Turn on Caps Word and tap "A, 4, A, 4". + caps_word_on(); + TapKeys(key_a, key_4, key_a, key_4); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Tests that typing "A, Space, A" produces "Shift+A, Space, A". +TEST_F(CapsWord, SpaceTurnsOffCapsWord) { + TestDriver driver; + KeymapKey key_a(0, 0, 0, KC_A); + KeymapKey key_spc(0, 1, 0, KC_SPC); + set_keymap({key_a, key_spc}); + + // Allow any number of reports with no keys or only KC_LSFT. + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + { // Expect: "Shift+A, Space, A". + InSequence seq; + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_LSFT, KC_A))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_SPC))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A))); + } + + // Turn on Caps Word and tap "A, Space, A". + caps_word_on(); + TapKeys(key_a, key_spc, key_a); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +struct CapsWordBothShiftsParams { + std::string name; + uint16_t left_shift_keycode; + uint16_t right_shift_keycode; + + static const std::string& GetName(const TestParamInfo& info) { + return info.param.name; + } +}; + +// Tests the BOTH_SHIFTS_TURNS_ON_CAPS_WORD method to turn on Caps Word. +class CapsWordBothShifts : public ::testing::WithParamInterface, public CapsWord {}; + +// Pressing shifts as "Left down, Right down, Left up, Right up". +TEST_P(CapsWordBothShifts, PressLRLR) { + TestDriver driver; + KeymapKey left_shift(0, 0, 0, GetParam().left_shift_keycode); + KeymapKey right_shift(0, 1, 0, GetParam().right_shift_keycode); + set_keymap({left_shift, right_shift}); + + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT), + KeyboardReport(KC_RSFT), + KeyboardReport(KC_LSFT, KC_RSFT)))) + .Times(AnyNumber()); + // clang-format on + + EXPECT_EQ(is_caps_word_on(), false); + + left_shift.press(); // Press both shifts. + run_one_scan_loop(); + right_shift.press(); + + // For mod-tap and Space Cadet keys, wait for the tapping term. + if (left_shift.code == LSFT_T(KC_A) || left_shift.code == KC_LSPO) { + idle_for(TAPPING_TERM); + } + + run_one_scan_loop(); + left_shift.release(); // Release both. + run_one_scan_loop(); + right_shift.release(); + run_one_scan_loop(); + + EXPECT_EQ(is_caps_word_on(), true); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Pressing shifts as "Left down, Right down, Right up, Left up". +TEST_P(CapsWordBothShifts, PressLRRL) { + TestDriver driver; + KeymapKey left_shift(0, 0, 0, GetParam().left_shift_keycode); + KeymapKey right_shift(0, 1, 0, GetParam().right_shift_keycode); + set_keymap({left_shift, right_shift}); + + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT), + KeyboardReport(KC_RSFT), + KeyboardReport(KC_LSFT, KC_RSFT)))) + .Times(AnyNumber()); + // clang-format on + + EXPECT_EQ(is_caps_word_on(), false); + + left_shift.press(); // Press both shifts. + run_one_scan_loop(); + right_shift.press(); + + if (left_shift.code == LSFT_T(KC_A) || left_shift.code == KC_LSPO) { + idle_for(TAPPING_TERM); + } + run_one_scan_loop(); + + right_shift.release(); // Release both. + run_one_scan_loop(); + left_shift.release(); + run_one_scan_loop(); + + EXPECT_EQ(is_caps_word_on(), true); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// clang-format off +INSTANTIATE_TEST_CASE_P( + ShiftPairs, + CapsWordBothShifts, + ::testing::Values( + CapsWordBothShiftsParams{ + "PlainShifts", KC_LSFT, KC_RSFT}, + CapsWordBothShiftsParams{ + "OneshotShifts", OSM(MOD_LSFT), OSM(MOD_RSFT)}, + CapsWordBothShiftsParams{ + "SpaceCadetShifts", KC_LSPO, KC_RSPC}, + CapsWordBothShiftsParams{ + "ModTapShifts", LSFT_T(KC_A), RSFT_T(KC_B)} + ), + CapsWordBothShiftsParams::GetName + ); +// clang-format on + +struct CapsWordDoubleTapShiftParams { + std::string name; + uint16_t left_shift_keycode; + + static const std::string& GetName(const TestParamInfo& info) { + return info.param.name; + } +}; + +// Tests the DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD method to turn on Caps Word. +class CapsWordDoubleTapShift : public ::testing::WithParamInterface, public CapsWord {}; + +// Tests that double tapping activates Caps Word. +TEST_P(CapsWordDoubleTapShift, Activation) { + TestDriver driver; + KeymapKey left_shift(0, 0, 0, GetParam().left_shift_keycode); + set_keymap({left_shift}); + + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + EXPECT_EQ(is_caps_word_on(), false); + + // Tapping shift twice within the tapping term turns on Caps Word. + TapKey(left_shift); + idle_for(TAPPING_TERM - 10); + TapKey(left_shift); + + EXPECT_EQ(is_caps_word_on(), true); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Double tap doesn't count if another key is pressed between the taps. +TEST_P(CapsWordDoubleTapShift, Interrupted) { + TestDriver driver; + KeymapKey left_shift(0, 0, 0, GetParam().left_shift_keycode); + KeymapKey key_a(0, 1, 0, KC_A); + set_keymap({left_shift, key_a}); + + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT), + KeyboardReport(KC_LSFT, KC_A)))) + .Times(AnyNumber()); + // clang-format on + + left_shift.press(); + run_one_scan_loop(); + + TapKey(key_a); // 'A' key interrupts the double tap. + + left_shift.release(); + run_one_scan_loop(); + + idle_for(TAPPING_TERM - 10); + TapKey(left_shift); + + EXPECT_EQ(is_caps_word_on(), false); // Caps Word is still off. + clear_oneshot_mods(); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// Double tap doesn't count if taps are more than tapping term apart. +TEST_P(CapsWordDoubleTapShift, SlowTaps) { + TestDriver driver; + KeymapKey left_shift(0, 0, 0, GetParam().left_shift_keycode); + set_keymap({left_shift}); + + // clang-format off + EXPECT_CALL(driver, send_keyboard_mock(AnyOf( + KeyboardReport(), + KeyboardReport(KC_LSFT)))) + .Times(AnyNumber()); + // clang-format on + + TapKey(left_shift); + idle_for(TAPPING_TERM + 1); + TapKey(left_shift); + + EXPECT_EQ(is_caps_word_on(), false); // Caps Word is still off. + clear_oneshot_mods(); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +// clang-format off +INSTANTIATE_TEST_CASE_P( + Shifts, + CapsWordDoubleTapShift, + ::testing::Values( + CapsWordDoubleTapShiftParams{"PlainShift", KC_LSFT}, + CapsWordDoubleTapShiftParams{"OneshotShift", OSM(MOD_LSFT)} + ), + CapsWordDoubleTapShiftParams::GetName + ); +// clang-format on From 2f9197cfcdd11a661cdc1877a8dee9015c4f18de Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 14 May 2022 09:14:19 -0700 Subject: [PATCH 405/699] F13 TKL with Split Backspace and Split Right Shift Community Layouts (#17082) * add tkl_f13_ansi_split_bs_rshift Community Layout * add tkl_f13_ansi_tsangan_split_bs_rshift Community Layout * add tkl_f13_iso_split_bs_rshift Community Layout * add tkl_f13_iso_tsangan_split_bs_rshift Community Layout --- layouts/default/readme.md | 72 ++++++++++++ .../keymap.c | 32 ++++++ .../tkl_f13_ansi_split_bs_rshift/info.json | 106 +++++++++++++++++ .../tkl_f13_ansi_split_bs_rshift/layout.json | 6 + .../tkl_f13_ansi_split_bs_rshift/readme.md | 5 + .../keymap.c | 32 ++++++ .../info.json | 105 +++++++++++++++++ .../layout.json | 6 + .../readme.md | 5 + .../keymap.c | 32 ++++++ .../tkl_f13_iso_split_bs_rshift/info.json | 107 ++++++++++++++++++ .../tkl_f13_iso_split_bs_rshift/layout.json | 6 + .../tkl_f13_iso_split_bs_rshift/readme.md | 5 + .../keymap.c | 32 ++++++ .../info.json | 106 +++++++++++++++++ .../layout.json | 6 + .../readme.md | 5 + 17 files changed, 668 insertions(+) create mode 100644 layouts/default/tkl_f13_ansi_split_bs_rshift/default_tkl_f13_ansi_split_bs_rshift/keymap.c create mode 100644 layouts/default/tkl_f13_ansi_split_bs_rshift/info.json create mode 100644 layouts/default/tkl_f13_ansi_split_bs_rshift/layout.json create mode 100644 layouts/default/tkl_f13_ansi_split_bs_rshift/readme.md create mode 100644 layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/default_tkl_f13_ansi_tsangan_split_bs_rshift/keymap.c create mode 100644 layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/info.json create mode 100644 layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/layout.json create mode 100644 layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/readme.md create mode 100644 layouts/default/tkl_f13_iso_split_bs_rshift/default_tkl_f13_iso_split_bs_rshift/keymap.c create mode 100644 layouts/default/tkl_f13_iso_split_bs_rshift/info.json create mode 100644 layouts/default/tkl_f13_iso_split_bs_rshift/layout.json create mode 100644 layouts/default/tkl_f13_iso_split_bs_rshift/readme.md create mode 100644 layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/default_tkl_f13_iso_tsangan_split_bs_rshift/keymap.c create mode 100644 layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/info.json create mode 100644 layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/layout.json create mode 100644 layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/readme.md diff --git a/layouts/default/readme.md b/layouts/default/readme.md index 648afcd70b..f414282e80 100644 --- a/layouts/default/readme.md +++ b/layouts/default/readme.md @@ -488,6 +488,24 @@ LAYOUT_tkl_f13_ansi └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ ``` +``` +LAYOUT_tkl_f13_ansi_split_bs_rshift +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐ ┌───┬───┬───┐ +│ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ │ │ │ │ │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘ └───┴───┴───┘ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───┬───┬───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤ ├───┼───┼───┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤ └───┴───┴───┘ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ +├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤ ┌───┼───┼───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ +└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ +``` + ``` LAYOUT_tkl_f13_ansi_tsangan ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐ ┌───┬───┬───┐ @@ -506,6 +524,24 @@ LAYOUT_tkl_f13_ansi_tsangan └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───┴───┴───┘ ``` +``` +LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ +│ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││ │ │ │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ +├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤┌───┼───┼───┐ +│ │ │ │ │ │ │ ││ │ │ │ +└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘└───┴───┴───┘ +``` + ``` LAYOUT_tkl_f13_iso ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐ ┌───┬───┬───┐ @@ -524,6 +560,24 @@ LAYOUT_tkl_f13_iso └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ ``` +``` +LAYOUT_tkl_f13_iso_split_bs_rshift +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ +│ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││ │ │ │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │└───┴───┴───┘ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ ┌───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐ +│ │ │ │ │ │ │ │ ││ │ │ │ +└────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘ +``` + ``` LAYOUT_tkl_f13_iso_tsangan ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐ ┌───┬───┬───┐ @@ -542,6 +596,24 @@ LAYOUT_tkl_f13_iso_tsangan └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘ └───┴───┴───┘ ``` +``` +LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift +┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ +│ ││ │ │ │ ││ │ │ │ ││ │ │ │ ││ ││ │ │ │ +└───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ +┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ ││ │ │ │ +├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ │└───┴───┴───┘ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ ┌───┐ +│ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ │ +├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤┌───┼───┼───┐ +│ │ │ │ │ │ │ ││ │ │ │ +└─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘└───┴───┴───┘ +``` + ``` LAYOUT_tkl_nofrow_ansi ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┐ ┌───┬───┬───┐ diff --git a/layouts/default/tkl_f13_ansi_split_bs_rshift/default_tkl_f13_ansi_split_bs_rshift/keymap.c b/layouts/default/tkl_f13_ansi_split_bs_rshift/default_tkl_f13_ansi_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..3901e61823 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_split_bs_rshift/default_tkl_f13_ansi_split_bs_rshift/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2022 QMK / James Young (@noroadsleft) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ + * │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││F13││PSc│Scr│Pse│ + * └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│Bsp││Ins│Hom│PgU│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ ││Del│End│PgD│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ + * │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│ │ │ ↑ │ + * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐ + * │Ctrl│GUI │Alt │ │ Alt│ GUI│Menu│Ctrl││ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘ + */ + [0] = LAYOUT_tkl_f13_ansi_split_bs_rshift( + 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_F13, KC_PSCR, KC_SCRL, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, _______, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; diff --git a/layouts/default/tkl_f13_ansi_split_bs_rshift/info.json b/layouts/default/tkl_f13_ansi_split_bs_rshift/info.json new file mode 100644 index 0000000000..cce79a3de8 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_split_bs_rshift/info.json @@ -0,0 +1,106 @@ +{ + "keyboard_name": "Tenkeyless ANSI layout with F13 key, split Backspace, and split Right Shift", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT_tkl_f13_ansi_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":15.25, "y":1.25}, + {"x":16.25, "y":1.25}, + {"x":17.25, "y":1.25}, + + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":13.5, "y":2.25, "w":1.5}, + {"x":15.25, "y":2.25}, + {"x":16.25, "y":2.25}, + {"x":17.25, "y":2.25}, + + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25, "w":2.25}, + + {"x":0, "y":4.25, "w":2.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":1.75}, + {"x":14, "y":4.25}, + {"x":16.25, "y":4.25}, + + {"x":0, "y":5.25, "w":1.25}, + {"x":1.25, "y":5.25, "w":1.25}, + {"x":2.5, "y":5.25, "w":1.25}, + {"x":3.75, "y":5.25, "w":6.25}, + {"x":10, "y":5.25, "w":1.25}, + {"x":11.25, "y":5.25, "w":1.25}, + {"x":12.5, "y":5.25, "w":1.25}, + {"x":13.75, "y":5.25, "w":1.25}, + {"x":15.25, "y":5.25}, + {"x":16.25, "y":5.25}, + {"x":17.25, "y":5.25} + ] + } + } +} diff --git a/layouts/default/tkl_f13_ansi_split_bs_rshift/layout.json b/layouts/default/tkl_f13_ansi_split_bs_rshift/layout.json new file mode 100644 index 0000000000..c05ae7aa35 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_split_bs_rshift/layout.json @@ -0,0 +1,6 @@ +[{a:7},"",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"",{x:0.25},"","",""], +[{y:0.25},"","","","","","","","","","","","","","","",{x:0.25},"","",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",{x:0.25},"","",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",{x:1.25},""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{x:0.25},"","",""] diff --git a/layouts/default/tkl_f13_ansi_split_bs_rshift/readme.md b/layouts/default/tkl_f13_ansi_split_bs_rshift/readme.md new file mode 100644 index 0000000000..067c58ac0e --- /dev/null +++ b/layouts/default/tkl_f13_ansi_split_bs_rshift/readme.md @@ -0,0 +1,5 @@ +# tkl_f13_ansi_split_bs_rshift + + LAYOUT_tkl_f13_ansi_split_bs_rshift + +An ANSI TKL layout featuring an F13 key, split Backspace, and split Right Shift. diff --git a/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/default_tkl_f13_ansi_tsangan_split_bs_rshift/keymap.c b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/default_tkl_f13_ansi_tsangan_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..6df28141b3 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/default_tkl_f13_ansi_tsangan_split_bs_rshift/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2022 QMK / James Young (@noroadsleft) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ + * │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││F13││PSc│Scr│Pse│ + * └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│Bsp││Ins│Hom│PgU│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ \ ││Del│End│PgD│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤└───┴───┴───┘ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ Enter │ + * ├──────┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴────┬───┤ ┌───┐ + * │ Shift │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │Shift │ │ │ ↑ │ + * ├─────┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤┌───┼───┼───┐ + * │Ctrl │GUI│Alt │ │ Alt│App│ Ctrl││ ← │ ↓ │ → │ + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘└───┴───┴───┘ + */ + [0] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( + 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_F13, KC_PSCR, KC_SCRL, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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, KC_DEL, KC_END, KC_PGDN, + 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, _______, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; diff --git a/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/info.json b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/info.json new file mode 100644 index 0000000000..a6663f37a5 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/info.json @@ -0,0 +1,105 @@ +{ + "keyboard_name": "Tenkeyless ANSI layout with F13 key, split Backspace, split Right Shift, and Tsangan Bottom Row", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":15.25, "y":1.25}, + {"x":16.25, "y":1.25}, + {"x":17.25, "y":1.25}, + + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":13.5, "y":2.25, "w":1.5}, + {"x":15.25, "y":2.25}, + {"x":16.25, "y":2.25}, + {"x":17.25, "y":2.25}, + + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25, "w":2.25}, + + {"x":0, "y":4.25, "w":2.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":1.75}, + {"x":14, "y":4.25}, + {"x":16.25, "y":4.25}, + + {"x":0, "y":5.25, "w":1.5}, + {"x":1.5, "y":5.25}, + {"x":2.5, "y":5.25, "w":1.5}, + {"x":4, "y":5.25, "w":7}, + {"x":11, "y":5.25, "w":1.5}, + {"x":12.5, "y":5.25}, + {"x":13.5, "y":5.25, "w":1.5}, + {"x":15.25, "y":5.25}, + {"x":16.25, "y":5.25}, + {"x":17.25, "y":5.25} + ] + } + } +} diff --git a/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/layout.json b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/layout.json new file mode 100644 index 0000000000..d54d108843 --- /dev/null +++ b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/layout.json @@ -0,0 +1,6 @@ +[{a:7},"",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"",{x:0.25},"","",""], +[{y:0.25},"","","","","","","","","","","","","","","",{x:0.25},"","",""], +[{w:1.5},"","","","","","","","","","","","","",{w:1.5},"",{x:0.25},"","",""], +[{w:1.75},"","","","","","","","","","","","",{w:2.25},""], +[{w:2.25},"","","","","","","","","","","",{w:1.75},"","",{x:1.25},""], +[{w:1.5},"","",{w:1.5},"",{w:7},"",{w:1.5},"","",{w:1.5},"",{x:0.25},"","",""] diff --git a/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/readme.md b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/readme.md new file mode 100644 index 0000000000..9a5177dbbd --- /dev/null +++ b/layouts/default/tkl_f13_ansi_tsangan_split_bs_rshift/readme.md @@ -0,0 +1,5 @@ +# tkl_f13_ansi_tsangan_split_bs_rshift + + LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift + +An ANSI TKL layout featuring an F13 key, split Backspace, split Right Shift, and Tsangan bottom row. diff --git a/layouts/default/tkl_f13_iso_split_bs_rshift/default_tkl_f13_iso_split_bs_rshift/keymap.c b/layouts/default/tkl_f13_iso_split_bs_rshift/default_tkl_f13_iso_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..7520f16d01 --- /dev/null +++ b/layouts/default/tkl_f13_iso_split_bs_rshift/default_tkl_f13_iso_split_bs_rshift/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2022 QMK / James Young (@noroadsleft) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ + * │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││F13││PSc│Scr│Pse│ + * └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│Bsp││Ins│Hom│PgU│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ ││Del│End│PgD│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ Ent│└───┴───┴───┘ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ ┌───┐ + * │Shft│ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│ │ │ ↑ │ + * ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴───┼───┴┬────┬┴───┤┌───┼───┼───┐ + * │Ctrl│GUI │Alt │ │ Alt│ GUI│Menu│Ctrl││ ← │ ↓ │ → │ + * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘└───┴───┴───┘ + */ + [0] = LAYOUT_tkl_f13_iso_split_bs_rshift( + 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_F13, KC_PSCR, KC_SCRL, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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_DEL, KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, _______, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; diff --git a/layouts/default/tkl_f13_iso_split_bs_rshift/info.json b/layouts/default/tkl_f13_iso_split_bs_rshift/info.json new file mode 100644 index 0000000000..eb908e5420 --- /dev/null +++ b/layouts/default/tkl_f13_iso_split_bs_rshift/info.json @@ -0,0 +1,107 @@ +{ + "keyboard_name": "Tenkeyless ISO layout with F13 key, split Backspace, and split Right Shift", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT_tkl_f13_iso_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":15.25, "y":1.25}, + {"x":16.25, "y":1.25}, + {"x":17.25, "y":1.25}, + + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":15.25, "y":2.25}, + {"x":16.25, "y":2.25}, + {"x":17.25, "y":2.25}, + + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25}, + {"x":13.75, "y":2.25, "w":1.25, "h":2}, + + {"x":0, "y":4.25, "w":1.25}, + {"x":1.25, "y":4.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":1.75}, + {"x":14, "y":4.25}, + {"x":16.25, "y":4.25}, + + {"x":0, "y":5.25, "w":1.25}, + {"x":1.25, "y":5.25, "w":1.25}, + {"x":2.5, "y":5.25, "w":1.25}, + {"x":3.75, "y":5.25, "w":6.25}, + {"x":10, "y":5.25, "w":1.25}, + {"x":11.25, "y":5.25, "w":1.25}, + {"x":12.5, "y":5.25, "w":1.25}, + {"x":13.75, "y":5.25, "w":1.25}, + {"x":15.25, "y":5.25}, + {"x":16.25, "y":5.25}, + {"x":17.25, "y":5.25} + ] + } + } +} diff --git a/layouts/default/tkl_f13_iso_split_bs_rshift/layout.json b/layouts/default/tkl_f13_iso_split_bs_rshift/layout.json new file mode 100644 index 0000000000..e810a9ebbe --- /dev/null +++ b/layouts/default/tkl_f13_iso_split_bs_rshift/layout.json @@ -0,0 +1,6 @@ +[{a:7},"",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"",{x:0.25},"","",""], +[{y:0.25},"","","","","","","","","","","","","","","",{x:0.25},"","",""], +[{w:1.5},"","","","","","","","","","","","","",{x:0.25,w:1.25,h:2,w2:1.5,h2:1,x2:-0.25},"",{x:0.25},"","",""], +[{w:1.75},"","","","","","","","","","","","",""], +[{w:1.25},"","","","","","","","","","","","",{w:1.75},"","",{x:1.25},""], +[{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:6.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{w:1.25},"",{x:0.25},"","",""] diff --git a/layouts/default/tkl_f13_iso_split_bs_rshift/readme.md b/layouts/default/tkl_f13_iso_split_bs_rshift/readme.md new file mode 100644 index 0000000000..e983f60d1e --- /dev/null +++ b/layouts/default/tkl_f13_iso_split_bs_rshift/readme.md @@ -0,0 +1,5 @@ +# tkl_f13_iso_split_bs_rshift + + LAYOUT_tkl_f13_iso_split_bs_rshift + +An ISO TKL layout featuring an F13 key, split Backspace, and split Right Shift. diff --git a/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/default_tkl_f13_iso_tsangan_split_bs_rshift/keymap.c b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/default_tkl_f13_iso_tsangan_split_bs_rshift/keymap.c new file mode 100644 index 0000000000..691836cb2d --- /dev/null +++ b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/default_tkl_f13_iso_tsangan_split_bs_rshift/keymap.c @@ -0,0 +1,32 @@ +// Copyright 2022 QMK / James Young (@noroadsleft) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + /* + * ┌───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┬───┬───┬───┐┌───┐┌───┬───┬───┐ + * │Esc││F1 │F2 │F3 │F4 ││F5 │F6 │F7 │F8 ││F9 │F10│F11│F12││F13││PSc│Scr│Pse│ + * └───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┴───┴───┴───┘└───┘└───┴───┴───┘ + * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐┌───┬───┬───┐ + * │ ` │ 1 │ 2 │ 3 │ 4 │ 5 │ 6 │ 7 │ 8 │ 9 │ 0 │ - │ = │Bsp│Bsp││Ins│Hom│PgU│ + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤├───┼───┼───┤ + * │ Tab │ Q │ W │ E │ R │ T │ Y │ U │ I │ O │ P │ [ │ ] │ ││Del│End│PgD│ + * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ Ent│└───┴───┴───┘ + * │ Caps │ A │ S │ D │ F │ G │ H │ J │ K │ L │ ; │ ' │ # │ │ + * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┤ ┌───┐ + * │Shft│ \ │ Z │ X │ C │ V │ B │ N │ M │ , │ . │ / │ Shift│ │ │ ↑ │ + * ├────┴┬──┴┬──┴──┬┴───┴───┴───┴───┴───┴───┴──┬┴───┴┬───┬─┴───┤┌───┼───┼───┐ + * │Ctrl │GUI│Alt │ │ Alt│App│ Ctrl││ ← │ ↓ │ → │ + * └─────┴───┴─────┴───────────────────────────┴─────┴───┴─────┘└───┴───┴───┘ + */ + [0] = LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift( + 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_F13, KC_PSCR, KC_SCRL, KC_PAUS, + + KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, + 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_DEL, KC_END, KC_PGDN, + 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_NUHS, KC_ENT, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, _______, KC_UP, + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ) +}; diff --git a/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/info.json b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/info.json new file mode 100644 index 0000000000..b4fa2f8560 --- /dev/null +++ b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/info.json @@ -0,0 +1,106 @@ +{ + "keyboard_name": "Tenkeyless ISO layout with F13 key, split Backspace, split Right Shift, and Tsangan Bottom Row", + "url": "", + "maintainer": "qmk", + "layouts": { + "LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift": { + "layout": [ + {"x":0, "y":0}, + {"x":1.25, "y":0}, + {"x":2.25, "y":0}, + {"x":3.25, "y":0}, + {"x":4.25, "y":0}, + {"x":5.5, "y":0}, + {"x":6.5, "y":0}, + {"x":7.5, "y":0}, + {"x":8.5, "y":0}, + {"x":9.75, "y":0}, + {"x":10.75, "y":0}, + {"x":11.75, "y":0}, + {"x":12.75, "y":0}, + {"x":14, "y":0}, + {"x":15.25, "y":0}, + {"x":16.25, "y":0}, + {"x":17.25, "y":0}, + + {"x":0, "y":1.25}, + {"x":1, "y":1.25}, + {"x":2, "y":1.25}, + {"x":3, "y":1.25}, + {"x":4, "y":1.25}, + {"x":5, "y":1.25}, + {"x":6, "y":1.25}, + {"x":7, "y":1.25}, + {"x":8, "y":1.25}, + {"x":9, "y":1.25}, + {"x":10, "y":1.25}, + {"x":11, "y":1.25}, + {"x":12, "y":1.25}, + {"x":13, "y":1.25}, + {"x":14, "y":1.25}, + {"x":15.25, "y":1.25}, + {"x":16.25, "y":1.25}, + {"x":17.25, "y":1.25}, + + {"x":0, "y":2.25, "w":1.5}, + {"x":1.5, "y":2.25}, + {"x":2.5, "y":2.25}, + {"x":3.5, "y":2.25}, + {"x":4.5, "y":2.25}, + {"x":5.5, "y":2.25}, + {"x":6.5, "y":2.25}, + {"x":7.5, "y":2.25}, + {"x":8.5, "y":2.25}, + {"x":9.5, "y":2.25}, + {"x":10.5, "y":2.25}, + {"x":11.5, "y":2.25}, + {"x":12.5, "y":2.25}, + {"x":15.25, "y":2.25}, + {"x":16.25, "y":2.25}, + {"x":17.25, "y":2.25}, + + {"x":0, "y":3.25, "w":1.75}, + {"x":1.75, "y":3.25}, + {"x":2.75, "y":3.25}, + {"x":3.75, "y":3.25}, + {"x":4.75, "y":3.25}, + {"x":5.75, "y":3.25}, + {"x":6.75, "y":3.25}, + {"x":7.75, "y":3.25}, + {"x":8.75, "y":3.25}, + {"x":9.75, "y":3.25}, + {"x":10.75, "y":3.25}, + {"x":11.75, "y":3.25}, + {"x":12.75, "y":3.25}, + {"x":13.75, "y":2.25, "w":1.25, "h":2}, + + {"x":0, "y":4.25, "w":1.25}, + {"x":1.25, "y":4.25}, + {"x":2.25, "y":4.25}, + {"x":3.25, "y":4.25}, + {"x":4.25, "y":4.25}, + {"x":5.25, "y":4.25}, + {"x":6.25, "y":4.25}, + {"x":7.25, "y":4.25}, + {"x":8.25, "y":4.25}, + {"x":9.25, "y":4.25}, + {"x":10.25, "y":4.25}, + {"x":11.25, "y":4.25}, + {"x":12.25, "y":4.25, "w":1.75}, + {"x":14, "y":4.25}, + {"x":16.25, "y":4.25}, + + {"x":0, "y":5.25, "w":1.5}, + {"x":1.5, "y":5.25}, + {"x":2.5, "y":5.25, "w":1.5}, + {"x":4, "y":5.25, "w":7}, + {"x":11, "y":5.25, "w":1.5}, + {"x":12.5, "y":5.25}, + {"x":13.5, "y":5.25, "w":1.5}, + {"x":15.25, "y":5.25}, + {"x":16.25, "y":5.25}, + {"x":17.25, "y":5.25} + ] + } + } +} diff --git a/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/layout.json b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/layout.json new file mode 100644 index 0000000000..0cf5725303 --- /dev/null +++ b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/layout.json @@ -0,0 +1,6 @@ +[{a:7},"",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"","","","",{x:0.25},"",{x:0.25},"","",""], +[{y:0.25},"","","","","","","","","","","","","","","",{x:0.25},"","",""], +[{w:1.5},"","","","","","","","","","","","","",{x:0.25,w:1.25,h:2,w2:1.5,h2:1,x2:-0.25},"",{x:0.25},"","",""], +[{w:1.75},"","","","","","","","","","","","",""], +[{w:1.25},"","","","","","","","","","","","",{w:1.75},"","",{x:1.25},""], +[{w:1.5},"","",{w:1.5},"",{w:7},"",{w:1.5},"","",{w:1.5},"",{x:0.25},"","",""] diff --git a/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/readme.md b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/readme.md new file mode 100644 index 0000000000..6888ebbe53 --- /dev/null +++ b/layouts/default/tkl_f13_iso_tsangan_split_bs_rshift/readme.md @@ -0,0 +1,5 @@ +# tkl_f13_iso_tsangan_split_bs_rshift + + LAYOUT_tkl_f13_iso_tsangan_split_bs_rshift + +An ISO TKL layout featuring an F13 key, split Backspace, split Right Shift, and Tsangan bottom row. From cd8d2b7f7f0611f04b503479181fd7e9acbe8358 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sat, 14 May 2022 13:03:07 -0700 Subject: [PATCH 406/699] Revert "Fix kinetic mouse mode (#16951)" (#17095) --- quantum/mousekey.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/quantum/mousekey.c b/quantum/mousekey.c index a15bd8f13e..64d0e66682 100644 --- a/quantum/mousekey.c +++ b/quantum/mousekey.c @@ -66,16 +66,11 @@ uint8_t mk_time_to_max = MOUSEKEY_TIME_TO_MAX; /* milliseconds between the initial key press and first repeated motion event (0-2550) */ uint8_t mk_wheel_delay = MOUSEKEY_WHEEL_DELAY / 10; /* milliseconds between repeated motion events (0-255) */ -# ifndef MK_KINETIC_SPEED -uint8_t mk_wheel_interval = MOUSEKEY_WHEEL_INTERVAL; -# else /* #ifndef MK_KINETIC_SPEED */ -float mk_wheel_interval = 1000.0f / MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; -# endif /* #ifndef MK_KINETIC_SPEED */ +uint8_t mk_wheel_interval = MOUSEKEY_WHEEL_INTERVAL; uint8_t mk_wheel_max_speed = MOUSEKEY_WHEEL_MAX_SPEED; uint8_t mk_wheel_time_to_max = MOUSEKEY_WHEEL_TIME_TO_MAX; # ifndef MK_COMBINED -# ifndef MK_KINETIC_SPEED static uint8_t move_unit(void) { uint16_t unit; @@ -113,7 +108,8 @@ static uint8_t wheel_unit(void) { return (unit > MOUSEKEY_WHEEL_MAX ? MOUSEKEY_WHEEL_MAX : (unit == 0 ? 1 : unit)); } -# else /* #ifndef MK_KINETIC_SPEED */ +# else /* #ifndef MK_COMBINED */ +# ifdef MK_KINETIC_SPEED /* * Kinetic movement acceleration algorithm @@ -133,7 +129,7 @@ const uint16_t mk_decelerated_speed = MOUSEKEY_DECELERATED_SPEED; const uint16_t mk_initial_speed = MOUSEKEY_INITIAL_SPEED; static uint8_t move_unit(void) { - float speed = (float)mk_initial_speed; + float speed = mk_initial_speed; if (mousekey_accel & ((1 << 0) | (1 << 2))) { speed = mousekey_accel & (1 << 2) ? mk_accelerated_speed : mk_decelerated_speed; @@ -151,6 +147,8 @@ static uint8_t move_unit(void) { return speed > MOUSEKEY_MOVE_MAX ? MOUSEKEY_MOVE_MAX : speed; } +float mk_wheel_interval = 1000.0f / MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; + static uint8_t wheel_unit(void) { float speed = MOUSEKEY_WHEEL_INITIAL_MOVEMENTS; @@ -169,8 +167,7 @@ static uint8_t wheel_unit(void) { return 1; } -# endif /* #ifndef MK_KINETIC_SPEED */ -# else /* #ifndef MK_COMBINED */ +# else /* #ifndef MK_KINETIC_SPEED */ static uint8_t move_unit(void) { uint16_t unit; @@ -208,7 +205,8 @@ static uint8_t wheel_unit(void) { return (unit > MOUSEKEY_WHEEL_MAX ? MOUSEKEY_WHEEL_MAX : (unit == 0 ? 1 : unit)); } -# endif /* #ifndef MK_COMBINED */ +# endif /* #ifndef MK_KINETIC_SPEED */ +# endif /* #ifndef MK_COMBINED */ void mousekey_task(void) { // report cursor and scroll movement independently From 24f378e6c3d35f7001f81b7d8c217ef034f5fe30 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 14 May 2022 14:21:31 -0700 Subject: [PATCH 407/699] Clickety Split Leeloo: QMK Configurator Fixes (#17093) * info.json: fix key sequence error * info.json: fix visual rendering Clarify the physical locations of the keys. * info.json: update maintainer field This field is meant to reference the maintainer's GitHub username. --- keyboards/clickety_split/leeloo/info.json | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/keyboards/clickety_split/leeloo/info.json b/keyboards/clickety_split/leeloo/info.json index 40447d3f93..5473292d14 100644 --- a/keyboards/clickety_split/leeloo/info.json +++ b/keyboards/clickety_split/leeloo/info.json @@ -1,7 +1,7 @@ { "keyboard_name": "Leeloo", "url": "https://clicketysplit.ca/pages/leeloo", - "maintainer": "Clickety Split Ltd", + "maintainer": "ClicketySplit", "layouts": { "LAYOUT": { "layout": [ @@ -53,7 +53,9 @@ {"label":"C", "x":3, "y":3.0}, {"label":"V", "x":4, "y":3.2}, {"label":"B", "x":5, "y":3.4}, + {"label":"GUI", "x":6.25, "y":3.4}, + {"label":"GUI", "x":7.75, "y":3.4}, {"label":"N", "x":9, "y":3.4}, {"label":"M", "x":10, "y":3.2}, {"label":",", "x":11, "y":3.0}, @@ -63,13 +65,11 @@ {"label":"Alt", "x":2.7, "y":4.6}, {"label":"Ctrl", "x":3.8, "y":4.5}, - {"label":"Enter", "x":5.7, "y":3.57}, - {"label":"MINS", "x":7.12, "y":2.96}, - {"label":"GUI", "x":6.25, "y":3.4}, + {"label":"Enter", "x":4.9, "y":4.55}, + {"label":"MINS", "x":6.1, "y":4.65}, - {"label":"GUI", "x":7.75, "y":3.4}, - {"label":"EQL", "x":6.39, "y":6.86}, - {"label":"Space", "x":8.08, "y":6.18}, + {"label":"EQL", "x":7.9, "y":4.65}, + {"label":"Space", "x":9.1, "y":4.55}, {"label":"Back Space", "x":10.2, "y":4.5}, {"label":"Delete", "x":11.3, "y":4.6} ] From 8c58af39af2374a5ec8d41ef07ada4e717ae5ff2 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 14 May 2022 14:22:39 -0700 Subject: [PATCH 408/699] Avalanche: add QMK Configurator data (#17092) * avalanche/v1: add info.json * avalanche/v2: add info.json * avalanche/v3: add info.json --- keyboards/avalanche/v1/info.json | 77 +++++++++++++++++++++++++++++++ keyboards/avalanche/v2/info.json | 79 ++++++++++++++++++++++++++++++++ keyboards/avalanche/v3/info.json | 79 ++++++++++++++++++++++++++++++++ 3 files changed, 235 insertions(+) create mode 100644 keyboards/avalanche/v1/info.json create mode 100644 keyboards/avalanche/v2/info.json create mode 100644 keyboards/avalanche/v3/info.json diff --git a/keyboards/avalanche/v1/info.json b/keyboards/avalanche/v1/info.json new file mode 100644 index 0000000000..907face922 --- /dev/null +++ b/keyboards/avalanche/v1/info.json @@ -0,0 +1,77 @@ +{ + "keyboard_name": "Avalanche v1", + "url": "https://github.com/vlkv/avalanche", + "maintainer": "vlkv", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"L01", "x":1, "y":0.75}, + {"label":"L02", "x":2, "y":0.75}, + {"label":"L03", "x":3, "y":0.25}, + {"label":"L04", "x":4, "y":0}, + {"label":"L05", "x":5, "y":0.25}, + {"label":"L06", "x":6, "y":0.35}, + {"label":"R06", "x":10, "y":0.35}, + {"label":"R05", "x":11, "y":0.25}, + {"label":"R04", "x":12, "y":0}, + {"label":"R03", "x":13, "y":0.25}, + {"label":"R02", "x":14, "y":0.75}, + {"label":"R01", "x":15, "y":0.75}, + + {"label":"L11", "x":1, "y":1.75}, + {"label":"L12", "x":2, "y":1.75}, + {"label":"L13", "x":3, "y":1.25}, + {"label":"L14", "x":4, "y":1}, + {"label":"L15", "x":5, "y":1.25}, + {"label":"L16", "x":6, "y":1.35}, + {"label":"R16", "x":10, "y":1.35}, + {"label":"R15", "x":11, "y":1.25}, + {"label":"R14", "x":12, "y":1}, + {"label":"R13", "x":13, "y":1.25}, + {"label":"R12", "x":14, "y":1.75}, + {"label":"R11", "x":15, "y":1.75}, + + {"label":"L20", "x":0, "y":2.85}, + {"label":"L21", "x":1, "y":2.75}, + {"label":"L22", "x":2, "y":2.75}, + {"label":"L23", "x":3, "y":2.25}, + {"label":"L24", "x":4, "y":2}, + {"label":"L25", "x":5, "y":2.25}, + {"label":"L26", "x":6, "y":2.35}, + {"label":"L27", "x":7, "y":2.6}, + {"label":"R27", "x":9, "y":2.6}, + {"label":"R26", "x":10, "y":2.35}, + {"label":"R25", "x":11, "y":2.25}, + {"label":"R24", "x":12, "y":2}, + {"label":"R23", "x":13, "y":2.25}, + {"label":"R22", "x":14, "y":2.75}, + {"label":"R21", "x":15, "y":2.75}, + {"label":"R20", "x":16, "y":2.85}, + + {"label":"L31", "x":1, "y":3.75}, + {"label":"L32", "x":2, "y":3.75}, + {"label":"L33", "x":3, "y":3.25}, + {"label":"L34", "x":4, "y":3}, + {"label":"L35", "x":5, "y":3.25}, + {"label":"L36", "x":6, "y":3.35}, + {"label":"L37", "x":7, "y":3.7}, + {"label":"R37", "x":9, "y":3.7}, + {"label":"R36", "x":10, "y":3.35}, + {"label":"R35", "x":11, "y":3.25}, + {"label":"R34", "x":12, "y":3}, + {"label":"R33", "x":13, "y":3.25}, + {"label":"R32", "x":14, "y":3.75}, + {"label":"R31", "x":15, "y":3.75}, + + {"label":"L44", "x":3.5, "y":4.45, "w":1.25}, + {"label":"L45", "x":4.75, "y":4.4, "w":1.25}, + {"label":"L46", "x":6, "y":4.45}, + {"label":"L47", "x":7, "y":4.8}, + {"label":"R47", "x":9, "y":4.8}, + {"label":"R46", "x":10, "y":4.45}, + {"label":"R45", "x":11, "y":4.4, "w":1.25}, + {"label":"R44", "x":12.25, "y":4.45, "w":1.25} + ] + } + } +} diff --git a/keyboards/avalanche/v2/info.json b/keyboards/avalanche/v2/info.json new file mode 100644 index 0000000000..6809c99b4e --- /dev/null +++ b/keyboards/avalanche/v2/info.json @@ -0,0 +1,79 @@ +{ + "keyboard_name": "Avalanche v2", + "url": "https://github.com/vlkv/avalanche", + "maintainer": "vlkv", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"L00", "x":1, "y":0.75}, + {"label":"L01", "x":2, "y":0.75}, + {"label":"L02", "x":3, "y":0.25}, + {"label":"L03", "x":4, "y":0}, + {"label":"L04", "x":5, "y":0.25}, + {"label":"L05", "x":6, "y":0.35}, + {"label":"R05", "x":10, "y":0.35}, + {"label":"R04", "x":11, "y":0.25}, + {"label":"R03", "x":12, "y":0}, + {"label":"R02", "x":13, "y":0.25}, + {"label":"R01", "x":14, "y":0.75}, + {"label":"R00", "x":15, "y":0.75}, + + {"label":"L10", "x":1, "y":1.75}, + {"label":"L11", "x":2, "y":1.75}, + {"label":"L12", "x":3, "y":1.25}, + {"label":"L13", "x":4, "y":1}, + {"label":"L14", "x":5, "y":1.25}, + {"label":"L15", "x":6, "y":1.35}, + {"label":"R15", "x":10, "y":1.35}, + {"label":"R14", "x":11, "y":1.25}, + {"label":"R13", "x":12, "y":1}, + {"label":"R12", "x":13, "y":1.25}, + {"label":"R11", "x":14, "y":1.75}, + {"label":"R10", "x":15, "y":1.75}, + + {"label":"L40", "x":0, "y":2.85}, + {"label":"L20", "x":1, "y":2.75}, + {"label":"L21", "x":2, "y":2.75}, + {"label":"L22", "x":3, "y":2.25}, + {"label":"L23", "x":4, "y":2}, + {"label":"L24", "x":5, "y":2.25}, + {"label":"L25", "x":6, "y":2.35}, + {"label":"L26", "x":7, "y":2.6}, + {"label":"R26", "x":9, "y":2.6}, + {"label":"R25", "x":10, "y":2.35}, + {"label":"R24", "x":11, "y":2.25}, + {"label":"R23", "x":12, "y":2}, + {"label":"R22", "x":13, "y":2.25}, + {"label":"R21", "x":14, "y":2.75}, + {"label":"R20", "x":15, "y":2.75}, + {"label":"R40", "x":16, "y":2.85}, + + {"label":"L30", "x":1, "y":3.75}, + {"label":"L31", "x":2, "y":3.75}, + {"label":"L32", "x":3, "y":3.25}, + {"label":"L33", "x":4, "y":3}, + {"label":"L34", "x":5, "y":3.25}, + {"label":"L35", "x":6, "y":3.35}, + {"label":"L36", "x":7, "y":3.7}, + {"label":"R36", "x":9, "y":3.7}, + {"label":"R35", "x":10, "y":3.35}, + {"label":"R34", "x":11, "y":3.25}, + {"label":"R33", "x":12, "y":3}, + {"label":"R32", "x":13, "y":3.25}, + {"label":"R31", "x":14, "y":3.75}, + {"label":"R30", "x":15, "y":3.75}, + + {"label":"L42", "x":3, "y":4.55}, + {"label":"L43", "x":4, "y":4.45}, + {"label":"L44", "x":5, "y":4.4}, + {"label":"L45", "x":6, "y":4.45}, + {"label":"L46", "x":7, "y":4.8}, + {"label":"R46", "x":9, "y":4.8}, + {"label":"R45", "x":10, "y":4.45}, + {"label":"R44", "x":11, "y":4.4}, + {"label":"R43", "x":12, "y":4.45}, + {"label":"R42", "x":13, "y":4.55} + ] + } + } +} diff --git a/keyboards/avalanche/v3/info.json b/keyboards/avalanche/v3/info.json new file mode 100644 index 0000000000..39b8b51b38 --- /dev/null +++ b/keyboards/avalanche/v3/info.json @@ -0,0 +1,79 @@ +{ + "keyboard_name": "Avalanche v3", + "url": "https://github.com/vlkv/avalanche", + "maintainer": "vlkv", + "layouts": { + "LAYOUT": { + "layout": [ + {"label":"L00", "x":1, "y":0.75}, + {"label":"L01", "x":2, "y":0.75}, + {"label":"L02", "x":3, "y":0.25}, + {"label":"L03", "x":4, "y":0}, + {"label":"L04", "x":5, "y":0.25}, + {"label":"L05", "x":6, "y":0.35}, + {"label":"R05", "x":12, "y":0.35}, + {"label":"R04", "x":13, "y":0.25}, + {"label":"R03", "x":14, "y":0}, + {"label":"R02", "x":15, "y":0.25}, + {"label":"R01", "x":16, "y":0.75}, + {"label":"R00", "x":17, "y":0.75}, + + {"label":"L10", "x":1, "y":1.75}, + {"label":"L11", "x":2, "y":1.75}, + {"label":"L12", "x":3, "y":1.25}, + {"label":"L13", "x":4, "y":1}, + {"label":"L14", "x":5, "y":1.25}, + {"label":"L15", "x":6, "y":1.35}, + {"label":"R15", "x":12, "y":1.35}, + {"label":"R14", "x":13, "y":1.25}, + {"label":"R13", "x":14, "y":1}, + {"label":"R12", "x":15, "y":1.25}, + {"label":"R11", "x":16, "y":1.75}, + {"label":"R10", "x":17, "y":1.75}, + + {"label":"L40", "x":0, "y":2.85}, + {"label":"L20", "x":1, "y":2.75}, + {"label":"L21", "x":2, "y":2.75}, + {"label":"L22", "x":3, "y":2.25}, + {"label":"L23", "x":4, "y":2}, + {"label":"L24", "x":5, "y":2.25}, + {"label":"L25", "x":6, "y":2.35}, + {"label":"R25", "x":12, "y":2.35}, + {"label":"R24", "x":13, "y":2.25}, + {"label":"R23", "x":14, "y":2}, + {"label":"R22", "x":15, "y":2.25}, + {"label":"R21", "x":16, "y":2.75}, + {"label":"R20", "x":17, "y":2.75}, + {"label":"R40", "x":18, "y":2.85}, + + {"label":"L30", "x":1, "y":3.75}, + {"label":"L31", "x":2, "y":3.75}, + {"label":"L32", "x":3, "y":3.25}, + {"label":"L33", "x":4, "y":3}, + {"label":"L34", "x":5, "y":3.25}, + {"label":"L35", "x":6, "y":3.35}, + {"label":"L36", "x":7, "y":3.7}, + {"label":"L26", "x":8, "y":4.05}, + {"label":"R26", "x":10, "y":4.05}, + {"label":"R36", "x":11, "y":3.7}, + {"label":"R35", "x":12, "y":3.35}, + {"label":"R34", "x":13, "y":3.25}, + {"label":"R33", "x":14, "y":3}, + {"label":"R32", "x":15, "y":3.25}, + {"label":"R31", "x":16, "y":3.75}, + {"label":"R30", "x":17, "y":3.75}, + + {"label":"L42", "x":3.4, "y":4.55}, + {"label":"L43", "x":4.6, "y":4.45}, + {"label":"L44", "x":5.8, "y":4.4}, + {"label":"L45", "x":7, "y":4.7}, + {"label":"L46", "x":8, "y":5.05}, + {"label":"R46", "x":10, "y":5.05}, + {"label":"R45", "x":11, "y":4.7}, + {"label":"R44", "x":12.2, "y":4.4}, + {"label":"R43", "x":13.4, "y":4.45}, + {"label":"R42", "x":14.6, "y":4.55} + ] + } + } +} From 90a43f98840db96ac41670748326c5067799e95d Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 14 May 2022 14:23:58 -0700 Subject: [PATCH 409/699] Axolstudio Foundation Gamma: Community Layout Support (#17080) * LAYOUT_tkl_f13_ansi_tsangan support Renames `LAYOUT_ansi_tsangan` to `LAYOUT_tkl_f13_ansi_tsangan`. Also enables Community Layout support. * LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift support --- .../axolstudio/foundation_gamma/foundation_gamma.h | 4 ++-- keyboards/axolstudio/foundation_gamma/info.json | 10 +++++++--- .../foundation_gamma/keymaps/default/keymap.c | 4 ++-- .../axolstudio/foundation_gamma/keymaps/via/keymap.c | 8 ++++---- keyboards/axolstudio/foundation_gamma/rules.mk | 2 ++ 5 files changed, 17 insertions(+), 11 deletions(-) diff --git a/keyboards/axolstudio/foundation_gamma/foundation_gamma.h b/keyboards/axolstudio/foundation_gamma/foundation_gamma.h index 1a96a6d813..bf3a45dfb6 100644 --- a/keyboards/axolstudio/foundation_gamma/foundation_gamma.h +++ b/keyboards/axolstudio/foundation_gamma/foundation_gamma.h @@ -20,7 +20,7 @@ #define ____ KC_NO -#define LAYOUT_all( \ +#define LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( \ k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016, \ k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k213, k114, k115, k116, \ k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k313, k214, k215, k216, \ @@ -36,7 +36,7 @@ { k500, k501, k502, ____, ____, ____, k506, ____, ____, ____, k510, k511, k512, ____, k514, k515, k516 } \ } -#define LAYOUT_ansi_tsangan( \ +#define LAYOUT_tkl_f13_ansi_tsangan( \ k000, k001, k002, k003, k004, k005, k006, k007, k008, k009, k010, k011, k012, k013, k014, k015, k016, \ k100, k101, k102, k103, k104, k105, k106, k107, k108, k109, k110, k111, k112, k113, k114, k115, k116, \ k200, k201, k202, k203, k204, k205, k206, k207, k208, k209, k210, k211, k212, k313, k214, k215, k216, \ diff --git a/keyboards/axolstudio/foundation_gamma/info.json b/keyboards/axolstudio/foundation_gamma/info.json index 62214ce80c..8845e6ce77 100644 --- a/keyboards/axolstudio/foundation_gamma/info.json +++ b/keyboards/axolstudio/foundation_gamma/info.json @@ -2,8 +2,12 @@ "keyboard_name": "Foundation Gamma", "url": "https://axolstudio.ca/foundation-gamma", "maintainer": "kb-elmo", + "layout_aliases": { + "LAYOUT_ansi_tsangan": "LAYOUT_tkl_f13_ansi_tsangan", + "LAYOUT_all": "LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift" + }, "layouts": { - "LAYOUT_ansi_tsangan": { + "LAYOUT_tkl_f13_ansi_tsangan": { "layout": [ {"x":0, "y":0}, {"x":1.25, "y":0}, @@ -94,7 +98,7 @@ {"x":17.25, "y":5.5} ] }, - "LAYOUT_all": { + "LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift": { "layout": [ {"x":0, "y":0}, {"x":1.25, "y":0}, @@ -188,4 +192,4 @@ ] } } -} \ No newline at end of file +} diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c index 9d354bd1e1..819d362ebc 100644 --- a/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c +++ b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_ansi_tsangan( + [0] = LAYOUT_tkl_f13_ansi_tsangan( 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_INS, KC_HOME, KC_PGUP, 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, KC_DEL, KC_END, KC_PGDN, @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_ansi_tsangan( + [1] = LAYOUT_tkl_f13_ansi_tsangan( 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, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c index e6cad9a87a..2b3f8ef373 100644 --- a/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c +++ b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_all( + [0] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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_MUTE, KC_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, 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, KC_DEL, KC_END, KC_PGDN, @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT_all( + [1] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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 ), - [2] = LAYOUT_all( + [2] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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 ), - [3] = LAYOUT_all( + [3] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/axolstudio/foundation_gamma/rules.mk b/keyboards/axolstudio/foundation_gamma/rules.mk index a95ad7bcc0..ef301d8581 100644 --- a/keyboards/axolstudio/foundation_gamma/rules.mk +++ b/keyboards/axolstudio/foundation_gamma/rules.mk @@ -16,3 +16,5 @@ NKRO_ENABLE = no # Enable N-key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = tkl_f13_ansi_tsangan tkl_f13_ansi_tsangan_split_bs_rshift From 3a543d899088268127ed17a6b978fd7cc84b566a Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 14 May 2022 14:28:29 -0700 Subject: [PATCH 410/699] Eason Capsule65 Community Layout Support (#17090) * capsule65.h: modify matrix diagram Taken from the VIA layout data. * rename LAYOUT to LAYOUT_all * add LAYOUT_65_ansi macro * add LAYOUT_65_ansi_blocker macro * add LAYOUT_65_ansi_blocker_tsangan macro * add LAYOUT_65_ansi_split_bs macro * add LAYOUT_65_ansi_blocker_split_bs macro * add LAYOUT_65_ansi_blocker_tsangan_split_bs macro * add LAYOUT_65_iso macro * add LAYOUT_65_iso_split_bs macro * add LAYOUT_65_iso_blocker macro * add LAYOUT_65_iso_blocker_split_bs macro * add LAYOUT_65_iso_blocker_tsangan macro * add LAYOUT_65_iso_blocker_tsangan_split_bs macro * enable Community Layout support * info.json: update maintainer value This field is meant to reference the maintainer's GitHub username. --- keyboards/eason/capsule65/capsule65.h | 198 +++- keyboards/eason/capsule65/info.json | 919 +++++++++++++++++- .../eason/capsule65/keymaps/default/keymap.c | 4 +- .../eason/capsule65/keymaps/via/keymap.c | 8 +- keyboards/eason/capsule65/rules.mk | 2 + 5 files changed, 1111 insertions(+), 20 deletions(-) diff --git a/keyboards/eason/capsule65/capsule65.h b/keyboards/eason/capsule65/capsule65.h index c7923f1226..69b9662b81 100644 --- a/keyboards/eason/capsule65/capsule65.h +++ b/keyboards/eason/capsule65/capsule65.h @@ -20,20 +20,26 @@ #define XXX KC_NO -/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ - * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ - * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┤───┤ - * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ - * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┤───┤ - * │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2F │ - * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴┬───────┬───┤───┤ - * │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B│3C │3D │3F │ - * ├────┬───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┼───┬───┼───┤───┤ - * │40 │41 │42 │45 │49 │4A │4B │4C │4D │4F │ - * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┘───┘ +/* ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┐ ┌───────┐ + * │00 │01 │02 │03 │04 │05 │06 │07 │08 │09 │0A │0B │0C │0D │0E │0F │ │0D │ 2u Backspace + * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┼───┤ └─┬─────┤ + * │10 │11 │12 │13 │14 │15 │16 │17 │18 │19 │1A │1B │1C │1D │1F │ │ │ + * 2.25u ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴─────┼───┤ ┌──┴┐1D │ ISO Enter + * LShift │20 │21 │22 │23 │24 │25 │26 │27 │28 │29 │2A │2B │2C │2F │ │2C │ │ + * ┌────────┐ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴┬──┴────┬───┼───┤ └───┴────┘ + * │30 │ │30 │31 │32 │33 │34 │35 │36 │37 │38 │39 │3A │3B│3C │3D │3F │ + * └────────┘ ├────┼───┴┬──┴─┬─┴───┴───┴───┴───┴───┴──┬┴──┬┴──┼───┬───┼───┼───┤ + * │40 │41 │42 │45 │49 │4A │4B │4C │4D │4F │ + * └────┴────┴────┴────────────────────────┴───┴───┴───┴───┴───┴───┘ + * ┌────┬────┬────┬────────────────────────┬────┬────┐ + * │40 │41 │42 │45 │49 │4A │ Blocker + * └────┴────┴────┴────────────────────────┴────┴────┘ + * ┌─────┬───┬─────┬───────────────────────────┬─────┐ + * │40 │41 │42 │45 │4A │ Tsangan + * └─────┴───┴─────┴───────────────────────────┴─────┘ */ -#define LAYOUT( \ +#define LAYOUT_all( \ K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ @@ -46,3 +52,171 @@ { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ } + +#define LAYOUT_65_ansi( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_ansi_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_ansi_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_ansi_blocker_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_ansi_blocker_tsangan( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, XXX, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_ansi_blocker_tsangan_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2F, \ + K30, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, XXX, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, XXX, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4B, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, K4B, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso_blocker( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso_blocker_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K49, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, K49, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso_blocker_tsangan( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, XXX, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, XXX, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} + +#define LAYOUT_65_iso_blocker_tsangan_split_bs( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1F, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K1D, K2F, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3F, \ + K40, K41, K42, K45, K4A, K4C, K4D, K4F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, XXX, K1F }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, XXX, XXX, K2F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, XXX, K3F }, \ + { K40, K41, K42, XXX, XXX, K45, XXX, XXX, XXX, XXX, K4A, XXX, K4C, K4D, XXX, K4F }, \ +} diff --git a/keyboards/eason/capsule65/info.json b/keyboards/eason/capsule65/info.json index 1783d4f2ae..cd091b550f 100644 --- a/keyboards/eason/capsule65/info.json +++ b/keyboards/eason/capsule65/info.json @@ -1,9 +1,12 @@ { "keyboard_name": "CAPSULE65", "url": "", - "maintainer": "eason", + "maintainer": "EasonQian1", + "layout_aliases": { + "LAYOUT": "LAYOUT_all" + }, "layouts": { - "LAYOUT": { + "LAYOUT_all": { "layout": [ { "label": "K00 (F4,D5)", "x": 0, "y": 0 }, { "label": "K01 (F4,D2)", "x": 1, "y": 0 }, @@ -76,6 +79,918 @@ { "label": "K4D (F5,B1)", "x": 14, "y": 4 }, { "label": "K4F (F5,B2)", "x": 15, "y": 4 } ] + }, + "LAYOUT_65_ansi": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4}, + {"label":"Ctrl", "x":11, "y":4}, + {"label":"RGB Toggle", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4}, + {"label":"Ctrl", "x":11, "y":4}, + {"label":"RGB Toggle", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"GUI", "x":1.5, "y":4}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Ctrl", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_ansi_blocker_tsangan_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2@", "x":2, "y":0}, + {"label":"3#", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"PgUp", "x":15, "y":2}, + + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"GUI", "x":1.5, "y":4}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Ctrl", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4}, + {"label":"Ctrl", "x":11, "y":4}, + {"label":"RGB Toggle", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4}, + {"label":"Ctrl", "x":11, "y":4}, + {"label":"RGB Toggle", "x":12, "y":4}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.25}, + {"label":"GUI", "x":1.25, "y":4, "w":1.25}, + {"label":"Alt", "x":2.5, "y":4, "w":1.25}, + {"label":"Space", "x":3.75, "y":4, "w":6.25}, + {"label":"Fn", "x":10, "y":4, "w":1.25}, + {"label":"Ctrl", "x":11.25, "y":4, "w":1.25}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0, "w":2}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"GUI", "x":1.5, "y":4}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Ctrl", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] + }, + "LAYOUT_65_iso_blocker_tsangan_split_bs": { + "layout": [ + {"label":"Esc", "x":0, "y":0}, + {"label":"1!", "x":1, "y":0}, + {"label":"2\"", "x":2, "y":0}, + {"label":"3\u00a3", "x":3, "y":0}, + {"label":"4$", "x":4, "y":0}, + {"label":"5%", "x":5, "y":0}, + {"label":"6^", "x":6, "y":0}, + {"label":"7&", "x":7, "y":0}, + {"label":"8*", "x":8, "y":0}, + {"label":"9(", "x":9, "y":0}, + {"label":"0)", "x":10, "y":0}, + {"label":"-_", "x":11, "y":0}, + {"label":"=+", "x":12, "y":0}, + {"label":"Backspace", "x":13, "y":0}, + {"label":"Backspace", "x":14, "y":0}, + {"label":"Delete", "x":15, "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":"End", "x":15, "y":1}, + + {"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":"#~", "x":12.75, "y":2}, + {"label":"Enter", "x":13.75, "y":1, "w":1.25, "h":2}, + {"label":"PgUp", "x":15, "y":2}, + + {"label":"Shift", "x":0, "y":3, "w":1.25}, + {"label":"\\|", "x":1.25, "y":3}, + {"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}, + {"label":"\u2191", "x":14, "y":3}, + {"label":"PgDn", "x":15, "y":3}, + + {"label":"Ctrl", "x":0, "y":4, "w":1.5}, + {"label":"GUI", "x":1.5, "y":4}, + {"label":"Alt", "x":2.5, "y":4, "w":1.5}, + {"label":"Space", "x":4, "y":4, "w":7}, + {"label":"Ctrl", "x":11, "y":4, "w":1.5}, + {"label":"\u2190", "x":13, "y":4}, + {"label":"\u2193", "x":14, "y":4}, + {"label":"\u2192", "x":15, "y":4} + ] } } } diff --git a/keyboards/eason/capsule65/keymaps/default/keymap.c b/keyboards/eason/capsule65/keymaps/default/keymap.c index 5825f3a8ac..3f3baafe72 100644 --- a/keyboards/eason/capsule65/keymaps/default/keymap.c +++ b/keyboards/eason/capsule65/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( + [0] = LAYOUT_all( 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_BSPC, KC_HOME, 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_BSLS, KC_END, @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, RGB_TOG, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT( + [1] = LAYOUT_all( RESET, 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, RGB_MOD, diff --git a/keyboards/eason/capsule65/keymaps/via/keymap.c b/keyboards/eason/capsule65/keymaps/via/keymap.c index 7df223dcf5..551ccd3e0f 100644 --- a/keyboards/eason/capsule65/keymaps/via/keymap.c +++ b/keyboards/eason/capsule65/keymaps/via/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT( + [0] = LAYOUT_all( 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_BSPC, KC_HOME, 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_BSLS, KC_END, @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, RGB_TOG, KC_LEFT, KC_DOWN, KC_RGHT ), - [1] = LAYOUT( + [1] = LAYOUT_all( RESET, 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, RGB_MOD, @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, RGB_VAD, RGB_HUD ), - [2] = LAYOUT( + [2] = LAYOUT_all( RESET, 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, @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), - [3] = LAYOUT( + [3] = LAYOUT_all( RESET, 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, diff --git a/keyboards/eason/capsule65/rules.mk b/keyboards/eason/capsule65/rules.mk index 744a272535..36ea16195b 100644 --- a/keyboards/eason/capsule65/rules.mk +++ b/keyboards/eason/capsule65/rules.mk @@ -16,3 +16,5 @@ NKRO_ENABLE = no # Enable N-Key Rollover BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output + +LAYOUTS = 65_ansi 65_ansi_blocker 65_ansi_blocker_split_bs 65_ansi_blocker_tsangan 65_ansi_split_bs 65_iso 65_iso_blocker 65_iso_blocker_split_bs 65_iso_split_bs From db887e63d708925ad759e3504a6bc9ceef4aeb8f Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sat, 14 May 2022 15:07:08 -0700 Subject: [PATCH 411/699] Enhancement and fixes of "Secure" feature (#16958) --- quantum/process_keycode/process_secure.c | 10 +- quantum/quantum.c | 13 ++ quantum/quantum_keycodes.h | 1 + quantum/secure.c | 15 ++ quantum/secure.h | 12 + tests/secure/config.h | 32 +++ tests/secure/test.mk | 20 ++ tests/secure/test_secure.cpp | 278 +++++++++++++++++++++++ 8 files changed, 379 insertions(+), 2 deletions(-) create mode 100644 tests/secure/config.h create mode 100644 tests/secure/test.mk create mode 100644 tests/secure/test_secure.cpp diff --git a/quantum/process_keycode/process_secure.c b/quantum/process_keycode/process_secure.c index 827ace597a..3224104c99 100644 --- a/quantum/process_keycode/process_secure.c +++ b/quantum/process_keycode/process_secure.c @@ -7,7 +7,9 @@ bool preprocess_secure(uint16_t keycode, keyrecord_t *record) { if (secure_is_unlocking()) { - if (!record->event.pressed) { + // !pressed will trigger on any already held keys (such as layer keys), + // and cause the request secure check to prematurely fail. + if (record->event.pressed) { secure_keypress_event(record->event.key.row, record->event.key.col); } @@ -33,7 +35,11 @@ bool process_secure(uint16_t keycode, keyrecord_t *record) { secure_is_locked() ? secure_unlock() : secure_lock(); return false; } + if (keycode == SECURE_REQUEST) { + secure_request_unlock(); + return false; + } } #endif return true; -} \ No newline at end of file +} diff --git a/quantum/quantum.c b/quantum/quantum.c index b54b46760c..ac3e2d90b4 100644 --- a/quantum/quantum.c +++ b/quantum/quantum.c @@ -571,3 +571,16 @@ const char *get_u16_str(uint16_t curr_num, char curr_pad) { last_pad = curr_pad; return get_numeric_str(buf, sizeof(buf), curr_num, curr_pad); } + +#if defined(SECURE_ENABLE) +void secure_hook_quantum(secure_status_t secure_status) { + // If keys are being held when this is triggered, they may not be released properly + // this can result in stuck keys, mods and layers. To prevent that, manually + // clear these, when it is triggered. + + if (secure_status == SECURE_PENDING) { + clear_keyboard(); + layer_clear(); + } +} +#endif diff --git a/quantum/quantum_keycodes.h b/quantum/quantum_keycodes.h index 2f8ee2322e..40355d799a 100644 --- a/quantum/quantum_keycodes.h +++ b/quantum/quantum_keycodes.h @@ -601,6 +601,7 @@ enum quantum_keycodes { SECURE_LOCK, SECURE_UNLOCK, SECURE_TOGGLE, + SECURE_REQUEST, CAPS_WORD, diff --git a/quantum/secure.c b/quantum/secure.c index 00048bd6dd..f07f6af2cb 100644 --- a/quantum/secure.c +++ b/quantum/secure.c @@ -23,17 +23,24 @@ static secure_status_t secure_status = SECURE_LOCKED; static uint32_t unlock_time = 0; static uint32_t idle_time = 0; +static void secure_hook(secure_status_t secure_status) { + secure_hook_quantum(secure_status); + secure_hook_kb(secure_status); +} + secure_status_t secure_get_status(void) { return secure_status; } void secure_lock(void) { secure_status = SECURE_LOCKED; + secure_hook(secure_status); } void secure_unlock(void) { secure_status = SECURE_UNLOCKED; idle_time = timer_read32(); + secure_hook(secure_status); } void secure_request_unlock(void) { @@ -41,6 +48,7 @@ void secure_request_unlock(void) { secure_status = SECURE_PENDING; unlock_time = timer_read32(); } + secure_hook(secure_status); } void secure_activity_event(void) { @@ -85,3 +93,10 @@ void secure_task(void) { } #endif } + +__attribute__((weak)) bool secure_hook_user(secure_status_t secure_status) { + return true; +} +__attribute__((weak)) bool secure_hook_kb(secure_status_t secure_status) { + return secure_hook_user(secure_status); +} diff --git a/quantum/secure.h b/quantum/secure.h index 04507fd5b1..bb2ba50f31 100644 --- a/quantum/secure.h +++ b/quantum/secure.h @@ -65,3 +65,15 @@ void secure_keypress_event(uint8_t row, uint8_t col); /** \brief Handle various secure subsystem background tasks */ void secure_task(void); + +/** \brief quantum hook called when changing secure status device + */ +void secure_hook_quantum(secure_status_t secure_status); + +/** \brief user hook called when changing secure status device + */ +bool secure_hook_user(secure_status_t secure_status); + +/** \brief keyboard hook called when changing secure status device + */ +bool secure_hook_kb(secure_status_t secure_status); diff --git a/tests/secure/config.h b/tests/secure/config.h new file mode 100644 index 0000000000..3cfbc6cb14 --- /dev/null +++ b/tests/secure/config.h @@ -0,0 +1,32 @@ +/* Copyright 2021 Stefan Kerkmann + * + * 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 . + */ + +#pragma once + +#include "test_common.h" + +// clang-format off +#define SECURE_UNLOCK_SEQUENCE \ + { \ + {0, 1}, \ + {0, 2}, \ + {0, 3}, \ + {0, 4} \ + } +// clang-format on + +#define SECURE_UNLOCK_TIMEOUT 20 +#define SECURE_IDLE_TIMEOUT 50 diff --git a/tests/secure/test.mk b/tests/secure/test.mk new file mode 100644 index 0000000000..ea406493be --- /dev/null +++ b/tests/secure/test.mk @@ -0,0 +1,20 @@ +# Copyright 2021 Stefan Kerkmann +# +# 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 . + +# -------------------------------------------------------------------------------- +# Keep this file, even if it is empty, as a marker that this folder contains tests +# -------------------------------------------------------------------------------- + +SECURE_ENABLE = yes diff --git a/tests/secure/test_secure.cpp b/tests/secure/test_secure.cpp new file mode 100644 index 0000000000..87055ebb7f --- /dev/null +++ b/tests/secure/test_secure.cpp @@ -0,0 +1,278 @@ +/* Copyright 2021 Stefan Kerkmann + * + * 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 . + */ + +#include "gtest/gtest.h" +#include "keyboard_report_util.hpp" +#include "test_common.hpp" + +using testing::_; +using testing::AnyNumber; +using testing::InSequence; + +class Secure : public TestFixture { + public: + void SetUp() override { + secure_lock(); + } + // Convenience function to tap `key`. + void TapKey(KeymapKey key) { + key.press(); + run_one_scan_loop(); + key.release(); + run_one_scan_loop(); + } + + // Taps in order each key in `keys`. + template + void TapKeys(Ts... keys) { + for (KeymapKey key : {keys...}) { + TapKey(key); + } + } +}; + +TEST_F(Secure, test_lock) { + TestDriver driver; + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(0); + + EXPECT_FALSE(secure_is_unlocked()); + secure_unlock(); + EXPECT_TRUE(secure_is_unlocked()); + run_one_scan_loop(); + EXPECT_TRUE(secure_is_unlocked()); + secure_lock(); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_timeout) { + TestDriver driver; + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(0); + + EXPECT_FALSE(secure_is_unlocked()); + secure_unlock(); + EXPECT_TRUE(secure_is_unlocked()); + idle_for(SECURE_IDLE_TIMEOUT+1); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request) { + TestDriver driver; + auto key_mo = KeymapKey(0, 0, 0, MO(1)); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_mo, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(0); + + EXPECT_TRUE(secure_is_locked()); + secure_request_unlock(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_b, key_c, key_d); + EXPECT_TRUE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_fail) { + TestDriver driver; + auto key_e = KeymapKey(0, 0, 0, KC_E); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_e, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(AnyNumber()); + { // Expect the following reports in this order. + InSequence s; + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_A))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_C))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_D))); + } + EXPECT_TRUE(secure_is_locked()); + secure_request_unlock(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_e, key_a, key_b, key_c, key_d); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_timeout) { + TestDriver driver; + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(0); + + EXPECT_FALSE(secure_is_unlocked()); + secure_request_unlock(); + EXPECT_TRUE(secure_is_unlocking()); + idle_for(SECURE_UNLOCK_TIMEOUT+1); + EXPECT_FALSE(secure_is_unlocking()); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + + +TEST_F(Secure, test_unlock_request_fail_mid) { + TestDriver driver; + auto key_e = KeymapKey(0, 0, 0, KC_E); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_e, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(AnyNumber()); + { // Expect the following reports in this order. + InSequence s; + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_C))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_D))); + } + EXPECT_FALSE(secure_is_unlocked()); + secure_request_unlock(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_b, key_e, key_c, key_d); + EXPECT_FALSE(secure_is_unlocking()); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_fail_out_of_order) { + TestDriver driver; + auto key_e = KeymapKey(0, 0, 0, KC_E); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_e, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(AnyNumber()); + { // Expect the following reports in this order. + InSequence s; + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_B))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_C))); + } + EXPECT_FALSE(secure_is_unlocked()); + secure_request_unlock(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_d, key_b, key_c); + EXPECT_TRUE(secure_is_locked()); + EXPECT_FALSE(secure_is_unlocking()); + EXPECT_FALSE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_on_layer) { + TestDriver driver; + auto key_mo = KeymapKey(0, 0, 0, MO(1)); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_mo, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())).Times(0); + + EXPECT_TRUE(secure_is_locked()); + key_mo.press(); + run_one_scan_loop(); + secure_request_unlock(); + key_mo.release(); + run_one_scan_loop(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_b, key_c, key_d); + EXPECT_TRUE(secure_is_unlocked()); + EXPECT_FALSE(layer_state_is(1)); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_mid_stroke) { + TestDriver driver; + auto key_e = KeymapKey(0, 0, 0, KC_E); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_e, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(KC_E))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())); + EXPECT_TRUE(secure_is_locked()); + key_e.press(); + run_one_scan_loop(); + secure_request_unlock(); + key_e.release(); + run_one_scan_loop(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_b, key_c, key_d); + EXPECT_TRUE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} + +TEST_F(Secure, test_unlock_request_mods) { + TestDriver driver; + auto key_lsft = KeymapKey(0, 0, 0, KC_LSFT); + auto key_a = KeymapKey(0, 1, 0, KC_A); + auto key_b = KeymapKey(0, 2, 0, KC_B); + auto key_c = KeymapKey(0, 3, 0, KC_C); + auto key_d = KeymapKey(0, 4, 0, KC_D); + + set_keymap({key_lsft, key_a, key_b, key_c, key_d}); + + // Allow any number of empty reports. + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport(key_lsft.report_code))); + EXPECT_CALL(driver, send_keyboard_mock(KeyboardReport())); + EXPECT_TRUE(secure_is_locked()); + key_lsft.press(); + run_one_scan_loop(); + secure_request_unlock(); + key_lsft.release(); + run_one_scan_loop(); + EXPECT_TRUE(secure_is_unlocking()); + TapKeys(key_a, key_b, key_c, key_d); + EXPECT_TRUE(secure_is_unlocked()); + + testing::Mock::VerifyAndClearExpectations(&driver); +} From 94755308e0db92bf98d2a32c0717e4a76be7ef6a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mateusz=20=C5=BB?= Date: Sun, 15 May 2022 00:08:32 +0200 Subject: [PATCH 412/699] Fix anchors with in table of content (#15169) --- docs/index.html | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/docs/index.html b/docs/index.html index e24b25e73a..4827024bdc 100644 --- a/docs/index.html +++ b/docs/index.html @@ -15,7 +15,7 @@ - + @@ -130,7 +130,7 @@ - + From da632895051558740ca1ca8ecb607a846e2384d7 Mon Sep 17 00:00:00 2001 From: QMK Bot Date: Sat, 14 May 2022 15:14:49 -0700 Subject: [PATCH 413/699] Format code according to conventions (#17096) --- tests/secure/test_secure.cpp | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/tests/secure/test_secure.cpp b/tests/secure/test_secure.cpp index 87055ebb7f..b7c51b0bd2 100644 --- a/tests/secure/test_secure.cpp +++ b/tests/secure/test_secure.cpp @@ -70,7 +70,7 @@ TEST_F(Secure, test_unlock_timeout) { EXPECT_FALSE(secure_is_unlocked()); secure_unlock(); EXPECT_TRUE(secure_is_unlocked()); - idle_for(SECURE_IDLE_TIMEOUT+1); + idle_for(SECURE_IDLE_TIMEOUT + 1); EXPECT_FALSE(secure_is_unlocked()); testing::Mock::VerifyAndClearExpectations(&driver); @@ -135,14 +135,13 @@ TEST_F(Secure, test_unlock_request_timeout) { EXPECT_FALSE(secure_is_unlocked()); secure_request_unlock(); EXPECT_TRUE(secure_is_unlocking()); - idle_for(SECURE_UNLOCK_TIMEOUT+1); + idle_for(SECURE_UNLOCK_TIMEOUT + 1); EXPECT_FALSE(secure_is_unlocking()); EXPECT_FALSE(secure_is_unlocked()); testing::Mock::VerifyAndClearExpectations(&driver); } - TEST_F(Secure, test_unlock_request_fail_mid) { TestDriver driver; auto key_e = KeymapKey(0, 0, 0, KC_E); From 4d107feca9621ee3f342507136b04f176e8f2320 Mon Sep 17 00:00:00 2001 From: Stefan Kerkmann Date: Sun, 15 May 2022 00:17:14 +0200 Subject: [PATCH 414/699] Check for ongoing transfers on the OUT endpoint (#16974) ...when attempting to start a receiving USB transfer. Previously, we would check on the IN endpoint which is the transmitting part of the USB endpoint. This is wrong and lead to two USB transfers being started immediately after each other in case of e.g. RAW HID endpoints: 1. When finishing an OUT transfer the low level USB driver calls the out_cb callback, which in turn initiates another OUT transfer by calling qmkusbDataReceived. 2. When the raw hid receive channel runs empty inside the raw_hid task, another OUT transfer is started to potentially fill the channel again. This happens by calling ibnotify. Both events occur directly after each other, thus triggering the bug. --- tmk_core/protocol/chibios/usb_driver.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tmk_core/protocol/chibios/usb_driver.c b/tmk_core/protocol/chibios/usb_driver.c index 4de060f306..ad45f9b1da 100644 --- a/tmk_core/protocol/chibios/usb_driver.c +++ b/tmk_core/protocol/chibios/usb_driver.c @@ -60,7 +60,7 @@ static bool qmkusb_start_receive(QMKUSBDriver *qmkusbp) { } /* Checking if there is already a transaction ongoing on the endpoint.*/ - if (usbGetReceiveStatusI(qmkusbp->config->usbp, qmkusbp->config->bulk_in)) { + if (usbGetReceiveStatusI(qmkusbp->config->usbp, qmkusbp->config->bulk_out)) { return true; } From f090881aebbd7af74294b53fabdf55a35004f190 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Sun, 15 May 2022 04:24:35 -0700 Subject: [PATCH 415/699] [Feature] Add support for multiple switchs/solenoids to Haptic Feedback engine (#15657) --- docs/feature_haptic_feedback.md | 30 ++-- drivers/haptic/solenoid.c | 159 +++++++++++++----- drivers/haptic/solenoid.h | 26 ++- .../handwired/onekey/blackpill_f411/config.h | 4 + .../handwired/onekey/keymaps/haptic/keymap.c | 11 ++ .../handwired/onekey/keymaps/haptic/rules.mk | 2 + quantum/haptic.c | 2 +- 7 files changed, 164 insertions(+), 70 deletions(-) create mode 100644 keyboards/handwired/onekey/keymaps/haptic/keymap.c create mode 100644 keyboards/handwired/onekey/keymaps/haptic/rules.mk diff --git a/docs/feature_haptic_feedback.md b/docs/feature_haptic_feedback.md index 63ac4305ff..f4546b6914 100644 --- a/docs/feature_haptic_feedback.md +++ b/docs/feature_haptic_feedback.md @@ -50,22 +50,28 @@ Not all keycodes below will work depending on which haptic mechanism you have ch ### Solenoids -First you will need a build a circuit to drive the solenoid through a mosfet as most MCU will not be able to provide the current needed to drive the coil in the solenoid. +The solenoid code supports relay switches, and similar hardware, as well as solenoids. + +For a regular solenoid, you will need a build a circuit to drive the solenoid through a mosfet as most MCU will not be able to provide the current needed to drive the coil in the solenoid. [Wiring diagram provided by Adafruit](https://cdn-shop.adafruit.com/product-files/412/solenoid_driver.pdf) +For relay switches, the hardware may already contain all of that ciruitry, and just require VCC, GND and a data pin. -| Settings | Default | Description | -|----------------------------|----------------------|-------------------------------------------------------| -|`SOLENOID_PIN` | *Not defined* |Configures the pin that the Solenoid is connected to. | -|`SOLENOID_PIN_ACTIVE_LOW` | *Not defined* |If defined then the solenoid trigger pin is active low.| -|`SOLENOID_DEFAULT_DWELL` | `12` ms |Configures the default dwell time for the solenoid. | -|`SOLENOID_MIN_DWELL` | `4` ms |Sets the lower limit for the dwell. | -|`SOLENOID_MAX_DWELL` | `100` ms |Sets the upper limit for the dwell. | -|`SOLENOID_DWELL_STEP_SIZE` | `1` ms |The step size to use when `HPT_DWL*` keycodes are sent | -|`SOLENOID_DEFAULT_BUZZ` | `0` (disabled) |On HPT_RST buzz is set "on" if this is "1" | -|`SOLENOID_BUZZ_ACTUATED` | `SOLENOID_MIN_DWELL` |Actuated-time when the solenoid is in buzz mode | -|`SOLENOID_BUZZ_NONACTUATED` | `SOLENOID_MIN_DWELL` |Non-Actuated-time when the solenoid is in buzz mode | +| Settings | Default | Description | +|----------------------------|----------------------|--------------------------------------------------------------| +|`SOLENOID_PIN` | *Not defined* |Configures the pin that the switch is connected to. | +|`SOLENOID_PIN_ACTIVE_LOW` | *Not defined* |If defined then the switch trigger pin is active low. | +|`SOLENOID_PINS` | *Not defined* |Configures an array of pins to be used for switch activation. | +|`SOLENOID_PINS_ACTIVE_LOW` | *Not defined* |Allows you to specify how each pin is pulled for activation. | +|`SOLENOID_RANDOM_FIRE` | *Not defined* |When there are multiple solenoids, will select a random one to fire.| +|`SOLENOID_DEFAULT_DWELL` | `12` ms |Configures the default dwell time for the switch. | +|`SOLENOID_MIN_DWELL` | `4` ms |Sets the lower limit for the dwell. | +|`SOLENOID_MAX_DWELL` | `100` ms |Sets the upper limit for the dwell. | +|`SOLENOID_DWELL_STEP_SIZE` | `1` ms |The step size to use when `HPT_DWL*` keycodes are sent. | +|`SOLENOID_DEFAULT_BUZZ` | `0` (disabled) |On HPT_RST buzz is set "on" if this is "1" | +|`SOLENOID_BUZZ_ACTUATED` | `SOLENOID_MIN_DWELL` |Actuated-time when the switch is in buzz mode. | +|`SOLENOID_BUZZ_NONACTUATED` | `SOLENOID_MIN_DWELL` |Non-Actuated-time when the switch is in buzz mode. | * If solenoid buzz is off, then dwell time is how long the "plunger" stays activated. The dwell time changes how the solenoid sounds. * If solenoid buzz is on, then dwell time sets the length of the buzz, while `SOLENOID_BUZZ_ACTUATED` and `SOLENOID_BUZZ_NONACTUATED` set the (non-)actuation times withing the buzz period. diff --git a/drivers/haptic/solenoid.c b/drivers/haptic/solenoid.c index 14d868bffe..637a77da3d 100644 --- a/drivers/haptic/solenoid.c +++ b/drivers/haptic/solenoid.c @@ -20,11 +20,22 @@ #include "haptic.h" #include "gpio.h" #include "usb_device_state.h" +#include -bool solenoid_on = false; -bool solenoid_buzzing = false; -uint16_t solenoid_start = 0; -uint8_t solenoid_dwell = SOLENOID_DEFAULT_DWELL; +uint8_t solenoid_dwell = SOLENOID_DEFAULT_DWELL; +static pin_t solenoid_pads[] = SOLENOID_PINS; +#define NUMBER_OF_SOLENOIDS (sizeof(solenoid_pads) / sizeof(pin_t)) +bool solenoid_on[NUMBER_OF_SOLENOIDS] = {false}; +bool solenoid_buzzing[NUMBER_OF_SOLENOIDS] = {false}; +uint16_t solenoid_start[NUMBER_OF_SOLENOIDS] = {0}; +#ifdef SOLENOID_PIN_ACTIVE_LOW +# define low true +# define high false +#else +# define low false +# define high true +#endif +static bool solenoid_active_state[NUMBER_OF_SOLENOIDS]; extern haptic_config_t haptic_config; @@ -36,7 +47,7 @@ void solenoid_buzz_off(void) { haptic_set_buzz(0); } -void solenoid_set_buzz(int buzz) { +void solenoid_set_buzz(uint8_t buzz) { haptic_set_buzz(buzz); } @@ -44,59 +55,121 @@ void solenoid_set_dwell(uint8_t dwell) { solenoid_dwell = dwell; } -void solenoid_stop(void) { - SOLENOID_PIN_WRITE_INACTIVE(); - solenoid_on = false; - solenoid_buzzing = false; +/** + * @brief Stops a specific solenoid + * + * @param index select which solenoid to check/stop + */ +void solenoid_stop(uint8_t index) { + writePin(solenoid_pads[index], !solenoid_active_state[index]); + solenoid_on[index] = false; + solenoid_buzzing[index] = false; } -void solenoid_fire(void) { - if (!haptic_config.buzz && solenoid_on) return; - if (haptic_config.buzz && solenoid_buzzing) return; +/** + * @brief Fires off a specific solenoid + * + * @param index Selects which solenoid to fire + */ +void solenoid_fire(uint8_t index) { + if (!haptic_config.buzz && solenoid_on[index]) return; + if (haptic_config.buzz && solenoid_buzzing[index]) return; - solenoid_on = true; - solenoid_buzzing = true; - solenoid_start = timer_read(); - SOLENOID_PIN_WRITE_ACTIVE(); + solenoid_on[index] = true; + solenoid_buzzing[index] = true; + solenoid_start[index] = timer_read(); + writePin(solenoid_pads[index], solenoid_active_state[index]); } -void solenoid_check(void) { - uint16_t elapsed = 0; - - if (!solenoid_on) return; - - elapsed = timer_elapsed(solenoid_start); - - // Check if it's time to finish this solenoid click cycle - if (elapsed > solenoid_dwell) { - solenoid_stop(); - return; +/** + * @brief Handles selecting a non-active solenoid, and firing it. + * + */ +void solenoid_fire_handler(void) { +#ifndef SOLENOID_RANDOM_FIRE + if (NUMBER_OF_SOLENOIDS > 1) { + uint8_t i = rand() % NUMBER_OF_SOLENOIDS; + if (!solenoid_on[i]) { + solenoid_fire(i); + } + } else { + solenoid_fire(0); } +#else + for (uint8_t i = 0; i < NUMBER_OF_SOLENOIDS; i++) { + if (!solenoid_on[i]) { + solenoid_fire(i); + break; + } + } +#endif +} - // Check whether to buzz the solenoid on and off - if (haptic_config.buzz) { - if ((elapsed % (SOLENOID_BUZZ_ACTUATED + SOLENOID_BUZZ_NONACTUATED)) < SOLENOID_BUZZ_ACTUATED) { - if (!solenoid_buzzing) { - solenoid_buzzing = true; - SOLENOID_PIN_WRITE_ACTIVE(); - } - } else { - if (solenoid_buzzing) { - solenoid_buzzing = false; - SOLENOID_PIN_WRITE_INACTIVE(); +/** + * @brief Checks active solenoid to stop them, and to handle buzz mode + * + */ +void solenoid_check(void) { + uint16_t elapsed[NUMBER_OF_SOLENOIDS] = {0}; + + for (uint8_t i = 0; i < NUMBER_OF_SOLENOIDS; i++) { + if (!solenoid_on[i]) continue; + + elapsed[i] = timer_elapsed(solenoid_start[i]); + + // Check if it's time to finish this solenoid click cycle + if (elapsed[i] > solenoid_dwell) { + solenoid_stop(i); + continue; + } + + // Check whether to buzz the solenoid on and off + if (haptic_config.buzz) { + if ((elapsed[i] % (SOLENOID_BUZZ_ACTUATED + SOLENOID_BUZZ_NONACTUATED)) < SOLENOID_BUZZ_ACTUATED) { + if (!solenoid_buzzing[i]) { + solenoid_buzzing[i] = true; + writePin(solenoid_pads[i], solenoid_active_state[i]); + } + } else { + if (solenoid_buzzing[i]) { + solenoid_buzzing[i] = false; + writePin(solenoid_pads[i], !solenoid_active_state[i]); + } } } } } +/** + * @brief Initial configuration for solenoids + * + */ void solenoid_setup(void) { - SOLENOID_PIN_WRITE_INACTIVE(); - setPinOutput(SOLENOID_PIN); - if ((!HAPTIC_OFF_IN_LOW_POWER) || (usb_device_state == USB_DEVICE_STATE_CONFIGURED)) { - solenoid_fire(); +#ifdef SOLENOID_PINS_ACTIVE_STATE + bool state_temp[] = SOLENOID_PINS_ACTIVE_STATE; + uint8_t bound_check = (sizeof(state_temp) / sizeof(bool)); +#endif + + for (uint8_t i = 0; i < NUMBER_OF_SOLENOIDS; i++) { +#ifdef SOLENOID_PINS_ACTIVE_STATE + solenoid_active_state[i] = (bound_check - i) ? state_temp[i] : high; +#else + solenoid_active_state[i] = high; +#endif + writePin(solenoid_pads[i], !solenoid_active_state[i]); + setPinOutput(solenoid_pads[i]); + if ((!HAPTIC_OFF_IN_LOW_POWER) || (usb_device_state == USB_DEVICE_STATE_CONFIGURED)) { + solenoid_fire(i); + } } } +/** + * @brief stops solenoids prior to device reboot, to prevent them from being locked on + * + */ void solenoid_shutdown(void) { - SOLENOID_PIN_WRITE_INACTIVE(); + for (uint8_t i = 0; i < NUMBER_OF_SOLENOIDS; i++) { + writePin(solenoid_pads[i], !solenoid_active_state[i]); + } } diff --git a/drivers/haptic/solenoid.h b/drivers/haptic/solenoid.h index 653148154f..952f86e922 100644 --- a/drivers/haptic/solenoid.h +++ b/drivers/haptic/solenoid.h @@ -45,26 +45,24 @@ # define SOLENOID_BUZZ_NONACTUATED SOLENOID_MIN_DWELL #endif -#ifndef SOLENOID_PIN -# error SOLENOID_PIN not defined +#ifndef SOLENOID_PINS +# ifdef SOLENOID_PIN +# define SOLENOID_PINS \ + { SOLENOID_PIN } +# else +# error SOLENOID_PINS array not defined +# endif #endif -#ifdef SOLENOID_PIN_ACTIVE_LOW -# define SOLENOID_PIN_WRITE_ACTIVE() writePinLow(SOLENOID_PIN) -# define SOLENOID_PIN_WRITE_INACTIVE() writePinHigh(SOLENOID_PIN) -#else -# define SOLENOID_PIN_WRITE_ACTIVE() writePinHigh(SOLENOID_PIN) -# define SOLENOID_PIN_WRITE_INACTIVE() writePinLow(SOLENOID_PIN) -#endif - -void solenoid_buzz_on(void); +void solenoidbuzz_on(void); void solenoid_buzz_off(void); -void solenoid_set_buzz(int buzz); +void solenoid_set_buzz(uint8_t buzz); void solenoid_set_dwell(uint8_t dwell); -void solenoid_stop(void); -void solenoid_fire(void); +void solenoid_stop(uint8_t index); +void solenoid_fire(uint8_t index); +void solenoid_fire_handler(void); void solenoid_check(void); diff --git a/keyboards/handwired/onekey/blackpill_f411/config.h b/keyboards/handwired/onekey/blackpill_f411/config.h index 16e8f27924..3797217153 100644 --- a/keyboards/handwired/onekey/blackpill_f411/config.h +++ b/keyboards/handwired/onekey/blackpill_f411/config.h @@ -31,3 +31,7 @@ #define RGB_DI_PIN A1 #define ADC_PIN A0 + +#define SOLENOID_PIN B12 +#define SOLENOID_PINS { B12, B13, B14, B15 } +#define SOLENOID_PINS_ACTIVE_STATE { high, high, low } diff --git a/keyboards/handwired/onekey/keymaps/haptic/keymap.c b/keyboards/handwired/onekey/keymaps/haptic/keymap.c new file mode 100644 index 0000000000..e3b0093c18 --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/haptic/keymap.c @@ -0,0 +1,11 @@ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + LAYOUT_ortho_1x1(KC_A) +}; + +void haptic_enable(void); + +void keyboard_post_init_user(void) { + haptic_enable(); +} diff --git a/keyboards/handwired/onekey/keymaps/haptic/rules.mk b/keyboards/handwired/onekey/keymaps/haptic/rules.mk new file mode 100644 index 0000000000..802f7e5dde --- /dev/null +++ b/keyboards/handwired/onekey/keymaps/haptic/rules.mk @@ -0,0 +1,2 @@ +HAPTIC_ENABLE = yes +HAPTIC_DRIVER = SOLENOID diff --git a/quantum/haptic.c b/quantum/haptic.c index 31d1114806..ad64fe2cc7 100644 --- a/quantum/haptic.c +++ b/quantum/haptic.c @@ -321,7 +321,7 @@ void haptic_play(void) { DRV_pulse(play_eff); #endif #ifdef SOLENOID_ENABLE - solenoid_fire(); + solenoid_fire_handler(); #endif } From 4a8bd7b9a523601911ba467588b2a6a0aa693db6 Mon Sep 17 00:00:00 2001 From: Ryan Date: Sun, 15 May 2022 21:27:01 +1000 Subject: [PATCH 416/699] Rename keymap_extras headers for consistency (#16939) --- docs/reference_keymap_extras.md | 50 +++++++++---------- keyboards/ai03/jp60/keymaps/default/keymap.c | 2 +- keyboards/ai03/jp60/keymaps/via/keymap.c | 2 +- keyboards/aozora/keymaps/default_all/keymap.c | 2 +- keyboards/aozora/keymaps/via/keymap.c | 2 +- keyboards/barracuda/keymaps/default/keymap.c | 2 +- keyboards/barracuda/keymaps/via/keymap.c | 2 +- .../slice/rev1/keymaps/2moons/keymap.c | 2 +- .../basekeys/slice/rev1/keymaps/via/keymap.c | 2 +- .../rev1_rgb/keymaps/2moons_rgb/keymap.c | 2 +- .../ergo42/keymaps/biacco-winjp/keymap.c | 4 +- .../biacco42/ergo42/keymaps/hdbx/keymap.c | 4 +- .../biacco42/ergo42/keymaps/koba/keymap.c | 2 +- keyboards/buzzard/keymaps/crehmann/keymap.c | 2 +- keyboards/crkbd/keymaps/vayashiko/keymap.c | 2 +- keyboards/dz60/keymaps/default_abnt2/keymap.c | 2 +- .../keymaps/nathanvercaemert/keymap.c | 6 +-- .../gh60/revc/keymaps/default_abnt2/keymap.c | 2 +- .../gl516/a52gl/keymaps/salicylic/keymap.c | 2 +- .../gl516/j73gl/keymaps/default/keymap.c | 2 +- keyboards/gl516/j73gl/keymaps/via/keymap.c | 2 +- .../j73gl/keymaps/via_rgb_matrix/keymap.c | 2 +- .../gl516/n51gl/keymaps/salicylic/keymap.c | 2 +- keyboards/halfcliff/keymaps/default/keymap.c | 2 +- keyboards/halfcliff/keymaps/via/keymap.c | 2 +- .../baredev/rev1/keymaps/default/keymap.c | 2 +- .../baredev/rev1/keymaps/manoshu/keymap.c | 4 +- .../baredev/rev1/keymaps/via/keymap.c | 2 +- .../helix/rev2/keymaps/five_rows_jis/keymap.c | 2 +- .../helix/rev2/keymaps/froggy_106/keymap.c | 2 +- .../hhkb/ansi/keymaps/shela/keymap_jis2us.h | 2 +- keyboards/jones/v03/keymaps/default/keymap.c | 2 +- .../jones/v03/keymaps/default_jp/keymap.c | 2 +- .../jones/v03_1/keymaps/default_jp/keymap.c | 2 +- keyboards/jones/v1/keymaps/via/keymap.c | 2 +- .../kbdfans/kbd67/rev1/keymaps/koba/keymap.c | 2 +- .../kbdfans/kbd67/rev2/keymaps/koba/keymap.c | 2 +- .../bm40hsrgb/keymaps/wolff_abnt2/keymap.c | 2 +- keyboards/kudox/rev1/keymaps/jis/keymap.c | 2 +- keyboards/kudox/rev2/keymaps/jis/keymap.c | 2 +- keyboards/kudox/rev3/keymaps/jis/keymap.c | 2 +- keyboards/kudox_full/keymaps/jis/keymap.c | 2 +- keyboards/majistic/keymaps/default/keymap.c | 2 +- .../treadstone32/keymaps/default/keymap.c | 2 +- .../treadstone32/keymaps/like_jis/keymap.c | 2 +- keyboards/numatreus/keymaps/hdbx/keymap.c | 4 +- keyboards/numatreus/keymaps/like_jis/keymap.c | 2 +- .../ergodash/rev1/keymaps/m47ch4n/keymap.c | 2 +- .../runner3680/5x6_5x8/keymaps/jis/keymap.c | 2 +- .../omkbd/runner3680/5x8/keymaps/JIS/keymap.c | 2 +- keyboards/pico/65keys/keymaps/jis/keymap.c | 2 +- keyboards/pico/70keys/keymaps/jis/keymap.c | 2 +- keyboards/pisces/keymaps/default/keymap.c | 2 +- keyboards/pisces/keymaps/via/keymap.c | 2 +- keyboards/planck/keymaps/rai-suta/keymap.c | 2 +- keyboards/planck/keymaps/sigul/keymap.c | 2 +- .../squishytkl/keymaps/jis/keymap.c | 2 +- .../ramonimbao/wete/v1/keymaps/jis/keymap.c | 2 +- .../rate/pistachio/keymaps/default/keymap.c | 2 +- .../rate/pistachio/keymaps/rate/keymap.c | 2 +- keyboards/rate/pistachio/keymaps/via/keymap.c | 2 +- .../pistachio_pro/keymaps/default/keymap.c | 2 +- .../rate/pistachio_pro/keymaps/rate/keymap.c | 2 +- .../rate/pistachio_pro/keymaps/via/keymap.c | 2 +- .../nomu30/keymaps/center_sprit/keymap.c | 2 +- .../nomu30/keymaps/like_jis/keymap.c | 2 +- .../reviung33/keymaps/default_jp/keymap.c | 2 +- .../reviung34/keymaps/default_jp/keymap.c | 2 +- .../7skb/keymaps/salicylic/keymap.c | 2 +- .../7splus/keymaps/salicylic/keymap.c | 2 +- .../ajisai74/keymaps/jis/keymap.c | 2 +- .../ajisai74/keymaps/salicylic/keymap.c | 2 +- .../ergoarrows/keymaps/salicylic/keymap.c | 2 +- .../getta25/keymaps/oled/keymap.c | 2 +- .../jisplit89/keymaps/default/keymap.c | 2 +- .../jisplit89/keymaps/salicylic/keymap.c | 2 +- .../jisplit89/keymaps/via/keymap.c | 2 +- .../naked48/keymaps/salicylic/keymap.c | 2 +- .../keymaps/salicylic_with_nafuda/keymap.c | 2 +- .../keymaps/salicylic_with_setta21/keymap.c | 2 +- .../naked60/keymaps/salicylic/keymap.c | 2 +- .../keymaps/salicylic_with_nafuda/keymap.c | 2 +- .../keymaps/salicylic_with_setta21/keymap.c | 2 +- .../keymaps/default_with_setta21/keymap.c | 2 +- .../naked64/keymaps/salicylic/keymap.c | 2 +- .../keymaps/salicylic_with_setta21/keymap.c | 2 +- .../nknl7en/keymaps/salicylic/keymap.c | 2 +- .../nknl7jp/keymaps/default/keymap.c | 2 +- .../nknl7jp/keymaps/salicylic/keymap.c | 2 +- .../nknl7jp/keymaps/via/keymap.c | 2 +- .../setta21/keymaps/salicylic/keymap.c | 2 +- keyboards/satt/comet46/keymaps/satt/keymap.c | 2 +- keyboards/satt/vision/keymaps/satt/keymap.c | 2 +- .../satt/vision/keymaps/satt/keymap_jis2us.h | 2 +- .../heavy_left/keymaps/default/keymap.c | 2 +- .../keymaps/takashicompany/keymap.c | 2 +- .../heavy_left/keymaps/via/keymap.c | 2 +- .../namecard2x4/keymaps/brainfuck/keymap.c | 2 +- .../minivan/keymaps/like_jis/keymap.c | 2 +- .../community/ergodox/ishigoya-jp/keymap.c | 2 +- layouts/community/ergodox/kristian/keymap.c | 4 +- layouts/community/ergodox/osx_de/keymap.c | 2 +- .../ergodox/osx_de_adnw_koy/keymap.c | 6 +-- .../ergodox/osx_de_experimental/keymap.c | 4 +- layouts/community/ergodox/osx_fr/keymap.c | 2 +- .../60_abnt2/default_60_abnt2/keymap.c | 2 +- ...ap_br_abnt2.h => keymap_brazilian_abnt2.h} | 0 ...eymap_dvp.h => keymap_dvorak_programmer.h} | 0 ...p_french_osx.h => keymap_french_mac_iso.h} | 0 ...p_german_osx.h => keymap_german_mac_iso.h} | 0 ...n_osx_ansi.h => keymap_italian_mac_ansi.h} | 0 ...ian_osx_iso.h => keymap_italian_mac_iso.h} | 0 .../{keymap_jp.h => keymap_japanese.h} | 0 ..._osx_iso.h => keymap_portuguese_mac_iso.h} | 0 ...h_osx_ansi.h => keymap_swedish_mac_ansi.h} | 0 ...ish_osx_iso.h => keymap_swedish_mac_iso.h} | 0 ...x_ansi.h => keymap_swedish_pro_mac_ansi.h} | 0 ...osx_iso.h => keymap_swedish_pro_mac_iso.h} | 0 .../{keymap_german_ch.h => keymap_swiss_de.h} | 0 .../{keymap_fr_ch.h => keymap_swiss_fr.h} | 0 ...r_abnt2.h => sendstring_brazilian_abnt2.h} | 2 +- ...g_dvp.h => sendstring_dvorak_programmer.h} | 2 +- ...ench_osx.h => sendstring_french_mac_iso.h} | 2 +- ...rman_osx.h => sendstring_german_mac_iso.h} | 2 +- ...x_ansi.h => sendstring_italian_mac_ansi.h} | 2 +- ...osx_iso.h => sendstring_italian_mac_iso.h} | 2 +- ...sendstring_jis.h => sendstring_japanese.h} | 2 +- ..._iso.h => sendstring_portuguese_mac_iso.h} | 2 +- ...ring_german_ch.h => sendstring_swiss_de.h} | 2 +- ...ndstring_fr_ch.h => sendstring_swiss_fr.h} | 2 +- users/sigul/sigul.c | 2 +- 131 files changed, 151 insertions(+), 151 deletions(-) rename quantum/keymap_extras/{keymap_br_abnt2.h => keymap_brazilian_abnt2.h} (100%) rename quantum/keymap_extras/{keymap_dvp.h => keymap_dvorak_programmer.h} (100%) rename quantum/keymap_extras/{keymap_french_osx.h => keymap_french_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_german_osx.h => keymap_german_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_italian_osx_ansi.h => keymap_italian_mac_ansi.h} (100%) rename quantum/keymap_extras/{keymap_italian_osx_iso.h => keymap_italian_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_jp.h => keymap_japanese.h} (100%) rename quantum/keymap_extras/{keymap_portuguese_osx_iso.h => keymap_portuguese_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_swedish_osx_ansi.h => keymap_swedish_mac_ansi.h} (100%) rename quantum/keymap_extras/{keymap_swedish_osx_iso.h => keymap_swedish_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_swedish_pro_osx_ansi.h => keymap_swedish_pro_mac_ansi.h} (100%) rename quantum/keymap_extras/{keymap_swedish_pro_osx_iso.h => keymap_swedish_pro_mac_iso.h} (100%) rename quantum/keymap_extras/{keymap_german_ch.h => keymap_swiss_de.h} (100%) rename quantum/keymap_extras/{keymap_fr_ch.h => keymap_swiss_fr.h} (100%) rename quantum/keymap_extras/{sendstring_br_abnt2.h => sendstring_brazilian_abnt2.h} (99%) rename quantum/keymap_extras/{sendstring_dvp.h => sendstring_dvorak_programmer.h} (99%) rename quantum/keymap_extras/{sendstring_french_osx.h => sendstring_french_mac_iso.h} (99%) rename quantum/keymap_extras/{sendstring_german_osx.h => sendstring_german_mac_iso.h} (99%) rename quantum/keymap_extras/{sendstring_italian_osx_ansi.h => sendstring_italian_mac_ansi.h} (99%) rename quantum/keymap_extras/{sendstring_italian_osx_iso.h => sendstring_italian_mac_iso.h} (99%) rename quantum/keymap_extras/{sendstring_jis.h => sendstring_japanese.h} (99%) rename quantum/keymap_extras/{sendstring_portuguese_osx_iso.h => sendstring_portuguese_mac_iso.h} (99%) rename quantum/keymap_extras/{sendstring_german_ch.h => sendstring_swiss_de.h} (99%) rename quantum/keymap_extras/{sendstring_fr_ch.h => sendstring_swiss_fr.h} (99%) diff --git a/docs/reference_keymap_extras.md b/docs/reference_keymap_extras.md index 98be5c3669..b70d505f1f 100644 --- a/docs/reference_keymap_extras.md +++ b/docs/reference_keymap_extras.md @@ -36,20 +36,20 @@ These headers are located in [`quantum/keymap_extras/`](https://github.com/qmk/q |French (AFNOR) |`keymap_french_afnor.h` |`sendstring_french_afnor.h` | |French (BÉPO) |`keymap_bepo.h` |`sendstring_bepo.h` | |French (Belgium) |`keymap_belgian.h` |`sendstring_belgian.h` | -|French (Switzerland) |`keymap_fr_ch.h` |`sendstring_fr_ch.h` | -|French (macOS, ISO) |`keymap_french_osx.h` |`sendstring_french_osx.h` | +|French (Switzerland) |`keymap_swiss_fr.h` |`sendstring_swiss_fr.h` | +|French (macOS, ISO) |`keymap_french_mac_iso.h` |`sendstring_french_mac_iso.h` | |German |`keymap_german.h` |`sendstring_german.h` | -|German (Switzerland) |`keymap_german_ch.h` |`sendstring_german_ch.h` | -|German (macOS) |`keymap_german_osx.h` |`sendstring_german_osx.h` | +|German (Switzerland) |`keymap_swiss_de.h` |`sendstring_swiss_de.h` | +|German (macOS) |`keymap_german_mac_iso.h` |`sendstring_german_mac_iso.h` | |German (Neo2) |`keymap_neo2.h` | | |Greek |`keymap_greek.h` | | |Hebrew |`keymap_hebrew.h` | | |Hungarian |`keymap_hungarian.h` |`sendstring_hungarian.h` | |Icelandic |`keymap_icelandic.h` |`sendstring_icelandic.h` | |Italian |`keymap_italian.h` |`sendstring_italian.h` | -|Italian (macOS, ANSI) |`keymap_italian_osx_ansi.h` |`sendstring_italian_osx_ansi.h` | -|Italian (macOS, ISO) |`keymap_italian_osx_iso.h` |`sendstring_italian_osx_iso.h` | -|Japanese |`keymap_jp.h` |`sendstring_jis.h` | +|Italian (macOS, ANSI) |`keymap_italian_mac_ansi.h` |`sendstring_italian_mac_ansi.h` | +|Italian (macOS, ISO) |`keymap_italian_mac_iso.h` |`sendstring_italian_mac_iso.h` | +|Japanese |`keymap_japanese.h` |`sendstring_japanese.h` | |Korean |`keymap_korean.h` | | |Latvian |`keymap_latvian.h` |`sendstring_latvian.h` | |Lithuanian (ĄŽERTY) |`keymap_lithuanian_azerty.h` |`sendstring_lithuanian_azerty.h` | @@ -57,8 +57,8 @@ These headers are located in [`quantum/keymap_extras/`](https://github.com/qmk/q |Norwegian |`keymap_norwegian.h` |`sendstring_norwegian.h` | |Polish |`keymap_polish.h` | | |Portuguese |`keymap_portuguese.h` |`sendstring_portuguese.h` | -|Portuguese (macOS, ISO) |`keymap_portuguese_osx_iso.h` |`sendstring_portuguese_osx_iso.h` | -|Portuguese (Brazil) |`keymap_br_abnt2.h` |`sendstring_br_abnt2.h` | +|Portuguese (macOS, ISO) |`keymap_portuguese_mac_iso.h` |`sendstring_portuguese_mac_iso.h` | +|Portuguese (Brazil) |`keymap_brazilian_abnt2.h` |`sendstring_brazilian_abnt2.h` | |Romanian |`keymap_romanian.h` |`sendstring_romanian.h` | |Russian |`keymap_russian.h` | | |Serbian |`keymap_serbian.h` | | @@ -68,25 +68,25 @@ These headers are located in [`quantum/keymap_extras/`](https://github.com/qmk/q |Spanish |`keymap_spanish.h` |`sendstring_spanish.h` | |Spanish (Dvorak) |`keymap_spanish_dvorak.h` |`sendstring_spanish_dvorak.h` | |Swedish |`keymap_swedish.h` |`sendstring_swedish.h` | -|Swedish (macOS, ANSI) |`keymap_swedish_osx_ansi.h` | | -|Swedish (macOS, ISO) |`keymap_swedish_osx_iso.h` | | -|Swedish Pro (macOS, ANSI) |`keymap_swedish_pro_osx_ansi.h` | | -|Swedish Pro (macOS, ISO) |`keymap_swedish_pro_osx_iso.h` | | +|Swedish (macOS, ANSI) |`keymap_swedish_mac_ansi.h` | | +|Swedish (macOS, ISO) |`keymap_swedish_mac_iso.h` | | +|Swedish Pro (macOS, ANSI) |`keymap_swedish_pro_mac_ansi.h` | | +|Swedish Pro (macOS, ISO) |`keymap_swedish_pro_mac_iso.h` | | |Turkish (F) |`keymap_turkish_f.h` |`sendstring_turkish_f.h` | |Turkish (Q) |`keymap_turkish_q.h` |`sendstring_turkish_q.h` | |Ukrainian |`keymap_ukrainian.h` | | There are also a few which are not quite language-specific, but useful if you are not using a QWERTY layout: -|Layout |Keycodes Header |Sendstring LUT Header | -|-------------------|------------------------|----------------------------| -|Colemak |`keymap_colemak.h` |`sendstring_colemak.h` | -|Dvorak |`keymap_dvorak.h` |`sendstring_dvorak.h` | -|Dvorak (French) |`keymap_dvorak_fr.h` |`sendstring_dvorak_fr.h` | -|Dvorak (Programmer)|`keymap_dvp.h` |`sendstring_dvp.h` | -|Norman |`keymap_norman.h` |`sendstring_norman.h` | -|Plover |`keymap_plover.h` | | -|Plover (Dvorak) |`keymap_plover_dvorak.h`| | -|Steno |`keymap_steno.h` | | -|Workman |`keymap_workman.h` |`sendstring_workman.h` | -|Workman (ZXCVM) |`keymap_workman_zxcvm.h`|`sendstring_workman_zxcvm.h`| +|Layout |Keycodes Header |Sendstring LUT Header | +|-------------------|----------------------------|--------------------------------| +|Colemak |`keymap_colemak.h` |`sendstring_colemak.h` | +|Dvorak |`keymap_dvorak.h` |`sendstring_dvorak.h` | +|Dvorak (French) |`keymap_dvorak_fr.h` |`sendstring_dvorak_fr.h` | +|Dvorak (Programmer)|`keymap_dvorak_programmer.h`|`sendstring_dvorak_programmer.h`| +|Norman |`keymap_norman.h` |`sendstring_norman.h` | +|Plover |`keymap_plover.h` | | +|Plover (Dvorak) |`keymap_plover_dvorak.h` | | +|Steno |`keymap_steno.h` | | +|Workman |`keymap_workman.h` |`sendstring_workman.h` | +|Workman (ZXCVM) |`keymap_workman_zxcvm.h` |`sendstring_workman_zxcvm.h` | diff --git a/keyboards/ai03/jp60/keymaps/default/keymap.c b/keyboards/ai03/jp60/keymaps/default/keymap.c index f26c2a9080..6b69dba9dd 100644 --- a/keyboards/ai03/jp60/keymaps/default/keymap.c +++ b/keyboards/ai03/jp60/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_names { diff --git a/keyboards/ai03/jp60/keymaps/via/keymap.c b/keyboards/ai03/jp60/keymaps/via/keymap.c index 5c8f9ecf65..efce7acf3c 100644 --- a/keyboards/ai03/jp60/keymaps/via/keymap.c +++ b/keyboards/ai03/jp60/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_names { diff --git a/keyboards/aozora/keymaps/default_all/keymap.c b/keyboards/aozora/keymaps/default_all/keymap.c index 3376f2e8cd..a6e20e0e4e 100644 --- a/keyboards/aozora/keymaps/default_all/keymap.c +++ b/keyboards/aozora/keymaps/default_all/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "sendstring_jis.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 +#include "sendstring_japanese.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( diff --git a/keyboards/aozora/keymaps/via/keymap.c b/keyboards/aozora/keymaps/via/keymap.c index 3376f2e8cd..a6e20e0e4e 100644 --- a/keyboards/aozora/keymaps/via/keymap.c +++ b/keyboards/aozora/keymaps/via/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "sendstring_jis.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 +#include "sendstring_japanese.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( diff --git a/keyboards/barracuda/keymaps/default/keymap.c b/keyboards/barracuda/keymaps/default/keymap.c index ebe2e8b4a5..a3170c1b44 100644 --- a/keyboards/barracuda/keymaps/default/keymap.c +++ b/keyboards/barracuda/keymaps/default/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" /* keymap layers */ enum _layers { diff --git a/keyboards/barracuda/keymaps/via/keymap.c b/keyboards/barracuda/keymaps/via/keymap.c index ebe2e8b4a5..a3170c1b44 100644 --- a/keyboards/barracuda/keymaps/via/keymap.c +++ b/keyboards/barracuda/keymaps/via/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" /* keymap layers */ enum _layers { diff --git a/keyboards/basekeys/slice/rev1/keymaps/2moons/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/2moons/keymap.c index 97f7039a79..26ca151089 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/2moons/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/2moons/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE //Following line allows macro to read current RGB settings diff --git a/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c index 900f1b3ba7..57b94c5bdf 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/keymap.c b/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/keymap.c index 375daaca95..05de0e42d0 100644 --- a/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/keymap.c +++ b/keyboards/basekeys/slice/rev1_rgb/keymaps/2moons_rgb/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #include "split_util.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/biacco42/ergo42/keymaps/biacco-winjp/keymap.c b/keyboards/biacco42/ergo42/keymaps/biacco-winjp/keymap.c index 9d8284dbd2..8db73ab8bd 100644 --- a/keyboards/biacco42/ergo42/keymaps/biacco-winjp/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/biacco-winjp/keymap.c @@ -2,9 +2,9 @@ // hdbx から2行コピーさせて頂きました。 #include QMK_KEYBOARD_H -#include "keymap_jp.h" // qmk_firmware-master/quantum/keymap_extras/keymap_jp.h 日本語キーボード設定用 +#include "keymap_japanese.h" // qmk_firmware-master/quantum/keymap_extras/keymap_japanese.h 日本語キーボード設定用 // マクロが必要になったらコメントインすること -// #include // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避> +// #include "sendstring_japanese.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避> extern keymap_config_t keymap_config; diff --git a/keyboards/biacco42/ergo42/keymaps/hdbx/keymap.c b/keyboards/biacco42/ergo42/keymaps/hdbx/keymap.c index 0931ce86b4..bb3b6fac48 100644 --- a/keyboards/biacco42/ergo42/keymaps/hdbx/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/hdbx/keymap.c @@ -2,8 +2,8 @@ // @leopard_gecko さんがPlanck用に作成されたキーマップをかなり参考にしています。 #include QMK_KEYBOARD_H -#include "keymap_jp.h" // qmk_firmware-master/quantum/keymap_extras/keymap_jp.h 日本語キーボード設定用 -#include // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 +#include "keymap_japanese.h" // qmk_firmware-master/quantum/keymap_extras/keymap_japanese.h 日本語キーボード設定用 +#include "sendstring_japanese.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 extern keymap_config_t keymap_config; diff --git a/keyboards/biacco42/ergo42/keymaps/koba/keymap.c b/keyboards/biacco42/ergo42/keymaps/koba/keymap.c index 091d7fb9af..5d7f337452 100644 --- a/keyboards/biacco42/ergo42/keymaps/koba/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/koba/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum { _WIN, diff --git a/keyboards/buzzard/keymaps/crehmann/keymap.c b/keyboards/buzzard/keymaps/crehmann/keymap.c index 842494c60a..5a6ae49d8b 100644 --- a/keyboards/buzzard/keymaps/crehmann/keymap.c +++ b/keyboards/buzzard/keymaps/crehmann/keymap.c @@ -2,7 +2,7 @@ // SPDX-License-Identifier: GPL-2.0-or-later #include QMK_KEYBOARD_H -#include "keymap_german_ch.h" +#include "keymap_swiss_de.h" #include "features/haptic_utils.h" #ifdef PS2_MOUSE_ENABLE diff --git a/keyboards/crkbd/keymaps/vayashiko/keymap.c b/keyboards/crkbd/keymaps/vayashiko/keymap.c index ecb629f30d..f3cf5cb2f6 100644 --- a/keyboards/crkbd/keymaps/vayashiko/keymap.c +++ b/keyboards/crkbd/keymaps/vayashiko/keymap.c @@ -17,7 +17,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum custom_layers { _QWERTY, diff --git a/keyboards/dz60/keymaps/default_abnt2/keymap.c b/keyboards/dz60/keymaps/default_abnt2/keymap.c index 3ed1484bd7..d27e42e390 100644 --- a/keyboards/dz60/keymaps/default_abnt2/keymap.c +++ b/keyboards/dz60/keymaps/default_abnt2/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" /* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * _______ can be used in place of KC_TRNS (transparent) * diff --git a/keyboards/ergodox_ez/keymaps/nathanvercaemert/keymap.c b/keyboards/ergodox_ez/keymaps/nathanvercaemert/keymap.c index 18d6e667cc..e31391a674 100644 --- a/keyboards/ergodox_ez/keymaps/nathanvercaemert/keymap.c +++ b/keyboards/ergodox_ez/keymaps/nathanvercaemert/keymap.c @@ -6,10 +6,10 @@ #include "keymap_spanish.h" #include "keymap_hungarian.h" #include "keymap_swedish.h" -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" #include "keymap_canadian_multilingual.h" -#include "keymap_german_ch.h" -#include "keymap_jp.h" +#include "keymap_swiss_de.h" +#include "keymap_japanese.h" #include "keymap_bepo.h" #define KC_MAC_UNDO LGUI(KC_Z) diff --git a/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c b/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c index 493bee1cd4..d28f028563 100644 --- a/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c +++ b/keyboards/gh60/revc/keymaps/default_abnt2/keymap.c @@ -16,7 +16,7 @@ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" enum layer_names { _BL, diff --git a/keyboards/gl516/a52gl/keymaps/salicylic/keymap.c b/keyboards/gl516/a52gl/keymaps/salicylic/keymap.c index 4607d1dc50..4a2e09501d 100644 --- a/keyboards/gl516/a52gl/keymaps/salicylic/keymap.c +++ b/keyboards/gl516/a52gl/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/gl516/j73gl/keymaps/default/keymap.c b/keyboards/gl516/j73gl/keymaps/default/keymap.c index 846df7d2b7..c549e6b574 100644 --- a/keyboards/gl516/j73gl/keymaps/default/keymap.c +++ b/keyboards/gl516/j73gl/keymaps/default/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/gl516/j73gl/keymaps/via/keymap.c b/keyboards/gl516/j73gl/keymaps/via/keymap.c index 3e8fba928d..942775e4b0 100644 --- a/keyboards/gl516/j73gl/keymaps/via/keymap.c +++ b/keyboards/gl516/j73gl/keymaps/via/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( diff --git a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/keymap.c b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/keymap.c index 3e8fba928d..942775e4b0 100644 --- a/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/keymap.c +++ b/keyboards/gl516/j73gl/keymaps/via_rgb_matrix/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT( diff --git a/keyboards/gl516/n51gl/keymaps/salicylic/keymap.c b/keyboards/gl516/n51gl/keymaps/salicylic/keymap.c index 819ac94e37..fd0bc7f8e3 100644 --- a/keyboards/gl516/n51gl/keymaps/salicylic/keymap.c +++ b/keyboards/gl516/n51gl/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. diff --git a/keyboards/halfcliff/keymaps/default/keymap.c b/keyboards/halfcliff/keymaps/default/keymap.c index 02743f5d49..aff1ffb1de 100644 --- a/keyboards/halfcliff/keymaps/default/keymap.c +++ b/keyboards/halfcliff/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_names { diff --git a/keyboards/halfcliff/keymaps/via/keymap.c b/keyboards/halfcliff/keymaps/via/keymap.c index e0a825e7c3..424c56abe0 100644 --- a/keyboards/halfcliff/keymaps/via/keymap.c +++ b/keyboards/halfcliff/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #define RAISE FN_MO13 #define LOWER FN_MO23 diff --git a/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c b/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c index 6efed6ac1a..020c70fc21 100644 --- a/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c +++ b/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" enum { LAYER_BASE, diff --git a/keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c b/keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c index 4bbf4c2cbc..73113385d3 100644 --- a/keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c +++ b/keyboards/handwired/baredev/rev1/keymaps/manoshu/keymap.c @@ -15,8 +15,8 @@ */ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" -#include "sendstring_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" +#include "sendstring_brazilian_abnt2.h" enum { LAYER_BASE, diff --git a/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c b/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c index a7b127f089..934ca4bed7 100644 --- a/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c +++ b/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" enum { LAYER_BASE, diff --git a/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c b/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c index 24b2a59012..23b45ef317 100644 --- a/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c +++ b/keyboards/helix/rev2/keymaps/five_rows_jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #include #include #ifdef SSD1306OLED diff --git a/keyboards/helix/rev2/keymaps/froggy_106/keymap.c b/keyboards/helix/rev2/keymaps/froggy_106/keymap.c index a92b05566e..2e1464bedf 100644 --- a/keyboards/helix/rev2/keymaps/froggy_106/keymap.c +++ b/keyboards/helix/rev2/keymaps/froggy_106/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #include #ifdef SSD1306OLED #include "ssd1306.h" diff --git a/keyboards/hhkb/ansi/keymaps/shela/keymap_jis2us.h b/keyboards/hhkb/ansi/keymaps/shela/keymap_jis2us.h index 0b811fd03a..163ae84fb4 100644 --- a/keyboards/hhkb/ansi/keymaps/shela/keymap_jis2us.h +++ b/keyboards/hhkb/ansi/keymaps/shela/keymap_jis2us.h @@ -16,7 +16,7 @@ #pragma once -#include "keymap_jp.h" +#include "keymap_japanese.h" // clang-format off /* Keymap for converting JIS to US */ diff --git a/keyboards/jones/v03/keymaps/default/keymap.c b/keyboards/jones/v03/keymaps/default/keymap.c index 05545c5373..4d408b5e19 100644 --- a/keyboards/jones/v03/keymaps/default/keymap.c +++ b/keyboards/jones/v03/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( diff --git a/keyboards/jones/v03/keymaps/default_jp/keymap.c b/keyboards/jones/v03/keymaps/default_jp/keymap.c index 54f90c3e57..1cf67fbedd 100644 --- a/keyboards/jones/v03/keymaps/default_jp/keymap.c +++ b/keyboards/jones/v03/keymaps/default_jp/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_number { diff --git a/keyboards/jones/v03_1/keymaps/default_jp/keymap.c b/keyboards/jones/v03_1/keymaps/default_jp/keymap.c index ba68b3dcf7..efe23f8237 100644 --- a/keyboards/jones/v03_1/keymaps/default_jp/keymap.c +++ b/keyboards/jones/v03_1/keymaps/default_jp/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_number { diff --git a/keyboards/jones/v1/keymaps/via/keymap.c b/keyboards/jones/v1/keymaps/via/keymap.c index 7cd1434bbc..a326a78233 100644 --- a/keyboards/jones/v1/keymaps/via/keymap.c +++ b/keyboards/jones/v1/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_number { diff --git a/keyboards/kbdfans/kbd67/rev1/keymaps/koba/keymap.c b/keyboards/kbdfans/kbd67/rev1/keymaps/koba/keymap.c index 3ce6afce21..15e995bb1c 100644 --- a/keyboards/kbdfans/kbd67/rev1/keymaps/koba/keymap.c +++ b/keyboards/kbdfans/kbd67/rev1/keymaps/koba/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #define RGB_RMO RGB_RMOD diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/koba/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/koba/keymap.c index 3ce6afce21..15e995bb1c 100644 --- a/keyboards/kbdfans/kbd67/rev2/keymaps/koba/keymap.c +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/koba/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #define RGB_RMO RGB_RMOD diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c b/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c index daffb61e76..e72d83f9d0 100644 --- a/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c +++ b/keyboards/kprepublic/bm40hsrgb/keymaps/wolff_abnt2/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" enum layers { _WORKMAN, diff --git a/keyboards/kudox/rev1/keymaps/jis/keymap.c b/keyboards/kudox/rev1/keymaps/jis/keymap.c index 5de27ff8d4..d6f06828cc 100644 --- a/keyboards/kudox/rev1/keymaps/jis/keymap.c +++ b/keyboards/kudox/rev1/keymaps/jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/kudox/rev2/keymaps/jis/keymap.c b/keyboards/kudox/rev2/keymaps/jis/keymap.c index c78cea2331..40173a8cd3 100644 --- a/keyboards/kudox/rev2/keymaps/jis/keymap.c +++ b/keyboards/kudox/rev2/keymaps/jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/kudox/rev3/keymaps/jis/keymap.c b/keyboards/kudox/rev3/keymaps/jis/keymap.c index 28ee3f9214..41b6fca1f2 100644 --- a/keyboards/kudox/rev3/keymaps/jis/keymap.c +++ b/keyboards/kudox/rev3/keymaps/jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/kudox_full/keymaps/jis/keymap.c b/keyboards/kudox_full/keymaps/jis/keymap.c index 5baa7d14d4..aa55fa50a4 100644 --- a/keyboards/kudox_full/keymaps/jis/keymap.c +++ b/keyboards/kudox_full/keymaps/jis/keymap.c @@ -2,7 +2,7 @@ // SPDX-License-Identifier: GPL-2.0+ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" enum layer_number { diff --git a/keyboards/majistic/keymaps/default/keymap.c b/keyboards/majistic/keymaps/default/keymap.c index 409c94d891..925657d2fe 100644 --- a/keyboards/majistic/keymaps/default/keymap.c +++ b/keyboards/majistic/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines names for use in layer keycodes and the keymap enum layer_names { diff --git a/keyboards/marksard/treadstone32/keymaps/default/keymap.c b/keyboards/marksard/treadstone32/keymaps/default/keymap.c index 791fed059b..0f3e5e9e12 100644 --- a/keyboards/marksard/treadstone32/keymaps/default/keymap.c +++ b/keyboards/marksard/treadstone32/keymaps/default/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/marksard/treadstone32/keymaps/like_jis/keymap.c b/keyboards/marksard/treadstone32/keymaps/like_jis/keymap.c index 92518b11a7..49c1870fa9 100644 --- a/keyboards/marksard/treadstone32/keymaps/like_jis/keymap.c +++ b/keyboards/marksard/treadstone32/keymaps/like_jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/numatreus/keymaps/hdbx/keymap.c b/keyboards/numatreus/keymaps/hdbx/keymap.c index 44b3fffe24..5bc8c4d0e6 100644 --- a/keyboards/numatreus/keymaps/hdbx/keymap.c +++ b/keyboards/numatreus/keymaps/hdbx/keymap.c @@ -4,8 +4,8 @@ // ・Muhenkan(入力文字なし/直接入力)に「IMEを無効化」を割り当て #include QMK_KEYBOARD_H -#include "keymap_jp.h" // qmk_firmware-master/quantum/keymap_extras/keymap_jp.h 日本語キーボード設定用 -#include // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 +#include "keymap_japanese.h" // qmk_firmware-master/quantum/keymap_extras/keymap_japanese.h 日本語キーボード設定用 +#include "sendstring_japanese.h" // macro sendstring for jis keyboard マクロ文字列送信時に日本語キーボード設定での文字化け回避 // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/numatreus/keymaps/like_jis/keymap.c b/keyboards/numatreus/keymaps/like_jis/keymap.c index eb9e9230d7..4189373e46 100644 --- a/keyboards/numatreus/keymaps/like_jis/keymap.c +++ b/keyboards/numatreus/keymaps/like_jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/m47ch4n/keymap.c b/keyboards/omkbd/ergodash/rev1/keymaps/m47ch4n/keymap.c index 4b102157d5..8cfc5a8385 100644 --- a/keyboards/omkbd/ergodash/rev1/keymaps/m47ch4n/keymap.c +++ b/keyboards/omkbd/ergodash/rev1/keymaps/m47ch4n/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // clang-format off enum layers { _QWERTY, _LOWER, _RAISE, _ADJUST }; diff --git a/keyboards/omkbd/runner3680/5x6_5x8/keymaps/jis/keymap.c b/keyboards/omkbd/runner3680/5x6_5x8/keymaps/jis/keymap.c index 463d847639..ac6b4f49c5 100644 --- a/keyboards/omkbd/runner3680/5x6_5x8/keymaps/jis/keymap.c +++ b/keyboards/omkbd/runner3680/5x6_5x8/keymaps/jis/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum layer_number { _QWERTY = 0, diff --git a/keyboards/omkbd/runner3680/5x8/keymaps/JIS/keymap.c b/keyboards/omkbd/runner3680/5x8/keymaps/JIS/keymap.c index 75ff755651..515a6fcb07 100644 --- a/keyboards/omkbd/runner3680/5x8/keymaps/JIS/keymap.c +++ b/keyboards/omkbd/runner3680/5x8/keymaps/JIS/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/pico/65keys/keymaps/jis/keymap.c b/keyboards/pico/65keys/keymaps/jis/keymap.c index a3d2606613..35b01bbba4 100644 --- a/keyboards/pico/65keys/keymaps/jis/keymap.c +++ b/keyboards/pico/65keys/keymaps/jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/pico/70keys/keymaps/jis/keymap.c b/keyboards/pico/70keys/keymaps/jis/keymap.c index 73109245e9..67d082d189 100644 --- a/keyboards/pico/70keys/keymaps/jis/keymap.c +++ b/keyboards/pico/70keys/keymaps/jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include"keymap_jp.h" +#include"keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/pisces/keymaps/default/keymap.c b/keyboards/pisces/keymaps/default/keymap.c index 39226d2f05..a347a2e779 100644 --- a/keyboards/pisces/keymaps/default/keymap.c +++ b/keyboards/pisces/keymaps/default/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" /* keymap layers */ enum _layers { diff --git a/keyboards/pisces/keymaps/via/keymap.c b/keyboards/pisces/keymaps/via/keymap.c index 39226d2f05..a347a2e779 100644 --- a/keyboards/pisces/keymaps/via/keymap.c +++ b/keyboards/pisces/keymaps/via/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" /* keymap layers */ enum _layers { diff --git a/keyboards/planck/keymaps/rai-suta/keymap.c b/keyboards/planck/keymaps/rai-suta/keymap.c index 8cc37dc651..07dae2b2ab 100644 --- a/keyboards/planck/keymaps/rai-suta/keymap.c +++ b/keyboards/planck/keymaps/rai-suta/keymap.c @@ -3,7 +3,7 @@ #include QMK_KEYBOARD_H #include "version.h" -#include "sendstring_jis.h" +#include "sendstring_japanese.h" // JIS keyboard #define JK_CIRC KC_EQL // ^ diff --git a/keyboards/planck/keymaps/sigul/keymap.c b/keyboards/planck/keymaps/sigul/keymap.c index 622e9f29cd..2b100509b9 100644 --- a/keyboards/planck/keymaps/sigul/keymap.c +++ b/keyboards/planck/keymaps/sigul/keymap.c @@ -13,7 +13,7 @@ #include QMK_KEYBOARD_H #include "muse.h" -#include "keymap_italian_osx_ansi.h" +#include "keymap_italian_mac_ansi.h" #include "sigul.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/ramonimbao/squishytkl/keymaps/jis/keymap.c b/keyboards/ramonimbao/squishytkl/keymaps/jis/keymap.c index d8debc9cc0..7396c2b9d7 100644 --- a/keyboards/ramonimbao/squishytkl/keymaps/jis/keymap.c +++ b/keyboards/ramonimbao/squishytkl/keymaps/jis/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_jis( diff --git a/keyboards/ramonimbao/wete/v1/keymaps/jis/keymap.c b/keyboards/ramonimbao/wete/v1/keymaps/jis/keymap.c index 8d65932219..e83f88dc1d 100644 --- a/keyboards/ramonimbao/wete/v1/keymaps/jis/keymap.c +++ b/keyboards/ramonimbao/wete/v1/keymaps/jis/keymap.c @@ -17,7 +17,7 @@ along with this program. If not, see . #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_jis_rhnp( diff --git a/keyboards/rate/pistachio/keymaps/default/keymap.c b/keyboards/rate/pistachio/keymaps/default/keymap.c index 585807abdd..e58042de9c 100644 --- a/keyboards/rate/pistachio/keymaps/default/keymap.c +++ b/keyboards/rate/pistachio/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern rgblight_config_t rgblight_config; diff --git a/keyboards/rate/pistachio/keymaps/rate/keymap.c b/keyboards/rate/pistachio/keymaps/rate/keymap.c index 34e1324aed..b4d8d03982 100644 --- a/keyboards/rate/pistachio/keymaps/rate/keymap.c +++ b/keyboards/rate/pistachio/keymaps/rate/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum layer_names { diff --git a/keyboards/rate/pistachio/keymaps/via/keymap.c b/keyboards/rate/pistachio/keymaps/via/keymap.c index 357253ac2d..376a9b37c7 100644 --- a/keyboards/rate/pistachio/keymaps/via/keymap.c +++ b/keyboards/rate/pistachio/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum layer_names { diff --git a/keyboards/rate/pistachio_pro/keymaps/default/keymap.c b/keyboards/rate/pistachio_pro/keymaps/default/keymap.c index 3fe6e8a5f5..7140d92361 100644 --- a/keyboards/rate/pistachio_pro/keymaps/default/keymap.c +++ b/keyboards/rate/pistachio_pro/keymaps/default/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H #include -#include "keymap_jp.h" +#include "keymap_japanese.h" #include "lib/bme280.h" // Defines names for use in layer keycodes and the keymap diff --git a/keyboards/rate/pistachio_pro/keymaps/rate/keymap.c b/keyboards/rate/pistachio_pro/keymaps/rate/keymap.c index 7aa70c51d1..47851f0d6a 100644 --- a/keyboards/rate/pistachio_pro/keymaps/rate/keymap.c +++ b/keyboards/rate/pistachio_pro/keymaps/rate/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H #include -#include "keymap_jp.h" +#include "keymap_japanese.h" #include "lib/bme280.h" // Defines names for use in layer keycodes and the keymap diff --git a/keyboards/rate/pistachio_pro/keymaps/via/keymap.c b/keyboards/rate/pistachio_pro/keymaps/via/keymap.c index f30254320b..62e6dc96dc 100644 --- a/keyboards/rate/pistachio_pro/keymaps/via/keymap.c +++ b/keyboards/rate/pistachio_pro/keymaps/via/keymap.c @@ -15,7 +15,7 @@ */ #include QMK_KEYBOARD_H #include -#include "keymap_jp.h" +#include "keymap_japanese.h" #include "lib/bme280.h" // Defines names for use in layer keycodes and the keymap diff --git a/keyboards/recompile_keys/nomu30/keymaps/center_sprit/keymap.c b/keyboards/recompile_keys/nomu30/keymaps/center_sprit/keymap.c index cc540b891f..45a1b8a566 100644 --- a/keyboards/recompile_keys/nomu30/keymaps/center_sprit/keymap.c +++ b/keyboards/recompile_keys/nomu30/keymaps/center_sprit/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/recompile_keys/nomu30/keymaps/like_jis/keymap.c b/keyboards/recompile_keys/nomu30/keymaps/like_jis/keymap.c index fc2d26ad7a..efdf01b2e7 100644 --- a/keyboards/recompile_keys/nomu30/keymaps/like_jis/keymap.c +++ b/keyboards/recompile_keys/nomu30/keymaps/like_jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c index 1265a301ed..738915ce34 100644 --- a/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c +++ b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum layer_names { _BASE, diff --git a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c index c37d87662c..3faff2e368 100755 --- a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum layer_names { _BASE, diff --git a/keyboards/salicylic_acid3/7skb/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/7skb/keymaps/salicylic/keymap.c index ad12f49d5b..4e1f2acd05 100644 --- a/keyboards/salicylic_acid3/7skb/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/7skb/keymaps/salicylic/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/salicylic_acid3/7splus/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/7splus/keymaps/salicylic/keymap.c index cbe4e57dcf..06d7972a2e 100644 --- a/keyboards/salicylic_acid3/7splus/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/7splus/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/jis/keymap.c b/keyboards/salicylic_acid3/ajisai74/keymaps/jis/keymap.c index b0d31b03bd..95ba7fc9eb 100644 --- a/keyboards/salicylic_acid3/ajisai74/keymaps/jis/keymap.c +++ b/keyboards/salicylic_acid3/ajisai74/keymaps/jis/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/keymap.c index f8b430af1c..978a63ab35 100644 --- a/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/ajisai74/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/keymap.c index c841371dba..8f2c4151f8 100644 --- a/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/ergoarrows/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/salicylic_acid3/getta25/keymaps/oled/keymap.c b/keyboards/salicylic_acid3/getta25/keymaps/oled/keymap.c index 7d8151b86d..0ee669ce84 100644 --- a/keyboards/salicylic_acid3/getta25/keymaps/oled/keymap.c +++ b/keyboards/salicylic_acid3/getta25/keymaps/oled/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef OLED_ENABLE static uint32_t oled_timer = 0; diff --git a/keyboards/salicylic_acid3/jisplit89/keymaps/default/keymap.c b/keyboards/salicylic_acid3/jisplit89/keymaps/default/keymap.c index e782a4b451..cedad726dd 100644 --- a/keyboards/salicylic_acid3/jisplit89/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/jisplit89/keymaps/default/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/keymap.c index ffd3b853b5..4e8addf6b7 100644 --- a/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/jisplit89/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/jisplit89/keymaps/via/keymap.c b/keyboards/salicylic_acid3/jisplit89/keymaps/via/keymap.c index b2ceacb0e6..41f90afe44 100644 --- a/keyboards/salicylic_acid3/jisplit89/keymaps/via/keymap.c +++ b/keyboards/salicylic_acid3/jisplit89/keymaps/via/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. // Layer names don't all need to be of the same length, obviously, and you can also skip them diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/salicylic/keymap.c index dddb6c0432..3807d9b6f3 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/keymap.c index 7566d4c00a..d2abe704c6 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_nafuda/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/keymap.c index 1925067d22..d22f9ecb2f 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/salicylic_with_setta21/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/salicylic/keymap.c index 9be4bcb422..8a2dbf051f 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/keymap.c index 8fb0ce26f1..4201d79a2e 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_nafuda/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/keymap.c index 7f50e89f3c..23786da915 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/salicylic_with_setta21/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c index 01039aaecc..cc30e5332d 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/salicylic_acid3/naked64/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/salicylic/keymap.c index 40e92393da..db46075c8f 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/salicylic/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/keymap.c index df80e0772b..c91716cdd4 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/salicylic_with_setta21/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/keymap.c index e7de4e50f0..5944c00fc5 100644 --- a/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/nknl7en/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/default/keymap.c b/keyboards/salicylic_acid3/nknl7jp/keymaps/default/keymap.c index 0f90eb883c..38552c8dbd 100644 --- a/keyboards/salicylic_acid3/nknl7jp/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/default/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Each layer gets a name for readability, which is then used in the keymap matrix below. // The underscores don't mean anything - you can have a layer called STUFF or any other name. diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/keymap.c index 65f95f0173..e6004ba111 100644 --- a/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/salicylic/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" diff --git a/keyboards/salicylic_acid3/nknl7jp/keymaps/via/keymap.c b/keyboards/salicylic_acid3/nknl7jp/keymaps/via/keymap.c index 660fb2a159..35c78c71fd 100644 --- a/keyboards/salicylic_acid3/nknl7jp/keymaps/via/keymap.c +++ b/keyboards/salicylic_acid3/nknl7jp/keymaps/via/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern uint8_t is_master; diff --git a/keyboards/salicylic_acid3/setta21/keymaps/salicylic/keymap.c b/keyboards/salicylic_acid3/setta21/keymaps/salicylic/keymap.c index 06fa89c9c7..3dc7faa394 100644 --- a/keyboards/salicylic_acid3/setta21/keymaps/salicylic/keymap.c +++ b/keyboards/salicylic_acid3/setta21/keymaps/salicylic/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef RGBLIGHT_ENABLE diff --git a/keyboards/satt/comet46/keymaps/satt/keymap.c b/keyboards/satt/comet46/keymaps/satt/keymap.c index 57aa635934..cdd094f747 100644 --- a/keyboards/satt/comet46/keymaps/satt/keymap.c +++ b/keyboards/satt/comet46/keymaps/satt/keymap.c @@ -4,7 +4,7 @@ #include QMK_KEYBOARD_H #include "keymap_jis2us.h" #include "action_pseudo_lut.h" -#include "keymap_jp.h" +#include "keymap_japanese.h" #ifdef SSD1306OLED #include "ssd1306.h" #endif diff --git a/keyboards/satt/vision/keymaps/satt/keymap.c b/keyboards/satt/vision/keymaps/satt/keymap.c index 9529653408..4289fbc20a 100644 --- a/keyboards/satt/vision/keymaps/satt/keymap.c +++ b/keyboards/satt/vision/keymaps/satt/keymap.c @@ -18,7 +18,7 @@ along with this program. If not, see . #include QMK_KEYBOARD_H #include "keymap_jis2us.h" #include "action_pseudo.h" -#include "keymap_jp.h" +#include "keymap_japanese.h" enum custom_keycodes { JIS2US = SAFE_RANGE, /* JIS2US keycode */ diff --git a/keyboards/satt/vision/keymaps/satt/keymap_jis2us.h b/keyboards/satt/vision/keymaps/satt/keymap_jis2us.h index 0b811fd03a..163ae84fb4 100644 --- a/keyboards/satt/vision/keymaps/satt/keymap_jis2us.h +++ b/keyboards/satt/vision/keymaps/satt/keymap_jis2us.h @@ -16,7 +16,7 @@ #pragma once -#include "keymap_jp.h" +#include "keymap_japanese.h" // clang-format off /* Keymap for converting JIS to US */ diff --git a/keyboards/takashicompany/heavy_left/keymaps/default/keymap.c b/keyboards/takashicompany/heavy_left/keymaps/default/keymap.c index 31ac47c047..768c5f7875 100644 --- a/keyboards/takashicompany/heavy_left/keymaps/default/keymap.c +++ b/keyboards/takashicompany/heavy_left/keymaps/default/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines the keycodes used by our macros in process_record_user enum custom_keycodes { diff --git a/keyboards/takashicompany/heavy_left/keymaps/takashicompany/keymap.c b/keyboards/takashicompany/heavy_left/keymaps/takashicompany/keymap.c index 11beb28ca0..1833206af3 100644 --- a/keyboards/takashicompany/heavy_left/keymaps/takashicompany/keymap.c +++ b/keyboards/takashicompany/heavy_left/keymaps/takashicompany/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines the keycodes used by our macros in process_record_user enum custom_keycodes { diff --git a/keyboards/takashicompany/heavy_left/keymaps/via/keymap.c b/keyboards/takashicompany/heavy_left/keymaps/via/keymap.c index 796d27914d..b351d57c82 100644 --- a/keyboards/takashicompany/heavy_left/keymaps/via/keymap.c +++ b/keyboards/takashicompany/heavy_left/keymaps/via/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" // Defines the keycodes used by our macros in process_record_user enum custom_keycodes { diff --git a/keyboards/takashiski/namecard2x4/keymaps/brainfuck/keymap.c b/keyboards/takashiski/namecard2x4/keymaps/brainfuck/keymap.c index 28640db0fd..494c06bd73 100644 --- a/keyboards/takashiski/namecard2x4/keymaps/brainfuck/keymap.c +++ b/keyboards/takashiski/namecard2x4/keymaps/brainfuck/keymap.c @@ -14,7 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" enum Layer { diff --git a/keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c b/keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c index 509b497802..1332367f85 100644 --- a/keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c +++ b/keyboards/thevankeyboards/minivan/keymaps/like_jis/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H -#include "keymap_jp.h" +#include "keymap_japanese.h" extern keymap_config_t keymap_config; diff --git a/layouts/community/ergodox/ishigoya-jp/keymap.c b/layouts/community/ergodox/ishigoya-jp/keymap.c index c70cbba819..e9d89d1bbc 100644 --- a/layouts/community/ergodox/ishigoya-jp/keymap.c +++ b/layouts/community/ergodox/ishigoya-jp/keymap.c @@ -1,7 +1,7 @@ #include QMK_KEYBOARD_H #include "debug.h" #include "action_layer.h" -#include "keymap_jp.h" +#include "keymap_japanese.h" static uint16_t start; diff --git a/layouts/community/ergodox/kristian/keymap.c b/layouts/community/ergodox/kristian/keymap.c index c3bb9e047a..3fdccb790a 100644 --- a/layouts/community/ergodox/kristian/keymap.c +++ b/layouts/community/ergodox/kristian/keymap.c @@ -2,10 +2,10 @@ #include "debug.h" #include "action_layer.h" #include "version.h" -#include "keymap_fr_ch.h" +#include "keymap_swiss_fr.h" #include "keymap_french.h" #include "keymap_german.h" -#include "keymap_german_ch.h" +#include "keymap_swiss_de.h" #include "keymap_nordic.h" #include "keymap_norwegian.h" #include "keymap_spanish.h" diff --git a/layouts/community/ergodox/osx_de/keymap.c b/layouts/community/ergodox/osx_de/keymap.c index 581aecf2d3..5c3d7e49ea 100644 --- a/layouts/community/ergodox/osx_de/keymap.c +++ b/layouts/community/ergodox/osx_de/keymap.c @@ -1,7 +1,7 @@ #include QMK_KEYBOARD_H #include "debug.h" #include "action_layer.h" -#include "keymap_german_osx.h" +#include "keymap_german_mac_iso.h" #define BASE 0 #define SYMB 1 diff --git a/layouts/community/ergodox/osx_de_adnw_koy/keymap.c b/layouts/community/ergodox/osx_de_adnw_koy/keymap.c index 18335652ff..b8ffc2e51f 100644 --- a/layouts/community/ergodox/osx_de_adnw_koy/keymap.c +++ b/layouts/community/ergodox/osx_de_adnw_koy/keymap.c @@ -5,13 +5,13 @@ #include "keymap_neo2.h" #include "keymap_uk.h" #include "keymap_colemak.h" -#include "keymap_french_osx.h" +#include "keymap_french_mac_iso.h" #include "keymap_nordic.h" #include "keymap_dvorak.h" #include "keymap_german.h" #include "keymap_norwegian.h" -#include "keymap_fr_ch.h" -#include "keymap_german_osx.h" +#include "keymap_swiss_fr.h" +#include "keymap_german_mac_iso.h" #include "keymap_spanish.h" #include "keymap_bepo.h" diff --git a/layouts/community/ergodox/osx_de_experimental/keymap.c b/layouts/community/ergodox/osx_de_experimental/keymap.c index 17ca4362e6..8228b5e371 100644 --- a/layouts/community/ergodox/osx_de_experimental/keymap.c +++ b/layouts/community/ergodox/osx_de_experimental/keymap.c @@ -8,8 +8,8 @@ #include "keymap_dvorak.h" #include "keymap_german.h" #include "keymap_norwegian.h" -#include "keymap_fr_ch.h" -#include "keymap_german_osx.h" +#include "keymap_swiss_fr.h" +#include "keymap_german_mac_iso.h" #include "keymap_spanish.h" #include "keymap_bepo.h" diff --git a/layouts/community/ergodox/osx_fr/keymap.c b/layouts/community/ergodox/osx_fr/keymap.c index 924e9ee8ae..886e54208a 100644 --- a/layouts/community/ergodox/osx_fr/keymap.c +++ b/layouts/community/ergodox/osx_fr/keymap.c @@ -2,7 +2,7 @@ #include QMK_KEYBOARD_H #include "debug.h" #include "action_layer.h" -#include "keymap_french_osx.h" +#include "keymap_french_mac_iso.h" #define BASE 0 // default layer #define SYMB 1 // symbols diff --git a/layouts/default/60_abnt2/default_60_abnt2/keymap.c b/layouts/default/60_abnt2/default_60_abnt2/keymap.c index 00b9a8de26..2d64fc2dfc 100644 --- a/layouts/default/60_abnt2/default_60_abnt2/keymap.c +++ b/layouts/default/60_abnt2/default_60_abnt2/keymap.c @@ -1,6 +1,6 @@ #include QMK_KEYBOARD_H -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* diff --git a/quantum/keymap_extras/keymap_br_abnt2.h b/quantum/keymap_extras/keymap_brazilian_abnt2.h similarity index 100% rename from quantum/keymap_extras/keymap_br_abnt2.h rename to quantum/keymap_extras/keymap_brazilian_abnt2.h diff --git a/quantum/keymap_extras/keymap_dvp.h b/quantum/keymap_extras/keymap_dvorak_programmer.h similarity index 100% rename from quantum/keymap_extras/keymap_dvp.h rename to quantum/keymap_extras/keymap_dvorak_programmer.h diff --git a/quantum/keymap_extras/keymap_french_osx.h b/quantum/keymap_extras/keymap_french_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_french_osx.h rename to quantum/keymap_extras/keymap_french_mac_iso.h diff --git a/quantum/keymap_extras/keymap_german_osx.h b/quantum/keymap_extras/keymap_german_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_german_osx.h rename to quantum/keymap_extras/keymap_german_mac_iso.h diff --git a/quantum/keymap_extras/keymap_italian_osx_ansi.h b/quantum/keymap_extras/keymap_italian_mac_ansi.h similarity index 100% rename from quantum/keymap_extras/keymap_italian_osx_ansi.h rename to quantum/keymap_extras/keymap_italian_mac_ansi.h diff --git a/quantum/keymap_extras/keymap_italian_osx_iso.h b/quantum/keymap_extras/keymap_italian_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_italian_osx_iso.h rename to quantum/keymap_extras/keymap_italian_mac_iso.h diff --git a/quantum/keymap_extras/keymap_jp.h b/quantum/keymap_extras/keymap_japanese.h similarity index 100% rename from quantum/keymap_extras/keymap_jp.h rename to quantum/keymap_extras/keymap_japanese.h diff --git a/quantum/keymap_extras/keymap_portuguese_osx_iso.h b/quantum/keymap_extras/keymap_portuguese_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_portuguese_osx_iso.h rename to quantum/keymap_extras/keymap_portuguese_mac_iso.h diff --git a/quantum/keymap_extras/keymap_swedish_osx_ansi.h b/quantum/keymap_extras/keymap_swedish_mac_ansi.h similarity index 100% rename from quantum/keymap_extras/keymap_swedish_osx_ansi.h rename to quantum/keymap_extras/keymap_swedish_mac_ansi.h diff --git a/quantum/keymap_extras/keymap_swedish_osx_iso.h b/quantum/keymap_extras/keymap_swedish_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_swedish_osx_iso.h rename to quantum/keymap_extras/keymap_swedish_mac_iso.h diff --git a/quantum/keymap_extras/keymap_swedish_pro_osx_ansi.h b/quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h similarity index 100% rename from quantum/keymap_extras/keymap_swedish_pro_osx_ansi.h rename to quantum/keymap_extras/keymap_swedish_pro_mac_ansi.h diff --git a/quantum/keymap_extras/keymap_swedish_pro_osx_iso.h b/quantum/keymap_extras/keymap_swedish_pro_mac_iso.h similarity index 100% rename from quantum/keymap_extras/keymap_swedish_pro_osx_iso.h rename to quantum/keymap_extras/keymap_swedish_pro_mac_iso.h diff --git a/quantum/keymap_extras/keymap_german_ch.h b/quantum/keymap_extras/keymap_swiss_de.h similarity index 100% rename from quantum/keymap_extras/keymap_german_ch.h rename to quantum/keymap_extras/keymap_swiss_de.h diff --git a/quantum/keymap_extras/keymap_fr_ch.h b/quantum/keymap_extras/keymap_swiss_fr.h similarity index 100% rename from quantum/keymap_extras/keymap_fr_ch.h rename to quantum/keymap_extras/keymap_swiss_fr.h diff --git a/quantum/keymap_extras/sendstring_br_abnt2.h b/quantum/keymap_extras/sendstring_brazilian_abnt2.h similarity index 99% rename from quantum/keymap_extras/sendstring_br_abnt2.h rename to quantum/keymap_extras/sendstring_brazilian_abnt2.h index 1ca2d28592..b52ce4958a 100644 --- a/quantum/keymap_extras/sendstring_br_abnt2.h +++ b/quantum/keymap_extras/sendstring_brazilian_abnt2.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_br_abnt2.h" +#include "keymap_brazilian_abnt2.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_dvp.h b/quantum/keymap_extras/sendstring_dvorak_programmer.h similarity index 99% rename from quantum/keymap_extras/sendstring_dvp.h rename to quantum/keymap_extras/sendstring_dvorak_programmer.h index 74b595524d..f19bb6f4b2 100644 --- a/quantum/keymap_extras/sendstring_dvp.h +++ b/quantum/keymap_extras/sendstring_dvorak_programmer.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_dvp.h" +#include "keymap_dvorak_programmer.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_french_osx.h b/quantum/keymap_extras/sendstring_french_mac_iso.h similarity index 99% rename from quantum/keymap_extras/sendstring_french_osx.h rename to quantum/keymap_extras/sendstring_french_mac_iso.h index cc9b857cd0..1033c3991f 100644 --- a/quantum/keymap_extras/sendstring_french_osx.h +++ b/quantum/keymap_extras/sendstring_french_mac_iso.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_french_osx.h" +#include "keymap_french_mac_iso.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_german_osx.h b/quantum/keymap_extras/sendstring_german_mac_iso.h similarity index 99% rename from quantum/keymap_extras/sendstring_german_osx.h rename to quantum/keymap_extras/sendstring_german_mac_iso.h index d25c8c0995..8345dbaaa1 100644 --- a/quantum/keymap_extras/sendstring_german_osx.h +++ b/quantum/keymap_extras/sendstring_german_mac_iso.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_german_osx.h" +#include "keymap_german_mac_iso.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_italian_osx_ansi.h b/quantum/keymap_extras/sendstring_italian_mac_ansi.h similarity index 99% rename from quantum/keymap_extras/sendstring_italian_osx_ansi.h rename to quantum/keymap_extras/sendstring_italian_mac_ansi.h index c61874015f..97b5164e23 100644 --- a/quantum/keymap_extras/sendstring_italian_osx_ansi.h +++ b/quantum/keymap_extras/sendstring_italian_mac_ansi.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_italian_osx_ansi.h" +#include "keymap_italian_mac_ansi.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_italian_osx_iso.h b/quantum/keymap_extras/sendstring_italian_mac_iso.h similarity index 99% rename from quantum/keymap_extras/sendstring_italian_osx_iso.h rename to quantum/keymap_extras/sendstring_italian_mac_iso.h index eb5853b006..d82e8bbddf 100644 --- a/quantum/keymap_extras/sendstring_italian_osx_iso.h +++ b/quantum/keymap_extras/sendstring_italian_mac_iso.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_italian_osx_iso.h" +#include "keymap_italian_mac_iso.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_jis.h b/quantum/keymap_extras/sendstring_japanese.h similarity index 99% rename from quantum/keymap_extras/sendstring_jis.h rename to quantum/keymap_extras/sendstring_japanese.h index 58335ad41d..13628d7023 100644 --- a/quantum/keymap_extras/sendstring_jis.h +++ b/quantum/keymap_extras/sendstring_japanese.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_jp.h" +#include "keymap_japanese.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_portuguese_osx_iso.h b/quantum/keymap_extras/sendstring_portuguese_mac_iso.h similarity index 99% rename from quantum/keymap_extras/sendstring_portuguese_osx_iso.h rename to quantum/keymap_extras/sendstring_portuguese_mac_iso.h index f4ac1b37af..5d43c66279 100644 --- a/quantum/keymap_extras/sendstring_portuguese_osx_iso.h +++ b/quantum/keymap_extras/sendstring_portuguese_mac_iso.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_portuguese_osx_iso.h" +#include "keymap_portuguese_mac_iso.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_german_ch.h b/quantum/keymap_extras/sendstring_swiss_de.h similarity index 99% rename from quantum/keymap_extras/sendstring_german_ch.h rename to quantum/keymap_extras/sendstring_swiss_de.h index b8f7471247..f6aa19210c 100644 --- a/quantum/keymap_extras/sendstring_german_ch.h +++ b/quantum/keymap_extras/sendstring_swiss_de.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_german_ch.h" +#include "keymap_swiss_de.h" #include "quantum.h" // clang-format off diff --git a/quantum/keymap_extras/sendstring_fr_ch.h b/quantum/keymap_extras/sendstring_swiss_fr.h similarity index 99% rename from quantum/keymap_extras/sendstring_fr_ch.h rename to quantum/keymap_extras/sendstring_swiss_fr.h index 160a2efb05..665be6d7b4 100644 --- a/quantum/keymap_extras/sendstring_fr_ch.h +++ b/quantum/keymap_extras/sendstring_swiss_fr.h @@ -18,7 +18,7 @@ #pragma once -#include "keymap_fr_ch.h" +#include "keymap_swiss_fr.h" #include "quantum.h" // clang-format off diff --git a/users/sigul/sigul.c b/users/sigul/sigul.c index 16bcd411d9..725881ad8a 100644 --- a/users/sigul/sigul.c +++ b/users/sigul/sigul.c @@ -1,4 +1,4 @@ -#include "keymap_italian_osx_ansi.h" +#include "keymap_italian_mac_ansi.h" #include "sigul.h" __attribute__ ((weak)) From b7771ec25b96f2b88a7fa4201081e10ca6fbb9d4 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 15 May 2022 20:26:27 +0100 Subject: [PATCH 417/699] RESET -> QK_BOOT default keymaps (#17037) --- keyboards/0_sixty/keymaps/default/keymap.c | 2 +- keyboards/0_sixty/keymaps/via/keymap.c | 2 +- keyboards/0xcb/static/keymaps/default/keymap.c | 2 +- keyboards/0xcb/static/keymaps/via/keymap.c | 2 +- .../1up60hse/keymaps/default/keymap.c | 2 +- .../1upkeyboards/1up60hse/keymaps/via/keymap.c | 2 +- .../1up60hte/keymaps/default/keymap.c | 2 +- .../1upkeyboards/1up60hte/keymaps/via/keymap.c | 2 +- .../1up60rgb/keymaps/tsangan/keymap.c | 2 +- .../1upkeyboards/1up60rgb/keymaps/via/keymap.c | 2 +- .../1upkeyboards/super16/keymaps/via/keymap.c | 2 +- .../super16v2/keymaps/default/keymap.c | 2 +- .../1upkeyboards/super16v2/keymaps/via/keymap.c | 2 +- .../1upkeyboards/sweet16/keymaps/via/keymap.c | 2 +- .../25keys/aleth42/keymaps/default/keymap.c | 2 +- keyboards/25keys/aleth42/keymaps/via/keymap.c | 2 +- keyboards/25keys/zinc/keymaps/default/keymap.c | 2 +- keyboards/25keys/zinc/keymaps/via/keymap.c | 4 ++-- keyboards/30wer/keymaps/default/keymap.c | 2 +- .../40percentclub/4x4/keymaps/default/keymap.c | 4 ++-- keyboards/40percentclub/4x4/keymaps/via/keymap.c | 4 ++-- .../40percentclub/5x5/keymaps/default/keymap.c | 4 ++-- keyboards/40percentclub/5x5/keymaps/via/keymap.c | 4 ++-- .../foobar/keymaps/default/keymap.c | 2 +- .../gherkin/keymaps/default/keymap.c | 2 +- .../40percentclub/luddite/keymaps/via/keymap.c | 2 +- .../40percentclub/nein/keymaps/default/keymap.c | 2 +- .../40percentclub/nein/keymaps/via/keymap.c | 2 +- .../40percentclub/nori/keymaps/default/keymap.c | 2 +- .../tomato/keymaps/default/keymap.c | 2 +- keyboards/45_ats/keymaps/default/keymap.c | 2 +- keyboards/45_ats/keymaps/via/keymap.c | 2 +- .../4pplet/aekiso60/keymaps/default/keymap.c | 2 +- keyboards/4pplet/aekiso60/keymaps/via/keymap.c | 2 +- .../4pplet/bootleg/keymaps/default/keymap.c | 2 +- keyboards/4pplet/bootleg/keymaps/via/keymap.c | 2 +- .../eagle_viper_rep/keymaps/default/keymap.c | 2 +- .../4pplet/eagle_viper_rep/keymaps/via/keymap.c | 2 +- .../4pplet/steezy60/keymaps/default/keymap.c | 2 +- keyboards/4pplet/steezy60/keymaps/via/keymap.c | 2 +- .../4pplet/waffling60/keymaps/default/keymap.c | 2 +- keyboards/4pplet/waffling60/keymaps/via/keymap.c | 2 +- keyboards/4pplet/waffling80/keymaps/via/keymap.c | 6 +++--- .../4pplet/yakiimo/keymaps/default/keymap.c | 2 +- keyboards/4pplet/yakiimo/keymaps/via/keymap.c | 6 +++--- keyboards/8pack/keymaps/default/keymap.c | 2 +- .../acekeyboard/titan60/keymaps/default/keymap.c | 2 +- .../acekeyboard/titan60/keymaps/iso/keymap.c | 2 +- .../acekeyboard/titan60/keymaps/tsangan/keymap.c | 2 +- .../elongate/delta/keymaps/default/keymap.c | 2 +- .../acheron/elongate/delta/keymaps/via/keymap.c | 2 +- .../acheron/shark/alpha/keymaps/default/keymap.c | 2 +- .../acheron/shark/alpha/keymaps/via/keymap.c | 2 +- .../ada/ada1800mini/keymaps/default/keymap.c | 2 +- .../ada/infinity81/keymaps/default/keymap.c | 2 +- .../adpenrose/kintsugi/keymaps/default/keymap.c | 2 +- .../adpenrose/kintsugi/keymaps/via/keymap.c | 2 +- .../constellation/keymaps/default/keymap.c | 2 +- .../aeboards/ext65/keymaps/default/keymap.c | 2 +- keyboards/aeboards/ext65/keymaps/via/keymap.c | 2 +- .../breeze/keymaps/default/keymap.c | 2 +- .../afternoonlabs/breeze/keymaps/via/keymap.c | 2 +- .../oceanbreeze/keymaps/default/keymap.c | 2 +- .../southern_breeze/keymaps/default/keymap.c | 2 +- .../southern_breeze/keymaps/via/keymap.c | 2 +- .../summer_breeze/keymaps/default/keymap.c | 2 +- .../summer_breeze/keymaps/via/keymap.c | 2 +- keyboards/ai03/equinox/keymaps/default/keymap.c | 2 +- keyboards/ai03/jp60/keymaps/default/keymap.c | 2 +- keyboards/ai03/jp60/keymaps/via/keymap.c | 2 +- keyboards/ai03/lunar/keymaps/default/keymap.c | 2 +- keyboards/ai03/lunar/keymaps/via/keymap.c | 2 +- keyboards/ai03/orbit_x/keymaps/default/keymap.c | 2 +- keyboards/ai03/orbit_x/keymaps/via/keymap.c | 2 +- keyboards/ai03/polaris/keymaps/default/keymap.c | 2 +- .../keymaps/default_ansi_tsangan/keymap.c | 2 +- keyboards/ai03/quasar/keymaps/default/keymap.c | 2 +- keyboards/ai03/vega/keymaps/default/keymap.c | 2 +- keyboards/ai03/vega/keymaps/via/keymap.c | 2 +- .../ai03/voyager60_alps/keymaps/via/keymap.c | 2 +- keyboards/akb/eb46/keymaps/default/keymap.c | 2 +- keyboards/akb/raine/keymaps/default/keymap.c | 2 +- keyboards/al1/keymaps/default/keymap.c | 2 +- keyboards/al1/keymaps/via/keymap.c | 2 +- keyboards/alf/x11/keymaps/default/keymap.c | 2 +- keyboards/alf/x2/keymaps/default/keymap.c | 2 +- .../swift65/solder/keymaps/default/keymap.c | 2 +- .../swift65/solder/keymaps/via/keymap.c | 2 +- keyboards/alpha/keymaps/default/keymap.c | 2 +- .../amjkeyboard/amj40/keymaps/default/keymap.c | 2 +- .../amj40/keymaps/default_625u_space/keymap.c | 2 +- .../keymaps/default_ortho_275u_space/keymap.c | 2 +- .../keymaps/default_ortho_600u_space/keymap.c | 2 +- .../amjkeyboard/amj66/keymaps/default/keymap.c | 2 +- .../amjkeyboard/amj96/keymaps/default/keymap.c | 2 +- .../amjkeyboard/amjpad/keymaps/default/keymap.c | 2 +- keyboards/ano/keymaps/default/keymap.c | 2 +- .../anomalykb/a65i/keymaps/default/keymap.c | 2 +- keyboards/anomalykb/a65i/keymaps/iso/keymap.c | 2 +- keyboards/anomalykb/a65i/keymaps/via/keymap.c | 2 +- keyboards/aos/tkl/keymaps/default/keymap.c | 2 +- keyboards/aos/tkl/keymaps/via/keymap.c | 2 +- keyboards/aozora/keymaps/default/keymap.c | 2 +- .../aplyard/aplx6/rev1/keymaps/default/keymap.c | 4 ++-- keyboards/ares/keymaps/default/keymap.c | 2 +- keyboards/arisu/keymaps/default/keymap.c | 2 +- keyboards/arisu/keymaps/via/keymap.c | 2 +- keyboards/ash1800/keymaps/default/keymap.c | 2 +- keyboards/ash_xiix/keymaps/default/keymap.c | 2 +- .../atlantis/ak81_ve/keymaps/default/keymap.c | 2 +- keyboards/atlantis/ak81_ve/keymaps/via/keymap.c | 2 +- keyboards/atlas_65/keymaps/default/keymap.c | 2 +- keyboards/atlas_65/keymaps/via/keymap.c | 2 +- keyboards/atreus/keymaps/default/keymap.c | 2 +- keyboards/atreus/keymaps/via/keymap.c | 2 +- keyboards/atreus62/keymaps/default/keymap.c | 2 +- keyboards/atxkb/1894/keymaps/default/keymap.c | 2 +- .../1894/keymaps/default_ansi_tsangan/keymap.c | 2 +- .../foundation_gamma/keymaps/default/keymap.c | 2 +- .../foundation_gamma/keymaps/via/keymap.c | 6 +++--- keyboards/bacca70/keymaps/default/keymap.c | 2 +- keyboards/bacca70/keymaps/via/keymap.c | 6 +++--- keyboards/baguette/keymaps/default/keymap.c | 2 +- keyboards/baguette/keymaps/iso/keymap.c | 2 +- .../barleycorn_smd/keymaps/default/keymap.c | 2 +- keyboards/barleycorn_smd/keymaps/iso/keymap.c | 2 +- keyboards/barleycorn_smd/keymaps/via/keymap.c | 2 +- .../basekeys/slice/keymaps/default/keymap.c | 2 +- .../keymaps/default_split_left_space/keymap.c | 2 +- .../slice/rev1/keymaps/default_all/keymap.c | 2 +- .../keymaps/default_split_backspace/keymap.c | 2 +- .../basekeys/trifecta/keymaps/default/keymap.c | 2 +- keyboards/basekeys/trifecta/keymaps/via/keymap.c | 2 +- keyboards/basketweave/keymaps/default/keymap.c | 2 +- keyboards/basketweave/keymaps/via/keymap.c | 2 +- .../charybdis/3x5/keymaps/default/keymap.c | 4 ++-- .../bastardkb/charybdis/3x5/keymaps/via/keymap.c | 4 ++-- .../charybdis/4x6/keymaps/default/keymap.c | 4 ++-- .../bastardkb/charybdis/4x6/keymaps/via/keymap.c | 2 +- .../bastardkb/scylla/keymaps/default/keymap.c | 4 ++-- keyboards/bastardkb/tbk/keymaps/default/keymap.c | 4 ++-- .../bastardkb/tbkmini/keymaps/default/keymap.c | 2 +- keyboards/bear_face/v1/keymaps/default/keymap.c | 4 ++-- keyboards/bear_face/v2/keymaps/default/keymap.c | 4 ++-- .../bear_face/v2/keymaps/default_iso/keymap.c | 4 ++-- keyboards/bemeier/bmek/keymaps/default/keymap.c | 4 ++-- keyboards/bemeier/bmek/keymaps/via/keymap.c | 4 ++-- keyboards/bfake/keymaps/default/keymap.c | 2 +- .../ergo42/keymaps/default-illustrator/keymap.c | 2 +- .../ergo42/keymaps/default-underglow/keymap.c | 4 ++-- .../biacco42/ergo42/keymaps/default/keymap.c | 2 +- keyboards/bioi/g60/keymaps/default/keymap.c | 2 +- keyboards/bioi/g60/keymaps/via/keymap.c | 2 +- keyboards/bioi/g60ble/keymaps/via/keymap.c | 2 +- keyboards/bioi/morgan65/keymaps/default/keymap.c | 2 +- keyboards/bioi/morgan65/keymaps/via/keymap.c | 2 +- keyboards/blackplum/keymaps/default/keymap.c | 2 +- keyboards/blackplum/keymaps/via/keymap.c | 2 +- keyboards/blank/blank01/keymaps/default/keymap.c | 2 +- keyboards/blank/blank01/keymaps/via/keymap.c | 2 +- .../manibus/keymaps/default/keymap.c | 2 +- .../boardrun/bizarre/keymaps/default/keymap.c | 6 +++--- keyboards/boardrun/bizarre/keymaps/via/keymap.c | 6 +++--- .../boardrun/classic/keymaps/default/keymap.c | 8 ++++---- keyboards/boardrun/classic/keymaps/via/keymap.c | 4 ++-- .../boardsource/3x4/keymaps/default/keymap.c | 2 +- keyboards/boardsource/3x4/keymaps/via/keymap.c | 2 +- .../boardsource/4x12/keymaps/default/keymap.c | 2 +- keyboards/boardsource/4x12/keymaps/via/keymap.c | 2 +- .../boardsource/5x12/keymaps/default/keymap.c | 4 ++-- keyboards/boardsource/5x12/keymaps/via/keymap.c | 4 ++-- .../boardsource/microdox/keymaps/via/keymap.c | 2 +- .../technik_o/keymaps/default/keymap.c | 2 +- .../boardsource/technik_o/keymaps/via/keymap.c | 2 +- .../technik_s/keymaps/default/keymap.c | 2 +- .../boardsource/technik_s/keymaps/via/keymap.c | 2 +- .../the_mark/keymaps/default/keymap.c | 2 +- .../the_mark/keymaps/default_ansi/keymap.c | 2 +- .../keymaps/default_ansi_split_bs_space/keymap.c | 2 +- .../the_mark/keymaps/default_iso/keymap.c | 2 +- .../keymaps/default_iso_split_bs_space/keymap.c | 2 +- .../boardsource/the_mark/keymaps/via/keymap.c | 2 +- keyboards/boardwalk/keymaps/default/keymap.c | 4 ++-- .../boardwalk/keymaps/default_2u_arrow/keymap.c | 4 ++-- .../boardwalk/keymaps/default_2x2u/keymap.c | 8 ++++---- .../keymaps/default_625u_arrow/keymap.c | 4 ++-- .../boardwalk/keymaps/default_ortho_7u/keymap.c | 4 ++-- .../keymaps/default_ortho_hhkb/keymap.c | 4 ++-- keyboards/boardwalk/keymaps/via/keymap.c | 4 ++-- .../boston_meetup/2019/keymaps/default/keymap.c | 2 +- .../ghost_squid/keymaps/default/keymap.c | 2 +- .../pegasushoof/keymaps/default/keymap.c | 2 +- .../pegasushoof/keymaps/default_jis/keymap.c | 2 +- .../buildakb/potato65/keymaps/default/keymap.c | 2 +- keyboards/buildakb/potato65/keymaps/via/keymap.c | 2 +- .../buildakb/potato65hs/keymaps/default/keymap.c | 2 +- .../buildakb/potato65hs/keymaps/via/keymap.c | 2 +- .../buildakb/potato65s/keymaps/default/keymap.c | 2 +- .../buildakb/potato65s/keymaps/via/keymap.c | 2 +- .../cypher/rev6/keymaps/default/keymap.c | 2 +- .../cypher/rev6/keymaps/default_iso/keymap.c | 2 +- .../cypher/rev6/keymaps/via/keymap.c | 2 +- .../serpent65/keymaps/default/keymap.c | 2 +- .../caffeinated/serpent65/keymaps/via/keymap.c | 2 +- .../canary/canary60rgb/keymaps/default/keymap.c | 4 ++-- .../canary/canary60rgb/keymaps/via/keymap.c | 4 ++-- .../cannonkeys/adelie/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/adelie/keymaps/via/keymap.c | 2 +- .../cannonkeys/aella/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/aella/keymaps/via/keymap.c | 2 +- .../cannonkeys/an_c/keymaps/default/keymap.c | 2 +- .../cannonkeys/an_c/keymaps/tsangan/keymap.c | 2 +- keyboards/cannonkeys/an_c/keymaps/via/keymap.c | 2 +- .../cannonkeys/atlas/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/atlas/keymaps/via/keymap.c | 2 +- .../atlas_alps/keymaps/default/keymap.c | 4 ++-- .../cannonkeys/atlas_alps/keymaps/via/keymap.c | 4 ++-- .../cannonkeys/balance/keymaps/default/keymap.c | 2 +- .../cannonkeys/balance/keymaps/via/keymap.c | 2 +- .../chimera65/keymaps/default/keymap.c | 2 +- .../cannonkeys/chimera65/keymaps/via/keymap.c | 2 +- .../cannonkeys/db60/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/db60/keymaps/iso/keymap.c | 2 +- .../cannonkeys/db60/keymaps/tsangan/keymap.c | 2 +- keyboards/cannonkeys/db60/keymaps/via/keymap.c | 2 +- .../devastatingtkl/keymaps/default/keymap.c | 2 +- .../devastatingtkl/keymaps/via/keymap.c | 2 +- .../cannonkeys/hoodrowg/keymaps/default/keymap.c | 2 +- .../cannonkeys/hoodrowg/keymaps/via/keymap.c | 2 +- .../instant60/keymaps/default/keymap.c | 2 +- .../instant60/keymaps/tsangan/keymap.c | 2 +- .../cannonkeys/instant60/keymaps/via/keymap.c | 2 +- .../instant65/keymaps/default/keymap.c | 2 +- .../cannonkeys/instant65/keymaps/via/keymap.c | 2 +- .../cannonkeys/iron165/keymaps/default/keymap.c | 2 +- .../obliterated75/keymaps/default/keymap.c | 2 +- .../obliterated75/keymaps/via/keymap.c | 2 +- .../cannonkeys/onyx/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/onyx/keymaps/via/keymap.c | 2 +- .../cannonkeys/ortho48/keymaps/default/keymap.c | 2 +- .../cannonkeys/ortho48/keymaps/via/keymap.c | 2 +- .../cannonkeys/ortho60/keymaps/default/keymap.c | 2 +- .../cannonkeys/ortho60/keymaps/via/keymap.c | 2 +- .../cannonkeys/ortho75/keymaps/default/keymap.c | 4 ++-- .../cannonkeys/practice60/keymaps/via/keymap.c | 2 +- .../practice65/keymaps/default/keymap.c | 2 +- .../cannonkeys/rekt1800/keymaps/default/keymap.c | 2 +- .../cannonkeys/rekt1800/keymaps/via/keymap.c | 2 +- .../sagittarius/keymaps/default/keymap.c | 2 +- .../cannonkeys/sagittarius/keymaps/via/keymap.c | 2 +- .../satisfaction75/keymaps/default/keymap.c | 2 +- .../satisfaction75/keymaps/via/keymap.c | 2 +- .../cannonkeys/savage65/keymaps/default/keymap.c | 2 +- .../cannonkeys/savage65/keymaps/via/keymap.c | 2 +- .../cannonkeys/tmov2/keymaps/default/keymap.c | 2 +- keyboards/cannonkeys/tmov2/keymaps/via/keymap.c | 2 +- .../tsukuyomi/keymaps/default/keymap.c | 2 +- .../cannonkeys/tsukuyomi/keymaps/via/keymap.c | 2 +- .../vicious40/keymaps/default/keymap.c | 2 +- .../cannonkeys/vicious40/keymaps/via/keymap.c | 2 +- .../capsunlocked/cu24/keymaps/default/keymap.c | 2 +- .../capsunlocked/cu65/keymaps/default/keymap.c | 2 +- keyboards/capsunlocked/cu65/keymaps/iso/keymap.c | 2 +- keyboards/capsunlocked/cu65/keymaps/via/keymap.c | 2 +- .../capsunlocked/cu7/keymaps/default/keymap.c | 2 +- .../capsunlocked/cu75/keymaps/default/keymap.c | 4 ++-- keyboards/capsunlocked/cu75/keymaps/iso/keymap.c | 2 +- .../cu80/v2_ansi/keymaps/default/keymap.c | 2 +- .../cu80/v2_ansi/keymaps/via/keymap.c | 2 +- .../cu80/v2_iso/keymaps/default/keymap.c | 2 +- .../cu80/v2_iso/keymaps/via/keymap.c | 2 +- keyboards/cest73/tkm/keymaps/default/keymap.c | 2 +- keyboards/chalice/keymaps/default/keymap.c | 2 +- keyboards/chalice/keymaps/via/keymap.c | 2 +- keyboards/charue/charon/keymaps/default/keymap.c | 2 +- keyboards/charue/charon/keymaps/via/keymap.c | 2 +- .../axon40/keymaps/default/keymap.c | 4 ++-- .../checkerboards/axon40/keymaps/via/keymap.c | 4 ++-- .../candybar_ortho/keymaps/default/keymap.c | 8 ++++---- .../candybar_ortho/keymaps/via/keymap.c | 8 ++++---- .../g_idb60/keymaps/default/keymap.c | 8 ++++---- .../checkerboards/g_idb60/keymaps/via/keymap.c | 8 ++++---- .../checkerboards/nop60/keymaps/default/keymap.c | 8 ++++---- .../checkerboards/nop60/keymaps/via/keymap.c | 6 +++--- .../phoenix45_ortho/keymaps/default/keymap.c | 2 +- .../phoenix45_ortho/keymaps/via/keymap.c | 4 ++-- .../plexus75/keymaps/default/keymap.c | 12 ++++++------ .../plexus75/keymaps/default_3u/keymap.c | 12 ++++++------ .../plexus75/keymaps/default_7u/keymap.c | 4 ++-- .../checkerboards/plexus75/keymaps/via/keymap.c | 12 ++++++------ .../plexus75_he/keymaps/default/keymap.c | 12 ++++++------ .../plexus75_he/keymaps/via/keymap.c | 16 ++++++++-------- .../pursuit40/keymaps/default/keymap.c | 4 ++-- .../checkerboards/pursuit40/keymaps/via/keymap.c | 4 ++-- .../checkerboards/quark/keymaps/default/keymap.c | 4 ++-- .../quark/keymaps/default_4x12/keymap.c | 4 ++-- .../quark/keymaps/default_4x12_2x225u/keymap.c | 4 ++-- .../quark/keymaps/default_4x12_2x3u/keymap.c | 4 ++-- .../quark/keymaps/default_5x12_2x3u/keymap.c | 4 ++-- .../quark/keymaps/default_mit/keymap.c | 4 ++-- .../checkerboards/quark/keymaps/via/keymap.c | 4 ++-- .../quark_lp/keymaps/default/keymap.c | 4 ++-- .../checkerboards/quark_lp/keymaps/via/keymap.c | 8 ++++---- .../quark_plus/keymaps/default/keymap.c | 4 ++-- .../quark_plus/keymaps/via/keymap.c | 6 +++--- .../quark_squared/keymaps/default/keymap.c | 4 ++-- .../quark_squared/keymaps/via/keymap.c | 8 ++++---- .../ud40_ortho_alt/keymaps/default/keymap.c | 8 ++++---- .../ud40_ortho_alt/keymaps/via/keymap.c | 4 ++-- .../cb1800/keymaps/default/keymap.c | 2 +- .../cherrybstudio/cb1800/keymaps/via/keymap.c | 2 +- .../cb87rgb/keymaps/default/keymap.c | 2 +- .../cheshire/curiosity/keymaps/default/keymap.c | 4 ++-- .../chickenman/ciel/keymaps/default/keymap.c | 2 +- keyboards/chickenman/ciel/keymaps/via/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/ansi/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/default/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/iso/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/tsangan/keymap.c | 2 +- keyboards/chlx/merro60/keymaps/via/keymap.c | 2 +- .../ckeys/handwire_101/keymaps/default/keymap.c | 4 ++-- keyboards/ckeys/obelus/keymaps/default/keymap.c | 4 ++-- keyboards/ckeys/thedora/keymaps/default/keymap.c | 4 ++-- .../ckeys/washington/keymaps/default/keymap.c | 2 +- .../clawsome/coupe/keymaps/default/keymap.c | 2 +- .../clawsome/sedan/keymaps/default/keymap.c | 2 +- keyboards/clueboard/60/keymaps/default/keymap.c | 2 +- .../clueboard/60/keymaps/default_aek/keymap.c | 2 +- keyboards/clueboard/66/keymaps/default/keymap.c | 2 +- keyboards/clueboard/66/keymaps/via/keymap.c | 2 +- .../66_hotswap/gen1/keymaps/default/keymap.c | 2 +- .../prototype/keymaps/default/keymap.c | 2 +- .../coarse/cordillera/keymaps/default/keymap.c | 2 +- keyboards/coarse/cordillera/keymaps/via/keymap.c | 2 +- keyboards/coarse/ixora/keymaps/default/keymap.c | 4 ++-- keyboards/coarse/vinta/keymaps/default/keymap.c | 2 +- keyboards/compound/keymaps/default/keymap.c | 2 +- keyboards/compound/keymaps/via/keymap.c | 2 +- keyboards/contender/keymaps/default/keymap.c | 2 +- keyboards/contra/keymaps/default/keymap.c | 2 +- keyboards/contra/keymaps/via/keymap.c | 2 +- .../converter/a1200/keymaps/default/keymap.c | 2 +- .../converter/m0110_usb/keymaps/default/keymap.c | 2 +- .../discipline/keymaps/default/keymap.c | 2 +- .../discipline/keymaps/iso/keymap.c | 2 +- .../discipline/keymaps/via/keymap.c | 2 +- .../mullet/keymaps/default/keymap.c | 4 ++-- .../mysterium/keymaps/default/keymap.c | 2 +- .../mysterium/keymaps/iso/keymap.c | 2 +- .../mysterium/keymaps/via/keymap.c | 2 +- .../romeo/keymaps/default/keymap.c | 2 +- .../coseyfannitutti/romeo/keymaps/via/keymap.c | 2 +- .../cozykeys/bloomer/v2/keymaps/default/keymap.c | 2 +- .../cozykeys/bloomer/v3/keymaps/default/keymap.c | 2 +- .../cozykeys/speedo/v3/keymaps/default/keymap.c | 2 +- keyboards/cradio/keymaps/default/keymap.c | 2 +- keyboards/craftwalk/keymaps/default/keymap.c | 2 +- keyboards/crawlpad/keymaps/default/keymap.c | 2 +- .../crazy_keyboard_68/keymaps/default/keymap.c | 2 +- keyboards/crbn/keymaps/default/keymap.c | 2 +- keyboards/crbn/keymaps/via/keymap.c | 2 +- .../creatkeebs/glacier/keymaps/via/keymap.c | 6 +++--- keyboards/crin/keymaps/default/keymap.c | 2 +- keyboards/crin/keymaps/via/keymap.c | 2 +- keyboards/crkbd/keymaps/default/keymap.c | 2 +- keyboards/crkbd/keymaps/via/keymap.c | 2 +- .../cutie_club/borsdorf/keymaps/default/keymap.c | 2 +- .../cutie_club/borsdorf/keymaps/via/keymap.c | 2 +- .../cutie_club/wraith/keymaps/default/keymap.c | 2 +- keyboards/cx60/keymaps/default/keymap.c | 2 +- keyboards/cx60/keymaps/via/keymap.c | 2 +- .../dailycraft/claw44/keymaps/default/keymap.c | 4 ++-- keyboards/dailycraft/claw44/keymaps/via/keymap.c | 4 ++-- .../wings42/rev1/keymaps/default/keymap.c | 4 ++-- .../dailycraft/wings42/rev1/keymaps/via/keymap.c | 4 ++-- .../rev1_extkeys/keymaps/default/keymap.c | 4 ++-- .../wings42/rev1_extkeys/keymaps/via/keymap.c | 4 ++-- .../wings42/rev2/keymaps/default/keymap.c | 4 ++-- .../dailycraft/wings42/rev2/keymaps/via/keymap.c | 4 ++-- .../daji/seis_cinco/keymaps/default/keymap.c | 2 +- keyboards/daji/seis_cinco/keymaps/via/keymap.c | 2 +- keyboards/db/db63/keymaps/default/keymap.c | 2 +- .../flatbread60/keymaps/default/keymap.c | 2 +- .../delikeeb/flatbread60/keymaps/via/keymap.c | 2 +- .../vaguettelite/keymaps/default/keymap.c | 2 +- .../keymaps/default_625u_universal/keymap.c | 2 +- .../delikeeb/vaguettelite/keymaps/via/keymap.c | 2 +- .../delikeeb/vanana/keymaps/default/keymap.c | 4 ++-- keyboards/delikeeb/vanana/keymaps/via/keymap.c | 2 +- .../delikeeb/vaneela/keymaps/default/keymap.c | 2 +- keyboards/delikeeb/vaneela/keymaps/via/keymap.c | 2 +- .../delikeeb/vaneelaex/keymaps/default/keymap.c | 2 +- .../delikeeb/vaneelaex/keymaps/via/keymap.c | 2 +- .../delikeeb/waaffle/keymaps/default/keymap.c | 2 +- keyboards/delikeeb/waaffle/keymaps/via/keymap.c | 2 +- keyboards/deltasplit75/keymaps/default/keymap.c | 2 +- .../dm9records/lain/keymaps/default/keymap.c | 2 +- keyboards/dm9records/lain/keymaps/via/keymap.c | 2 +- .../dm9records/plaid/keymaps/default/keymap.c | 2 +- keyboards/do60/keymaps/default/keymap.c | 2 +- keyboards/do60/keymaps/via/keymap.c | 2 +- .../budget96/keymaps/default/keymap.c | 2 +- .../donutcables/budget96/keymaps/via/keymap.c | 2 +- .../doodboard/duckboard/keymaps/default/keymap.c | 2 +- .../duckboard_r2/keymaps/default/keymap.c | 4 ++-- .../doodboard/duckboard_r2/keymaps/via/keymap.c | 4 ++-- keyboards/doro67/multi/keymaps/default/keymap.c | 2 +- .../doro67/multi/keymaps/default_iso/keymap.c | 2 +- .../doro67/multi/keymaps/default_multi/keymap.c | 2 +- keyboards/doro67/multi/keymaps/via/keymap.c | 2 +- .../doro67/regular/keymaps/default/keymap.c | 2 +- keyboards/doro67/regular/keymaps/via/keymap.c | 2 +- keyboards/doro67/rgb/keymaps/default/keymap.c | 2 +- keyboards/doro67/rgb/keymaps/via/keymap.c | 2 +- keyboards/dp60/keymaps/default/keymap.c | 2 +- keyboards/dp60/keymaps/via/keymap.c | 2 +- keyboards/draculad/keymaps/default/keymap.c | 4 ++-- .../draytronics/daisy/keymaps/default/keymap.c | 2 +- .../draytronics/elise/keymaps/default/keymap.c | 4 ++-- .../elise/keymaps/default_iso/keymap.c | 4 ++-- .../elise_v2/keymaps/default/keymap.c | 4 ++-- .../elise_v2/keymaps/default_iso/keymap.c | 4 ++-- keyboards/drewkeys/iskar/keymaps/via/keymap.c | 2 +- .../dtisaac/dosa40rgb/keymaps/default/keymap.c | 2 +- .../dtisaac/dtisaac01/keymaps/default/keymap.c | 2 +- keyboards/dtisaac/dtisaac01/keymaps/via/keymap.c | 6 +++--- .../duck/eagle_viper/v2/keymaps/default/keymap.c | 2 +- .../duck/eagle_viper/v2/keymaps/via/keymap.c | 2 +- .../duck/lightsaver/keymaps/default/keymap.c | 2 +- keyboards/duck/octagon/keymaps/default/keymap.c | 2 +- keyboards/duck/orion/v3/keymaps/default/keymap.c | 2 +- keyboards/duck/tcv3/keymaps/default/keymap.c | 2 +- keyboards/duck/tcv3/keymaps/via/keymap.c | 2 +- keyboards/dumbo/keymaps/default/keymap.c | 4 ++-- keyboards/dumbpad/v0x/keymaps/default/keymap.c | 2 +- .../v0x_dualencoder/keymaps/default/keymap.c | 2 +- .../dumbpad/v0x_right/keymaps/default/keymap.c | 2 +- keyboards/dumbpad/v1x/keymaps/default/keymap.c | 2 +- .../v1x_dualencoder/keymaps/default/keymap.c | 2 +- .../dumbpad/v1x_right/keymaps/default/keymap.c | 2 +- keyboards/dz60/keymaps/default/keymap.c | 2 +- keyboards/dz60/keymaps/via/keymap.c | 2 +- keyboards/dztech/duo_s/keymaps/default/keymap.c | 2 +- keyboards/dztech/duo_s/keymaps/via/keymap.c | 2 +- .../dztech/dz60rgb/keymaps/default/keymap.c | 4 ++-- keyboards/dztech/dz60rgb/keymaps/via/keymap.c | 4 ++-- .../dztech/dz60rgb_ansi/keymaps/default/keymap.c | 4 ++-- .../dztech/dz60rgb_ansi/keymaps/via/keymap.c | 4 ++-- .../dztech/dz60rgb_wkl/keymaps/default/keymap.c | 4 ++-- .../dztech/dz60rgb_wkl/keymaps/via/keymap.c | 4 ++-- .../dztech/dz64rgb/keymaps/default/keymap.c | 4 ++-- keyboards/dztech/dz64rgb/keymaps/via/keymap.c | 4 ++-- .../dztech/dz65rgb/keymaps/default/keymap.c | 2 +- keyboards/dztech/dz65rgb/keymaps/via/keymap.c | 2 +- keyboards/dztech/dz96/keymaps/default/keymap.c | 2 +- keyboards/dztech/dz96/keymaps/iso/keymap.c | 2 +- keyboards/dztech/dz96/keymaps/via/keymap.c | 2 +- keyboards/e88/keymaps/default/keymap.c | 4 ++-- keyboards/e88/keymaps/via/keymap.c | 8 ++++---- .../ealdin/quadrant/keymaps/default/keymap.c | 2 +- keyboards/ealdin/quadrant/keymaps/via/keymap.c | 2 +- .../eason/capsule65/keymaps/default/keymap.c | 2 +- keyboards/eason/capsule65/keymaps/via/keymap.c | 6 +++--- .../isometria_75/rev1/keymaps/default/keymap.c | 2 +- .../isometria_75/rev1/keymaps/via/keymap.c | 2 +- keyboards/eco/keymaps/default/keymap.c | 4 ++-- keyboards/edda/keymaps/default/keymap.c | 2 +- .../edi/hardlight/mk1/keymaps/default/keymap.c | 2 +- .../edi/hardlight/mk2/keymaps/default/keymap.c | 2 +- .../edi/standaside/keymaps/default/keymap.c | 2 +- keyboards/eek/keymaps/default/keymap.c | 2 +- keyboards/ein_60/keymaps/default/keymap.c | 4 ++-- keyboards/emajesty/eiri/keymaps/default/keymap.c | 2 +- keyboards/emi20/keymaps/default/keymap.c | 2 +- keyboards/ep/40/keymaps/default/keymap.c | 2 +- keyboards/epoch80/keymaps/default/keymap.c | 2 +- keyboards/epoch80/keymaps/iso/keymap.c | 2 +- keyboards/epoch80/keymaps/tsangan/keymap.c | 2 +- keyboards/epoch80/keymaps/via/keymap.c | 6 +++--- keyboards/epoch80/keymaps/wkl/keymap.c | 2 +- keyboards/ergoslab/keymaps/default/keymap.c | 2 +- keyboards/ergotravel/keymaps/default/keymap.c | 2 +- .../esca/getawayvan/keymaps/default/keymap.c | 2 +- keyboards/esca/getawayvan/keymaps/via/keymap.c | 2 +- .../getawayvan_f042/keymaps/default/keymap.c | 2 +- .../eternal_keypad/keymaps/default/keymap.c | 2 +- keyboards/eternal_keypad/keymaps/via/keymap.c | 2 +- keyboards/eve/meteor/keymaps/default/keymap.c | 2 +- keyboards/eve/meteor/keymaps/via/keymap.c | 2 +- keyboards/evyd13/atom47/keymaps/default/keymap.c | 4 ++-- keyboards/evyd13/atom47/keymaps/via/keymap.c | 4 ++-- keyboards/evyd13/eon40/keymaps/default/keymap.c | 2 +- keyboards/evyd13/eon40/keymaps/via/keymap.c | 2 +- keyboards/evyd13/eon65/keymaps/default/keymap.c | 2 +- keyboards/evyd13/eon65/keymaps/via/keymap.c | 2 +- keyboards/evyd13/eon75/keymaps/default/keymap.c | 2 +- keyboards/evyd13/eon75/keymaps/via/keymap.c | 2 +- keyboards/evyd13/eon95/keymaps/default/keymap.c | 2 +- keyboards/evyd13/eon95/keymaps/via/keymap.c | 2 +- keyboards/evyd13/gud70/keymaps/default/keymap.c | 2 +- keyboards/evyd13/gud70/keymaps/via/keymap.c | 2 +- .../evyd13/minitomic/keymaps/default/keymap.c | 2 +- keyboards/evyd13/mx5160/keymaps/default/keymap.c | 2 +- .../evyd13/plain60/keymaps/default/keymap.c | 2 +- .../evyd13/pockettype/keymaps/default/keymap.c | 2 +- .../evyd13/quackfire/keymaps/default/keymap.c | 2 +- keyboards/evyd13/quackfire/keymaps/via/keymap.c | 2 +- .../evyd13/solheim68/keymaps/default/keymap.c | 2 +- keyboards/evyd13/ta65/keymaps/default/keymap.c | 2 +- keyboards/evyd13/wasdat/keymaps/via/keymap.c | 2 +- .../evyd13/wasdat_code/keymaps/default/keymap.c | 2 +- .../evyd13/wasdat_code/keymaps/via/keymap.c | 2 +- .../evyd13/wonderland/keymaps/default/keymap.c | 2 +- keyboards/evyd13/wonderland/keymaps/via/keymap.c | 2 +- keyboards/exclusive/e65/keymaps/default/keymap.c | 2 +- .../exclusive/e65/keymaps/default_iso/keymap.c | 2 +- keyboards/exclusive/e65/keymaps/via/keymap.c | 2 +- .../exclusive/e6_rgb/keymaps/default/keymap.c | 2 +- keyboards/exclusive/e6_rgb/keymaps/via/keymap.c | 2 +- .../e6v2/le_bmc/keymaps/default/keymap.c | 2 +- .../exclusive/e6v2/le_bmc/keymaps/via/keymap.c | 2 +- .../exclusive/e6v2/oe/keymaps/default/keymap.c | 2 +- .../e6v2/oe_bmc/keymaps/default/keymap.c | 2 +- .../exclusive/e6v2/oe_bmc/keymaps/via/keymap.c | 2 +- .../exclusive/e7v1/keymaps/default/keymap.c | 2 +- keyboards/exclusive/e7v1/keymaps/via/keymap.c | 2 +- .../exclusive/e7v1se/keymaps/default/keymap.c | 2 +- .../e85/hotswap/keymaps/default/keymap.c | 2 +- .../e85/hotswap/keymaps/tsangan/keymap.c | 2 +- .../exclusive/e85/hotswap/keymaps/via/keymap.c | 2 +- .../e85/soldered/keymaps/default/keymap.c | 2 +- .../exclusive/e85/soldered/keymaps/via/keymap.c | 2 +- keyboards/exent/keymaps/default/keymap.c | 2 +- keyboards/exent/keymaps/via/keymap.c | 2 +- .../eyeohdesigns/babyv/keymaps/default/keymap.c | 4 ++-- .../eyeohdesigns/sprh/keymaps/default/keymap.c | 2 +- .../theboulevard/keymaps/default/keymap.c | 2 +- keyboards/facew/keymaps/default/keymap.c | 2 +- keyboards/fallacy/keymaps/default/keymap.c | 2 +- .../fallacy/keymaps/default_split_bs/keymap.c | 2 +- keyboards/fallacy/keymaps/via/keymap.c | 2 +- keyboards/fc660c/keymaps/default_rgb/keymap.c | 2 +- keyboards/feels/feels65/keymaps/default/keymap.c | 2 +- keyboards/feels/feels65/keymaps/via/keymap.c | 2 +- keyboards/ferris/keymaps/via/keymap.c | 2 +- keyboards/fjlabs/ad65/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/ad65/keymaps/via/keymap.c | 2 +- keyboards/fjlabs/bks65/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/bks65/keymaps/via/keymap.c | 2 +- .../fjlabs/bks65solder/keymaps/default/keymap.c | 2 +- .../fjlabs/bks65solder/keymaps/via/keymap.c | 2 +- keyboards/fjlabs/kyuu/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/kyuu/keymaps/via/keymap.c | 2 +- keyboards/fjlabs/ldk65/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/ldk65/keymaps/via/keymap.c | 2 +- .../fjlabs/midway60/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/midway60/keymaps/via/keymap.c | 2 +- .../fjlabs/mk61rgbansi/keymaps/default/keymap.c | 2 +- .../fjlabs/mk61rgbansi/keymaps/via/keymap.c | 2 +- .../fjlabs/polaris/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/polaris/keymaps/via/keymap.c | 2 +- .../fjlabs/ready100/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/ready100/keymaps/via/keymap.c | 2 +- .../fjlabs/tf60ansi/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/tf60ansi/keymaps/via/keymap.c | 2 +- keyboards/fjlabs/tf60v2/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/tf60v2/keymaps/via/keymap.c | 2 +- .../fjlabs/tf65rgbv2/keymaps/default/keymap.c | 2 +- keyboards/fjlabs/tf65rgbv2/keymaps/via/keymap.c | 2 +- keyboards/fleuron/keymaps/default/keymap.c | 4 ++-- keyboards/flx/virgo/keymaps/default/keymap.c | 2 +- keyboards/flx/virgo/keymaps/via/keymap.c | 2 +- .../flygone60/rev3/keymaps/default/keymap.c | 2 +- keyboards/flygone60/rev3/keymaps/via/keymap.c | 2 +- keyboards/for_science/keymaps/default/keymap.c | 2 +- keyboards/forever65/keymaps/via/keymap.c | 2 +- keyboards/fortitude60/keymaps/default/keymap.c | 2 +- keyboards/fortitude60/keymaps/via/keymap.c | 2 +- .../key65/hotswap/keymaps/default/keymap.c | 2 +- .../foxlab/key65/hotswap/keymaps/via/keymap.c | 2 +- .../key65/universal/keymaps/default/keymap.c | 2 +- .../foxlab/key65/universal/keymaps/via/keymap.c | 2 +- .../leaf60/hotswap/keymaps/default/keymap.c | 2 +- .../foxlab/leaf60/hotswap/keymaps/via/keymap.c | 2 +- .../leaf60/universal/keymaps/default/keymap.c | 2 +- .../foxlab/leaf60/universal/keymaps/via/keymap.c | 2 +- keyboards/foxlab/time80/keymaps/default/keymap.c | 2 +- .../time_re/hotswap/keymaps/default/keymap.c | 2 +- .../foxlab/time_re/hotswap/keymaps/via/keymap.c | 2 +- .../time_re/universal/keymaps/default/keymap.c | 2 +- .../time_re/universal/keymaps/via/keymap.c | 2 +- keyboards/fractal/keymaps/default/keymap.c | 2 +- keyboards/free_willy/keymaps/default/keymap.c | 2 +- .../frooastboard/nano/keymaps/default/keymap.c | 2 +- keyboards/funky40/keymaps/default/keymap.c | 2 +- .../gami_studio/lex60/keymaps/default/keymap.c | 2 +- keyboards/gentleman65/keymaps/default/keymap.c | 2 +- keyboards/gentleman65/keymaps/via/keymap.c | 2 +- .../genesis/hotswap/keymaps/default/keymap.c | 2 +- .../genesis/hotswap/keymaps/via/keymap.c | 2 +- .../genesis/solder/keymaps/default/keymap.c | 2 +- .../genesis/solder/keymaps/via/keymap.c | 2 +- keyboards/gh60/revc/keymaps/via/keymap.c | 2 +- keyboards/gh60/satan/keymaps/default/keymap.c | 2 +- keyboards/gh60/satan/keymaps/via/keymap.c | 2 +- keyboards/gh60/v1p3/keymaps/default/keymap.c | 2 +- .../gh60/v1p3/keymaps/default_ansi/keymap.c | 2 +- .../gh60/v1p3/keymaps/default_ansi/readme.md | 2 +- keyboards/ghs/rar/keymaps/via/keymap.c | 2 +- .../gkeyboard/gkb_m16/keymaps/default/keymap.c | 2 +- keyboards/gkeyboard/gkb_m16/keymaps/via/keymap.c | 2 +- keyboards/gl516/a52gl/keymaps/default/keymap.c | 2 +- keyboards/gl516/a52gl/keymaps/via/keymap.c | 2 +- keyboards/gl516/j73gl/keymaps/default/keymap.c | 2 +- keyboards/gl516/j73gl/keymaps/via/keymap.c | 2 +- keyboards/gl516/n51gl/keymaps/default/keymap.c | 2 +- keyboards/gl516/n51gl/keymaps/via/keymap.c | 2 +- keyboards/gmmk/pro/ansi/keymaps/default/keymap.c | 4 ++-- keyboards/gmmk/pro/ansi/keymaps/via/keymap.c | 4 ++-- keyboards/gmmk/pro/iso/keymaps/default/keymap.c | 4 ++-- keyboards/gmmk/pro/iso/keymaps/via/keymap.c | 4 ++-- keyboards/gon/nerd60/keymaps/default/keymap.c | 4 ++-- keyboards/gon/nerd60/keymaps/via/keymap.c | 4 ++-- keyboards/gon/nerdtkl/keymaps/default/keymap.c | 2 +- keyboards/gowla/keymaps/default/keymap.c | 2 +- .../apollo80/keymaps/default/keymap.c | 2 +- .../gray_studio/apollo80/keymaps/via/keymap.c | 2 +- keyboards/gray_studio/cod67/keymaps/via/keymap.c | 2 +- .../gray_studio/hb85/keymaps/default/keymap.c | 2 +- keyboards/gray_studio/hb85/keymaps/via/keymap.c | 2 +- .../gray_studio/space65/keymaps/iso/keymap.c | 2 +- .../gray_studio/space65/keymaps/via/keymap.c | 2 +- .../think65/hotswap/keymaps/default/keymap.c | 2 +- .../think65/hotswap/keymaps/via/keymap.c | 2 +- .../think65/solder/keymaps/default/keymap.c | 2 +- .../think65/solder/keymaps/via/keymap.c | 2 +- keyboards/hadron/ver2/keymaps/default/keymap.c | 2 +- keyboards/hadron/ver3/keymaps/default/keymap.c | 2 +- keyboards/han60/keymaps/default/keymap.c | 2 +- keyboards/han60/keymaps/via/keymap.c | 2 +- .../handwired/3dfoxc/keymaps/default/keymap.c | 2 +- .../handwired/3dp660/keymaps/default/keymap.c | 2 +- keyboards/handwired/3dp660/keymaps/via/keymap.c | 2 +- .../handwired/412_64/keymaps/default/keymap.c | 2 +- .../handwired/6macro/keymaps/default/keymap.c | 6 +++--- .../handwired/aek64/keymaps/default/keymap.c | 2 +- .../handwired/amigopunk/keymaps/default/keymap.c | 2 +- .../handwired/aranck/keymaps/default/keymap.c | 2 +- .../handwired/arrow_pad/keymaps/default/keymap.c | 2 +- .../handwired/atreus50/keymaps/default/keymap.c | 2 +- .../baredev/rev1/keymaps/default/keymap.c | 2 +- .../handwired/baredev/rev1/keymaps/via/keymap.c | 2 +- .../battleship_gamepad/keymaps/default/keymap.c | 2 +- .../battleship_gamepad/keymaps/via/keymap.c | 2 +- .../handwired/bdn9_ble/keymaps/default/keymap.c | 2 +- .../handwired/bento/keymaps/default/keymap.c | 4 ++-- .../handwired/bolek/keymaps/default/keymap.c | 2 +- .../redragon_vara/keymaps/default/keymap.c | 4 ++-- .../boss566y/redragon_vara/keymaps/via/keymap.c | 4 ++-- .../handwired/carpolly/keymaps/default/keymap.c | 2 +- .../handwired/chiron/keymaps/default/keymap.c | 4 ++-- .../handwired/ck4x4/keymaps/default/keymap.c | 4 ++-- .../handwired/co60/keymaps/default/keymap.c | 2 +- .../handwired/colorlice/keymaps/default/keymap.c | 2 +- .../concertina/64key/keymaps/default/keymap.c | 2 +- .../croxsplit44/keymaps/default/keymap.c | 2 +- .../handwired/croxsplit44/keymaps/via/keymap.c | 2 +- keyboards/handwired/d48/keymaps/default/keymap.c | 6 +++--- .../handwired/dactyl/keymaps/default/keymap.c | 4 ++-- .../dactyl_manuform/4x6/keymaps/default/keymap.c | 4 ++-- .../4x6_5/keymaps/default/keymap.c | 4 ++-- .../dactyl_manuform/5x7/keymaps/default/keymap.c | 2 +- .../dactyl_manuform/5x7/keymaps/via/keymap.c | 2 +- .../dmote/62key/keymaps/default/keymap.c | 2 +- .../dactyl_promicro/keymaps/default/keymap.c | 4 ++-- .../dactyl_rah/keymaps/default/keymap.c | 2 +- .../handwired/daishi/keymaps/default/keymap.c | 4 ++-- .../handwired/ddg_56/keymaps/default/keymap.c | 2 +- .../handwired/elrgo_s/keymaps/default/keymap.c | 2 +- .../handwired/frenchdev/keymaps/default/keymap.c | 4 ++-- .../handwired/freoduo/keymaps/default/keymap.c | 2 +- .../handwired/fruity60/keymaps/default/keymap.c | 2 +- .../heisenberg/keymaps/default/keymap.c | 2 +- .../hillside/0_1/keymaps/default/readme.md | 2 +- .../handwired/hnah108/keymaps/default/keymap.c | 2 +- .../handwired/hnah40/keymaps/default/keymap.c | 4 ++-- .../handwired/hnah40rgb/keymaps/ansi/keymap.c | 2 +- .../handwired/hnah40rgb/keymaps/default/keymap.c | 2 +- .../ibm_wheelwriter/keymaps/default/keymap.c | 2 +- .../ibm_wheelwriter/keymaps/via/keymap.c | 2 +- .../handwired/jn68m/keymaps/default/keymap.c | 2 +- .../handwired/jot50/keymaps/default/keymap.c | 2 +- .../handwired/jotanck/keymaps/default/keymap.c | 2 +- .../handwired/lagrange/keymaps/default/keymap.c | 2 +- .../m40/5x5_macropad/keymaps/default/keymap.c | 2 +- .../macroboard/keymaps/default/keymap.c | 2 +- .../handwired/myskeeb/keymaps/default/keymap.c | 2 +- .../not_so_minidox/keymaps/default/keymap.c | 2 +- .../obuwunkunubi/spaget/keymaps/default/keymap.c | 2 +- .../oem_iso_fullsize/keymaps/default/keymap.c | 2 +- .../oem_iso_fullsize/keymaps/via/keymap.c | 2 +- .../handwired/ortho5x13/keymaps/default/keymap.c | 2 +- .../handwired/ortho5x14/keymaps/default/keymap.c | 2 +- .../ortho_brass/keymaps/default/keymap.c | 2 +- .../handwired/p65rgb/keymaps/default/keymap.c | 2 +- .../handwired/pilcrow/keymaps/default/keymap.c | 2 +- .../postageboard/keymaps/default/keymap.c | 2 +- .../handwired/prkl30/keymaps/default/keymap.c | 4 ++-- .../promethium/keymaps/default/keymap.c | 2 +- .../pterodactyl/keymaps/default/keymap.c | 4 ++-- .../handwired/pteron/keymaps/default/keymap.c | 2 +- .../handwired/pteron38/keymaps/default/keymap.c | 2 +- .../handwired/pteron44/keymaps/default/keymap.c | 2 +- .../handwired/reclined/keymaps/default/keymap.c | 2 +- .../riblee_f401/keymaps/default/keymap.c | 2 +- .../riblee_f411/keymaps/default/keymap.c | 2 +- .../handwired/rs60/keymaps/default/keymap.c | 2 +- .../handwired/sono1/keymaps/default/keymap.c | 2 +- .../space_oddity/keymaps/default/keymap.c | 4 ++-- .../handwired/splittest/keymaps/default/keymap.c | 2 +- .../swiftrax/digicarp65/keymaps/default/keymap.c | 2 +- .../swiftrax/digicarp65/keymaps/via/keymap.c | 2 +- .../digicarpice/keymaps/default/keymap.c | 2 +- .../swiftrax/digicarpice/keymaps/via/keymap.c | 2 +- .../swiftrax/equator/keymaps/default/keymap.c | 2 +- .../swiftrax/equator/keymaps/via/keymap.c | 2 +- .../swiftrax/walter/keymaps/default/keymap.c | 2 +- .../swiftrax/walter/keymaps/via/keymap.c | 2 +- .../terminus_mini/keymaps/default/keymap.c | 4 ++-- .../terminus_mini/keymaps/default/readme.md | 2 +- .../4x6_right/keymaps/default/keymap.c | 4 ++-- .../tritium_numpad/keymaps/default/keymap.c | 2 +- .../handwired/uthol/keymaps/default/keymap.c | 2 +- .../videowriter/keymaps/default/keymap.c | 2 +- .../handwired/videowriter/keymaps/via/keymap.c | 2 +- .../wakizashi40/keymaps/default/keymap.c | 2 +- .../handwired/wakizashi40/keymaps/via/keymap.c | 2 +- .../handwired/woodpad/keymaps/default/keymap.c | 2 +- .../handwired/wulkan/keymaps/default/keymap.c | 2 +- .../handwired/zergo/keymaps/default/keymap.c | 2 +- .../otd_plus/keymaps/default/keymap.c | 2 +- .../heliar/wm1_hotswap/keymaps/default/keymap.c | 2 +- keyboards/helix/pico/keymaps/default/keymap.c | 2 +- keyboards/helix/rev2/keymaps/default/keymap.c | 4 ++-- .../helix/rev3_4rows/keymaps/default/keymap.c | 2 +- keyboards/helix/rev3_4rows/keymaps/via/keymap.c | 2 +- .../helix/rev3_5rows/keymaps/default/keymap.c | 2 +- keyboards/helix/rev3_5rows/keymaps/via/keymap.c | 2 +- keyboards/hhkb_lite_2/keymaps/default/keymap.c | 2 +- keyboards/hhkb_lite_2/keymaps/via/keymap.c | 2 +- .../hidtech/bastyl/keymaps/default/keymap.c | 4 ++-- keyboards/hineybush/h10/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h10/keymaps/via/keymap.c | 2 +- keyboards/hineybush/h60/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h60/keymaps/via/keymap.c | 2 +- keyboards/hineybush/h65/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h65/keymaps/via/keymap.c | 2 +- .../h65_hotswap/keymaps/default/keymap.c | 2 +- .../hineybush/h65_hotswap/keymaps/via/keymap.c | 2 +- .../hineybush/h660s/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h660s/keymaps/via/keymap.c | 2 +- .../hineybush/h75_singa/keymaps/default/keymap.c | 2 +- .../hineybush/h75_singa/keymaps/via/keymap.c | 2 +- .../hineybush/h87a/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h87a/keymaps/via/keymap.c | 6 +++--- keyboards/hineybush/h87a/keymaps/wkl/keymap.c | 2 +- keyboards/hineybush/h88/keymaps/default/keymap.c | 2 +- keyboards/hineybush/h88/keymaps/via/keymap.c | 2 +- keyboards/hineybush/h88/keymaps/wkl/keymap.c | 2 +- .../hineybush/hbcp/keymaps/default/keymap.c | 2 +- keyboards/hineybush/hbcp/keymaps/via/keymap.c | 2 +- keyboards/hineybush/hbcp/keymaps/wkl/keymap.c | 2 +- .../hineybush/hineyg80/keymaps/default/keymap.c | 2 +- .../hineybush/hineyg80/keymaps/wkl/keymap.c | 2 +- .../hineybush/ibis/keymaps/default/keymap.c | 2 +- keyboards/hineybush/ibis/keymaps/via/keymap.c | 10 +++++----- .../hineybush/physix/keymaps/default/keymap.c | 2 +- keyboards/hineybush/physix/keymaps/via/keymap.c | 2 +- .../hineybush/sm68/keymaps/default/keymap.c | 2 +- keyboards/hineybush/sm68/keymaps/via/keymap.c | 2 +- keyboards/hnahkb/freyr/keymaps/default/keymap.c | 2 +- keyboards/hnahkb/stella/keymaps/default/keymap.c | 2 +- .../southpaw75/keymaps/default/keymap.c | 2 +- .../holyswitch/southpaw75/keymaps/via/keymap.c | 2 +- .../devil68_pro/keymaps/default/keymap.c | 2 +- .../chinese_pcb/devil68_pro/keymaps/via/keymap.c | 2 +- .../handwired_k552/keymaps/default/keymap.c | 2 +- .../handwired_k552/keymaps/via/keymap.c | 2 +- .../horrortroll/paws60/keymaps/default/keymap.c | 2 +- .../horrortroll/paws60/keymaps/via/keymap.c | 2 +- keyboards/hp69/keymaps/default/keymap.c | 2 +- keyboards/hp69/keymaps/via/keymap.c | 2 +- keyboards/hs60/v1/keymaps/ansi/keymap.c | 2 +- keyboards/hs60/v1/keymaps/default/keymap.c | 2 +- keyboards/hs60/v2/ansi/keymaps/default/keymap.c | 2 +- keyboards/hs60/v2/ansi/keymaps/via/keymap.c | 2 +- keyboards/hs60/v2/hhkb/keymaps/default/keymap.c | 2 +- keyboards/hs60/v2/hhkb/keymaps/via/keymap.c | 2 +- keyboards/hs60/v2/iso/keymaps/default/keymap.c | 2 +- keyboards/hs60/v2/iso/keymaps/via/keymap.c | 2 +- keyboards/hub16/keymaps/default/keymap.c | 2 +- keyboards/hub16/keymaps/via/keymap.c | 2 +- keyboards/hub20/keymaps/default/keymap.c | 2 +- keyboards/hub20/keymaps/via/keymap.c | 2 +- .../ibnuda/alicia_cook/keymaps/default/keymap.c | 2 +- .../ibnuda/gurindam/keymaps/default/keymap.c | 2 +- keyboards/ibnuda/gurindam/keymaps/via/keymap.c | 2 +- .../ibnuda/squiggle/keymaps/default/keymap.c | 2 +- .../ibnuda/squiggle/keymaps/default38/keymap.c | 2 +- .../ibnuda/squiggle/keymaps/defaultfull/keymap.c | 2 +- .../squiggle/keymaps/defaultminidox/keymap.c | 2 +- keyboards/idb/idb_60/keymaps/default/keymap.c | 2 +- keyboards/idb/idb_60/keymaps/via/keymap.c | 2 +- keyboards/idobao/id67/keymaps/default/keymap.c | 2 +- keyboards/idobao/id67/keymaps/via/keymap.c | 2 +- keyboards/idobao/id75/keymaps/default75/keymap.c | 4 ++-- .../idobao/id80/v1/ansi/keymaps/default/keymap.c | 2 +- .../idobao/id80/v1/ansi/keymaps/via/keymap.c | 2 +- .../idobao/id80/v1/iso/keymaps/default/keymap.c | 2 +- .../idobao/id80/v1/iso/keymaps/via/keymap.c | 2 +- .../idobao/id80/v3/keymaps/default/keymap.c | 2 +- keyboards/idobao/id80/v3/keymaps/via/keymap.c | 2 +- .../idobao/id87/v1/keymaps/default/keymap.c | 2 +- keyboards/idobao/id87/v1/keymaps/via/keymap.c | 2 +- .../idobao/id87/v2/keymaps/default/keymap.c | 2 +- keyboards/idobao/id87/v2/keymaps/via/keymap.c | 2 +- keyboards/idobao/id96/keymaps/default/keymap.c | 4 ++-- keyboards/idobao/id96/keymaps/via/keymap.c | 2 +- .../idobao/montex/v1/keymaps/default/keymap.c | 2 +- keyboards/idobao/montex/v1/keymaps/via/keymap.c | 2 +- keyboards/illusion/rosa/keymaps/via/keymap.c | 2 +- .../ilumkb/primus75/keymaps/default/keymap.c | 2 +- keyboards/ilumkb/primus75/keymaps/via/keymap.c | 2 +- .../ilumkb/simpler61/keymaps/default/keymap.c | 2 +- keyboards/ilumkb/simpler61/keymaps/via/keymap.c | 2 +- .../ilumkb/simpler64/keymaps/default/keymap.c | 2 +- keyboards/ilumkb/simpler64/keymaps/via/keymap.c | 2 +- .../sqx/hotswap/keymaps/default/keymap.c | 2 +- .../sqx/hotswap/keymaps/via/keymap.c | 2 +- .../sqx/universal/keymaps/default/keymap.c | 2 +- .../sqx/universal/keymaps/via/keymap.c | 2 +- keyboards/irene/keymaps/default/keymap.c | 2 +- keyboards/irene/keymaps/via/keymap.c | 2 +- keyboards/iriskeyboards/keymaps/default/keymap.c | 2 +- keyboards/iriskeyboards/keymaps/via/keymap.c | 2 +- keyboards/iron180/keymaps/default/keymap.c | 2 +- keyboards/iron180/keymaps/via/keymap.c | 2 +- keyboards/j80/keymaps/default/keymap.c | 2 +- keyboards/j80/keymaps/default_iso/keymap.c | 2 +- .../bear_65/keymaps/default/keymap.c | 2 +- .../jacky_studio/bear_65/keymaps/via/keymap.c | 2 +- .../s7_elephant/rev1/keymaps/default/keymap.c | 2 +- .../s7_elephant/rev2/keymaps/default/keymap.c | 2 +- keyboards/jadookb/jkb65/keymaps/via/keymap.c | 2 +- keyboards/jae/j01/keymaps/default/keymap.c | 2 +- keyboards/jian/keymaps/default/keymap.c | 2 +- keyboards/jian/keymaps/via/keymap.c | 2 +- keyboards/jiran/keymaps/default/keymap.c | 2 +- keyboards/jiran/keymaps/via/keymap.c | 2 +- keyboards/jm60/keymaps/default/keymap.c | 2 +- keyboards/jones/v03/keymaps/default_jp/keymap.c | 2 +- .../jones/v03_1/keymaps/default_ansi/keymap.c | 2 +- .../jones/v03_1/keymaps/default_jp/keymap.c | 2 +- keyboards/jorne/keymaps/default/keymap.c | 2 +- keyboards/jorne/keymaps/via/keymap.c | 2 +- .../kagizaraya/chidori/keymaps/default/keymap.c | 2 +- .../kagizaraya/halberd/keymaps/default/keymap.c | 2 +- .../rabbit_capture_plan/keymaps/default/keymap.c | 2 +- .../rabbit_capture_plan/keymaps/via/keymap.c | 2 +- .../kapcave/gskt00/keymaps/default-poly/keymap.c | 2 +- .../kapcave/paladin64/keymaps/default/keymap.c | 2 +- keyboards/kapcave/paladin64/keymaps/via/keymap.c | 2 +- .../kapcave/paladinpad/keymaps/default/keymap.c | 2 +- .../kapcave/paladinpad/keymaps/via/keymap.c | 2 +- keyboards/kapl/keymaps/default/keymap.c | 2 +- keyboards/kapl/keymaps/via/keymap.c | 2 +- keyboards/karlb/kbic65/keymaps/default/keymap.c | 2 +- .../karlb/kbic65/keymaps/default_iso/keymap.c | 2 +- .../kbic65/keymaps/default_iso_split_bs/keymap.c | 2 +- keyboards/karlb/kbic65/keymaps/via/keymap.c | 2 +- .../kbdfans/bella/rgb/keymaps/default/keymap.c | 2 +- keyboards/kbdfans/bella/rgb/keymaps/via/keymap.c | 2 +- .../bella/rgb_iso/keymaps/default/keymap.c | 2 +- .../kbdfans/bella/rgb_iso/keymaps/via/keymap.c | 2 +- .../kbdfans/boop65/rgb/keymaps/default/keymap.c | 2 +- .../kbdfans/boop65/rgb/keymaps/via/keymap.c | 2 +- .../kbdfans/kbd19x/keymaps/default/keymap.c | 2 +- .../kbdfans/kbd19x/keymaps/default_iso/keymap.c | 2 +- keyboards/kbdfans/kbd19x/keymaps/via/keymap.c | 2 +- keyboards/kbdfans/kbd4x/keymaps/default/keymap.c | 2 +- keyboards/kbdfans/kbd66/keymaps/ansi/keymap.c | 4 ++-- keyboards/kbdfans/kbd66/keymaps/default/keymap.c | 4 ++-- keyboards/kbdfans/kbd66/keymaps/iso/keymap.c | 4 ++-- .../kbd67/hotswap/keymaps/default/keymap.c | 2 +- .../kbdfans/kbd67/hotswap/keymaps/via/keymap.c | 2 +- .../kbd67/mkii_soldered/keymaps/ansi/keymap.c | 2 +- .../kbd67/mkii_soldered/keymaps/default/keymap.c | 2 +- .../kbd67/mkii_soldered/keymaps/iso/keymap.c | 2 +- .../kbd67/mkii_soldered/keymaps/via/keymap.c | 2 +- .../kbd67/mkiirgb/keymaps/default/keymap.c | 2 +- .../kbdfans/kbd67/mkiirgb/keymaps/via/keymap.c | 2 +- .../kbd67/mkiirgb_iso/keymaps/default/keymap.c | 2 +- .../kbd67/mkiirgb_iso/keymaps/via/keymap.c | 2 +- .../kbdfans/kbd67/rev2/keymaps/iso/keymap.c | 4 ++-- .../kbdfans/kbd67/rev2/keymaps/iso/readme.md | 2 +- keyboards/kbdfans/kbd6x/keymaps/via/keymap.c | 2 +- keyboards/kbdfans/kbd6x/keymaps/via/readme.md | 2 +- keyboards/kbdfans/kbd75/keymaps/default/keymap.c | 2 +- keyboards/kbdfans/kbd75/keymaps/iso/keymap.c | 2 +- keyboards/kbdfans/kbd75/keymaps/via/keymap.c | 2 +- .../kbdfans/kbd75hs/keymaps/default/keymap.c | 6 +++--- keyboards/kbdfans/kbd75hs/keymaps/via/keymap.c | 6 +++--- .../kbdfans/kbd75rgb/keymaps/default/keymap.c | 6 +++--- keyboards/kbdfans/kbd75rgb/keymaps/via/keymap.c | 6 +++--- keyboards/kbdfans/kbd8x/keymaps/default/keymap.c | 2 +- .../kbd8x/keymaps/default_backlighting/keymap.c | 2 +- keyboards/kbdfans/maja/keymaps/default/keymap.c | 4 ++-- keyboards/kbdfans/maja/keymaps/via/keymap.c | 4 ++-- .../maja_soldered/keymaps/default/keymap.c | 4 ++-- .../kbdfans/maja_soldered/keymaps/via/keymap.c | 4 ++-- .../kbdfans/niu_mini/keymaps/default/keymap.c | 2 +- keyboards/kbdfans/niu_mini/keymaps/via/keymap.c | 6 +++--- .../kbnordic/nordic60/keymaps/default/keymap.c | 2 +- .../nordic60/keymaps/default_ansi/keymap.c | 2 +- keyboards/kbnordic/nordic60/keymaps/via/keymap.c | 2 +- keyboards/kc60/keymaps/default/keymap.c | 2 +- keyboards/kc60/keymaps/via/keymap.c | 2 +- keyboards/keebio/bdn9/keymaps/default/keymap.c | 4 ++-- keyboards/keebio/bdn9/keymaps/via/keymap.c | 2 +- .../keebio/chocopad/keymaps/default/keymap.c | 2 +- keyboards/keebio/dilly/keymaps/default/keymap.c | 2 +- keyboards/keebio/dsp40/keymaps/default/keymap.c | 2 +- keyboards/keebio/dsp40/keymaps/via/keymap.c | 2 +- keyboards/keebio/foldkb/keymaps/default/keymap.c | 2 +- keyboards/keebio/foldkb/keymaps/via/keymap.c | 2 +- .../keebio/fourier/keymaps/default/keymap.c | 2 +- keyboards/keebio/fourier/keymaps/via/keymap.c | 2 +- keyboards/keebio/iris/keymaps/default/keymap.c | 2 +- keyboards/keebio/iris/keymaps/via/keymap.c | 2 +- .../keebio/laplace/keymaps/default/keymap.c | 2 +- .../keebio/levinson/keymaps/default/keymap.c | 2 +- keyboards/keebio/levinson/keymaps/via/keymap.c | 2 +- .../keebio/nyquist/keymaps/default/keymap.c | 2 +- .../keebio/nyquist/keymaps/default_4x12/keymap.c | 4 ++-- keyboards/keebio/nyquist/keymaps/via/keymap.c | 2 +- .../keebio/rorschach/keymaps/default/keymap.c | 2 +- .../keebio/viterbi/keymaps/default/keymap.c | 2 +- keyboards/keebio/viterbi/keymaps/via/keymap.c | 2 +- .../keebio/wavelet/keymaps/default/keymap.c | 2 +- .../coarse60/keymaps/default/keymap.c | 2 +- .../keebsforall/coarse60/keymaps/via/keymap.c | 2 +- .../freebird60/keymaps/default/keymap.c | 2 +- .../keebsforall/freebird60/keymaps/via/keymap.c | 2 +- .../keebwerk/mega/ansi/keymaps/default/keymap.c | 2 +- .../keebwerk/mega/ansi/keymaps/via/keymap.c | 2 +- .../keebzdotnet/fme/keymaps/default/keymap.c | 2 +- keyboards/keebzdotnet/fme/keymaps/via/keymap.c | 2 +- .../keybage/radpad/keymaps/default/keymap.c | 2 +- .../keybee/keybee65/keymaps/default/keymap.c | 2 +- keyboards/keybee/keybee65/keymaps/via/keymap.c | 2 +- .../keyboardio/atreus/keymaps/default/keymap.c | 2 +- keyboards/keyboardio/atreus/keymaps/via/keymap.c | 2 +- .../keyboardio/model01/keymaps/default/keymap.c | 2 +- .../keycapsss/kimiko/keymaps/default/keymap.c | 4 ++-- .../keycapsss/o4l_5x12/keymaps/default/keymap.c | 2 +- keyboards/keyhive/absinthe/keymaps/ansi/keymap.c | 2 +- .../keyhive/absinthe/keymaps/default/keymap.c | 2 +- .../keyhive/ergosaurus/keymaps/default/keymap.c | 2 +- .../keyhive/ergosaurus/keymaps/via/keymap.c | 4 ++-- .../keyhive/southpole/keymaps/default/keymap.c | 2 +- keyboards/keyhive/ut472/keymaps/via/keymap.c | 2 +- keyboards/keyprez/rhino/keymaps/default/keymap.c | 4 ++-- .../keyprez/rhino/keymaps/default_7u/keymap.c | 4 ++-- .../keyprez/rhino/keymaps/default_ergo/keymap.c | 4 ++-- .../keyprez/unicorn/keymaps/default/keymap.c | 2 +- .../keysofkings/twokey/keymaps/default/keymap.c | 2 +- .../kikoslab/ellora65/keymaps/default/keymap.c | 2 +- keyboards/kikoslab/ellora65/keymaps/via/keymap.c | 2 +- keyboards/kin80/keymaps/default/keymap.c | 4 ++-- keyboards/kinesis/keymaps/default/keymap.c | 2 +- .../kinesis/keymaps/default_pretty/keymap.c | 2 +- .../little_foot/keymaps/default/keymap.c | 2 +- keyboards/kira80/keymaps/ansi/keymap.c | 2 +- keyboards/kira80/keymaps/default/keymap.c | 2 +- keyboards/kira80/keymaps/iso/keymap.c | 2 +- keyboards/kira80/keymaps/via/keymap.c | 2 +- .../kiwikeebs/macro/keymaps/default/keymap.c | 2 +- keyboards/kiwikeebs/macro/keymaps/via/keymap.c | 2 +- .../kiwikeebs/macro_v2/keymaps/default/keymap.c | 2 +- .../kiwikeebs/macro_v2/keymaps/via/keymap.c | 2 +- .../kiwikey/borderland/keymaps/default/keymap.c | 2 +- .../kiwikey/borderland/keymaps/via/keymap.c | 2 +- .../kiwikey/kawii9/keymaps/default/keymap.c | 2 +- keyboards/kiwikey/kawii9/keymaps/via/keymap.c | 2 +- .../kiwikey/wanderland/keymaps/default/keymap.c | 2 +- .../kiwikey/wanderland/keymaps/via/keymap.c | 2 +- .../kkatano/bakeneko60/keymaps/default/keymap.c | 2 +- .../kkatano/bakeneko60/keymaps/via/keymap.c | 2 +- .../bakeneko65/rev2/keymaps/default/keymap.c | 2 +- .../kkatano/bakeneko65/rev2/keymaps/via/keymap.c | 2 +- .../bakeneko65/rev3/keymaps/default/keymap.c | 2 +- .../kkatano/bakeneko65/rev3/keymaps/via/keymap.c | 2 +- .../kkatano/bakeneko80/keymaps/default/keymap.c | 2 +- keyboards/kmini/keymaps/default/keymap.c | 2 +- .../mini/keymaps/default-gsm-newbs/keymap.c | 2 +- keyboards/knops/mini/keymaps/default/keymap.c | 2 +- keyboards/kona_classic/keymaps/ansi/keymap.c | 2 +- keyboards/kona_classic/keymaps/default/keymap.c | 2 +- keyboards/kona_classic/keymaps/iso/keymap.c | 2 +- .../kopibeng/mnk65/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/mnk65/keymaps/via/keymap.c | 2 +- .../kopibeng/mnk88/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/mnk88/keymaps/via/keymap.c | 2 +- .../kopibeng/typ65/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/typ65/keymaps/via/keymap.c | 2 +- keyboards/kopibeng/xt60/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/xt60/keymaps/via/keymap.c | 2 +- keyboards/kopibeng/xt65/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/xt65/keymaps/via/keymap.c | 2 +- keyboards/kopibeng/xt8x/keymaps/default/keymap.c | 2 +- keyboards/kopibeng/xt8x/keymaps/via/keymap.c | 2 +- .../kprepublic/bm16a/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/bm16a/keymaps/via/keymap.c | 2 +- .../kprepublic/bm16s/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/bm16s/keymaps/via/keymap.c | 2 +- .../bm40hsrgb/keymaps/default/keymap.c | 2 +- .../kprepublic/bm40hsrgb/keymaps/via/keymap.c | 2 +- .../kprepublic/bm43a/keymaps/default/keymap.c | 2 +- .../bm43hsrgb/keymaps/default/keymap.c | 2 +- .../bm43hsrgb/keymaps/default/readme.md | 2 +- .../bm60hsrgb/rev1/keymaps/default/keymap.c | 2 +- .../bm60hsrgb/rev1/keymaps/via/keymap.c | 2 +- .../bm60hsrgb/rev2/keymaps/default/keymap.c | 2 +- .../bm60hsrgb/rev2/keymaps/via/keymap.c | 2 +- .../bm60hsrgb_iso/rev1/keymaps/default/keymap.c | 2 +- .../bm60hsrgb_iso/rev2/keymaps/default/keymap.c | 2 +- .../bm60hsrgb_iso/rev2/keymaps/via/keymap.c | 2 +- .../rev1/keymaps/default/keymap.c | 2 +- .../bm60hsrgb_poker/rev1/keymaps/via/keymap.c | 2 +- .../rev2/keymaps/default/keymap.c | 2 +- .../bm60hsrgb_poker/rev2/keymaps/via/keymap.c | 2 +- .../bm65hsrgb/keymaps/default/keymap.c | 2 +- .../bm65hsrgb_iso/rev1/keymaps/default/keymap.c | 2 +- .../bm65hsrgb_iso/rev1/keymaps/via/keymap.c | 2 +- .../bm68hsrgb/rev1/keymaps/default/keymap.c | 2 +- .../bm68hsrgb/rev1/keymaps/via/keymap.c | 2 +- .../bm68hsrgb/rev2/keymaps/default/keymap.c | 2 +- .../bm68hsrgb/rev2/keymaps/via/keymap.c | 2 +- .../bm80hsrgb/keymaps/default/keymap.c | 2 +- .../kprepublic/bm80hsrgb/keymaps/via/keymap.c | 2 +- .../bm980hsrgb/keymaps/default/keymap.c | 2 +- .../kprepublic/bm980hsrgb/keymaps/via/keymap.c | 2 +- .../kprepublic/cospad/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/cospad/keymaps/via/keymap.c | 2 +- .../kprepublic/jj40/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/jj40/keymaps/via/keymap.c | 2 +- .../kprepublic/jj4x4/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/jj4x4/keymaps/via/keymap.c | 2 +- .../kprepublic/jj50/keymaps/default/keymap.c | 2 +- keyboards/kprepublic/jj50/keymaps/via/keymap.c | 2 +- keyboards/ktec/daisy/keymaps/default/keymap.c | 2 +- keyboards/ktec/daisy/keymaps/via/keymap.c | 2 +- keyboards/kv/revt/keymaps/default/keymap.c | 2 +- keyboards/ky01/keymaps/default/keymap.c | 2 +- .../latin60rgb/keymaps/default/keymap.c | 4 ++-- .../latincompass/latin60rgb/keymaps/via/keymap.c | 4 ++-- .../lazydesigners/bolt/keymaps/default/keymap.c | 4 ++-- .../lazydesigners/bolt/keymaps/via/keymap.c | 4 ++-- .../cassette8/keymaps/default/keymap.c | 2 +- .../lazydesigners/cassette8/keymaps/via/keymap.c | 2 +- .../dimple/ortho/keymaps/default/keymap.c | 2 +- .../dimple/ortho/keymaps/via/keymap.c | 2 +- .../dimple/staggered/keymaps/default/keymap.c | 2 +- .../staggered/rev3/keymaps/default/keymap.c | 2 +- .../dimpleplus/keymaps/default/keymap.c | 2 +- .../dimpleplus/keymaps/default_7u/keymap.c | 2 +- .../dimpleplus/keymaps/via/keymap.c | 2 +- .../lazydesigners/the30/keymaps/default/keymap.c | 2 +- .../lazydesigners/the30/keymaps/via/keymap.c | 2 +- .../lazydesigners/the40/keymaps/default/keymap.c | 2 +- .../lazydesigners/the40/keymaps/via/keymap.c | 2 +- .../lazydesigners/the50/keymaps/default/keymap.c | 2 +- .../the60/rev1/keymaps/default/keymap.c | 2 +- .../the60/rev2/keymaps/default/keymap.c | 2 +- .../the60/rev2/keymaps/via/keymap.c | 2 +- .../leeku/finger65/keymaps/default/keymap.c | 2 +- keyboards/lets_split/keymaps/default/keymap.c | 2 +- keyboards/lets_split/keymaps/via/keymap.c | 4 ++-- .../lfk65_hs/keymaps/default/keymap.c | 2 +- .../lfkeyboards/lfk78/keymaps/default/keymap.c | 2 +- keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c | 2 +- keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c | 4 ++-- .../lfkeyboards/lfk87/keymaps/default/keymap.c | 2 +- keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c | 2 +- .../mini1800/keymaps/default/keymap.c | 2 +- .../lfkeyboards/smk65/keymaps/default/keymap.c | 2 +- keyboards/lfkeyboards/smk65/keymaps/iso/keymap.c | 4 ++-- .../lfkeyboards/smk65/revf/keymaps/via/keymap.c | 2 +- keyboards/lime/keymaps/default/keymap.c | 4 ++-- .../linworks/fave84h/keymaps/default/keymap.c | 2 +- keyboards/linworks/fave84h/keymaps/via/keymap.c | 2 +- .../linworks/fave87/keymaps/default/keymap.c | 2 +- keyboards/linworks/fave87/keymaps/via/keymap.c | 2 +- .../linworks/fave87h/keymaps/default/keymap.c | 2 +- keyboards/linworks/fave87h/keymaps/via/keymap.c | 2 +- .../lm_keyboard/lm60n/keymaps/default/keymap.c | 2 +- keyboards/lm_keyboard/lm60n/keymaps/via/keymap.c | 2 +- .../longnald/corin/keymaps/default/keymap.c | 2 +- keyboards/lucid/alexa/keymaps/default/keymap.c | 2 +- keyboards/lucid/alexa/keymaps/via/keymap.c | 2 +- .../lucid/alexa_solder/keymaps/default/keymap.c | 2 +- .../lucid/alexa_solder/keymaps/via/keymap.c | 2 +- .../lucid/phantom_hs/keymaps/default/keymap.c | 2 +- keyboards/lucid/phantom_hs/keymaps/via/keymap.c | 2 +- .../phantom_solder/keymaps/default/keymap.c | 2 +- .../lucid/phantom_solder/keymaps/via/keymap.c | 2 +- keyboards/lyso1/lck75/keymaps/default/keymap.c | 2 +- keyboards/lyso1/lck75/keymaps/iso/keymap.c | 2 +- keyboards/lyso1/lck75/keymaps/via/keymap.c | 6 +++--- keyboards/lyso1/lefishe/keymaps/default/keymap.c | 2 +- keyboards/lyso1/lefishe/keymaps/wkl/keymap.c | 2 +- .../omega/omega4/keymaps/default/keymap.c | 2 +- .../omega4/keymaps/default_10u_bar/keymap.c | 2 +- .../omega/omega4/keymaps/default_6u_bar/keymap.c | 2 +- keyboards/manta60/keymaps/default/keymap.c | 2 +- .../christmas_tree/keymaps/default/keymap.c | 4 ++-- .../jnao/keymaps/default/keymap.c | 4 ++-- .../jnao/keymaps/default_4x12/keymap.c | 4 ++-- .../maple_computing/jnao/keymaps/via/keymap.c | 4 ++-- .../lets_split_eh/keymaps/default/keymap.c | 4 ++-- .../minidox/keymaps/default/keymap.c | 2 +- .../the_ruler/keymaps/default/keymap.c | 4 ++-- .../marksard/leftover30/keymaps/default/keymap.c | 2 +- .../marksard/rhymestone/keymaps/default/keymap.c | 2 +- .../treadstone32/keymaps/default/keymap.c | 2 +- .../treadstone48/keymaps/default/keymap.c | 2 +- keyboards/matrix/abelx/keymaps/default/keymap.c | 2 +- keyboards/matrix/abelx/keymaps/iso/keymap.c | 2 +- .../matrix/cain_re/keymaps/default/keymap.c | 2 +- keyboards/matrix/falcon/keymaps/default/keymap.c | 2 +- keyboards/matrix/falcon/keymaps/via/keymap.c | 2 +- .../matrix/m12og/rev1/keymaps/default/keymap.c | 2 +- .../matrix/m12og/rev2/keymaps/default/keymap.c | 2 +- keyboards/matrix/m12og/rev2/keymaps/iso/keymap.c | 2 +- keyboards/matrix/m12og/rev2/keymaps/via/keymap.c | 2 +- keyboards/matrix/m20add/keymaps/default/keymap.c | 2 +- keyboards/matrix/m20add/keymaps/iso/keymap.c | 2 +- keyboards/matrix/me/keymaps/default/keymap.c | 2 +- keyboards/matrix/me/keymaps/via/keymap.c | 2 +- keyboards/matrix/noah/keymaps/default/keymap.c | 2 +- keyboards/matrix/noah/keymaps/iso/keymap.c | 2 +- keyboards/matrix/noah/keymaps/wkl/keymap.c | 2 +- keyboards/mb44/keymaps/default/keymap.c | 2 +- keyboards/mb44/keymaps/via/keymap.c | 2 +- .../miniashen40/keymaps/default/keymap.c | 2 +- .../miniashen40/keymaps/via/keymap.c | 2 +- .../undead60m/keymaps/default/keymap.c | 2 +- .../mechanickeys/undead60m/keymaps/via/keymap.c | 2 +- .../mechkeys/acr60/keymaps/default/keymap.c | 2 +- .../mechkeys/alu84/keymaps/default/keymap.c | 2 +- .../mechkeys/espectro/keymaps/default/keymap.c | 4 ++-- keyboards/mechkeys/espectro/keymaps/iso/keymap.c | 4 ++-- .../mechmini/v2/keymaps/default/keymap.c | 2 +- .../mechkeys/mechmini/v2/keymaps/via/keymap.c | 2 +- keyboards/mechkeys/mk60/keymaps/default/keymap.c | 2 +- keyboards/mechllama/g35/keymaps/default/keymap.c | 2 +- .../mechlovin/tmkl/keymaps/default/keymap.c | 2 +- .../mechstudio/dawn/keymaps/default/keymap.c | 2 +- keyboards/mechstudio/dawn/keymaps/via/keymap.c | 2 +- keyboards/mechwild/bde/keymaps/default/keymap.c | 2 +- keyboards/mechwild/bde/keymaps/via/keymap.c | 2 +- .../mechwild/mokulua/keymaps/default/keymap.c | 2 +- keyboards/mechwild/mokulua/keymaps/via/keymap.c | 2 +- keyboards/mehkee96/keymaps/default/keymap.c | 4 ++-- .../meletrix/zoom65/keymaps/default/keymap.c | 2 +- keyboards/meletrix/zoom65/keymaps/via/keymap.c | 2 +- .../zoom65_lite/keymaps/default/keymap.c | 2 +- .../meletrix/zoom65_lite/keymaps/via/keymap.c | 2 +- .../melgeek/mach80/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mach80/keymaps/via/keymap.c | 2 +- keyboards/melgeek/mach80/keymaps/wkl/keymap.c | 2 +- keyboards/melgeek/mj61/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mj61/keymaps/via/keymap.c | 2 +- keyboards/melgeek/mj63/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mj63/keymaps/via/keymap.c | 2 +- keyboards/melgeek/mj64/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mj64/keymaps/via/keymap.c | 2 +- keyboards/melgeek/mj65/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mj65/keymaps/via/keymap.c | 2 +- keyboards/melgeek/mj6xy/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mj6xy/keymaps/via/keymap.c | 2 +- .../melgeek/mojo68/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mojo68/keymaps/via/keymap.c | 2 +- .../melgeek/mojo75/keymaps/default/keymap.c | 2 +- keyboards/melgeek/mojo75/keymaps/via/keymap.c | 2 +- .../melgeek/z70ultra/keymaps/default/keymap.c | 2 +- keyboards/melgeek/z70ultra/keymaps/via/keymap.c | 2 +- keyboards/meow65/keymaps/default/keymap.c | 2 +- keyboards/meow65/keymaps/via/keymap.c | 2 +- keyboards/meson/keymaps/default/keymap.c | 2 +- .../timberwolf/keymaps/default/keymap.c | 4 ++-- .../metamechs/timberwolf/keymaps/via/keymap.c | 2 +- .../mikeneko65/rev3/keymaps/default/keymap.c | 2 +- keyboards/mikeneko65/rev3/keymaps/via/keymap.c | 2 +- keyboards/miller/gm862/keymaps/default/keymap.c | 2 +- keyboards/miller/gm862/keymaps/via/keymap.c | 2 +- keyboards/miniaxe/keymaps/default/keymap.c | 2 +- keyboards/mino/keymaps/default/keymap.c | 2 +- keyboards/mino/keymaps/via/keymap.c | 2 +- keyboards/miuni32/keymaps/default/keymap.c | 4 ++-- keyboards/mixi/keymaps/default/keymap.c | 4 ++-- keyboards/mixi/keymaps/via/keymap.c | 4 ++-- keyboards/mlego/m48/keymaps/default/keymap.c | 2 +- keyboards/mlego/m48/keymaps/via/keymap.c | 2 +- keyboards/mlego/m60/keymaps/default/keymap.c | 2 +- keyboards/mlego/m60/keymaps/via/keymap.c | 2 +- .../mlego/m60_split/keymaps/default/keymap.c | 2 +- keyboards/mlego/m60_split/keymaps/via/keymap.c | 2 +- keyboards/mlego/m65/keymaps/default/keymap.c | 2 +- keyboards/mlego/m65/keymaps/via/keymap.c | 2 +- keyboards/mntre/keymaps/default/keymap.c | 2 +- .../mode/m65ha_alpha/keymaps/default/keymap.c | 2 +- keyboards/mode/m65ha_alpha/keymaps/via/keymap.c | 2 +- .../mode/m65hi_alpha/keymaps/default/keymap.c | 2 +- keyboards/mode/m65hi_alpha/keymaps/via/keymap.c | 2 +- keyboards/mode/m65s/keymaps/default/keymap.c | 2 +- keyboards/mode/m65s/keymaps/via/keymap.c | 2 +- keyboards/mode/m75s/keymaps/default/keymap.c | 2 +- .../mode/m75s/keymaps/default_ansi/keymap.c | 2 +- .../m75s/keymaps/default_ansi_split_bs/keymap.c | 2 +- .../m75s/keymaps/default_ansi_tsangan/keymap.c | 2 +- .../default_ansi_tsangan_split_bs/keymap.c | 2 +- keyboards/mode/m75s/keymaps/default_iso/keymap.c | 2 +- .../m75s/keymaps/default_iso_split_bs/keymap.c | 2 +- .../m75s/keymaps/default_iso_tsangan/keymap.c | 2 +- .../default_iso_tsangan_split_bs/keymap.c | 2 +- keyboards/mode/m75s/keymaps/via/keymap.c | 2 +- .../mode/m80v1/m80h/keymaps/default/keymap.c | 2 +- keyboards/mode/m80v1/m80h/keymaps/via/keymap.c | 2 +- .../mode/m80v1/m80s/keymaps/default/keymap.c | 2 +- keyboards/mode/m80v1/m80s/keymaps/via/keymap.c | 2 +- .../mode/m80v2/m80v2h/keymaps/default/keymap.c | 2 +- keyboards/mode/m80v2/m80v2h/keymaps/via/keymap.c | 2 +- .../mode/m80v2/m80v2s/keymaps/default/keymap.c | 2 +- keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c | 2 +- .../mokey/ginkgo65/keymaps/default/keymap.c | 2 +- keyboards/mokey/ginkgo65/keymaps/via/keymap.c | 2 +- keyboards/mokey/ginkgo65hot/keymaps/via/keymap.c | 2 +- keyboards/momoka_ergo/keymaps/default/keymap.c | 2 +- keyboards/monarch/keymaps/default/keymap.c | 2 +- keyboards/monarch/keymaps/iso/keymap.c | 2 +- keyboards/monarch/keymaps/via/keymap.c | 2 +- .../rebound/rev1/keymaps/default/keymap.c | 2 +- .../rebound/rev2/keymaps/default/keymap.c | 2 +- .../rebound/rev3/keymaps/default/keymap.c | 2 +- .../rebound/rev4/keymaps/default/keymap.c | 2 +- .../montsinger/rebound/rev4/keymaps/via/keymap.c | 2 +- .../montsinger/rewind/keymaps/default/keymap.c | 2 +- keyboards/moonlander/keymaps/default/keymap.c | 2 +- keyboards/moonlander/keymaps/via/keymap.c | 2 +- .../mss_studio/m63_rgb/keymaps/default/keymap.c | 2 +- .../mss_studio/m63_rgb/keymaps/via/keymap.c | 2 +- .../mss_studio/m64_rgb/keymaps/default/keymap.c | 2 +- .../mss_studio/m64_rgb/keymaps/via/keymap.c | 2 +- keyboards/mt/blocked65/keymaps/default/keymap.c | 4 ++-- keyboards/mt/blocked65/keymaps/via/keymap.c | 4 ++-- keyboards/mt/mt64rgb/keymaps/via/keymap.c | 2 +- keyboards/mt/mt84/keymaps/via/keymap.c | 2 +- keyboards/mt/mt980/keymaps/default/keymap.c | 4 ++-- .../mwstudio/mw65_black/keymaps/default/keymap.c | 2 +- .../mwstudio/mw65_black/keymaps/via/keymap.c | 2 +- .../mwstudio/mw75r2/keymaps/default/keymap.c | 2 +- keyboards/mwstudio/mw75r2/keymaps/via/keymap.c | 2 +- keyboards/mxss/keymaps/default/keymap.c | 2 +- keyboards/mxss/keymaps/via/keymap.c | 2 +- .../mysticworks/wyvern/keymaps/default/keymap.c | 2 +- .../mysticworks/wyvern/keymaps/via/keymap.c | 2 +- keyboards/neito/keymaps/default/keymap.c | 2 +- keyboards/neito/keymaps/via/keymap.c | 2 +- keyboards/nemui/keymaps/default/keymap.c | 2 +- keyboards/nemui/keymaps/via/keymap.c | 2 +- .../g67/element_hs/keymaps/default/keymap.c | 2 +- .../neokeys/g67/element_hs/keymaps/via/keymap.c | 2 +- .../neokeys/g67/hotswap/keymaps/default/keymap.c | 2 +- .../neokeys/g67/hotswap/keymaps/via/keymap.c | 2 +- .../g67/soldered/keymaps/default/keymap.c | 2 +- .../neokeys/g67/soldered/keymaps/via/keymap.c | 2 +- .../neson_design/n6/keymaps/default/keymap.c | 2 +- keyboards/neson_design/n6/keymaps/via/keymap.c | 2 +- keyboards/nibiria/stream15/keymaps/via/keymap.c | 2 +- .../hailey/keymaps/default/keymap.c | 2 +- .../hailey/keymaps/via/keymap.c | 2 +- .../alter/rev1/keymaps/default/keymap.c | 2 +- .../n60_s/keymaps/default/keymap.c | 2 +- .../n60_s/keymaps/tsangan/keymap.c | 2 +- .../nightly_boards/n60_s/keymaps/via/keymap.c | 2 +- .../nightly_boards/n87/keymaps/default/keymap.c | 2 +- .../nightly_boards/n87/keymaps/tsangan/keymap.c | 2 +- .../nightly_boards/n87/keymaps/via/keymap.c | 2 +- .../octopad/keymaps/default/keymap.c | 2 +- .../nightly_boards/octopad/keymaps/via/keymap.c | 2 +- .../ph_arisu/keymaps/default/keymap.c | 2 +- .../nightly_boards/ph_arisu/keymaps/via/keymap.c | 2 +- .../nix_studio/oxalys80/keymaps/default/keymap.c | 2 +- .../nix_studio/oxalys80/keymaps/via/keymap.c | 6 +++--- .../jabberwocky/keymaps/default/keymap.c | 4 ++-- .../jabberwocky/keymaps/via/keymap.c | 4 ++-- .../kastenwagen1840/keymaps/default/keymap.c | 2 +- .../kastenwagen1840/keymaps/via/keymap.c | 2 +- .../kastenwagen48/keymaps/default/keymap.c | 2 +- .../kastenwagen48/keymaps/via/keymap.c | 2 +- .../novelkeys/nk65/keymaps/default/keymap.c | 2 +- keyboards/novelkeys/nk65/keymaps/via/keymap.c | 2 +- .../novelkeys/nk87/keymaps/default/keymap.c | 2 +- keyboards/novelkeys/nk87/keymaps/via/keymap.c | 2 +- .../novelkeys/novelpad/keymaps/default/keymap.c | 2 +- keyboards/noxary/260/keymaps/default/keymap.c | 2 +- keyboards/noxary/260/keymaps/via/keymap.c | 2 +- keyboards/noxary/268/keymaps/ansi/keymap.c | 2 +- keyboards/noxary/268/keymaps/default/keymap.c | 2 +- keyboards/noxary/268/keymaps/iso/keymap.c | 2 +- keyboards/noxary/268/keymaps/via/keymap.c | 2 +- keyboards/noxary/268_2/keymaps/default/keymap.c | 2 +- keyboards/noxary/268_2/keymaps/via/keymap.c | 2 +- .../noxary/268_2_rgb/keymaps/default/keymap.c | 2 +- keyboards/noxary/268_2_rgb/keymaps/via/keymap.c | 2 +- keyboards/noxary/280/keymaps/default/keymap.c | 2 +- keyboards/noxary/280/keymaps/via/keymap.c | 2 +- .../noxary/valhalla/keymaps/default/keymap.c | 2 +- keyboards/noxary/valhalla/keymaps/via/keymap.c | 2 +- keyboards/noxary/vulcan/keymaps/default/keymap.c | 2 +- keyboards/noxary/x268/keymaps/default/keymap.c | 2 +- keyboards/noxary/x268/keymaps/via/keymap.c | 2 +- .../nullbitsco/nibble/keymaps/default/keymap.c | 2 +- keyboards/nullbitsco/nibble/keymaps/iso/keymap.c | 2 +- keyboards/nullbitsco/nibble/keymaps/via/keymap.c | 2 +- keyboards/numatreus/keymaps/default/keymap.c | 2 +- .../obosob/arch_36/keymaps/default/keymap.c | 2 +- .../steal_this_keyboard/keymaps/default/keymap.c | 2 +- .../ogre/ergo_single/keymaps/default/keymap.c | 2 +- .../ogre/ergo_split/keymaps/default/keymap.c | 2 +- keyboards/ok60/keymaps/default/keymap.c | 2 +- keyboards/ok60/keymaps/via/keymap.c | 2 +- .../omkbd/ergodash/mini/keymaps/default/keymap.c | 2 +- .../omkbd/ergodash/rev1/keymaps/default/keymap.c | 2 +- .../runner3680/3x6/keymaps/default/keymap.c | 4 ++-- .../runner3680/3x7/keymaps/default/keymap.c | 4 ++-- .../runner3680/3x8/keymaps/default/keymap.c | 4 ++-- .../runner3680/4x6/keymaps/default/keymap.c | 4 ++-- .../runner3680/4x7/keymaps/default/keymap.c | 4 ++-- .../runner3680/4x8/keymaps/default/keymap.c | 4 ++-- .../runner3680/5x6/keymaps/default/keymap.c | 4 ++-- .../runner3680/5x7/keymaps/default/keymap.c | 4 ++-- .../runner3680/5x8/keymaps/default/keymap.c | 4 ++-- keyboards/omnikeyish/keymaps/default/keymap.c | 2 +- keyboards/orange75/keymaps/default/keymap.c | 2 +- keyboards/org60/keymaps/default/keymap.c | 2 +- keyboards/ortho5by12/keymaps/default/keymap.c | 2 +- keyboards/orthocode/keymaps/default/keymap.c | 2 +- keyboards/orthocode/keymaps/via/keymap.c | 2 +- keyboards/orthodox/keymaps/default/keymap.c | 2 +- .../jelly_epoch/hotswap/keymaps/default/keymap.c | 2 +- .../jelly_epoch/hotswap/keymaps/via/keymap.c | 2 +- .../soldered/keymaps/default/keymap.c | 2 +- .../jelly_epoch/soldered/keymaps/via/keymap.c | 2 +- keyboards/owlab/spring/keymaps/default/keymap.c | 2 +- keyboards/owlab/spring/keymaps/via/keymap.c | 2 +- .../owlab/suit80/ansi/keymaps/default/keymap.c | 2 +- keyboards/owlab/suit80/ansi/keymaps/via/keymap.c | 2 +- .../owlab/suit80/iso/keymaps/default/keymap.c | 2 +- keyboards/owlab/suit80/iso/keymaps/via/keymap.c | 2 +- .../voice65/hotswap/keymaps/default/keymap.c | 2 +- .../owlab/voice65/hotswap/keymaps/via/keymap.c | 2 +- .../voice65/soldered/keymaps/default/keymap.c | 2 +- .../owlab/voice65/soldered/keymaps/via/keymap.c | 2 +- keyboards/panc40/keymaps/default/keymap.c | 2 +- .../panc40/keymaps/default_minorca/keymap.c | 2 +- .../panc40/keymaps/default_minorca/readme.md | 2 +- .../panc40/keymaps/default_sebright/keymap.c | 2 +- .../panc40/keymaps/default_sebright/readme.md | 2 +- .../gerald65/keymaps/default/keymap.c | 2 +- .../pearlboards/atlas/keymaps/default/keymap.c | 2 +- keyboards/pearlboards/atlas/keymaps/via/keymap.c | 2 +- .../pearlboards/pandora/keymaps/default/keymap.c | 2 +- .../pearlboards/pandora/keymaps/via/keymap.c | 2 +- .../pearlboards/pearl/keymaps/default/keymap.c | 2 +- keyboards/pearlboards/pearl/keymaps/via/keymap.c | 2 +- .../pearlboards/zeus/keymaps/default/keymap.c | 2 +- keyboards/pearlboards/zeus/keymaps/via/keymap.c | 2 +- .../pearlboards/zeuspad/keymaps/default/keymap.c | 2 +- .../pearlboards/zeuspad/keymaps/via/keymap.c | 2 +- keyboards/pegasus/keymaps/default/keymap.c | 2 +- keyboards/percent/canoe/keymaps/default/keymap.c | 2 +- keyboards/percent/canoe/keymaps/via/keymap.c | 2 +- .../percent/canoe_gen2/keymaps/default/keymap.c | 2 +- .../percent/canoe_gen2/keymaps/via/keymap.c | 2 +- .../titan65/hotswap/keymaps/default/keymap.c | 2 +- .../titan65/hotswap/keymaps/via/keymap.c | 2 +- .../titan65/soldered/keymaps/default/keymap.c | 2 +- .../titan65/soldered/keymaps/via/keymap.c | 2 +- .../frusta_fundamental/keymaps/default/keymap.c | 2 +- .../frusta_fundamental/keymaps/via/keymap.c | 2 +- .../pizza65/keymaps/default/keymap.c | 2 +- .../pizzakeyboards/pizza65/keymaps/via/keymap.c | 2 +- keyboards/pkb65/keymaps/default/keymap.c | 2 +- keyboards/pkb65/keymaps/via/keymap.c | 2 +- keyboards/planck/keymaps/default/keymap.c | 2 +- keyboards/planck/keymaps/via/keymap.c | 4 ++-- keyboards/planck/keymaps/via/readme.md | 2 +- keyboards/playkbtw/ca66/keymaps/default/keymap.c | 2 +- keyboards/playkbtw/ca66/keymaps/via/keymap.c | 2 +- .../playkbtw/helen80/keymaps/default/keymap.c | 2 +- keyboards/playkbtw/helen80/keymaps/via/keymap.c | 2 +- keyboards/playkbtw/pk60/keymaps/default/keymap.c | 2 +- keyboards/playkbtw/pk64rgb/keymaps/via/keymap.c | 2 +- .../plut0nium/0x3e/keymaps/default/keymap.c | 2 +- keyboards/poker87c/keymaps/default/keymap.c | 2 +- keyboards/poker87c/keymaps/via/keymap.c | 2 +- keyboards/poker87d/keymaps/default/keymap.c | 2 +- keyboards/poker87d/keymaps/via/keymap.c | 2 +- .../polycarbdiet/s20/keymaps/default/keymap.c | 2 +- .../portal_66/hotswap/keymaps/default/keymap.c | 2 +- keyboards/portal_66/hotswap/keymaps/via/keymap.c | 2 +- .../portal_66/soldered/keymaps/default/keymap.c | 2 +- .../portal_66/soldered/keymaps/via/keymap.c | 2 +- keyboards/pos78/keymaps/default/keymap.c | 2 +- keyboards/preonic/keymaps/default/keymap.c | 2 +- keyboards/preonic/keymaps/via/keymap.c | 2 +- .../primekb/meridian/keymaps/default/keymap.c | 2 +- keyboards/primekb/meridian/keymaps/via/keymap.c | 2 +- .../meridian_rgb/keymaps/default/keymap.c | 2 +- .../primekb/meridian_rgb/keymaps/via/keymap.c | 2 +- .../primekb/prime_l/keymaps/default/keymap.c | 2 +- keyboards/primekb/prime_l/keymaps/via/keymap.c | 2 +- .../program_yoink/ortho/keymaps/default/keymap.c | 2 +- .../staggered/keymaps/default/keymap.c | 4 ++-- .../program_yoink/staggered/keymaps/via/keymap.c | 8 ++++---- .../projectcain/vault35/keymaps/default/keymap.c | 2 +- .../projectcain/vault45/keymaps/default/keymap.c | 2 +- .../projectkb/alice/keymaps/default/keymap.c | 2 +- .../signature65/keymaps/default/keymap.c | 2 +- .../projectkb/signature65/keymaps/via/keymap.c | 2 +- .../signature87/keymaps/default/keymap.c | 2 +- .../projectkb/signature87/keymaps/via/keymap.c | 2 +- .../prototypist/allison/keymaps/default/keymap.c | 2 +- .../prototypist/allison/keymaps/via/keymap.c | 2 +- keyboards/punk75/keymaps/default/keymap.c | 4 ++-- keyboards/punk75/keymaps/via/keymap.c | 4 ++-- keyboards/q4z/keymaps/default/keymap.c | 2 +- .../qpockets/eggman/keymaps/default/keymap.c | 2 +- .../space_space/rev1/keymaps/default/keymap.c | 2 +- .../space_space/rev2/keymaps/default/keymap.c | 2 +- .../qpockets/wanten/keymaps/default/keymap.c | 2 +- keyboards/quantrik/kyuu/keymaps/default/keymap.c | 2 +- keyboards/quantrik/kyuu/keymaps/via/keymap.c | 2 +- .../qk65/hotswap/keymaps/default/keymap.c | 2 +- .../qwertykeys/qk65/hotswap/keymaps/via/keymap.c | 2 +- .../qk65/solder/keymaps/default/keymap.c | 2 +- .../qwertykeys/qk65/solder/keymaps/via/keymap.c | 2 +- keyboards/qwertyydox/keymaps/default/keymap.c | 2 +- .../rainkeebs/rainkeeb/keymaps/default/keymap.c | 2 +- .../rainkeebs/rainkeeb/keymaps/via/keymap.c | 2 +- .../ramonimbao/aelith/keymaps/default/keymap.c | 2 +- keyboards/ramonimbao/aelith/keymaps/via/keymap.c | 2 +- .../herringbone/pro/keymaps/via/keymap.c | 2 +- .../herringbone/v1/keymaps/via/keymap.c | 2 +- .../ramonimbao/mona/v1/keymaps/via/keymap.c | 2 +- .../ramonimbao/mona/v1_1/keymaps/via/keymap.c | 2 +- .../ramonimbao/mona/v32a/keymaps/via/keymap.c | 2 +- .../squishy65/keymaps/default/keymap.c | 2 +- .../ramonimbao/squishy65/keymaps/iso/keymap.c | 2 +- .../ramonimbao/squishy65/keymaps/via/keymap.c | 2 +- .../ramonimbao/squishyfrl/keymaps/via/keymap.c | 2 +- .../ramonimbao/wete/v1/keymaps/via/keymap.c | 2 +- keyboards/rart/rart45/keymaps/default/keymap.c | 2 +- keyboards/rart/rart45/keymaps/via/keymap.c | 2 +- keyboards/rart/rart4x4/keymaps/via/keymap.c | 2 +- keyboards/rart/rart67/keymaps/default/keymap.c | 2 +- keyboards/rart/rart67/keymaps/via/keymap.c | 2 +- keyboards/rart/rart75/keymaps/ansi/keymap.c | 2 +- keyboards/rart/rart75/keymaps/default/keymap.c | 2 +- keyboards/rart/rart75/keymaps/via/keymap.c | 2 +- keyboards/rart/rart75hs/keymaps/default/keymap.c | 2 +- keyboards/rart/rart75hs/keymaps/via/keymap.c | 2 +- keyboards/rart/rartand/keymaps/default/keymap.c | 2 +- keyboards/rart/rartand/keymaps/via/keymap.c | 2 +- keyboards/rart/rartland/keymaps/default/keymap.c | 2 +- keyboards/rart/rartland/keymaps/via/keymap.c | 2 +- keyboards/rart/rartlice/keymaps/via/keymap.c | 2 +- keyboards/rart/rartlite/keymaps/default/keymap.c | 2 +- keyboards/rart/rartlite/keymaps/via/keymap.c | 2 +- keyboards/rart/rartpad/keymaps/default/keymap.c | 2 +- keyboards/rart/rartpad/keymaps/via/keymap.c | 2 +- .../ratio65_hotswap/keymaps/default/keymap.c | 2 +- .../ratio65_hotswap/keymaps/via/keymap.c | 2 +- .../ratio65_solder/keymaps/default/keymap.c | 2 +- .../ratio65_solder/keymaps/via/keymap.c | 2 +- .../choco60/keymaps/default/keymap.c | 2 +- .../recompile_keys/choco60/keymaps/via/keymap.c | 2 +- .../cocoa40/keymaps/default/keymap.c | 2 +- .../recompile_keys/mio/keymaps/default/keymap.c | 2 +- .../recompile_keys/mio/keymaps/via/keymap.c | 2 +- .../nomu30/keymaps/default/keymap.c | 2 +- keyboards/redox/keymaps/default/keymap.c | 2 +- keyboards/redox/keymaps/via/keymap.c | 2 +- keyboards/redox_media/keymaps/default/keymap.c | 2 +- keyboards/redox_w/keymaps/default/keymap.c | 2 +- keyboards/redox_w/keymaps/via/keymap.c | 2 +- .../verb/keymaps/default/keymap.c | 2 +- .../verc/keymaps/default/keymap.c | 2 +- keyboards/retro_75/keymaps/default/keymap.c | 2 +- .../reviung/reviung33/keymaps/default/keymap.c | 2 +- .../reviung33/keymaps/default_jp/keymap.c | 2 +- .../reviung/reviung34/keymaps/default/keymap.c | 2 +- .../reviung34/keymaps/default_2u/keymap.c | 2 +- .../reviung34/keymaps/default_jp/keymap.c | 2 +- .../reviung34/keymaps/default_rgb/keymap.c | 2 +- .../reviung34/keymaps/default_rgb2u/keymap.c | 2 +- .../reviung/reviung39/keymaps/default/keymap.c | 2 +- .../reviung/reviung39/keymaps/default_s/keymap.c | 2 +- keyboards/reviung/reviung39/keymaps/via/keymap.c | 2 +- .../reviung/reviung41/keymaps/default/keymap.c | 2 +- keyboards/reviung/reviung41/keymaps/via/keymap.c | 2 +- .../reviung/reviung53/keymaps/default/keymap.c | 2 +- keyboards/reviung/reviung53/keymaps/via/keymap.c | 2 +- .../reviung/reviung61/keymaps/default/keymap.c | 2 +- .../reviung61/keymaps/default_rgb/keymap.c | 2 +- keyboards/rgbkb/mun/keymaps/default/keymap.c | 2 +- keyboards/rgbkb/mun/keymaps/via/keymap.c | 2 +- keyboards/rgbkb/pan/keymaps/default/keymap.c | 2 +- keyboards/rgbkb/sol/keymaps/default/keymap.c | 6 +++--- keyboards/rgbkb/sol/keymaps/default/readme.md | 2 +- keyboards/rgbkb/sol3/keymaps/default/keymap.c | 2 +- keyboards/rgbkb/sol3/keymaps/via/keymap.c | 2 +- .../rgbkb/zen/rev1/keymaps/default/keymap.c | 4 ++-- .../rgbkb/zen/rev2/keymaps/default/keymap.c | 2 +- .../rgbkb/zygomorph/keymaps/default/keymap.c | 4 ++-- .../rgbkb/zygomorph/keymaps/default/readme.md | 2 +- .../zygomorph/keymaps/default_oled/keymap.c | 4 ++-- .../rocketboard_16/keymaps/default/keymap.c | 2 +- keyboards/rocketboard_16/keymaps/via/keymap.c | 2 +- .../katana60/rev1/keymaps/default/keymap.c | 2 +- .../katana60/rev2/keymaps/default/keymap.c | 2 +- .../katana60/rev2/keymaps/via/keymap.c | 2 +- keyboards/roseslite/keymaps/default/keymap.c | 2 +- keyboards/roseslite/keymaps/via/keymap.c | 6 +++--- .../southpaw66/keymaps/default/keymap.c | 2 +- .../rpiguy9907/southpaw66/keymaps/via/keymap.c | 2 +- keyboards/rubi/keymaps/default/keymap.c | 2 +- keyboards/rubi/keymaps/via/keymap.c | 2 +- keyboards/runes/vaengr/keymaps/default/keymap.c | 2 +- keyboards/runes/vaengr/keymaps/via/keymap.c | 2 +- .../ryloo_studio/m0110/keymaps/default/keymap.c | 2 +- .../7skb/keymaps/default/keymap.c | 2 +- .../salicylic_acid3/7skb/keymaps/via/keymap.c | 4 ++-- .../naked48/keymaps/default/keymap.c | 2 +- .../naked48/keymaps/default/readme.md | 2 +- .../naked48/keymaps/default_with_nafuda/keymap.c | 2 +- .../keymaps/default_with_setta21/keymap.c | 2 +- .../salicylic_acid3/naked48/keymaps/via/keymap.c | 2 +- .../naked60/keymaps/default/keymap.c | 2 +- .../naked60/keymaps/default/readme.md | 2 +- .../naked60/keymaps/default_with_nafuda/keymap.c | 2 +- .../keymaps/default_with_setta21/keymap.c | 2 +- .../naked64/keymaps/default/keymap.c | 2 +- .../keymaps/default_with_setta21/keymap.c | 2 +- .../nknl7en/keymaps/default/keymap.c | 2 +- .../salicylic_acid3/nknl7en/keymaps/via/keymap.c | 2 +- .../sandwich/keeb68/keymaps/default/keymap.c | 2 +- .../satt/comet46/keymaps/default-rgbled/keymap.c | 2 +- keyboards/satt/comet46/keymaps/default/keymap.c | 2 +- keyboards/satt/vision/keymaps/default/keymap.c | 2 +- keyboards/satt/vision/keymaps/via/keymap.c | 2 +- keyboards/sauce/mild/keymaps/default/keymap.c | 2 +- keyboards/sauce/mild/keymaps/via/keymap.c | 2 +- .../vcl65/solder/keymaps/default/keymap.c | 2 +- .../vcl65/solder/keymaps/via/keymap.c | 2 +- keyboards/scatter42/keymaps/default/keymap.c | 2 +- keyboards/sck/m0116b/keymaps/default/keymap.c | 4 ++-- .../sendyyeah/75pixels/keymaps/default/keymap.c | 2 +- .../sendyyeah/75pixels/keymaps/via/keymap.c | 2 +- .../senselessclay/had60/keymaps/default/keymap.c | 2 +- .../senselessclay/had60/keymaps/iso/keymap.c | 2 +- .../senselessclay/had60/keymaps/via/keymap.c | 2 +- .../sentraq/s65_plus/keymaps/default/keymap.c | 2 +- keyboards/sentraq/s65_plus/keymaps/iso/keymap.c | 2 +- keyboards/sets3n/kk980/keymaps/default/keymap.c | 2 +- keyboards/sets3n/kk980/keymaps/via/keymap.c | 2 +- .../shapeshifter4060/keymaps/default/keymap.c | 2 +- .../majbritt/rev1/keymaps/default/keymap.c | 2 +- keyboards/signum/3_0/keymaps/default/keymap.c | 2 +- keyboards/signum/3_0/keymaps/default/layout.py | 2 +- .../silverbullet44/keymaps/default/keymap.c | 2 +- keyboards/singa/keymaps/default/keymap.c | 2 +- keyboards/singa/keymaps/via/keymap.c | 2 +- .../rooboard65/keymaps/default/keymap.c | 2 +- .../rooboard65/keymaps/via/keymap.c | 2 +- keyboards/slz40/keymaps/default/keymap.c | 2 +- keyboards/smk60/keymaps/default/keymap.c | 2 +- .../sneakbox/aliceclone/keymaps/default/keymap.c | 2 +- .../sneakbox/aliceclone/keymaps/via/keymap.c | 2 +- .../aliceclonergb/keymaps/default/keymap.c | 2 +- .../sneakbox/aliceclonergb/keymaps/via/keymap.c | 2 +- keyboards/sneakbox/ava/keymaps/default/keymap.c | 2 +- keyboards/sneakbox/ava/keymaps/via/keymap.c | 2 +- .../disarray/ortho/keymaps/default/keymap.c | 2 +- .../sneakbox/disarray/ortho/keymaps/via/keymap.c | 2 +- .../disarray/staggered/keymaps/default/keymap.c | 2 +- .../disarray/staggered/keymaps/via/keymap.c | 2 +- keyboards/sofle/keymaps/default/keymap.c | 4 ++-- keyboards/soup10/keymaps/default/keymap.c | 2 +- .../sowbug/ansi_tkl/keymaps/default/keymap.c | 2 +- keyboards/soy20/keymaps/default/keymap.c | 2 +- keyboards/soy20/keymaps/via/keymap.c | 2 +- .../nebula68/keymaps/default/keymap.c | 2 +- .../spaceholdings/nebula68/keymaps/via/keymap.c | 2 +- .../pancake/rev1/keymaps/default/keymap.c | 2 +- .../spaceman/pancake/rev1/keymaps/via/keymap.c | 2 +- .../split78/keymaps/default/keymap.c | 2 +- keyboards/splitkb/zima/keymaps/default/keymap.c | 2 +- keyboards/splitkb/zima/keymaps/via/keymap.c | 2 +- keyboards/splitty/keymaps/default/keymap.c | 2 +- .../bourgeau/keymaps/default/keymap.c | 2 +- .../studiokestra/bourgeau/keymaps/via/keymap.c | 6 +++--- .../cascade/keymaps/default/keymap.c | 2 +- .../keymaps/default_tsangan_hhkb/keymap.c | 2 +- .../studiokestra/cascade/keymaps/via/keymap.c | 2 +- .../galatea/keymaps/default/keymap.c | 2 +- .../studiokestra/galatea/keymaps/via/keymap.c | 2 +- .../studiokestra/nue/keymaps/default/keymap.c | 2 +- keyboards/studiokestra/nue/keymaps/via/keymap.c | 2 +- keyboards/subatomic/keymaps/default/keymap.c | 2 +- .../southpaw_65/keymaps/default/keymap.c | 2 +- .../southpaw_65/keymaps/default_ansi/keymap.c | 2 +- .../southpaw_65/keymaps/default_iso/keymap.c | 2 +- .../southpaw_fullsize/keymaps/default/keymap.c | 2 +- .../keymaps/default_wkl/keymap.c | 2 +- .../switchplate910/keymaps/default/keymap.c | 2 +- .../switchplate910/keymaps/via/keymap.c | 2 +- keyboards/sx60/keymaps/default/keymap.c | 2 +- keyboards/sx60/keymaps/via/keymap.c | 2 +- keyboards/synapse/keymaps/default/keymap.c | 2 +- .../system76/launch_1/keymaps/default/keymap.c | 6 +++--- .../spreadwriter/keymaps/default/keymap.c | 2 +- .../spreadwriter/keymaps/via/keymap.c | 2 +- .../taleguers75/keymaps/default/keymap.c | 2 +- .../taleguers/taleguers75/keymaps/via/keymap.c | 2 +- keyboards/tanuki/keymaps/default/keymap.c | 2 +- keyboards/tau4/keymaps/default/keymap.c | 2 +- .../teleport/numpad/keymaps/default/keymap.c | 2 +- keyboards/teleport/numpad/keymaps/via/keymap.c | 6 +++--- keyboards/tenki/keymaps/default/keymap.c | 2 +- keyboards/tenki/keymaps/via/keymap.c | 2 +- keyboards/terrazzo/keymaps/default/keymap.c | 2 +- keyboards/tg4x/keymaps/default/keymap.c | 2 +- keyboards/tg4x/keymaps/via/keymap.c | 2 +- keyboards/tgr/910/keymaps/default/keymap.c | 2 +- keyboards/tgr/910/keymaps/via/keymap.c | 2 +- keyboards/tgr/tris/keymaps/default/keymap.c | 2 +- keyboards/tgr/tris/keymaps/via/keymap.c | 2 +- .../the_royal/liminal/keymaps/default/keymap.c | 2 +- .../liminal/keymaps/default_iso/keymap.c | 2 +- .../tkc/candybar/lefty/keymaps/default/keymap.c | 2 +- .../tkc/candybar/lefty/keymaps/via/keymap.c | 6 +++--- .../candybar/lefty_r3/keymaps/default/keymap.c | 2 +- .../tkc/candybar/lefty_r3/keymaps/via/keymap.c | 6 +++--- .../tkc/candybar/righty/keymaps/default/keymap.c | 2 +- .../tkc/candybar/righty/keymaps/via/keymap.c | 6 +++--- .../candybar/righty_r3/keymaps/default/keymap.c | 2 +- .../tkc/candybar/righty_r3/keymaps/via/keymap.c | 6 +++--- .../tkc/godspeed75/keymaps/default/keymap.c | 2 +- keyboards/tkc/godspeed75/keymaps/via/keymap.c | 6 +++--- keyboards/tkc/m0lly/keymaps/default/keymap.c | 4 ++-- keyboards/tkc/m0lly/keymaps/via/keymap.c | 8 ++++---- keyboards/tkc/portico/keymaps/default/keymap.c | 4 ++-- keyboards/tkc/portico/keymaps/via/keymap.c | 4 ++-- .../tkc/portico68v2/keymaps/default/keymap.c | 2 +- keyboards/tkc/portico68v2/keymaps/via/keymap.c | 2 +- keyboards/tkc/tkc1800/keymaps/default/keymap.c | 4 ++-- keyboards/tkc/tkc1800/keymaps/via/keymap.c | 8 ++++---- keyboards/tkc/tkc1800/keymaps/wkl/keymap.c | 2 +- .../tkw/grandiceps/keymaps/default/keymap.c | 4 ++-- .../tkw/stoutgat/v1/keymaps/default/keymap.c | 2 +- keyboards/tkw/stoutgat/v2/keymaps/ansi/keymap.c | 4 ++-- .../tkw/stoutgat/v2/keymaps/default/keymap.c | 2 +- keyboards/tmo50/keymaps/default/keymap.c | 2 +- keyboards/tmo50/keymaps/via/keymap.c | 2 +- .../le_chiffre/keymaps/default/keymap.c | 2 +- .../underscore33/rev1/keymaps/default/keymap.c | 2 +- .../rev1/keymaps/default_big_space/keymap.c | 2 +- .../underscore33/rev2/keymaps/default/keymap.c | 2 +- .../rev2/keymaps/default_big_space/keymap.c | 2 +- keyboards/tr60w/keymaps/default/keymap.c | 2 +- .../trashman/ketch/keymaps/default/keymap.c | 2 +- .../treasure/type9s2/keymaps/default/keymap.c | 2 +- .../m122_3270/keymaps/default/keymap.c | 2 +- .../tszaboo/ortho4exent/keymaps/default/keymap.c | 2 +- keyboards/uk78/keymaps/default/keymap.c | 2 +- .../ungodly/launch_pad/keymaps/default/keymap.c | 2 +- .../ungodly/launch_pad/keymaps/via/keymap.c | 2 +- keyboards/ungodly/nines/keymaps/default/keymap.c | 2 +- keyboards/ungodly/nines/keymaps/via/keymap.c | 2 +- .../keymaps/default/keymap.c | 2 +- .../keymaps/default/keymap.c | 2 +- .../divergetm2/keymaps/default/keymap.c | 4 ++-- keyboards/unikorn/keymaps/default/keymap.c | 2 +- keyboards/unikorn/keymaps/tsangan/keymap.c | 2 +- keyboards/unikorn/keymaps/via/keymap.c | 2 +- keyboards/unison/keymaps/via/keymap.c | 2 +- keyboards/uzu42/keymaps/default/keymap.c | 2 +- .../v4n4g0rth0n/v1/keymaps/default/keymap.c | 6 +++--- .../v4n4g0rth0n/v2/keymaps/default/keymap.c | 6 +++--- keyboards/vagrant_10/keymaps/default/keymap.c | 2 +- .../viktus/at101_bh/keymaps/default/keymap.c | 2 +- .../viktus/omnikey_bh/keymaps/default/keymap.c | 2 +- keyboards/viktus/smolka/keymaps/default/keymap.c | 2 +- keyboards/viktus/smolka/keymaps/via/keymap.c | 2 +- keyboards/viktus/sp111/keymaps/default/keymap.c | 2 +- keyboards/viktus/sp111/keymaps/via/keymap.c | 2 +- .../viktus/sp_mini/keymaps/default/keymap.c | 2 +- keyboards/viktus/sp_mini/keymaps/via/keymap.c | 2 +- keyboards/viktus/styrka/keymaps/default/keymap.c | 2 +- keyboards/viktus/styrka/keymaps/via/keymap.c | 2 +- .../viktus/z150_bh/keymaps/default/keymap.c | 2 +- .../viktus/z150_bh/keymaps/default_tkl/keymap.c | 2 +- .../vitamins_included/keymaps/default/keymap.c | 8 ++++---- keyboards/vitamins_included/keymaps/via/keymap.c | 12 ++++++------ keyboards/waldo/keymaps/default/keymap.c | 2 +- keyboards/waldo/keymaps/via/keymap.c | 2 +- .../walletburner/cajal/keymaps/via/keymap.c | 2 +- .../walletburner/neuron/keymaps/default/keymap.c | 2 +- .../walletburner/neuron/keymaps/via/keymap.c | 2 +- .../wavtype/foundation/keymaps/default/keymap.c | 2 +- .../default_ansi_tsangan_split_bs/keymap.c | 2 +- .../keymaps/default_iso_split_bs_rshift/keymap.c | 2 +- .../default_iso_tsangan_split_bs_rshift/keymap.c | 2 +- .../wavtype/foundation/keymaps/via/keymap.c | 2 +- keyboards/wekey/polaris/keymaps/default/keymap.c | 2 +- keyboards/wekey/stelo65/keymaps/default/keymap.c | 2 +- keyboards/wekey/stelo65/keymaps/via/keymap.c | 2 +- keyboards/wekey/we27/keymaps/default/keymap.c | 2 +- keyboards/wekey/we27/keymaps/via/keymap.c | 2 +- .../westfoxtrot/aanzee/keymaps/default/keymap.c | 2 +- .../westfoxtrot/aanzee/keymaps/via/keymap.c | 2 +- .../westfoxtrot/cyclops/keymaps/default/keymap.c | 2 +- .../cypher/rev1/keymaps/default/keymap.c | 2 +- .../cypher/rev1/keymaps/default_iso/keymap.c | 2 +- .../cypher/rev5/keymaps/default/keymap.c | 2 +- .../cypher/rev5/keymaps/default_iso/keymap.c | 2 +- .../westfoxtrot/cypher/rev5/keymaps/via/keymap.c | 2 +- .../westfoxtrot/prophet/keymaps/default/keymap.c | 2 +- .../westfoxtrot/prophet/keymaps/via/keymap.c | 2 +- .../westm/westmergo/keymaps/default/keymap.c | 2 +- keyboards/westm/westmergo/keymaps/via/keymap.c | 6 +++--- keyboards/wolf/kuku65/keymaps/default/keymap.c | 2 +- keyboards/wolf/kuku65/keymaps/via/keymap.c | 2 +- keyboards/wolf/sabre/keymaps/default/keymap.c | 2 +- keyboards/wolf/sabre/keymaps/via/keymap.c | 2 +- keyboards/wolf/ts60/keymaps/default/keymap.c | 2 +- keyboards/wolf/ts60/keymaps/via/keymap.c | 2 +- .../wolfmarkclub/wm1/keymaps/default/keymap.c | 2 +- .../woodkeys/meira/keymaps/default/keymap.c | 2 +- .../scarletbandana/keymaps/default/keymap.c | 2 +- .../work_louder/loop/keymaps/default/keymap.c | 4 ++-- keyboards/work_louder/loop/keymaps/via/keymap.c | 4 ++-- .../work_louder/nano/keymaps/default/keymap.c | 2 +- keyboards/work_louder/nano/keymaps/via/keymap.c | 2 +- .../work_board/keymaps/default/keymap.c | 2 +- .../work_louder/work_board/keymaps/via/keymap.c | 2 +- keyboards/wsk/gothic50/keymaps/default/keymap.c | 2 +- keyboards/wsk/gothic70/keymaps/default/keymap.c | 2 +- keyboards/wsk/gothic70/keymaps/via/keymap.c | 4 ++-- keyboards/wsk/jerkin/keymaps/default/keymap.c | 2 +- keyboards/wsk/sl40/keymaps/default/keymap.c | 2 +- keyboards/wsk/tkl30/keymaps/default/keymap.c | 2 +- keyboards/wuque/ikki68/keymaps/default/keymap.c | 2 +- keyboards/wuque/ikki68/keymaps/via/keymap.c | 6 +++--- .../wuque/ikki68_aurora/keymaps/default/keymap.c | 2 +- .../wuque/ikki68_aurora/keymaps/via/keymap.c | 2 +- .../wuque/mammoth75x/keymaps/default/keymap.c | 2 +- keyboards/wuque/mammoth75x/keymaps/via/keymap.c | 2 +- .../wuque/serneity65/keymaps/default/keymap.c | 2 +- keyboards/wuque/serneity65/keymaps/via/keymap.c | 2 +- keyboards/x16/keymaps/default/keymap.c | 2 +- keyboards/xbows/knight/keymaps/default/keymap.c | 2 +- keyboards/xbows/knight/keymaps/via/keymap.c | 2 +- .../xbows/knight_plus/keymaps/default/keymap.c | 2 +- keyboards/xbows/knight_plus/keymaps/via/keymap.c | 2 +- keyboards/xbows/nature/keymaps/default/keymap.c | 2 +- keyboards/xbows/nature/keymaps/via/keymap.c | 2 +- keyboards/xbows/numpad/keymaps/default/keymap.c | 2 +- keyboards/xbows/numpad/keymaps/via/keymap.c | 2 +- keyboards/xbows/ranger/keymaps/default/keymap.c | 2 +- keyboards/xbows/ranger/keymaps/via/keymap.c | 2 +- keyboards/xbows/woody/keymaps/default/keymap.c | 2 +- keyboards/xelus/akis/keymaps/default/keymap.c | 2 +- keyboards/xelus/akis/keymaps/via/keymap.c | 2 +- keyboards/xelus/dharma/keymaps/default/keymap.c | 4 ++-- keyboards/xelus/dharma/keymaps/via/keymap.c | 4 ++-- .../xelus/kangaroo/keymaps/default/keymap.c | 2 +- keyboards/xelus/la_plus/keymaps/default/keymap.c | 2 +- keyboards/xelus/la_plus/keymaps/via/keymap.c | 2 +- keyboards/xelus/ninjin/keymaps/default/keymap.c | 2 +- keyboards/xelus/ninjin/keymaps/via/keymap.c | 2 +- .../pachi/mini_32u4/keymaps/default/keymap.c | 2 +- .../xelus/pachi/mini_32u4/keymaps/via/keymap.c | 2 +- .../xelus/pachi/rev1/keymaps/default/keymap.c | 2 +- keyboards/xelus/pachi/rev1/keymaps/via/keymap.c | 2 +- .../xelus/pachi/rgb/keymaps/default/keymap.c | 2 +- keyboards/xelus/pachi/rgb/keymaps/via/keymap.c | 2 +- keyboards/xelus/rs60/keymaps/default/keymap.c | 2 +- keyboards/xelus/rs60/keymaps/via/keymap.c | 2 +- .../xelus/trinityxttkl/keymaps/default/keymap.c | 2 +- .../xelus/valor/rev1/keymaps/default/keymap.c | 2 +- keyboards/xelus/valor/rev1/keymaps/via/keymap.c | 2 +- .../xelus/valor/rev2/keymaps/default/keymap.c | 2 +- keyboards/xelus/valor/rev2/keymaps/via/keymap.c | 2 +- keyboards/xiudi/xd60/keymaps/default/keymap.c | 2 +- keyboards/xiudi/xd60/keymaps/iso/keymap.c | 2 +- keyboards/xiudi/xd60/keymaps/via/keymap.c | 2 +- keyboards/xiudi/xd68/keymaps/default/keymap.c | 4 ++-- .../xiudi/xd68/keymaps/default_iso/keymap.c | 4 ++-- keyboards/xiudi/xd68/keymaps/via/keymap.c | 4 ++-- keyboards/xiudi/xd75/keymaps/default/keymap.c | 4 ++-- keyboards/xiudi/xd75/keymaps/via/keymap.c | 4 ++-- keyboards/xiudi/xd84pro/keymaps/default/keymap.c | 2 +- .../xiudi/xd84pro/keymaps/default_iso/keymap.c | 2 +- keyboards/xiudi/xd84pro/keymaps/via/keymap.c | 2 +- keyboards/yampad/keymaps/default/keymap.c | 2 +- keyboards/yampad/keymaps/via/keymap.c | 2 +- .../yandrstudio/zhou65/keymaps/default/keymap.c | 2 +- .../yandrstudio/zhou65/keymaps/via/keymap.c | 2 +- .../yanghu/unicorne/keymaps/default/keymap.c | 2 +- keyboards/ydkb/just60/keymaps/default/keymap.c | 2 +- keyboards/yeehaw/keymaps/default/keymap.c | 2 +- keyboards/yeehaw/keymaps/via/keymap.c | 2 +- .../barleycorn/keymaps/default/keymap.c | 2 +- .../barleycorn/keymaps/iso/keymap.c | 2 +- .../barleycorn/keymaps/via/keymap.c | 2 +- .../gingham/keymaps/default/keymap.c | 2 +- .../yiancardesigns/gingham/keymaps/iso/keymap.c | 2 +- .../yiancardesigns/gingham/keymaps/via/keymap.c | 2 +- keyboards/ymdk/bface/keymaps/via/keymap.c | 2 +- keyboards/ymdk/melody96/keymaps/default/keymap.c | 2 +- .../default_96_with60_split_num0/keymap.c | 2 +- keyboards/ymdk/melody96/keymaps/via/keymap.c | 2 +- keyboards/ymdk/wings/keymaps/default/keymap.c | 2 +- keyboards/ymdk/wings/keymaps/via/keymap.c | 2 +- keyboards/ymdk/wingshs/keymaps/default/keymap.c | 4 ++-- keyboards/ymdk/wingshs/keymaps/via/keymap.c | 2 +- keyboards/ymdk/yd60mq/keymaps/default/keymap.c | 2 +- keyboards/ymdk/yd60mq/keymaps/via/keymap.c | 2 +- keyboards/ymdk/ym68/keymaps/default/keymap.c | 2 +- keyboards/ymdk/ymd09/keymaps/via/keymap.c | 2 +- keyboards/ymdk/ymd40/v2/keymaps/default/keymap.c | 2 +- keyboards/ymdk/ymd40/v2/keymaps/via/keymap.c | 2 +- keyboards/ymdk/ymd67/keymaps/default/keymap.c | 2 +- .../ymdk/ymd75/keymaps/default_iso/keymap.c | 2 +- keyboards/ymdk/ymd75/keymaps/via/keymap.c | 2 +- .../lunakey_macro/keymaps/default/keymap.c | 2 +- .../yoichiro/lunakey_macro/keymaps/via/keymap.c | 2 +- .../lunakey_mini/keymaps/default/keymap.c | 2 +- .../yoichiro/lunakey_mini/keymaps/via/keymap.c | 2 +- keyboards/yosino58/keymaps/default/keymap.c | 4 ++-- .../yushakobo/navpad/10/keymaps/default/keymap.c | 2 +- .../navpad/10/keymaps/default/readme.md | 2 +- .../yushakobo/navpad/10/keymaps/via/keymap.c | 2 +- .../yushakobo/navpad/10/keymaps/via/readme.md | 2 +- .../navpad/10_helix_r/keymaps/default/keymap.c | 2 +- .../navpad/10_helix_r/keymaps/default/readme.md | 2 +- .../yushakobo/quick17/keymaps/default/keymap.c | 2 +- .../yushakobo/quick17/keymaps/default/readme.md | 2 +- keyboards/yushakobo/quick17/keymaps/via/keymap.c | 2 +- .../yushakobo/quick17/keymaps/via/readme.md | 2 +- .../yushakobo/quick7/keymaps/default/keymap.c | 2 +- .../yushakobo/quick7/keymaps/default/readme.md | 2 +- keyboards/yushakobo/quick7/keymaps/via/keymap.c | 2 +- keyboards/yushakobo/quick7/keymaps/via/readme.md | 2 +- .../yynmt/kagamidget/keymaps/default/keymap.c | 2 +- keyboards/zj68/keymaps/default/keymap.c | 2 +- keyboards/zlant/keymaps/default/keymap.c | 2 +- .../ztboards/after/keymaps/default/keymap.c | 2 +- keyboards/ztboards/noon/keymaps/default/keymap.c | 2 +- keyboards/ztboards/noon/keymaps/via/keymap.c | 2 +- .../split_blackpill/keymaps/default/keymap.c | 2 +- keyboards/zvecr/zv48/keymaps/default/keymap.c | 2 +- .../default/60_abnt2/default_60_abnt2/keymap.c | 2 +- layouts/default/64_ansi/default_64_ansi/keymap.c | 2 +- layouts/default/64_iso/default_64_iso/keymap.c | 2 +- .../numpad_5x6/default_numpad_5x6/keymap.c | 2 +- .../numpad_6x4/default_numpad_6x4/keymap.c | 2 +- .../numpad_6x5/default_numpad_6x5/keymap.c | 2 +- .../default/ortho_6x4/default_ortho_6x4/keymap.c | 2 +- 1893 files changed, 2240 insertions(+), 2240 deletions(-) diff --git a/keyboards/0_sixty/keymaps/default/keymap.c b/keyboards/0_sixty/keymaps/default/keymap.c index 21a5a218af..1dd0ee7738 100644 --- a/keyboards/0_sixty/keymaps/default/keymap.c +++ b/keyboards/0_sixty/keymaps/default/keymap.c @@ -154,7 +154,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/0_sixty/keymaps/via/keymap.c b/keyboards/0_sixty/keymaps/via/keymap.c index 7588fc3d4b..74accc10ad 100644 --- a/keyboards/0_sixty/keymaps/via/keymap.c +++ b/keyboards/0_sixty/keymaps/via/keymap.c @@ -111,7 +111,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/0xcb/static/keymaps/default/keymap.c b/keyboards/0xcb/static/keymaps/default/keymap.c index 4d0d14ff7e..d652ab35fb 100644 --- a/keyboards/0xcb/static/keymaps/default/keymap.c +++ b/keyboards/0xcb/static/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), MO(2) ), [_FN2] = LAYOUT_all( - RESET, + QK_BOOT, 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/0xcb/static/keymaps/via/keymap.c b/keyboards/0xcb/static/keymaps/via/keymap.c index 62fcca1f3c..6b5f8a683c 100644 --- a/keyboards/0xcb/static/keymaps/via/keymap.c +++ b/keyboards/0xcb/static/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), MO(2) ), [_FN2] = LAYOUT_all( - RESET, + QK_BOOT, 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_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/1upkeyboards/1up60hse/keymaps/default/keymap.c b/keyboards/1upkeyboards/1up60hse/keymaps/default/keymap.c index 97bece94b3..b169df09c0 100644 --- a/keyboards/1upkeyboards/1up60hse/keymaps/default/keymap.c +++ b/keyboards/1upkeyboards/1up60hse/keymaps/default/keymap.c @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------------' */ [2] = LAYOUT_60_ansi( - 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, RESET, + 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, QK_BOOT, BL_TOGG, BL_INC, BL_DEC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, diff --git a/keyboards/1upkeyboards/1up60hse/keymaps/via/keymap.c b/keyboards/1upkeyboards/1up60hse/keymaps/via/keymap.c index cd4ea637aa..6ab29d2555 100644 --- a/keyboards/1upkeyboards/1up60hse/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/1up60hse/keymaps/via/keymap.c @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------------' */ [2] = LAYOUT_60_ansi( - 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, RESET, + 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, QK_BOOT, BL_TOGG, BL_INC, BL_DEC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, KC_TRNS, KC_TRNS, diff --git a/keyboards/1upkeyboards/1up60hte/keymaps/default/keymap.c b/keyboards/1upkeyboards/1up60hte/keymaps/default/keymap.c index 79a2fa92a7..fd9333213b 100644 --- a/keyboards/1upkeyboards/1up60hte/keymaps/default/keymap.c +++ b/keyboards/1upkeyboards/1up60hte/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_tsangan_hhkb( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, KC_SLCK, KC_PAUS, KC_UP, _______, KC_CLR, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, RGB_VAD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_END, KC_PGDN, KC_DOWN, _______, _______, diff --git a/keyboards/1upkeyboards/1up60hte/keymaps/via/keymap.c b/keyboards/1upkeyboards/1up60hte/keymaps/via/keymap.c index 5ecea37597..70927f8cbb 100644 --- a/keyboards/1upkeyboards/1up60hte/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/1up60hte/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_tsangan_hhkb( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, KC_SLCK, KC_PAUS, KC_UP, _______, KC_CLR, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, KC_MPRV, KC_MNXT, RGB_VAD, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_END, KC_PGDN, KC_DOWN, _______, _______, diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c index bd7e96aad9..efdd778215 100644 --- a/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c +++ b/keyboards/1upkeyboards/1up60rgb/keymaps/tsangan/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_RCTL), LAYOUT_all( - 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, KC_TRNS, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_UP, 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_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/1upkeyboards/1up60rgb/keymaps/via/keymap.c b/keyboards/1upkeyboards/1up60rgb/keymaps/via/keymap.c index 1ff6ef5b40..28fb50f574 100644 --- a/keyboards/1upkeyboards/1up60rgb/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/1up60rgb/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/1upkeyboards/super16/keymaps/via/keymap.c b/keyboards/1upkeyboards/super16/keymaps/via/keymap.c index bd3466814a..3557a5ddb0 100644 --- a/keyboards/1upkeyboards/super16/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/super16/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_4x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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 diff --git a/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c b/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c index b80db58bae..ba6d6c4d71 100644 --- a/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c +++ b/keyboards/1upkeyboards/super16v2/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, RGB_SPI, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT ), }; diff --git a/keyboards/1upkeyboards/super16v2/keymaps/via/keymap.c b/keyboards/1upkeyboards/super16v2/keymaps/via/keymap.c index 7e8f41b909..0475107aed 100644 --- a/keyboards/1upkeyboards/super16v2/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/super16v2/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT ), [2] = LAYOUT_ortho_4x4( diff --git a/keyboards/1upkeyboards/sweet16/keymaps/via/keymap.c b/keyboards/1upkeyboards/sweet16/keymaps/via/keymap.c index bd3466814a..3557a5ddb0 100644 --- a/keyboards/1upkeyboards/sweet16/keymaps/via/keymap.c +++ b/keyboards/1upkeyboards/sweet16/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_4x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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 diff --git a/keyboards/25keys/aleth42/keymaps/default/keymap.c b/keyboards/25keys/aleth42/keymaps/default/keymap.c index 707af7116a..4868bbce1d 100644 --- a/keyboards/25keys/aleth42/keymaps/default/keymap.c +++ b/keyboards/25keys/aleth42/keymaps/default/keymap.c @@ -100,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( KC_MUTE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, BL_TOGG, BL_STEP, BL_INC, AG_NORM, RGB_TOG, RGB_HUI, AG_SWAP, RGB_SAI, RGB_VAI, KC_F12, - KC_CAPS, RESET, BL_BRTG, BL_DEC, _______, RGB_MOD, RGB_HUD, _______, RGB_SAD, RGB_VAD, _______, + KC_CAPS, QK_BOOT, BL_BRTG, BL_DEC, _______, RGB_MOD, RGB_HUD, _______, RGB_SAD, RGB_VAD, _______, KC_SLEP, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/25keys/aleth42/keymaps/via/keymap.c b/keyboards/25keys/aleth42/keymaps/via/keymap.c index 2801e65ec4..fc0c2c46c9 100644 --- a/keyboards/25keys/aleth42/keymaps/via/keymap.c +++ b/keyboards/25keys/aleth42/keymaps/via/keymap.c @@ -100,7 +100,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( KC_MUTE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, BL_TOGG, BL_STEP, BL_INC, AG_NORM, RGB_TOG, RGB_HUI, AG_SWAP, RGB_SAI, RGB_VAI, KC_F12, - KC_CAPS, RESET, BL_BRTG, BL_DEC, _______, RGB_MOD, RGB_HUD, _______, RGB_SAD, RGB_VAD, _______, + KC_CAPS, QK_BOOT, BL_BRTG, BL_DEC, _______, RGB_MOD, RGB_HUD, _______, RGB_SAD, RGB_VAD, _______, KC_SLEP, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/25keys/zinc/keymaps/default/keymap.c b/keyboards/25keys/zinc/keymaps/default/keymap.c index 449c635a5d..925d252247 100644 --- a/keyboards/25keys/zinc/keymaps/default/keymap.c +++ b/keyboards/25keys/zinc/keymaps/default/keymap.c @@ -145,7 +145,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' `-----------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, RGBRST, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, KC_INS, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, KC_INS, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, AG_NORM, AG_SWAP, KC_MINS, KC_EQL, KC_PSCR, KC_SLCK, KC_PAUS, RGB_RMOD,RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, EISU, EISU, EISU, KANA, KANA, KANA, KC_HOME, KC_PGDN, KC_END diff --git a/keyboards/25keys/zinc/keymaps/via/keymap.c b/keyboards/25keys/zinc/keymaps/via/keymap.c index 7c961c710d..22c08b0abb 100644 --- a/keyboards/25keys/zinc/keymaps/via/keymap.c +++ b/keyboards/25keys/zinc/keymaps/via/keymap.c @@ -134,14 +134,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' `-----------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, RGBRST, _______, _______, _______, _______, QWERTY, _______, _______, _______, KC_INS, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, QWERTY, _______, _______, _______, KC_INS, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, AG_NORM, AG_SWAP, KC_MINS, KC_EQL, KC_PSCR, KC_SLCK, KC_PAUS, RGB_RMOD,RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, EISU, EISU, EISU, KANA, KANA, KANA, KC_HOME, KC_PGDN, KC_END ), [_ADJUST2] = LAYOUT_ortho_4x12( - _______, RESET, RGBRST, _______, _______, _______, _______, QWERTY, _______, _______, _______, KC_INS, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, QWERTY, _______, _______, _______, KC_INS, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, AG_NORM, AG_SWAP, KC_MINS, KC_EQL, KC_PSCR, KC_SLCK, KC_PAUS, RGB_RMOD,RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, EISU, EISU, EISU, KANA, KANA, KANA, KC_HOME, KC_PGDN, KC_END diff --git a/keyboards/30wer/keymaps/default/keymap.c b/keyboards/30wer/keymaps/default/keymap.c index d740391646..2f1dbd2862 100644 --- a/keyboards/30wer/keymaps/default/keymap.c +++ b/keyboards/30wer/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_UP, KC_DEL, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, KC_LEFT, KC_RGHT, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_LEFT, KC_RGHT, _______, KC_LALT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DOWN, _______ ), diff --git a/keyboards/40percentclub/4x4/keymaps/default/keymap.c b/keyboards/40percentclub/4x4/keymaps/default/keymap.c index 079f6caeed..4fe5a1d464 100644 --- a/keyboards/40percentclub/4x4/keymaps/default/keymap.c +++ b/keyboards/40percentclub/4x4/keymaps/default/keymap.c @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* DIRECTIONS * .-----------------------------------------------------------------------------------------------------------------------------------------------. - * | RESET | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | | + * | QK_BOOT | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | CAPSLK | left | down | right | PrScr | SHIFT | CTRL | PgDn | End | [ | ] | \ | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [DIR] = LAYOUT_ortho_4x16( - RESET, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, _______, + QK_BOOT, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_LCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, _______, _______, _______, _______, _______, DF(PAD), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/40percentclub/4x4/keymaps/via/keymap.c b/keyboards/40percentclub/4x4/keymaps/via/keymap.c index 3c39e98545..b7d3fc6308 100644 --- a/keyboards/40percentclub/4x4/keymaps/via/keymap.c +++ b/keyboards/40percentclub/4x4/keymaps/via/keymap.c @@ -85,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* DIRECTIONS * .-----------------------------------------------------------------------------------------------------------------------------------------------. - * | RESET | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | | + * | QK_BOOT | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | CAPSLK | left | down | right | PrScr | SHIFT | CTRL | PgDn | End | [ | ] | \ | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -96,7 +96,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [DIR] = LAYOUT_ortho_4x16( - RESET, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, _______, + QK_BOOT, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_LCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, _______, _______, _______, _______, _______, DF(PAD), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/40percentclub/5x5/keymaps/default/keymap.c b/keyboards/40percentclub/5x5/keymaps/default/keymap.c index 5dfd72f7e9..ce4fc2677b 100644 --- a/keyboards/40percentclub/5x5/keymaps/default/keymap.c +++ b/keyboards/40percentclub/5x5/keymaps/default/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | RESET | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | + * | QK_BOOT | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | CAPSLK | left | down | right | PrScr | SHIFT | CTRL | PgDn | End | [ | ] | \ | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -91,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [DIR] = LAYOUT_ortho_5x15( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, + QK_BOOT, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_LCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, _______, _______, _______, _______, DF(PAD), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/40percentclub/5x5/keymaps/via/keymap.c b/keyboards/40percentclub/5x5/keymaps/via/keymap.c index 735fa6b145..b65db272a9 100644 --- a/keyboards/40percentclub/5x5/keymaps/via/keymap.c +++ b/keyboards/40percentclub/5x5/keymaps/via/keymap.c @@ -96,7 +96,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .--------------------------------------------------------------------------------------------------------------------------------------. * | | | | | | | | | | | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | RESET | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | + * | QK_BOOT | TAB | up | | INS | CTRL | SHIFT | PgUp | Home | - | = | DEL | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | CAPSLK | left | down | right | PrScr | SHIFT | CTRL | PgDn | End | [ | ] | \ | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -108,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [DIR] = LAYOUT_ortho_5x15( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, + QK_BOOT, KC_TAB, KC_UP, _______, KC_INS, KC_LCTL, KC_LSFT, KC_PGUP, KC_HOME, KC_MINS, KC_EQL, KC_DEL, _______, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_PSCR, KC_LSFT, KC_LCTL, KC_PGDN, KC_END, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_RGUI, KC_RALT, _______, _______, _______, _______, _______, DF(PAD), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/40percentclub/foobar/keymaps/default/keymap.c b/keyboards/40percentclub/foobar/keymaps/default/keymap.c index 02e705998d..26bbd8a3ca 100644 --- a/keyboards/40percentclub/foobar/keymaps/default/keymap.c +++ b/keyboards/40percentclub/foobar/keymaps/default/keymap.c @@ -70,6 +70,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FN5] = LAYOUT_split( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______ ), }; diff --git a/keyboards/40percentclub/gherkin/keymaps/default/keymap.c b/keyboards/40percentclub/gherkin/keymaps/default/keymap.c index 3394c9daee..cef154eed0 100644 --- a/keyboards/40percentclub/gherkin/keymaps/default/keymap.c +++ b/keyboards/40percentclub/gherkin/keymaps/default/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [5] = LAYOUT_ortho_3x10( KC_CALC, KC_WHOM, KC_MAIL, KC_MYCM, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/40percentclub/luddite/keymaps/via/keymap.c b/keyboards/40percentclub/luddite/keymaps/via/keymap.c index df732befaa..61f83e6710 100644 --- a/keyboards/40percentclub/luddite/keymaps/via/keymap.c +++ b/keyboards/40percentclub/luddite/keymaps/via/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_60_ansi( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_INC, BL_DEC, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, 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 diff --git a/keyboards/40percentclub/nein/keymaps/default/keymap.c b/keyboards/40percentclub/nein/keymaps/default/keymap.c index c1d4e8ef48..4d8351000c 100644 --- a/keyboards/40percentclub/nein/keymaps/default/keymap.c +++ b/keyboards/40percentclub/nein/keymaps/default/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ortho_3x3( - RESET, _______, KC_STOP, + QK_BOOT, _______, KC_STOP, _______, _______, RGB_MOD, KC_MPRV, _______, KC_MNXT ), diff --git a/keyboards/40percentclub/nein/keymaps/via/keymap.c b/keyboards/40percentclub/nein/keymaps/via/keymap.c index 528de8246d..2fecb3965c 100644 --- a/keyboards/40percentclub/nein/keymaps/via/keymap.c +++ b/keyboards/40percentclub/nein/keymaps/via/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ortho_3x3( - RESET, _______, KC_STOP, + QK_BOOT, _______, KC_STOP, _______, _______, RGB_MOD, KC_MPRV, _______, KC_MNXT ), diff --git a/keyboards/40percentclub/nori/keymaps/default/keymap.c b/keyboards/40percentclub/nori/keymaps/default/keymap.c index 3d379a8af6..25d5c89af3 100644 --- a/keyboards/40percentclub/nori/keymaps/default/keymap.c +++ b/keyboards/40percentclub/nori/keymaps/default/keymap.c @@ -124,7 +124,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/40percentclub/tomato/keymaps/default/keymap.c b/keyboards/40percentclub/tomato/keymaps/default/keymap.c index befdad0e24..5ccf1df661 100644 --- a/keyboards/40percentclub/tomato/keymaps/default/keymap.c +++ b/keyboards/40percentclub/tomato/keymaps/default/keymap.c @@ -94,6 +94,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_ortho_3x10 ( KC_CALC,KC_WSCH,KC_MAIL,KC_MYCM,_______,_______,_______,_______,_______,_______ , RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,XXXXXXX,XXXXXXX,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD - , _______,_______,_______,_______,RESET, _______,_______,_______,_______,_______ + , _______,_______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______ ), }; diff --git a/keyboards/45_ats/keymaps/default/keymap.c b/keyboards/45_ats/keymaps/default/keymap.c index de69c4b05e..455506a330 100644 --- a/keyboards/45_ats/keymaps/default/keymap.c +++ b/keyboards/45_ats/keymaps/default/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLU, KC_SLEP, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_WAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/45_ats/keymaps/via/keymap.c b/keyboards/45_ats/keymaps/via/keymap.c index de69c4b05e..455506a330 100644 --- a/keyboards/45_ats/keymaps/via/keymap.c +++ b/keyboards/45_ats/keymaps/via/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLU, KC_SLEP, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_WAKE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/4pplet/aekiso60/keymaps/default/keymap.c b/keyboards/4pplet/aekiso60/keymaps/default/keymap.c index e0938a5fde..b99f097bb9 100644 --- a/keyboards/4pplet/aekiso60/keymaps/default/keymap.c +++ b/keyboards/4pplet/aekiso60/keymaps/default/keymap.c @@ -15,6 +15,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_BSPC, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_MUTE, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_INS, KC_PENT, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_PPLS, KC_PMNS, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - RESET, _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, _______ + QK_BOOT, _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, _______ ) }; diff --git a/keyboards/4pplet/aekiso60/keymaps/via/keymap.c b/keyboards/4pplet/aekiso60/keymaps/via/keymap.c index 151c3bc4a7..2e0244ce2e 100644 --- a/keyboards/4pplet/aekiso60/keymaps/via/keymap.c +++ b/keyboards/4pplet/aekiso60/keymaps/via/keymap.c @@ -15,7 +15,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_BSPC, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, KC_MUTE, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_INS, KC_PENT, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_PPLS, KC_PMNS, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - RESET, _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, _______ + QK_BOOT, _______, _______, _______, _______, _______, KC_BRID, KC_BRIU, _______ ), [2] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/4pplet/bootleg/keymaps/default/keymap.c b/keyboards/4pplet/bootleg/keymaps/default/keymap.c index c9ae421af1..69f433eb67 100644 --- a/keyboards/4pplet/bootleg/keymaps/default/keymap.c +++ b/keyboards/4pplet/bootleg/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/bootleg/keymaps/via/keymap.c b/keyboards/4pplet/bootleg/keymaps/via/keymap.c index b83266d8c1..b225beb190 100644 --- a/keyboards/4pplet/bootleg/keymaps/via/keymap.c +++ b/keyboards/4pplet/bootleg/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/eagle_viper_rep/keymaps/default/keymap.c b/keyboards/4pplet/eagle_viper_rep/keymaps/default/keymap.c index addf690e4a..d7d2cbc2d2 100644 --- a/keyboards/4pplet/eagle_viper_rep/keymaps/default/keymap.c +++ b/keyboards/4pplet/eagle_viper_rep/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, KC_RGUI, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/eagle_viper_rep/keymaps/via/keymap.c b/keyboards/4pplet/eagle_viper_rep/keymaps/via/keymap.c index 70e55ceb7e..88e58b5588 100644 --- a/keyboards/4pplet/eagle_viper_rep/keymaps/via/keymap.c +++ b/keyboards/4pplet/eagle_viper_rep/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_NO, KC_RALT, KC_RGUI, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/steezy60/keymaps/default/keymap.c b/keyboards/4pplet/steezy60/keymaps/default/keymap.c index 6a922b0f3e..924b6f7346 100644 --- a/keyboards/4pplet/steezy60/keymaps/default/keymap.c +++ b/keyboards/4pplet/steezy60/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_NO, KC_LALT, KC_NO, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_NO, KC_APP, MO(1)), [1] = LAYOUT_all( - 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, _______, KC_DEL, + QK_BOOT, 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_BSPC, KC_UP, KC_ENT, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MUTE, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, diff --git a/keyboards/4pplet/steezy60/keymaps/via/keymap.c b/keyboards/4pplet/steezy60/keymaps/via/keymap.c index 603d85771d..0b998fc645 100644 --- a/keyboards/4pplet/steezy60/keymaps/via/keymap.c +++ b/keyboards/4pplet/steezy60/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_NO, KC_LALT, KC_NO, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_NO, KC_APP, MO(1)), [1] = LAYOUT_all( - 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, _______, KC_DEL, + QK_BOOT, 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_BSPC, KC_UP, KC_ENT, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, KC_CAPS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_MUTE, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLD, KC_VOLU, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, diff --git a/keyboards/4pplet/waffling60/keymaps/default/keymap.c b/keyboards/4pplet/waffling60/keymaps/default/keymap.c index b60a7154d7..ae3a840610 100644 --- a/keyboards/4pplet/waffling60/keymaps/default/keymap.c +++ b/keyboards/4pplet/waffling60/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/waffling60/keymaps/via/keymap.c b/keyboards/4pplet/waffling60/keymaps/via/keymap.c index 3e20ef9f56..a1d4c9c940 100644 --- a/keyboards/4pplet/waffling60/keymaps/via/keymap.c +++ b/keyboards/4pplet/waffling60/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, MO(1)), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/4pplet/waffling80/keymaps/via/keymap.c b/keyboards/4pplet/waffling80/keymaps/via/keymap.c index 6c0d81ba40..f599868dfd 100644 --- a/keyboards/4pplet/waffling80/keymaps/via/keymap.c +++ b/keyboards/4pplet/waffling80/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), MO(1)), // extra keys for alps dual action switches // basic function layer [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS), // extra keys for alps dual action switches [2] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS), // extra keys for alps dual action switches [3] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, diff --git a/keyboards/4pplet/yakiimo/keymaps/default/keymap.c b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c index 37784917dc..ae5e71715e 100644 --- a/keyboards/4pplet/yakiimo/keymaps/default/keymap.c +++ b/keyboards/4pplet/yakiimo/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), // basic function layer [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/4pplet/yakiimo/keymaps/via/keymap.c b/keyboards/4pplet/yakiimo/keymaps/via/keymap.c index 969b05c868..2646dba11a 100644 --- a/keyboards/4pplet/yakiimo/keymaps/via/keymap.c +++ b/keyboards/4pplet/yakiimo/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), // basic function layer [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), // extra layer for VIA [2] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // extra layer for VIA [3] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/8pack/keymaps/default/keymap.c b/keyboards/8pack/keymaps/default/keymap.c index aa1aa91701..9637f57702 100644 --- a/keyboards/8pack/keymaps/default/keymap.c +++ b/keyboards/8pack/keymaps/default/keymap.c @@ -7,6 +7,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( RGB_TOG, RGB_RMOD, RGB_MOD, KC_NO, - RESET, BL_DEC, BL_INC, BL_TOGG + QK_BOOT, BL_DEC, BL_INC, BL_TOGG ) }; diff --git a/keyboards/acekeyboard/titan60/keymaps/default/keymap.c b/keyboards/acekeyboard/titan60/keymaps/default/keymap.c index f631bff3f0..68f13497b1 100644 --- a/keyboards/acekeyboard/titan60/keymaps/default/keymap.c +++ b/keyboards/acekeyboard/titan60/keymaps/default/keymap.c @@ -43,6 +43,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_RMOD,KC_UP, RGB_MOD, RGB_M_R, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, BS_SWAP, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, KC_CALC, KC_MPLY, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, - KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/acekeyboard/titan60/keymaps/iso/keymap.c b/keyboards/acekeyboard/titan60/keymaps/iso/keymap.c index 6f56d2d420..dfeeea7547 100644 --- a/keyboards/acekeyboard/titan60/keymaps/iso/keymap.c +++ b/keyboards/acekeyboard/titan60/keymaps/iso/keymap.c @@ -30,6 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_RMOD,KC_UP, RGB_MOD, RGB_M_R, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, BS_SWAP, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, KC_CALC, KC_MPLY, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, - KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/acekeyboard/titan60/keymaps/tsangan/keymap.c b/keyboards/acekeyboard/titan60/keymaps/tsangan/keymap.c index 4c18f99f55..76609c465a 100644 --- a/keyboards/acekeyboard/titan60/keymaps/tsangan/keymap.c +++ b/keyboards/acekeyboard/titan60/keymaps/tsangan/keymap.c @@ -30,6 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_RMOD, RGB_MOD, RGB_M_R, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_CLR, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, KC_CALC, KC_MPLY, KC_MNXT, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, - KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_STOP, KC_TRNS, KC_TRNS + KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_STOP, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/acheron/elongate/delta/keymaps/default/keymap.c b/keyboards/acheron/elongate/delta/keymaps/default/keymap.c index a701d9ed9b..9a9c2d6e73 100755 --- a/keyboards/acheron/elongate/delta/keymaps/default/keymap.c +++ b/keyboards/acheron/elongate/delta/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_HOME, KC_PGDN, KC_END , KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( /* Base */ - RESET , 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, + QK_BOOT , 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, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_M_T, 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_SPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/acheron/elongate/delta/keymaps/via/keymap.c b/keyboards/acheron/elongate/delta/keymaps/via/keymap.c index a701d9ed9b..9a9c2d6e73 100755 --- a/keyboards/acheron/elongate/delta/keymaps/via/keymap.c +++ b/keyboards/acheron/elongate/delta/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_HOME, KC_PGDN, KC_END , KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( /* Base */ - RESET , 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, + QK_BOOT , 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, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_M_T, 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_SPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/acheron/shark/alpha/keymaps/default/keymap.c b/keyboards/acheron/shark/alpha/keymaps/default/keymap.c index 926fc26f02..a02e82257f 100644 --- a/keyboards/acheron/shark/alpha/keymaps/default/keymap.c +++ b/keyboards/acheron/shark/alpha/keymaps/default/keymap.c @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC , _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/acheron/shark/alpha/keymaps/via/keymap.c b/keyboards/acheron/shark/alpha/keymaps/via/keymap.c index e005da9544..34a58d508f 100644 --- a/keyboards/acheron/shark/alpha/keymaps/via/keymap.c +++ b/keyboards/acheron/shark/alpha/keymaps/via/keymap.c @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC , _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ada/ada1800mini/keymaps/default/keymap.c b/keyboards/ada/ada1800mini/keymaps/default/keymap.c index 6937871a01..87fc4b6da2 100644 --- a/keyboards/ada/ada1800mini/keymaps/default/keymap.c +++ b/keyboards/ada/ada1800mini/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_DEL, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_DEL, _______, _______, _______, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_SCLN, KC_QUOT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, KC_COMM, KC_DOT, KC_SLSH, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______ diff --git a/keyboards/ada/infinity81/keymaps/default/keymap.c b/keyboards/ada/infinity81/keymaps/default/keymap.c index 0a6aae93f4..69bb3ce722 100644 --- a/keyboards/ada/infinity81/keymaps/default/keymap.c +++ b/keyboards/ada/infinity81/keymaps/default/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LSFT, KC_UP, MO(1), KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/adpenrose/kintsugi/keymaps/default/keymap.c b/keyboards/adpenrose/kintsugi/keymaps/default/keymap.c index 7e03701461..278f53266b 100644 --- a/keyboards/adpenrose/kintsugi/keymaps/default/keymap.c +++ b/keyboards/adpenrose/kintsugi/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( _______, 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, _______, RGB_TOG, RGB_VAI, RGB_VAD, RGB_MODE_FORWARD, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, _______, _______ ), diff --git a/keyboards/adpenrose/kintsugi/keymaps/via/keymap.c b/keyboards/adpenrose/kintsugi/keymaps/via/keymap.c index 80764047df..b9b05e38fa 100644 --- a/keyboards/adpenrose/kintsugi/keymaps/via/keymap.c +++ b/keyboards/adpenrose/kintsugi/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SPC, _______, _______, _______, _______, _______ ), diff --git a/keyboards/aeboards/constellation/keymaps/default/keymap.c b/keyboards/aeboards/constellation/keymaps/default/keymap.c index 70e7633325..b9d847c136 100755 --- a/keyboards/aeboards/constellation/keymaps/default/keymap.c +++ b/keyboards/aeboards/constellation/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_GRV, 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_INS, KC_DEL, RESET, + KC_GRV, 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_INS, KC_DEL, QK_BOOT, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, 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, diff --git a/keyboards/aeboards/ext65/keymaps/default/keymap.c b/keyboards/aeboards/ext65/keymaps/default/keymap.c index 1f933ca1ca..e73a74bf1e 100644 --- a/keyboards/aeboards/ext65/keymaps/default/keymap.c +++ b/keyboards/aeboards/ext65/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ext65( - 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, RESET, + 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, 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, EEP_RST, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, 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, DEBUG, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, 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, diff --git a/keyboards/aeboards/ext65/keymaps/via/keymap.c b/keyboards/aeboards/ext65/keymaps/via/keymap.c index 1f933ca1ca..e73a74bf1e 100644 --- a/keyboards/aeboards/ext65/keymaps/via/keymap.c +++ b/keyboards/aeboards/ext65/keymaps/via/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ext65( - 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, RESET, + 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, 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, EEP_RST, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, 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, DEBUG, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, 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, diff --git a/keyboards/afternoonlabs/breeze/keymaps/default/keymap.c b/keyboards/afternoonlabs/breeze/keymaps/default/keymap.c index fc9bdac9c8..10fbfe660a 100644 --- a/keyboards/afternoonlabs/breeze/keymaps/default/keymap.c +++ b/keyboards/afternoonlabs/breeze/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐┌────────┬────────┬────────┐ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/breeze/keymaps/via/keymap.c b/keyboards/afternoonlabs/breeze/keymaps/via/keymap.c index 3ed084736f..aeb91b1113 100644 --- a/keyboards/afternoonlabs/breeze/keymaps/via/keymap.c +++ b/keyboards/afternoonlabs/breeze/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐┌────────┬────────┬────────┐ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/oceanbreeze/keymaps/default/keymap.c b/keyboards/afternoonlabs/oceanbreeze/keymaps/default/keymap.c index 73d0dda0f3..61f41c1e85 100644 --- a/keyboards/afternoonlabs/oceanbreeze/keymaps/default/keymap.c +++ b/keyboards/afternoonlabs/oceanbreeze/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐┌────────┬────────┬────────┐ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/southern_breeze/keymaps/default/keymap.c b/keyboards/afternoonlabs/southern_breeze/keymaps/default/keymap.c index 5dbc6139a5..f6de8b5b8c 100644 --- a/keyboards/afternoonlabs/southern_breeze/keymaps/default/keymap.c +++ b/keyboards/afternoonlabs/southern_breeze/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┐┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_MUTE, KC_VOLD, KC_VOLU, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_MUTE, KC_VOLD, KC_VOLU, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/southern_breeze/keymaps/via/keymap.c b/keyboards/afternoonlabs/southern_breeze/keymaps/via/keymap.c index 691d52315c..a1888bfb68 100644 --- a/keyboards/afternoonlabs/southern_breeze/keymaps/via/keymap.c +++ b/keyboards/afternoonlabs/southern_breeze/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┐┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ - KC_MUTE, KC_VOLD, KC_VOLU, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + KC_MUTE, KC_VOLD, KC_VOLU, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/summer_breeze/keymaps/default/keymap.c b/keyboards/afternoonlabs/summer_breeze/keymaps/default/keymap.c index 481c6c01d6..3468b86467 100644 --- a/keyboards/afternoonlabs/summer_breeze/keymaps/default/keymap.c +++ b/keyboards/afternoonlabs/summer_breeze/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┐┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐┌────────┬────────┬────────┐ - _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ _______, KC_BTN3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ diff --git a/keyboards/afternoonlabs/summer_breeze/keymaps/via/keymap.c b/keyboards/afternoonlabs/summer_breeze/keymaps/via/keymap.c index 3fe1a033fd..6190aa66a2 100644 --- a/keyboards/afternoonlabs/summer_breeze/keymaps/via/keymap.c +++ b/keyboards/afternoonlabs/summer_breeze/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( //┌────────┬────────┬────────┐┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐┌────────┬────────┬────────┐ - _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ _______, KC_BTN3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, //├────────┼────────┼────────┤├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤├────────┼────────┼────────┤ diff --git a/keyboards/ai03/equinox/keymaps/default/keymap.c b/keyboards/ai03/equinox/keymaps/default/keymap.c index a7c358a37a..10e8171077 100644 --- a/keyboards/ai03/equinox/keymaps/default/keymap.c +++ b/keyboards/ai03/equinox/keymaps/default/keymap.c @@ -32,6 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, 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 + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/ai03/jp60/keymaps/default/keymap.c b/keyboards/ai03/jp60/keymaps/default/keymap.c index 6b69dba9dd..a6423ef834 100644 --- a/keyboards/ai03/jp60/keymaps/default/keymap.c +++ b/keyboards/ai03/jp60/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, JP_MHEN, KC_SPC, JP_HENK, JP_KANA, JP_ZKHK, JP_EISU ), [_FN] = LAYOUT( /* FN */ - 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, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ai03/jp60/keymaps/via/keymap.c b/keyboards/ai03/jp60/keymaps/via/keymap.c index efce7acf3c..7ee7327a96 100644 --- a/keyboards/ai03/jp60/keymaps/via/keymap.c +++ b/keyboards/ai03/jp60/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_MHEN, KC_SPC, KC_HENK, KC_KANA, KC_GRV, KC_CAPS ), [_FN1] = LAYOUT( /* FN1 */ - 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, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ai03/lunar/keymaps/default/keymap.c b/keyboards/ai03/lunar/keymaps/default/keymap.c index e05775c2d5..bf04bbea85 100644 --- a/keyboards/ai03/lunar/keymaps/default/keymap.c +++ b/keyboards/ai03/lunar/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( /* FN */ - 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, KC_DEL, KC_DEL, MANUAL, + QK_BOOT, 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_DEL, MANUAL, KC_CAPS, _______, KC_UP, _______, _______, _______, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_MPRV, KC_MPLY, KC_MNXT, _______, SWPLURL, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, _______, KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0, KC_P1, KC_P2, KC_P3, _______, _______, KC_PGUP, _______, diff --git a/keyboards/ai03/lunar/keymaps/via/keymap.c b/keyboards/ai03/lunar/keymaps/via/keymap.c index b98e6cf0aa..87eb533be5 100644 --- a/keyboards/ai03/lunar/keymaps/via/keymap.c +++ b/keyboards/ai03/lunar/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, MO(1), KC_GRV, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( /* FN */ - 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, KC_DEL, KC_DEL, _______, + QK_BOOT, 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_DEL, _______, KC_CAPS, _______, KC_UP, _______, _______, _______, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_VOLD, KC_VOLU, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, _______, KC_RCTL, KC_RGUI, KC_RALT, _______, _______, KC_P0, KC_P1, KC_P2, KC_P3, _______, _______, KC_PGUP, _______, diff --git a/keyboards/ai03/orbit_x/keymaps/default/keymap.c b/keyboards/ai03/orbit_x/keymaps/default/keymap.c index 619310bd6a..8b62eb9eb4 100644 --- a/keyboards/ai03/orbit_x/keymaps/default/keymap.c +++ b/keyboards/ai03/orbit_x/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [_FN] = LAYOUT( - RESET, XXXXXXX, KC_F1, KC_F2, KC_F3, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, XXXXXXX, RESET, + QK_BOOT, XXXXXXX, KC_F1, KC_F2, KC_F3, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, XXXXXXX, QK_BOOT, _______, XXXXXXX, KC_F4, KC_F5, KC_F6, XXXXXXX, XXXXXXX, KC_F10, KC_F11, KC_F12, XXXXXXX, _______, _______, XXXXXXX, KC_VOLD, XXXXXXX, KC_VOLU, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ai03/orbit_x/keymaps/via/keymap.c b/keyboards/ai03/orbit_x/keymaps/via/keymap.c index efab115038..417533590d 100644 --- a/keyboards/ai03/orbit_x/keymaps/via/keymap.c +++ b/keyboards/ai03/orbit_x/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [_FN] = LAYOUT( - RESET, XXXXXXX, KC_F1, KC_F2, KC_F3, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, XXXXXXX, RESET, + QK_BOOT, XXXXXXX, KC_F1, KC_F2, KC_F3, XXXXXXX, XXXXXXX, KC_F7, KC_F8, KC_F9, XXXXXXX, QK_BOOT, _______, XXXXXXX, KC_F4, KC_F5, KC_F6, XXXXXXX, XXXXXXX, KC_F10, KC_F11, KC_F12, XXXXXXX, _______, _______, XXXXXXX, KC_VOLD, XXXXXXX, KC_VOLU, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ai03/polaris/keymaps/default/keymap.c b/keyboards/ai03/polaris/keymaps/default/keymap.c index 65902ae583..c53c3a7226 100644 --- a/keyboards/ai03/polaris/keymaps/default/keymap.c +++ b/keyboards/ai03/polaris/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/ai03/polaris/keymaps/default_ansi_tsangan/keymap.c b/keyboards/ai03/polaris/keymaps/default_ansi_tsangan/keymap.c index 410f9b379f..e6126b1ff9 100644 --- a/keyboards/ai03/polaris/keymaps/default_ansi_tsangan/keymap.c +++ b/keyboards/ai03/polaris/keymaps/default_ansi_tsangan/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [_FN] = LAYOUT_60_tsangan_hhkb( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/ai03/quasar/keymaps/default/keymap.c b/keyboards/ai03/quasar/keymaps/default/keymap.c index 8d3d2e4358..c7d2c2ca36 100644 --- a/keyboards/ai03/quasar/keymaps/default/keymap.c +++ b/keyboards/ai03/quasar/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( /* FN */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ai03/vega/keymaps/default/keymap.c b/keyboards/ai03/vega/keymaps/default/keymap.c index 1cf024c370..432edc1813 100644 --- a/keyboards/ai03/vega/keymaps/default/keymap.c +++ b/keyboards/ai03/vega/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/ai03/vega/keymaps/via/keymap.c b/keyboards/ai03/vega/keymaps/via/keymap.c index 53d10127f3..db450dd297 100644 --- a/keyboards/ai03/vega/keymaps/via/keymap.c +++ b/keyboards/ai03/vega/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/ai03/voyager60_alps/keymaps/via/keymap.c b/keyboards/ai03/voyager60_alps/keymaps/via/keymap.c index 1a5e74c42e..136f75de91 100644 --- a/keyboards/ai03/voyager60_alps/keymaps/via/keymap.c +++ b/keyboards/ai03/voyager60_alps/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_SPC, _______, KC_RGUI, KC_RALT, KC_RCTL ), [1] = LAYOUT( /* FN */ - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/akb/eb46/keymaps/default/keymap.c b/keyboards/akb/eb46/keymaps/default/keymap.c index c2114cc65d..4f12733558 100644 --- a/keyboards/akb/eb46/keymaps/default/keymap.c +++ b/keyboards/akb/eb46/keymaps/default/keymap.c @@ -30,5 +30,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, 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_SCLN, KC_QUOT, KC_NUHS, _______, _______, _______, KC_NUBS, _______, _______, _______, _______, _______, _______, KC_SLSH, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET ), + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), }; diff --git a/keyboards/akb/raine/keymaps/default/keymap.c b/keyboards/akb/raine/keymaps/default/keymap.c index 1eecbb041f..b247c40592 100644 --- a/keyboards/akb/raine/keymaps/default/keymap.c +++ b/keyboards/akb/raine/keymaps/default/keymap.c @@ -27,6 +27,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_HOME, KC_UP, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_SCLN, KC_QUOT, _______, _______, KC_LEFT, KC_SLCK, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, KC_COMM, KC_DOT, _______, _______, _______, KC_END, KC_DOWN, KC_PGDN, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), }; diff --git a/keyboards/al1/keymaps/default/keymap.c b/keyboards/al1/keymaps/default/keymap.c index a3a9d63d37..52387c94af 100644 --- a/keyboards/al1/keymaps/default/keymap.c +++ b/keyboards/al1/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, _______, _______ diff --git a/keyboards/al1/keymaps/via/keymap.c b/keyboards/al1/keymaps/via/keymap.c index 931755270b..eaa5273339 100644 --- a/keyboards/al1/keymaps/via/keymap.c +++ b/keyboards/al1/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, 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, RESET, 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, QK_BOOT, 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, 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 ), diff --git a/keyboards/alf/x11/keymaps/default/keymap.c b/keyboards/alf/x11/keymaps/default/keymap.c index f0747d3450..3058d3123f 100644 --- a/keyboards/alf/x11/keymaps/default/keymap.c +++ b/keyboards/alf/x11/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_MPLY, KC_MSTP, diff --git a/keyboards/alf/x2/keymaps/default/keymap.c b/keyboards/alf/x2/keymaps/default/keymap.c index 5e0d69ada9..fa7f2b51c9 100644 --- a/keyboards/alf/x2/keymaps/default/keymap.c +++ b/keyboards/alf/x2/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_MNXT, KC_MPRV, KC_GRV, 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_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, QK_BOOT, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/alfredslab/swift65/solder/keymaps/default/keymap.c b/keyboards/alfredslab/swift65/solder/keymaps/default/keymap.c index e3367f159b..0aed2fd3c5 100644 --- a/keyboards/alfredslab/swift65/solder/keymaps/default/keymap.c +++ b/keyboards/alfredslab/swift65/solder/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_PGDN, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), diff --git a/keyboards/alfredslab/swift65/solder/keymaps/via/keymap.c b/keyboards/alfredslab/swift65/solder/keymaps/via/keymap.c index fddfd94765..5e54716a93 100644 --- a/keyboards/alfredslab/swift65/solder/keymaps/via/keymap.c +++ b/keyboards/alfredslab/swift65/solder/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_PGDN, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_625u_space_split_bs( diff --git a/keyboards/alpha/keymaps/default/keymap.c b/keyboards/alpha/keymaps/default/keymap.c index 3632ecaea4..e626062bcc 100755 --- a/keyboards/alpha/keymaps/default/keymap.c +++ b/keyboards/alpha/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_VAI, RGB_VAD, RGB_HUI, TO(0), RGB_MOD, KC_MPLY, KC_VOLD, KC_VOLU), [OTHER] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TO(0), MACRO1, KC_NO, KC_NO, KC_NO), }; diff --git a/keyboards/amjkeyboard/amj40/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default/keymap.c index 658b4b3c55..3c6475809d 100755 --- a/keyboards/amjkeyboard/amj40/keymaps/default/keymap.c +++ b/keyboards/amjkeyboard/amj40/keymaps/default/keymap.c @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_SLEP, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c index f5b33ad84f..467e50982e 100644 --- a/keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c +++ b/keyboards/amjkeyboard/amj40/keymaps/default_625u_space/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_625u_space( 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, KC_PWR, _______, _______, KC_PSCR, KC_PAUS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, + QK_BOOT, KC_PWR, _______, _______, KC_PSCR, KC_PAUS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, KC_UP, KC_MINS, KC_EQL, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, KC_LPRN, KC_RPRN, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______ ), diff --git a/keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c index fe99884696..42d79d0ade 100644 --- a/keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c +++ b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_275u_space/keymap.c @@ -35,6 +35,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c index 527390cd1e..3489e84a47 100644 --- a/keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c +++ b/keyboards/amjkeyboard/amj40/keymaps/default_ortho_600u_space/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_ortho_600u_space( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/amjkeyboard/amj66/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj66/keymaps/default/keymap.c index cce05a7fe4..6f2f00b800 100644 --- a/keyboards/amjkeyboard/amj66/keymaps/default/keymap.c +++ b/keyboards/amjkeyboard/amj66/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_BSPC, KC_BSPC, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_DEL, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, BL_STEP, KC_SLEP, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), diff --git a/keyboards/amjkeyboard/amj96/keymaps/default/keymap.c b/keyboards/amjkeyboard/amj96/keymaps/default/keymap.c index baa4bef9dc..95247ebfc8 100644 --- a/keyboards/amjkeyboard/amj96/keymaps/default/keymap.c +++ b/keyboards/amjkeyboard/amj96/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c b/keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c index 9df4317bb0..c6d5f06b18 100644 --- a/keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c +++ b/keyboards/amjkeyboard/amjpad/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_TAB, KC_BSPC, KC_PEQL, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_P7, KC_P8, KC_P9, - KC_P4, KC_P5, KC_P6, RESET, + KC_P4, KC_P5, KC_P6, QK_BOOT, KC_P1, KC_P2, KC_P3, KC_P0, LT(_FL,KC_PDOT), KC_PENT ), diff --git a/keyboards/ano/keymaps/default/keymap.c b/keyboards/ano/keymaps/default/keymap.c index c457cf851c..676724a8a7 100644 --- a/keyboards/ano/keymaps/default/keymap.c +++ b/keyboards/ano/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, RESET, + 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, QK_BOOT, 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, 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, diff --git a/keyboards/anomalykb/a65i/keymaps/default/keymap.c b/keyboards/anomalykb/a65i/keymaps/default/keymap.c index c12189c621..ccd7a9b8f9 100644 --- a/keyboards/anomalykb/a65i/keymaps/default/keymap.c +++ b/keyboards/anomalykb/a65i/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/anomalykb/a65i/keymaps/iso/keymap.c b/keyboards/anomalykb/a65i/keymaps/iso/keymap.c index b40ea686bc..8d6a7bab17 100644 --- a/keyboards/anomalykb/a65i/keymaps/iso/keymap.c +++ b/keyboards/anomalykb/a65i/keymaps/iso/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_iso_blocker( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/anomalykb/a65i/keymaps/via/keymap.c b/keyboards/anomalykb/a65i/keymaps/via/keymap.c index c12189c621..ccd7a9b8f9 100644 --- a/keyboards/anomalykb/a65i/keymaps/via/keymap.c +++ b/keyboards/anomalykb/a65i/keymaps/via/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/aos/tkl/keymaps/default/keymap.c b/keyboards/aos/tkl/keymaps/default/keymap.c index 36ccd98aea..1df2220c7d 100644 --- a/keyboards/aos/tkl/keymaps/default/keymap.c +++ b/keyboards/aos/tkl/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_VAI diff --git a/keyboards/aos/tkl/keymaps/via/keymap.c b/keyboards/aos/tkl/keymaps/via/keymap.c index 53c82022d5..80552e9e01 100644 --- a/keyboards/aos/tkl/keymaps/via/keymap.c +++ b/keyboards/aos/tkl/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_VAI diff --git a/keyboards/aozora/keymaps/default/keymap.c b/keyboards/aozora/keymaps/default/keymap.c index 8229aaa29a..c610438c3b 100644 --- a/keyboards/aozora/keymaps/default/keymap.c +++ b/keyboards/aozora/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_F13, KC_F14, KC_F15, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/aplyard/aplx6/rev1/keymaps/default/keymap.c b/keyboards/aplyard/aplx6/rev1/keymaps/default/keymap.c index 91ed943f38..318160e7dc 100644 --- a/keyboards/aplyard/aplx6/rev1/keymaps/default/keymap.c +++ b/keyboards/aplyard/aplx6/rev1/keymaps/default/keymap.c @@ -26,13 +26,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | Pro | |-----|-----|-----| | * | | Micro| --------------------| * | | | |-----|-----|-----| | - * | '------' |MyPC | PgD |RESET| | + * | '------' |MyPC | PgD |QK_BOOT| | * | |||||| |-----|-----|-----| | * '--------------------------------' */ [_FN] = LAYOUT( KC_CALC, KC_PGUP, _______, - KC_MYCM, KC_PGDN, RESET + KC_MYCM, KC_PGDN, QK_BOOT ) }; diff --git a/keyboards/ares/keymaps/default/keymap.c b/keyboards/ares/keymaps/default/keymap.c index 8b95db5078..c7fcb2dd1a 100644 --- a/keyboards/ares/keymaps/default/keymap.c +++ b/keyboards/ares/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( - RGB_MOD, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + RGB_MOD, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/arisu/keymaps/default/keymap.c b/keyboards/arisu/keymaps/default/keymap.c index 2563a36893..57cea80769 100644 --- a/keyboards/arisu/keymaps/default/keymap.c +++ b/keyboards/arisu/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/arisu/keymaps/via/keymap.c b/keyboards/arisu/keymaps/via/keymap.c index 3549a1bdea..1cbce827af 100644 --- a/keyboards/arisu/keymaps/via/keymap.c +++ b/keyboards/arisu/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ash1800/keymaps/default/keymap.c b/keyboards/ash1800/keymaps/default/keymap.c index f1b52b14d6..ada869b16f 100644 --- a/keyboards/ash1800/keymaps/default/keymap.c +++ b/keyboards/ash1800/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ash_xiix/keymaps/default/keymap.c b/keyboards/ash_xiix/keymaps/default/keymap.c index 2127dc5902..746ab986ef 100644 --- a/keyboards/ash_xiix/keymaps/default/keymap.c +++ b/keyboards/ash_xiix/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT ), [1] = LAYOUT_all ( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/atlantis/ak81_ve/keymaps/default/keymap.c b/keyboards/atlantis/ak81_ve/keymaps/default/keymap.c index a11091c8b9..59c23c97d3 100644 --- a/keyboards/atlantis/ak81_ve/keymaps/default/keymap.c +++ b/keyboards/atlantis/ak81_ve/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_SYSTEM_SLEEP, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, RGB_VAI, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, RGB_HUI, RGB_SPD, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI) diff --git a/keyboards/atlantis/ak81_ve/keymaps/via/keymap.c b/keyboards/atlantis/ak81_ve/keymaps/via/keymap.c index 106d966fa7..48ffe1be63 100644 --- a/keyboards/atlantis/ak81_ve/keymaps/via/keymap.c +++ b/keyboards/atlantis/ak81_ve/keymaps/via/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_via( KC_SYSTEM_SLEEP, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, RGB_VAI, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, RGB_HUI, RGB_SPD, _______, _______, _______, RGB_MOD, RGB_RMOD, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI), diff --git a/keyboards/atlas_65/keymaps/default/keymap.c b/keyboards/atlas_65/keymaps/default/keymap.c index 7883a921ac..807ce3ccd8 100644 --- a/keyboards/atlas_65/keymaps/default/keymap.c +++ b/keyboards/atlas_65/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/atlas_65/keymaps/via/keymap.c b/keyboards/atlas_65/keymaps/via/keymap.c index f8e9155362..6c0f9ec0ef 100644 --- a/keyboards/atlas_65/keymaps/via/keymap.c +++ b/keyboards/atlas_65/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/atreus/keymaps/default/keymap.c b/keyboards/atreus/keymaps/default/keymap.c index 95207f5c46..02509b6279 100644 --- a/keyboards/atreus/keymaps/default/keymap.c +++ b/keyboards/atreus/keymaps/default/keymap.c @@ -39,6 +39,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LW] = LAYOUT( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , - KC_NO, KC_VOLU, KC_NO, KC_NO, RESET, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , + KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , KC_NO, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(_QW), KC_PSCR, KC_SLCK, KC_PAUS ) }; diff --git a/keyboards/atreus/keymaps/via/keymap.c b/keyboards/atreus/keymaps/via/keymap.c index 980eaf32ad..f4e274377b 100644 --- a/keyboards/atreus/keymaps/via/keymap.c +++ b/keyboards/atreus/keymaps/via/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LW] = LAYOUT( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , - KC_NO, KC_VOLU, KC_NO, KC_NO, RESET, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , + KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , KC_NO, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(_QW), KC_PSCR, KC_SLCK, KC_PAUS ), [_EM] = LAYOUT( /* [> EMPTY <] */ diff --git a/keyboards/atreus62/keymaps/default/keymap.c b/keyboards/atreus62/keymaps/default/keymap.c index 95beab3767..6b8a7e7b8f 100644 --- a/keyboards/atreus62/keymaps/default/keymap.c +++ b/keyboards/atreus62/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , - KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , RESET + KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , QK_BOOT ) /* diff --git a/keyboards/atxkb/1894/keymaps/default/keymap.c b/keyboards/atxkb/1894/keymaps/default/keymap.c index 65902ae583..c53c3a7226 100644 --- a/keyboards/atxkb/1894/keymaps/default/keymap.c +++ b/keyboards/atxkb/1894/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/atxkb/1894/keymaps/default_ansi_tsangan/keymap.c b/keyboards/atxkb/1894/keymaps/default_ansi_tsangan/keymap.c index 410f9b379f..e6126b1ff9 100644 --- a/keyboards/atxkb/1894/keymaps/default_ansi_tsangan/keymap.c +++ b/keyboards/atxkb/1894/keymaps/default_ansi_tsangan/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [_FN] = LAYOUT_60_tsangan_hhkb( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c index 819d362ebc..ba80d42d64 100644 --- a/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c +++ b/keyboards/axolstudio/foundation_gamma/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_f13_ansi_tsangan( 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, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c index 2b3f8ef373..7ea8e0e1ef 100644 --- a/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c +++ b/keyboards/axolstudio/foundation_gamma/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_tkl_f13_ansi_tsangan_split_bs_rshift( 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, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/bacca70/keymaps/default/keymap.c b/keyboards/bacca70/keymaps/default/keymap.c index 65f1252ba6..812116a953 100644 --- a/keyboards/bacca70/keymaps/default/keymap.c +++ b/keyboards/bacca70/keymaps/default/keymap.c @@ -33,6 +33,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS ) }; diff --git a/keyboards/bacca70/keymaps/via/keymap.c b/keyboards/bacca70/keymaps/via/keymap.c index a4a74b7252..3365bf4759 100644 --- a/keyboards/bacca70/keymaps/via/keymap.c +++ b/keyboards/bacca70/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS ), [2] = LAYOUT_default( @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS ), [3] = LAYOUT_default( @@ -51,6 +51,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS ) }; diff --git a/keyboards/baguette/keymaps/default/keymap.c b/keyboards/baguette/keymaps/default/keymap.c index 5c54daf298..f5df8ee478 100644 --- a/keyboards/baguette/keymaps/default/keymap.c +++ b/keyboards/baguette/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( /* FN */ KC_TRNS, 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, RESET, 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, QK_BOOT, 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_TOGG, BL_STEP, BL_BRTG, 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_RCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/baguette/keymaps/iso/keymap.c b/keyboards/baguette/keymaps/iso/keymap.c index fa971123d3..f3445e8b1a 100644 --- a/keyboards/baguette/keymaps/iso/keymap.c +++ b/keyboards/baguette/keymaps/iso/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_iso( /* FN */ KC_TRNS, 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, RESET, 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, QK_BOOT, 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_TOGG, BL_STEP, BL_BRTG, 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_RCTL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/barleycorn_smd/keymaps/default/keymap.c b/keyboards/barleycorn_smd/keymaps/default/keymap.c index 8bfc60ad4b..7a9c1c0478 100644 --- a/keyboards/barleycorn_smd/keymaps/default/keymap.c +++ b/keyboards/barleycorn_smd/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/barleycorn_smd/keymaps/iso/keymap.c b/keyboards/barleycorn_smd/keymaps/iso/keymap.c index 0f739c8831..11af1a44cd 100644 --- a/keyboards/barleycorn_smd/keymaps/iso/keymap.c +++ b/keyboards/barleycorn_smd/keymaps/iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_iso( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/barleycorn_smd/keymaps/via/keymap.c b/keyboards/barleycorn_smd/keymaps/via/keymap.c index 4cc2f1a73f..7ba35fc9c1 100644 --- a/keyboards/barleycorn_smd/keymaps/via/keymap.c +++ b/keyboards/barleycorn_smd/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/basekeys/slice/keymaps/default/keymap.c b/keyboards/basekeys/slice/keymaps/default/keymap.c index c7fc3fed51..069b8660ab 100644 --- a/keyboards/basekeys/slice/keymaps/default/keymap.c +++ b/keyboards/basekeys/slice/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( /* Base */ //,-------------------------------------------------------------------------| |---------------------------------------------------------------------------. - XXXXXXX,TG(_ADJUST),XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX,TG(_ADJUST),XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| diff --git a/keyboards/basekeys/slice/keymaps/default_split_left_space/keymap.c b/keyboards/basekeys/slice/keymaps/default_split_left_space/keymap.c index 203bd0804c..245eccba3b 100644 --- a/keyboards/basekeys/slice/keymaps/default_split_left_space/keymap.c +++ b/keyboards/basekeys/slice/keymaps/default_split_left_space/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_left_space( /* Base */ //,-------------------------------------------------------------------------| |---------------------------------------------------------------------------. - XXXXXXX, TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c index 34e1b7c43a..59c19d50e3 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/default_all/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_all( /* Base */ //,------------------------------------------------------------------------| |--------------------------------------------------------------------------------------. - XXXXXXX,TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, + XXXXXXX,TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------+----------| diff --git a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c index 772f9f6f1f..7e846f3e26 100644 --- a/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c +++ b/keyboards/basekeys/slice/rev1/keymaps/default_split_backspace/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_backspace( /* Base */ //,-------------------------------------------------------------------------| |---------------------------------------------------------------------------. - XXXXXXX, TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|-------------------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+----------+----------| diff --git a/keyboards/basekeys/trifecta/keymaps/default/keymap.c b/keyboards/basekeys/trifecta/keymaps/default/keymap.c index 6db61e4768..72187f69b9 100644 --- a/keyboards/basekeys/trifecta/keymaps/default/keymap.c +++ b/keyboards/basekeys/trifecta/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_MEDIA] = LAYOUT( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END diff --git a/keyboards/basekeys/trifecta/keymaps/via/keymap.c b/keyboards/basekeys/trifecta/keymaps/via/keymap.c index 54e25ff370..9e102f972c 100644 --- a/keyboards/basekeys/trifecta/keymaps/via/keymap.c +++ b/keyboards/basekeys/trifecta/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_MEDIA] = LAYOUT( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END diff --git a/keyboards/basketweave/keymaps/default/keymap.c b/keyboards/basketweave/keymaps/default/keymap.c index 16c082b61d..83ad046ae8 100644 --- a/keyboards/basketweave/keymaps/default/keymap.c +++ b/keyboards/basketweave/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc ` 1 2 3 4 5 6 7 8 9 0 - = bspc */ KC_TRNS, KC_TRNS, 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, /* ins tab Q W E R T Y U I O P [ ] \ rotary */ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, /* del caps A S D F G H J K L ; ' enter */ 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_INS, KC_TRNS, /* shift Z X C V B B N M , . / shift up */ diff --git a/keyboards/basketweave/keymaps/via/keymap.c b/keyboards/basketweave/keymaps/via/keymap.c index aa9035dbee..7d85863d01 100644 --- a/keyboards/basketweave/keymaps/via/keymap.c +++ b/keyboards/basketweave/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc ` 1 2 3 4 5 6 7 8 9 0 - = bspc */ KC_TRNS, KC_TRNS, 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, /* ins tab Q W E R T Y U I O P [ ] \ rotary */ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, /* del caps A S D F G H J K L ; ' enter */ 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_INS, KC_TRNS, /* shift Z X C V B B N M , . / shift up */ diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c index 18fe860527..cb578aa8d6 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, KC_PPLS, KC_4, KC_5, KC_6, KC_PMNS, // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, RESET, KC_PAST, KC_1, KC_2, KC_3, KC_PSLS, + XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, QK_BOOT, KC_PAST, KC_1, KC_2, KC_3, KC_PSLS, // ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯ XXXXXXX, XXXXXXX, _______, XXXXXXX, _______ // ╰───────────────────────────╯ ╰──────────────────╯ @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_RSFT, KC_RCTL, KC_RALT, KC_RGUI, // ├─────────────────────────────────────────────┤ ├─────────────────────────────────────────────┤ - KC_HOME, KC_PGUP, KC_PGDN, KC_END, XXXXXXX, RESET, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, + KC_HOME, KC_PGUP, KC_PGDN, KC_END, XXXXXXX, QK_BOOT, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, // ╰─────────────────────────────────────────────┤ ├─────────────────────────────────────────────╯ _______, _______, XXXXXXX, _______, XXXXXXX // ╰───────────────────────────╯ ╰──────────────────╯ diff --git a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c index ba549deecf..dc02ed34c6 100644 --- a/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c +++ b/keyboards/bastardkb/charybdis/3x5/keymaps/via/keymap.c @@ -98,14 +98,14 @@ static uint16_t auto_pointer_layer_timer = 0; #define LAYOUT_LAYER_MEDIA \ XXXXXXX,RGB_RMOD, RGB_TOG, RGB_MOD, XXXXXXX, XXXXXXX,RGB_RMOD, RGB_TOG, RGB_MOD, XXXXXXX, \ KC_MPRV, KC_VOLD, KC_MUTE, KC_VOLU, KC_MNXT, KC_MPRV, KC_VOLD, KC_MUTE, KC_VOLU, KC_MNXT, \ - XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, RESET, RESET, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, \ + XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, QK_BOOT, QK_BOOT, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, \ _______, KC_MPLY, KC_MSTP, KC_MSTP, KC_MPLY /** \brief Mouse emulation and pointer functions. */ #define LAYOUT_LAYER_POINTER \ XXXXXXX, XXXXXXX, XXXXXXX, DPI_MOD, S_D_MOD, S_D_MOD, DPI_MOD, XXXXXXX, XXXXXXX, XXXXXXX, \ ______________HOME_ROW_GACS_L______________, ______________HOME_ROW_GACS_R______________, \ - _______, DRGSCRL, SNIPING, EEP_RST, RESET, RESET, EEP_RST, SNIPING, DRGSCRL, _______, \ + _______, DRGSCRL, SNIPING, EEP_RST, QK_BOOT, QK_BOOT, EEP_RST, SNIPING, DRGSCRL, _______, \ KC_BTN2, KC_BTN1, KC_BTN3, KC_BTN3, KC_BTN1 /** diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c index de8eed9c03..1d3142faac 100644 --- a/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ RGB_TOG, KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, KC_PPLS, KC_P4, KC_P5, KC_P6, KC_PMNS, KC_PEQL, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ - RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, RESET, KC_PAST, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_PDOT, + RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, QK_BOOT, KC_PAST, KC_P1, KC_P2, KC_P3, KC_PSLS, KC_PDOT, // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯ XXXXXXX, XXXXXXX, _______, XXXXXXX, _______, XXXXXXX, XXXXXXX, KC_P0 @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ KC_MPLY, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_RSFT, KC_RCTL, KC_RALT, KC_RGUI, KC_MUTE, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ - KC_MPRV, KC_HOME, KC_PGUP, KC_PGDN, KC_END, XXXXXXX, RESET, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, + KC_MPRV, KC_HOME, KC_PGUP, KC_PGDN, KC_END, XXXXXXX, QK_BOOT, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯ _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, XXXXXXX diff --git a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c index d53d580a48..cf24fea3c0 100644 --- a/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c +++ b/keyboards/bastardkb/charybdis/4x6/keymaps/via/keymap.c @@ -102,7 +102,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ XXXXXXX, KC_LGUI, KC_LALT, KC_LCTL, KC_LSFT, XXXXXXX, XXXXXXX, KC_RSFT, KC_RCTL, KC_RALT, KC_RGUI, XXXXXXX, // ├──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────┤ - XXXXXXX, _______, DRGSCRL, SNIPING, EEP_RST, RESET, RESET, EEP_RST, SNIPING, DRGSCRL, _______, XXXXXXX, + XXXXXXX, _______, DRGSCRL, SNIPING, EEP_RST, QK_BOOT, QK_BOOT, EEP_RST, SNIPING, DRGSCRL, _______, XXXXXXX, // ╰──────────────────────────────────────────────────────┤ ├──────────────────────────────────────────────────────╯ KC_BTN2, KC_BTN1, KC_BTN3, KC_BTN3, KC_BTN1, XXXXXXX, KC_BTN2, KC_BTN2 diff --git a/keyboards/bastardkb/scylla/keymaps/default/keymap.c b/keyboards/bastardkb/scylla/keymaps/default/keymap.c index 49be09b689..fe9a834fa2 100644 --- a/keyboards/bastardkb/scylla/keymaps/default/keymap.c +++ b/keyboards/bastardkb/scylla/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_split_4x6_5( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, //---------------------------------------------------------//-----------------------------------------------------------// - RESET, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, + QK_BOOT, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, //---------------------------------------------------------//-----------------------------------------------------------// _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, //---------------------------------------------------------//-----------------------------------------------------------// @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //---------------------------------------------------------//--------------------------------------------------------------// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, //---------------------------------------------------------//--------------------------------------------------------------// - KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, RESET, + KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, QK_BOOT, KC_SPC, KC_BSPC, KC_RCTL, KC_ENT ), }; diff --git a/keyboards/bastardkb/tbk/keymaps/default/keymap.c b/keyboards/bastardkb/tbk/keymaps/default/keymap.c index 49be09b689..fe9a834fa2 100644 --- a/keyboards/bastardkb/tbk/keymaps/default/keymap.c +++ b/keyboards/bastardkb/tbk/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_split_4x6_5( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, //---------------------------------------------------------//-----------------------------------------------------------// - RESET, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, + QK_BOOT, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, //---------------------------------------------------------//-----------------------------------------------------------// _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, //---------------------------------------------------------//-----------------------------------------------------------// @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //---------------------------------------------------------//--------------------------------------------------------------// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, //---------------------------------------------------------//--------------------------------------------------------------// - KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, RESET, + KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, QK_BOOT, KC_SPC, KC_BSPC, KC_RCTL, KC_ENT ), }; diff --git a/keyboards/bastardkb/tbkmini/keymaps/default/keymap.c b/keyboards/bastardkb/tbkmini/keymaps/default/keymap.c index 8006f11ce7..3aa41b6fba 100644 --- a/keyboards/bastardkb/tbkmini/keymaps/default/keymap.c +++ b/keyboards/bastardkb/tbkmini/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_split_3x6_3( //,-----------------------------------------------------. ,-----------------------------------------------------. - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| diff --git a/keyboards/bear_face/v1/keymaps/default/keymap.c b/keyboards/bear_face/v1/keymaps/default/keymap.c index 527b041929..5f3ccc8729 100644 --- a/keyboards/bear_face/v1/keymaps/default/keymap.c +++ b/keyboards/bear_face/v1/keymaps/default/keymap.c @@ -64,8 +64,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_83_ansi( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, RESET, _______, _______, _______, _______, BASE_COLE, - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, BASE_COLE, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/bear_face/v2/keymaps/default/keymap.c b/keyboards/bear_face/v2/keymaps/default/keymap.c index 527b041929..5f3ccc8729 100644 --- a/keyboards/bear_face/v2/keymaps/default/keymap.c +++ b/keyboards/bear_face/v2/keymaps/default/keymap.c @@ -64,8 +64,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_83_ansi( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, RESET, _______, _______, _______, _______, BASE_COLE, - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, BASE_COLE, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/bear_face/v2/keymaps/default_iso/keymap.c b/keyboards/bear_face/v2/keymaps/default_iso/keymap.c index 132c05c4a6..d6b7d6680d 100644 --- a/keyboards/bear_face/v2/keymaps/default_iso/keymap.c +++ b/keyboards/bear_face/v2/keymaps/default_iso/keymap.c @@ -64,8 +64,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_84_iso( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, BASE_QWER, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, RESET, _______, _______, _______, BASE_COLE, - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, BASE_COLE, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BASE_DVOR, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/bemeier/bmek/keymaps/default/keymap.c b/keyboards/bemeier/bmek/keymaps/default/keymap.c index a2fccfb2c9..8debfbe5f7 100755 --- a/keyboards/bemeier/bmek/keymaps/default/keymap.c +++ b/keyboards/bemeier/bmek/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { │ │ │ │ │ │ │ │ └─────┴──────┴────────────────┘ └────────────────┴──────┴─────┘ */ - RESET, KC_PWR, 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_INS, KC_DEL, + QK_BOOT, KC_PWR, 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_INS, KC_DEL, _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, _______, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_PENT, _______, _______, _______, _______, TG(2), _______, _______, _______, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, _______, _______, @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { │ │ │ │ │ │ │ │ └─────┴──────┴────────────────┘ └────────────────┴──────┴─────┘ */ - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_HUD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SPI, RGB_SPD, RGB_SAI, RGB_SAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(2), RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, diff --git a/keyboards/bemeier/bmek/keymaps/via/keymap.c b/keyboards/bemeier/bmek/keymaps/via/keymap.c index 8e5f7b2d0e..f072a7ec7c 100755 --- a/keyboards/bemeier/bmek/keymaps/via/keymap.c +++ b/keyboards/bemeier/bmek/keymaps/via/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { │ │ │ │ │ │ │ │ └─────┴──────┴────────────────┘ └────────────────┴──────┴─────┘ */ - 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, KC_INS, KC_DEL, + QK_BOOT, _______, 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_INS, KC_DEL, _______, _______, KC_END, KC_UP, KC_HOME, KC_PGUP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPLY, KC_MPRV, KC_MNXT, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_VOLD, KC_VOLU, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, TG(4), XXXXXXX, XXXXXXX, TG(2), XXXXXXX, XXXXXXX, LCTL(LGUI(KC_LEFT)), LCTL(LGUI(KC_RGHT)), KC_MUTE, _______, _______, @@ -106,7 +106,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { │ │ │ │ │ │ │ │ └─────┴──────┴────────────────┘ └────────────────┴──────┴─────┘ */ - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_HUD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SPI, RGB_SPD, RGB_SAI, RGB_SAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(4), RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, diff --git a/keyboards/bfake/keymaps/default/keymap.c b/keyboards/bfake/keymaps/default/keymap.c index a237f8489e..493898c3ca 100644 --- a/keyboards/bfake/keymaps/default/keymap.c +++ b/keyboards/bfake/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( - 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, RESET, + 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, QK_BOOT, 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, MO(1), 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, diff --git a/keyboards/biacco42/ergo42/keymaps/default-illustrator/keymap.c b/keyboards/biacco42/ergo42/keymaps/default-illustrator/keymap.c index 3c57f7fc93..5718cceeec 100644 --- a/keyboards/biacco42/ergo42/keymaps/default-illustrator/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/default-illustrator/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_F1, XXXXXXX, KC_MHEN, KC_HENK, XXXXXXX, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, \ _______, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, SFT_T(KC_RO), \ - _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, XXXXXXX, _______ \ + _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, XXXXXXX, _______ \ ), /* SYMB diff --git a/keyboards/biacco42/ergo42/keymaps/default-underglow/keymap.c b/keyboards/biacco42/ergo42/keymaps/default-underglow/keymap.c index d4e8f11087..28d3fa0783 100644 --- a/keyboards/biacco42/ergo42/keymaps/default-underglow/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/default-underglow/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------------------------------------------------' `------------------------------------------------' */ [META] = LAYOUT( \ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \ + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, _______, \ _______, KC_F1, XXXXXXX, KC_MHEN, KC_HENK, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, \ _______, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, S(KC_LBRC), S(KC_RBRC), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, \ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX \ @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------| |-------------+------+------+------+------+------| * | | | | | | | | | | TOG | HUI | SAI | VAI |HUANIM| | * |------+------+------+------+------+------+------| |------|------+------+------+------+------+------| - * | | | | | | | | | | MOD | HUD | SAD | VAD |RESET | | + * | | | | | | | | | | MOD | HUD | SAD | VAD |QK_BOOT | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| * | | | | | | | | | | | | | |=>RGB | | * `------------------------------------------------' `------------------------------------------------' diff --git a/keyboards/biacco42/ergo42/keymaps/default/keymap.c b/keyboards/biacco42/ergo42/keymaps/default/keymap.c index 0e03a12267..d14e068e86 100644 --- a/keyboards/biacco42/ergo42/keymaps/default/keymap.c +++ b/keyboards/biacco42/ergo42/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------------------------------------------------' `------------------------------------------------' */ [META] = LAYOUT( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_LBRC, KC_RBRC, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, KC_F1, XXXXXXX, KC_MHEN, KC_HENK, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, _______, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, S(KC_LBRC), S(KC_RBRC), KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/bioi/g60/keymaps/default/keymap.c b/keyboards/bioi/g60/keymaps/default/keymap.c index fd3fa9916d..aaeb35b414 100644 --- a/keyboards/bioi/g60/keymaps/default/keymap.c +++ b/keyboards/bioi/g60/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer LAYOUT_all( KC_GRV, 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, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LSFT, _______, RGB_TOG, RGB_MOD, BL_TOGG, BL_STEP, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/bioi/g60/keymaps/via/keymap.c b/keyboards/bioi/g60/keymaps/via/keymap.c index bdd90f2ccb..8b01dc8997 100644 --- a/keyboards/bioi/g60/keymaps/via/keymap.c +++ b/keyboards/bioi/g60/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( KC_GRV, 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, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LSFT, _______, RGB_TOG, RGB_MOD, BL_TOGG, BL_STEP, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/bioi/g60ble/keymaps/via/keymap.c b/keyboards/bioi/g60ble/keymaps/via/keymap.c index 478d83bc51..491c1a20fd 100644 --- a/keyboards/bioi/g60ble/keymaps/via/keymap.c +++ b/keyboards/bioi/g60ble/keymaps/via/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, 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_INS, KC_DEL, - KC_CAPS, RESET, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, + KC_CAPS, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, _______, KC_ASTR, KC_SLSH, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, RGB_MOD, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, KC_PLUS, KC_MINS, KC_END, KC_PGDN, KC_DOWN, _______, BL_STEP, _______, RGB_TOG, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, BL_TOGG diff --git a/keyboards/bioi/morgan65/keymaps/default/keymap.c b/keyboards/bioi/morgan65/keymaps/default/keymap.c index 0a4fd48764..67d8d57e5f 100644 --- a/keyboards/bioi/morgan65/keymaps/default/keymap.c +++ b/keyboards/bioi/morgan65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( KC_GRV, 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, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LSFT, _______, RGB_TOG, RGB_MOD, BL_TOGG, BL_STEP, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/bioi/morgan65/keymaps/via/keymap.c b/keyboards/bioi/morgan65/keymaps/via/keymap.c index 0a4fd48764..67d8d57e5f 100644 --- a/keyboards/bioi/morgan65/keymaps/via/keymap.c +++ b/keyboards/bioi/morgan65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( KC_GRV, 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, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LSFT, _______, RGB_TOG, RGB_MOD, BL_TOGG, BL_STEP, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/blackplum/keymaps/default/keymap.c b/keyboards/blackplum/keymaps/default/keymap.c index e7d3272b97..94d4b8e60b 100644 --- a/keyboards/blackplum/keymaps/default/keymap.c +++ b/keyboards/blackplum/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUSE, _______, KC_MUTE, KC_END, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, - _______, TG_GUI,_______, RESET, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT + _______, TG_GUI,_______, QK_BOOT, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ) }; diff --git a/keyboards/blackplum/keymaps/via/keymap.c b/keyboards/blackplum/keymaps/via/keymap.c index e0cc689cd4..f9b6685e3f 100644 --- a/keyboards/blackplum/keymaps/via/keymap.c +++ b/keyboards/blackplum/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, KC_TRNS, KC_MUTE, KC_END, KC_TRNS, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT_68_ansi( diff --git a/keyboards/blank/blank01/keymaps/default/keymap.c b/keyboards/blank/blank01/keymaps/default/keymap.c index 02722766e8..500450e578 100644 --- a/keyboards/blank/blank01/keymaps/default/keymap.c +++ b/keyboards/blank/blank01/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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_TRNS, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/blank/blank01/keymaps/via/keymap.c b/keyboards/blank/blank01/keymaps/via/keymap.c index 503dec460f..fe4dcb47ac 100644 --- a/keyboards/blank/blank01/keymaps/via/keymap.c +++ b/keyboards/blank/blank01/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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_DEL, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/blank_tehnologii/manibus/keymaps/default/keymap.c b/keyboards/blank_tehnologii/manibus/keymaps/default/keymap.c index 93b9614a0c..df029c6800 100644 --- a/keyboards/blank_tehnologii/manibus/keymaps/default/keymap.c +++ b/keyboards/blank_tehnologii/manibus/keymaps/default/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, // ├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - _______, _______, _______, _______, RESET, _______, _______, _______, KC_UP, _______, KC_MPLY, KC_F12, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, KC_UP, _______, KC_MPLY, KC_F12, // ├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT,KC_VOLD, KC_VOLU, // ├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/boardrun/bizarre/keymaps/default/keymap.c b/keyboards/boardrun/bizarre/keymaps/default/keymap.c index 49c2f1a781..e7cb43ae3f 100644 --- a/keyboards/boardrun/bizarre/keymaps/default/keymap.c +++ b/keyboards/boardrun/bizarre/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /*Bizarre Function Layer * +-------+ +-----------------------+ +-------------------------------+ +-------------------------------+ +---------------------------------------+ - * RESET F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 DEL + * QK_BOOT F1 F2 F3 F4 F5 F6 F7 F8 F9 F10 F11 F12 DEL * +------- +-----------------------+ +-------+-------+-------+------- +-------+-------+-------+------- +---------------------------------------+ * INS PRINT * +-------+ +-----------------------+ +-------+-------+-------+------- +-------+-------+-------+------- +----------------------------------- @@ -62,8 +62,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FNBIZARRE] = LAYOUT_all( - 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, KC_DEL, _______, - _______, _______, _______, _______,_______,RESET, _______, _______,_______,KC_INS ,_______, KC_PSCR,_______,_______,_______, + QK_BOOT, _______,_______,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, _______, + _______, _______, _______, _______,_______,QK_BOOT, _______, _______,_______,KC_INS ,_______, KC_PSCR,_______,_______,_______, _______, _______, KC_SLCK,_______,_______,_______, _______,_______,_______,_______, _______,_______,_______,_______, _______, _______,_______, _______,_______,_______,KC_PAUS,KC_RGUI, _______,_______,KC_MENU,_______,_______, _______,_______, KC_PGUP, _______, _______, _______, KC_RALT, _______, KC_HOME,KC_PGDN,KC_END diff --git a/keyboards/boardrun/bizarre/keymaps/via/keymap.c b/keyboards/boardrun/bizarre/keymaps/via/keymap.c index d4d2fee9ce..2b699ec46e 100644 --- a/keyboards/boardrun/bizarre/keymaps/via/keymap.c +++ b/keyboards/boardrun/bizarre/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /*Bizarre Function Layer * +-------+ +-----------------------+ +-------------------------------+ +-------------------------------+ +---------------------------------------+ - * ¦ RESET ¦ ¦ ¦ ¦ F1 ¦ ¦ F2 ¦ F3 ¦ F4 ¦ F5 ¦ ¦ F6 ¦ F7 ¦ F8 ¦ F9 ¦ ¦ F10 ¦ F11 ¦ F12 ¦ DEL ¦ ¦ + * ¦ QK_BOOT ¦ ¦ ¦ ¦ F1 ¦ ¦ F2 ¦ F3 ¦ F4 ¦ F5 ¦ ¦ F6 ¦ F7 ¦ F8 ¦ F9 ¦ ¦ F10 ¦ F11 ¦ F12 ¦ DEL ¦ ¦ * +-------¦ +-----------------------+ +-------+-------+-------+-------¦ +-------+-------+-------+-------¦ +---------------------------------------+ * ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ ¦ INS ¦ ¦ ¦ PRINT ¦ ¦ ¦ ¦ * +-------+ +-----------------------+ +-------+-------+-------+-------¦ +-------+-------+-------+-------¦ +-----------------------------------¦ @@ -54,8 +54,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_all( - 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, KC_DEL, _______, - _______, _______, _______, _______,_______,RESET, _______, _______,_______,KC_INS ,_______, KC_PSCR,_______,_______,_______, + QK_BOOT, _______,_______,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, _______, + _______, _______, _______, _______,_______,QK_BOOT, _______, _______,_______,KC_INS ,_______, KC_PSCR,_______,_______,_______, _______, _______, KC_SLCK,_______,_______,_______, _______,_______,_______,_______, _______,_______,_______,_______, _______, _______,_______, _______,_______,_______,KC_PAUS,KC_RGUI, _______,_______,KC_MENU,_______,_______, _______,_______, KC_PGUP, _______, _______, _______, KC_RALT, _______, KC_HOME,KC_PGDN,KC_END diff --git a/keyboards/boardrun/classic/keymaps/default/keymap.c b/keyboards/boardrun/classic/keymaps/default/keymap.c index 6076999219..c4dbb8d396 100644 --- a/keyboards/boardrun/classic/keymaps/default/keymap.c +++ b/keyboards/boardrun/classic/keymaps/default/keymap.c @@ -52,9 +52,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Function Layer * .--------------------------------------------------------------. .--------------------------------------------------------------. - * | RESET | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | DEL | + * | QK_BOOT | F1 | F2 | F3 | F4 | F5 | F11 | | F12 | F6 | F7 | F8 | F9 | F10 | DEL | * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| - * | | | MENU | | RESET | | | | | | | INS | | PRT SC | | + * | | | MENU | | QK_BOOT | | | | | | | INS | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| * | CAPSLK | | SCROLL | | | | | | | | | | | | RCTL | * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| @@ -64,8 +64,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * '--------------------------------------------------------------------------------------------------------------------' */ [_FNCLASSIC] = LAYOUT_classic( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, _______, KC_APP, _______, RESET, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + _______, _______, KC_APP, _______, QK_BOOT, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, KC_CAPS, _______, KC_SLCK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RCTL, _LSNUBS, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_RGUI, _______, _______, KC_RALT, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/boardrun/classic/keymaps/via/keymap.c b/keyboards/boardrun/classic/keymaps/via/keymap.c index 0b0d953848..0994e925ea 100644 --- a/keyboards/boardrun/classic/keymaps/via/keymap.c +++ b/keyboards/boardrun/classic/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| * | | | | | | | | | | | | | | PRT SC | F12 | * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| - * | | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+--------| * | | | | | | | | | | | MUTE | VOL DN | VOL UP | | | * '--------+--------+--------+--------+--------+-----------------+--------+--------+--------+--------+--------+--------+--------+-------' @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_classic( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_F12, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/boardsource/3x4/keymaps/default/keymap.c b/keyboards/boardsource/3x4/keymaps/default/keymap.c index 67133735fa..dec66533ef 100644 --- a/keyboards/boardsource/3x4/keymaps/default/keymap.c +++ b/keyboards/boardsource/3x4/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, RESET + _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/boardsource/3x4/keymaps/via/keymap.c b/keyboards/boardsource/3x4/keymaps/via/keymap.c index a4824f8bfa..d24d3acbf5 100644 --- a/keyboards/boardsource/3x4/keymaps/via/keymap.c +++ b/keyboards/boardsource/3x4/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT ), LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/boardsource/4x12/keymaps/default/keymap.c b/keyboards/boardsource/4x12/keymaps/default/keymap.c index d9a0c47a6b..17823f36c9 100644 --- a/keyboards/boardsource/4x12/keymaps/default/keymap.c +++ b/keyboards/boardsource/4x12/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_4x12( diff --git a/keyboards/boardsource/4x12/keymaps/via/keymap.c b/keyboards/boardsource/4x12/keymaps/via/keymap.c index d9a0c47a6b..17823f36c9 100644 --- a/keyboards/boardsource/4x12/keymaps/via/keymap.c +++ b/keyboards/boardsource/4x12/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_4x12( diff --git a/keyboards/boardsource/5x12/keymaps/default/keymap.c b/keyboards/boardsource/5x12/keymaps/default/keymap.c index 19bdde0ffb..0f2534bbe8 100644 --- a/keyboards/boardsource/5x12/keymaps/default/keymap.c +++ b/keyboards/boardsource/5x12/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_5x12( @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ) }; diff --git a/keyboards/boardsource/5x12/keymaps/via/keymap.c b/keyboards/boardsource/5x12/keymaps/via/keymap.c index 8601fa377c..0a7eb43631 100644 --- a/keyboards/boardsource/5x12/keymaps/via/keymap.c +++ b/keyboards/boardsource/5x12/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, KC_4, KC_5, KC_6, KC_PLUS, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, _______, KC_ENT, KC_7, KC_8, KC_9, KC_MINS, KC_F11, KC_F12, KC_NUHS, KC_NUBS, KC_MUTE, _______, KC_BSLS, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_5x12( @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [3] = LAYOUT_ortho_5x12( diff --git a/keyboards/boardsource/microdox/keymaps/via/keymap.c b/keyboards/boardsource/microdox/keymaps/via/keymap.c index d9196515cb..d561feea52 100644 --- a/keyboards/boardsource/microdox/keymaps/via/keymap.c +++ b/keyboards/boardsource/microdox/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PGDN, KC_TRNS, KC_SPC, KC_ENT, KC_TRNS, KC_PGUP ), [3] = LAYOUT_split_3x5_3( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUD, RGB_HUI, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUD, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RMOD, RGB_VAD, RGB_VAI, XXXXXXX, XXXXXXX, KC_TRNS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/boardsource/technik_o/keymaps/default/keymap.c b/keyboards/boardsource/technik_o/keymaps/default/keymap.c index 44e2b86ac1..028e3eae41 100644 --- a/keyboards/boardsource/technik_o/keymaps/default/keymap.c +++ b/keyboards/boardsource/technik_o/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_4x12( diff --git a/keyboards/boardsource/technik_o/keymaps/via/keymap.c b/keyboards/boardsource/technik_o/keymaps/via/keymap.c index 44e2b86ac1..028e3eae41 100644 --- a/keyboards/boardsource/technik_o/keymaps/via/keymap.c +++ b/keyboards/boardsource/technik_o/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_LOWER] = LAYOUT_ortho_4x12( diff --git a/keyboards/boardsource/technik_s/keymaps/default/keymap.c b/keyboards/boardsource/technik_s/keymaps/default/keymap.c index 89dfaa4ace..1b26f6387d 100644 --- a/keyboards/boardsource/technik_s/keymaps/default/keymap.c +++ b/keyboards/boardsource/technik_s/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD ), [_LOWER] = LAYOUT( diff --git a/keyboards/boardsource/technik_s/keymaps/via/keymap.c b/keyboards/boardsource/technik_s/keymaps/via/keymap.c index 89dfaa4ace..1b26f6387d 100644 --- a/keyboards/boardsource/technik_s/keymaps/via/keymap.c +++ b/keyboards/boardsource/technik_s/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, RGB_MOD, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD ), [_LOWER] = LAYOUT( diff --git a/keyboards/boardsource/the_mark/keymaps/default/keymap.c b/keyboards/boardsource/the_mark/keymaps/default/keymap.c index 148795b0c3..dc689f9bb1 100644 --- a/keyboards/boardsource/the_mark/keymaps/default/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardsource/the_mark/keymaps/default_ansi/keymap.c b/keyboards/boardsource/the_mark/keymaps/default_ansi/keymap.c index 4174e03603..6e1bcd2894 100644 --- a/keyboards/boardsource/the_mark/keymaps/default_ansi/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/default_ansi/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ansi( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, _______, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardsource/the_mark/keymaps/default_ansi_split_bs_space/keymap.c b/keyboards/boardsource/the_mark/keymaps/default_ansi_split_bs_space/keymap.c index d59378c78f..477685c771 100644 --- a/keyboards/boardsource/the_mark/keymaps/default_ansi_split_bs_space/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/default_ansi_split_bs_space/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ansi_split_bs_space( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, _______, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardsource/the_mark/keymaps/default_iso/keymap.c b/keyboards/boardsource/the_mark/keymaps/default_iso/keymap.c index 347bc19a35..3e29975d37 100644 --- a/keyboards/boardsource/the_mark/keymaps/default_iso/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/default_iso/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_iso( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardsource/the_mark/keymaps/default_iso_split_bs_space/keymap.c b/keyboards/boardsource/the_mark/keymaps/default_iso_split_bs_space/keymap.c index 617ee540d1..1f61d83225 100644 --- a/keyboards/boardsource/the_mark/keymaps/default_iso_split_bs_space/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/default_iso_split_bs_space/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_iso_split_bs_space( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardsource/the_mark/keymaps/via/keymap.c b/keyboards/boardsource/the_mark/keymaps/via/keymap.c index 1d2a97b756..dbc3b5b464 100644 --- a/keyboards/boardsource/the_mark/keymaps/via/keymap.c +++ b/keyboards/boardsource/the_mark/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/boardwalk/keymaps/default/keymap.c b/keyboards/boardwalk/keymaps/default/keymap.c index 6ee85e4999..660e0f1d52 100644 --- a/keyboards/boardwalk/keymaps/default/keymap.c +++ b/keyboards/boardwalk/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x14( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardwalk/keymaps/default_2u_arrow/keymap.c b/keyboards/boardwalk/keymaps/default_2u_arrow/keymap.c index 96b87d1cd4..1e76670612 100644 --- a/keyboards/boardwalk/keymaps/default_2u_arrow/keymap.c +++ b/keyboards/boardwalk/keymaps/default_2u_arrow/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | MUTE | VOL DN | VOL UP | | | | END | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| - * | | | | | | | | | RESET | | | | + * | | | | | | | | | QK_BOOT | | | | * '-----------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_2u_arrow( @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______ + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______ ) }; diff --git a/keyboards/boardwalk/keymaps/default_2x2u/keymap.c b/keyboards/boardwalk/keymaps/default_2x2u/keymap.c index f30d15c0f8..99f67214a6 100644 --- a/keyboards/boardwalk/keymaps/default_2x2u/keymap.c +++ b/keyboards/boardwalk/keymaps/default_2x2u/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_2x2u( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| @@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT_ortho_2x2u( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardwalk/keymaps/default_625u_arrow/keymap.c b/keyboards/boardwalk/keymaps/default_625u_arrow/keymap.c index a609859bb3..115a0cccfa 100644 --- a/keyboards/boardwalk/keymaps/default_625u_arrow/keymap.c +++ b/keyboards/boardwalk/keymaps/default_625u_arrow/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | MUTE | VOL DN | VOL UP | | | | END | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| - * | | | | | | RESET | | | | + * | | | | | | QK_BOOT | | | | * '-----------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_625u_arrow( @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, KC_END, - _______, _______, _______, _______, _______, RESET, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______ ) }; diff --git a/keyboards/boardwalk/keymaps/default_ortho_7u/keymap.c b/keyboards/boardwalk/keymaps/default_ortho_7u/keymap.c index 8d61b54a31..9e274a6a37 100644 --- a/keyboards/boardwalk/keymaps/default_ortho_7u/keymap.c +++ b/keyboards/boardwalk/keymaps/default_ortho_7u/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * '--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------' @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_7u( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardwalk/keymaps/default_ortho_hhkb/keymap.c b/keyboards/boardwalk/keymaps/default_ortho_hhkb/keymap.c index d9819d9ccf..dde9bcd2ce 100644 --- a/keyboards/boardwalk/keymaps/default_ortho_hhkb/keymap.c +++ b/keyboards/boardwalk/keymaps/default_ortho_hhkb/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * '--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------' @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_hhkb( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/boardwalk/keymaps/via/keymap.c b/keyboards/boardwalk/keymaps/via/keymap.c index d5b1795b62..14526fe50f 100644 --- a/keyboards/boardwalk/keymaps/via/keymap.c +++ b/keyboards/boardwalk/keymaps/via/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------| * | | | MENU | | | | | | | | | | PRT SC | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x14( KC_GRV, 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_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/boston_meetup/2019/keymaps/default/keymap.c b/keyboards/boston_meetup/2019/keymaps/default/keymap.c index 666624b18c..a7a874a0a8 100644 --- a/keyboards/boston_meetup/2019/keymaps/default/keymap.c +++ b/keyboards/boston_meetup/2019/keymaps/default/keymap.c @@ -96,7 +96,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------' */ [_ADJUST] = LAYOUT( - RESET, + QK_BOOT, HPT_TOG, HPT_FBK, HPT_RST, KC_BSPC, _______, HPT_MODI, XXXXXXX, XXXXXXX, _______, HPT_MODD, CK_TOGG, KC_DEL diff --git a/keyboards/bpiphany/ghost_squid/keymaps/default/keymap.c b/keyboards/bpiphany/ghost_squid/keymaps/default/keymap.c index 09523ebbb9..5f0b1c599a 100644 --- a/keyboards/bpiphany/ghost_squid/keymaps/default/keymap.c +++ b/keyboards/bpiphany/ghost_squid/keymaps/default/keymap.c @@ -51,7 +51,7 @@ KC_LSFT, KC_NUBS,KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI,MO(KM_MEDIA),KC_RCTL, KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT), /* Layer 1: Function layer */ [KM_MEDIA] = LAYOUT( -_______,_______,_______,_______,_______, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_STOP, KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, TG(KM_GUI_LOCK),KC_MUTE, KC_VOLD, KC_VOLU,_______,_______, RESET, +_______,_______,_______,_______,_______, KC_MEDIA_PLAY_PAUSE, KC_MEDIA_STOP, KC_MEDIA_PREV_TRACK, KC_MEDIA_NEXT_TRACK, TG(KM_GUI_LOCK),KC_MUTE, KC_VOLD, KC_VOLU,_______,_______, QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, diff --git a/keyboards/bpiphany/pegasushoof/keymaps/default/keymap.c b/keyboards/bpiphany/pegasushoof/keymaps/default/keymap.c index 4a9b1f3f0f..5583a79198 100644 --- a/keyboards/bpiphany/pegasushoof/keymaps/default/keymap.c +++ b/keyboards/bpiphany/pegasushoof/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, - _______, _______, _______, _______, _______, _______, RESET, _______, KC_MPRV, KC_MSTP, KC_MNXT + _______, _______, _______, _______, _______, _______, QK_BOOT, _______, KC_MPRV, KC_MSTP, KC_MNXT ) }; diff --git a/keyboards/bpiphany/pegasushoof/keymaps/default_jis/keymap.c b/keyboards/bpiphany/pegasushoof/keymaps/default_jis/keymap.c index 46b660124e..2b87493f11 100644 --- a/keyboards/bpiphany/pegasushoof/keymaps/default_jis/keymap.c +++ b/keyboards/bpiphany/pegasushoof/keymaps/default_jis/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,KC_VOLD, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, KC_MPLY, - _______,_______,_______,_______, _______, _______,_______,_______,_______,RESET , KC_MPRV,KC_MSTP,KC_MNXT) + _______,_______,_______,_______, _______, _______,_______,_______,_______,QK_BOOT , KC_MPRV,KC_MSTP,KC_MNXT) }; void led_set_user(uint8_t usb_led) { diff --git a/keyboards/buildakb/potato65/keymaps/default/keymap.c b/keyboards/buildakb/potato65/keymaps/default/keymap.c index 0494623704..56fe7af72a 100644 --- a/keyboards/buildakb/potato65/keymaps/default/keymap.c +++ b/keyboards/buildakb/potato65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/buildakb/potato65/keymaps/via/keymap.c b/keyboards/buildakb/potato65/keymaps/via/keymap.c index fedbaca042..28aeda2a50 100644 --- a/keyboards/buildakb/potato65/keymaps/via/keymap.c +++ b/keyboards/buildakb/potato65/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN1] = LAYOUT_65_ansi_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/buildakb/potato65hs/keymaps/default/keymap.c b/keyboards/buildakb/potato65hs/keymaps/default/keymap.c index f7a5ff4246..98e4e19260 100644 --- a/keyboards/buildakb/potato65hs/keymaps/default/keymap.c +++ b/keyboards/buildakb/potato65hs/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_65_ansi_blocker( KC_TILD, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/buildakb/potato65hs/keymaps/via/keymap.c b/keyboards/buildakb/potato65hs/keymaps/via/keymap.c index 269fca7374..4365a6615c 100644 --- a/keyboards/buildakb/potato65hs/keymaps/via/keymap.c +++ b/keyboards/buildakb/potato65hs/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_65_ansi_blocker( KC_TILD, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/buildakb/potato65s/keymaps/default/keymap.c b/keyboards/buildakb/potato65s/keymaps/default/keymap.c index 9f6eb0890b..00f9d43a6d 100644 --- a/keyboards/buildakb/potato65s/keymaps/default/keymap.c +++ b/keyboards/buildakb/potato65s/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_all( KC_TILD, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/buildakb/potato65s/keymaps/via/keymap.c b/keyboards/buildakb/potato65s/keymaps/via/keymap.c index ad49cf5a4d..e0f107154a 100644 --- a/keyboards/buildakb/potato65s/keymaps/via/keymap.c +++ b/keyboards/buildakb/potato65s/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( KC_TILD, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/cablecardesigns/cypher/rev6/keymaps/default/keymap.c b/keyboards/cablecardesigns/cypher/rev6/keymaps/default/keymap.c index 6a39580735..bb8c73b37c 100644 --- a/keyboards/cablecardesigns/cypher/rev6/keymaps/default/keymap.c +++ b/keyboards/cablecardesigns/cypher/rev6/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI,KC_LALT, KC_SPC,KC_SPC,KC_SPC, KC_RALT,KC_RALT,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_all( /* Function Layer */ - 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, KC_DEL , _______, _______, _______, _______, _______, + QK_BOOT, 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 , _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/cablecardesigns/cypher/rev6/keymaps/default_iso/keymap.c b/keyboards/cablecardesigns/cypher/rev6/keymaps/default_iso/keymap.c index 82c9e836c0..92dd124606 100644 --- a/keyboards/cablecardesigns/cypher/rev6/keymaps/default_iso/keymap.c +++ b/keyboards/cablecardesigns/cypher/rev6/keymaps/default_iso/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI,KC_LALT, KC_NO,KC_SPC,KC_NO, KC_RALT,KC_RGUI,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_all( /* Function Layer */ - 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, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______,_______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/cablecardesigns/cypher/rev6/keymaps/via/keymap.c b/keyboards/cablecardesigns/cypher/rev6/keymaps/via/keymap.c index 371b876623..7361196ef0 100644 --- a/keyboards/cablecardesigns/cypher/rev6/keymaps/via/keymap.c +++ b/keyboards/cablecardesigns/cypher/rev6/keymaps/via/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, MO(1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_STEP, BL_ON, BL_OFF, BL_INC, BL_DEC, BL_BRTG, 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, 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, diff --git a/keyboards/caffeinated/serpent65/keymaps/default/keymap.c b/keyboards/caffeinated/serpent65/keymaps/default/keymap.c index cf0097f912..7449aca90e 100644 --- a/keyboards/caffeinated/serpent65/keymaps/default/keymap.c +++ b/keyboards/caffeinated/serpent65/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* Serpent65 Base */ - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/caffeinated/serpent65/keymaps/via/keymap.c b/keyboards/caffeinated/serpent65/keymaps/via/keymap.c index d4f6d9e20b..e6010c96de 100644 --- a/keyboards/caffeinated/serpent65/keymaps/via/keymap.c +++ b/keyboards/caffeinated/serpent65/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* Serpent65 Base */ - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/canary/canary60rgb/keymaps/default/keymap.c b/keyboards/canary/canary60rgb/keymaps/default/keymap.c index 150b187645..a448934d01 100644 --- a/keyboards/canary/canary60rgb/keymaps/default/keymap.c +++ b/keyboards/canary/canary60rgb/keymaps/default/keymap.c @@ -25,14 +25,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( _______, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, TO(3), _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT( _______, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/canary/canary60rgb/keymaps/via/keymap.c b/keyboards/canary/canary60rgb/keymaps/via/keymap.c index 6bef543a16..3de300bd93 100644 --- a/keyboards/canary/canary60rgb/keymaps/via/keymap.c +++ b/keyboards/canary/canary60rgb/keymaps/via/keymap.c @@ -25,14 +25,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( _______, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, TO(3), _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT( _______, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/cannonkeys/adelie/keymaps/default/keymap.c b/keyboards/cannonkeys/adelie/keymaps/default/keymap.c index 2698da36e5..757c6b56ac 100644 --- a/keyboards/cannonkeys/adelie/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/adelie/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_POWER, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_DEL, KC_VOLU, KC_SLEP, 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_VOLD, KC_WAKE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_MUTE, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [_FN3] = LAYOUT_all( diff --git a/keyboards/cannonkeys/adelie/keymaps/via/keymap.c b/keyboards/cannonkeys/adelie/keymaps/via/keymap.c index 2698da36e5..757c6b56ac 100644 --- a/keyboards/cannonkeys/adelie/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/adelie/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_POWER, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_DEL, KC_VOLU, KC_SLEP, 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_VOLD, KC_WAKE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_MUTE, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [_FN3] = LAYOUT_all( diff --git a/keyboards/cannonkeys/aella/keymaps/default/keymap.c b/keyboards/cannonkeys/aella/keymaps/default/keymap.c index 4bd71e79f9..286c62a8ac 100644 --- a/keyboards/cannonkeys/aella/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/aella/keymaps/default/keymap.c @@ -43,6 +43,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_DOWN, KC_RGHT, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/aella/keymaps/via/keymap.c b/keyboards/cannonkeys/aella/keymaps/via/keymap.c index 3a204be6c5..bb3830d0f8 100644 --- a/keyboards/cannonkeys/aella/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/aella/keymaps/via/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_DOWN, KC_RGHT, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ), diff --git a/keyboards/cannonkeys/an_c/keymaps/default/keymap.c b/keyboards/cannonkeys/an_c/keymaps/default/keymap.c index d6d69ee8f7..56e4b32fd3 100644 --- a/keyboards/cannonkeys/an_c/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/an_c/keymaps/default/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_GRV, _______, _______, _______, _______, _______, _______, RESET + KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/an_c/keymaps/tsangan/keymap.c b/keyboards/cannonkeys/an_c/keymaps/tsangan/keymap.c index 857415ad9f..2e18c26383 100644 --- a/keyboards/cannonkeys/an_c/keymaps/tsangan/keymap.c +++ b/keyboards/cannonkeys/an_c/keymaps/tsangan/keymap.c @@ -39,6 +39,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/an_c/keymaps/via/keymap.c b/keyboards/cannonkeys/an_c/keymaps/via/keymap.c index b182ac5f4f..52d3478ecb 100644 --- a/keyboards/cannonkeys/an_c/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/an_c/keymaps/via/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/atlas/keymaps/default/keymap.c b/keyboards/cannonkeys/atlas/keymaps/default/keymap.c index 8a33ec4458..b52c0056c0 100644 --- a/keyboards/cannonkeys/atlas/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/atlas/keymaps/default/keymap.c @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Raise diff --git a/keyboards/cannonkeys/atlas/keymaps/via/keymap.c b/keyboards/cannonkeys/atlas/keymaps/via/keymap.c index 251e920e77..b9d047fc75 100644 --- a/keyboards/cannonkeys/atlas/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/atlas/keymaps/via/keymap.c @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Raise diff --git a/keyboards/cannonkeys/atlas_alps/keymaps/default/keymap.c b/keyboards/cannonkeys/atlas_alps/keymaps/default/keymap.c index c260add4d5..1070a8a2c8 100644 --- a/keyboards/cannonkeys/atlas_alps/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/atlas_alps/keymaps/default/keymap.c @@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* 3 @@ -102,6 +102,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/cannonkeys/atlas_alps/keymaps/via/keymap.c b/keyboards/cannonkeys/atlas_alps/keymaps/via/keymap.c index 3e42b3b5a4..c867a835ba 100644 --- a/keyboards/cannonkeys/atlas_alps/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/atlas_alps/keymaps/via/keymap.c @@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* 3 @@ -102,6 +102,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/cannonkeys/balance/keymaps/default/keymap.c b/keyboards/cannonkeys/balance/keymaps/default/keymap.c index b1e507bc17..ac8c14c2b9 100644 --- a/keyboards/cannonkeys/balance/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/balance/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET , 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, + QK_BOOT , 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/balance/keymaps/via/keymap.c b/keyboards/cannonkeys/balance/keymaps/via/keymap.c index ad5f009d43..99735423ee 100644 --- a/keyboards/cannonkeys/balance/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/balance/keymaps/via/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET , 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, + QK_BOOT , 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/chimera65/keymaps/default/keymap.c b/keyboards/cannonkeys/chimera65/keymaps/default/keymap.c index a63fcf6f75..bd1a709584 100644 --- a/keyboards/cannonkeys/chimera65/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/chimera65/keymaps/default/keymap.c @@ -39,6 +39,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, 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_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/chimera65/keymaps/via/keymap.c b/keyboards/cannonkeys/chimera65/keymaps/via/keymap.c index a63fcf6f75..bd1a709584 100644 --- a/keyboards/cannonkeys/chimera65/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/chimera65/keymaps/via/keymap.c @@ -39,6 +39,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, 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_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/db60/keymaps/default/keymap.c b/keyboards/cannonkeys/db60/keymaps/default/keymap.c index 9c834aa137..e79e2b1ee3 100644 --- a/keyboards/cannonkeys/db60/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/db60/keymaps/default/keymap.c @@ -40,6 +40,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_GRV, _______, _______, _______, _______, _______, _______, RESET + KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/db60/keymaps/iso/keymap.c b/keyboards/cannonkeys/db60/keymaps/iso/keymap.c index 52fca7d168..65a1b8c9a5 100644 --- a/keyboards/cannonkeys/db60/keymaps/iso/keymap.c +++ b/keyboards/cannonkeys/db60/keymaps/iso/keymap.c @@ -40,6 +40,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, _______, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_GRV, _______, _______, _______, _______, _______, _______, RESET + KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/db60/keymaps/tsangan/keymap.c b/keyboards/cannonkeys/db60/keymaps/tsangan/keymap.c index 996a3d536d..d9a4661702 100644 --- a/keyboards/cannonkeys/db60/keymaps/tsangan/keymap.c +++ b/keyboards/cannonkeys/db60/keymaps/tsangan/keymap.c @@ -41,6 +41,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/db60/keymaps/via/keymap.c b/keyboards/cannonkeys/db60/keymaps/via/keymap.c index b25d36a9c2..64b5357ae8 100644 --- a/keyboards/cannonkeys/db60/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/db60/keymaps/via/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), [_FN2] = LAYOUT_all( diff --git a/keyboards/cannonkeys/devastatingtkl/keymaps/default/keymap.c b/keyboards/cannonkeys/devastatingtkl/keymaps/default/keymap.c index 6b870b6e12..a1becb148e 100644 --- a/keyboards/cannonkeys/devastatingtkl/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/devastatingtkl/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/cannonkeys/devastatingtkl/keymaps/via/keymap.c b/keyboards/cannonkeys/devastatingtkl/keymaps/via/keymap.c index 33f15901ea..701e9b7693 100644 --- a/keyboards/cannonkeys/devastatingtkl/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/devastatingtkl/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/cannonkeys/hoodrowg/keymaps/default/keymap.c b/keyboards/cannonkeys/hoodrowg/keymaps/default/keymap.c index 18a23cb420..d5cd7efc5b 100644 --- a/keyboards/cannonkeys/hoodrowg/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/hoodrowg/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/cannonkeys/hoodrowg/keymaps/via/keymap.c b/keyboards/cannonkeys/hoodrowg/keymaps/via/keymap.c index a5bc67e9af..77aea233e7 100644 --- a/keyboards/cannonkeys/hoodrowg/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/hoodrowg/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/cannonkeys/instant60/keymaps/default/keymap.c b/keyboards/cannonkeys/instant60/keymaps/default/keymap.c index 30337c3929..bd3e7eebe1 100644 --- a/keyboards/cannonkeys/instant60/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/instant60/keymaps/default/keymap.c @@ -42,6 +42,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_GRV, _______, _______, _______, _______, _______, _______, RESET + KC_GRV, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c b/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c index d75d9f288a..8294141327 100644 --- a/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c +++ b/keyboards/cannonkeys/instant60/keymaps/tsangan/keymap.c @@ -43,6 +43,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, \ BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,\ - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/instant60/keymaps/via/keymap.c b/keyboards/cannonkeys/instant60/keymaps/via/keymap.c index 9be7d187e4..43decee798 100644 --- a/keyboards/cannonkeys/instant60/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/instant60/keymaps/via/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/instant65/keymaps/default/keymap.c b/keyboards/cannonkeys/instant65/keymaps/default/keymap.c index a7c125b45b..0967054438 100644 --- a/keyboards/cannonkeys/instant65/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/instant65/keymaps/default/keymap.c @@ -41,6 +41,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_TOGG, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/instant65/keymaps/via/keymap.c b/keyboards/cannonkeys/instant65/keymaps/via/keymap.c index c2ad7f2136..b5b7564543 100644 --- a/keyboards/cannonkeys/instant65/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/instant65/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_TOGG, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ), [_FN2] = LAYOUT_default( diff --git a/keyboards/cannonkeys/iron165/keymaps/default/keymap.c b/keyboards/cannonkeys/iron165/keymaps/default/keymap.c index 12c2a69937..8609bed47f 100644 --- a/keyboards/cannonkeys/iron165/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/iron165/keymaps/default/keymap.c @@ -42,6 +42,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, 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_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/obliterated75/keymaps/default/keymap.c b/keyboards/cannonkeys/obliterated75/keymaps/default/keymap.c index 2934aae189..fcd3c8f056 100644 --- a/keyboards/cannonkeys/obliterated75/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/obliterated75/keymaps/default/keymap.c @@ -43,6 +43,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/obliterated75/keymaps/via/keymap.c b/keyboards/cannonkeys/obliterated75/keymaps/via/keymap.c index b47657e423..05d4bad449 100644 --- a/keyboards/cannonkeys/obliterated75/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/obliterated75/keymaps/via/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ), diff --git a/keyboards/cannonkeys/onyx/keymaps/default/keymap.c b/keyboards/cannonkeys/onyx/keymaps/default/keymap.c index 6a6fe17b5c..31ce737884 100644 --- a/keyboards/cannonkeys/onyx/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/onyx/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/onyx/keymaps/via/keymap.c b/keyboards/cannonkeys/onyx/keymaps/via/keymap.c index 6de4908f37..2dbd2514b7 100644 --- a/keyboards/cannonkeys/onyx/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/onyx/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/cannonkeys/ortho48/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho48/keymaps/default/keymap.c index ba26b9adb2..c02fc0a470 100644 --- a/keyboards/cannonkeys/ortho48/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ortho48/keymaps/default/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Raise diff --git a/keyboards/cannonkeys/ortho48/keymaps/via/keymap.c b/keyboards/cannonkeys/ortho48/keymaps/via/keymap.c index 419fc053e1..ea9651f2d6 100644 --- a/keyboards/cannonkeys/ortho48/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ortho48/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, S(KC_NUHS), S(KC_NUBS), KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [2] = LAYOUT_ortho_4x12( diff --git a/keyboards/cannonkeys/ortho60/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho60/keymaps/default/keymap.c index e2b5d94a0d..36f95318fb 100644 --- a/keyboards/cannonkeys/ortho60/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ortho60/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Raise diff --git a/keyboards/cannonkeys/ortho60/keymaps/via/keymap.c b/keyboards/cannonkeys/ortho60/keymaps/via/keymap.c index e982ec247c..8d0060d015 100644 --- a/keyboards/cannonkeys/ortho60/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/ortho60/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),KC_HOME, KC_END, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [2] = LAYOUT_ortho_5x12( diff --git a/keyboards/cannonkeys/ortho75/keymaps/default/keymap.c b/keyboards/cannonkeys/ortho75/keymaps/default/keymap.c index 1aef110cb1..97896d65ea 100644 --- a/keyboards/cannonkeys/ortho75/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/ortho75/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, MO(_FN), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ ) diff --git a/keyboards/cannonkeys/practice60/keymaps/via/keymap.c b/keyboards/cannonkeys/practice60/keymaps/via/keymap.c index 1bafdbb88f..c7475f4b8c 100644 --- a/keyboards/cannonkeys/practice60/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/practice60/keymaps/via/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_60_ansi( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, KC_TRNS, - RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, 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 diff --git a/keyboards/cannonkeys/practice65/keymaps/default/keymap.c b/keyboards/cannonkeys/practice65/keymaps/default/keymap.c index e6d5e5802c..ce528c5ce2 100644 --- a/keyboards/cannonkeys/practice65/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/practice65/keymaps/default/keymap.c @@ -42,6 +42,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, RESET + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/cannonkeys/rekt1800/keymaps/default/keymap.c b/keyboards/cannonkeys/rekt1800/keymaps/default/keymap.c index 98e16e7008..f53159ccd4 100644 --- a/keyboards/cannonkeys/rekt1800/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/rekt1800/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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_BRTG, 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, diff --git a/keyboards/cannonkeys/rekt1800/keymaps/via/keymap.c b/keyboards/cannonkeys/rekt1800/keymaps/via/keymap.c index d267302b34..dce2f7276c 100644 --- a/keyboards/cannonkeys/rekt1800/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/rekt1800/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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_BRTG, 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, diff --git a/keyboards/cannonkeys/sagittarius/keymaps/default/keymap.c b/keyboards/cannonkeys/sagittarius/keymaps/default/keymap.c index a976b0e175..be0dec93ab 100644 --- a/keyboards/cannonkeys/sagittarius/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/sagittarius/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_INS, 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_DEL, 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, - RESET, 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, + QK_BOOT, 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 ) }; diff --git a/keyboards/cannonkeys/sagittarius/keymaps/via/keymap.c b/keyboards/cannonkeys/sagittarius/keymaps/via/keymap.c index 829cdaeb6c..495c4269ad 100644 --- a/keyboards/cannonkeys/sagittarius/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/sagittarius/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_INS, 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_DEL, 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, - RESET, 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, + QK_BOOT, 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 ) }; diff --git a/keyboards/cannonkeys/satisfaction75/keymaps/default/keymap.c b/keyboards/cannonkeys/satisfaction75/keymaps/default/keymap.c index 10a4b60ee1..0bdc0aa9e7 100644 --- a/keyboards/cannonkeys/satisfaction75/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/satisfaction75/keymaps/default/keymap.c @@ -32,6 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLOCK_SET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/cannonkeys/satisfaction75/keymaps/via/keymap.c b/keyboards/cannonkeys/satisfaction75/keymaps/via/keymap.c index 85cbadc0b9..47806ff8a2 100644 --- a/keyboards/cannonkeys/satisfaction75/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/satisfaction75/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLOCK_SET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/cannonkeys/savage65/keymaps/default/keymap.c b/keyboards/cannonkeys/savage65/keymaps/default/keymap.c index 0184b49399..ea490d94af 100644 --- a/keyboards/cannonkeys/savage65/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/savage65/keymaps/default/keymap.c @@ -41,6 +41,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/savage65/keymaps/via/keymap.c b/keyboards/cannonkeys/savage65/keymaps/via/keymap.c index f9f0bd4acc..30d5d82d43 100644 --- a/keyboards/cannonkeys/savage65/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/savage65/keymaps/via/keymap.c @@ -42,6 +42,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, BL_DEC, BL_TOGG, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/tmov2/keymaps/default/keymap.c b/keyboards/cannonkeys/tmov2/keymaps/default/keymap.c index 1d6e4f49cf..dbc1f6be05 100644 --- a/keyboards/cannonkeys/tmov2/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/tmov2/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN3] = LAYOUT_default( - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/cannonkeys/tmov2/keymaps/via/keymap.c b/keyboards/cannonkeys/tmov2/keymaps/via/keymap.c index 1d6e4f49cf..dbc1f6be05 100644 --- a/keyboards/cannonkeys/tmov2/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/tmov2/keymaps/via/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN3] = LAYOUT_default( - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/cannonkeys/tsukuyomi/keymaps/default/keymap.c b/keyboards/cannonkeys/tsukuyomi/keymaps/default/keymap.c index bd6e98fea3..476ef88463 100644 --- a/keyboards/cannonkeys/tsukuyomi/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/tsukuyomi/keymaps/default/keymap.c @@ -41,6 +41,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F5, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_F6, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F7, BL_INC, BL_DEC, BL_TOGG, 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_F8, KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_F8, KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/cannonkeys/tsukuyomi/keymaps/via/keymap.c b/keyboards/cannonkeys/tsukuyomi/keymaps/via/keymap.c index 21f0a52d30..33d20d1cda 100644 --- a/keyboards/cannonkeys/tsukuyomi/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/tsukuyomi/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F5, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_F6, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F7, BL_INC, BL_DEC, BL_TOGG, 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_F8, KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS + KC_F8, KC_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS ), [_FN2] = LAYOUT_default( diff --git a/keyboards/cannonkeys/vicious40/keymaps/default/keymap.c b/keyboards/cannonkeys/vicious40/keymaps/default/keymap.c index 25959e719e..1fb5c37b6d 100644 --- a/keyboards/cannonkeys/vicious40/keymaps/default/keymap.c +++ b/keyboards/cannonkeys/vicious40/keymaps/default/keymap.c @@ -47,6 +47,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_INS, KC_TRNS, 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, BL_INC, BL_TOGG, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_BRTG + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_BRTG ) }; diff --git a/keyboards/cannonkeys/vicious40/keymaps/via/keymap.c b/keyboards/cannonkeys/vicious40/keymaps/via/keymap.c index fa74f8271e..e1b17e1ec5 100644 --- a/keyboards/cannonkeys/vicious40/keymaps/via/keymap.c +++ b/keyboards/cannonkeys/vicious40/keymaps/via/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_INS, KC_TRNS, 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, BL_INC, BL_TOGG, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_BRTG + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_BRTG ), [_FN3] = LAYOUT_default( diff --git a/keyboards/capsunlocked/cu24/keymaps/default/keymap.c b/keyboards/capsunlocked/cu24/keymaps/default/keymap.c index aa2d834dfa..7877229a37 100644 --- a/keyboards/capsunlocked/cu24/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu24/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET , KC_TRNS + KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS ), }; diff --git a/keyboards/capsunlocked/cu65/keymaps/default/keymap.c b/keyboards/capsunlocked/cu65/keymaps/default/keymap.c index 05f4bdb995..2bcfdccfbe 100644 --- a/keyboards/capsunlocked/cu65/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu65/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │ │ │ │ │ │ │ │ │ │ │ * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ */ - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/capsunlocked/cu65/keymaps/iso/keymap.c b/keyboards/capsunlocked/cu65/keymaps/iso/keymap.c index c84317270c..7d677a6439 100644 --- a/keyboards/capsunlocked/cu65/keymaps/iso/keymap.c +++ b/keyboards/capsunlocked/cu65/keymaps/iso/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │ │ │ │ │ │ │ │ │ │ │ * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ */ - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/capsunlocked/cu65/keymaps/via/keymap.c b/keyboards/capsunlocked/cu65/keymaps/via/keymap.c index fb0031f2b0..74ff136004 100644 --- a/keyboards/capsunlocked/cu65/keymaps/via/keymap.c +++ b/keyboards/capsunlocked/cu65/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/capsunlocked/cu7/keymaps/default/keymap.c b/keyboards/capsunlocked/cu7/keymaps/default/keymap.c index 66ee4f7a90..c89fe3f925 100644 --- a/keyboards/capsunlocked/cu7/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu7/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( _______, - RGB_MOD, KC_UP, RESET, + RGB_MOD, KC_UP, QK_BOOT, KC_LEFT, KC_DOWN, KC_RGHT ), }; diff --git a/keyboards/capsunlocked/cu75/keymaps/default/keymap.c b/keyboards/capsunlocked/cu75/keymaps/default/keymap.c index b1e3e9f97a..85e7b1a3ed 100644 --- a/keyboards/capsunlocked/cu75/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu75/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-------------------------------------------------------------------| * | | | | | | | | | | | | | | | RGB_TOG| * |-------------------------------------------------------------------| - * | | | | | | | | | | | | |RESET |RGB_MODE| + * | | | | | | | | | | | | |QK_BOOT |RGB_MODE| * |-------------------------------------------------------------------| * | | | | | | | | | |VAD|VAI| |RGB_HUI| | * |-------------------------------------------------------------------| @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI ), diff --git a/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c b/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c index ce7d51eed0..f6d7cc5281 100644 --- a/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c +++ b/keyboards/capsunlocked/cu75/keymaps/iso/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, RGB_MOD, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI ), diff --git a/keyboards/capsunlocked/cu80/v2_ansi/keymaps/default/keymap.c b/keyboards/capsunlocked/cu80/v2_ansi/keymaps/default/keymap.c index e8480605b7..7ee9ef880f 100644 --- a/keyboards/capsunlocked/cu80/v2_ansi/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu80/v2_ansi/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, diff --git a/keyboards/capsunlocked/cu80/v2_ansi/keymaps/via/keymap.c b/keyboards/capsunlocked/cu80/v2_ansi/keymaps/via/keymap.c index fb487aa833..dbdb197e8e 100644 --- a/keyboards/capsunlocked/cu80/v2_ansi/keymaps/via/keymap.c +++ b/keyboards/capsunlocked/cu80/v2_ansi/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, diff --git a/keyboards/capsunlocked/cu80/v2_iso/keymaps/default/keymap.c b/keyboards/capsunlocked/cu80/v2_iso/keymaps/default/keymap.c index 1b1caa8776..185466c954 100644 --- a/keyboards/capsunlocked/cu80/v2_iso/keymaps/default/keymap.c +++ b/keyboards/capsunlocked/cu80/v2_iso/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, diff --git a/keyboards/capsunlocked/cu80/v2_iso/keymaps/via/keymap.c b/keyboards/capsunlocked/cu80/v2_iso/keymaps/via/keymap.c index f63ab5a53c..51eacfd9d2 100644 --- a/keyboards/capsunlocked/cu80/v2_iso/keymaps/via/keymap.c +++ b/keyboards/capsunlocked/cu80/v2_iso/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, diff --git a/keyboards/cest73/tkm/keymaps/default/keymap.c b/keyboards/cest73/tkm/keymaps/default/keymap.c index 0fa9ea921d..75f134619f 100644 --- a/keyboards/cest73/tkm/keymaps/default/keymap.c +++ b/keyboards/cest73/tkm/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PENT, KC_PDOT, KC_PCMM, KC_P0, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, 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, 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_LEFT, KC_UP, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/chalice/keymaps/default/keymap.c b/keyboards/chalice/keymaps/default/keymap.c index c33ebfabd2..a29803cbf9 100644 --- a/keyboards/chalice/keymaps/default/keymap.c +++ b/keyboards/chalice/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( - 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, _______, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, diff --git a/keyboards/chalice/keymaps/via/keymap.c b/keyboards/chalice/keymaps/via/keymap.c index c33ebfabd2..a29803cbf9 100644 --- a/keyboards/chalice/keymaps/via/keymap.c +++ b/keyboards/chalice/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( - 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, _______, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, diff --git a/keyboards/charue/charon/keymaps/default/keymap.c b/keyboards/charue/charon/keymaps/default/keymap.c index cb16f8eee3..fd64b2be02 100644 --- a/keyboards/charue/charon/keymaps/default/keymap.c +++ b/keyboards/charue/charon/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_RGUI, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT_all( - RESET, 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_GRV, KC_BSPC, + QK_BOOT, 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_GRV, 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, KC_VOLU, 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_VOLD, KC_LSFT, KC_BSLS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_MUTE, diff --git a/keyboards/charue/charon/keymaps/via/keymap.c b/keyboards/charue/charon/keymaps/via/keymap.c index 680333c6d7..8d4e8a90fb 100644 --- a/keyboards/charue/charon/keymaps/via/keymap.c +++ b/keyboards/charue/charon/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, 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, KC_TRNS, RESET, 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, QK_BOOT, 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 ), [2] = LAYOUT_all( diff --git a/keyboards/checkerboards/axon40/keymaps/default/keymap.c b/keyboards/checkerboards/axon40/keymaps/default/keymap.c index 22eaa8cf83..c997edb01f 100644 --- a/keyboards/checkerboards/axon40/keymaps/default/keymap.c +++ b/keyboards/checkerboards/axon40/keymaps/default/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| -* | | RESET | RGB | | | RGB Mod | RGB Mod Rev | | +* | | QK_BOOT | RGB | | | RGB Mod | RGB Mod Rev | | * `---------------------------------------------------------------------------------------' */ @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, RGB_VAI, RGB_HUD, RGB_SAD, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, RGB_VAD, 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_RMOD + QK_BOOT, RGB_TOG, _______, _______, RGB_MOD, RGB_RMOD ), }; diff --git a/keyboards/checkerboards/axon40/keymaps/via/keymap.c b/keyboards/checkerboards/axon40/keymaps/via/keymap.c index dc9a5066cd..dac5e22039 100644 --- a/keyboards/checkerboards/axon40/keymaps/via/keymap.c +++ b/keyboards/checkerboards/axon40/keymaps/via/keymap.c @@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, RGB_VAI, RGB_HUD, RGB_SAD, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, RGB_VAD, 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_RMOD + QK_BOOT, RGB_TOG, _______, _______, RGB_MOD, RGB_RMOD ), /* 2 @@ -103,7 +103,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, RGB_VAI, RGB_HUD, RGB_SAD, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, RGB_VAD, 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_RMOD + QK_BOOT, RGB_TOG, _______, _______, RGB_MOD, RGB_RMOD ), }; diff --git a/keyboards/checkerboards/candybar_ortho/keymaps/default/keymap.c b/keyboards/checkerboards/candybar_ortho/keymaps/default/keymap.c index ff3d6afe6c..4dfc4a3e2a 100644 --- a/keyboards/checkerboards/candybar_ortho/keymaps/default/keymap.c +++ b/keyboards/checkerboards/candybar_ortho/keymaps/default/keymap.c @@ -33,14 +33,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------| * |Shift | Z | X | C | V | B | DEL | N1 | N2 | N3 | PgDn | N | M | , | . | ? | Ent | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------| -* | LCTRL| LOS | LALT | / | ` | - | = | [ |TT(1) |LT(SPC)| ] | MENU | RALT | ROS |RCTRL | CAPS |RESET | +* | LCTRL| LOS | LALT | / | ` | - | = | [ |TT(1) |LT(SPC)| ] | MENU | RALT | ROS |RCTRL | CAPS |QK_BOOT | * '-----------------------------------------------------------------------------------------------------------------------' */ [0] = LAYOUT_grid( KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_HOME, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_INS, KC_P4, KC_P5, KC_P6, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_P1, KC_P2, KC_P3, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, - KC_LCTRL, KC_LGUI, KC_LALT, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, TT(1), LT(2, KC_SPC), KC_RBRC, KC_MENU, KC_RALT, KC_RGUI, KC_RCTRL, KC_CAPS, RESET + KC_LCTRL, KC_LGUI, KC_LALT, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, TT(1), LT(2, KC_SPC), KC_RBRC, KC_MENU, KC_RALT, KC_RGUI, KC_RCTRL, KC_CAPS, QK_BOOT ), /* 1 @@ -71,13 +71,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| -* |RESET | RTOG | | | | | | | | | | | | | | RMOD |RRMOD | +* |QK_BOOT | RTOG | | | | | | | | | | | | | | RMOD |RRMOD | * '----------------------------------------------------------------------------------------------------------------------' */ [2] = LAYOUT_grid( RGB_HUI, RGB_SAI, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, RGB_VAI, RGB_HUD, RGB_SAD, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, RGB_VAD, _______, 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_RMOD + QK_BOOT, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_RMOD ), }; diff --git a/keyboards/checkerboards/candybar_ortho/keymaps/via/keymap.c b/keyboards/checkerboards/candybar_ortho/keymaps/via/keymap.c index ff3d6afe6c..4dfc4a3e2a 100644 --- a/keyboards/checkerboards/candybar_ortho/keymaps/via/keymap.c +++ b/keyboards/checkerboards/candybar_ortho/keymaps/via/keymap.c @@ -33,14 +33,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------| * |Shift | Z | X | C | V | B | DEL | N1 | N2 | N3 | PgDn | N | M | , | . | ? | Ent | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+-------| -* | LCTRL| LOS | LALT | / | ` | - | = | [ |TT(1) |LT(SPC)| ] | MENU | RALT | ROS |RCTRL | CAPS |RESET | +* | LCTRL| LOS | LALT | / | ` | - | = | [ |TT(1) |LT(SPC)| ] | MENU | RALT | ROS |RCTRL | CAPS |QK_BOOT | * '-----------------------------------------------------------------------------------------------------------------------' */ [0] = LAYOUT_grid( KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_NLCK, KC_P7, KC_P8, KC_P9, KC_HOME, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_INS, KC_P4, KC_P5, KC_P6, KC_PGUP, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_DEL, KC_P1, KC_P2, KC_P3, KC_PGDN, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, - KC_LCTRL, KC_LGUI, KC_LALT, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, TT(1), LT(2, KC_SPC), KC_RBRC, KC_MENU, KC_RALT, KC_RGUI, KC_RCTRL, KC_CAPS, RESET + KC_LCTRL, KC_LGUI, KC_LALT, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_LBRC, TT(1), LT(2, KC_SPC), KC_RBRC, KC_MENU, KC_RALT, KC_RGUI, KC_RCTRL, KC_CAPS, QK_BOOT ), /* 1 @@ -71,13 +71,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| * | | F1 | F2 | F3 | F4 | F5 | | | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| -* |RESET | RTOG | | | | | | | | | | | | | | RMOD |RRMOD | +* |QK_BOOT | RTOG | | | | | | | | | | | | | | RMOD |RRMOD | * '----------------------------------------------------------------------------------------------------------------------' */ [2] = LAYOUT_grid( RGB_HUI, RGB_SAI, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, RGB_VAI, RGB_HUD, RGB_SAD, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, RGB_VAD, _______, 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_RMOD + QK_BOOT, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_RMOD ), }; diff --git a/keyboards/checkerboards/g_idb60/keymaps/default/keymap.c b/keyboards/checkerboards/g_idb60/keymaps/default/keymap.c index 730b2597b1..7974239005 100644 --- a/keyboards/checkerboards/g_idb60/keymaps/default/keymap.c +++ b/keyboards/checkerboards/g_idb60/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | |RESET | + * | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [1] = LAYOUT_all( @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,_______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Main Numbers, Symbols & Function Layer @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | |RESET | + * | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [2] = LAYOUT_all( @@ -80,6 +80,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,_______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/checkerboards/g_idb60/keymaps/via/keymap.c b/keyboards/checkerboards/g_idb60/keymaps/via/keymap.c index cd6c10c7e0..5b1151f17e 100644 --- a/keyboards/checkerboards/g_idb60/keymaps/via/keymap.c +++ b/keyboards/checkerboards/g_idb60/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | |RESET | + * | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [1] = LAYOUT_all( @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Main Numbers, Symbols & Function Layer @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | |RESET | + * | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [2] = LAYOUT_all( @@ -80,6 +80,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/checkerboards/nop60/keymaps/default/keymap.c b/keyboards/checkerboards/nop60/keymaps/default/keymap.c index ef3ff4b8bd..07d97de606 100644 --- a/keyboards/checkerboards/nop60/keymaps/default/keymap.c +++ b/keyboards/checkerboards/nop60/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | | | |RESET | + * | | | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [1] = LAYOUT_60_tsangan_hhkb_split_space( @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* ALTERNATE Function layer (MOMENTARY) @@ -70,7 +70,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------------------------------------------------------------------------| * |BINC |BDEC|BTOG| | | | | | | | | | | | * |------------------------------------------------------------------------------| - * | | | | | | | | |RESET | + * | | | | | | | | |QK_BOOT | * `------------------------------------------------------------------------------' */ [2] = LAYOUT_60_tsangan_hhkb_split_space( @@ -78,6 +78,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/checkerboards/nop60/keymaps/via/keymap.c b/keyboards/checkerboards/nop60/keymaps/via/keymap.c index 1fbed16ca1..6686fa06a5 100644 --- a/keyboards/checkerboards/nop60/keymaps/via/keymap.c +++ b/keyboards/checkerboards/nop60/keymaps/via/keymap.c @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* ALTERNATE Function layer (MOMENTARY) @@ -87,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), [_VIA] = LAYOUT_60_tsangan_hhkb_split_space( @@ -95,6 +95,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_TOG, RGB_MOD, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/checkerboards/phoenix45_ortho/keymaps/default/keymap.c b/keyboards/checkerboards/phoenix45_ortho/keymaps/default/keymap.c index cfe0615dee..feea2372c4 100644 --- a/keyboards/checkerboards/phoenix45_ortho/keymaps/default/keymap.c +++ b/keyboards/checkerboards/phoenix45_ortho/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/phoenix45_ortho/keymaps/via/keymap.c b/keyboards/checkerboards/phoenix45_ortho/keymaps/via/keymap.c index 9bd72c06cf..0b8792be55 100644 --- a/keyboards/checkerboards/phoenix45_ortho/keymaps/via/keymap.c +++ b/keyboards/checkerboards/phoenix45_ortho/keymaps/via/keymap.c @@ -40,13 +40,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT_ortho_2x225u( _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/plexus75/keymaps/default/keymap.c b/keyboards/checkerboards/plexus75/keymaps/default/keymap.c index def8d0d38c..05adefc151 100644 --- a/keyboards/checkerboards/plexus75/keymaps/default/keymap.c +++ b/keyboards/checkerboards/plexus75/keymaps/default/keymap.c @@ -55,19 +55,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_2x2u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* 2nd Function Layer @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN1] = LAYOUT_2x2u( @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/plexus75/keymaps/default_3u/keymap.c b/keyboards/checkerboards/plexus75/keymaps/default_3u/keymap.c index d467c63a18..874916f605 100644 --- a/keyboards/checkerboards/plexus75/keymaps/default_3u/keymap.c +++ b/keyboards/checkerboards/plexus75/keymaps/default_3u/keymap.c @@ -51,19 +51,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | RESET | | | | | | | | | + * | QK_BOOT | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_2x3u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______ ), /* 2nd Function Layer @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | RESET | RESET | | | | | | | | + * | QK_BOOT | QK_BOOT | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN1] = LAYOUT_2x3u( @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/plexus75/keymaps/default_7u/keymap.c b/keyboards/checkerboards/plexus75/keymaps/default_7u/keymap.c index 0c2fa678d7..7188a88bc2 100644 --- a/keyboards/checkerboards/plexus75/keymaps/default_7u/keymap.c +++ b/keyboards/checkerboards/plexus75/keymaps/default_7u/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_7u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/checkerboards/plexus75/keymaps/via/keymap.c b/keyboards/checkerboards/plexus75/keymaps/via/keymap.c index 91bdb75d2a..83651fc11d 100644 --- a/keyboards/checkerboards/plexus75/keymaps/via/keymap.c +++ b/keyboards/checkerboards/plexus75/keymaps/via/keymap.c @@ -55,19 +55,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_2x2u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* 2nd Function Layer @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [_FN1] = LAYOUT_2x2u( @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT_2x2u( diff --git a/keyboards/checkerboards/plexus75_he/keymaps/default/keymap.c b/keyboards/checkerboards/plexus75_he/keymaps/default/keymap.c index b344c6d9ab..c1855707dd 100644 --- a/keyboards/checkerboards/plexus75_he/keymaps/default/keymap.c +++ b/keyboards/checkerboards/plexus75_he/keymaps/default/keymap.c @@ -50,19 +50,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [1] = LAYOUT_2x3u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* 2nd Function Layer @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [2] = LAYOUT_2x3u( @@ -83,6 +83,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/plexus75_he/keymaps/via/keymap.c b/keyboards/checkerboards/plexus75_he/keymaps/via/keymap.c index bb1d5657e5..eb205a3787 100644 --- a/keyboards/checkerboards/plexus75_he/keymaps/via/keymap.c +++ b/keyboards/checkerboards/plexus75_he/keymaps/via/keymap.c @@ -49,19 +49,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-------+--------| * | | | MENU | | | | | | | | | | PRT SC | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+----------------| - * | | | | | | | | | | | | | | RESET | | + * | | | | | | | | | | | | | | QK_BOOT | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [1] = LAYOUT_2x3u( KC_GRV, 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_F13, KC_DEL, _______, _______, KC_APP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* 2nd Layer @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ [2] = LAYOUT_2x3u( @@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* 3rd Function Layer @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+----------------| * | | | | | | | | | | MUTE | VOL DN | VOL UP | \ | | | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+----------------| - * | | RESET | RESET | | | | | | | | | | | + * | | QK_BOOT | QK_BOOT | | | | | | | | | | | * '-------------------------------------------------------------------------------------------------------------------------------------' */ @@ -104,6 +104,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, _______, _______, _______, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_BSLS, _______, _______, - RESET, RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/pursuit40/keymaps/default/keymap.c b/keyboards/checkerboards/pursuit40/keymaps/default/keymap.c index 1ec29ebf34..38f4493a58 100644 --- a/keyboards/checkerboards/pursuit40/keymaps/default/keymap.c +++ b/keyboards/checkerboards/pursuit40/keymaps/default/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_all( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, RESET, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/pursuit40/keymaps/via/keymap.c b/keyboards/checkerboards/pursuit40/keymaps/via/keymap.c index 74120b5151..29510c468d 100644 --- a/keyboards/checkerboards/pursuit40/keymaps/via/keymap.c +++ b/keyboards/checkerboards/pursuit40/keymaps/via/keymap.c @@ -68,14 +68,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_all( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* [3] diff --git a/keyboards/checkerboards/quark/keymaps/default/keymap.c b/keyboards/checkerboards/quark/keymaps/default/keymap.c index 3953b6a68d..01e916bfe4 100644 --- a/keyboards/checkerboards/quark/keymaps/default/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default/keymap.c @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_5x12_2x225u( @@ -81,6 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/default_4x12/keymap.c b/keyboards/checkerboards/quark/keymaps/default_4x12/keymap.c index aefb2f2a37..e9fe5184e0 100644 --- a/keyboards/checkerboards/quark/keymaps/default_4x12/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default_4x12/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * |RESET | | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_4x12( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/default_4x12_2x225u/keymap.c b/keyboards/checkerboards/quark/keymaps/default_4x12_2x225u/keymap.c index f2f187bf40..6bde720f49 100644 --- a/keyboards/checkerboards/quark/keymaps/default_4x12_2x225u/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default_4x12_2x225u/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_4x12_2x225u( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/default_4x12_2x3u/keymap.c b/keyboards/checkerboards/quark/keymaps/default_4x12_2x3u/keymap.c index 128c3e1a04..52b0fe8eb1 100644 --- a/keyboards/checkerboards/quark/keymaps/default_4x12_2x3u/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default_4x12_2x3u/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_4x12_2x3u( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/default_5x12_2x3u/keymap.c b/keyboards/checkerboards/quark/keymaps/default_5x12_2x3u/keymap.c index 43e4d7e132..e395a7122a 100644 --- a/keyboards/checkerboards/quark/keymaps/default_5x12_2x3u/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default_5x12_2x3u/keymap.c @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | + * | QK_BOOT | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_5x12_2x3u( @@ -81,6 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/default_mit/keymap.c b/keyboards/checkerboards/quark/keymaps/default_mit/keymap.c index c18b3b557e..f9284ef8a5 100644 --- a/keyboards/checkerboards/quark/keymaps/default_mit/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/default_mit/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * |RESET | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_planck_mit( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark/keymaps/via/keymap.c b/keyboards/checkerboards/quark/keymaps/via/keymap.c index 3953b6a68d..01e916bfe4 100644 --- a/keyboards/checkerboards/quark/keymaps/via/keymap.c +++ b/keyboards/checkerboards/quark/keymaps/via/keymap.c @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_5x12_2x225u( @@ -81,6 +81,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark_lp/keymaps/default/keymap.c b/keyboards/checkerboards/quark_lp/keymaps/default/keymap.c index 22e589d8a6..d81df83dd0 100644 --- a/keyboards/checkerboards/quark_lp/keymaps/default/keymap.c +++ b/keyboards/checkerboards/quark_lp/keymaps/default/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_4x12( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark_lp/keymaps/via/keymap.c b/keyboards/checkerboards/quark_lp/keymaps/via/keymap.c index d7e281730a..2353af6597 100644 --- a/keyboards/checkerboards/quark_lp/keymaps/via/keymap.c +++ b/keyboards/checkerboards/quark_lp/keymaps/via/keymap.c @@ -68,14 +68,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_ortho_4x12( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* [3] @@ -87,13 +87,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [3] = LAYOUT_ortho_4x12( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c index 871a386441..6cbebc4243 100644 --- a/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c +++ b/keyboards/checkerboards/quark_plus/keymaps/default/keymap.c @@ -70,13 +70,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * |RESET | | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_grid( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c b/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c index 165ecbbd53..30bb50a825 100644 --- a/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c +++ b/keyboards/checkerboards/quark_plus/keymaps/via/keymap.c @@ -70,20 +70,20 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * |RESET | | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_grid( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT_grid( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c index 8601c76604..7def35eb7d 100644 --- a/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c +++ b/keyboards/checkerboards/quark_squared/keymaps/default/keymap.c @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_4_2x225u( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c b/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c index 37baf408d2..b0b6300b7b 100644 --- a/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c +++ b/keyboards/checkerboards/quark_squared/keymaps/via/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ @@ -77,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* [3] @@ -89,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ @@ -97,6 +97,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/ud40_ortho_alt/keymaps/default/keymap.c b/keyboards/checkerboards/ud40_ortho_alt/keymaps/default/keymap.c index 88c1834d15..8141d8fca7 100644 --- a/keyboards/checkerboards/ud40_ortho_alt/keymaps/default/keymap.c +++ b/keyboards/checkerboards/ud40_ortho_alt/keymaps/default/keymap.c @@ -30,14 +30,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+------|------+------+------+------+------+------| * | Shift | Z | X | C | V | B | N | M | , | . | / |Enter | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+------| - * | RESET | OS | Alt | Layer | Space & Layer | [ | ] | CAPS | + * | QK_BOOT | OS | Alt | Layer | Space & Layer | [ | ] | CAPS | * `-----------------------------------------------------------------------------------------' */ [0] = LAYOUT_default( KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_DEL, CTL_T(KC_ESC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, - RESET, KC_LGUI, KC_LALT, TT(1), LT(2, KC_SPC), KC_LBRC, KC_RBRC, KC_CAPS + QK_BOOT, KC_LGUI, KC_LALT, TT(1), LT(2, KC_SPC), KC_LBRC, KC_RBRC, KC_CAPS ), /* [1] @@ -68,13 +68,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_default( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, RESET, _______, _______, _______, _______, _______, _______ + QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/checkerboards/ud40_ortho_alt/keymaps/via/keymap.c b/keyboards/checkerboards/ud40_ortho_alt/keymaps/via/keymap.c index cbe2d9778a..4859afb464 100644 --- a/keyboards/checkerboards/ud40_ortho_alt/keymaps/via/keymap.c +++ b/keyboards/checkerboards/ud40_ortho_alt/keymaps/via/keymap.c @@ -68,14 +68,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------------+------+------+------+------+-----+-----+------+------+------+------+-----| * | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |-------+-------+-------+-------+-------+-------+------+------+------+------+------+---| - * | RESET | | | | | | | | + * | QK_BOOT | | | | | | | | * `---------------------------------------------------------------------------------------' */ [2] = LAYOUT_default( _______, _______, _______, KC_UP, _______, _______, _______, KC_UNDS, _______, KC_LBRC, KC_RBRC, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_MINS, _______, KC_LCBR, KC_RCBR, _______, 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, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), /* [3] diff --git a/keyboards/cherrybstudio/cb1800/keymaps/default/keymap.c b/keyboards/cherrybstudio/cb1800/keymaps/default/keymap.c index 75a1c20703..8facd977e3 100644 --- a/keyboards/cherrybstudio/cb1800/keymaps/default/keymap.c +++ b/keyboards/cherrybstudio/cb1800/keymaps/default/keymap.c @@ -15,7 +15,7 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - 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, RESET, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, + 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, QK_BOOT, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, KC_DEL, KC_END, KC_PGDN, KC_SLCK, KC_GRV, 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_BSPC, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, 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, KC_P7, KC_P8, KC_P9, KC_PMNS, diff --git a/keyboards/cherrybstudio/cb1800/keymaps/via/keymap.c b/keyboards/cherrybstudio/cb1800/keymaps/via/keymap.c index 7bdb7b023e..ba4bcf8607 100644 --- a/keyboards/cherrybstudio/cb1800/keymaps/via/keymap.c +++ b/keyboards/cherrybstudio/cb1800/keymaps/via/keymap.c @@ -16,7 +16,7 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - 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, RESET, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, + 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, QK_BOOT, KC_INS, KC_HOME, KC_PGUP, KC_PSCR, KC_DEL, KC_END, KC_PGDN, KC_SLCK, KC_GRV, 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_BSPC, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, 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, KC_P7, KC_P8, KC_P9, KC_PMNS, diff --git a/keyboards/cherrybstudio/cb87rgb/keymaps/default/keymap.c b/keyboards/cherrybstudio/cb87rgb/keymaps/default/keymap.c index 343c3ebc1f..84660c5704 100644 --- a/keyboards/cherrybstudio/cb87rgb/keymaps/default/keymap.c +++ b/keyboards/cherrybstudio/cb87rgb/keymaps/default/keymap.c @@ -15,7 +15,7 @@ along with this program. If not, see . const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_all( - 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, RESET, KC_PSCR, KC_SLCK, KC_PAUS, + 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, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_GRV, 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_BSPC, KC_INS, KC_HOME, KC_PGUP, 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, KC_DEL, KC_END, KC_PGDN, 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_NUHS, KC_ENT, diff --git a/keyboards/cheshire/curiosity/keymaps/default/keymap.c b/keyboards/cheshire/curiosity/keymaps/default/keymap.c index 5b0f176ea4..3af35a81f3 100644 --- a/keyboards/cheshire/curiosity/keymaps/default/keymap.c +++ b/keyboards/cheshire/curiosity/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FNMS] = LAYOUT_default( RGB_TOG, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_U, _______, _______, _______, _______, RESET, + RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_U, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, AG_TOGG, _______, _______, _______, _______, _______, _______ @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NAVMED] = LAYOUT_default( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, RESET, + KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, QK_BOOT, KC_END, _______, _______, _______, _______, _______, KC_MPLY, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, EEP_RST, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/chickenman/ciel/keymaps/default/keymap.c b/keyboards/chickenman/ciel/keymaps/default/keymap.c index e1f5cfc2e2..c00e7fb050 100644 --- a/keyboards/chickenman/ciel/keymaps/default/keymap.c +++ b/keyboards/chickenman/ciel/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_60_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/chickenman/ciel/keymaps/via/keymap.c b/keyboards/chickenman/ciel/keymaps/via/keymap.c index 4034ba70d3..516ad4dc81 100644 --- a/keyboards/chickenman/ciel/keymaps/via/keymap.c +++ b/keyboards/chickenman/ciel/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_L1] = LAYOUT_60_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/chlx/merro60/keymaps/ansi/keymap.c b/keyboards/chlx/merro60/keymaps/ansi/keymap.c index eebc623cc8..f9445559d1 100644 --- a/keyboards/chlx/merro60/keymaps/ansi/keymap.c +++ b/keyboards/chlx/merro60/keymaps/ansi/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( KC_GRV, 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_UP, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, QK_BOOT, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/chlx/merro60/keymaps/default/keymap.c b/keyboards/chlx/merro60/keymaps/default/keymap.c index ee16d63800..4bda91040b 100644 --- a/keyboards/chlx/merro60/keymaps/default/keymap.c +++ b/keyboards/chlx/merro60/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/chlx/merro60/keymaps/iso/keymap.c b/keyboards/chlx/merro60/keymaps/iso/keymap.c index fdfbeafce0..4657224b18 100644 --- a/keyboards/chlx/merro60/keymaps/iso/keymap.c +++ b/keyboards/chlx/merro60/keymaps/iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso_split_bs_rshift( KC_GRV, 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, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/chlx/merro60/keymaps/tsangan/keymap.c b/keyboards/chlx/merro60/keymaps/tsangan/keymap.c index 560abd9947..e0a634c3c7 100644 --- a/keyboards/chlx/merro60/keymaps/tsangan/keymap.c +++ b/keyboards/chlx/merro60/keymaps/tsangan/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/chlx/merro60/keymaps/via/keymap.c b/keyboards/chlx/merro60/keymaps/via/keymap.c index 1e44a9cfd6..3591766b62 100644 --- a/keyboards/chlx/merro60/keymaps/via/keymap.c +++ b/keyboards/chlx/merro60/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/ckeys/handwire_101/keymaps/default/keymap.c b/keyboards/ckeys/handwire_101/keymaps/default/keymap.c index fdca99fd07..3bb1a2c009 100755 --- a/keyboards/ckeys/handwire_101/keymaps/default/keymap.c +++ b/keyboards/ckeys/handwire_101/keymaps/default/keymap.c @@ -141,7 +141,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* ADMIN * ,-----------------------------------------. - * | RESET | | | X | + * | QK_BOOT | | | X | * |------------+-----+-----------+----------| * |ABOUT CKEYS | | | | * |------------+-----+-----------+----------| @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' */ [_ADMIN] = LAYOUT_ortho_4x4( - RESET, _______, _______, _______, + QK_BOOT, _______, _______, _______, CKEYS_ABOUT, _______, _______, _______, _______, _______, _______, CK_OFF, _______, _______, _______, CK_ON diff --git a/keyboards/ckeys/obelus/keymaps/default/keymap.c b/keyboards/ckeys/obelus/keymaps/default/keymap.c index 5d5bfc6d28..6ddd0593f3 100644 --- a/keyboards/ckeys/obelus/keymaps/default/keymap.c +++ b/keyboards/ckeys/obelus/keymaps/default/keymap.c @@ -4,7 +4,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* LAYERS * ,-----------------------. - * | | | |RESET| + * | | | |QK_BOOT| * |-----+-----+-----+-----| * |MUSIC| | | | * |-----+-----+-----+-----| @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------- ' */ [0] = LAYOUT_ortho_4x4( /* LAYER SELECT */ - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, TO(4), _______, _______, _______, TO(1), TO(2), TO(3), _______, _______, _______, _______, _______ diff --git a/keyboards/ckeys/thedora/keymaps/default/keymap.c b/keyboards/ckeys/thedora/keymaps/default/keymap.c index e2ce9b0d73..0c36008bd8 100755 --- a/keyboards/ckeys/thedora/keymaps/default/keymap.c +++ b/keyboards/ckeys/thedora/keymaps/default/keymap.c @@ -132,7 +132,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ADMIN LAYER // ┌─────────┬─────────┬─────────┬─────────┬─────────┐ // │ │ │ │ │ │ - // │ RESET │ │ │ │ │ + // │ QK_BOOT │ │ │ │ │ // ROTARY │ │ │ │ │ │ // RIGHT: ├─────────┼─────────┼─────────┼─────────┼─────────┤ // PAGE DOWN│ │ │ │ │ │ @@ -149,7 +149,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // └─────────┴─────────┴─────────┴─────────┴─────────┴─────────┘ [_ADMIN] = LAYOUT( - RESET, _______, _______, _______, TG(_ADMIN), + QK_BOOT, _______, _______, _______, TG(_ADMIN), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ckeys/washington/keymaps/default/keymap.c b/keyboards/ckeys/washington/keymaps/default/keymap.c index 771905814a..95e0f3ab59 100644 --- a/keyboards/ckeys/washington/keymaps/default/keymap.c +++ b/keyboards/ckeys/washington/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( KC_HOME, KC_CALC, KC_END, BL_STEP, KC_ESC, KC_SLEP, - KC_TRNS, KC_MPLY, RESET + KC_TRNS, KC_MPLY, QK_BOOT ) }; diff --git a/keyboards/clawsome/coupe/keymaps/default/keymap.c b/keyboards/clawsome/coupe/keymaps/default/keymap.c index 4c71f0b181..d5af879bd7 100644 --- a/keyboards/clawsome/coupe/keymaps/default/keymap.c +++ b/keyboards/clawsome/coupe/keymaps/default/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, KC_HOME, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/clawsome/sedan/keymaps/default/keymap.c b/keyboards/clawsome/sedan/keymaps/default/keymap.c index 9007fb9ab6..97fac36e52 100644 --- a/keyboards/clawsome/sedan/keymaps/default/keymap.c +++ b/keyboards/clawsome/sedan/keymaps/default/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/clueboard/60/keymaps/default/keymap.c b/keyboards/clueboard/60/keymaps/default/keymap.c index b33a22f937..066b9df998 100644 --- a/keyboards/clueboard/60/keymaps/default/keymap.c +++ b/keyboards/clueboard/60/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,_______,_______, _______, _______, _______, MO(_FL), _______), [_CL] = LAYOUT_all( BL_STEP,S_BSKTC,S_ODEJY,S_RCKBY,S_DOEDR,S_SCALE,S_ONEUP,S_COIN, S_SONIC,S_ZELDA,_______,_______,_______,_______,_______, - _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______, _______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, MO(_FL), _______) diff --git a/keyboards/clueboard/60/keymaps/default_aek/keymap.c b/keyboards/clueboard/60/keymaps/default_aek/keymap.c index 413ca822f6..338d80cf5d 100644 --- a/keyboards/clueboard/60/keymaps/default_aek/keymap.c +++ b/keyboards/clueboard/60/keymaps/default_aek/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, MO(_FL), _______), [_CL] = LAYOUT_aek( BL_STEP,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, + _______, _______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, MO(_FL), _______) diff --git a/keyboards/clueboard/66/keymaps/default/keymap.c b/keyboards/clueboard/66/keymaps/default/keymap.c index 95283db886..adb60c9035 100644 --- a/keyboards/clueboard/66/keymaps/default/keymap.c +++ b/keyboards/clueboard/66/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_CL] = LAYOUT( BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______,_______,RGB_TOG, RGB_VAI, - _______,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, + _______,_______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, MO(_FL),_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_SAI, _______,_______,_______,_______, RGB_MOD, RGB_MOD, _______,_______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), diff --git a/keyboards/clueboard/66/keymaps/via/keymap.c b/keyboards/clueboard/66/keymaps/via/keymap.c index f5c0c4644f..16735a5b6e 100644 --- a/keyboards/clueboard/66/keymaps/via/keymap.c +++ b/keyboards/clueboard/66/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_CL] = LAYOUT_66_ansi( BL_STEP,RGB_M_P,RGB_M_B,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, RGB_TOG, RGB_VAI, - _______,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, + _______,_______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAD, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, _______,_______,_______, RGB_MOD, _______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), diff --git a/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c b/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c index 26322ad223..253cfc2782 100644 --- a/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c +++ b/keyboards/clueboard/66_hotswap/gen1/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_CL] = LAYOUT( BL_STEP,S_ONEUP,S_SCALE,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, BL_TOGG, BL_INC, - _______,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC, + _______,_______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, RGB_SAI, _______,_______,_______, BL_BRTG,BL_BRTG, _______,_______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), diff --git a/keyboards/clueboard/66_hotswap/prototype/keymaps/default/keymap.c b/keyboards/clueboard/66_hotswap/prototype/keymaps/default/keymap.c index c0aaf2dd0d..57ff747369 100644 --- a/keyboards/clueboard/66_hotswap/prototype/keymaps/default/keymap.c +++ b/keyboards/clueboard/66_hotswap/prototype/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_CL] = LAYOUT( BL_STEP,S_ONEUP,S_SCALE,RGB_M_R,RGB_M_SW,RGB_M_SN,RGB_M_K,RGB_M_X,RGB_M_G,_______,_______,_______,_______, BL_TOGG, BL_INC, - _______,_______,_______,_______,RESET, _______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC, + _______,_______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,_______,_______,_______,_______, BL_DEC, _______,_______,MO(_CL),_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_SAI, _______,_______,_______, BL_BRTG,BL_BRTG, _______,_______,MO(_FL),_______,RGB_HUD,RGB_SAD,RGB_HUI), diff --git a/keyboards/coarse/cordillera/keymaps/default/keymap.c b/keyboards/coarse/cordillera/keymaps/default/keymap.c index ef1479c334..b96629ddee 100755 --- a/keyboards/coarse/cordillera/keymaps/default/keymap.c +++ b/keyboards/coarse/cordillera/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice( - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/coarse/cordillera/keymaps/via/keymap.c b/keyboards/coarse/cordillera/keymaps/via/keymap.c index 69dd613769..a644c42a77 100644 --- a/keyboards/coarse/cordillera/keymaps/via/keymap.c +++ b/keyboards/coarse/cordillera/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice( - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/coarse/ixora/keymaps/default/keymap.c b/keyboards/coarse/ixora/keymaps/default/keymap.c index 65daf5c218..86c9c195e3 100644 --- a/keyboards/coarse/ixora/keymaps/default/keymap.c +++ b/keyboards/coarse/ixora/keymaps/default/keymap.c @@ -19,12 +19,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _BL: (Base Layer) Default Layer * ,-----------------. - * |RESET| 2 | 3 | + * |QK_BOOT| 2 | 3 | * |-----------------| * |Caps |NmLk |ScLk | * `-----------------' */ [0] = LAYOUT_full( - RESET, KC_2, KC_3, + QK_BOOT, KC_2, KC_3, KC_CAPS, KC_NLCK, KC_SLCK) }; diff --git a/keyboards/coarse/vinta/keymaps/default/keymap.c b/keyboards/coarse/vinta/keymaps/default/keymap.c index 119782b9ae..858b6d478d 100644 --- a/keyboards/coarse/vinta/keymaps/default/keymap.c +++ b/keyboards/coarse/vinta/keymaps/default/keymap.c @@ -35,5 +35,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_PGUP, 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_PGDN, 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, KC_END, - KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT, RESET, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), + KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT, QK_BOOT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), }; diff --git a/keyboards/compound/keymaps/default/keymap.c b/keyboards/compound/keymaps/default/keymap.c index c5f4bd7389..2fcdc4c1d9 100644 --- a/keyboards/compound/keymaps/default/keymap.c +++ b/keyboards/compound/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL), [_FN] = LAYOUT( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, diff --git a/keyboards/compound/keymaps/via/keymap.c b/keyboards/compound/keymaps/via/keymap.c index 797be4dc68..04055df528 100644 --- a/keyboards/compound/keymaps/via/keymap.c +++ b/keyboards/compound/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL), [1] = LAYOUT( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPLY, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, diff --git a/keyboards/contender/keymaps/default/keymap.c b/keyboards/contender/keymaps/default/keymap.c index 7784c7d590..6ba7247176 100644 --- a/keyboards/contender/keymaps/default/keymap.c +++ b/keyboards/contender/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Function */ [_FUNCTION] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, RGB_RMOD, RGB_MOD, KC_NO, KC_NO, diff --git a/keyboards/contra/keymaps/default/keymap.c b/keyboards/contra/keymaps/default/keymap.c index 6a653d9cec..6c05ebebff 100644 --- a/keyboards/contra/keymaps/default/keymap.c +++ b/keyboards/contra/keymaps/default/keymap.c @@ -161,7 +161,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/contra/keymaps/via/keymap.c b/keyboards/contra/keymaps/via/keymap.c index 4bf7a9c171..88c9d470b2 100644 --- a/keyboards/contra/keymaps/via/keymap.c +++ b/keyboards/contra/keymaps/via/keymap.c @@ -90,7 +90,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/converter/a1200/keymaps/default/keymap.c b/keyboards/converter/a1200/keymaps/default/keymap.c index 8ebc5ee53a..98982db147 100644 --- a/keyboards/converter/a1200/keymaps/default/keymap.c +++ b/keyboards/converter/a1200/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, KC_SLCK, _______, KC_PSCR, - _______, _______, _______, _______, RESET,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NO, _______, _______, _______, _______, _______, _______, _______, KC_NO, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/converter/m0110_usb/keymaps/default/keymap.c b/keyboards/converter/m0110_usb/keymaps/default/keymap.c index 6c42ee5cf1..797c7939b3 100644 --- a/keyboards/converter/m0110_usb/keymaps/default/keymap.c +++ b/keyboards/converter/m0110_usb/keymaps/default/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( 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_NLCK, KC_EQL, KC_PSLS, KC_PAST, - KC_TAB, KC_HOME, KC_UP, KC_PGUP, RESET, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_INS, KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_TAB, KC_HOME, KC_UP, KC_PGUP, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_INS, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_LCAP, KC_LEFT, KC_DOWN, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_LCTL, KC_END, KC_NO, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_NO, KC_END, KC_PGDN, KC_DOWN, KC_PGUP, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LALT, KC_LGUI, KC_SPC, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_PGDN, KC_P0, KC_PDOT), diff --git a/keyboards/coseyfannitutti/discipline/keymaps/default/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/default/keymap.c index 1fdfce67ea..68828e7792 100644 --- a/keyboards/coseyfannitutti/discipline/keymaps/default/keymap.c +++ b/keyboards/coseyfannitutti/discipline/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ KC_GRV, 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_PSCR, /* tab Q W E R T Y U I O P [ ] \ delete*/ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, KC_TRNS, /* caps A S D F G H J K L ; ' enter pg up*/ 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_INS, KC_HOME, /* shift Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/coseyfannitutti/discipline/keymaps/iso/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/iso/keymap.c index 7f4c240378..af1ed19934 100644 --- a/keyboards/coseyfannitutti/discipline/keymaps/iso/keymap.c +++ b/keyboards/coseyfannitutti/discipline/keymaps/iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ KC_GRV, 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_PSCR, /* tab Q W E R T Y U I O P [ ] delete*/ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' # enter pg up*/ 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_INS, KC_TRNS, KC_HOME, /* shift \ Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/coseyfannitutti/discipline/keymaps/via/keymap.c b/keyboards/coseyfannitutti/discipline/keymaps/via/keymap.c index 365b06dbf0..143b8d9bb3 100644 --- a/keyboards/coseyfannitutti/discipline/keymaps/via/keymap.c +++ b/keyboards/coseyfannitutti/discipline/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ KC_GRV, 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_PSCR, /* tab Q W E R T Y U I O P [ ] \ delete*/ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' enter pg up*/ 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_INS, KC_TRNS, KC_HOME, /* shift Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/coseyfannitutti/mullet/keymaps/default/keymap.c b/keyboards/coseyfannitutti/mullet/keymaps/default/keymap.c index 07d939dfdc..2674a0efe6 100644 --- a/keyboards/coseyfannitutti/mullet/keymaps/default/keymap.c +++ b/keyboards/coseyfannitutti/mullet/keymaps/default/keymap.c @@ -36,7 +36,7 @@ * .---------------------------------------------------------------------------------------------. * | ` ~ | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | DELETE |PNTSC| * |---------------------------------------------------------------------------------------------+ - * | Tab |STATC|BRTHE|RNBOW|RESET| | | | | | |PAUSE| | \ | | + * | Tab |STATC|BRTHE|RNBOW|QK_BOOT| | | | | | |PAUSE| | \ | | * |---------------------------------------------------------------------------------------------+ * | Caps |RGBH+|RGBS+|RGBB+| | | | | | | | INS | Enter | HOME| * |---------------------------------------------------------------------------------------------+ @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc insert*/ KC_GRV, 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_PSCR, /* tab Q W E R T Y U I O P [ ] \ delete*/ - KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_BSLS, KC_TRNS, + KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_BSLS, KC_TRNS, /* caps A S D F G H J K L ; ' enter pg up*/ KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, /* shift Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/coseyfannitutti/mysterium/keymaps/default/keymap.c b/keyboards/coseyfannitutti/mysterium/keymaps/default/keymap.c index e8091abbbc..2c34d15040 100644 --- a/keyboards/coseyfannitutti/mysterium/keymaps/default/keymap.c +++ b/keyboards/coseyfannitutti/mysterium/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS) diff --git a/keyboards/coseyfannitutti/mysterium/keymaps/iso/keymap.c b/keyboards/coseyfannitutti/mysterium/keymaps/iso/keymap.c index 9467b63c3f..90269323e9 100644 --- a/keyboards/coseyfannitutti/mysterium/keymaps/iso/keymap.c +++ b/keyboards/coseyfannitutti/mysterium/keymaps/iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_iso( 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS) diff --git a/keyboards/coseyfannitutti/mysterium/keymaps/via/keymap.c b/keyboards/coseyfannitutti/mysterium/keymaps/via/keymap.c index a44b0158df..151a209284 100644 --- a/keyboards/coseyfannitutti/mysterium/keymaps/via/keymap.c +++ b/keyboards/coseyfannitutti/mysterium/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_iso( 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, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS), diff --git a/keyboards/coseyfannitutti/romeo/keymaps/default/keymap.c b/keyboards/coseyfannitutti/romeo/keymaps/default/keymap.c index 074d67c1ef..6b2a7873bc 100644 --- a/keyboards/coseyfannitutti/romeo/keymaps/default/keymap.c +++ b/keyboards/coseyfannitutti/romeo/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL ), [1] = LAYOUT_all( - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RESET, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, QK_BOOT, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_ENT, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_SLSH, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) diff --git a/keyboards/coseyfannitutti/romeo/keymaps/via/keymap.c b/keyboards/coseyfannitutti/romeo/keymaps/via/keymap.c index 951acdca5b..7f3c5bce40 100644 --- a/keyboards/coseyfannitutti/romeo/keymaps/via/keymap.c +++ b/keyboards/coseyfannitutti/romeo/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL ), [1] = LAYOUT_all( - KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, RESET, + KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, QK_BOOT, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_ENT, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_SLSH, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/cozykeys/bloomer/v2/keymaps/default/keymap.c b/keyboards/cozykeys/bloomer/v2/keymaps/default/keymap.c index e5eeaa8530..b9e0a1c239 100644 --- a/keyboards/cozykeys/bloomer/v2/keymaps/default/keymap.c +++ b/keyboards/cozykeys/bloomer/v2/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [FN] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_GRV, KC_LBRC, KC_RBRC, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, diff --git a/keyboards/cozykeys/bloomer/v3/keymaps/default/keymap.c b/keyboards/cozykeys/bloomer/v3/keymaps/default/keymap.c index 7aad9cec61..ded61b2071 100644 --- a/keyboards/cozykeys/bloomer/v3/keymaps/default/keymap.c +++ b/keyboards/cozykeys/bloomer/v3/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [FN] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, RGB_M_P, _______, _______, KC_GRV, KC_LBRC, KC_RBRC, _______, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, _______, _______, RGB_P, RGB_N, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, diff --git a/keyboards/cozykeys/speedo/v3/keymaps/default/keymap.c b/keyboards/cozykeys/speedo/v3/keymaps/default/keymap.c index 4319bd18be..7b53090d20 100644 --- a/keyboards/cozykeys/speedo/v3/keymaps/default/keymap.c +++ b/keyboards/cozykeys/speedo/v3/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[__LAYER_COUNT][MATRIX_ROWS][MATRIX_COLS] = { ), [LAYER_FN] = LAYOUT( - RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, RESET, + RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, QK_BOOT, _______, KC_F9, KC_F10, KC_F11, KC_F12, KC_PSCR, RGB_TOG, _______, KC_GRV, KC_LBRC, KC_RBRC, _______, _______, KC_CAPS, KC_F5, KC_F6, KC_F7, KC_F8, KC_INS, RGB_N, RGB_P, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_PAUS, RGB_M_P, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, diff --git a/keyboards/cradio/keymaps/default/keymap.c b/keyboards/cradio/keymaps/default/keymap.c index f060be4e39..97f69e6e11 100644 --- a/keyboards/cradio/keymaps/default/keymap.c +++ b/keyboards/cradio/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_DEL, MO(3) ), [3] = LAYOUT_split_3x5_2( - _______, KC_F1, KC_F2, KC_F3, KC_F10, _______, KC_WH_U, KC_WH_D, _______, RESET, + _______, KC_F1, KC_F2, KC_F3, KC_F10, _______, KC_WH_U, KC_WH_D, _______, QK_BOOT, _______, KC_F4, KC_F5, KC_F6, KC_F11, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_INS, _______, KC_F7, KC_F8, KC_F9, KC_F12, _______, KC_BTN1, KC_BTN2, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/craftwalk/keymaps/default/keymap.c b/keyboards/craftwalk/keymaps/default/keymap.c index f02f9c975f..8c86e11204 100644 --- a/keyboards/craftwalk/keymaps/default/keymap.c +++ b/keyboards/craftwalk/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust */ [_ADJUST] = LAYOUT( RGB_HUI, RGB_SAI, RGB_VAI, - RESET, RGB_HUD, RGB_SAD, RGB_VAD, + QK_BOOT, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_T, KC_TRNS, RGB_MOD, RGB_RMOD,RGB_TOG, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/crawlpad/keymaps/default/keymap.c b/keyboards/crawlpad/keymaps/default/keymap.c index c81bb56bd5..e633e741df 100755 --- a/keyboards/crawlpad/keymaps/default/keymap.c +++ b/keyboards/crawlpad/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_4x4( KC_NLCK, BL1, KC_TRNS, KC_PSLS, - RESET, BL2, KC_TRNS, KC_TRNS, + QK_BOOT, BL2, KC_TRNS, KC_TRNS, KC_TRNS, BL3, KC_TRNS, KC_TRNS, KC_TRNS, BL4, KC_TRNS, KC_TRNS ), diff --git a/keyboards/crazy_keyboard_68/keymaps/default/keymap.c b/keyboards/crazy_keyboard_68/keymaps/default/keymap.c index c41916fcd6..60ea5c38f9 100644 --- a/keyboards/crazy_keyboard_68/keymaps/default/keymap.c +++ b/keyboards/crazy_keyboard_68/keymaps/default/keymap.c @@ -61,6 +61,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, _______, RGB_TOG, RGB_M_P, RGB_M_B, RGB_M_R,RGB_M_SW,RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, _______, _______, KC_INS, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/crbn/keymaps/default/keymap.c b/keyboards/crbn/keymaps/default/keymap.c index a86c5e3d6e..f05cadcdd7 100644 --- a/keyboards/crbn/keymaps/default/keymap.c +++ b/keyboards/crbn/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), LAYOUT_crbn_1x2u( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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), diff --git a/keyboards/crbn/keymaps/via/keymap.c b/keyboards/crbn/keymaps/via/keymap.c index 91880d93e8..1f7533c33c 100644 --- a/keyboards/crbn/keymaps/via/keymap.c +++ b/keyboards/crbn/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY), LAYOUT_crbn_1x2u( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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), diff --git a/keyboards/creatkeebs/glacier/keymaps/via/keymap.c b/keyboards/creatkeebs/glacier/keymaps/via/keymap.c index cf0fa0f835..67c39fe327 100644 --- a/keyboards/creatkeebs/glacier/keymaps/via/keymap.c +++ b/keyboards/creatkeebs/glacier/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_f13_ansi_tsangan( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_tkl_f13_ansi_tsangan( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_tkl_f13_ansi_tsangan( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/crin/keymaps/default/keymap.c b/keyboards/crin/keymaps/default/keymap.c index 87bae7da65..bf754b0554 100644 --- a/keyboards/crin/keymaps/default/keymap.c +++ b/keyboards/crin/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_ansi_tsangan( KC_GRV, 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_PSCR, KC_SLCK, KC_PAUS, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/crin/keymaps/via/keymap.c b/keyboards/crin/keymaps/via/keymap.c index 87bae7da65..bf754b0554 100644 --- a/keyboards/crin/keymaps/via/keymap.c +++ b/keyboards/crin/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_ansi_tsangan( KC_GRV, 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_PSCR, KC_SLCK, KC_PAUS, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/crkbd/keymaps/default/keymap.c b/keyboards/crkbd/keymaps/default/keymap.c index e06cfa3465..23e706e64b 100644 --- a/keyboards/crkbd/keymaps/default/keymap.c +++ b/keyboards/crkbd/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_split_3x6_3( //,-----------------------------------------------------. ,-----------------------------------------------------. - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| diff --git a/keyboards/crkbd/keymaps/via/keymap.c b/keyboards/crkbd/keymaps/via/keymap.c index 12c86f6bbc..33ca8026f8 100644 --- a/keyboards/crkbd/keymaps/via/keymap.c +++ b/keyboards/crkbd/keymaps/via/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_split_3x6_3( //,-----------------------------------------------------. ,-----------------------------------------------------. - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| diff --git a/keyboards/cutie_club/borsdorf/keymaps/default/keymap.c b/keyboards/cutie_club/borsdorf/keymaps/default/keymap.c index 1f9e686de8..2b4b1c2c47 100644 --- a/keyboards/cutie_club/borsdorf/keymaps/default/keymap.c +++ b/keyboards/cutie_club/borsdorf/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/cutie_club/borsdorf/keymaps/via/keymap.c b/keyboards/cutie_club/borsdorf/keymaps/via/keymap.c index 4dc1c06fdb..b2d1e00ceb 100644 --- a/keyboards/cutie_club/borsdorf/keymaps/via/keymap.c +++ b/keyboards/cutie_club/borsdorf/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/cutie_club/wraith/keymaps/default/keymap.c b/keyboards/cutie_club/wraith/keymaps/default/keymap.c index 74a6bff26d..c3f7c41354 100644 --- a/keyboards/cutie_club/wraith/keymaps/default/keymap.c +++ b/keyboards/cutie_club/wraith/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, _______, KC_TRNS, + QK_BOOT, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, _______, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/cx60/keymaps/default/keymap.c b/keyboards/cx60/keymaps/default/keymap.c index 1d32050cbd..2ed0f60057 100644 --- a/keyboards/cx60/keymaps/default/keymap.c +++ b/keyboards/cx60/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* 1: Function Layer */ LAYOUT_all( - 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, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI,RGB_VAI, RGB_HUD, diff --git a/keyboards/cx60/keymaps/via/keymap.c b/keyboards/cx60/keymaps/via/keymap.c index 2a1b087090..8a0a14a66e 100644 --- a/keyboards/cx60/keymaps/via/keymap.c +++ b/keyboards/cx60/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* 1: Function Layer */ LAYOUT_all( - 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, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI,RGB_VAI, RGB_HUD, diff --git a/keyboards/dailycraft/claw44/keymaps/default/keymap.c b/keyboards/dailycraft/claw44/keymaps/default/keymap.c index 204c0c94e6..5150db1ab1 100644 --- a/keyboards/dailycraft/claw44/keymaps/default/keymap.c +++ b/keyboards/dailycraft/claw44/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, QK_BOOT // `--------+--------+--------+--------' `--------+--------+--------+--------' ), @@ -66,7 +66,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______, _______, _______ // `--------+--------+--------+--------' `--------+--------+--------+--------' ), }; diff --git a/keyboards/dailycraft/claw44/keymaps/via/keymap.c b/keyboards/dailycraft/claw44/keymaps/via/keymap.c index 5373b76876..77544dca62 100644 --- a/keyboards/dailycraft/claw44/keymaps/via/keymap.c +++ b/keyboards/dailycraft/claw44/keymaps/via/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, QK_BOOT // `--------+--------+--------+--------' `--------+--------+--------+--------' ), @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______, _______, _______ // `--------+--------+--------+--------' `--------+--------+--------+--------' ), [_ADJUST] = LAYOUT( diff --git a/keyboards/dailycraft/wings42/rev1/keymaps/default/keymap.c b/keyboards/dailycraft/wings42/rev1/keymaps/default/keymap.c index 442ba5ed9f..b21e400482 100644 --- a/keyboards/dailycraft/wings42/rev1/keymaps/default/keymap.c +++ b/keyboards/dailycraft/wings42/rev1/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+---------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/dailycraft/wings42/rev1/keymaps/via/keymap.c b/keyboards/dailycraft/wings42/rev1/keymaps/via/keymap.c index 442ba5ed9f..b21e400482 100644 --- a/keyboards/dailycraft/wings42/rev1/keymaps/via/keymap.c +++ b/keyboards/dailycraft/wings42/rev1/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+---------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/default/keymap.c b/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/default/keymap.c index 64a2b00c31..5e4035a0af 100644 --- a/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/default/keymap.c +++ b/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+---------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/via/keymap.c b/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/via/keymap.c index 97c77e182b..826b4b4055 100644 --- a/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/via/keymap.c +++ b/keyboards/dailycraft/wings42/rev1_extkeys/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+---------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/dailycraft/wings42/rev2/keymaps/default/keymap.c b/keyboards/dailycraft/wings42/rev2/keymaps/default/keymap.c index df572a6f5a..a31712405e 100644 --- a/keyboards/dailycraft/wings42/rev2/keymaps/default/keymap.c +++ b/keyboards/dailycraft/wings42/rev2/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+-------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/dailycraft/wings42/rev2/keymaps/via/keymap.c b/keyboards/dailycraft/wings42/rev2/keymaps/via/keymap.c index e6b4ef840a..6a8482b8ae 100644 --- a/keyboards/dailycraft/wings42/rev2/keymaps/via/keymap.c +++ b/keyboards/dailycraft/wings42/rev2/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, KC_LCBR, KC_LBRC, _______, _______, KC_RBRC, KC_RCBR, _______, _______, _______, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, QK_BOOT // `+--------+--------+--------' `--------+-------+--------+' ), @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______, _______, _______, KC_COMM, KC_DOT , KC_SLSH, _______, //`--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------' - RESET , _______, _______, _______, _______, _______ + QK_BOOT , _______, _______, _______, _______, _______ // `+--------+--------+--------' `--------+--------+--------+' ), diff --git a/keyboards/daji/seis_cinco/keymaps/default/keymap.c b/keyboards/daji/seis_cinco/keymaps/default/keymap.c index f7cb9582e8..c13d5a2220 100644 --- a/keyboards/daji/seis_cinco/keymaps/default/keymap.c +++ b/keyboards/daji/seis_cinco/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_default( - 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, KC_DEL, KC_TRNS, + QK_BOOT, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/daji/seis_cinco/keymaps/via/keymap.c b/keyboards/daji/seis_cinco/keymaps/via/keymap.c index 4ea6b34a10..1ede5396f9 100644 --- a/keyboards/daji/seis_cinco/keymaps/via/keymap.c +++ b/keyboards/daji/seis_cinco/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, KC_TRNS, + QK_BOOT, 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_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, 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, diff --git a/keyboards/db/db63/keymaps/default/keymap.c b/keyboards/db/db63/keymaps/default/keymap.c index 800ff960b1..ff1d76575b 100644 --- a/keyboards/db/db63/keymaps/default/keymap.c +++ b/keyboards/db/db63/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_BRTG, BL_TOGG, BL_DEC, BL_INC, _______, 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(3), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, RESET, + MO(3), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, QK_BOOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_UP, XXXXXXX, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, _______, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/delikeeb/flatbread60/keymaps/default/keymap.c b/keyboards/delikeeb/flatbread60/keymaps/default/keymap.c index ed3ed26037..e4327c00a3 100644 --- a/keyboards/delikeeb/flatbread60/keymaps/default/keymap.c +++ b/keyboards/delikeeb/flatbread60/keymaps/default/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/flatbread60/keymaps/via/keymap.c b/keyboards/delikeeb/flatbread60/keymaps/via/keymap.c index cfba3e11c0..345c5616ff 100644 --- a/keyboards/delikeeb/flatbread60/keymaps/via/keymap.c +++ b/keyboards/delikeeb/flatbread60/keymaps/via/keymap.c @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaguettelite/keymaps/default/keymap.c b/keyboards/delikeeb/vaguettelite/keymaps/default/keymap.c index 98af7556ab..59ff7ae898 100644 --- a/keyboards/delikeeb/vaguettelite/keymaps/default/keymap.c +++ b/keyboards/delikeeb/vaguettelite/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/delikeeb/vaguettelite/keymaps/default_625u_universal/keymap.c b/keyboards/delikeeb/vaguettelite/keymaps/default_625u_universal/keymap.c index ed028e84b1..c6de6dd88c 100644 --- a/keyboards/delikeeb/vaguettelite/keymaps/default_625u_universal/keymap.c +++ b/keyboards/delikeeb/vaguettelite/keymaps/default_625u_universal/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_625u_universal( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/delikeeb/vaguettelite/keymaps/via/keymap.c b/keyboards/delikeeb/vaguettelite/keymaps/via/keymap.c index a84b41b29d..d1a86d9338 100644 --- a/keyboards/delikeeb/vaguettelite/keymaps/via/keymap.c +++ b/keyboards/delikeeb/vaguettelite/keymaps/via/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/delikeeb/vanana/keymaps/default/keymap.c b/keyboards/delikeeb/vanana/keymaps/default/keymap.c index 281bb36acb..352c85f463 100644 --- a/keyboards/delikeeb/vanana/keymaps/default/keymap.c +++ b/keyboards/delikeeb/vanana/keymaps/default/keymap.c @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, AU_ON , AU_OFF , _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, @@ -105,7 +105,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return false; - case RESET: + case QK_BOOT: if (record->event.pressed) { #ifdef AUDIO_ENABLE stop_all_notes(); diff --git a/keyboards/delikeeb/vanana/keymaps/via/keymap.c b/keyboards/delikeeb/vanana/keymaps/via/keymap.c index 6d04898f3f..7aa604d82a 100644 --- a/keyboards/delikeeb/vanana/keymaps/via/keymap.c +++ b/keyboards/delikeeb/vanana/keymaps/via/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, AU_ON , AU_OFF , _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/delikeeb/vaneela/keymaps/default/keymap.c b/keyboards/delikeeb/vaneela/keymaps/default/keymap.c index ce0cd88e7e..b1d7401b9d 100644 --- a/keyboards/delikeeb/vaneela/keymaps/default/keymap.c +++ b/keyboards/delikeeb/vaneela/keymaps/default/keymap.c @@ -106,7 +106,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FN] = LAYOUT_ortho_5x12( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______,TERM_ON, TERM_OFF, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______,TERM_ON, TERM_OFF, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaneela/keymaps/via/keymap.c b/keyboards/delikeeb/vaneela/keymaps/via/keymap.c index 1dfad3f8eb..65194b84d3 100644 --- a/keyboards/delikeeb/vaneela/keymaps/via/keymap.c +++ b/keyboards/delikeeb/vaneela/keymaps/via/keymap.c @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FN] = LAYOUT_ortho_5x12( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET, DEBUG, _______, _______, _______, _______, _______, _______,TERM_ON, TERM_OFF, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______,TERM_ON, TERM_OFF, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c b/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c index 6e98c9b8ac..f6a08015eb 100644 --- a/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c +++ b/keyboards/delikeeb/vaneelaex/keymaps/default/keymap.c @@ -94,7 +94,7 @@ KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, _______, KC_0, _______, ____ * `---------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ss_6x12( -KC_KP_EQUAL, KC_7, KC_8, KC_9, RESET , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, +KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, KC_KP_MINUS, KC_4, KC_5, KC_6, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, KC_KP_PLUS, KC_1, KC_2, KC_3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c b/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c index e23cf96a27..1e41c777a8 100644 --- a/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c +++ b/keyboards/delikeeb/vaneelaex/keymaps/via/keymap.c @@ -95,7 +95,7 @@ KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, _______, KC_0, _______, ____ * `---------------------------------------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ss_6x12( -KC_KP_EQUAL, KC_7, KC_8, KC_9, RESET , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, +KC_KP_EQUAL, KC_7, KC_8, KC_9, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUI, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, KC_DEL, KC_KP_MINUS, KC_4, KC_5, KC_6, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, KC_KP_PLUS, KC_1, KC_2, KC_3, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_KP_SLASH, KC_KP_ASTERISK, KC_KP_DOT, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/delikeeb/waaffle/keymaps/default/keymap.c b/keyboards/delikeeb/waaffle/keymaps/default/keymap.c index 5fcd609b8a..d87ac6068f 100644 --- a/keyboards/delikeeb/waaffle/keymaps/default/keymap.c +++ b/keyboards/delikeeb/waaffle/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_ortho_5x16( - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , _______, _______, _______, _______, _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/delikeeb/waaffle/keymaps/via/keymap.c b/keyboards/delikeeb/waaffle/keymaps/via/keymap.c index 73d29ec14f..a1bc93974e 100644 --- a/keyboards/delikeeb/waaffle/keymaps/via/keymap.c +++ b/keyboards/delikeeb/waaffle/keymaps/via/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_ortho_5x16( - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG , _______, _______, _______, _______, _______, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/deltasplit75/keymaps/default/keymap.c b/keyboards/deltasplit75/keymaps/default/keymap.c index 7d698eb329..3d5169304d 100644 --- a/keyboards/deltasplit75/keymaps/default/keymap.c +++ b/keyboards/deltasplit75/keymaps/default/keymap.c @@ -17,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), LAYOUT_v2( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/dm9records/lain/keymaps/default/keymap.c b/keyboards/dm9records/lain/keymaps/default/keymap.c index 655e3211b2..b05150fa5a 100644 --- a/keyboards/dm9records/lain/keymaps/default/keymap.c +++ b/keyboards/dm9records/lain/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [CONF] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, LED_EN, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/dm9records/lain/keymaps/via/keymap.c b/keyboards/dm9records/lain/keymaps/via/keymap.c index 829ffb624f..f6d49cc553 100644 --- a/keyboards/dm9records/lain/keymaps/via/keymap.c +++ b/keyboards/dm9records/lain/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [CONF] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, USER00, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/dm9records/plaid/keymaps/default/keymap.c b/keyboards/dm9records/plaid/keymaps/default/keymap.c index c5075b0e0c..f11b744066 100644 --- a/keyboards/dm9records/plaid/keymaps/default/keymap.c +++ b/keyboards/dm9records/plaid/keymaps/default/keymap.c @@ -193,7 +193,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_plaid_grid( - RESET,LED_1, LED_2, LED_3, LED_4, LED_5,LED_6, LED_7, LED_8, LED_9, LED_0,KC_DEL , + QK_BOOT,LED_1, LED_2, LED_3, LED_4, LED_5,LED_6, LED_7, LED_8, LED_9, LED_0,KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/do60/keymaps/default/keymap.c b/keyboards/do60/keymaps/default/keymap.c index 3f19321421..b99119ad4c 100644 --- a/keyboards/do60/keymaps/default/keymap.c +++ b/keyboards/do60/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( - 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, KC_NO, KC_NO, + QK_BOOT, 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_NO, KC_NO, KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_TOGG,BL_ON, BL_INC, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, BL_STEP,BL_OFF, BL_DEC, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, diff --git a/keyboards/do60/keymaps/via/keymap.c b/keyboards/do60/keymaps/via/keymap.c index 3e01a2e699..aa0c1cce7b 100644 --- a/keyboards/do60/keymaps/via/keymap.c +++ b/keyboards/do60/keymaps/via/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( - 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, KC_NO, KC_NO, + QK_BOOT, 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_NO, KC_NO, KC_NO, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_TOGG,BL_ON, BL_INC, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, KC_NO, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, BL_STEP,BL_OFF, BL_DEC, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP, KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO , KC_PGUP, KC_INS, diff --git a/keyboards/donutcables/budget96/keymaps/default/keymap.c b/keyboards/donutcables/budget96/keymaps/default/keymap.c index 66392024c4..f48d8f9be4 100644 --- a/keyboards/donutcables/budget96/keymaps/default/keymap.c +++ b/keyboards/donutcables/budget96/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT, KC_PENT), [1] = LAYOUT_96_ansi( - RESET, EEP_RST, 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, + QK_BOOT, EEP_RST, 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_TOGG, BL_STEP, BL_ON, BL_OFF, BL_INC, BL_DEC, BL_BRTG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, 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, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/donutcables/budget96/keymaps/via/keymap.c b/keyboards/donutcables/budget96/keymaps/via/keymap.c index 16bd4b8e25..79bb438e73 100644 --- a/keyboards/donutcables/budget96/keymaps/via/keymap.c +++ b/keyboards/donutcables/budget96/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT, KC_P0, KC_PDOT, KC_PENT), [1] = LAYOUT_96_ansi( - RESET, EEP_RST, 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, + QK_BOOT, EEP_RST, 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_TOGG, BL_STEP, BL_ON, BL_OFF, BL_INC, BL_DEC, BL_BRTG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, 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, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/doodboard/duckboard/keymaps/default/keymap.c b/keyboards/doodboard/duckboard/keymaps/default/keymap.c index b4e6207aea..ff0458234a 100644 --- a/keyboards/doodboard/duckboard/keymaps/default/keymap.c +++ b/keyboards/doodboard/duckboard/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - TG(2), RESET, KC_TRNS, KC_TRNS, KC_TRNS), + TG(2), QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS), }; bool encoder_update_user(uint8_t index, bool clockwise) { diff --git a/keyboards/doodboard/duckboard_r2/keymaps/default/keymap.c b/keyboards/doodboard/duckboard_r2/keymaps/default/keymap.c index af6e469ab2..df2f44a6b0 100644 --- a/keyboards/doodboard/duckboard_r2/keymaps/default/keymap.c +++ b/keyboards/doodboard/duckboard_r2/keymaps/default/keymap.c @@ -34,8 +34,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - TG(2), RESET, KC_TRNS, KC_TRNS, KC_TRNS), + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + TG(2), QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS), }; bool encoder_update_user(uint8_t index, bool clockwise) { diff --git a/keyboards/doodboard/duckboard_r2/keymaps/via/keymap.c b/keyboards/doodboard/duckboard_r2/keymaps/via/keymap.c index 7911d9e3cc..26d13d8e37 100644 --- a/keyboards/doodboard/duckboard_r2/keymaps/via/keymap.c +++ b/keyboards/doodboard/duckboard_r2/keymaps/via/keymap.c @@ -34,8 +34,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - TG(2), RESET, KC_TRNS, KC_TRNS, KC_TRNS), + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + TG(2), QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS), [3] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/doro67/multi/keymaps/default/keymap.c b/keyboards/doro67/multi/keymaps/default/keymap.c index 6140aa2773..fa9ac32e5e 100644 --- a/keyboards/doro67/multi/keymaps/default/keymap.c +++ b/keyboards/doro67/multi/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/multi/keymaps/default_iso/keymap.c b/keyboards/doro67/multi/keymaps/default_iso/keymap.c index 29bc19da80..2412a0836e 100644 --- a/keyboards/doro67/multi/keymaps/default_iso/keymap.c +++ b/keyboards/doro67/multi/keymaps/default_iso/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_iso( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/multi/keymaps/default_multi/keymap.c b/keyboards/doro67/multi/keymaps/default_multi/keymap.c index 32af5af98e..319ce06501 100644 --- a/keyboards/doro67/multi/keymaps/default_multi/keymap.c +++ b/keyboards/doro67/multi/keymaps/default_multi/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_multi( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/multi/keymaps/via/keymap.c b/keyboards/doro67/multi/keymaps/via/keymap.c index 42b399dbaf..f3e1982c80 100644 --- a/keyboards/doro67/multi/keymaps/via/keymap.c +++ b/keyboards/doro67/multi/keymaps/via/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/regular/keymaps/default/keymap.c b/keyboards/doro67/regular/keymaps/default/keymap.c index 6a1e3c3d41..342357ab2d 100644 --- a/keyboards/doro67/regular/keymaps/default/keymap.c +++ b/keyboards/doro67/regular/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/regular/keymaps/via/keymap.c b/keyboards/doro67/regular/keymaps/via/keymap.c index 8b1bc5feea..bec67a9a52 100644 --- a/keyboards/doro67/regular/keymaps/via/keymap.c +++ b/keyboards/doro67/regular/keymaps/via/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/rgb/keymaps/default/keymap.c b/keyboards/doro67/rgb/keymaps/default/keymap.c index b7742bba9c..0f793234a2 100644 --- a/keyboards/doro67/rgb/keymaps/default/keymap.c +++ b/keyboards/doro67/rgb/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - QMKBEST, QMKURL, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QMKBEST, QMKURL, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/doro67/rgb/keymaps/via/keymap.c b/keyboards/doro67/rgb/keymaps/via/keymap.c index eb4707e88a..27cf18585d 100644 --- a/keyboards/doro67/rgb/keymaps/via/keymap.c +++ b/keyboards/doro67/rgb/keymaps/via/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_65_ansi_blocker( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dp60/keymaps/default/keymap.c b/keyboards/dp60/keymaps/default/keymap.c index 66cc628d4c..bcdfee0ffb 100644 --- a/keyboards/dp60/keymaps/default/keymap.c +++ b/keyboards/dp60/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______,KC_F13,KC_F14,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______,KC_F13,KC_F14,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME,KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______,TG(0),_______), diff --git a/keyboards/dp60/keymaps/via/keymap.c b/keyboards/dp60/keymaps/via/keymap.c index 5f2b007274..f1cb53e9f7 100644 --- a/keyboards/dp60/keymaps/via/keymap.c +++ b/keyboards/dp60/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - RESET, _______,KC_UP,_______,_______,_______,_______,_______,KC_PAUS,KC_SLCK,KC_PSCR,KC_PGUP,_______,KC_INS, + QK_BOOT, _______,KC_UP,_______,_______,_______,_______,_______,KC_PAUS,KC_SLCK,KC_PSCR,KC_PGUP,_______,KC_INS, _______, KC_LEFT,KC_DOWN,KC_RIGHT,_______,_______,_______,_______, _______,_______,KC_HOME,KC_END,_______, _______, _______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,KC_PGDN,_______,_______, _______,_______,_______, _______, _______,MO(2),TG(0),_______), diff --git a/keyboards/draculad/keymaps/default/keymap.c b/keyboards/draculad/keymaps/default/keymap.c index a352359d13..d9468068ba 100644 --- a/keyboards/draculad/keymaps/default/keymap.c +++ b/keyboards/draculad/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NUM] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TAB, XXXXXXX, KC_VOLD, KC_VOLU, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_QUOT, - KC_LSFT, XXXXXXX, XXXXXXX, KC_MUTE, RESET, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_RSFT, + KC_LSFT, XXXXXXX, XXXXXXX, KC_MUTE, QK_BOOT, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_RSFT, XXXXXXX, KC_NO, XXXXXXX, KC_LALT, XXXXXXX, _______, KC_ENT, KC_NO ), @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ), [_ADJ] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, XXXXXXX, _______, diff --git a/keyboards/draytronics/daisy/keymaps/default/keymap.c b/keyboards/draytronics/daisy/keymaps/default/keymap.c index 74cd02ecd2..0855053903 100644 --- a/keyboards/draytronics/daisy/keymaps/default/keymap.c +++ b/keyboards/draytronics/daisy/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_CODE] = LAYOUT( KC_MUTE, KC_END, _______, RGB_MOD, RGB_VAI, RGB_TOG, - G(S(KC_5)), G(A(KC_ESC)), G(KC_F), RESET + G(S(KC_5)), G(A(KC_ESC)), G(KC_F), QK_BOOT ) }; diff --git a/keyboards/draytronics/elise/keymaps/default/keymap.c b/keyboards/draytronics/elise/keymaps/default/keymap.c index 4208da13b3..abf6003781 100644 --- a/keyboards/draytronics/elise/keymaps/default/keymap.c +++ b/keyboards/draytronics/elise/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * | ~ | F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del |INS | * |----------------------------------------------------------------| - * |RESET| | ↑ | | | | | | | | | | | | | + * |QK_BOOT| | ↑ | | | | | | | | | | | | | * |------------------------------------------------------- -----| * | | ← | ↓ | → | | | | | | | | | | | | * |----------------------------------------------------------------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_ansi( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, KC_TRNS, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/draytronics/elise/keymaps/default_iso/keymap.c b/keyboards/draytronics/elise/keymaps/default_iso/keymap.c index a51272a357..b0b8a7491e 100644 --- a/keyboards/draytronics/elise/keymaps/default_iso/keymap.c +++ b/keyboards/draytronics/elise/keymaps/default_iso/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * |~ `| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Delete| Ins| * |----------------------------------------------------------------| - * |RESET| | ↑ | | | | | | | | | | | | | + * |QK_BOOT| | ↑ | | | | | | | | | | | | | * |------------------------------------------------------- -----| * | | ← | ↓ | → | | | | | | | | | | | | * |----------------------------------------------------------------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_iso( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, _______, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/draytronics/elise_v2/keymaps/default/keymap.c b/keyboards/draytronics/elise_v2/keymaps/default/keymap.c index 62b4b576dd..86ca97b1b6 100644 --- a/keyboards/draytronics/elise_v2/keymaps/default/keymap.c +++ b/keyboards/draytronics/elise_v2/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * | ~ | F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del |INS | * |----------------------------------------------------------------| - * |RESET| | ↑ | | | | | | | | | | | | | + * |QK_BOOT| | ↑ | | | | | | | | | | | | | * |------------------------------------------------------- -----| * | | ← | ↓ | → | | | | | | | | | | | | * |----------------------------------------------------------------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_ansi( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, KC_TRNS, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/draytronics/elise_v2/keymaps/default_iso/keymap.c b/keyboards/draytronics/elise_v2/keymaps/default_iso/keymap.c index a51272a357..b0b8a7491e 100644 --- a/keyboards/draytronics/elise_v2/keymaps/default_iso/keymap.c +++ b/keyboards/draytronics/elise_v2/keymaps/default_iso/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * |~ `| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Delete| Ins| * |----------------------------------------------------------------| - * |RESET| | ↑ | | | | | | | | | | | | | + * |QK_BOOT| | ↑ | | | | | | | | | | | | | * |------------------------------------------------------- -----| * | | ← | ↓ | → | | | | | | | | | | | | * |----------------------------------------------------------------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_iso( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, _______, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/drewkeys/iskar/keymaps/via/keymap.c b/keyboards/drewkeys/iskar/keymaps/via/keymap.c index ba77cb4077..cfa5149e3e 100644 --- a/keyboards/drewkeys/iskar/keymaps/via/keymap.c +++ b/keyboards/drewkeys/iskar/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] LAYOUT( - KC_GRAVE, 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, RESET, KC_TRNS, + KC_GRAVE, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c b/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c index 3edc5cfab7..c01d4ac7c8 100644 --- a/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c +++ b/keyboards/dtisaac/dosa40rgb/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_RALT, L1, KC_RCTL ), [_L1] = LAYOUT( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/dtisaac/dtisaac01/keymaps/default/keymap.c b/keyboards/dtisaac/dtisaac01/keymaps/default/keymap.c index 15d0f2374a..56004946d5 100644 --- a/keyboards/dtisaac/dtisaac01/keymaps/default/keymap.c +++ b/keyboards/dtisaac/dtisaac01/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_NO), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/dtisaac/dtisaac01/keymaps/via/keymap.c b/keyboards/dtisaac/dtisaac01/keymaps/via/keymap.c index 2f61c803f7..c2f637fa7b 100644 --- a/keyboards/dtisaac/dtisaac01/keymaps/via/keymap.c +++ b/keyboards/dtisaac/dtisaac01/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_NO), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_LAYER1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLEP, KC_WAKE, KC_PWR, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLEP, KC_WAKE, KC_PWR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_ON, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, BL_OFF, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [_LAYER2] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [_LAYER3] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/duck/eagle_viper/v2/keymaps/default/keymap.c b/keyboards/duck/eagle_viper/v2/keymaps/default/keymap.c index cfcc59fec9..667dae8759 100644 --- a/keyboards/duck/eagle_viper/v2/keymaps/default/keymap.c +++ b/keyboards/duck/eagle_viper/v2/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, RGB_TOG, RGB_MOD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/duck/eagle_viper/v2/keymaps/via/keymap.c b/keyboards/duck/eagle_viper/v2/keymaps/via/keymap.c index 4851197af8..59073ba5e7 100644 --- a/keyboards/duck/eagle_viper/v2/keymaps/via/keymap.c +++ b/keyboards/duck/eagle_viper/v2/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, RGB_TOG, RGB_MOD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/duck/lightsaver/keymaps/default/keymap.c b/keyboards/duck/lightsaver/keymaps/default/keymap.c index c63d4dc3cd..61a90fe603 100644 --- a/keyboards/duck/lightsaver/keymaps/default/keymap.c +++ b/keyboards/duck/lightsaver/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/duck/octagon/keymaps/default/keymap.c b/keyboards/duck/octagon/keymaps/default/keymap.c index 27e7328e23..12024c918b 100644 --- a/keyboards/duck/octagon/keymaps/default/keymap.c +++ b/keyboards/duck/octagon/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT_75_ansi( KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, RESET, 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, QK_BOOT, 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, 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), diff --git a/keyboards/duck/orion/v3/keymaps/default/keymap.c b/keyboards/duck/orion/v3/keymaps/default/keymap.c index 0da0cdaeb3..34ce1aaf9f 100644 --- a/keyboards/duck/orion/v3/keymaps/default/keymap.c +++ b/keyboards/duck/orion/v3/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( 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, KC_TRNS, - BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, 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_TOGG, BL_STEP, BL_INC, BL_DEC, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPI, 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) diff --git a/keyboards/duck/tcv3/keymaps/default/keymap.c b/keyboards/duck/tcv3/keymaps/default/keymap.c index a7dfdddf60..4144e5b8eb 100644 --- a/keyboards/duck/tcv3/keymaps/default/keymap.c +++ b/keyboards/duck/tcv3/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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), diff --git a/keyboards/duck/tcv3/keymaps/via/keymap.c b/keyboards/duck/tcv3/keymaps/via/keymap.c index 925e1b208b..7e309d024c 100644 --- a/keyboards/duck/tcv3/keymaps/via/keymap.c +++ b/keyboards/duck/tcv3/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, 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, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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), diff --git a/keyboards/dumbo/keymaps/default/keymap.c b/keyboards/dumbo/keymaps/default/keymap.c index 7fc3ffc2c4..c6266c9c59 100644 --- a/keyboards/dumbo/keymaps/default/keymap.c +++ b/keyboards/dumbo/keymaps/default/keymap.c @@ -102,7 +102,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * Special functions: _SP * * ,-------------------------------------------. ,-------------------------------------------. - * | TAB | | | | RESET| | | | | | | | ESC | + * | TAB | | | | QK_BOOT| | | | | | | | ESC | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | CTRL | | | DEBUG| | | | | | | | | | * |--------+------+------+------+------+------| |------+------+------+------+------+--------| @@ -114,7 +114,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_SP] = LAYOUT_split_3x6_4( //,-----------------------------------------------------. ,-----------------------------------------------------. - KC_TAB, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, + KC_TAB, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_ESC, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| KC_LCTL, XXXXXXX, XXXXXXX, DEBUG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| diff --git a/keyboards/dumbpad/v0x/keymaps/default/keymap.c b/keyboards/dumbpad/v0x/keymaps/default/keymap.c index 22fbd24c02..c0627e7490 100644 --- a/keyboards/dumbpad/v0x/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v0x/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \-----------------------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, KC_LOCK, _______, _______, _______, KC_EQL diff --git a/keyboards/dumbpad/v0x_dualencoder/keymaps/default/keymap.c b/keyboards/dumbpad/v0x_dualencoder/keymaps/default/keymap.c index b103c306f3..28b71cd8e7 100644 --- a/keyboards/dumbpad/v0x_dualencoder/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v0x_dualencoder/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \---------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, _______, _______, _______, KC_EQL diff --git a/keyboards/dumbpad/v0x_right/keymaps/default/keymap.c b/keyboards/dumbpad/v0x_right/keymaps/default/keymap.c index 48002ff4d9..bc762bc0f2 100644 --- a/keyboards/dumbpad/v0x_right/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v0x_right/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \-----------------------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, _______, _______, _______, KC_EQL, KC_LOCK diff --git a/keyboards/dumbpad/v1x/keymaps/default/keymap.c b/keyboards/dumbpad/v1x/keymaps/default/keymap.c index 22fbd24c02..c0627e7490 100644 --- a/keyboards/dumbpad/v1x/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v1x/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \-----------------------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, KC_LOCK, _______, _______, _______, KC_EQL diff --git a/keyboards/dumbpad/v1x_dualencoder/keymaps/default/keymap.c b/keyboards/dumbpad/v1x_dualencoder/keymaps/default/keymap.c index 8e4f444ee7..b21ac95849 100644 --- a/keyboards/dumbpad/v1x_dualencoder/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v1x_dualencoder/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \-----------------------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, KC_LOCK, _______, _______, _______, KC_EQL diff --git a/keyboards/dumbpad/v1x_right/keymaps/default/keymap.c b/keyboards/dumbpad/v1x_right/keymaps/default/keymap.c index 48002ff4d9..bc762bc0f2 100644 --- a/keyboards/dumbpad/v1x_right/keymaps/default/keymap.c +++ b/keyboards/dumbpad/v1x_right/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { \-----------------------------------------------------' */ [1] = LAYOUT( - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, _______, _______, _______, KC_KP_PLUS, _______, _______, _______, KC_KP_MINUS, _______, _______, _______, KC_EQL, KC_LOCK diff --git a/keyboards/dz60/keymaps/default/keymap.c b/keyboards/dz60/keymaps/default/keymap.c index 5b7a24922d..3b6c147a18 100644 --- a/keyboards/dz60/keymaps/default/keymap.c +++ b/keyboards/dz60/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( KC_GRV, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dz60/keymaps/via/keymap.c b/keyboards/dz60/keymaps/via/keymap.c index 34c6e131f9..b1fd7badda 100644 --- a/keyboards/dz60/keymaps/via/keymap.c +++ b/keyboards/dz60/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_NO, MO(1), KC_RCTL), LAYOUT( KC_GRV, 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_DEL, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/dztech/duo_s/keymaps/default/keymap.c b/keyboards/dztech/duo_s/keymaps/default/keymap.c index 56c7b7d2f3..5465f8db8b 100644 --- a/keyboards/dztech/duo_s/keymaps/default/keymap.c +++ b/keyboards/dztech/duo_s/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( /* FN */ - 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, _______, BL_INC, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, RGB_MOD, diff --git a/keyboards/dztech/duo_s/keymaps/via/keymap.c b/keyboards/dztech/duo_s/keymaps/via/keymap.c index 667112dea7..b928f97611 100644 --- a/keyboards/dztech/duo_s/keymaps/via/keymap.c +++ b/keyboards/dztech/duo_s/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( /* FN */ - 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, _______, BL_INC, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, RGB_MOD, diff --git a/keyboards/dztech/dz60rgb/keymaps/default/keymap.c b/keyboards/dztech/dz60rgb/keymaps/default/keymap.c index 99b3c6c286..0e95592234 100644 --- a/keyboards/dztech/dz60rgb/keymaps/default/keymap.c +++ b/keyboards/dztech/dz60rgb/keymaps/default/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( TO(3), 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz60rgb/keymaps/via/keymap.c b/keyboards/dztech/dz60rgb/keymaps/via/keymap.c index 4bffe50db8..cd58713fae 100644 --- a/keyboards/dztech/dz60rgb/keymaps/via/keymap.c +++ b/keyboards/dztech/dz60rgb/keymaps/via/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( TO(3), 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, TO(4), _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz60rgb_ansi/keymaps/default/keymap.c b/keyboards/dztech/dz60rgb_ansi/keymaps/default/keymap.c index 12a2a1a145..f38b6aa0fc 100644 --- a/keyboards/dztech/dz60rgb_ansi/keymaps/default/keymap.c +++ b/keyboards/dztech/dz60rgb_ansi/keymaps/default/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GESC, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_60_ansi( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz60rgb_ansi/keymaps/via/keymap.c b/keyboards/dztech/dz60rgb_ansi/keymaps/via/keymap.c index 9ad5872d4f..39cebac9fc 100644 --- a/keyboards/dztech/dz60rgb_ansi/keymaps/via/keymap.c +++ b/keyboards/dztech/dz60rgb_ansi/keymaps/via/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GESC, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_60_ansi( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/default/keymap.c b/keyboards/dztech/dz60rgb_wkl/keymaps/default/keymap.c index a881a23762..7edfc1bdbf 100644 --- a/keyboards/dztech/dz60rgb_wkl/keymaps/default/keymap.c +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/default/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_60_tsangan_hhkb( _______, 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, _______, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz60rgb_wkl/keymaps/via/keymap.c b/keyboards/dztech/dz60rgb_wkl/keymaps/via/keymap.c index 5c48c2e223..a4406b3819 100644 --- a/keyboards/dztech/dz60rgb_wkl/keymaps/via/keymap.c +++ b/keyboards/dztech/dz60rgb_wkl/keymaps/via/keymap.c @@ -10,14 +10,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_tsangan_hhkb( KC_GRV, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_60_tsangan_hhkb( _______, 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, _______, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz64rgb/keymaps/default/keymap.c b/keyboards/dztech/dz64rgb/keymaps/default/keymap.c index 877793b892..94b3664f25 100644 --- a/keyboards/dztech/dz64rgb/keymaps/default/keymap.c +++ b/keyboards/dztech/dz64rgb/keymaps/default/keymap.c @@ -26,14 +26,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( TO(3), 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, TO(4), _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT_64_ansi( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz64rgb/keymaps/via/keymap.c b/keyboards/dztech/dz64rgb/keymaps/via/keymap.c index 877793b892..94b3664f25 100644 --- a/keyboards/dztech/dz64rgb/keymaps/via/keymap.c +++ b/keyboards/dztech/dz64rgb/keymaps/via/keymap.c @@ -26,14 +26,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( TO(3), 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, TO(4), _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), [2] = LAYOUT_64_ansi( _______, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/dztech/dz65rgb/keymaps/default/keymap.c b/keyboards/dztech/dz65rgb/keymaps/default/keymap.c index 70151e45bc..38c6b578a3 100644 --- a/keyboards/dztech/dz65rgb/keymaps/default/keymap.c +++ b/keyboards/dztech/dz65rgb/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS), RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/dztech/dz65rgb/keymaps/via/keymap.c b/keyboards/dztech/dz65rgb/keymaps/via/keymap.c index 7e12b4c52f..fff65fa824 100644 --- a/keyboards/dztech/dz65rgb/keymaps/via/keymap.c +++ b/keyboards/dztech/dz65rgb/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS), RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/dztech/dz96/keymaps/default/keymap.c b/keyboards/dztech/dz96/keymaps/default/keymap.c index 17d0c8a36c..7596614456 100644 --- a/keyboards/dztech/dz96/keymaps/default/keymap.c +++ b/keyboards/dztech/dz96/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_default( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/dztech/dz96/keymaps/iso/keymap.c b/keyboards/dztech/dz96/keymaps/iso/keymap.c index 00c04a6a2c..b74e7033aa 100644 --- a/keyboards/dztech/dz96/keymaps/iso/keymap.c +++ b/keyboards/dztech/dz96/keymaps/iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/dztech/dz96/keymaps/via/keymap.c b/keyboards/dztech/dz96/keymaps/via/keymap.c index 698838a53d..ab2c89b599 100644 --- a/keyboards/dztech/dz96/keymaps/via/keymap.c +++ b/keyboards/dztech/dz96/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_default( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/e88/keymaps/default/keymap.c b/keyboards/e88/keymaps/default/keymap.c index feb4ecaca9..1d62bb96d5 100644 --- a/keyboards/e88/keymaps/default/keymap.c +++ b/keyboards/e88/keymaps/default/keymap.c @@ -28,9 +28,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_DEL, KC_END, KC_PGDN, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN), KC_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RALT, RESET, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT), + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RALT, QK_BOOT, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/e88/keymaps/via/keymap.c b/keyboards/e88/keymaps/via/keymap.c index 92fce603cd..572c616792 100644 --- a/keyboards/e88/keymaps/via/keymap.c +++ b/keyboards/e88/keymaps/via/keymap.c @@ -24,11 +24,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_DEL, KC_END, KC_PGDN, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_BSLS, KC_ENT, KC_LSFT, KC_NUBS, 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_UP, - KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_TRNS, KC_RALT, RESET, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT + KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_TRNS, KC_RALT, QK_BOOT, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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_VOLD, KC_MUTE, KC_VOLU, 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_MPRV, KC_MPLY, KC_MNXT, 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, @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [3] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/ealdin/quadrant/keymaps/default/keymap.c b/keyboards/ealdin/quadrant/keymaps/default/keymap.c index 19a6e0e9ae..8461e31981 100644 --- a/keyboards/ealdin/quadrant/keymaps/default/keymap.c +++ b/keyboards/ealdin/quadrant/keymaps/default/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLCK + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_SLCK ), [2] = LAYOUT_ortho_5x14( diff --git a/keyboards/ealdin/quadrant/keymaps/via/keymap.c b/keyboards/ealdin/quadrant/keymaps/via/keymap.c index 3026ffbbeb..97c2ab36d0 100644 --- a/keyboards/ealdin/quadrant/keymaps/via/keymap.c +++ b/keyboards/ealdin/quadrant/keymaps/via/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_BSLS, 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_PAUS, 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_INS, - RESET, 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_SLCK + QK_BOOT, 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_SLCK ), [2] = LAYOUT_ortho_5x14( diff --git a/keyboards/eason/capsule65/keymaps/default/keymap.c b/keyboards/eason/capsule65/keymaps/default/keymap.c index 3f3baafe72..856faf6bcc 100644 --- a/keyboards/eason/capsule65/keymaps/default/keymap.c +++ b/keyboards/eason/capsule65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RGB_VAI, KC_TRNS, diff --git a/keyboards/eason/capsule65/keymaps/via/keymap.c b/keyboards/eason/capsule65/keymaps/via/keymap.c index 551ccd3e0f..32728c5ca3 100644 --- a/keyboards/eason/capsule65/keymaps/via/keymap.c +++ b/keyboards/eason/capsule65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RGB_VAI, KC_TRNS, @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/ebastler/isometria_75/rev1/keymaps/default/keymap.c b/keyboards/ebastler/isometria_75/rev1/keymaps/default/keymap.c index d8c980f471..1769b042a8 100644 --- a/keyboards/ebastler/isometria_75/rev1/keymaps/default/keymap.c +++ b/keyboards/ebastler/isometria_75/rev1/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_iso( /* keymap for layer 2 */ 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, RESET, + 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS, diff --git a/keyboards/ebastler/isometria_75/rev1/keymaps/via/keymap.c b/keyboards/ebastler/isometria_75/rev1/keymaps/via/keymap.c index 0b83408beb..b84cdc5af0 100644 --- a/keyboards/ebastler/isometria_75/rev1/keymaps/via/keymap.c +++ b/keyboards/ebastler/isometria_75/rev1/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_iso( /* keymap for layer 2 */ 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, RESET, + 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MO(2), KC_TRNS, KC_TRNS, diff --git a/keyboards/eco/keymaps/default/keymap.c b/keyboards/eco/keymaps/default/keymap.c index 58951ce32a..8867e11124 100644 --- a/keyboards/eco/keymaps/default/keymap.c +++ b/keyboards/eco/keymaps/default/keymap.c @@ -49,14 +49,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | | | RESET| + * | | | | | | | | | | | | | | QK_BOOT| * `-------------------------------------------------------------------------------------------------' */ [_FN1] = LAYOUT( _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, _______, CALTDEL, 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 + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Raise diff --git a/keyboards/edda/keymaps/default/keymap.c b/keyboards/edda/keymaps/default/keymap.c index d935a74826..df21c4ce21 100644 --- a/keyboards/edda/keymaps/default/keymap.c +++ b/keyboards/edda/keymaps/default/keymap.c @@ -35,6 +35,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_MOD, _______, _______, KC_UP, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, _______, _______, _______, _______, _______, RGB_RMOD, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/edi/hardlight/mk1/keymaps/default/keymap.c b/keyboards/edi/hardlight/mk1/keymaps/default/keymap.c index 251b6c8b38..adbbbb772c 100644 --- a/keyboards/edi/hardlight/mk1/keymaps/default/keymap.c +++ b/keyboards/edi/hardlight/mk1/keymaps/default/keymap.c @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_SET] = LAYOUT_ortho_4x16( _______, KC_CAPS, KC_SLCK, KC_NLCK, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_M_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_M_SW, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_K, _______, RESET, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_K, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/edi/hardlight/mk2/keymaps/default/keymap.c b/keyboards/edi/hardlight/mk2/keymaps/default/keymap.c index 6683e647d3..fc14d26cdb 100644 --- a/keyboards/edi/hardlight/mk2/keymaps/default/keymap.c +++ b/keyboards/edi/hardlight/mk2/keymaps/default/keymap.c @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_SET] = LAYOUT_ortho_4x16( _______, KC_CAPS, KC_SLCK, KC_NLCK, VLK_TOG, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_P, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_M_SW,_______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_K, _______, RESET, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_K, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/edi/standaside/keymaps/default/keymap.c b/keyboards/edi/standaside/keymaps/default/keymap.c index 0f13cb7632..575994e055 100644 --- a/keyboards/edi/standaside/keymaps/default/keymap.c +++ b/keyboards/edi/standaside/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_LOWER] = LAYOUT_ortho_4x16( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, RGB_TOG, RGB_MOD, RESET, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, RGB_TOG, RGB_MOD, QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, RGB_M_P, RGB_M_R, RGB_M_K diff --git a/keyboards/eek/keymaps/default/keymap.c b/keyboards/eek/keymaps/default/keymap.c index ad8f9688ab..0d9b2fe137 100644 --- a/keyboards/eek/keymaps/default/keymap.c +++ b/keyboards/eek/keymaps/default/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x5_3( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, _______, KC_F9, KC_F10, KC_F11, KC_F12, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, _______, _______, KC_F5, KC_F6, KC_F7, KC_F8, - _______, _______, _______, _______, _______, RESET, KC_F1, KC_F2, KC_F3, KC_F4, + _______, _______, _______, _______, _______, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/ein_60/keymaps/default/keymap.c b/keyboards/ein_60/keymaps/default/keymap.c index 24a705106c..038e8ce19a 100644 --- a/keyboards/ein_60/keymaps/default/keymap.c +++ b/keyboards/ein_60/keymaps/default/keymap.c @@ -88,14 +88,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | | | | | | | | | | | |BLSTEP| * |------+------+------|--------------------+ ,------. +--------------------|------+------+------| - * | | | | | | | | | | | | | | | RESET| + * | | | | | | | | | | | | | | | QK_BOOT| * `-----------------------------------------' `------' `-----------------------------------------' */ [_ADJUST] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, RGBRST, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_VAD, RGB_SAD, RGB_HUD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Function * ,-----------------------------------------. ,------. ,-----------------------------------------. diff --git a/keyboards/emajesty/eiri/keymaps/default/keymap.c b/keyboards/emajesty/eiri/keymaps/default/keymap.c index e52a83c81c..c3db9e1b46 100644 --- a/keyboards/emajesty/eiri/keymaps/default/keymap.c +++ b/keyboards/emajesty/eiri/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, KC_LCBR, KC_RCBR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), [2] = LAYOUT( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) diff --git a/keyboards/emi20/keymaps/default/keymap.c b/keyboards/emi20/keymaps/default/keymap.c index b0400108fa..e92bd61cb7 100644 --- a/keyboards/emi20/keymaps/default/keymap.c +++ b/keyboards/emi20/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_ortho_5x4( //Layer 2 KC_NO, KC_NO, KC_NO, KC_NO, - KC_NO, KC_NO, KC_NO, RESET, + KC_NO, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NLCK, KC_NO, KC_NO), diff --git a/keyboards/ep/40/keymaps/default/keymap.c b/keyboards/ep/40/keymaps/default/keymap.c index 38d0e62287..1c62bbed6d 100644 --- a/keyboards/ep/40/keymaps/default/keymap.c +++ b/keyboards/ep/40/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_SCLN, KC_QUOT, KC_NUHS, KC_TRNS, KC_TRNS, KC_NUBS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT ), }; diff --git a/keyboards/epoch80/keymaps/default/keymap.c b/keyboards/epoch80/keymaps/default/keymap.c index 76ac04d1b5..af1fb4600b 100644 --- a/keyboards/epoch80/keymaps/default/keymap.c +++ b/keyboards/epoch80/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/epoch80/keymaps/iso/keymap.c b/keyboards/epoch80/keymaps/iso/keymap.c index dcf43d76e1..842551ac8d 100644 --- a/keyboards/epoch80/keymaps/iso/keymap.c +++ b/keyboards/epoch80/keymaps/iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_iso( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/epoch80/keymaps/tsangan/keymap.c b/keyboards/epoch80/keymaps/tsangan/keymap.c index a0595a0d77..f062e087ee 100644 --- a/keyboards/epoch80/keymaps/tsangan/keymap.c +++ b/keyboards/epoch80/keymaps/tsangan/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_tsangan( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/epoch80/keymaps/via/keymap.c b/keyboards/epoch80/keymaps/via/keymap.c index cf2aeb3ca9..29876b585f 100644 --- a/keyboards/epoch80/keymaps/via/keymap.c +++ b/keyboards/epoch80/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_all( 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, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_all( 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, KC_TRNS, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/epoch80/keymaps/wkl/keymap.c b/keyboards/epoch80/keymaps/wkl/keymap.c index 30b7126908..7b9ee77f6d 100644 --- a/keyboards/epoch80/keymaps/wkl/keymap.c +++ b/keyboards/epoch80/keymaps/wkl/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_wkl( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS diff --git a/keyboards/ergoslab/keymaps/default/keymap.c b/keyboards/ergoslab/keymaps/default/keymap.c index a9bf279246..59415618a8 100644 --- a/keyboards/ergoslab/keymaps/default/keymap.c +++ b/keyboards/ergoslab/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_HOME, KC_PGDN, KC_PGUP, KC_END, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, KC_MUTE, - _______, RESET, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/ergotravel/keymaps/default/keymap.c b/keyboards/ergotravel/keymaps/default/keymap.c index 728519d277..7c96296a16 100644 --- a/keyboards/ergotravel/keymaps/default/keymap.c +++ b/keyboards/ergotravel/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TSKMGR, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, CALTDEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_VAD, RGB_SAD, RGB_HUD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/esca/getawayvan/keymaps/default/keymap.c b/keyboards/esca/getawayvan/keymaps/default/keymap.c index 98c10322ef..4c213a5225 100644 --- a/keyboards/esca/getawayvan/keymaps/default/keymap.c +++ b/keyboards/esca/getawayvan/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), [3] = LAYOUT( /* LAYER 3 */ - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, KC_TRNS, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, 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, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/esca/getawayvan/keymaps/via/keymap.c b/keyboards/esca/getawayvan/keymaps/via/keymap.c index 8cc90b2299..55c60a9256 100644 --- a/keyboards/esca/getawayvan/keymaps/via/keymap.c +++ b/keyboards/esca/getawayvan/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), [3] = LAYOUT( /* LAYER 3 */ - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, KC_TRNS, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, 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, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/esca/getawayvan_f042/keymaps/default/keymap.c b/keyboards/esca/getawayvan_f042/keymaps/default/keymap.c index 8cc90b2299..55c60a9256 100644 --- a/keyboards/esca/getawayvan_f042/keymaps/default/keymap.c +++ b/keyboards/esca/getawayvan_f042/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), [3] = LAYOUT( /* LAYER 3 */ - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, KC_TRNS, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, 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, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/eternal_keypad/keymaps/default/keymap.c b/keyboards/eternal_keypad/keymaps/default/keymap.c index dc2f60319f..f4d06bc1ff 100644 --- a/keyboards/eternal_keypad/keymaps/default/keymap.c +++ b/keyboards/eternal_keypad/keymaps/default/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______ ), /* Function Layer * ,-------------------------------------. diff --git a/keyboards/eternal_keypad/keymaps/via/keymap.c b/keyboards/eternal_keypad/keymaps/via/keymap.c index 725cc12240..f5b2796aac 100644 --- a/keyboards/eternal_keypad/keymaps/via/keymap.c +++ b/keyboards/eternal_keypad/keymaps/via/keymap.c @@ -102,6 +102,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/eve/meteor/keymaps/default/keymap.c b/keyboards/eve/meteor/keymaps/default/keymap.c index d9638e3e84..598421ddf4 100644 --- a/keyboards/eve/meteor/keymaps/default/keymap.c +++ b/keyboards/eve/meteor/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/eve/meteor/keymaps/via/keymap.c b/keyboards/eve/meteor/keymaps/via/keymap.c index 28a3b5cb9d..aefb5b7a96 100644 --- a/keyboards/eve/meteor/keymaps/via/keymap.c +++ b/keyboards/eve/meteor/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, - RESET, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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 diff --git a/keyboards/evyd13/atom47/keymaps/default/keymap.c b/keyboards/evyd13/atom47/keymaps/default/keymap.c index a7fbdda31d..28107106b5 100644 --- a/keyboards/evyd13/atom47/keymaps/default/keymap.c +++ b/keyboards/evyd13/atom47/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(_PN), KC_SPC, KC_SPC, MO(_FN), KC_RALT, KC_APP, KC_RCTRL), [_FN] = LAYOUT_split_space( - _______, KC_VOLD, KC_VOLU, KC_MUTE, RESET, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, + _______, KC_VOLD, KC_VOLU, KC_MUTE, QK_BOOT, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_CAPS, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), @@ -50,5 +50,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), }; diff --git a/keyboards/evyd13/atom47/keymaps/via/keymap.c b/keyboards/evyd13/atom47/keymaps/via/keymap.c index 686a4d3dbe..19d1f8f9c5 100644 --- a/keyboards/evyd13/atom47/keymaps/via/keymap.c +++ b/keyboards/evyd13/atom47/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(3), KC_SPC, KC_SPC, MO(1), KC_RALT, KC_APP, KC_RCTRL), [1] = LAYOUT_split_space( - _______, KC_VOLD, KC_VOLU, KC_MUTE, RESET, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, + _______, KC_VOLD, KC_VOLU, KC_MUTE, QK_BOOT, _______, KC_CALC, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_CAPS, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RIGHT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), @@ -40,5 +40,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), }; diff --git a/keyboards/evyd13/eon40/keymaps/default/keymap.c b/keyboards/evyd13/eon40/keymaps/default/keymap.c index 2cfb5744cd..a0e0cb6d8a 100644 --- a/keyboards/evyd13/eon40/keymaps/default/keymap.c +++ b/keyboards/evyd13/eon40/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), [_HI] = LAYOUT_ortho_4x12( _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, diff --git a/keyboards/evyd13/eon40/keymaps/via/keymap.c b/keyboards/evyd13/eon40/keymaps/via/keymap.c index 3af6d609a0..f4831fa7a5 100644 --- a/keyboards/evyd13/eon40/keymaps/via/keymap.c +++ b/keyboards/evyd13/eon40/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), [2] = LAYOUT_ortho_4x12( _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, diff --git a/keyboards/evyd13/eon65/keymaps/default/keymap.c b/keyboards/evyd13/eon65/keymaps/default/keymap.c index d7fc26de07..8ee89afd7b 100644 --- a/keyboards/evyd13/eon65/keymaps/default/keymap.c +++ b/keyboards/evyd13/eon65/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/eon65/keymaps/via/keymap.c b/keyboards/evyd13/eon65/keymaps/via/keymap.c index d341f10406..19d97a059a 100644 --- a/keyboards/evyd13/eon65/keymaps/via/keymap.c +++ b/keyboards/evyd13/eon65/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/eon75/keymaps/default/keymap.c b/keyboards/evyd13/eon75/keymaps/default/keymap.c index 535393cd90..f6b2641b24 100644 --- a/keyboards/evyd13/eon75/keymaps/default/keymap.c +++ b/keyboards/evyd13/eon75/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/eon75/keymaps/via/keymap.c b/keyboards/evyd13/eon75/keymaps/via/keymap.c index 106ee970d9..1b30f1b87d 100644 --- a/keyboards/evyd13/eon75/keymaps/via/keymap.c +++ b/keyboards/evyd13/eon75/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/eon95/keymaps/default/keymap.c b/keyboards/evyd13/eon95/keymaps/default/keymap.c index 1d61ca55ef..1ed71b0d7d 100644 --- a/keyboards/evyd13/eon95/keymaps/default/keymap.c +++ b/keyboards/evyd13/eon95/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/eon95/keymaps/via/keymap.c b/keyboards/evyd13/eon95/keymaps/via/keymap.c index 5ada354fae..fce29ecf7d 100644 --- a/keyboards/evyd13/eon95/keymaps/via/keymap.c +++ b/keyboards/evyd13/eon95/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/gud70/keymaps/default/keymap.c b/keyboards/evyd13/gud70/keymaps/default/keymap.c index c1ec59573f..d9b1bdc598 100644 --- a/keyboards/evyd13/gud70/keymaps/default/keymap.c +++ b/keyboards/evyd13/gud70/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, 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_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/gud70/keymaps/via/keymap.c b/keyboards/evyd13/gud70/keymaps/via/keymap.c index 5fea39ebe0..af25a00574 100644 --- a/keyboards/evyd13/gud70/keymaps/via/keymap.c +++ b/keyboards/evyd13/gud70/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, 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_UP, KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/minitomic/keymaps/default/keymap.c b/keyboards/evyd13/minitomic/keymaps/default/keymap.c index 5315026b91..fd5f55a96c 100644 --- a/keyboards/evyd13/minitomic/keymaps/default/keymap.c +++ b/keyboards/evyd13/minitomic/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), [_HI] = LAYOUT_split_space( _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, _______, diff --git a/keyboards/evyd13/mx5160/keymaps/default/keymap.c b/keyboards/evyd13/mx5160/keymaps/default/keymap.c index e60d5302d6..f10f673b68 100644 --- a/keyboards/evyd13/mx5160/keymaps/default/keymap.c +++ b/keyboards/evyd13/mx5160/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, KC_LCTL, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_P0, _______, KC_PDOT, KC_PENT), [_FN] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_PSCR, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/plain60/keymaps/default/keymap.c b/keyboards/evyd13/plain60/keymaps/default/keymap.c index 185355e9cc..6bb33da661 100644 --- a/keyboards/evyd13/plain60/keymaps/default/keymap.c +++ b/keyboards/evyd13/plain60/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______) diff --git a/keyboards/evyd13/pockettype/keymaps/default/keymap.c b/keyboards/evyd13/pockettype/keymaps/default/keymap.c index 5ca7326c00..c68e371f20 100644 --- a/keyboards/evyd13/pockettype/keymaps/default/keymap.c +++ b/keyboards/evyd13/pockettype/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, LCTL(KC_Z), LCTL(KC_X), LCTL(KC_C), LCTL(KC_V), _______, _______, KC_QUOT, KC_LBRC, KC_RBRC, KC_BSLS, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET), + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT), [_HI] = LAYOUT_ortho_4x12( _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_UP, KC_PGDN, _______, _______, diff --git a/keyboards/evyd13/quackfire/keymaps/default/keymap.c b/keyboards/evyd13/quackfire/keymaps/default/keymap.c index 9d84259659..e625ab99e3 100644 --- a/keyboards/evyd13/quackfire/keymaps/default/keymap.c +++ b/keyboards/evyd13/quackfire/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, diff --git a/keyboards/evyd13/quackfire/keymaps/via/keymap.c b/keyboards/evyd13/quackfire/keymaps/via/keymap.c index 623e8fdc2d..a1c541b69b 100644 --- a/keyboards/evyd13/quackfire/keymaps/via/keymap.c +++ b/keyboards/evyd13/quackfire/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, diff --git a/keyboards/evyd13/solheim68/keymaps/default/keymap.c b/keyboards/evyd13/solheim68/keymaps/default/keymap.c index 728e8019a2..57901ed500 100644 --- a/keyboards/evyd13/solheim68/keymaps/default/keymap.c +++ b/keyboards/evyd13/solheim68/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_NUBS, 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_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_PSCR, KC_PGUP, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_PSCR, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, diff --git a/keyboards/evyd13/ta65/keymaps/default/keymap.c b/keyboards/evyd13/ta65/keymaps/default/keymap.c index 5791f94057..8a1e6542df 100644 --- a/keyboards/evyd13/ta65/keymaps/default/keymap.c +++ b/keyboards/evyd13/ta65/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/wasdat/keymaps/via/keymap.c b/keyboards/evyd13/wasdat/keymaps/via/keymap.c index 4195194507..f052de7d39 100644 --- a/keyboards/evyd13/wasdat/keymaps/via/keymap.c +++ b/keyboards/evyd13/wasdat/keymaps/via/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └────┴────┴────┴────────────────────────┴────┴────┴────┴────┘ └───┴───┴───┘ └───────┴───┴───┘ */ LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/evyd13/wasdat_code/keymaps/default/keymap.c b/keyboards/evyd13/wasdat_code/keymaps/default/keymap.c index 2a375ff028..4c95da563c 100644 --- a/keyboards/evyd13/wasdat_code/keymaps/default/keymap.c +++ b/keyboards/evyd13/wasdat_code/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), LAYOUT_fullsize_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, _______, _______, _______, _______, diff --git a/keyboards/evyd13/wasdat_code/keymaps/via/keymap.c b/keyboards/evyd13/wasdat_code/keymaps/via/keymap.c index 35445812bd..f632ab7fce 100644 --- a/keyboards/evyd13/wasdat_code/keymaps/via/keymap.c +++ b/keyboards/evyd13/wasdat_code/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_TOGG, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, _______, _______, _______, _______, diff --git a/keyboards/evyd13/wonderland/keymaps/default/keymap.c b/keyboards/evyd13/wonderland/keymaps/default/keymap.c index 7109993bcb..5bdd7892c0 100644 --- a/keyboards/evyd13/wonderland/keymaps/default/keymap.c +++ b/keyboards/evyd13/wonderland/keymaps/default/keymap.c @@ -15,7 +15,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LAPO, KC_BSPC, KC_LGUI, KC_SPC, KC_RAPC, KC_RCTRL ), [_FUNC] = LAYOUT( - RGB_TOG, VLK_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, RESET, + RGB_TOG, VLK_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, QK_BOOT, RGB_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, KC_LSFT, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, XXXXXXX, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN,KC_RIGHT, XXXXXXX, diff --git a/keyboards/evyd13/wonderland/keymaps/via/keymap.c b/keyboards/evyd13/wonderland/keymaps/via/keymap.c index 85fde41a25..e2cb7be3ab 100644 --- a/keyboards/evyd13/wonderland/keymaps/via/keymap.c +++ b/keyboards/evyd13/wonderland/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LAPO, KC_BSPC, KC_LGUI, KC_SPC, KC_RAPC, KC_RCTL ), [1] = LAYOUT( - RGB_TOG, VLK_TOG, 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_NO, RESET, + RGB_TOG, VLK_TOG, 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_NO, QK_BOOT, RGB_MOD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_RMOD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, _______, diff --git a/keyboards/exclusive/e65/keymaps/default/keymap.c b/keyboards/exclusive/e65/keymaps/default/keymap.c index 34fcb75d25..36c1d62d1e 100644 --- a/keyboards/exclusive/e65/keymaps/default/keymap.c +++ b/keyboards/exclusive/e65/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_65_ansi_noblocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,_______, diff --git a/keyboards/exclusive/e65/keymaps/default_iso/keymap.c b/keyboards/exclusive/e65/keymaps/default_iso/keymap.c index 815d6af545..b907fa3f7a 100644 --- a/keyboards/exclusive/e65/keymaps/default_iso/keymap.c +++ b/keyboards/exclusive/e65/keymaps/default_iso/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_65_iso_noblocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI,_______, _______, diff --git a/keyboards/exclusive/e65/keymaps/via/keymap.c b/keyboards/exclusive/e65/keymaps/via/keymap.c index d95106e633..d06035cc33 100644 --- a/keyboards/exclusive/e65/keymaps/via/keymap.c +++ b/keyboards/exclusive/e65/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_TRNS, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - KC_GRV, 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_NO, RESET, + KC_GRV, 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_NO, QK_BOOT, BL_TOGG, BL_DEC, 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_HOME, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, 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, RGB_VAI, KC_TRNS, diff --git a/keyboards/exclusive/e6_rgb/keymaps/default/keymap.c b/keyboards/exclusive/e6_rgb/keymaps/default/keymap.c index f19c72c8af..0633b84c83 100644 --- a/keyboards/exclusive/e6_rgb/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6_rgb/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( 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, _______, - RESET, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e6_rgb/keymaps/via/keymap.c b/keyboards/exclusive/e6_rgb/keymaps/via/keymap.c index a441c44557..90ff3e3443 100644 --- a/keyboards/exclusive/e6_rgb/keymaps/via/keymap.c +++ b/keyboards/exclusive/e6_rgb/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi_split_bs_rshift( _______, 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_PSCR, - RESET, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, + QK_BOOT, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c b/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c index 26a4f9109d..2029abbcee 100644 --- a/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6v2/le_bmc/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_GRV, 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, - BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + BL_TOGG, BL_INC, BL_DEC, BL_STEP, QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/exclusive/e6v2/le_bmc/keymaps/via/keymap.c b/keyboards/exclusive/e6v2/le_bmc/keymaps/via/keymap.c index 4b9ba19d95..5307b030e6 100644 --- a/keyboards/exclusive/e6v2/le_bmc/keymaps/via/keymap.c +++ b/keyboards/exclusive/e6v2/le_bmc/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_GRV, 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, - BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + BL_TOGG, BL_INC, BL_DEC, BL_STEP, QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/exclusive/e6v2/oe/keymaps/default/keymap.c b/keyboards/exclusive/e6v2/oe/keymaps/default/keymap.c index 945787f0dc..016c3737d2 100644 --- a/keyboards/exclusive/e6v2/oe/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6v2/oe/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GRV, 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, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAST, KC_PSLS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PPLS, KC_PMNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c b/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c index 26a4f9109d..2029abbcee 100644 --- a/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c +++ b/keyboards/exclusive/e6v2/oe_bmc/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_GRV, 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, - BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + BL_TOGG, BL_INC, BL_DEC, BL_STEP, QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/exclusive/e6v2/oe_bmc/keymaps/via/keymap.c b/keyboards/exclusive/e6v2/oe_bmc/keymaps/via/keymap.c index 5e84a478e5..08bf9d7f83 100644 --- a/keyboards/exclusive/e6v2/oe_bmc/keymaps/via/keymap.c +++ b/keyboards/exclusive/e6v2/oe_bmc/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_GRV, 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, - BL_TOGG, BL_INC, BL_DEC, BL_STEP, RESET, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + BL_TOGG, BL_INC, BL_DEC, BL_STEP, QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/exclusive/e7v1/keymaps/default/keymap.c b/keyboards/exclusive/e7v1/keymaps/default/keymap.c index 189c01eca2..6b5e1fc585 100644 --- a/keyboards/exclusive/e7v1/keymaps/default/keymap.c +++ b/keyboards/exclusive/e7v1/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_75_ansi( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/exclusive/e7v1/keymaps/via/keymap.c b/keyboards/exclusive/e7v1/keymaps/via/keymap.c index 2f2f9dcc4a..0f382eb04d 100644 --- a/keyboards/exclusive/e7v1/keymaps/via/keymap.c +++ b/keyboards/exclusive/e7v1/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_75_ansi( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, KC_LGUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/exclusive/e7v1se/keymaps/default/keymap.c b/keyboards/exclusive/e7v1se/keymaps/default/keymap.c index 376b4c9509..8eec4ca7c9 100644 --- a/keyboards/exclusive/e7v1se/keymaps/default/keymap.c +++ b/keyboards/exclusive/e7v1se/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/exclusive/e85/hotswap/keymaps/default/keymap.c b/keyboards/exclusive/e85/hotswap/keymaps/default/keymap.c index 80f8e0eeb4..642c381138 100644 --- a/keyboards/exclusive/e85/hotswap/keymaps/default/keymap.c +++ b/keyboards/exclusive/e85/hotswap/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_tsangan( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e85/hotswap/keymaps/tsangan/keymap.c b/keyboards/exclusive/e85/hotswap/keymaps/tsangan/keymap.c index 80f8e0eeb4..642c381138 100644 --- a/keyboards/exclusive/e85/hotswap/keymaps/tsangan/keymap.c +++ b/keyboards/exclusive/e85/hotswap/keymaps/tsangan/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_tsangan( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e85/hotswap/keymaps/via/keymap.c b/keyboards/exclusive/e85/hotswap/keymaps/via/keymap.c index c55c35ce19..9892fc1c03 100644 --- a/keyboards/exclusive/e85/hotswap/keymaps/via/keymap.c +++ b/keyboards/exclusive/e85/hotswap/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_tsangan( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e85/soldered/keymaps/default/keymap.c b/keyboards/exclusive/e85/soldered/keymaps/default/keymap.c index 80f8e0eeb4..642c381138 100644 --- a/keyboards/exclusive/e85/soldered/keymaps/default/keymap.c +++ b/keyboards/exclusive/e85/soldered/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_tsangan( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exclusive/e85/soldered/keymaps/via/keymap.c b/keyboards/exclusive/e85/soldered/keymaps/via/keymap.c index c55c35ce19..9892fc1c03 100644 --- a/keyboards/exclusive/e85/soldered/keymaps/via/keymap.c +++ b/keyboards/exclusive/e85/soldered/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_tsangan( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exent/keymaps/default/keymap.c b/keyboards/exent/keymaps/default/keymap.c index 0a018c77c1..299a3de6dd 100644 --- a/keyboards/exent/keymaps/default/keymap.c +++ b/keyboards/exent/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( KC_GRV, 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, _______, - BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_INC, BL_DEC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/exent/keymaps/via/keymap.c b/keyboards/exent/keymaps/via/keymap.c index 6b36e43bd9..866cf2a019 100644 --- a/keyboards/exent/keymaps/via/keymap.c +++ b/keyboards/exent/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( KC_GRV, 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, _______, - BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_INC, BL_DEC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/eyeohdesigns/babyv/keymaps/default/keymap.c b/keyboards/eyeohdesigns/babyv/keymaps/default/keymap.c index 004a47678d..6e67a9420e 100644 --- a/keyboards/eyeohdesigns/babyv/keymaps/default/keymap.c +++ b/keyboards/eyeohdesigns/babyv/keymaps/default/keymap.c @@ -31,9 +31,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNCTN] = LAYOUT_2u( KC_VOLU, KC_Q, KC_PGUP, RGB_TOG, BL_STEP, KC_T, KC_Y, KC_U, KC_UP, RGB_MOD, RGB_RMOD, KC_DEL, - KC_VOLD, KC_HOME, KC_PGDN, KC_D, KC_U, KC_MINS, KC_EQL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_QUOT, RESET, + KC_VOLD, KC_HOME, KC_PGDN, KC_D, KC_U, KC_MINS, KC_EQL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_QUOT, QK_BOOT, KC_LSFT, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_LBRC, KC_RBRC, RGB_VAI, RGB_VAD, KC_DOT, KC_BSLS, KC_RSFT, - KC_LCTL, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, RESET + KC_LCTL, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, QK_BOOT ), [_NUMBRS] = LAYOUT_2u( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, diff --git a/keyboards/eyeohdesigns/sprh/keymaps/default/keymap.c b/keyboards/eyeohdesigns/sprh/keymaps/default/keymap.c index b0f7be00ac..3ea5b41594 100644 --- a/keyboards/eyeohdesigns/sprh/keymaps/default/keymap.c +++ b/keyboards/eyeohdesigns/sprh/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNCTN] = LAYOUT_ac5(/* Base */ - RESET, KC_GRAVE, 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, + QK_BOOT, KC_GRAVE, 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_TAB, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_LBRC, KC_RBRC, KC_BSLS, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT, KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, diff --git a/keyboards/eyeohdesigns/theboulevard/keymaps/default/keymap.c b/keyboards/eyeohdesigns/theboulevard/keymaps/default/keymap.c index bda0c900d0..be203959c0 100644 --- a/keyboards/eyeohdesigns/theboulevard/keymaps/default/keymap.c +++ b/keyboards/eyeohdesigns/theboulevard/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNCTN] = LAYOUT_ortho1( - RESET, RGB_TOG, RGB_HUD, RGB_VAD, RGB_SAD, + QK_BOOT, RGB_TOG, RGB_HUD, RGB_VAD, RGB_SAD, KC_F5, KC_TAB, KC_Q, KC_PGUP, KC_E, KC_R, KC_T, KC_QUOT, KC_U, KC_UP, KC_O, KC_P, KC_BSPC, KC_F6, KC_CAPS, KC_HOME, KC_PGDN, KC_END, KC_F, KC_MINS, KC_EQL, KC_LEFT, KC_DOWN, KC_RIGHT, KC_SCLN, KC_ENT, KC_F7, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_LBRC, KC_RBRC, KC_M, KC_COMM, KC_DOT, KC_BSLS, KC_RSFT, diff --git a/keyboards/facew/keymaps/default/keymap.c b/keyboards/facew/keymaps/default/keymap.c index 6e91fba238..d1470814c8 100644 --- a/keyboards/facew/keymaps/default/keymap.c +++ b/keyboards/facew/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( - 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, RESET, + 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, QK_BOOT, 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, MO(1), 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, diff --git a/keyboards/fallacy/keymaps/default/keymap.c b/keyboards/fallacy/keymaps/default/keymap.c index 45afc45425..27a37ca8df 100755 --- a/keyboards/fallacy/keymaps/default/keymap.c +++ b/keyboards/fallacy/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL), [1] = LAYOUT_alice( - KC_TRNS, RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F11, KC_F12, KC_TRNS, KC_TRNS, + KC_TRNS, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, 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, 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, diff --git a/keyboards/fallacy/keymaps/default_split_bs/keymap.c b/keyboards/fallacy/keymaps/default_split_bs/keymap.c index 957e876c4b..e336cbed9e 100755 --- a/keyboards/fallacy/keymaps/default_split_bs/keymap.c +++ b/keyboards/fallacy/keymaps/default_split_bs/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL), [1] = LAYOUT_all( - KC_TRNS, 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, KC_TRNS, KC_TRNS, + KC_TRNS, QK_BOOT, 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, 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, diff --git a/keyboards/fallacy/keymaps/via/keymap.c b/keyboards/fallacy/keymaps/via/keymap.c index d6a7b0744d..41279f88c7 100755 --- a/keyboards/fallacy/keymaps/via/keymap.c +++ b/keyboards/fallacy/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, KC_RALT, KC_RCTL), [1] = LAYOUT_all( - KC_TRNS, 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, KC_TRNS, KC_TRNS, + KC_TRNS, QK_BOOT, 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, 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, diff --git a/keyboards/fc660c/keymaps/default_rgb/keymap.c b/keyboards/fc660c/keymaps/default_rgb/keymap.c index 677797e39b..446c092c87 100644 --- a/keyboards/fc660c/keymaps/default_rgb/keymap.c +++ b/keyboards/fc660c/keymaps/default_rgb/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,_______,_______, _______, _______,MO(2), _______, KC_HOME,KC_PGDN,KC_END ), [2] = LAYOUT( - RESET, EEPROM_RESET,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_TOG, + QK_BOOT, EEPROM_RESET,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_TOG, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_MOD, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, RGB_VAI, diff --git a/keyboards/feels/feels65/keymaps/default/keymap.c b/keyboards/feels/feels65/keymaps/default/keymap.c index d767872fff..a54e904dde 100644 --- a/keyboards/feels/feels65/keymaps/default/keymap.c +++ b/keyboards/feels/feels65/keymaps/default/keymap.c @@ -29,6 +29,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, - RESET, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + QK_BOOT, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), }; diff --git a/keyboards/feels/feels65/keymaps/via/keymap.c b/keyboards/feels/feels65/keymaps/via/keymap.c index a325a84104..b740afb9c5 100644 --- a/keyboards/feels/feels65/keymaps/via/keymap.c +++ b/keyboards/feels/feels65/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, - RESET, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END + QK_BOOT, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ferris/keymaps/via/keymap.c b/keyboards/ferris/keymaps/via/keymap.c index b1ccd84fee..af014a9ca8 100644 --- a/keyboards/ferris/keymaps/via/keymap.c +++ b/keyboards/ferris/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_PIPE, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/fjlabs/ad65/keymaps/default/keymap.c b/keyboards/fjlabs/ad65/keymaps/default/keymap.c index e7e22b1476..48d86d3edf 100644 --- a/keyboards/fjlabs/ad65/keymaps/default/keymap.c +++ b/keyboards/fjlabs/ad65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/fjlabs/ad65/keymaps/via/keymap.c b/keyboards/fjlabs/ad65/keymaps/via/keymap.c index 1e91ac327e..d3385a81ce 100644 --- a/keyboards/fjlabs/ad65/keymaps/via/keymap.c +++ b/keyboards/fjlabs/ad65/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/fjlabs/bks65/keymaps/default/keymap.c b/keyboards/fjlabs/bks65/keymaps/default/keymap.c index 8d2c13f3b0..76cdcca6db 100644 --- a/keyboards/fjlabs/bks65/keymaps/default/keymap.c +++ b/keyboards/fjlabs/bks65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/bks65/keymaps/via/keymap.c b/keyboards/fjlabs/bks65/keymaps/via/keymap.c index 839991f0f0..39ac00f72e 100644 --- a/keyboards/fjlabs/bks65/keymaps/via/keymap.c +++ b/keyboards/fjlabs/bks65/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/bks65solder/keymaps/default/keymap.c b/keyboards/fjlabs/bks65solder/keymaps/default/keymap.c index 2e636cb3d9..f343c13238 100644 --- a/keyboards/fjlabs/bks65solder/keymaps/default/keymap.c +++ b/keyboards/fjlabs/bks65solder/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_TRNS, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, 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 diff --git a/keyboards/fjlabs/bks65solder/keymaps/via/keymap.c b/keyboards/fjlabs/bks65solder/keymaps/via/keymap.c index 218c0265a5..0dfc29af57 100644 --- a/keyboards/fjlabs/bks65solder/keymaps/via/keymap.c +++ b/keyboards/fjlabs/bks65solder/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LAYER1] = LAYOUT_all( KC_GESC, 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_TRNS, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, 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 diff --git a/keyboards/fjlabs/kyuu/keymaps/default/keymap.c b/keyboards/fjlabs/kyuu/keymaps/default/keymap.c index 2e671423b5..6a992d7079 100644 --- a/keyboards/fjlabs/kyuu/keymaps/default/keymap.c +++ b/keyboards/fjlabs/kyuu/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker_badge( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/kyuu/keymaps/via/keymap.c b/keyboards/fjlabs/kyuu/keymaps/via/keymap.c index 2a97513b38..93595800a6 100644 --- a/keyboards/fjlabs/kyuu/keymaps/via/keymap.c +++ b/keyboards/fjlabs/kyuu/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker_badge( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/ldk65/keymaps/default/keymap.c b/keyboards/fjlabs/ldk65/keymaps/default/keymap.c index 8d2c13f3b0..76cdcca6db 100644 --- a/keyboards/fjlabs/ldk65/keymaps/default/keymap.c +++ b/keyboards/fjlabs/ldk65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/ldk65/keymaps/via/keymap.c b/keyboards/fjlabs/ldk65/keymaps/via/keymap.c index 839991f0f0..39ac00f72e 100644 --- a/keyboards/fjlabs/ldk65/keymaps/via/keymap.c +++ b/keyboards/fjlabs/ldk65/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/fjlabs/midway60/keymaps/default/keymap.c b/keyboards/fjlabs/midway60/keymaps/default/keymap.c index 47545e925a..b815b7b52c 100644 --- a/keyboards/fjlabs/midway60/keymaps/default/keymap.c +++ b/keyboards/fjlabs/midway60/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/midway60/keymaps/via/keymap.c b/keyboards/fjlabs/midway60/keymaps/via/keymap.c index cd83e23a58..58be322b02 100644 --- a/keyboards/fjlabs/midway60/keymaps/via/keymap.c +++ b/keyboards/fjlabs/midway60/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/mk61rgbansi/keymaps/default/keymap.c b/keyboards/fjlabs/mk61rgbansi/keymaps/default/keymap.c index 7873f0e5e5..17efef452e 100644 --- a/keyboards/fjlabs/mk61rgbansi/keymaps/default/keymap.c +++ b/keyboards/fjlabs/mk61rgbansi/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/mk61rgbansi/keymaps/via/keymap.c b/keyboards/fjlabs/mk61rgbansi/keymaps/via/keymap.c index 2e4dac7fc2..d067dacf88 100644 --- a/keyboards/fjlabs/mk61rgbansi/keymaps/via/keymap.c +++ b/keyboards/fjlabs/mk61rgbansi/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/polaris/keymaps/default/keymap.c b/keyboards/fjlabs/polaris/keymaps/default/keymap.c index 63db51de27..1631d8e611 100644 --- a/keyboards/fjlabs/polaris/keymaps/default/keymap.c +++ b/keyboards/fjlabs/polaris/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/polaris/keymaps/via/keymap.c b/keyboards/fjlabs/polaris/keymaps/via/keymap.c index f1d6bccfd1..16f362f4ab 100644 --- a/keyboards/fjlabs/polaris/keymaps/via/keymap.c +++ b/keyboards/fjlabs/polaris/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/ready100/keymaps/default/keymap.c b/keyboards/fjlabs/ready100/keymaps/default/keymap.c index bd2ad55d39..0c2f091639 100644 --- a/keyboards/fjlabs/ready100/keymaps/default/keymap.c +++ b/keyboards/fjlabs/ready100/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_64_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/ready100/keymaps/via/keymap.c b/keyboards/fjlabs/ready100/keymaps/via/keymap.c index 4ea0c54766..10a837e678 100644 --- a/keyboards/fjlabs/ready100/keymaps/via/keymap.c +++ b/keyboards/fjlabs/ready100/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_64_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf60ansi/keymaps/default/keymap.c b/keyboards/fjlabs/tf60ansi/keymaps/default/keymap.c index 7873f0e5e5..17efef452e 100644 --- a/keyboards/fjlabs/tf60ansi/keymaps/default/keymap.c +++ b/keyboards/fjlabs/tf60ansi/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf60ansi/keymaps/via/keymap.c b/keyboards/fjlabs/tf60ansi/keymaps/via/keymap.c index 2e4dac7fc2..d067dacf88 100644 --- a/keyboards/fjlabs/tf60ansi/keymaps/via/keymap.c +++ b/keyboards/fjlabs/tf60ansi/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf60v2/keymaps/default/keymap.c b/keyboards/fjlabs/tf60v2/keymaps/default/keymap.c index a725021a1c..ce1ac29257 100644 --- a/keyboards/fjlabs/tf60v2/keymaps/default/keymap.c +++ b/keyboards/fjlabs/tf60v2/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_arrow( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf60v2/keymaps/via/keymap.c b/keyboards/fjlabs/tf60v2/keymaps/via/keymap.c index 5937f59e26..a41cbc2093 100644 --- a/keyboards/fjlabs/tf60v2/keymaps/via/keymap.c +++ b/keyboards/fjlabs/tf60v2/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi_arrow( KC_GESC, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf65rgbv2/keymaps/default/keymap.c b/keyboards/fjlabs/tf65rgbv2/keymaps/default/keymap.c index 96c2351e89..08a6086139 100644 --- a/keyboards/fjlabs/tf65rgbv2/keymaps/default/keymap.c +++ b/keyboards/fjlabs/tf65rgbv2/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fjlabs/tf65rgbv2/keymaps/via/keymap.c b/keyboards/fjlabs/tf65rgbv2/keymaps/via/keymap.c index 3e071bd079..89576787ff 100644 --- a/keyboards/fjlabs/tf65rgbv2/keymaps/via/keymap.c +++ b/keyboards/fjlabs/tf65rgbv2/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/fleuron/keymaps/default/keymap.c b/keyboards/fleuron/keymaps/default/keymap.c index c33f4ea4f8..5d24ba5cb8 100644 --- a/keyboards/fleuron/keymaps/default/keymap.c +++ b/keyboards/fleuron/keymaps/default/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT_ortho_6x16( /* Lower * ,---------------------------------------------------------------------------------------------------------------. - * |RESET | | | | | | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------+------+------+------+------| @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |RGBtog| | | | | | | | Home | PgUp | PgDn | End | | | | | * `---------------------------------------------------------------------------------------------------------------' */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UNDS, KC_PLUS, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/flx/virgo/keymaps/default/keymap.c b/keyboards/flx/virgo/keymaps/default/keymap.c index 1384b91db0..4b7cfe60d1 100644 --- a/keyboards/flx/virgo/keymaps/default/keymap.c +++ b/keyboards/flx/virgo/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( 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, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/flx/virgo/keymaps/via/keymap.c b/keyboards/flx/virgo/keymaps/via/keymap.c index c10f3751ec..3599952579 100644 --- a/keyboards/flx/virgo/keymaps/via/keymap.c +++ b/keyboards/flx/virgo/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( 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, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/flygone60/rev3/keymaps/default/keymap.c b/keyboards/flygone60/rev3/keymaps/default/keymap.c index ab6b2a9f01..af47e68c53 100644 --- a/keyboards/flygone60/rev3/keymaps/default/keymap.c +++ b/keyboards/flygone60/rev3/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_60_ansi_arrow( KC_GRAVE, 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_DELETE, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, SHILL, XXXXXXX, FRACNO, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NUT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/flygone60/rev3/keymaps/via/keymap.c b/keyboards/flygone60/rev3/keymaps/via/keymap.c index 309c873356..fa631016fa 100644 --- a/keyboards/flygone60/rev3/keymaps/via/keymap.c +++ b/keyboards/flygone60/rev3/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_1] = LAYOUT_60_ansi_arrow( KC_GRAVE, 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_DELETE, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, SHILL, XXXXXXX, FRACNO, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, NUT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX diff --git a/keyboards/for_science/keymaps/default/keymap.c b/keyboards/for_science/keymaps/default/keymap.c index 918f60f4b8..7da986a029 100644 --- a/keyboards/for_science/keymaps/default/keymap.c +++ b/keyboards/for_science/keymaps/default/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNCT] = LAYOUT_split_4x5_3( - RESET, _______, _______, _______, LOCK, MAC_LCK, _______, _______, _______, MAGIC_SWAP_LALT_LGUI, + QK_BOOT, _______, _______, _______, LOCK, MAC_LCK, _______, _______, _______, MAGIC_SWAP_LALT_LGUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/forever65/keymaps/via/keymap.c b/keyboards/forever65/keymaps/via/keymap.c index 3ced93f3e0..ee4b57e664 100644 --- a/keyboards/forever65/keymaps/via/keymap.c +++ b/keyboards/forever65/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/fortitude60/keymaps/default/keymap.c b/keyboards/fortitude60/keymaps/default/keymap.c index 0e6d8cc553..964cee9b95 100644 --- a/keyboards/fortitude60/keymaps/default/keymap.c +++ b/keyboards/fortitude60/keymaps/default/keymap.c @@ -148,7 +148,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_BSPC, + _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_BSPC, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, BL_TOGG, BL_STEP, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/fortitude60/keymaps/via/keymap.c b/keyboards/fortitude60/keymaps/via/keymap.c index 74d4b9fcc9..feda619041 100644 --- a/keyboards/fortitude60/keymaps/via/keymap.c +++ b/keyboards/fortitude60/keymaps/via/keymap.c @@ -118,7 +118,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_BSPC, + _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_BSPC, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/foxlab/key65/hotswap/keymaps/default/keymap.c b/keyboards/foxlab/key65/hotswap/keymaps/default/keymap.c index 956b7ac2ee..486e1178e7 100644 --- a/keyboards/foxlab/key65/hotswap/keymaps/default/keymap.c +++ b/keyboards/foxlab/key65/hotswap/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/key65/hotswap/keymaps/via/keymap.c b/keyboards/foxlab/key65/hotswap/keymaps/via/keymap.c index 9bc43b766e..9689e586d1 100644 --- a/keyboards/foxlab/key65/hotswap/keymaps/via/keymap.c +++ b/keyboards/foxlab/key65/hotswap/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/key65/universal/keymaps/default/keymap.c b/keyboards/foxlab/key65/universal/keymaps/default/keymap.c index 9c2071f01a..ffa53ccb0a 100644 --- a/keyboards/foxlab/key65/universal/keymaps/default/keymap.c +++ b/keyboards/foxlab/key65/universal/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/key65/universal/keymaps/via/keymap.c b/keyboards/foxlab/key65/universal/keymaps/via/keymap.c index 8d44f2c461..d9050fdca3 100644 --- a/keyboards/foxlab/key65/universal/keymaps/via/keymap.c +++ b/keyboards/foxlab/key65/universal/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/leaf60/hotswap/keymaps/default/keymap.c b/keyboards/foxlab/leaf60/hotswap/keymaps/default/keymap.c index f2f5f0c973..5e3ed8c1ea 100644 --- a/keyboards/foxlab/leaf60/hotswap/keymaps/default/keymap.c +++ b/keyboards/foxlab/leaf60/hotswap/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL), LAYOUT_60_tsangan_hhkb( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_DEC, 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, 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, diff --git a/keyboards/foxlab/leaf60/hotswap/keymaps/via/keymap.c b/keyboards/foxlab/leaf60/hotswap/keymaps/via/keymap.c index 14d8200455..83cb422dc0 100644 --- a/keyboards/foxlab/leaf60/hotswap/keymaps/via/keymap.c +++ b/keyboards/foxlab/leaf60/hotswap/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RALT, KC_RCTL), LAYOUT_60_tsangan_hhkb( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_DEC, 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, 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, diff --git a/keyboards/foxlab/leaf60/universal/keymaps/default/keymap.c b/keyboards/foxlab/leaf60/universal/keymaps/default/keymap.c index 3f823ba04e..2a032bf3cb 100644 --- a/keyboards/foxlab/leaf60/universal/keymaps/default/keymap.c +++ b/keyboards/foxlab/leaf60/universal/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL), LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_DEC, 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, 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, diff --git a/keyboards/foxlab/leaf60/universal/keymaps/via/keymap.c b/keyboards/foxlab/leaf60/universal/keymaps/via/keymap.c index c6e40ca4ea..490f563feb 100644 --- a/keyboards/foxlab/leaf60/universal/keymaps/via/keymap.c +++ b/keyboards/foxlab/leaf60/universal/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL), LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, BL_TOGG, BL_DEC, 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, 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, diff --git a/keyboards/foxlab/time80/keymaps/default/keymap.c b/keyboards/foxlab/time80/keymaps/default/keymap.c index eb4facb507..863c9068e9 100644 --- a/keyboards/foxlab/time80/keymaps/default/keymap.c +++ b/keyboards/foxlab/time80/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LALT, KC_LALT, KC_LGUI, XXXXXXX, _______, _______, MO(4), MO(4), XXXXXXX, XXXXXXX, XXXXXXX ), [4] = LAYOUT_all( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, TG(1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/foxlab/time_re/hotswap/keymaps/default/keymap.c b/keyboards/foxlab/time_re/hotswap/keymaps/default/keymap.c index b9250fac4b..c1f960d6e8 100644 --- a/keyboards/foxlab/time_re/hotswap/keymaps/default/keymap.c +++ b/keyboards/foxlab/time_re/hotswap/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), _______, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/time_re/hotswap/keymaps/via/keymap.c b/keyboards/foxlab/time_re/hotswap/keymaps/via/keymap.c index a6236d1942..ddeedb234d 100644 --- a/keyboards/foxlab/time_re/hotswap/keymaps/via/keymap.c +++ b/keyboards/foxlab/time_re/hotswap/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), _______, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/time_re/universal/keymaps/default/keymap.c b/keyboards/foxlab/time_re/universal/keymaps/default/keymap.c index d6d3d8e72c..bc047ccaaa 100644 --- a/keyboards/foxlab/time_re/universal/keymaps/default/keymap.c +++ b/keyboards/foxlab/time_re/universal/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/foxlab/time_re/universal/keymaps/via/keymap.c b/keyboards/foxlab/time_re/universal/keymaps/via/keymap.c index 046225536f..1d49695e5a 100644 --- a/keyboards/foxlab/time_re/universal/keymaps/via/keymap.c +++ b/keyboards/foxlab/time_re/universal/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/fractal/keymaps/default/keymap.c b/keyboards/fractal/keymaps/default/keymap.c index e803bf6785..6b0a8cc18c 100644 --- a/keyboards/fractal/keymaps/default/keymap.c +++ b/keyboards/fractal/keymaps/default/keymap.c @@ -158,7 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/free_willy/keymaps/default/keymap.c b/keyboards/free_willy/keymaps/default/keymap.c index d2b62a3a1c..0801caf412 100644 --- a/keyboards/free_willy/keymaps/default/keymap.c +++ b/keyboards/free_willy/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/frooastboard/nano/keymaps/default/keymap.c b/keyboards/frooastboard/nano/keymaps/default/keymap.c index aa3ed88da2..f5fd6d2c76 100644 --- a/keyboards/frooastboard/nano/keymaps/default/keymap.c +++ b/keyboards/frooastboard/nano/keymaps/default/keymap.c @@ -43,5 +43,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [6] = LAYOUT( KC_TRNS, KC_TRNS, - RESET, TO(5)) + QK_BOOT, TO(5)) }; diff --git a/keyboards/funky40/keymaps/default/keymap.c b/keyboards/funky40/keymaps/default/keymap.c index 7fbdb7f00d..10ecc7602b 100644 --- a/keyboards/funky40/keymaps/default/keymap.c +++ b/keyboards/funky40/keymaps/default/keymap.c @@ -28,5 +28,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_UNDS, KC_PLUS, KC_CAPS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_LBRC, KC_RBRC, - RESET, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_MPLY, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), + QK_BOOT, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_MPLY, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), }; diff --git a/keyboards/gami_studio/lex60/keymaps/default/keymap.c b/keyboards/gami_studio/lex60/keymaps/default/keymap.c index 153089997c..308c93aacf 100644 --- a/keyboards/gami_studio/lex60/keymaps/default/keymap.c +++ b/keyboards/gami_studio/lex60/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, LT(2, KC_ENT), KC_RGUI, KC_RALT, KC_APP, KC_RCTRL), [_FIRMWARE] = LAYOUT( - RESET, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_DEC, BL_TOGG, BL_INC, XXXXXXX, XXXXXXX, TG(1), + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_DEC, BL_TOGG, BL_INC, XXXXXXX, XXXXXXX, TG(1), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/gentleman65/keymaps/default/keymap.c b/keyboards/gentleman65/keymaps/default/keymap.c index 6a4f8a3b7b..9f822c396c 100644 --- a/keyboards/gentleman65/keymaps/default/keymap.c +++ b/keyboards/gentleman65/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_MOD, 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, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, RGB_VAD, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI ), }; diff --git a/keyboards/gentleman65/keymaps/via/keymap.c b/keyboards/gentleman65/keymaps/via/keymap.c index 0c76935c3f..c965b0bf21 100644 --- a/keyboards/gentleman65/keymaps/via/keymap.c +++ b/keyboards/gentleman65/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_MOD, 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, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, RGB_VAD, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI ), [2] = LAYOUT_all( diff --git a/keyboards/ggkeyboards/genesis/hotswap/keymaps/default/keymap.c b/keyboards/ggkeyboards/genesis/hotswap/keymaps/default/keymap.c index afe94141ec..dec4b81893 100644 --- a/keyboards/ggkeyboards/genesis/hotswap/keymaps/default/keymap.c +++ b/keyboards/ggkeyboards/genesis/hotswap/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ggkeyboards/genesis/hotswap/keymaps/via/keymap.c b/keyboards/ggkeyboards/genesis/hotswap/keymaps/via/keymap.c index 5647447a80..96be07d7a9 100644 --- a/keyboards/ggkeyboards/genesis/hotswap/keymaps/via/keymap.c +++ b/keyboards/ggkeyboards/genesis/hotswap/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ggkeyboards/genesis/solder/keymaps/default/keymap.c b/keyboards/ggkeyboards/genesis/solder/keymaps/default/keymap.c index 4e7a2fd1fc..5b5a39c8e3 100644 --- a/keyboards/ggkeyboards/genesis/solder/keymaps/default/keymap.c +++ b/keyboards/ggkeyboards/genesis/solder/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ggkeyboards/genesis/solder/keymaps/via/keymap.c b/keyboards/ggkeyboards/genesis/solder/keymaps/via/keymap.c index 1d22fbe318..a64435a162 100644 --- a/keyboards/ggkeyboards/genesis/solder/keymaps/via/keymap.c +++ b/keyboards/ggkeyboards/genesis/solder/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/gh60/revc/keymaps/via/keymap.c b/keyboards/gh60/revc/keymaps/via/keymap.c index 653636c732..53f47514ad 100644 --- a/keyboards/gh60/revc/keymaps/via/keymap.c +++ b/keyboards/gh60/revc/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* 1: fn */ 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_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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 diff --git a/keyboards/gh60/satan/keymaps/default/keymap.c b/keyboards/gh60/satan/keymaps/default/keymap.c index 8146b87954..b5c1284ecc 100644 --- a/keyboards/gh60/satan/keymaps/default/keymap.c +++ b/keyboards/gh60/satan/keymaps/default/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' */ [_FL] = LAYOUT_60_ansi( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gh60/satan/keymaps/via/keymap.c b/keyboards/gh60/satan/keymaps/via/keymap.c index c9c6acf681..c571008346 100644 --- a/keyboards/gh60/satan/keymaps/via/keymap.c +++ b/keyboards/gh60/satan/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* 1: fn */ 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_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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 diff --git a/keyboards/gh60/v1p3/keymaps/default/keymap.c b/keyboards/gh60/v1p3/keymaps/default/keymap.c index 003606d40f..2c22b489b8 100644 --- a/keyboards/gh60/v1p3/keymaps/default/keymap.c +++ b/keyboards/gh60/v1p3/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO, 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_NO, KC_NO, KC_NO, KC_NO, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_SPI, RGB_SPD, KC_PSCR, KC_SLCK, KC_PAUS, KC_NO, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT, RGB_VAI, RGB_SAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, - KC_NO, KC_NO, RESET, BL_DEC, BL_ON, BL_INC, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_END, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, QK_BOOT, BL_DEC, BL_ON, BL_INC, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_END, KC_PGDN, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ), }; diff --git a/keyboards/gh60/v1p3/keymaps/default_ansi/keymap.c b/keyboards/gh60/v1p3/keymaps/default_ansi/keymap.c index 82fb774eff..60c8c11656 100644 --- a/keyboards/gh60/v1p3/keymaps/default_ansi/keymap.c +++ b/keyboards/gh60/v1p3/keymaps/default_ansi/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GRV, 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, - _______, _______, _______, _______, RESET, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SLCK, KC_PAUS, + _______, _______, _______, _______, QK_BOOT, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/gh60/v1p3/keymaps/default_ansi/readme.md b/keyboards/gh60/v1p3/keymaps/default_ansi/readme.md index 7552e3d046..873907bed9 100644 --- a/keyboards/gh60/v1p3/keymaps/default_ansi/readme.md +++ b/keyboards/gh60/v1p3/keymaps/default_ansi/readme.md @@ -18,7 +18,7 @@ | `Fn` + `-` | `F11` | | `Fn` + `=` | `F12` | | `Fn` + `Backspace` | `Delete` | -| `Fn` + `R` | `RESET` | +| `Fn` + `R` | `QK_BOOT` | | `Fn` + `I` | `Up` | | `Fn` + `J` | `Left` | | `Fn` + `K` | `Down` | diff --git a/keyboards/ghs/rar/keymaps/via/keymap.c b/keyboards/ghs/rar/keymaps/via/keymap.c index 991c482084..8fc2a97bb9 100644 --- a/keyboards/ghs/rar/keymaps/via/keymap.c +++ b/keyboards/ghs/rar/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_NO, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, diff --git a/keyboards/gkeyboard/gkb_m16/keymaps/default/keymap.c b/keyboards/gkeyboard/gkb_m16/keymaps/default/keymap.c index 4fcde1b55c..d0aefd4b44 100644 --- a/keyboards/gkeyboard/gkb_m16/keymaps/default/keymap.c +++ b/keyboards/gkeyboard/gkb_m16/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN2] = LAYOUT_ortho_4x4( RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, RGB_TOG, _______, QMKBEST, QMKURL ) diff --git a/keyboards/gkeyboard/gkb_m16/keymaps/via/keymap.c b/keyboards/gkeyboard/gkb_m16/keymaps/via/keymap.c index 7d43c33082..e31679485b 100644 --- a/keyboards/gkeyboard/gkb_m16/keymaps/via/keymap.c +++ b/keyboards/gkeyboard/gkb_m16/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_VOLD, KC_MUTE, KC_MNXT ), [1] = LAYOUT_ortho_4x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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 diff --git a/keyboards/gl516/a52gl/keymaps/default/keymap.c b/keyboards/gl516/a52gl/keymaps/default/keymap.c index adcf71879d..ae6ea53887 100644 --- a/keyboards/gl516/a52gl/keymaps/default/keymap.c +++ b/keyboards/gl516/a52gl/keymaps/default/keymap.c @@ -39,7 +39,7 @@ LT(_FN,KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J ), [_FN] = LAYOUT( //,-----------------------------------------------------| |--------------------------------------------------------------. - 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, _______, + QK_BOOT, 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gl516/a52gl/keymaps/via/keymap.c b/keyboards/gl516/a52gl/keymaps/via/keymap.c index 77386f8a25..66c5dacdec 100644 --- a/keyboards/gl516/a52gl/keymaps/via/keymap.c +++ b/keyboards/gl516/a52gl/keymaps/via/keymap.c @@ -31,7 +31,7 @@ LT(1,KC_CAPS), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J ), [1] = LAYOUT( //,-----------------------------------------------------| |--------------------------------------------------------------. - 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, _______, + QK_BOOT, 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gl516/j73gl/keymaps/default/keymap.c b/keyboards/gl516/j73gl/keymaps/default/keymap.c index c549e6b574..bf149ce652 100644 --- a/keyboards/gl516/j73gl/keymaps/default/keymap.c +++ b/keyboards/gl516/j73gl/keymaps/default/keymap.c @@ -42,7 +42,7 @@ LT(_FN,JP_ZKHK), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, ), [_FN] = LAYOUT( //,-----------------------------------------------------+--------------------------------------------------------------------------------. - 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, _______, KC_DEL, KC_PSCR, + QK_BOOT, 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_PSCR, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gl516/j73gl/keymaps/via/keymap.c b/keyboards/gl516/j73gl/keymaps/via/keymap.c index 942775e4b0..0feb67e635 100644 --- a/keyboards/gl516/j73gl/keymaps/via/keymap.c +++ b/keyboards/gl516/j73gl/keymaps/via/keymap.c @@ -34,7 +34,7 @@ LT(1,JP_ZKHK), KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, ), [1] = LAYOUT( //,-----------------------------------------------------+--------------------------------------------------------------------------------. - 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, _______, KC_DEL, KC_PSCR, + QK_BOOT, 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_PSCR, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gl516/n51gl/keymaps/default/keymap.c b/keyboards/gl516/n51gl/keymaps/default/keymap.c index 469626d851..4104c7caf8 100644 --- a/keyboards/gl516/n51gl/keymaps/default/keymap.c +++ b/keyboards/gl516/n51gl/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT( //,--------------------------------------------------------------| |--------------------------------------------------------------. - _______, 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, + _______, QK_BOOT, 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gl516/n51gl/keymaps/via/keymap.c b/keyboards/gl516/n51gl/keymaps/via/keymap.c index 3ad85edcba..a44392124c 100644 --- a/keyboards/gl516/n51gl/keymaps/via/keymap.c +++ b/keyboards/gl516/n51gl/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_rotary_layer( //,--------------------------------------------------------------| |--------------------------------------------------------------. - _______, 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, + _______, QK_BOOT, 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_1, KC_2, KC_3, KC_4, KC_5, _______, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c index 0d161e5bdd..91f29f8d62 100644 --- a/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/ansi/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI // if that's your preference. @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI diff --git a/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c b/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c index d50bbfbf56..1f59b52999 100644 --- a/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/ansi/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI // if that's your preference. @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_RMOD, RGB_SPI diff --git a/keyboards/gmmk/pro/iso/keymaps/default/keymap.c b/keyboards/gmmk/pro/iso/keymaps/default/keymap.c index 3bdacda6c8..0aedb78285 100644 --- a/keyboards/gmmk/pro/iso/keymaps/default/keymap.c +++ b/keyboards/gmmk/pro/iso/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI // if that's your preference. @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, diff --git a/keyboards/gmmk/pro/iso/keymaps/via/keymap.c b/keyboards/gmmk/pro/iso/keymaps/via/keymap.c index 880785ebbe..7d0693c18c 100644 --- a/keyboards/gmmk/pro/iso/keymaps/via/keymap.c +++ b/keyboards/gmmk/pro/iso/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Ct_L Win_L Alt_L SPACE Alt_R FN Ct_R Left Down Right - // The FN key by default maps to a momentary toggle to layer 1 to provide access to the RESET key (to put the board into bootloader mode). Without + // The FN key by default maps to a momentary toggle to layer 1 to provide access to the QK_BOOT key (to put the board into bootloader mode). Without // this mapping, you have to open the case to hit the button on the bottom of the PCB (near the USB cable attachment) while plugging in the USB // cable to get the board into bootloader mode - definitely not fun when you're working on your QMK builds. Remove this and put it back to KC_RGUI // if that's your preference. @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, KC_MYCM, KC_WHOM, KC_CALC, KC_MSEL, KC_MPRV, KC_MNXT, KC_MPLY, KC_MSTP, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, - _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, RGB_MOD, _______, diff --git a/keyboards/gon/nerd60/keymaps/default/keymap.c b/keyboards/gon/nerd60/keymaps/default/keymap.c index a5cec81ef4..50e337f77a 100644 --- a/keyboards/gon/nerd60/keymaps/default/keymap.c +++ b/keyboards/gon/nerd60/keymaps/default/keymap.c @@ -10,11 +10,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL ), - [1] = LAYOUT_all( /* System layer to have access to RESET button */ + [1] = LAYOUT_all( /* System layer to have access to QK_BOOT button */ KC_GRV, 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_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL, _______, _______, _______, KC_APP, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/gon/nerd60/keymaps/via/keymap.c b/keyboards/gon/nerd60/keymaps/via/keymap.c index 96b563db34..073c741b17 100644 --- a/keyboards/gon/nerd60/keymaps/via/keymap.c +++ b/keyboards/gon/nerd60/keymaps/via/keymap.c @@ -26,12 +26,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL ), - [1] = LAYOUT_all( /* System layer to have access to RESET button */ + [1] = LAYOUT_all( /* System layer to have access to QK_BOOT button */ KC_GRV, 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_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, KC_DEL, _______, _______, _______, KC_APP, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( diff --git a/keyboards/gon/nerdtkl/keymaps/default/keymap.c b/keyboards/gon/nerdtkl/keymaps/default/keymap.c index a05a7126c5..9168b36aaf 100644 --- a/keyboards/gon/nerdtkl/keymaps/default/keymap.c +++ b/keyboards/gon/nerdtkl/keymaps/default/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_tkl( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/gowla/keymaps/default/keymap.c b/keyboards/gowla/keymaps/default/keymap.c index 326c8f0e91..c7206868bf 100644 --- a/keyboards/gowla/keymaps/default/keymap.c +++ b/keyboards/gowla/keymaps/default/keymap.c @@ -7,7 +7,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ortho_3x3( - KC_ESC, KC_MPLY, RESET, + KC_ESC, KC_MPLY, QK_BOOT, KC_P7, KC_P1, KC_F1, KC_F2, KC_F3, KC_F4 ) diff --git a/keyboards/gray_studio/apollo80/keymaps/default/keymap.c b/keyboards/gray_studio/apollo80/keymaps/default/keymap.c index b4eb52630e..ba0fd63110 100644 --- a/keyboards/gray_studio/apollo80/keymaps/default/keymap.c +++ b/keyboards/gray_studio/apollo80/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/apollo80/keymaps/via/keymap.c b/keyboards/gray_studio/apollo80/keymaps/via/keymap.c index 27f0a2c2c0..bb2870f189 100644 --- a/keyboards/gray_studio/apollo80/keymaps/via/keymap.c +++ b/keyboards/gray_studio/apollo80/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/cod67/keymaps/via/keymap.c b/keyboards/gray_studio/cod67/keymaps/via/keymap.c index 5a3251e5b4..12ffe56244 100644 --- a/keyboards/gray_studio/cod67/keymaps/via/keymap.c +++ b/keyboards/gray_studio/cod67/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_TOG, RGB_MOD,RGB_RMOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/hb85/keymaps/default/keymap.c b/keyboards/gray_studio/hb85/keymaps/default/keymap.c index cac6440bf0..9ce6ec434d 100644 --- a/keyboards/gray_studio/hb85/keymaps/default/keymap.c +++ b/keyboards/gray_studio/hb85/keymaps/default/keymap.c @@ -36,7 +36,7 @@ KC_LSFT, KC_NO , KC_Z , KC_Z , KC_X , KC_V , KC_B , KC_N , KC_M , ), [_CTRL] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/hb85/keymaps/via/keymap.c b/keyboards/gray_studio/hb85/keymaps/via/keymap.c index febf4715b8..5e1693a516 100644 --- a/keyboards/gray_studio/hb85/keymaps/via/keymap.c +++ b/keyboards/gray_studio/hb85/keymaps/via/keymap.c @@ -28,7 +28,7 @@ KC_LSFT, KC_NO , KC_Z , KC_Z , KC_X , KC_V , KC_B , KC_N , KC_M , ), [1] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/space65/keymaps/iso/keymap.c b/keyboards/gray_studio/space65/keymaps/iso/keymap.c index a1f8af01b2..3c6b66530a 100644 --- a/keyboards/gray_studio/space65/keymaps/iso/keymap.c +++ b/keyboards/gray_studio/space65/keymaps/iso/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * │ │ │ │ │ │ │ │ │ │ │ * └────┴────┴────┴────────────────────────┴────┴────┘ └───┴───┴───┘ */ - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, RGB_M_P, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/space65/keymaps/via/keymap.c b/keyboards/gray_studio/space65/keymaps/via/keymap.c index e621685e1a..0398f8116b 100644 --- a/keyboards/gray_studio/space65/keymaps/via/keymap.c +++ b/keyboards/gray_studio/space65/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/think65/hotswap/keymaps/default/keymap.c b/keyboards/gray_studio/think65/hotswap/keymaps/default/keymap.c index ea9146dcf6..7182bd512e 100644 --- a/keyboards/gray_studio/think65/hotswap/keymaps/default/keymap.c +++ b/keyboards/gray_studio/think65/hotswap/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/think65/hotswap/keymaps/via/keymap.c b/keyboards/gray_studio/think65/hotswap/keymaps/via/keymap.c index 5079ca5551..22b29a1672 100644 --- a/keyboards/gray_studio/think65/hotswap/keymaps/via/keymap.c +++ b/keyboards/gray_studio/think65/hotswap/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/think65/solder/keymaps/default/keymap.c b/keyboards/gray_studio/think65/solder/keymaps/default/keymap.c index ea9146dcf6..7182bd512e 100644 --- a/keyboards/gray_studio/think65/solder/keymaps/default/keymap.c +++ b/keyboards/gray_studio/think65/solder/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/gray_studio/think65/solder/keymaps/via/keymap.c b/keyboards/gray_studio/think65/solder/keymaps/via/keymap.c index 0dbe44c872..8f08cfe070 100644 --- a/keyboards/gray_studio/think65/solder/keymaps/via/keymap.c +++ b/keyboards/gray_studio/think65/solder/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/hadron/ver2/keymaps/default/keymap.c b/keyboards/hadron/ver2/keymaps/default/keymap.c index 96aced2043..cf8ca10a0a 100644 --- a/keyboards/hadron/ver2/keymaps/default/keymap.c +++ b/keyboards/hadron/ver2/keymaps/default/keymap.c @@ -187,7 +187,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, _______, _______, _______, _______, _______, KC_DEL, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, _______, _______, AG_SWAP, QWERTY, COLEMAK, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, BL_DEC, BL_INC, BL_STEP, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/hadron/ver3/keymaps/default/keymap.c b/keyboards/hadron/ver3/keymaps/default/keymap.c index 030f767434..3eb0e59fc5 100644 --- a/keyboards/hadron/ver3/keymaps/default/keymap.c +++ b/keyboards/hadron/ver3/keymaps/default/keymap.c @@ -182,7 +182,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------------------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - RESET, HPT_TOG, HPT_FBK, HPT_MODI, HPT_MODD, HPT_RST , _______, _______, _______, _______, _______, EEP_RST, + QK_BOOT, HPT_TOG, HPT_FBK, HPT_MODI, HPT_MODD, HPT_RST , _______, _______, _______, _______, _______, EEP_RST, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, _______, _______, AG_SWAP, QWERTY, COLEMAK, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, BL_DEC, BL_INC, BL_STEP, BL_TOGG, diff --git a/keyboards/han60/keymaps/default/keymap.c b/keyboards/han60/keymaps/default/keymap.c index ef75bc8c88..4b80f8258c 100644 --- a/keyboards/han60/keymaps/default/keymap.c +++ b/keyboards/han60/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* FN */ [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, + QK_BOOT, 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_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_UP, 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_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/han60/keymaps/via/keymap.c b/keyboards/han60/keymaps/via/keymap.c index 1e3aee8fd0..64a8046a1b 100644 --- a/keyboards/han60/keymaps/via/keymap.c +++ b/keyboards/han60/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* LAYER 2 */ [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, + QK_BOOT, 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_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_UP, 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_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/handwired/3dfoxc/keymaps/default/keymap.c b/keyboards/handwired/3dfoxc/keymaps/default/keymap.c index aaed418709..c4ea6fbcc5 100644 --- a/keyboards/handwired/3dfoxc/keymaps/default/keymap.c +++ b/keyboards/handwired/3dfoxc/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `--------------------------------------------------''-----------' */ [_FL] = LAYOUT( - _______, 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, _______, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, KC_DEL, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, KC_PGUP, KC_END, diff --git a/keyboards/handwired/3dp660/keymaps/default/keymap.c b/keyboards/handwired/3dp660/keymaps/default/keymap.c index e9eee115eb..a1f89308ef 100644 --- a/keyboards/handwired/3dp660/keymaps/default/keymap.c +++ b/keyboards/handwired/3dp660/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_66_ansi( - RESET, 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, + QK_BOOT, 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, 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_VOLU, diff --git a/keyboards/handwired/3dp660/keymaps/via/keymap.c b/keyboards/handwired/3dp660/keymaps/via/keymap.c index b39eabe49f..8383e4f356 100644 --- a/keyboards/handwired/3dp660/keymaps/via/keymap.c +++ b/keyboards/handwired/3dp660/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_66_ansi( - RESET, 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, + QK_BOOT, 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, 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_VOLU, diff --git a/keyboards/handwired/412_64/keymaps/default/keymap.c b/keyboards/handwired/412_64/keymaps/default/keymap.c index ac8f47bd06..34c6865aba 100644 --- a/keyboards/handwired/412_64/keymaps/default/keymap.c +++ b/keyboards/handwired/412_64/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_LOWER] = LAYOUT_ortho_4x16( - KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, _______, _______, RESET, + KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, _______, _______, QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, _______, _______, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______ diff --git a/keyboards/handwired/6macro/keymaps/default/keymap.c b/keyboards/handwired/6macro/keymaps/default/keymap.c index 1c6b91a7d3..26c6f84dcd 100644 --- a/keyboards/handwired/6macro/keymaps/default/keymap.c +++ b/keyboards/handwired/6macro/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------. * |RGB_TOG|RGBMOD+| | * |-------+-------+-------| - * |RGBHUE+|RGBBRI+|Spec FN| Hold along with previous to access special funtions (RESET) + * |RGBHUE+|RGBBRI+|Spec FN| Hold along with previous to access special funtions (QK_BOOT) * `-------+-------+-------' */ [1] = LAYOUT( @@ -43,13 +43,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* LAYER 2 * ,-----------------------. - * | RESET |RGBMOD-| | + * | QK_BOOT |RGBMOD-| | * |-------+-------+-------| * |RGBHUE-|RGBBRI-| | * `-------+-------+-------' */ [2] = LAYOUT( - RESET, RGB_RMOD, KC_NO, + QK_BOOT, RGB_RMOD, KC_NO, RGB_HUD, RGB_VAD, KC_TRNS ) diff --git a/keyboards/handwired/aek64/keymaps/default/keymap.c b/keyboards/handwired/aek64/keymaps/default/keymap.c index 9ddb156914..ad27f8fa39 100644 --- a/keyboards/handwired/aek64/keymaps/default/keymap.c +++ b/keyboards/handwired/aek64/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LALT(KC_F4), KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_F11 , KC_F12 , _______, _______ , _______ , _______ , _______ , _______ , _______, LCTL(KC_A), KC_HOME, KC_UP , KC_END , _______ , _______ , _______ , _______ , _______ , LSFT(KC_DEL), LCTL(KC_INS), LSFT(KC_INS), KC_DEL , KC_DEL , KC_LEFT, KC_DOWN, KC_RIGHT, _______ , _______ , _______ , _______, - _______ , _______ , KC_MUTE , KC_VOLD , KC_VOLU , _______, _______ , _______, _______, _______ , _______ , RESET , _______ , + _______ , _______ , KC_MUTE , KC_VOLD , KC_VOLU , _______, _______ , _______, _______, _______ , _______ , QK_BOOT , _______ , _______ , _______ , _______ , _______, _______ , _______ , _______ ) }; diff --git a/keyboards/handwired/amigopunk/keymaps/default/keymap.c b/keyboards/handwired/amigopunk/keymaps/default/keymap.c index 3a64958fad..ce8fe2cc44 100644 --- a/keyboards/handwired/amigopunk/keymaps/default/keymap.c +++ b/keyboards/handwired/amigopunk/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_LALT, KC_SPC, XXXXXXX, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, KC_PSCR, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, diff --git a/keyboards/handwired/aranck/keymaps/default/keymap.c b/keyboards/handwired/aranck/keymaps/default/keymap.c index 206d23b6af..13c778bf9c 100644 --- a/keyboards/handwired/aranck/keymaps/default/keymap.c +++ b/keyboards/handwired/aranck/keymaps/default/keymap.c @@ -154,7 +154,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/arrow_pad/keymaps/default/keymap.c b/keyboards/handwired/arrow_pad/keymaps/default/keymap.c index caee60d6ae..df1e550ea2 100644 --- a/keyboards/handwired/arrow_pad/keymaps/default/keymap.c +++ b/keyboards/handwired/arrow_pad/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, - RESET, _______, _______, _______ ), + QK_BOOT, _______, _______, _______ ), }; diff --git a/keyboards/handwired/atreus50/keymaps/default/keymap.c b/keyboards/handwired/atreus50/keymaps/default/keymap.c index 7b18dd5789..68724c0506 100644 --- a/keyboards/handwired/atreus50/keymaps/default/keymap.c +++ b/keyboards/handwired/atreus50/keymaps/default/keymap.c @@ -83,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, + _______, QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c b/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c index 020c70fc21..496b449824 100644 --- a/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c +++ b/keyboards/handwired/baredev/rev1/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [LAYER_FUNCTIONS] = LAYOUT( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */ diff --git a/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c b/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c index 934ca4bed7..00243484b9 100644 --- a/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c +++ b/keyboards/handwired/baredev/rev1/keymaps/via/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [LAYER_FUNCTIONS] = LAYOUT( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┤ */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┤ */ diff --git a/keyboards/handwired/battleship_gamepad/keymaps/default/keymap.c b/keyboards/handwired/battleship_gamepad/keymaps/default/keymap.c index fa71419ff1..e4d110de42 100644 --- a/keyboards/handwired/battleship_gamepad/keymaps/default/keymap.c +++ b/keyboards/handwired/battleship_gamepad/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, LT(1, KC_NO), KC_LCTL, KC_LALT, KC_NO, LT(1, KC_NO), KC_SPC), [1] = LAYOUT( - RESET, DEBUG, KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, + QK_BOOT, DEBUG, KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, 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, diff --git a/keyboards/handwired/battleship_gamepad/keymaps/via/keymap.c b/keyboards/handwired/battleship_gamepad/keymaps/via/keymap.c index 9a70d36b77..6c0cf5b4f1 100644 --- a/keyboards/handwired/battleship_gamepad/keymaps/via/keymap.c +++ b/keyboards/handwired/battleship_gamepad/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, LT(1, KC_NO), KC_LCTL, KC_LALT, LT(2, KC_NO), LT(1, KC_NO), KC_SPC), [1] = LAYOUT( - RESET, DEBUG, KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, + QK_BOOT, DEBUG, KC_TILD, KC_6, KC_7, KC_8, KC_9, KC_0, 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, diff --git a/keyboards/handwired/bdn9_ble/keymaps/default/keymap.c b/keyboards/handwired/bdn9_ble/keymaps/default/keymap.c index 4068421467..4c92dc3dd4 100644 --- a/keyboards/handwired/bdn9_ble/keymaps/default/keymap.c +++ b/keyboards/handwired/bdn9_ble/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ------------------------------------------------------------------------ */ [1] = LAYOUT( - _______, OUT_AUTO, RESET, + _______, OUT_AUTO, QK_BOOT, BL_STEP, OUT_USB, _______, BL_TOGG, OUT_BT, _______ ) diff --git a/keyboards/handwired/bento/keymaps/default/keymap.c b/keyboards/handwired/bento/keymaps/default/keymap.c index dc074c4205..6a4f9e2f61 100644 --- a/keyboards/handwired/bento/keymaps/default/keymap.c +++ b/keyboards/handwired/bento/keymaps/default/keymap.c @@ -30,11 +30,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), /* - | Held: Layer 2 | Home | RESET | + | Held: Layer 2 | Home | QK_BOOT | | Media Previous | End | Media Next | */ [1] = LAYOUT( - _______, KC_HOME, RESET, + _______, KC_HOME, QK_BOOT, KC_MPRV, KC_END , KC_MNXT ), }; diff --git a/keyboards/handwired/bolek/keymaps/default/keymap.c b/keyboards/handwired/bolek/keymaps/default/keymap.c index 31d3ac0456..530e9ff900 100644 --- a/keyboards/handwired/bolek/keymaps/default/keymap.c +++ b/keyboards/handwired/bolek/keymaps/default/keymap.c @@ -27,6 +27,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_EQL, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_MINS, - KC_ESC, KC_SPC, KC_TAB, KC_ENT, KC_BSPC, RESET + KC_ESC, KC_SPC, KC_TAB, KC_ENT, KC_BSPC, QK_BOOT ) }; diff --git a/keyboards/handwired/boss566y/redragon_vara/keymaps/default/keymap.c b/keyboards/handwired/boss566y/redragon_vara/keymaps/default/keymap.c index 569ce187a4..a77645712e 100644 --- a/keyboards/handwired/boss566y/redragon_vara/keymaps/default/keymap.c +++ b/keyboards/handwired/boss566y/redragon_vara/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), MO(2), RGUI_T(KC_APP), KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT_fullsize_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, C(KC_HOME), _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_fullsize_ansi( - RESET, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/boss566y/redragon_vara/keymaps/via/keymap.c b/keyboards/handwired/boss566y/redragon_vara/keymaps/via/keymap.c index 6b10c598bf..da3c0b37e3 100644 --- a/keyboards/handwired/boss566y/redragon_vara/keymaps/via/keymap.c +++ b/keyboards/handwired/boss566y/redragon_vara/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), MO(2), KC_RGUI, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT_fullsize_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CAPS, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_fullsize_ansi( - RESET, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MSTP, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/carpolly/keymaps/default/keymap.c b/keyboards/handwired/carpolly/keymaps/default/keymap.c index 78eb95a77f..7f08aeb588 100644 --- a/keyboards/handwired/carpolly/keymaps/default/keymap.c +++ b/keyboards/handwired/carpolly/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_INS, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_EQL, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_BSLS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RSFT, _______, _______, _______, _______, _______, _______, KC_DEL, KC_INS diff --git a/keyboards/handwired/chiron/keymaps/default/keymap.c b/keyboards/handwired/chiron/keymaps/default/keymap.c index 53c8edeb0a..969cf420c6 100644 --- a/keyboards/handwired/chiron/keymaps/default/keymap.c +++ b/keyboards/handwired/chiron/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_INS, KC_LCTL, /*, */KC_LALT, LGUI_T(KC_SPC), KC_HYPR, KC_HYPR, RGUI_T(KC_SPC), KC_RALT, /*, */KC_LBRC, KC_RBRC, KC_SLSH ), [1] = LAYOUT( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_U, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_WH_U, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, KC_WH_L, KC_MS_U, KC_WH_R, XXXXXXX, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, _______, _______, KC_MUTE, KC_MS_L, KC_MS_D, KC_MS_R, KC_BTN1, KC_BTN2, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, KC_VOLD, XXXXXXX, KC_WH_D, XXXXXXX, KC_BTN3, KC_BTN4, @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX ), [4] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, EEP_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_TOG, _______, _______, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_RMOD, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, diff --git a/keyboards/handwired/ck4x4/keymaps/default/keymap.c b/keyboards/handwired/ck4x4/keymaps/default/keymap.c index 6ff0ef0636..f71537f73f 100644 --- a/keyboards/handwired/ck4x4/keymaps/default/keymap.c +++ b/keyboards/handwired/ck4x4/keymaps/default/keymap.c @@ -21,6 +21,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT(KC_7, KC_8, KC_9, KC_MINUS, KC_4, KC_5, KC_6, KC_PLUS, KC_1, KC_2, KC_3, KC_ENTER, - RESET, KC_NO, KC_NO, KC_NO - ), // test with KC_CAPS, KC_A, RESET + QK_BOOT, KC_NO, KC_NO, KC_NO + ), // test with KC_CAPS, KC_A, QK_BOOT }; diff --git a/keyboards/handwired/co60/keymaps/default/keymap.c b/keyboards/handwired/co60/keymaps/default/keymap.c index 5736e9313d..b5a1c9c500 100644 --- a/keyboards/handwired/co60/keymaps/default/keymap.c +++ b/keyboards/handwired/co60/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(_L2), KC_RCTL ), [_L2] = LAYOUT_60_ansi( /* Base */ - 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, KC_GRV, + QK_BOOT, 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_GRV, _______, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, KC_INSERT, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_HOME, KC_END, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDOWN, _______, diff --git a/keyboards/handwired/colorlice/keymaps/default/keymap.c b/keyboards/handwired/colorlice/keymaps/default/keymap.c index e94aeaae4e..2360c7d46e 100644 --- a/keyboards/handwired/colorlice/keymaps/default/keymap.c +++ b/keyboards/handwired/colorlice/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_alice_split_bs( _______, _______, 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_DEL, _______, _______, _______, KC_UP, _______, _______, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD , _______, _______, - _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/handwired/concertina/64key/keymaps/default/keymap.c b/keyboards/handwired/concertina/64key/keymaps/default/keymap.c index e8425824fb..ae6c910cdd 100644 --- a/keyboards/handwired/concertina/64key/keymaps/default/keymap.c +++ b/keyboards/handwired/concertina/64key/keymaps/default/keymap.c @@ -87,7 +87,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F12, KC_F1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_F10, KC_F11, _______, KC_1, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_APP, KC_0, PASTE, - KC_INS, KC_EXLM, KC_BTN1, KC_BTN3, KC_BTN2, KC_MS_L, KC_MS_U, KC_MS_R, KC_PSCR, RESET, + KC_INS, KC_EXLM, KC_BTN1, KC_BTN3, KC_BTN2, KC_MS_L, KC_MS_U, KC_MS_R, KC_PSCR, QK_BOOT, LAYER_G, KC_MS_D ) }; diff --git a/keyboards/handwired/croxsplit44/keymaps/default/keymap.c b/keyboards/handwired/croxsplit44/keymaps/default/keymap.c index 7b3805ad63..2cd376e0d7 100644 --- a/keyboards/handwired/croxsplit44/keymaps/default/keymap.c +++ b/keyboards/handwired/croxsplit44/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_TAB, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_UP, KC_RGHT, KC_ENT, + KC_TAB, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_UP, KC_RGHT, KC_ENT, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), }; \ No newline at end of file diff --git a/keyboards/handwired/croxsplit44/keymaps/via/keymap.c b/keyboards/handwired/croxsplit44/keymaps/via/keymap.c index 63cd585ab3..752ed60d02 100644 --- a/keyboards/handwired/croxsplit44/keymaps/via/keymap.c +++ b/keyboards/handwired/croxsplit44/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_ESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_TAB, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_UP, KC_RGHT, KC_ENT, + KC_TAB, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_UP, KC_RGHT, KC_ENT, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/handwired/d48/keymaps/default/keymap.c b/keyboards/handwired/d48/keymaps/default/keymap.c index b4cd88b0b0..261866c9a4 100644 --- a/keyboards/handwired/d48/keymaps/default/keymap.c +++ b/keyboards/handwired/d48/keymaps/default/keymap.c @@ -82,7 +82,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫ ┃L_MOD┃ F1 │ F2 │ F3 │ F4 │ F5 ┃ F6 │ F7 │ F8 │ F9 │ F10 ┃ F11 ┃ ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫ - ┃ ┃RESET│DEBUG│ │ │TIME ┃SLEEP│ │ { │ } │PTSCR┃ ┃ + ┃ ┃QK_BOOT│DEBUG│ │ │TIME ┃SLEEP│ │ { │ } │PTSCR┃ ┃ ┣━━━━━╉─────┼─────┼─────┼─────┼─────╂─────┼─────┼─────┼─────┼─────╊━━━━━┫ ┃ ┃ │ │ │ │ ┃ │ │ │ │ ┃ ┃ ┗━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┷━━━━━┷━━━━━┷━━━━━┷━━━━━┻━━━━━┛ @@ -91,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, RGB_TOG, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F12, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - _______, RESET, DEBUG, _______, _______, KC_SET_TIME,KC_SLEP,_______,KC_LCBR,KC_RCBR, KC_PSCR, _______, + _______, QK_BOOT, DEBUG, _______, _______, KC_SET_TIME,KC_SLEP,_______,KC_LCBR,KC_RCBR, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; @@ -163,7 +163,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { beta_pressed = record->event.pressed; } - if (keycode == RESET) { + if (keycode == QK_BOOT) { rgblight_setrgb(255, 255, 0); } if (keycode == KC_LCTRL) { diff --git a/keyboards/handwired/dactyl/keymaps/default/keymap.c b/keyboards/handwired/dactyl/keymaps/default/keymap.c index 3e013b19a9..caaac72641 100644 --- a/keyboards/handwired/dactyl/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | % | ^ | [ | ] | ~ | | & | 1 | 2 | 3 | \ | | * |------+------+------+------+------+------' `------+------+------+------+------+------| - * |RESET | | | | | | | . | 0 | = | | + * |QK_BOOT | | | | | | | . | 0 | = | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_TRNS, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/handwired/dactyl_manuform/4x6/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x6/keymaps/default/keymap.c index 999cc30118..4f2de11ce2 100644 --- a/keyboards/handwired/dactyl_manuform/4x6/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x6/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LOWER] = LAYOUT( - _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, RESET, KC_PLUS, + _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, QK_BOOT, KC_PLUS, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END , KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS, _______, KC_PSCR, _______, KC_P0, @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_RAISE] = LAYOUT( - _______, RESET, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_NLCK, KC_INS, KC_SLCK, KC_MUTE, + _______, QK_BOOT, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_NLCK, KC_INS, KC_SLCK, KC_MUTE, _______, KC_LEFT, KC_UP , KC_DOWN, KC_RGHT, KC_LPRN, KC_RPRN, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, KC_EQL, _______, diff --git a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/default/keymap.c index 3036986f2a..3549f93248 100644 --- a/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/4x6_5/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LOWER] = LAYOUT( - _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, RESET, KC_PLUS, + _______, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, QK_BOOT, KC_PLUS, _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END , KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS, _______, KC_PSCR, _______, KC_P0, @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_RAISE] = LAYOUT( - _______, RESET, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_NLCK, KC_INS, KC_SLCK, KC_MUTE, + _______, QK_BOOT, _______, _______, _______, KC_LBRC, KC_RBRC, _______, KC_NLCK, KC_INS, KC_SLCK, KC_MUTE, _______, KC_LEFT, KC_UP , KC_DOWN, KC_RGHT, KC_LPRN, KC_RPRN, KC_MPRV, KC_MPLY, KC_MNXT, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, KC_EQL, _______, diff --git a/keyboards/handwired/dactyl_manuform/5x7/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/5x7/keymaps/default/keymap.c index 3aaeb9989b..0b399d81b7 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/5x7/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, KC_UP, _______, _______, _______, - _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, RESET, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, _______, _______, diff --git a/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c index 5f5ef54df1..37a788bea0 100644 --- a/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c +++ b/keyboards/handwired/dactyl_manuform/5x7/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // left hand _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, KC_UP, _______, _______, _______, - _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, RESET, + _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, _______, _______, diff --git a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c b/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c index d11f075481..b9716947f1 100644 --- a/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_manuform/dmote/62key/keymaps/default/keymap.c @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, EMDASH, _______, _______, - KC_F6, KC_F7, KC_F8, KC_F9, RESET, KC_WAKE, // * + KC_F6, KC_F7, KC_F8, KC_F9, QK_BOOT, KC_WAKE, // * KC_6, KC_7, KC_8, KC_9, KC_F10, KC_F11, KC_CIRC, KC_AMPR, KC_ASTR, KC_APP, KC_0, PASTE, KC_MS_L, KC_MS_U, KC_MS_R, KC_PSCR, RGB_TOG, diff --git a/keyboards/handwired/dactyl_promicro/keymaps/default/keymap.c b/keyboards/handwired/dactyl_promicro/keymaps/default/keymap.c index 298cddfd0a..ed2d1440c8 100644 --- a/keyboards/handwired/dactyl_promicro/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_promicro/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,KC_EXLM,KC_AT ,KC_LBRC,KC_RBRC,KC_PIPE, KC_UP ,KC_P7 ,KC_P8 ,KC_P9 ,KC_PAST,KC_F12 , _______,KC_HASH,KC_DLR ,KC_LPRN,KC_RPRN,KC_GRV , KC_DOWN,KC_P4 ,KC_P5 ,KC_P6 ,KC_PPLS,_______, _______,KC_PERC,KC_CIRC,KC_LBRC,KC_RBRC,KC_TILD, KC_AMPR,KC_P1 ,KC_P2 ,KC_P3 ,KC_PSLS,_______, - RESET ,_______,_______,_______,_______,_______, _______,_______,KC_PDOT,KC_P0 ,KC_PEQL,_______, + QK_BOOT ,_______,_______,_______,_______,_______, _______,_______,KC_PDOT,KC_P0 ,KC_PEQL,_______, _______,_______,_______, _______,_______,_______, _______, _______, _______, _______ @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______,_______,_______,KC_MS_U,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,KC_MS_L,KC_MS_D,KC_MS_R,_______, _______,_______,_______,_______,_______,KC_MPLY, _______,_______,_______,_______,_______,_______, _______,_______,KC_MPRV,KC_MNXT,_______,_______, - RESET ,_______,_______,KC_BTN1,KC_BTN2,_______, KC_WBAK,KC_VOLU,KC_VOLD,KC_MUTE,_______,_______, + QK_BOOT ,_______,_______,KC_BTN1,KC_BTN2,_______, KC_WBAK,KC_VOLU,KC_VOLD,KC_MUTE,_______,_______, _______,_______,_______, _______,_______,_______, _______, _______, _______, _______ diff --git a/keyboards/handwired/dactyl_rah/keymaps/default/keymap.c b/keyboards/handwired/dactyl_rah/keymaps/default/keymap.c index 6b07051c4b..6f0c25a4dd 100644 --- a/keyboards/handwired/dactyl_rah/keymaps/default/keymap.c +++ b/keyboards/handwired/dactyl_rah/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_BSPC,CTL_ESC,KC_LALT, KC_RALT,KC_ENT ,KC_SPC ), [NAV] = LAYOUT_6x6( - RESET , KC_NO ,KC_MPRV,KC_MPLY,KC_MNXT, KC_NO , KC_BRIU, KC_7 , KC_8 , KC_9 , KC_NO , RESET , + QK_BOOT , KC_NO ,KC_MPRV,KC_MPLY,KC_MNXT, KC_NO , KC_BRIU, KC_7 , KC_8 , KC_9 , KC_NO , QK_BOOT , _______,KC_VOLU,KC_WBAK,KC_MS_U,KC_WFWD,KC_WH_U, KC_BRID, KC_4 , KC_5 , KC_6 , KC_NO , KC_F9 , _______,KC_VOLD,KC_MS_L,KC_MS_D,KC_MS_R,KC_WH_D, KC_PPLS, KC_1 , KC_2 , KC_3 ,KC_PMNS, KC_F10, KC_NO , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_NO , KC_PAST, KC_0 , KC_NO ,_______,KC_PSLS, KC_F11, diff --git a/keyboards/handwired/daishi/keymaps/default/keymap.c b/keyboards/handwired/daishi/keymaps/default/keymap.c index a1ef825ff2..a75ba88c83 100644 --- a/keyboards/handwired/daishi/keymaps/default/keymap.c +++ b/keyboards/handwired/daishi/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FN * .-----------------------------------------------------------------------------------------------------------------------------------------------------------------. - * | RESET | F13 | F14 | F15 | f16 | f17 | f18 | F19 | F20 | F21 | DM1 R | DM2 R | DMSTOP | | | | FN | DEBUG | + * | QK_BOOT | F13 | F14 | F15 | f16 | f17 | f18 | F19 | F20 | F21 | DM1 R | DM2 R | DMSTOP | | | | FN | DEBUG | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------------------------| * | | | | | | | | | | | | | | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------------------------| @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FN] = LAYOUT( /* Function */ - RESET , KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_F21 , DM_REC1, DM_REC2, DM_RSTP, _______, _______, _______, MO(_FN), DEBUG, + QK_BOOT , KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_F17 , KC_F18 , KC_F19 , KC_F20 , KC_F21 , DM_REC1, DM_REC2, DM_RSTP, _______, _______, _______, MO(_FN), DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/ddg_56/keymaps/default/keymap.c b/keyboards/handwired/ddg_56/keymaps/default/keymap.c index fd0f2a2572..2a569ec49c 100644 --- a/keyboards/handwired/ddg_56/keymaps/default/keymap.c +++ b/keyboards/handwired/ddg_56/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT), [_LOWER] = LAYOUT( - RESET, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, 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_MSTP, diff --git a/keyboards/handwired/elrgo_s/keymaps/default/keymap.c b/keyboards/handwired/elrgo_s/keymaps/default/keymap.c index 572edbf0b8..075879bbf0 100644 --- a/keyboards/handwired/elrgo_s/keymaps/default/keymap.c +++ b/keyboards/handwired/elrgo_s/keymaps/default/keymap.c @@ -53,6 +53,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO , KC_SLEP , KC_VOLU , KC_BRIU , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NLCK , KC_NO , KC_WAKE , KC_VOLD , KC_BRID , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_NO , KC_F13 , KC_F14 , KC_F15 , KC_F16 , KC_F17 , KC_F18 , KC_NO , KC_NO , MO(_ADJUST), - RESET , KC_NO , KC_NO , KC_TRNS , KC_NO , KC_NO , KC_TRNS , KC_TRNS , KC_NO , KC_NO + QK_BOOT , KC_NO , KC_NO , KC_TRNS , KC_NO , KC_NO , KC_TRNS , KC_TRNS , KC_NO , KC_NO ) }; diff --git a/keyboards/handwired/frenchdev/keymaps/default/keymap.c b/keyboards/handwired/frenchdev/keymaps/default/keymap.c index c926576f97..2d917b412e 100644 --- a/keyboards/handwired/frenchdev/keymaps/default/keymap.c +++ b/keyboards/handwired/frenchdev/keymaps/default/keymap.c @@ -113,7 +113,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,------. .. ,------. * * ,------|PAUSE |-------------. .. ,-------------| PRINT|------. * * ,------|SCROLL|------|MUTE |VOLUD |------. .. ,------| pre | next |------| calc |------. * - * |RESET |------| stop |------|------|VOLDU | .. | play |------|------| stop |------| num | * + * |QK_BOOT |------| stop |------|------|VOLDU | .. | play |------|------| stop |------| num | * * ,------+------| |------| pre | next |------| .. |------| pre | next |------| |------+------. * * | | |------|scrolu|------|------| play | .. | play |------|------| 8 |------| - | | * * |------+------| |------| | bt4 |------| .. |------| next | 7 |------| 9 |------+------| * @@ -128,7 +128,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ [_MEDIA] = LAYOUT( - RESET, KC_SLCK, KC_PAUS, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_VOLD, KC_VOLU, KC_PSCR, KC_CALC, KC_NLCK, + QK_BOOT, KC_SLCK, KC_PAUS, KC_MUTE, KC_VOLD, KC_VOLU, KC_MUTE, KC_VOLD, KC_VOLU, KC_PSCR, KC_CALC, KC_NLCK, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_MPRV, KC_MNXT, KC_MPLY, KC_MPLY, KC_MPRV, KC_MNXT, KC_MSTP, KC_TRNS, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_U, KC_TRNS, KC_BTN4, KC_BTN5, KC_BTN4, KC_BTN5, KC_KP_7, KC_KP_8, KC_KP_9, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_WH_D, KC_BTN3, KC_BTN2, KC_BTN1, KC_BTN1, KC_BTN2, KC_KP_4, KC_KP_5, KC_KP_6, KC_PAST, KC_TRNS, diff --git a/keyboards/handwired/freoduo/keymaps/default/keymap.c b/keyboards/handwired/freoduo/keymaps/default/keymap.c index 16eeed13fa..1f24469a7a 100644 --- a/keyboards/handwired/freoduo/keymaps/default/keymap.c +++ b/keyboards/handwired/freoduo/keymaps/default/keymap.c @@ -146,7 +146,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, VLK_TOG, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT , RGB_TOG, RGB_MOD, VLK_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/fruity60/keymaps/default/keymap.c b/keyboards/handwired/fruity60/keymaps/default/keymap.c index a6cd15f4e2..da31827093 100644 --- a/keyboards/handwired/fruity60/keymaps/default/keymap.c +++ b/keyboards/handwired/fruity60/keymaps/default/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FN] = LAYOUT_60_tsangan_hhkb( _______, 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_INS, KC_DEL, - _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, RESET, + _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, QK_BOOT, KC_CAPS, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/heisenberg/keymaps/default/keymap.c b/keyboards/handwired/heisenberg/keymaps/default/keymap.c index 03c2a21b3b..81a9cf11c3 100644 --- a/keyboards/handwired/heisenberg/keymaps/default/keymap.c +++ b/keyboards/handwired/heisenberg/keymaps/default/keymap.c @@ -154,7 +154,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, EEP_RST, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, EEP_RST, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/hillside/0_1/keymaps/default/readme.md b/keyboards/handwired/hillside/0_1/keymaps/default/readme.md index ae4a5c5648..1890d5808c 100644 --- a/keyboards/handwired/hillside/0_1/keymaps/default/readme.md +++ b/keyboards/handwired/hillside/0_1/keymaps/default/readme.md @@ -133,7 +133,7 @@ Holding down the Num key accesses a number pad and arithmetic symbols: ``` | |QWERT|DVORK|COLMK|AG_SWAP|AG_NORM|-----------------------| | | | | | | | | | | |CTR_S|CTR_N|---------------------------|MOD+ |BRI+ |HUE+ |SAT+ | | | -| RESET | | | | | | |--------------|RGBTOG|MOD- |BRI- |HUE- |SAT- | | | +| QK_BOOT | | | | | | |--------------|RGBTOG|MOD- |BRI- |HUE- |SAT- | | | --------------| |-----| | | | *** |---| *** | | | |-----| |-------------- ``` Simultaneously holding down the Nav and Sym keys enables keys to adjust various keyboard settings: diff --git a/keyboards/handwired/hnah108/keymaps/default/keymap.c b/keyboards/handwired/hnah108/keymaps/default/keymap.c index d4d4cde4b6..fd3aedc29d 100644 --- a/keyboards/handwired/hnah108/keymaps/default/keymap.c +++ b/keyboards/handwired/hnah108/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_all( - RESET, BL_STEP, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, BL_STEP, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/hnah40/keymaps/default/keymap.c b/keyboards/handwired/hnah40/keymaps/default/keymap.c index 2fc67ba5ec..ecea89280c 100644 --- a/keyboards/handwired/hnah40/keymaps/default/keymap.c +++ b/keyboards/handwired/hnah40/keymaps/default/keymap.c @@ -34,13 +34,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_APP, LOWER, KC_RCTL ), [_LOWER] = LAYOUT( /* Base */ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, RAISE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_LSFT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_COMM, KC_DOT, KC_SLSH, KC_SLSH, KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_APP, KC_TRNS, KC_RCTL ), [_RAISE] = LAYOUT( /* Base */ - RESET, KC_1, KC_UP, RGB_TOG, RGB_MOD, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_UP, RGB_TOG, RGB_MOD, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT , RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPACE, KC_SPACE, KC_LEFT, KC_DOWN, KC_RGHT diff --git a/keyboards/handwired/hnah40rgb/keymaps/ansi/keymap.c b/keyboards/handwired/hnah40rgb/keymaps/ansi/keymap.c index 320f7d93e4..01676f93f8 100644 --- a/keyboards/handwired/hnah40rgb/keymaps/ansi/keymap.c +++ b/keyboards/handwired/hnah40rgb/keymaps/ansi/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_RSFT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, L1, KC_RCTL ), [_L1] = LAYOUT_ansi(/* Base */ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_TRNS, 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 ), diff --git a/keyboards/handwired/hnah40rgb/keymaps/default/keymap.c b/keyboards/handwired/hnah40rgb/keymaps/default/keymap.c index 2906f8bdbf..76101f704b 100644 --- a/keyboards/handwired/hnah40rgb/keymaps/default/keymap.c +++ b/keyboards/handwired/hnah40rgb/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_RSFT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, KC_RALT, L1, KC_RCTL ), [_L1] = LAYOUT_all(/* Base */ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_SCLN, KC_QUOT, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_SLSH, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/handwired/ibm_wheelwriter/keymaps/default/keymap.c b/keyboards/handwired/ibm_wheelwriter/keymaps/default/keymap.c index d7156d4c14..faad04468e 100644 --- a/keyboards/handwired/ibm_wheelwriter/keymaps/default/keymap.c +++ b/keyboards/handwired/ibm_wheelwriter/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_SPC, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/handwired/ibm_wheelwriter/keymaps/via/keymap.c b/keyboards/handwired/ibm_wheelwriter/keymaps/via/keymap.c index 4390cedeab..85db40c0d5 100644 --- a/keyboards/handwired/ibm_wheelwriter/keymaps/via/keymap.c +++ b/keyboards/handwired/ibm_wheelwriter/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_SPC, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/handwired/jn68m/keymaps/default/keymap.c b/keyboards/handwired/jn68m/keymaps/default/keymap.c index 3860901dd3..8cd1ae4b4c 100644 --- a/keyboards/handwired/jn68m/keymaps/default/keymap.c +++ b/keyboards/handwired/jn68m/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_APP, KC_TRNS, KC_TRNS, KC_TRNS + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_APP, KC_TRNS, KC_TRNS, KC_TRNS ), }; diff --git a/keyboards/handwired/jot50/keymaps/default/keymap.c b/keyboards/handwired/jot50/keymaps/default/keymap.c index 62f0db5b7e..a2d76dd9a2 100644 --- a/keyboards/handwired/jot50/keymaps/default/keymap.c +++ b/keyboards/handwired/jot50/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_5x12 ( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/jotanck/keymaps/default/keymap.c b/keyboards/handwired/jotanck/keymaps/default/keymap.c index 1524c758ab..f9be53c674 100644 --- a/keyboards/handwired/jotanck/keymaps/default/keymap.c +++ b/keyboards/handwired/jotanck/keymaps/default/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_ortho_4x12 ( - _______, RESET, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/lagrange/keymaps/default/keymap.c b/keyboards/handwired/lagrange/keymaps/default/keymap.c index 5f86239a0b..db624e9be0 100644 --- a/keyboards/handwired/lagrange/keymaps/default/keymap.c +++ b/keyboards/handwired/lagrange/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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, RESET, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, QK_BOOT, 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 ), diff --git a/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c b/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c index 5b329dc571..6a06b648ef 100644 --- a/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c +++ b/keyboards/handwired/m40/5x5_macropad/keymaps/default/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [_BASE] = LAYOUT_ortho_5x5( //┌────────┬────────┬────────┬────────┬────────┐ - KC_ESC, KC_1, KC_2, KC_3, RESET, + KC_ESC, KC_1, KC_2, KC_3, QK_BOOT, //├────────┼────────┼────────┼────────┬────────┤ KC_1, KC_2, KC_3, KC_4, KC_5, //├────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/handwired/macroboard/keymaps/default/keymap.c b/keyboards/handwired/macroboard/keymaps/default/keymap.c index ec587ee25d..ef09904fc1 100644 --- a/keyboards/handwired/macroboard/keymaps/default/keymap.c +++ b/keyboards/handwired/macroboard/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, - KC_LCTL, KC_LGUI, RGB_TOG, KC_LALT, RESET, KC_SPC + KC_LCTL, KC_LGUI, RGB_TOG, KC_LALT, QK_BOOT, KC_SPC ) }; diff --git a/keyboards/handwired/myskeeb/keymaps/default/keymap.c b/keyboards/handwired/myskeeb/keymaps/default/keymap.c index 61cf607865..ccaa9f5d28 100644 --- a/keyboards/handwired/myskeeb/keymaps/default/keymap.c +++ b/keyboards/handwired/myskeeb/keymaps/default/keymap.c @@ -74,7 +74,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [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_BSPC, - KC_CAPS, KC_PDOT, KC_PPLS, KC_PMNS, KC_PAST, KC_PSLS, KC_MSEL, KC_MSTP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PWR, RESET, + KC_CAPS, KC_PDOT, KC_PPLS, KC_PMNS, KC_PAST, KC_PSLS, KC_MSEL, KC_MSTP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PWR, QK_BOOT, KC_TAB, KC_P6, KC_P7, KC_P8, KC_P9, KC_P0, KC_SLCK, NK_ON, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_LSFT, KC_P1, KC_P2, KC_P3, KC_P4, KC_P5, KC_MUTE, KC_MPLY, KC_NLCK, NK_OFF, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCTL, KC_LGUI, KC_LALT, KC_BSPC, KC_TRNS, KC_VOLD, KC_VOLU, KC_MPRV, KC_MNXT, TO(2), KC_HOME, KC_PGDN, KC_PGUP, KC_END diff --git a/keyboards/handwired/not_so_minidox/keymaps/default/keymap.c b/keyboards/handwired/not_so_minidox/keymaps/default/keymap.c index 435eed2f1f..d5d88126a1 100644 --- a/keyboards/handwired/not_so_minidox/keymaps/default/keymap.c +++ b/keyboards/handwired/not_so_minidox/keymaps/default/keymap.c @@ -12,7 +12,7 @@ #define KC_LOWR MO(_LOWER) #define KC_RASE MO(_RAISE) -#define KC_RST RESET +#define KC_RST QK_BOOT #define KC_CAD LCTL(LALT(KC_DEL)) const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { diff --git a/keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c b/keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c index 56938cf62f..7c8d2211bb 100644 --- a/keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c +++ b/keyboards/handwired/obuwunkunubi/spaget/keymaps/default/keymap.c @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------' */ [ONE] = LAYOUT( - RESET, KC_CAD, + QK_BOOT, KC_CAD, TO(BASE), TO(TWO), MAKE1, MAKE2, DIR, MAIL1, MAIL2, OBUWUN, SELWP, KC_AF4, SELWN, diff --git a/keyboards/handwired/oem_iso_fullsize/keymaps/default/keymap.c b/keyboards/handwired/oem_iso_fullsize/keymaps/default/keymap.c index 162851e606..d09eaee768 100644 --- a/keyboards/handwired/oem_iso_fullsize/keymaps/default/keymap.c +++ b/keyboards/handwired/oem_iso_fullsize/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT( - KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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_MPLY, KC_VOLU, 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_MSTP, KC_VOLD, 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, diff --git a/keyboards/handwired/oem_iso_fullsize/keymaps/via/keymap.c b/keyboards/handwired/oem_iso_fullsize/keymaps/via/keymap.c index bf527e25ad..9b31f963f8 100644 --- a/keyboards/handwired/oem_iso_fullsize/keymaps/via/keymap.c +++ b/keyboards/handwired/oem_iso_fullsize/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT( - KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_MPRV, KC_MNXT, KC_TRNS, KC_MPLY, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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_MPLY, KC_VOLU, 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_MSTP, KC_VOLD, 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, diff --git a/keyboards/handwired/ortho5x13/keymaps/default/keymap.c b/keyboards/handwired/ortho5x13/keymaps/default/keymap.c index 0c8bbb055e..39ae1872a2 100644 --- a/keyboards/handwired/ortho5x13/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho5x13/keymaps/default/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL , _______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/ortho5x14/keymaps/default/keymap.c b/keyboards/handwired/ortho5x14/keymaps/default/keymap.c index 4b788ee6a2..6a00111b57 100644 --- a/keyboards/handwired/ortho5x14/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho5x14/keymaps/default/keymap.c @@ -198,7 +198,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, + XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______, _______ diff --git a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c index 48af2a2d00..948a7bd1bc 100644 --- a/keyboards/handwired/ortho_brass/keymaps/default/keymap.c +++ b/keyboards/handwired/ortho_brass/keymaps/default/keymap.c @@ -160,7 +160,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12_1x2uC( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/p65rgb/keymaps/default/keymap.c b/keyboards/handwired/p65rgb/keymaps/default/keymap.c index 2a9f6cc712..6e958eedee 100644 --- a/keyboards/handwired/p65rgb/keymaps/default/keymap.c +++ b/keyboards/handwired/p65rgb/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_APP, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ KC_GESC, 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_INS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_HOME, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_END, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/handwired/pilcrow/keymaps/default/keymap.c b/keyboards/handwired/pilcrow/keymaps/default/keymap.c index eee0d04705..d4a8657938 100644 --- a/keyboards/handwired/pilcrow/keymaps/default/keymap.c +++ b/keyboards/handwired/pilcrow/keymaps/default/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [3] = LAYOUT( - RESET, KC_UP, _______, _______, _______, _______, _______, KC_WH_D, KC_MS_U, KC_WH_U, + QK_BOOT, KC_UP, _______, _______, _______, _______, _______, KC_WH_D, KC_MS_U, KC_WH_U, KC_LEFT, KC_DOWN, KC_RGHT, AU_ON, AU_OFF, AG_NORM, AG_SWAP, KC_MS_L, KC_MS_D, KC_MS_R, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_BTN1, KC_BTN2, _______, _______, _______, _______ diff --git a/keyboards/handwired/postageboard/keymaps/default/keymap.c b/keyboards/handwired/postageboard/keymaps/default/keymap.c index a42697a9b1..9b07d378cf 100644 --- a/keyboards/handwired/postageboard/keymaps/default/keymap.c +++ b/keyboards/handwired/postageboard/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_A, KC_1, MO(_FN) ), [_FN] = LAYOUT( - RESET, QMKURL, _______ + QK_BOOT, QMKURL, _______ ) }; diff --git a/keyboards/handwired/prkl30/keymaps/default/keymap.c b/keyboards/handwired/prkl30/keymaps/default/keymap.c index be032739f4..6a72afebf9 100644 --- a/keyboards/handwired/prkl30/keymaps/default/keymap.c +++ b/keyboards/handwired/prkl30/keymaps/default/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FN * ,------------------------------------------------------------------------------------------. - * |RESET | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | + * |QK_BOOT | F1 | F2 | F3 | F4 | F5 | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------+------+------+------+------+------+------|------| * | |RGB_P |RGB_HD|RGB_HI| VOL- | PREV | NEXT | VOL+ | | | | PRKL | | * |------+------+------+------+------+------+------+------+------+------+------+------|------' @@ -73,7 +73,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------+------+------+------+------+------+------+------+------+------+------+------' */ [_FN] = LAYOUT_all( - 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, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, RGB_M_P, RGB_HUD, RGB_HUI, KC_VOLD, KC_MPRV, KC_MNXT, KC_VOLU, _______, _______, _______, PRKL, _______, RGB_MOD, RGB_VAD, RGB_VAI, RGB_TOG, _______, KC_MPLY, _______, _______, _______, _______, LCA(KC_DEL), _______ ), diff --git a/keyboards/handwired/promethium/keymaps/default/keymap.c b/keyboards/handwired/promethium/keymaps/default/keymap.c index e12142c50b..1903b2f9ba 100644 --- a/keyboards/handwired/promethium/keymaps/default/keymap.c +++ b/keyboards/handwired/promethium/keymaps/default/keymap.c @@ -940,7 +940,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_SYS] = LAYOUT( - DEBUG, QWERTY, WIN, XXXXXXX, RESET, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, RGBDEMO, + DEBUG, QWERTY, WIN, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, OUT_USB, XXXXXXX, XXXXXXX, XXXXXXX, RGBDEMO, XXXXXXX, FC_TOG, XXXXXXX, DVORAK, XXXXXXX, GLOW, XXXXXXX, XXXXXXX, WORKMAN, LINUX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, COLEMAK, XXXXXXX, OUT_BT, NORMAN, OSX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, diff --git a/keyboards/handwired/pterodactyl/keymaps/default/keymap.c b/keyboards/handwired/pterodactyl/keymaps/default/keymap.c index 058631818d..fece911631 100644 --- a/keyboards/handwired/pterodactyl/keymaps/default/keymap.c +++ b/keyboards/handwired/pterodactyl/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | % | ^ | [ | ] | ~ | | & | 1 | 2 | 3 | \ | | * |------+------+------+------+------+------' `------+------+------+------+------+------| - * |RESET | | | | | | | . | 0 | = | | + * |QK_BOOT | | | | | | | . | 0 | = | | * `----------------------------------' `----------------------------------' * ,-------------. ,-------------. * | | | | | | @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_EXLM, KC_AT, KC_LCBR, KC_RCBR, KC_PIPE, KC_UP, KC_7, KC_8, KC_9, KC_ASTR, KC_F12, KC_TRNS, KC_HASH, KC_DLR, KC_LPRN, KC_RPRN, KC_GRV, KC_DOWN, KC_4, KC_5, KC_6, KC_PLUS, KC_TRNS, KC_TRNS, KC_PERC, KC_CIRC, KC_LBRC, KC_RBRC, KC_TILD, KC_AMPR, KC_1, KC_2, KC_3, KC_BSLS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOT, KC_0, KC_EQL, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DOT, KC_0, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/handwired/pteron/keymaps/default/keymap.c b/keyboards/handwired/pteron/keymaps/default/keymap.c index 0511fb9263..b47ac46124 100644 --- a/keyboards/handwired/pteron/keymaps/default/keymap.c +++ b/keyboards/handwired/pteron/keymaps/default/keymap.c @@ -91,7 +91,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/pteron38/keymaps/default/keymap.c b/keyboards/handwired/pteron38/keymaps/default/keymap.c index df8028876b..5f149add6d 100644 --- a/keyboards/handwired/pteron38/keymaps/default/keymap.c +++ b/keyboards/handwired/pteron38/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_split_3x5_4( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, 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_INS, _______,RESET, _______,_______, + _______,_______,_______,KC_F11, KC_F12, KC_INS, _______,QK_BOOT, _______,_______, _______,_______,_______,_______, _______,_______,KC_RCTL,KC_RALT ) }; diff --git a/keyboards/handwired/pteron44/keymaps/default/keymap.c b/keyboards/handwired/pteron44/keymaps/default/keymap.c index 9eb2f7ff28..a4adc1ca9c 100644 --- a/keyboards/handwired/pteron44/keymaps/default/keymap.c +++ b/keyboards/handwired/pteron44/keymaps/default/keymap.c @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, DEBUG, RESET, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, DEBUG, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/handwired/reclined/keymaps/default/keymap.c b/keyboards/handwired/reclined/keymaps/default/keymap.c index d814d568c7..b3b411d60b 100644 --- a/keyboards/handwired/reclined/keymaps/default/keymap.c +++ b/keyboards/handwired/reclined/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - KC_LCTL, KC_LGUI, KC_LALT, RESET, KC_TAB, KC_SPC, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + KC_LCTL, KC_LGUI, KC_LALT, QK_BOOT, KC_TAB, KC_SPC, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), }; diff --git a/keyboards/handwired/riblee_f401/keymaps/default/keymap.c b/keyboards/handwired/riblee_f401/keymaps/default/keymap.c index 4bb18634eb..6892c0fb49 100644 --- a/keyboards/handwired/riblee_f401/keymaps/default/keymap.c +++ b/keyboards/handwired/riblee_f401/keymaps/default/keymap.c @@ -158,7 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, LCG_SWP, LCG_NRM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/riblee_f411/keymaps/default/keymap.c b/keyboards/handwired/riblee_f411/keymaps/default/keymap.c index 61b04fe6a1..2e9485d6b9 100644 --- a/keyboards/handwired/riblee_f411/keymaps/default/keymap.c +++ b/keyboards/handwired/riblee_f411/keymaps/default/keymap.c @@ -158,7 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, LCG_SWP, LCG_NRM, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/rs60/keymaps/default/keymap.c b/keyboards/handwired/rs60/keymaps/default/keymap.c index a675c9019c..6b311a7ebb 100644 --- a/keyboards/handwired/rs60/keymaps/default/keymap.c +++ b/keyboards/handwired/rs60/keymaps/default/keymap.c @@ -155,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/sono1/keymaps/default/keymap.c b/keyboards/handwired/sono1/keymaps/default/keymap.c index 40a4932660..c0524b0d96 100644 --- a/keyboards/handwired/sono1/keymaps/default/keymap.c +++ b/keyboards/handwired/sono1/keymaps/default/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { `-------------' */ [_FN] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_LSCR, KC_PAUS, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_LSCR, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, KC_HOME, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/space_oddity/keymaps/default/keymap.c b/keyboards/handwired/space_oddity/keymaps/default/keymap.c index d3e280d2b5..4e8ee5ddca 100644 --- a/keyboards/handwired/space_oddity/keymaps/default/keymap.c +++ b/keyboards/handwired/space_oddity/keymaps/default/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * | | | | | | | | | | | | | * |___________|_____|_____|_____|_____|_____|_____|_____|_____|_____|_____|___________| * | | | | | | | | | | | | | - * | |RESET| | | | | | | | | | | + * | |QK_BOOT| | | | | | | | | | | * |_________|_____|_____|_____|_____|_____|_____|_____|_____|_____|_____|_________| * | | | | | | | | | | | * | | | | | | | | | | F(2)| @@ -138,7 +138,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_BTN1, KC_BTN3, KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, TG(2) ) }; diff --git a/keyboards/handwired/splittest/keymaps/default/keymap.c b/keyboards/handwired/splittest/keymaps/default/keymap.c index 1c15f6f1df..0057478c1c 100644 --- a/keyboards/handwired/splittest/keymaps/default/keymap.c +++ b/keyboards/handwired/splittest/keymaps/default/keymap.c @@ -1,5 +1,5 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT(RGB_MOD, RESET) + [0] = LAYOUT(RGB_MOD, QK_BOOT) }; diff --git a/keyboards/handwired/swiftrax/digicarp65/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/digicarp65/keymaps/default/keymap.c index 5de5c63144..a531a24f7d 100644 --- a/keyboards/handwired/swiftrax/digicarp65/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/digicarp65/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_65_ansi( 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, diff --git a/keyboards/handwired/swiftrax/digicarp65/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/digicarp65/keymaps/via/keymap.c index d3bffe8c4c..01d3241482 100644 --- a/keyboards/handwired/swiftrax/digicarp65/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/digicarp65/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_65_ansi( 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, diff --git a/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c index ed7cf4379e..1365d7b4a3 100644 --- a/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/digicarpice/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_split_bs( - 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, KC_DEL, KC_BSPC, _______, + QK_BOOT, 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_BSPC, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c index f97ac8bc8d..4ee34ebfe3 100644 --- a/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/digicarpice/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_split_bs( - 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, KC_DEL, KC_BSPC, _______, + QK_BOOT, 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_BSPC, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/handwired/swiftrax/equator/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/equator/keymaps/default/keymap.c index fab6858a66..2752ee625a 100644 --- a/keyboards/handwired/swiftrax/equator/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/equator/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT_split_bs_rshift( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/handwired/swiftrax/equator/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/equator/keymaps/via/keymap.c index dbe208f2f8..a500ddb3d2 100644 --- a/keyboards/handwired/swiftrax/equator/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/equator/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT_split_bs_rshift( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/handwired/swiftrax/walter/keymaps/default/keymap.c b/keyboards/handwired/swiftrax/walter/keymaps/default/keymap.c index fb35e695e2..b21f56c40e 100644 --- a/keyboards/handwired/swiftrax/walter/keymaps/default/keymap.c +++ b/keyboards/handwired/swiftrax/walter/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_65_ansi( 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, diff --git a/keyboards/handwired/swiftrax/walter/keymaps/via/keymap.c b/keyboards/handwired/swiftrax/walter/keymaps/via/keymap.c index 74d650bf5e..bc68fca2e3 100644 --- a/keyboards/handwired/swiftrax/walter/keymaps/via/keymap.c +++ b/keyboards/handwired/swiftrax/walter/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_65_ansi( 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, diff --git a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c index b30aa81f2d..8062aa711f 100644 --- a/keyboards/handwired/terminus_mini/keymaps/default/keymap.c +++ b/keyboards/handwired/terminus_mini/keymaps/default/keymap.c @@ -182,7 +182,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust (Lower + Raise) * ,-----------------------------------------------------------------------------------. - * | | | | | |RESET | |TermOn|TermOf| | | Del | + * | | | | | |QK_BOOT | |TermOn|TermOf| | | Del | * |------+------+------+------+------+-------------+------+------+------+------+------| * | | | | | | | |Qwerty|Colemk|Dvorak| | | * |------+------+------+------+------+-------------+------+------+------+------+------| @@ -193,7 +193,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( - _______, _______, _______, _______, _______, RESET, _______, TERM_ON, TERM_OFF, _______, _______, KC_DEL, + _______, _______, _______, _______, _______, QK_BOOT, _______, TERM_ON, TERM_OFF, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/terminus_mini/keymaps/default/readme.md b/keyboards/handwired/terminus_mini/keymaps/default/readme.md index b192a88b71..4c04aa0170 100644 --- a/keyboards/handwired/terminus_mini/keymaps/default/readme.md +++ b/keyboards/handwired/terminus_mini/keymaps/default/readme.md @@ -149,7 +149,7 @@ keys. ### ADJUST - Keyboard Settings: Primarily used to change the base layer at this stage ``` ,----------------------------------------------------------------------------------. -| | | | | |RESET | |TermOn|TermOf| | | Del | +| | | | | |QK_BOOT | |TermOn|TermOf| | | Del | |------+------+------+------+------+------+-----+------+------+------+------+------| | | | | | | | |Qwerty|Colemk|Dvorak| | | |------+------+------+------+------+------+-----+------+------+------+------+------| diff --git a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/default/keymap.c b/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/default/keymap.c index d79f60b12c..6f56f886e0 100644 --- a/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/default/keymap.c +++ b/keyboards/handwired/tractyl_manuform/4x6_right/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LOWER] = LAYOUT_4x6_right( - _______,_______,_______,_______,_______,KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, RESET, KC_PLUS, + _______,_______,_______,_______,_______,KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, QK_BOOT, KC_PLUS, _______,KC_HOME,KC_PGUP,KC_PGDN,KC_END ,KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS,KC_PIPE, _______,_______,_______,_______,_______,_______, _______, KC_P1, KC_P2, KC_P3, KC_EQL, KC_UNDS, _______,KC_PSCR, _______, KC_P0, @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_RAISE] = LAYOUT_4x6_right( - _______,RESET, _______,_______,_______,KC_LBRC, KC_RBRC,_______,KC_NLCK,KC_INS, KC_SLCK,KC_MUTE, + _______,QK_BOOT, _______,_______,_______,KC_LBRC, KC_RBRC,_______,KC_NLCK,KC_INS, KC_SLCK,KC_MUTE, _______,KC_LEFT,KC_UP ,KC_DOWN,KC_RGHT,KC_LPRN, KC_RPRN,KC_MPRV,KC_MPLY,KC_MNXT,_______,KC_VOLU, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,KC_VOLD, _______,_______, KC_EQL ,_______, diff --git a/keyboards/handwired/tritium_numpad/keymaps/default/keymap.c b/keyboards/handwired/tritium_numpad/keymaps/default/keymap.c index 60430217b9..0ca7d512f4 100644 --- a/keyboards/handwired/tritium_numpad/keymaps/default/keymap.c +++ b/keyboards/handwired/tritium_numpad/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_ESC, KC_TAB, KC_BSPC, KC_PEQL, KC_NLCK, KC_PSLS, KC_PAST, KC_PMNS, KC_P7, KC_P8, KC_P9, - KC_P4, KC_P5, KC_P6, RESET, + KC_P4, KC_P5, KC_P6, QK_BOOT, KC_P1, KC_P2, KC_P3, KC_P0, LT(_FL,KC_PDOT), KC_PENT ), diff --git a/keyboards/handwired/uthol/keymaps/default/keymap.c b/keyboards/handwired/uthol/keymaps/default/keymap.c index d33f3eb6b6..118ea6872f 100644 --- a/keyboards/handwired/uthol/keymaps/default/keymap.c +++ b/keyboards/handwired/uthol/keymaps/default/keymap.c @@ -30,5 +30,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_COLEMAK] = LAYOUT_uthol(KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, KC_TAB, KC_Q, KC_W, KC_F, KC_P, KC_B, KC_J, KC_L, KC_U, KC_Y, KC_SCLN, KC_DEL, KC_ESC, KC_A, KC_R, KC_S, KC_T, KC_G, KC_M, KC_N, KC_E, KC_I, KC_O, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_D, KC_V, KC_K, KC_H, KC_COMM, KC_DOT, KC_SLSH, KC_ENT, KC_LCTL, SETTINGS, KC_LGUI, KC_LALT, RAISE, KC_SPC, LOWER, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT), [_LOWER] = LAYOUT_uthol(KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_MINS, KC_EQL, KC_INS, KC_TRNS, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_PEQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), [_RAISE] = LAYOUT_uthol(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_P7, KC_P8, KC_P9, KC_PMNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_BSLS, KC_P0, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_TRNS, KC_TRNS, KC_P1, KC_P2, KC_P3, KC_EQL, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MNXT), - [_SETTINGS] = LAYOUT_uthol(QWERTY, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_PWR, KC_NO, KC_SLCK, KC_NO, KC_NO, KC_PSCR, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUD, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_SAI, RGB_SAI, RGB_MODE_PLAIN, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MODE_REVERSE, RGB_VAD, RGB_VAI, RGB_MODE_FORWARD) + [_SETTINGS] = LAYOUT_uthol(QWERTY, COLEMAK, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, RGB_TOG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_PWR, KC_NO, KC_SLCK, KC_NO, KC_NO, KC_PSCR, KC_NO, KC_NO, KC_NO, KC_NO, RGB_HUD, RGB_HUI, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_CAPS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_SAI, RGB_SAI, RGB_MODE_PLAIN, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MODE_REVERSE, RGB_VAD, RGB_VAI, RGB_MODE_FORWARD) }; diff --git a/keyboards/handwired/videowriter/keymaps/default/keymap.c b/keyboards/handwired/videowriter/keymaps/default/keymap.c index 527ee6fffc..49c706cef9 100644 --- a/keyboards/handwired/videowriter/keymaps/default/keymap.c +++ b/keyboards/handwired/videowriter/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------------------------------------------------------------------' */ [_FN1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, 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_HOME, _______, KC_WH_U, KC_BTN1, KC_MS_U, KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_WH_D, KC_MS_L, KC_MS_D, KC_MS_R, _______, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, _______, _______, _______, _______, diff --git a/keyboards/handwired/videowriter/keymaps/via/keymap.c b/keyboards/handwired/videowriter/keymaps/via/keymap.c index e75ab17085..1988587ff3 100644 --- a/keyboards/handwired/videowriter/keymaps/via/keymap.c +++ b/keyboards/handwired/videowriter/keymaps/via/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_PAUS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_PAUS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, _______, 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_BTN1, KC_MS_U, KC_BTN2, KC_WH_U ,_______, _______, _______, KC_UP, _______, _______, _______, _______, KC_RCTRL, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, diff --git a/keyboards/handwired/wakizashi40/keymaps/default/keymap.c b/keyboards/handwired/wakizashi40/keymaps/default/keymap.c index 910e5bde12..c8b3d2120e 100644 --- a/keyboards/handwired/wakizashi40/keymaps/default/keymap.c +++ b/keyboards/handwired/wakizashi40/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), [3] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_QUOT, 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) diff --git a/keyboards/handwired/wakizashi40/keymaps/via/keymap.c b/keyboards/handwired/wakizashi40/keymaps/via/keymap.c index fb9d37ac20..4de85e5e3c 100644 --- a/keyboards/handwired/wakizashi40/keymaps/via/keymap.c +++ b/keyboards/handwired/wakizashi40/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_SPC, KC_SPC, KC_TRNS, KC_TRNS, KC_TRNS), [3] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_QUOT, 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), diff --git a/keyboards/handwired/woodpad/keymaps/default/keymap.c b/keyboards/handwired/woodpad/keymaps/default/keymap.c index 059d460876..d57efd8c11 100644 --- a/keyboards/handwired/woodpad/keymaps/default/keymap.c +++ b/keyboards/handwired/woodpad/keymaps/default/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______ ), [_ADJUST] = LAYOUT_ortho_5x4( /* Base */ - _______, KC_A, _______, RESET, + _______, KC_A, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/handwired/wulkan/keymaps/default/keymap.c b/keyboards/handwired/wulkan/keymaps/default/keymap.c index ad503114fc..6ae4ad0b86 100644 --- a/keyboards/handwired/wulkan/keymaps/default/keymap.c +++ b/keyboards/handwired/wulkan/keymaps/default/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, KC_WH_U, _______, _______, KC_MS_U, _______, _______, XP(SE_ARNG_LOW, SE_ARNG_HIGH), KC_DEL, + _______, QK_BOOT, _______, _______, KC_WH_U, _______, _______, KC_MS_U, _______, _______, XP(SE_ARNG_LOW, SE_ARNG_HIGH), KC_DEL, _______, _______, _______, _______, KC_WH_D, _______, KC_MS_L, KC_MS_D, KC_MS_R, XP(SE_ODIA_LOW, SE_ODIA_HIGH), XP(SE_ADIA_LOW, SE_ADIA_HIGH), _______, _______, KC_ACL0, KC_ACL1, KC_ACL2, _______, _______, KC_BTN1, _______, KC_BTN2, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/handwired/zergo/keymaps/default/keymap.c b/keyboards/handwired/zergo/keymaps/default/keymap.c index 19a2b9b2c8..3408e9f443 100644 --- a/keyboards/handwired/zergo/keymaps/default/keymap.c +++ b/keyboards/handwired/zergo/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { K_CEND, KC_NO, KC_NO, KC_LALT, KC_SPC, KC_ENT, K_SPCFN, KC_RALT, KC_APP, KC_RGUI, K_CPGDN), [l_arrows] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT, KC_UP, KC_BSPC, _______, _______, _______, _______, diff --git a/keyboards/hardlineworks/otd_plus/keymaps/default/keymap.c b/keyboards/hardlineworks/otd_plus/keymaps/default/keymap.c index 397b815bd1..22fe42b3ab 100644 --- a/keyboards/hardlineworks/otd_plus/keymaps/default/keymap.c +++ b/keyboards/hardlineworks/otd_plus/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_tkl_ansi_wkl( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/heliar/wm1_hotswap/keymaps/default/keymap.c b/keyboards/heliar/wm1_hotswap/keymaps/default/keymap.c index b1cd519ae5..c4e4408f9e 100644 --- a/keyboards/heliar/wm1_hotswap/keymaps/default/keymap.c +++ b/keyboards/heliar/wm1_hotswap/keymaps/default/keymap.c @@ -16,7 +16,7 @@ KC_LCTL, KC_LALT,KC_LGUI,KC_SPC, LT(_FN,KC_SPC), KC_RA [_FN] = LAYOUT( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/helix/pico/keymaps/default/keymap.c b/keyboards/helix/pico/keymaps/default/keymap.c index 11ee30258c..ab68bc5243 100644 --- a/keyboards/helix/pico/keymaps/default/keymap.c +++ b/keyboards/helix/pico/keymaps/default/keymap.c @@ -157,7 +157,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, AU_ON, AU_OFF, MU_TOG, MU_MOD, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, CK_TOGG, CK_RST, CK_UP, CK_DOWN, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/helix/rev2/keymaps/default/keymap.c b/keyboards/helix/rev2/keymaps/default/keymap.c index c3994d3184..c7c65acaea 100644 --- a/keyboards/helix/rev2/keymaps/default/keymap.c +++ b/keyboards/helix/rev2/keymaps/default/keymap.c @@ -172,7 +172,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD @@ -285,7 +285,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/helix/rev3_4rows/keymaps/default/keymap.c b/keyboards/helix/rev3_4rows/keymaps/default/keymap.c index 3ef5e476e9..d98362f194 100644 --- a/keyboards/helix/rev3_4rows/keymaps/default/keymap.c +++ b/keyboards/helix/rev3_4rows/keymaps/default/keymap.c @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, RGBRST, EEP_RST, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, EEP_RST, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD ) diff --git a/keyboards/helix/rev3_4rows/keymaps/via/keymap.c b/keyboards/helix/rev3_4rows/keymaps/via/keymap.c index 3c152f9c91..5633594bf5 100644 --- a/keyboards/helix/rev3_4rows/keymaps/via/keymap.c +++ b/keyboards/helix/rev3_4rows/keymaps/via/keymap.c @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD ) diff --git a/keyboards/helix/rev3_5rows/keymaps/default/keymap.c b/keyboards/helix/rev3_5rows/keymaps/default/keymap.c index f744f82681..7799708073 100644 --- a/keyboards/helix/rev3_5rows/keymaps/default/keymap.c +++ b/keyboards/helix/rev3_5rows/keymaps/default/keymap.c @@ -113,7 +113,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, RGBRST, EEP_RST, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, EEP_RST, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/helix/rev3_5rows/keymaps/via/keymap.c b/keyboards/helix/rev3_5rows/keymaps/via/keymap.c index 43ea393a87..3dd9f2c630 100644 --- a/keyboards/helix/rev3_5rows/keymaps/via/keymap.c +++ b/keyboards/helix/rev3_5rows/keymaps/via/keymap.c @@ -113,7 +113,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, RGBRST, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/hhkb_lite_2/keymaps/default/keymap.c b/keyboards/hhkb_lite_2/keymaps/default/keymap.c index dd2d552e0b..e69dacc791 100644 --- a/keyboards/hhkb_lite_2/keymaps/default/keymap.c +++ b/keyboards/hhkb_lite_2/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), LAYOUT( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, diff --git a/keyboards/hhkb_lite_2/keymaps/via/keymap.c b/keyboards/hhkb_lite_2/keymaps/via/keymap.c index 7cbe7331c3..953bed291e 100644 --- a/keyboards/hhkb_lite_2/keymaps/via/keymap.c +++ b/keyboards/hhkb_lite_2/keymaps/via/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), LAYOUT( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, KC_NO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, diff --git a/keyboards/hidtech/bastyl/keymaps/default/keymap.c b/keyboards/hidtech/bastyl/keymaps/default/keymap.c index d6d291af54..15127838ce 100644 --- a/keyboards/hidtech/bastyl/keymaps/default/keymap.c +++ b/keyboards/hidtech/bastyl/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, //---------------------------------------------------------//-----------------------------------------------------------// - RESET, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, + QK_BOOT, _______, _______, _______, _______, KC_LBRC, KC_RBRC, KC_P7, KC_P8, KC_P9, _______, KC_PLUS, //---------------------------------------------------------//-----------------------------------------------------------// _______, KC_HOME, KC_PGUP, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_P4, KC_P5, KC_P6, KC_MINS, KC_PIPE, //---------------------------------------------------------//-----------------------------------------------------------// @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //---------------------------------------------------------//--------------------------------------------------------------// _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, //---------------------------------------------------------//--------------------------------------------------------------// - KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, RESET, + KC_LCTL, KC_HOME, KC_TRNS, KC_TRNS, KC_RALT, QK_BOOT, KC_SPC, KC_BSPC, KC_RCTL, KC_ENT ), }; diff --git a/keyboards/hineybush/h10/keymaps/default/keymap.c b/keyboards/hineybush/h10/keymaps/default/keymap.c index 125cce88bf..806f2918a5 100644 --- a/keyboards/hineybush/h10/keymaps/default/keymap.c +++ b/keyboards/hineybush/h10/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), }; diff --git a/keyboards/hineybush/h10/keymaps/via/keymap.c b/keyboards/hineybush/h10/keymaps/via/keymap.c index 5b6d9a3e4f..d5b386f2f2 100644 --- a/keyboards/hineybush/h10/keymaps/via/keymap.c +++ b/keyboards/hineybush/h10/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), [2] = LAYOUT_numpad_6x4( KC_VOLU, KC_MPLY, KC_MNXT, KC_TRNS, diff --git a/keyboards/hineybush/h60/keymaps/default/keymap.c b/keyboards/hineybush/h60/keymaps/default/keymap.c index 9195da4b85..5930c59e09 100644 --- a/keyboards/hineybush/h60/keymaps/default/keymap.c +++ b/keyboards/hineybush/h60/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_60_ansi( KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h60/keymaps/via/keymap.c b/keyboards/hineybush/h60/keymaps/via/keymap.c index 5f73376701..ed36e977bb 100644 --- a/keyboards/hineybush/h60/keymaps/via/keymap.c +++ b/keyboards/hineybush/h60/keymaps/via/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_SPC, KC_TRNS, KC_RALT, MO(1), KC_RGUI, KC_RCTL), LAYOUT_all( KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h65/keymaps/default/keymap.c b/keyboards/hineybush/h65/keymaps/default/keymap.c index fba330a0cb..1d6d041053 100644 --- a/keyboards/hineybush/h65/keymaps/default/keymap.c +++ b/keyboards/hineybush/h65/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/h65/keymaps/via/keymap.c b/keyboards/hineybush/h65/keymaps/via/keymap.c index c0abf9864a..a2f7d371eb 100644 --- a/keyboards/hineybush/h65/keymaps/via/keymap.c +++ b/keyboards/hineybush/h65/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c b/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c index fba330a0cb..1d6d041053 100644 --- a/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c +++ b/keyboards/hineybush/h65_hotswap/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c b/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c index c0abf9864a..a2f7d371eb 100644 --- a/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c +++ b/keyboards/hineybush/h65_hotswap/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT_all( KC_TRNS, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/h660s/keymaps/default/keymap.c b/keyboards/hineybush/h660s/keymaps/default/keymap.c index ceefb00f2b..4f65a4871b 100644 --- a/keyboards/hineybush/h660s/keymaps/default/keymap.c +++ b/keyboards/hineybush/h660s/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT_66_ansi_rwkl( KC_TRNS, RGB_TOG, RGB_MOD, BL_TOGG, BL_DEC, BL_INC, 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, RESET, 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, QK_BOOT, 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, 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) diff --git a/keyboards/hineybush/h660s/keymaps/via/keymap.c b/keyboards/hineybush/h660s/keymaps/via/keymap.c index 146aa77793..b7b7ad45f8 100644 --- a/keyboards/hineybush/h660s/keymaps/via/keymap.c +++ b/keyboards/hineybush/h660s/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, BL_TOGG, BL_DEC, BL_INC, 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, RESET, 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, QK_BOOT, 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, 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), diff --git a/keyboards/hineybush/h75_singa/keymaps/default/keymap.c b/keyboards/hineybush/h75_singa/keymaps/default/keymap.c index 1a1231d0f3..75726c5cdb 100644 --- a/keyboards/hineybush/h75_singa/keymaps/default/keymap.c +++ b/keyboards/hineybush/h75_singa/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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,RGB_TOG, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RGB_MOD, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RGB_MOD, 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,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS diff --git a/keyboards/hineybush/h75_singa/keymaps/via/keymap.c b/keyboards/hineybush/h75_singa/keymaps/via/keymap.c index 0a4b3eea4b..71a96396de 100644 --- a/keyboards/hineybush/h75_singa/keymaps/via/keymap.c +++ b/keyboards/hineybush/h75_singa/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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,RGB_TOG, - KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RGB_MOD, + KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,RGB_MOD, 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,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS diff --git a/keyboards/hineybush/h87a/keymaps/default/keymap.c b/keyboards/hineybush/h87a/keymaps/default/keymap.c index c26a54527b..199e18aa77 100644 --- a/keyboards/hineybush/h87a/keymaps/default/keymap.c +++ b/keyboards/hineybush/h87a/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h87a/keymaps/via/keymap.c b/keyboards/hineybush/h87a/keymaps/via/keymap.c index d248a6d4a3..e49b800db6 100644 --- a/keyboards/hineybush/h87a/keymaps/via/keymap.c +++ b/keyboards/hineybush/h87a/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h87a/keymaps/wkl/keymap.c b/keyboards/hineybush/h87a/keymaps/wkl/keymap.c index 208cd3b347..6fb0f2bf0d 100644 --- a/keyboards/hineybush/h87a/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/h87a/keymaps/wkl/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_wkl( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS ), diff --git a/keyboards/hineybush/h88/keymaps/default/keymap.c b/keyboards/hineybush/h88/keymaps/default/keymap.c index c4f1cf4e94..f131666c7c 100644 --- a/keyboards/hineybush/h88/keymaps/default/keymap.c +++ b/keyboards/hineybush/h88/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h88/keymaps/via/keymap.c b/keyboards/hineybush/h88/keymaps/via/keymap.c index 0e6bd37c1b..99ae4fa784 100644 --- a/keyboards/hineybush/h88/keymaps/via/keymap.c +++ b/keyboards/hineybush/h88/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hineybush/h88/keymaps/wkl/keymap.c b/keyboards/hineybush/h88/keymaps/wkl/keymap.c index 12f225289a..0ee79ddf45 100644 --- a/keyboards/hineybush/h88/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/h88/keymaps/wkl/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_wkl( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS ), diff --git a/keyboards/hineybush/hbcp/keymaps/default/keymap.c b/keyboards/hineybush/hbcp/keymaps/default/keymap.c index 19f67669f2..b430db909e 100644 --- a/keyboards/hineybush/hbcp/keymaps/default/keymap.c +++ b/keyboards/hineybush/hbcp/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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_PSCR, KC_SLCK,KC_HOME, KC_END, 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, RGB_HUD, RGB_HUI,KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, QK_BOOT ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,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, RGB_VAD, RGB_VAI,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_VOLU, RGB_TOG, RGB_MOD,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS,KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/hbcp/keymaps/via/keymap.c b/keyboards/hineybush/hbcp/keymaps/via/keymap.c index 8a260cee8f..d6b481bda2 100644 --- a/keyboards/hineybush/hbcp/keymaps/via/keymap.c +++ b/keyboards/hineybush/hbcp/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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_PSCR, KC_SLCK,KC_HOME, KC_END, 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, RGB_HUD, RGB_HUI,KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, QK_BOOT ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,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, RGB_VAD, RGB_VAI,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_VOLU, RGB_TOG, RGB_MOD,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS,KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c b/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c index 948b914e19..b0166f9bea 100644 --- a/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/hbcp/keymaps/wkl/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_wkl( 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_PSCR, KC_SLCK,KC_HOME, KC_END, 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, RGB_HUD, RGB_HUI,KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, QK_BOOT ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI,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, RGB_VAD, RGB_VAI,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_VOLU, RGB_TOG, RGB_MOD,KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS,KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/hineyg80/keymaps/default/keymap.c b/keyboards/hineybush/hineyg80/keymaps/default/keymap.c index c87dd24bd1..d172364f8f 100644 --- a/keyboards/hineybush/hineyg80/keymaps/default/keymap.c +++ b/keyboards/hineybush/hineyg80/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_100u_mods( /* Fn */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_MPRV, KC_MPLY, KC_MNXT, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, 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_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , 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, QK_BOOT , 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_CAPS, 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, 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 diff --git a/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c b/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c index d5664a97ea..3d879d4ad8 100644 --- a/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c +++ b/keyboards/hineybush/hineyg80/keymaps/wkl/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_150u_mods( /* Fn */______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_MPRV, KC_MPLY, KC_MNXT, KC_VOLU, ______, ______, ______, KC_VOLD, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_DEL, ______, ______, ______, ______, - ______, ______, ______, ______, RESET , ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, + ______, ______, ______, ______, QK_BOOT , ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, KC_CAPS, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______, ______ diff --git a/keyboards/hineybush/ibis/keymaps/default/keymap.c b/keyboards/hineybush/ibis/keymaps/default/keymap.c index 46f0d0221e..12860c0c04 100644 --- a/keyboards/hineybush/ibis/keymaps/default/keymap.c +++ b/keyboards/hineybush/ibis/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( KC_GRV, 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_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, QK_BOOT ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCTL, KC_LGUI, KC_LALT, KC_MPLY, KC_LALT, KC_TRNS, KC_RGUI, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/ibis/keymaps/via/keymap.c b/keyboards/hineybush/ibis/keymaps/via/keymap.c index d406afb052..84a0e44150 100644 --- a/keyboards/hineybush/ibis/keymaps/via/keymap.c +++ b/keyboards/hineybush/ibis/keymaps/via/keymap.c @@ -20,21 +20,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( KC_GRV, 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_PGUP, KC_NLCK, KC_PSLS, KC_PAST, KC_PAUS, - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, QK_BOOT ,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGDN, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_LALT, KC_TRNS, KC_RGUI, KC_MPRV, KC_VOLD, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,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, RESET ,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, QK_BOOT ,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, QK_BOOT ,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, 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 ), [3] = LAYOUT_all( - KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, RESET ,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, RESET ,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, QK_BOOT ,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, QK_BOOT ,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, 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 diff --git a/keyboards/hineybush/physix/keymaps/default/keymap.c b/keyboards/hineybush/physix/keymaps/default/keymap.c index fbd5dd60b2..262556e935 100644 --- a/keyboards/hineybush/physix/keymaps/default/keymap.c +++ b/keyboards/hineybush/physix/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_split_bksp_275_rspace( KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_BRTG, BL_TOGG, BL_INC, BL_DEC, KC_TRNS, KC_TRNS, KC_INS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, 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_END, 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 diff --git a/keyboards/hineybush/physix/keymaps/via/keymap.c b/keyboards/hineybush/physix/keymaps/via/keymap.c index 884147f141..42387dc251 100644 --- a/keyboards/hineybush/physix/keymaps/via/keymap.c +++ b/keyboards/hineybush/physix/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_split_bksp_275_rspace( KC_GRV, 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_INS, - KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, BL_BRTG, BL_TOGG, BL_INC, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, 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 diff --git a/keyboards/hineybush/sm68/keymaps/default/keymap.c b/keyboards/hineybush/sm68/keymaps/default/keymap.c index d7b3261775..ea484bbc49 100644 --- a/keyboards/hineybush/sm68/keymaps/default/keymap.c +++ b/keyboards/hineybush/sm68/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_68_ansi_split_rshift( KC_TRNS, 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, RGB_TOG, RGB_MOD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hineybush/sm68/keymaps/via/keymap.c b/keyboards/hineybush/sm68/keymaps/via/keymap.c index cbfaae4d9c..b893308af7 100644 --- a/keyboards/hineybush/sm68/keymaps/via/keymap.c +++ b/keyboards/hineybush/sm68/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_68_ansi_split_rshift( KC_TRNS, 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, RGB_TOG, RGB_MOD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/hnahkb/freyr/keymaps/default/keymap.c b/keyboards/hnahkb/freyr/keymaps/default/keymap.c index f7ade501fb..eb6ca981e3 100644 --- a/keyboards/hnahkb/freyr/keymaps/default/keymap.c +++ b/keyboards/hnahkb/freyr/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, LOWER, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_LOWER] = LAYOUT_tkl_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/hnahkb/stella/keymaps/default/keymap.c b/keyboards/hnahkb/stella/keymaps/default/keymap.c index d8a8f47ba6..c4808bcef1 100644 --- a/keyboards/hnahkb/stella/keymaps/default/keymap.c +++ b/keyboards/hnahkb/stella/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, LOWER, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_LOWER] = LAYOUT_tkl_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/holyswitch/southpaw75/keymaps/default/keymap.c b/keyboards/holyswitch/southpaw75/keymaps/default/keymap.c index 29675ef773..e405f61d90 100644 --- a/keyboards/holyswitch/southpaw75/keymaps/default/keymap.c +++ b/keyboards/holyswitch/southpaw75/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/holyswitch/southpaw75/keymaps/via/keymap.c b/keyboards/holyswitch/southpaw75/keymaps/via/keymap.c index cfca6b435d..450e55bf8d 100644 --- a/keyboards/holyswitch/southpaw75/keymaps/via/keymap.c +++ b/keyboards/holyswitch/southpaw75/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/default/keymap.c b/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/default/keymap.c index 48416c84c9..3a91494536 100644 --- a/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/default/keymap.c +++ b/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/default/keymap.c @@ -99,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ [_FN] = LAYOUT_65_ansi( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, QK_BOOT, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, RGB_HUI, RGB_MOD, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, KC_HOME, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, KC_END, diff --git a/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/via/keymap.c b/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/via/keymap.c index 48416c84c9..3a91494536 100644 --- a/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/via/keymap.c +++ b/keyboards/horrortroll/chinese_pcb/devil68_pro/keymaps/via/keymap.c @@ -99,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ [_FN] = LAYOUT_65_ansi( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, QK_BOOT, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, RGB_HUI, RGB_MOD, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, KC_HOME, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, KC_END, diff --git a/keyboards/horrortroll/handwired_k552/keymaps/default/keymap.c b/keyboards/horrortroll/handwired_k552/keymaps/default/keymap.c index 641e0e5381..80bdeacc2b 100644 --- a/keyboards/horrortroll/handwired_k552/keymaps/default/keymap.c +++ b/keyboards/horrortroll/handwired_k552/keymaps/default/keymap.c @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */ [_FN] = LAYOUT_tkl_ansi( - RESET, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG, + QK_BOOT, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, RGB_C_E, _______, _______, _______, G1_HUD, G1_HUI, G1_SAD, G1_SAI, G1_VAD, G1_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, TG(_WAVE), _______, G2_HUD, G2_HUI, G2_SAD, G2_SAI, G2_VAD, G2_VAI, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/horrortroll/handwired_k552/keymaps/via/keymap.c b/keyboards/horrortroll/handwired_k552/keymaps/via/keymap.c index 641e0e5381..80bdeacc2b 100644 --- a/keyboards/horrortroll/handwired_k552/keymaps/via/keymap.c +++ b/keyboards/horrortroll/handwired_k552/keymaps/via/keymap.c @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 */ [_FN] = LAYOUT_tkl_ansi( - RESET, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG, + QK_BOOT, KC_MSEL, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT, KC_MAIL, KC_WHOM, KC_CALC, KC_WSCH, RGB_RMOD, RGB_MOD, RGB_TOG, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_SPI, _______, RGB_C_E, _______, _______, _______, G1_HUD, G1_HUI, G1_SAD, G1_SAI, G1_VAD, G1_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, TG(_WAVE), _______, G2_HUD, G2_HUI, G2_SAD, G2_SAI, G2_VAD, G2_VAI, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/horrortroll/paws60/keymaps/default/keymap.c b/keyboards/horrortroll/paws60/keymaps/default/keymap.c index 33319041d5..1343528b48 100644 --- a/keyboards/horrortroll/paws60/keymaps/default/keymap.c +++ b/keyboards/horrortroll/paws60/keymaps/default/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ [_FN] = LAYOUT_60_ansi_split_bs_rshift( KC_GRV, 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, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/horrortroll/paws60/keymaps/via/keymap.c b/keyboards/horrortroll/paws60/keymaps/via/keymap.c index 33319041d5..1343528b48 100644 --- a/keyboards/horrortroll/paws60/keymaps/via/keymap.c +++ b/keyboards/horrortroll/paws60/keymaps/via/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 */ [_FN] = LAYOUT_60_ansi_split_bs_rshift( KC_GRV, 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, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/hp69/keymaps/default/keymap.c b/keyboards/hp69/keymaps/default/keymap.c index e7f4d7f759..b0fe42d1e8 100644 --- a/keyboards/hp69/keymaps/default/keymap.c +++ b/keyboards/hp69/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MODE_FORWARD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MODE_RGBTEST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/hp69/keymaps/via/keymap.c b/keyboards/hp69/keymaps/via/keymap.c index a4743af623..20d24538b3 100644 --- a/keyboards/hp69/keymaps/via/keymap.c +++ b/keyboards/hp69/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_RGUI, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - 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, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, RGB_MODE_FORWARD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MODE_RGBTEST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/hs60/v1/keymaps/ansi/keymap.c b/keyboards/hs60/v1/keymaps/ansi/keymap.c index 9cb6d9e254..9155aaa741 100644 --- a/keyboards/hs60/v1/keymaps/ansi/keymap.c +++ b/keyboards/hs60/v1/keymaps/ansi/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( /* FN */ KC_TRNS, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hs60/v1/keymaps/default/keymap.c b/keyboards/hs60/v1/keymaps/default/keymap.c index 222ac0e4b1..a748e3e324 100644 --- a/keyboards/hs60/v1/keymaps/default/keymap.c +++ b/keyboards/hs60/v1/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso( /* FN */ KC_TRNS, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hs60/v2/ansi/keymaps/default/keymap.c b/keyboards/hs60/v2/ansi/keymaps/default/keymap.c index 228e6ac19d..359e0ccf17 100644 --- a/keyboards/hs60/v2/ansi/keymaps/default/keymap.c +++ b/keyboards/hs60/v2/ansi/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( /* FN */ KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hs60/v2/ansi/keymaps/via/keymap.c b/keyboards/hs60/v2/ansi/keymaps/via/keymap.c index 228e6ac19d..359e0ccf17 100644 --- a/keyboards/hs60/v2/ansi/keymaps/via/keymap.c +++ b/keyboards/hs60/v2/ansi/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( /* FN */ KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c index 86912e9d36..767920882c 100644 --- a/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c +++ b/keyboards/hs60/v2/hhkb/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_hhkb( /* FN */ - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_UP, KC_TRNS, KC_DEL, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c index 86912e9d36..767920882c 100644 --- a/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c +++ b/keyboards/hs60/v2/hhkb/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_hhkb( /* FN */ - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_UP, KC_TRNS, KC_DEL, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, KC_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/hs60/v2/iso/keymaps/default/keymap.c b/keyboards/hs60/v2/iso/keymaps/default/keymap.c index c4e8930b22..984175788f 100644 --- a/keyboards/hs60/v2/iso/keymaps/default/keymap.c +++ b/keyboards/hs60/v2/iso/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso( /* FN */ KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hs60/v2/iso/keymaps/via/keymap.c b/keyboards/hs60/v2/iso/keymaps/via/keymap.c index c4e8930b22..984175788f 100644 --- a/keyboards/hs60/v2/iso/keymaps/via/keymap.c +++ b/keyboards/hs60/v2/iso/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso( /* FN */ KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/hub16/keymaps/default/keymap.c b/keyboards/hub16/keymaps/default/keymap.c index 1c1d188f29..efe10d3743 100755 --- a/keyboards/hub16/keymaps/default/keymap.c +++ b/keyboards/hub16/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_MOD, RGB_RMOD, RGB_TOG, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, - _______, _______, RESET, _______ + _______, _______, QK_BOOT, _______ ), }; diff --git a/keyboards/hub16/keymaps/via/keymap.c b/keyboards/hub16/keymaps/via/keymap.c index c7facf2ed4..1f5a4d4b12 100755 --- a/keyboards/hub16/keymaps/via/keymap.c +++ b/keyboards/hub16/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_MOD, RGB_RMOD, RGB_TOG, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______, _______, - _______, _______, RESET, _______ + _______, _______, QK_BOOT, _______ ), [2] = LAYOUT( diff --git a/keyboards/hub20/keymaps/default/keymap.c b/keyboards/hub20/keymaps/default/keymap.c index a0f048825e..26a3a5b5fa 100644 --- a/keyboards/hub20/keymaps/default/keymap.c +++ b/keyboards/hub20/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PENT, KC_PDOT, KC_P0, KC_P0 ), [1] = LAYOUT_all( - RESET, _______, + QK_BOOT, _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUD, RGB_HUI, _______, diff --git a/keyboards/hub20/keymaps/via/keymap.c b/keyboards/hub20/keymaps/via/keymap.c index 3f3f3ebd86..bf36d42ab7 100644 --- a/keyboards/hub20/keymaps/via/keymap.c +++ b/keyboards/hub20/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PENT, KC_PDOT, KC_P0, KC_P0 ), [1] = LAYOUT_all( - RESET, _______, + QK_BOOT, _______, RGB_TOG, RGB_RMOD, RGB_MOD, _______, _______, RGB_VAD, RGB_VAI, _______, _______, RGB_HUD, RGB_HUI, _______, diff --git a/keyboards/ibnuda/alicia_cook/keymaps/default/keymap.c b/keyboards/ibnuda/alicia_cook/keymaps/default/keymap.c index c28967f381..88adf9c8b2 100644 --- a/keyboards/ibnuda/alicia_cook/keymaps/default/keymap.c +++ b/keyboards/ibnuda/alicia_cook/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_all( 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_F13, KC_LCTL,KC_EXLM,KC_AT, KC_HASH,KC_DLR, KC_PERC, KC_CIRC,KC_AMPR,KC_ASTR,KC_LPRN,KC_RPRN, KC_SCLN, - KC_LSFT,KC_Z, KC_X, KC_C, KC_V, RESET, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(1), + KC_LSFT,KC_Z, KC_X, KC_C, KC_V, QK_BOOT, KC_N, KC_M, KC_COMM,KC_DOT, KC_SLSH,KC_RSFT,MO(1), KC_LGUI,KC_LALT, KC_LGUI,LW_BSPC,SFT_ESC, ALT_ENT,RS_SPC, KC_LALT, KC_RGUI,KC_RCTL ), }; diff --git a/keyboards/ibnuda/gurindam/keymaps/default/keymap.c b/keyboards/ibnuda/gurindam/keymaps/default/keymap.c index b451bbf050..bbbd4a2c2a 100644 --- a/keyboards/ibnuda/gurindam/keymaps/default/keymap.c +++ b/keyboards/ibnuda/gurindam/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, _______, _______, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW,RGB_M_SN,_______, _______, _______, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ibnuda/gurindam/keymaps/via/keymap.c b/keyboards/ibnuda/gurindam/keymaps/via/keymap.c index 3549a1bdea..1cbce827af 100644 --- a/keyboards/ibnuda/gurindam/keymaps/via/keymap.c +++ b/keyboards/ibnuda/gurindam/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ibnuda/squiggle/keymaps/default/keymap.c b/keyboards/ibnuda/squiggle/keymaps/default/keymap.c index 68ef0ed210..661bee8d03 100644 --- a/keyboards/ibnuda/squiggle/keymaps/default/keymap.c +++ b/keyboards/ibnuda/squiggle/keymaps/default/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______,EXPLR, KC_UP, PRVTAB, PRVWIN, NXTWIN, NXTTAB, _______,_______,LCKGUI, TSKMGR, KC_LEFT,KC_DOWN,KC_RGHT,UPTAB, DNTAB, KC_ENT, KC_LGUI,_______,CALDL, - _______,CLSGUI, _______,CONPST, RESET, _______,_______,_______,_______,_______, + _______,CLSGUI, _______,CONPST, QK_BOOT, _______,_______,_______,_______,_______, _______,_______, _______,_______ ), }; diff --git a/keyboards/ibnuda/squiggle/keymaps/default38/keymap.c b/keyboards/ibnuda/squiggle/keymaps/default38/keymap.c index c42b9e783d..db09761bc2 100644 --- a/keyboards/ibnuda/squiggle/keymaps/default38/keymap.c +++ b/keyboards/ibnuda/squiggle/keymaps/default38/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_thumbrow( _______,EXPLR, KC_UP, PRVTAB, PRVWIN, NXTWIN, NXTTAB, _______,_______,LCKGUI, TSKMGR, KC_LEFT,KC_DOWN,KC_RGHT,UPTAB, DNTAB, KC_ENT, KC_LGUI,_______,CALDL, - _______,CLSGUI, _______,CONPST, RESET, _______,_______,_______,_______,_______, + _______,CLSGUI, _______,CONPST, QK_BOOT, _______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______ ), }; diff --git a/keyboards/ibnuda/squiggle/keymaps/defaultfull/keymap.c b/keyboards/ibnuda/squiggle/keymaps/defaultfull/keymap.c index 97785f0614..04ed6f97bf 100644 --- a/keyboards/ibnuda/squiggle/keymaps/defaultfull/keymap.c +++ b/keyboards/ibnuda/squiggle/keymaps/defaultfull/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_full( _______,EXPLR, KC_UP, PRVTAB, PRVWIN, NXTWIN, NXTTAB, _______,_______,LCKGUI, TSKMGR, KC_LEFT,KC_DOWN,KC_RGHT,UPTAB, DNTAB, KC_ENT, KC_LGUI,_______,CALDL, - _______,CLSGUI, _______,CONPST, RESET, _______,_______,_______,_______,_______, + _______,CLSGUI, _______,CONPST, QK_BOOT, _______,_______,_______,_______,_______, _______,_______,_______,_______,_______, _______,_______,_______,_______,_______ ), }; diff --git a/keyboards/ibnuda/squiggle/keymaps/defaultminidox/keymap.c b/keyboards/ibnuda/squiggle/keymaps/defaultminidox/keymap.c index 3c19f38818..70d9cfabce 100644 --- a/keyboards/ibnuda/squiggle/keymaps/defaultminidox/keymap.c +++ b/keyboards/ibnuda/squiggle/keymaps/defaultminidox/keymap.c @@ -151,7 +151,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x5_3( _______,EXPLR, KC_UP, PRVTAB, PRVWIN, NXTWIN, NXTTAB, _______,_______,LCKGUI, TSKMGR, KC_LEFT,KC_DOWN,KC_RGHT,UPTAB, DNTAB, KC_ENT, KC_LGUI,_______,CALDL, - _______,CLSGUI, _______,CONPST, RESET, _______,_______,_______,_______,_______, + _______,CLSGUI, _______,CONPST, QK_BOOT, _______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______ ), }; diff --git a/keyboards/idb/idb_60/keymaps/default/keymap.c b/keyboards/idb/idb_60/keymaps/default/keymap.c index 60cac7559f..a05fbd42c7 100644 --- a/keyboards/idb/idb_60/keymaps/default/keymap.c +++ b/keyboards/idb/idb_60/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_60_ansi_wkl_split_rshift( - 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, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idb/idb_60/keymaps/via/keymap.c b/keyboards/idb/idb_60/keymaps/via/keymap.c index 60cac7559f..a05fbd42c7 100644 --- a/keyboards/idb/idb_60/keymaps/via/keymap.c +++ b/keyboards/idb/idb_60/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_60_ansi_wkl_split_rshift( - 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, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id67/keymaps/default/keymap.c b/keyboards/idobao/id67/keymaps/default/keymap.c index 450550e12a..54b39ad4a7 100644 --- a/keyboards/idobao/id67/keymaps/default/keymap.c +++ b/keyboards/idobao/id67/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, RESET, RGB_SPI, RGB_SPD, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, QK_BOOT, RGB_SPI, RGB_SPD, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/idobao/id67/keymaps/via/keymap.c b/keyboards/idobao/id67/keymaps/via/keymap.c index 8155067b9f..ff0bfff745 100644 --- a/keyboards/idobao/id67/keymaps/via/keymap.c +++ b/keyboards/idobao/id67/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_65_ansi_blocker( diff --git a/keyboards/idobao/id75/keymaps/default75/keymap.c b/keyboards/idobao/id75/keymaps/default75/keymap.c index 8d8ae4414c..705af7ba0e 100644 --- a/keyboards/idobao/id75/keymaps/default75/keymap.c +++ b/keyboards/idobao/id75/keymaps/default75/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, MO(_FN), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ ), diff --git a/keyboards/idobao/id80/v1/ansi/keymaps/default/keymap.c b/keyboards/idobao/id80/v1/ansi/keymaps/default/keymap.c index 696fb303e2..ac2fb15b83 100644 --- a/keyboards/idobao/id80/v1/ansi/keymaps/default/keymap.c +++ b/keyboards/idobao/id80/v1/ansi/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id80/v1/ansi/keymaps/via/keymap.c b/keyboards/idobao/id80/v1/ansi/keymaps/via/keymap.c index 686ce9ce73..669eb702d8 100644 --- a/keyboards/idobao/id80/v1/ansi/keymaps/via/keymap.c +++ b/keyboards/idobao/id80/v1/ansi/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id80/v1/iso/keymaps/default/keymap.c b/keyboards/idobao/id80/v1/iso/keymaps/default/keymap.c index 1cc6067356..9784ce8253 100644 --- a/keyboards/idobao/id80/v1/iso/keymaps/default/keymap.c +++ b/keyboards/idobao/id80/v1/iso/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id80/v1/iso/keymaps/via/keymap.c b/keyboards/idobao/id80/v1/iso/keymaps/via/keymap.c index 710da2edf1..808c4d3c89 100644 --- a/keyboards/idobao/id80/v1/iso/keymaps/via/keymap.c +++ b/keyboards/idobao/id80/v1/iso/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id80/v3/keymaps/default/keymap.c b/keyboards/idobao/id80/v3/keymaps/default/keymap.c index 697c4b9189..f7886f1e0e 100644 --- a/keyboards/idobao/id80/v3/keymaps/default/keymap.c +++ b/keyboards/idobao/id80/v3/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id80/v3/keymaps/via/keymap.c b/keyboards/idobao/id80/v3/keymaps/via/keymap.c index 1f37572503..19787b6b89 100644 --- a/keyboards/idobao/id80/v3/keymaps/via/keymap.c +++ b/keyboards/idobao/id80/v3/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id87/v1/keymaps/default/keymap.c b/keyboards/idobao/id87/v1/keymaps/default/keymap.c index 2b07bdb0ec..9465dca531 100644 --- a/keyboards/idobao/id87/v1/keymaps/default/keymap.c +++ b/keyboards/idobao/id87/v1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id87/v1/keymaps/via/keymap.c b/keyboards/idobao/id87/v1/keymaps/via/keymap.c index 534784555c..e71a924bfd 100644 --- a/keyboards/idobao/id87/v1/keymaps/via/keymap.c +++ b/keyboards/idobao/id87/v1/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id87/v2/keymaps/default/keymap.c b/keyboards/idobao/id87/v2/keymaps/default/keymap.c index 2b07bdb0ec..9465dca531 100644 --- a/keyboards/idobao/id87/v2/keymaps/default/keymap.c +++ b/keyboards/idobao/id87/v2/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id87/v2/keymaps/via/keymap.c b/keyboards/idobao/id87/v2/keymaps/via/keymap.c index 534784555c..e71a924bfd 100644 --- a/keyboards/idobao/id87/v2/keymaps/via/keymap.c +++ b/keyboards/idobao/id87/v2/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, BL_TOGG, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id96/keymaps/default/keymap.c b/keyboards/idobao/id96/keymaps/default/keymap.c index 587620bad4..e2d774c182 100644 --- a/keyboards/idobao/id96/keymaps/default/keymap.c +++ b/keyboards/idobao/id96/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Layer 1, function layer ____________________________________________________________________________________________________________________________________________________________________________ | | | | | | | | | | | | | | | VOL | VOL | | | | - | RESET | | | | | | | | | | | | | MUTE | DOWN | UP | | | | + | QK_BOOT | | | | | | | | | | | | | MUTE | DOWN | UP | | | | |________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [LAYER_1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/id96/keymaps/via/keymap.c b/keyboards/idobao/id96/keymaps/via/keymap.c index 1c927da824..3aff55a115 100644 --- a/keyboards/idobao/id96/keymaps/via/keymap.c +++ b/keyboards/idobao/id96/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT), [LAYER_1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/idobao/montex/v1/keymaps/default/keymap.c b/keyboards/idobao/montex/v1/keymaps/default/keymap.c index a15c576cbb..940bc481b8 100644 --- a/keyboards/idobao/montex/v1/keymaps/default/keymap.c +++ b/keyboards/idobao/montex/v1/keymaps/default/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └───┴───────┴───┘───┘ */ [1] = LAYOUT_numpad_6x5( - RESET, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, _______, KC_LEFT, XXXXXXX, KC_RGHT, _______, diff --git a/keyboards/idobao/montex/v1/keymaps/via/keymap.c b/keyboards/idobao/montex/v1/keymaps/via/keymap.c index eb7875dc32..3f9800f85d 100644 --- a/keyboards/idobao/montex/v1/keymaps/via/keymap.c +++ b/keyboards/idobao/montex/v1/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_P0, KC_PDOT, KC_PENT ), [1] = LAYOUT_numpad_6x5( - RESET, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, _______, KC_LEFT, XXXXXXX, KC_RGHT, _______, diff --git a/keyboards/illusion/rosa/keymaps/via/keymap.c b/keyboards/illusion/rosa/keymaps/via/keymap.c index 8ff4f461a4..1f3f4b6273 100644 --- a/keyboards/illusion/rosa/keymaps/via/keymap.c +++ b/keyboards/illusion/rosa/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_60_ansi_tsangan( KC_TRNS, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/ilumkb/primus75/keymaps/default/keymap.c b/keyboards/ilumkb/primus75/keymaps/default/keymap.c index c56a2863ae..2bed82ceb9 100644 --- a/keyboards/ilumkb/primus75/keymaps/default/keymap.c +++ b/keyboards/ilumkb/primus75/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ilumkb/primus75/keymaps/via/keymap.c b/keyboards/ilumkb/primus75/keymaps/via/keymap.c index 3ef86e5d75..fcc216529a 100644 --- a/keyboards/ilumkb/primus75/keymaps/via/keymap.c +++ b/keyboards/ilumkb/primus75/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ilumkb/simpler61/keymaps/default/keymap.c b/keyboards/ilumkb/simpler61/keymaps/default/keymap.c index 8e7fe51b99..472cb65a28 100644 --- a/keyboards/ilumkb/simpler61/keymaps/default/keymap.c +++ b/keyboards/ilumkb/simpler61/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_61_ansi( KC_GESC, 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_UP, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, RESET, + _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ilumkb/simpler61/keymaps/via/keymap.c b/keyboards/ilumkb/simpler61/keymaps/via/keymap.c index c885617df0..984af3101d 100644 --- a/keyboards/ilumkb/simpler61/keymaps/via/keymap.c +++ b/keyboards/ilumkb/simpler61/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_61_ansi( KC_GESC, 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_UP, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, RESET, + _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ilumkb/simpler64/keymaps/default/keymap.c b/keyboards/ilumkb/simpler64/keymaps/default/keymap.c index f3f83cc411..766ef1aed9 100644 --- a/keyboards/ilumkb/simpler64/keymaps/default/keymap.c +++ b/keyboards/ilumkb/simpler64/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( KC_GESC, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ilumkb/simpler64/keymaps/via/keymap.c b/keyboards/ilumkb/simpler64/keymaps/via/keymap.c index f003f733b7..f10930f84a 100644 --- a/keyboards/ilumkb/simpler64/keymaps/via/keymap.c +++ b/keyboards/ilumkb/simpler64/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( KC_GESC, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/inett_studio/sqx/hotswap/keymaps/default/keymap.c b/keyboards/inett_studio/sqx/hotswap/keymaps/default/keymap.c index 0e814cc98c..ea4fd79d27 100644 --- a/keyboards/inett_studio/sqx/hotswap/keymaps/default/keymap.c +++ b/keyboards/inett_studio/sqx/hotswap/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_tsangan_hhkb( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME, KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______,_______), diff --git a/keyboards/inett_studio/sqx/hotswap/keymaps/via/keymap.c b/keyboards/inett_studio/sqx/hotswap/keymaps/via/keymap.c index d9258169fa..80c8e7535f 100644 --- a/keyboards/inett_studio/sqx/hotswap/keymaps/via/keymap.c +++ b/keyboards/inett_studio/sqx/hotswap/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_tsangan_hhkb( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME, KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______, TG(0),_______), diff --git a/keyboards/inett_studio/sqx/universal/keymaps/default/keymap.c b/keyboards/inett_studio/sqx/universal/keymaps/default/keymap.c index bd2869e247..d8816f7289 100644 --- a/keyboards/inett_studio/sqx/universal/keymaps/default/keymap.c +++ b/keyboards/inett_studio/sqx/universal/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME, KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______,TG(0),_______), diff --git a/keyboards/inett_studio/sqx/universal/keymaps/via/keymap.c b/keyboards/inett_studio/sqx/universal/keymaps/via/keymap.c index c58090d9d7..9815da842b 100644 --- a/keyboards/inett_studio/sqx/universal/keymaps/via/keymap.c +++ b/keyboards/inett_studio/sqx/universal/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME, KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______, TG(0),_______), diff --git a/keyboards/irene/keymaps/default/keymap.c b/keyboards/irene/keymaps/default/keymap.c index 8f102b441d..7f71da3079 100644 --- a/keyboards/irene/keymaps/default/keymap.c +++ b/keyboards/irene/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_all( - 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, KC_DEL, KC_DEL, + QK_BOOT, _______, 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_DEL, KC_HOME, _______, _______, KC_UP, _______, _______, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_VAD, RGB_VAI, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/irene/keymaps/via/keymap.c b/keyboards/irene/keymaps/via/keymap.c index 8f102b441d..7f71da3079 100644 --- a/keyboards/irene/keymaps/via/keymap.c +++ b/keyboards/irene/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_all( - 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, KC_DEL, KC_DEL, + QK_BOOT, _______, 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_DEL, KC_HOME, _______, _______, KC_UP, _______, _______, _______, RGB_HUD, RGB_HUI, RGB_SAD, RGB_VAD, RGB_VAI, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/iriskeyboards/keymaps/default/keymap.c b/keyboards/iriskeyboards/keymaps/default/keymap.c index e4e06b57c1..8df65da140 100644 --- a/keyboards/iriskeyboards/keymaps/default/keymap.c +++ b/keyboards/iriskeyboards/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/iriskeyboards/keymaps/via/keymap.c b/keyboards/iriskeyboards/keymaps/via/keymap.c index 7d84a2eb62..4c6beeecde 100644 --- a/keyboards/iriskeyboards/keymaps/via/keymap.c +++ b/keyboards/iriskeyboards/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/iron180/keymaps/default/keymap.c b/keyboards/iron180/keymaps/default/keymap.c index 46b1072228..8684b0bb73 100755 --- a/keyboards/iron180/keymaps/default/keymap.c +++ b/keyboards/iron180/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LWIN, KC_LALT, KC_SPC , KC_RALT, KC_RWIN, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/iron180/keymaps/via/keymap.c b/keyboards/iron180/keymaps/via/keymap.c index 46b1072228..8684b0bb73 100755 --- a/keyboards/iron180/keymaps/via/keymap.c +++ b/keyboards/iron180/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LWIN, KC_LALT, KC_SPC , KC_RALT, KC_RWIN, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/j80/keymaps/default/keymap.c b/keyboards/j80/keymaps/default/keymap.c index 6926da8ea1..4fa93835f1 100644 --- a/keyboards/j80/keymaps/default/keymap.c +++ b/keyboards/j80/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT_tkl_ansi_split_rshift( - RESET, 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, + QK_BOOT, 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, KC_TRNS, QMKBEST, 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, diff --git a/keyboards/j80/keymaps/default_iso/keymap.c b/keyboards/j80/keymaps/default_iso/keymap.c index 4253454f79..8435953611 100644 --- a/keyboards/j80/keymaps/default_iso/keymap.c +++ b/keyboards/j80/keymaps/default_iso/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT_tkl_iso_split_rshift( - RESET, 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, + QK_BOOT, 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, KC_TRNS, QMKBEST, 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, diff --git a/keyboards/jacky_studio/bear_65/keymaps/default/keymap.c b/keyboards/jacky_studio/bear_65/keymaps/default/keymap.c index c6be30aeaf..45ae589854 100644 --- a/keyboards/jacky_studio/bear_65/keymaps/default/keymap.c +++ b/keyboards/jacky_studio/bear_65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_MOD, _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, RGB_TOG, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/jacky_studio/bear_65/keymaps/via/keymap.c b/keyboards/jacky_studio/bear_65/keymaps/via/keymap.c index f99c36ab2a..d09fda1283 100644 --- a/keyboards/jacky_studio/bear_65/keymaps/via/keymap.c +++ b/keyboards/jacky_studio/bear_65/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, KC_LGUI, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_full_bs( - 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, _______, _______, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_MOD, _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAD, RGB_VAI, _______, RGB_TOG, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/jacky_studio/s7_elephant/rev1/keymaps/default/keymap.c b/keyboards/jacky_studio/s7_elephant/rev1/keymaps/default/keymap.c index 4b163f3426..38ae215e1f 100644 --- a/keyboards/jacky_studio/s7_elephant/rev1/keymaps/default/keymap.c +++ b/keyboards/jacky_studio/s7_elephant/rev1/keymaps/default/keymap.c @@ -60,7 +60,7 @@ KC_F5, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, */ [_FN] = LAYOUT_ansi( -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, KC_PSCR, KC_SLCK, KC_PAUS, +QK_BOOT, 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_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, diff --git a/keyboards/jacky_studio/s7_elephant/rev2/keymaps/default/keymap.c b/keyboards/jacky_studio/s7_elephant/rev2/keymaps/default/keymap.c index 5261691e02..40b18ef53f 100644 --- a/keyboards/jacky_studio/s7_elephant/rev2/keymaps/default/keymap.c +++ b/keyboards/jacky_studio/s7_elephant/rev2/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FN] = LAYOUT_ansi_1u( - 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, KC_PSCR, KC_SLCK, KC_PAUS, + QK_BOOT, 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_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, diff --git a/keyboards/jadookb/jkb65/keymaps/via/keymap.c b/keyboards/jadookb/jkb65/keymaps/via/keymap.c index b7b81a1500..5713fe3805 100644 --- a/keyboards/jadookb/jkb65/keymaps/via/keymap.c +++ b/keyboards/jadookb/jkb65/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MAGIC_UNNO_GUI,MAGIC_NO_GUI, _______, RGB_TOG, _______, MO(2), RGB_SPD, RGB_VAD, RGB_SPI ), [2] = LAYOUT_67_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/jae/j01/keymaps/default/keymap.c b/keyboards/jae/j01/keymaps/default/keymap.c index 7afb8bc96a..114939c4d2 100644 --- a/keyboards/jae/j01/keymaps/default/keymap.c +++ b/keyboards/jae/j01/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_ansi( - KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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_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_HOME, KC_TRNS, KC_TRNS, BL_BRTG, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/jian/keymaps/default/keymap.c b/keyboards/jian/keymaps/default/keymap.c index 7f4391f7d2..3850ea3d10 100644 --- a/keyboards/jian/keymaps/default/keymap.c +++ b/keyboards/jian/keymaps/default/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_symmetric( - RESET, DEBUG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, DEBUG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, WORKMAN, COLEMAK, DVORAK, QWERTY, XXXXXXX, TG(_BCKLT_ADJ), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, SW_TG, _______ diff --git a/keyboards/jian/keymaps/via/keymap.c b/keyboards/jian/keymaps/via/keymap.c index 9da0b5f4da..ac9586587b 100644 --- a/keyboards/jian/keymaps/via/keymap.c +++ b/keyboards/jian/keymaps/via/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, LT(3, KC_ENT), LT(3, KC_ESC), _______, _______ ), [3] = LAYOUT_symmetric( - RESET, DEBUG, XXXXXXX, BL_INC, RGB_VAI, RGB_HUD, RGB_HUI, + QK_BOOT, DEBUG, XXXXXXX, BL_INC, RGB_VAI, RGB_HUD, RGB_HUI, XXXXXXX, XXXXXXX, BL_DEC, RGB_VAD, RGB_SAD, RGB_SAI, XXXXXXX, BL_BRTG, BL_TOGG, RGB_TOG, RGB_RMOD,RGB_MOD, _______, SH_TG, _______ diff --git a/keyboards/jiran/keymaps/default/keymap.c b/keyboards/jiran/keymaps/default/keymap.c index 586cd67a93..d45467eb6a 100644 --- a/keyboards/jiran/keymaps/default/keymap.c +++ b/keyboards/jiran/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_EQL, // ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ - KC_F11, KC_TAB, RGB_HUI, KC_HOME, RESET, RGB_SAI, RGB_VAI, KC_VOLU, KC_PGUP, RESET, KC_HOME, KC_INS, KC_DEL, KC_F12, + KC_F11, KC_TAB, RGB_HUI, KC_HOME, QK_BOOT, RGB_SAI, RGB_VAI, KC_VOLU, KC_PGUP, QK_BOOT, KC_HOME, KC_INS, KC_DEL, KC_F12, // └────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┘ KC_LSFT, RGB_HUD, KC_LEFT, KC_UP, KC_RGHT, RGB_VAD, KC_MUTE, KC_LEFT, KC_UP, KC_RGHT, KC_PSCR, KC_SLSF, // ├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/jiran/keymaps/via/keymap.c b/keyboards/jiran/keymaps/via/keymap.c index 710cb81ec4..bda28f4bb5 100644 --- a/keyboards/jiran/keymaps/via/keymap.c +++ b/keyboards/jiran/keymaps/via/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_EQL, // ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ - KC_F11, KC_TAB, RGB_HUI, KC_HOME, RESET, RGB_SAI, RGB_VAI, KC_VOLU, KC_PGUP, RESET, KC_HOME, KC_INS, KC_DEL, KC_F12, + KC_F11, KC_TAB, RGB_HUI, KC_HOME, QK_BOOT, RGB_SAI, RGB_VAI, KC_VOLU, KC_PGUP, QK_BOOT, KC_HOME, KC_INS, KC_DEL, KC_F12, // └────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┘ KC_LSFT, RGB_HUD, KC_LEFT, KC_UP, KC_RGHT, RGB_VAD, KC_MUTE, KC_LEFT, KC_UP, KC_RGHT, KC_PSCR, RSFT_T(KC_LSCR), // ├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/jm60/keymaps/default/keymap.c b/keyboards/jm60/keymaps/default/keymap.c index 0940d7efce..f4d444cc75 100644 --- a/keyboards/jm60/keymaps/default/keymap.c +++ b/keyboards/jm60/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT_60_ansi( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/jones/v03/keymaps/default_jp/keymap.c b/keyboards/jones/v03/keymaps/default_jp/keymap.c index 1cf67fbedd..3f5b10208c 100644 --- a/keyboards/jones/v03/keymaps/default_jp/keymap.c +++ b/keyboards/jones/v03/keymaps/default_jp/keymap.c @@ -120,7 +120,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_jp( _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______, _______,WIN, _______,RESET, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______,_______, + _______, _______,WIN, _______,QK_BOOT, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______,_______, _______, _______,_______,_______,_______,_______,RGB_HUD,RGB_SAD,RGB_VAD,RGB_TOG,RGB_MOD,_______, _______,_______, _______, _______,_______,_______,_______,_______,NUM, MAC, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______ diff --git a/keyboards/jones/v03_1/keymaps/default_ansi/keymap.c b/keyboards/jones/v03_1/keymaps/default_ansi/keymap.c index 6055df8994..5b1486bb86 100644 --- a/keyboards/jones/v03_1/keymaps/default_ansi/keymap.c +++ b/keyboards/jones/v03_1/keymaps/default_ansi/keymap.c @@ -118,7 +118,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_ansi( _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______, _______,WIN, _______,RESET, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD,_______, _______,_______, + _______, _______,WIN, _______,QK_BOOT, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD,_______, _______,_______, _______, AU_TOG, CK_TOGG,MU_TOG, MU_MOD, _______,RGB_HUD,RGB_SAD,RGB_VAD,RGB_TOG,RGB_MOD,_______, _______, _______, CK_RST, CK_DOWN,CK_UP ,_______,_______,NUM, MAC, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______ diff --git a/keyboards/jones/v03_1/keymaps/default_jp/keymap.c b/keyboards/jones/v03_1/keymaps/default_jp/keymap.c index efe23f8237..436586a721 100644 --- a/keyboards/jones/v03_1/keymaps/default_jp/keymap.c +++ b/keyboards/jones/v03_1/keymaps/default_jp/keymap.c @@ -120,7 +120,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_jp( _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______, _______,WIN, _______,RESET, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______,_______, + _______, _______,WIN, _______,QK_BOOT, _______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______,_______, _______, AU_TOG, CK_TOGG,MU_TOG, MU_MOD, _______,RGB_HUD,RGB_SAD,RGB_VAD,RGB_TOG,RGB_MOD,_______, _______,_______, _______, CK_RST, CK_DOWN,CK_UP ,_______,_______,NUM, MAC, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______ diff --git a/keyboards/jorne/keymaps/default/keymap.c b/keyboards/jorne/keymaps/default/keymap.c index cd7eab1709..5db74e266e 100644 --- a/keyboards/jorne/keymaps/default/keymap.c +++ b/keyboards/jorne/keymaps/default/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - RESET, RGBRST, KC_ASUP, KC_ASTG, KC_ASDN, _______, _______, _______, _______, KC_ASDN, KC_ASTG, KC_ASUP, RGBRST, RESET, + QK_BOOT, RGBRST, KC_ASUP, KC_ASTG, KC_ASDN, _______, _______, _______, _______, KC_ASDN, KC_ASTG, KC_ASUP, RGBRST, QK_BOOT, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, RGB_VAI, RGB_SAI, RGB_HUI, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, RGB_VAD, RGB_SAD, RGB_HUD, RGB_MOD, _______, SH_TG, _______, _______, SH_TG, _______ diff --git a/keyboards/jorne/keymaps/via/keymap.c b/keyboards/jorne/keymaps/via/keymap.c index cd7eab1709..5db74e266e 100644 --- a/keyboards/jorne/keymaps/via/keymap.c +++ b/keyboards/jorne/keymaps/via/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - RESET, RGBRST, KC_ASUP, KC_ASTG, KC_ASDN, _______, _______, _______, _______, KC_ASDN, KC_ASTG, KC_ASUP, RGBRST, RESET, + QK_BOOT, RGBRST, KC_ASUP, KC_ASTG, KC_ASDN, _______, _______, _______, _______, KC_ASDN, KC_ASTG, KC_ASUP, RGBRST, QK_BOOT, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, RGB_VAI, RGB_SAI, RGB_HUI, RGB_TOG, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, RGB_VAD, RGB_SAD, RGB_HUD, RGB_MOD, _______, SH_TG, _______, _______, SH_TG, _______ diff --git a/keyboards/kagizaraya/chidori/keymaps/default/keymap.c b/keyboards/kagizaraya/chidori/keymaps/default/keymap.c index 373b5ec83b..09f851bd1c 100644 --- a/keyboards/kagizaraya/chidori/keymaps/default/keymap.c +++ b/keyboards/kagizaraya/chidori/keymaps/default/keymap.c @@ -129,7 +129,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' `-----------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, KC_INS, + _______, QK_BOOT, _______, _______, _______, _______, _______, QWERTY, COLEMAK, DVORAK, _______, KC_INS, KC_CAPS, _______, _______, _______, _______, AG_NORM, AG_SWAP, KC_MINS, KC_EQL, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END diff --git a/keyboards/kagizaraya/halberd/keymaps/default/keymap.c b/keyboards/kagizaraya/halberd/keymaps/default/keymap.c index d9a872c1b9..ecc0e328a7 100644 --- a/keyboards/kagizaraya/halberd/keymaps/default/keymap.c +++ b/keyboards/kagizaraya/halberd/keymaps/default/keymap.c @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, _______, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_RMOD, RGB_SAI, RGB_SAD, _______, RGB_VAI, RGB_VAD, _______, _______, _______, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, _______, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, _______, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c b/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c index cbfb6b1410..9e54eb26ba 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c +++ b/keyboards/kakunpc/rabbit_capture_plan/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT_all( - 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, _______, + QK_BOOT, _______, 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_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kakunpc/rabbit_capture_plan/keymaps/via/keymap.c b/keyboards/kakunpc/rabbit_capture_plan/keymaps/via/keymap.c index f8109f4f08..e6a88ed923 100644 --- a/keyboards/kakunpc/rabbit_capture_plan/keymaps/via/keymap.c +++ b/keyboards/kakunpc/rabbit_capture_plan/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT_all( - 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, _______, + QK_BOOT, _______, 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_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c b/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c index 8c7e9720db..066459e196 100755 --- a/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c +++ b/keyboards/kapcave/gskt00/keymaps/default-poly/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FUNCTION */ LAYOUT_all( KC_GRV, 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, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG) diff --git a/keyboards/kapcave/paladin64/keymaps/default/keymap.c b/keyboards/kapcave/paladin64/keymaps/default/keymap.c index ed906909fe..7c730f14b9 100755 --- a/keyboards/kapcave/paladin64/keymaps/default/keymap.c +++ b/keyboards/kapcave/paladin64/keymaps/default/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FUNCTION */ LAYOUT_all( KC_GRV, 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, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG), diff --git a/keyboards/kapcave/paladin64/keymaps/via/keymap.c b/keyboards/kapcave/paladin64/keymaps/via/keymap.c index 7ce94a5ef4..ccf0622e31 100644 --- a/keyboards/kapcave/paladin64/keymaps/via/keymap.c +++ b/keyboards/kapcave/paladin64/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FUNCTION */ [_FN] = LAYOUT_all( KC_GRV, 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, RESET, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_PGUP, KC_UP, KC_PGDN, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSPC, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, KC_TRNS, RGB_TOG), diff --git a/keyboards/kapcave/paladinpad/keymaps/default/keymap.c b/keyboards/kapcave/paladinpad/keymaps/default/keymap.c index 30dd1b9c00..390b474fdb 100644 --- a/keyboards/kapcave/paladinpad/keymaps/default/keymap.c +++ b/keyboards/kapcave/paladinpad/keymaps/default/keymap.c @@ -33,6 +33,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RESET, KC_NLCK) + KC_TRNS, QK_BOOT, KC_NLCK) }; diff --git a/keyboards/kapcave/paladinpad/keymaps/via/keymap.c b/keyboards/kapcave/paladinpad/keymaps/via/keymap.c index 2315da4ace..b19b8608fb 100644 --- a/keyboards/kapcave/paladinpad/keymaps/via/keymap.c +++ b/keyboards/kapcave/paladinpad/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUI, RGB_SAI, RGB_VAI, KC_TRNS, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET, KC_NLCK), + KC_TRNS, KC_TRNS, QK_BOOT, KC_NLCK), /* FUNCTION */ [_FN2] = LAYOUT_ortho_5x4( diff --git a/keyboards/kapl/keymaps/default/keymap.c b/keyboards/kapl/keymaps/default/keymap.c index 5e2bea1f47..376b247218 100644 --- a/keyboards/kapl/keymaps/default/keymap.c +++ b/keyboards/kapl/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( // "CNT" Control //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ KC_NO, RGB_SAI, RGB_SPI, RGB_VAI, RGB_HUI, RGB_MOD, KC_NO, KC_NO, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/kapl/keymaps/via/keymap.c b/keyboards/kapl/keymaps/via/keymap.c index 002cc1ef3a..a073105b95 100644 --- a/keyboards/kapl/keymaps/via/keymap.c +++ b/keyboards/kapl/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( // "CNT" Control //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ - KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, + KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ KC_NO, RGB_SAI, RGB_SPI, RGB_VAI, RGB_HUI, RGB_MOD, KC_NO, KC_NO, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/karlb/kbic65/keymaps/default/keymap.c b/keyboards/karlb/kbic65/keymaps/default/keymap.c index 5926dcf805..6a9e96e384 100644 --- a/keyboards/karlb/kbic65/keymaps/default/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/default/keymap.c @@ -17,6 +17,6 @@ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, -_______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, +_______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) }; diff --git a/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c b/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c index 73628ebef8..59902f6ba6 100644 --- a/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/default_iso/keymap.c @@ -17,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) }; diff --git a/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c b/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c index a69855dde5..3067a00b0c 100644 --- a/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/default_iso_split_bs/keymap.c @@ -17,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, + _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) }; diff --git a/keyboards/karlb/kbic65/keymaps/via/keymap.c b/keyboards/karlb/kbic65/keymaps/via/keymap.c index 5926dcf805..6a9e96e384 100644 --- a/keyboards/karlb/kbic65/keymaps/via/keymap.c +++ b/keyboards/karlb/kbic65/keymaps/via/keymap.c @@ -17,6 +17,6 @@ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_GRV, 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_INS, _______, _______, KC_UP, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, -_______, _______, _______, _______, _______, _______, RESET, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, +_______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END) }; diff --git a/keyboards/kbdfans/bella/rgb/keymaps/default/keymap.c b/keyboards/kbdfans/bella/rgb/keymaps/default/keymap.c index d5d2bd7be6..aaba70dc33 100644 --- a/keyboards/kbdfans/bella/rgb/keymaps/default/keymap.c +++ b/keyboards/kbdfans/bella/rgb/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( 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, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, EEP_RST, 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) diff --git a/keyboards/kbdfans/bella/rgb/keymaps/via/keymap.c b/keyboards/kbdfans/bella/rgb/keymaps/via/keymap.c index 209a528f5a..fa9b82f87b 100644 --- a/keyboards/kbdfans/bella/rgb/keymaps/via/keymap.c +++ b/keyboards/kbdfans/bella/rgb/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( 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, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, EEP_RST, 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), diff --git a/keyboards/kbdfans/bella/rgb_iso/keymaps/default/keymap.c b/keyboards/kbdfans/bella/rgb_iso/keymaps/default/keymap.c index d3be6e2863..4cd28782f5 100644 --- a/keyboards/kbdfans/bella/rgb_iso/keymaps/default/keymap.c +++ b/keyboards/kbdfans/bella/rgb_iso/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_MOD, 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, RESET, EEP_RST, 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, QK_BOOT, EEP_RST, 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) diff --git a/keyboards/kbdfans/bella/rgb_iso/keymaps/via/keymap.c b/keyboards/kbdfans/bella/rgb_iso/keymaps/via/keymap.c index 7831cb9ea0..1ab5dccd38 100644 --- a/keyboards/kbdfans/bella/rgb_iso/keymaps/via/keymap.c +++ b/keyboards/kbdfans/bella/rgb_iso/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_MOD, 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, RESET, EEP_RST, 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, QK_BOOT, EEP_RST, 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) diff --git a/keyboards/kbdfans/boop65/rgb/keymaps/default/keymap.c b/keyboards/kbdfans/boop65/rgb/keymaps/default/keymap.c index fed67baf2e..b14cb56e1d 100644 --- a/keyboards/kbdfans/boop65/rgb/keymaps/default/keymap.c +++ b/keyboards/kbdfans/boop65/rgb/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/boop65/rgb/keymaps/via/keymap.c b/keyboards/kbdfans/boop65/rgb/keymaps/via/keymap.c index f2aee1a1ff..7f94d44418 100644 --- a/keyboards/kbdfans/boop65/rgb/keymaps/via/keymap.c +++ b/keyboards/kbdfans/boop65/rgb/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/kbd19x/keymaps/default/keymap.c b/keyboards/kbdfans/kbd19x/keymaps/default/keymap.c index 50e63041ea..927d682d56 100644 --- a/keyboards/kbdfans/kbd19x/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd19x/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ansi( /* Func */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd19x/keymaps/default_iso/keymap.c b/keyboards/kbdfans/kbd19x/keymaps/default_iso/keymap.c index 4382cafcb6..3d0d442f45 100644 --- a/keyboards/kbdfans/kbd19x/keymaps/default_iso/keymap.c +++ b/keyboards/kbdfans/kbd19x/keymaps/default_iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_iso( /* Func */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd19x/keymaps/via/keymap.c b/keyboards/kbdfans/kbd19x/keymaps/via/keymap.c index 0e9b2aa4bd..b6bd2b7160 100644 --- a/keyboards/kbdfans/kbd19x/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd19x/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ansi( /* Func */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd4x/keymaps/default/keymap.c b/keyboards/kbdfans/kbd4x/keymaps/default/keymap.c index 1a79d73910..b688c1ba98 100644 --- a/keyboards/kbdfans/kbd4x/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd4x/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_planck_mit( KC_GRAVE, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, ___, - ___, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, ___, ___, ___, ___, ___, ___, RESET, + ___, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, ___, ___, ___, ___, ___, ___, QK_BOOT, ___, BL_TOGG, BL_STEP, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___, ___ ), diff --git a/keyboards/kbdfans/kbd66/keymaps/ansi/keymap.c b/keyboards/kbdfans/kbd66/keymaps/ansi/keymap.c index 7900a2ebe1..fccb0aa24e 100644 --- a/keyboards/kbdfans/kbd66/keymaps/ansi/keymap.c +++ b/keyboards/kbdfans/kbd66/keymaps/ansi/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------------------------------------------------------| |---| * | | | | | | | | | | |PSc|VDn|VUp| Mute| |END| * |-----------------------------------------------------------| `---' - * |RESET| | | | | | |PRV|PLY|NXT|STP| | | + * |QK_BOOT| | | | | | |PRV|PLY|NXT|STP| | | * |---------------------------------------------------------------. * | | | | | | | | |BLB|BLC|Slp| |PUp| * |-------------------------------------------------------------------. @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = LAYOUT_all( KC_GRV, 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_HOME, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, - RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, + QK_BOOT, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, BL_BRTG, BL_STEP, KC_SLEP, _____, _____, KC_PGUP, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PGDN, KC_SLCK ) diff --git a/keyboards/kbdfans/kbd66/keymaps/default/keymap.c b/keyboards/kbdfans/kbd66/keymaps/default/keymap.c index d878ed151a..b4c4067c3c 100644 --- a/keyboards/kbdfans/kbd66/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd66/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------------------------------------------------------| |---| * | | | | | | | | | | |PSc|VDn|VUp| Mute| |END| * |-----------------------------------------------------------| `---' - * |RESET| | | | | | |PRV|PLY|NXT|STP| | | + * |QK_BOOT| | | | | | |PRV|PLY|NXT|STP| | | * |---------------------------------------------------------------. * | | | | | | | | | |BLB|BLC|Slp| | |PUp| * |-------------------------------------------------------------------. @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = LAYOUT_all( KC_GRV, 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_HOME, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, - RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, + QK_BOOT, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, BL_BRTG, BL_STEP, KC_SLEP, _____, _____, KC_PGUP, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PGDN, KC_SLCK ) diff --git a/keyboards/kbdfans/kbd66/keymaps/iso/keymap.c b/keyboards/kbdfans/kbd66/keymaps/iso/keymap.c index 86f0bbbfdc..b00dd01873 100644 --- a/keyboards/kbdfans/kbd66/keymaps/iso/keymap.c +++ b/keyboards/kbdfans/kbd66/keymaps/iso/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |-----------------------------------------------------------| |---| * | | | | | | | | | | |PSc|VDn|VUp| | |END| * |------------------------------------------------------| | `---' - * |RESET | | | | | | |PRV|PLY|NXT|STP| |Mut| | + * |QK_BOOT | | | | | | |PRV|PLY|NXT|STP| |Mut| | * |---------------------------------------------------------------. * | | | | | | | | | |BLB|BLC|Slp| | |PUp| * |-------------------------------------------------------------------. @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = LAYOUT_all( KC_GRV, 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_HOME, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PSCR, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, - RESET, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, + QK_BOOT, _____, _____, _____, _____, _____, _____, KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, _____, BL_BRTG, BL_STEP, KC_SLEP, _____, _____, KC_PGUP, _____, _____, _____, _____, _____, _____, _____, _____, _____, KC_PGDN, KC_SLCK ) diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c index eac69d9b75..5f40be9ba8 100644 --- a/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/hotswap/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, RESET, 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, QK_BOOT, 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, 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), diff --git a/keyboards/kbdfans/kbd67/hotswap/keymaps/via/keymap.c b/keyboards/kbdfans/kbd67/hotswap/keymaps/via/keymap.c index e7fa5ef8e4..e844d19bc0 100644 --- a/keyboards/kbdfans/kbd67/hotswap/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd67/hotswap/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_TRNS, 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_DEL, - RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, 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), diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/ansi/keymap.c b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/ansi/keymap.c index 1f093baab8..ce277d0afe 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/ansi/keymap.c +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/ansi/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( /* FN */ - 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, KC_DEL, BL_INC, + QK_BOOT, 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, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/default/keymap.c index 61f3aa8c5f..98ba26ac46 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( /* FN */ - 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, _______, _______, BL_INC, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/iso/keymap.c b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/iso/keymap.c index c49da95728..8fc09cda25 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/iso/keymap.c +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/iso/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_iso_blocker( /* FN */ - 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, KC_DEL, BL_INC, + QK_BOOT, 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, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/via/keymap.c b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/via/keymap.c index eebd077dbe..d5b9e2e0ef 100644 --- a/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd67/mkii_soldered/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* FN */ - 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, _______, _______, BL_INC, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, BL_INC, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/default/keymap.c index 155a898f63..8fa4412179 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT), [_LAYER1] = LAYOUT_65_ansi_blocker( /* FN */ KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/keymap.c index 850a7132d1..4f538b93d8 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd67/mkiirgb/keymaps/via/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/default/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/default/keymap.c index db85ab3df9..b94ae599df 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_iso_blocker( KC_GESC, 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_HOME, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_PGUP, - KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, RESET, KC_PGDN, + KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, QK_BOOT, KC_PGDN, KC_LSFT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/keymap.c b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/keymap.c index df2bd587e6..4d71ba0523 100644 --- a/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd67/mkiirgb_iso/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_iso_blocker( KC_GESC, 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_HOME, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_PGUP, - KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, RESET, KC_PGDN, + KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, QK_BOOT, KC_PGDN, KC_LSFT, 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_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/iso/keymap.c b/keyboards/kbdfans/kbd67/rev2/keymaps/iso/keymap.c index 0b0e9fb5d8..8e196a1437 100644 --- a/keyboards/kbdfans/kbd67/rev2/keymaps/iso/keymap.c +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/iso/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬────┐ * │§ │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│Delete │PrtS│ * ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼────┤ - * │Caps │Prv│Pau│Nxt│ │ │ │ │ │ │BL+│BL-│BL │RESET│Ins │ + * │Caps │Prv│Pau│Nxt│ │ │ │ │ │ │BL+│BL-│BL │QK_BOOT│Ins │ * ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ ├────┤ * │ │V- │V0 │V+ │ │ │ │ │ │ │ │ │ │ │Home│ * ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼────┤ @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_iso( KC_GRV, 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_PSCR, KC_CAPS, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, KC_INS, - _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_HOME, + _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_HOME, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, KC_BTN1, KC_MS_U, KC_END, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R ), diff --git a/keyboards/kbdfans/kbd67/rev2/keymaps/iso/readme.md b/keyboards/kbdfans/kbd67/rev2/keymaps/iso/readme.md index bc5d7d935e..f29ee7b262 100644 --- a/keyboards/kbdfans/kbd67/rev2/keymaps/iso/readme.md +++ b/keyboards/kbdfans/kbd67/rev2/keymaps/iso/readme.md @@ -22,7 +22,7 @@ Function layer ┌───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───┬───────┬────┐ │§ │ F1│ F2│ F3│ F4│ F5│ F6│ F7│ F8│ F9│F10│F11│F12│Delete │PrtS│ ├───┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─────┼────┤ -│Caps │Prv│Pau│Nxt│ │ │ │ │ │ │BL+│BL-│BL │RESET│Ins │ +│Caps │Prv│Pau│Nxt│ │ │ │ │ │ │BL+│BL-│BL │QK_BOOT│Ins │ ├─────┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┬──┴┐ ├────┤ │ │V- │V0 │V+ │ │ │ │ │ │ │ │ │ │ │Home│ ├────┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴─┬─┴───┴┬───┼────┤ diff --git a/keyboards/kbdfans/kbd6x/keymaps/via/keymap.c b/keyboards/kbdfans/kbd6x/keymaps/via/keymap.c index 07883b0a5e..2636a6718a 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd6x/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT( - RESET, 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, + QK_BOOT, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, diff --git a/keyboards/kbdfans/kbd6x/keymaps/via/readme.md b/keyboards/kbdfans/kbd6x/keymaps/via/readme.md index 9e125443e1..5e29708887 100644 --- a/keyboards/kbdfans/kbd6x/keymaps/via/readme.md +++ b/keyboards/kbdfans/kbd6x/keymaps/via/readme.md @@ -3,5 +3,5 @@ Predefined Layers: - 0 - Default KBD6x keymap - 1 - A modified version of the classic HHKB function layer -- 2 - Lighting control and RESET +- 2 - Lighting control and QK_BOOT - 3 - Blank \ No newline at end of file diff --git a/keyboards/kbdfans/kbd75/keymaps/default/keymap.c b/keyboards/kbdfans/kbd75/keymaps/default/keymap.c index 7ac80e4d49..160800a0c2 100644 --- a/keyboards/kbdfans/kbd75/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/default/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c b/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c index 1eec87e1ec..336f7c31e7 100644 --- a/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/iso/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_iso( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75/keymaps/via/keymap.c b/keyboards/kbdfans/kbd75/keymaps/via/keymap.c index b8ac2aacb7..d4c973aa78 100644 --- a/keyboards/kbdfans/kbd75/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd75/keymaps/via/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75hs/keymaps/default/keymap.c b/keyboards/kbdfans/kbd75hs/keymaps/default/keymap.c index 0957a41d74..a4ae3f12dc 100644 --- a/keyboards/kbdfans/kbd75hs/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd75hs/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75hs/keymaps/via/keymap.c b/keyboards/kbdfans/kbd75hs/keymaps/via/keymap.c index 0957a41d74..a4ae3f12dc 100644 --- a/keyboards/kbdfans/kbd75hs/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd75hs/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75rgb/keymaps/default/keymap.c b/keyboards/kbdfans/kbd75rgb/keymaps/default/keymap.c index ce40dd3a21..3cb32e80c9 100644 --- a/keyboards/kbdfans/kbd75rgb/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd75rgb/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT_75_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd75rgb/keymaps/via/keymap.c b/keyboards/kbdfans/kbd75rgb/keymaps/via/keymap.c index b7f0e4f36e..cd9cd7d05a 100644 --- a/keyboards/kbdfans/kbd75rgb/keymaps/via/keymap.c +++ b/keyboards/kbdfans/kbd75rgb/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi ( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_75_ansi ( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT_75_ansi ( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kbdfans/kbd8x/keymaps/default/keymap.c b/keyboards/kbdfans/kbd8x/keymaps/default/keymap.c index 0f598725a5..48974bc401 100644 --- a/keyboards/kbdfans/kbd8x/keymaps/default/keymap.c +++ b/keyboards/kbdfans/kbd8x/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kbdfans/kbd8x/keymaps/default_backlighting/keymap.c b/keyboards/kbdfans/kbd8x/keymaps/default_backlighting/keymap.c index 11f7fd9eb2..a979005ba7 100644 --- a/keyboards/kbdfans/kbd8x/keymaps/default_backlighting/keymap.c +++ b/keyboards/kbdfans/kbd8x/keymaps/default_backlighting/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kbdfans/maja/keymaps/default/keymap.c b/keyboards/kbdfans/maja/keymaps/default/keymap.c index bfab84bddd..e38e38485b 100755 --- a/keyboards/kbdfans/maja/keymaps/default/keymap.c +++ b/keyboards/kbdfans/maja/keymaps/default/keymap.c @@ -9,8 +9,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ - KC_GESC, 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, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/maja/keymaps/via/keymap.c b/keyboards/kbdfans/maja/keymaps/via/keymap.c index 3feb7e579a..1c6f491e56 100755 --- a/keyboards/kbdfans/maja/keymaps/via/keymap.c +++ b/keyboards/kbdfans/maja/keymaps/via/keymap.c @@ -9,8 +9,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ - KC_GESC, 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, KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c b/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c index a86004ef72..5c7808ae7b 100755 --- a/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c +++ b/keyboards/kbdfans/maja_soldered/keymaps/default/keymap.c @@ -23,8 +23,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ - KC_GESC, 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,KC_TRNS,KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT,KC_TRNS,KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c b/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c index cf64bec4c8..960a1f0f15 100755 --- a/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c +++ b/keyboards/kbdfans/maja_soldered/keymaps/via/keymap.c @@ -23,8 +23,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, MO(1), KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT( /* FN */ - KC_GESC, 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,KC_TRNS,KC_HOME, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_GESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT,KC_TRNS,KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI,RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, CTL_T(KC_CAPS),RGB_SPI, RGB_SPD, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_PGDN, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/kbdfans/niu_mini/keymaps/default/keymap.c b/keyboards/kbdfans/niu_mini/keymaps/default/keymap.c index c0f5d06c7b..e8b735a886 100644 --- a/keyboards/kbdfans/niu_mini/keymaps/default/keymap.c +++ b/keyboards/kbdfans/niu_mini/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* Layer 2 (r_ Indicates RGB Controls) diff --git a/keyboards/kbdfans/niu_mini/keymaps/via/keymap.c b/keyboards/kbdfans/niu_mini/keymaps/via/keymap.c index 702e419944..663b710814 100644 --- a/keyboards/kbdfans/niu_mini/keymaps/via/keymap.c +++ b/keyboards/kbdfans/niu_mini/keymaps/via/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), /* Layer 2 (r_ Indicates RGB Controls) @@ -67,13 +67,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | |BL_TOG|BL_STEP| | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | RESET| | | | | | | | | | | | + * | QK_BOOT| | | | | | | | | | | | * `-----------------------------------------------------------------------------------' */ [3] = LAYOUT_ortho_4x12( _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/kbnordic/nordic60/keymaps/default/keymap.c b/keyboards/kbnordic/nordic60/keymaps/default/keymap.c index 0776088335..b9e8fd21f2 100644 --- a/keyboards/kbnordic/nordic60/keymaps/default/keymap.c +++ b/keyboards/kbnordic/nordic60/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), // basic function layer [1] = LAYOUT_60_iso_split_bs_rshift( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, diff --git a/keyboards/kbnordic/nordic60/keymaps/default_ansi/keymap.c b/keyboards/kbnordic/nordic60/keymaps/default_ansi/keymap.c index 21b2249f74..72157cad98 100644 --- a/keyboards/kbnordic/nordic60/keymaps/default_ansi/keymap.c +++ b/keyboards/kbnordic/nordic60/keymaps/default_ansi/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), // basic function layer [1] = LAYOUT_60_ansi( - 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, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RGHT, 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, diff --git a/keyboards/kbnordic/nordic60/keymaps/via/keymap.c b/keyboards/kbnordic/nordic60/keymaps/via/keymap.c index f8fe78c268..62a06170d2 100644 --- a/keyboards/kbnordic/nordic60/keymaps/via/keymap.c +++ b/keyboards/kbnordic/nordic60/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), // basic function layer [1] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_UP, 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_LEFT, KC_DOWN, KC_RIGHT, 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, diff --git a/keyboards/kc60/keymaps/default/keymap.c b/keyboards/kc60/keymaps/default/keymap.c index d7d6d6eaf6..0955c65d30 100644 --- a/keyboards/kc60/keymaps/default/keymap.c +++ b/keyboards/kc60/keymaps/default/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL ), [1] = LAYOUT_all( - 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, XXXXXXX, XXXXXXX, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SLCK, KC_PAUS, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, BL_DEC, BL_TOGG, BL_INC, BL_BRTG, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, _______, _______, diff --git a/keyboards/kc60/keymaps/via/keymap.c b/keyboards/kc60/keymaps/via/keymap.c index eefa81e154..26805e3041 100644 --- a/keyboards/kc60/keymaps/via/keymap.c +++ b/keyboards/kc60/keymaps/via/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(1, KC_APP), KC_RCTL ), [1] = LAYOUT_all( - 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, XXXXXXX, XXXXXXX, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_PSCR, KC_SLCK, KC_PAUS, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, BL_DEC, BL_TOGG, BL_INC, BL_BRTG, XXXXXXX, KC_MUTE, KC_VOLD, KC_VOLU, XXXXXXX, _______, _______, diff --git a/keyboards/keebio/bdn9/keymaps/default/keymap.c b/keyboards/keebio/bdn9/keymaps/default/keymap.c index 1dc680a1f6..dae8cb6035 100644 --- a/keyboards/keebio/bdn9/keymaps/default/keymap.c +++ b/keyboards/keebio/bdn9/keymaps/default/keymap.c @@ -34,12 +34,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), /* - | RESET | N/A | Media Stop | + | QK_BOOT | N/A | Media Stop | | Held: Layer 2 | Home | RGB Mode | | Media Previous | End | Media Next | */ [1] = LAYOUT( - RESET , BL_STEP, KC_STOP, + QK_BOOT , BL_STEP, KC_STOP, _______, KC_HOME, RGB_MOD, KC_MPRV, KC_END , KC_MNXT ), diff --git a/keyboards/keebio/bdn9/keymaps/via/keymap.c b/keyboards/keebio/bdn9/keymaps/via/keymap.c index 655f3e5ed4..fc5f22cd8b 100644 --- a/keyboards/keebio/bdn9/keymaps/via/keymap.c +++ b/keyboards/keebio/bdn9/keymaps/via/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ONE] = LAYOUT( - RESET, BL_STEP, KC_STOP, + QK_BOOT, BL_STEP, KC_STOP, _______, KC_HOME, RGB_MOD, KC_MPRV, KC_END , KC_MNXT ), diff --git a/keyboards/keebio/chocopad/keymaps/default/keymap.c b/keyboards/keebio/chocopad/keymaps/default/keymap.c index 457b84ecee..b89246adf0 100644 --- a/keyboards/keebio/chocopad/keymaps/default/keymap.c +++ b/keyboards/keebio/chocopad/keymaps/default/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN2] = LAYOUT_ortho_4x4( RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, BL_STEP, _______, _______, _______ ) diff --git a/keyboards/keebio/dilly/keymaps/default/keymap.c b/keyboards/keebio/dilly/keymaps/default/keymap.c index f81aa6d446..163d31a01b 100644 --- a/keyboards/keebio/dilly/keymaps/default/keymap.c +++ b/keyboards/keebio/dilly/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN5] = LAYOUT_ortho_3x10( - RGB_TOG, RGB_MOD, _______, RESET, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, + RGB_TOG, RGB_MOD, _______, QK_BOOT, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, DEBUG, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, BL_STEP, _______, KC_GUIC, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/keebio/dsp40/keymaps/default/keymap.c b/keyboards/keebio/dsp40/keymaps/default/keymap.c index a4f65f5f48..b269b1e8ca 100755 --- a/keyboards/keebio/dsp40/keymaps/default/keymap.c +++ b/keyboards/keebio/dsp40/keymaps/default/keymap.c @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/dsp40/keymaps/via/keymap.c b/keyboards/keebio/dsp40/keymaps/via/keymap.c index f2f87663c5..b98bf4ac84 100755 --- a/keyboards/keebio/dsp40/keymaps/via/keymap.c +++ b/keyboards/keebio/dsp40/keymaps/via/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN3] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/foldkb/keymaps/default/keymap.c b/keyboards/keebio/foldkb/keymaps/default/keymap.c index 45bc1673e2..d8a841f4e4 100644 --- a/keyboards/keebio/foldkb/keymaps/default/keymap.c +++ b/keyboards/keebio/foldkb/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL ), [1] = LAYOUT( - KC_MUTE, RESET, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + KC_MUTE, QK_BOOT, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, BL_STEP, _______, RGB_SAD, RGB_SAI, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, _______, RGB_MOD, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, _______, diff --git a/keyboards/keebio/foldkb/keymaps/via/keymap.c b/keyboards/keebio/foldkb/keymaps/via/keymap.c index 85d6912760..288716acd5 100644 --- a/keyboards/keebio/foldkb/keymaps/via/keymap.c +++ b/keyboards/keebio/foldkb/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PGDN, KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL ), [1] = LAYOUT( - KC_MUTE, RESET, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + KC_MUTE, QK_BOOT, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, BL_STEP, _______, RGB_SAD, RGB_SAI, _______, _______, _______, _______, KC_7, KC_8, KC_9, _______, _______, _______, _______, RGB_MOD, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, KC_4, KC_5, KC_6, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_1, KC_2, KC_3, _______, _______, _______, diff --git a/keyboards/keebio/fourier/keymaps/default/keymap.c b/keyboards/keebio/fourier/keymaps/default/keymap.c index 341bc99a7e..f98d94a9b6 100644 --- a/keyboards/keebio/fourier/keymaps/default/keymap.c +++ b/keyboards/keebio/fourier/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, - RESET, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, + QK_BOOT, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_UP, _______, RGB_TOG, _______, _______, _______, _______, KC_DEL, KC_0, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/keebio/fourier/keymaps/via/keymap.c b/keyboards/keebio/fourier/keymaps/via/keymap.c index c16ff08d06..899d866008 100644 --- a/keyboards/keebio/fourier/keymaps/via/keymap.c +++ b/keyboards/keebio/fourier/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, - RESET, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, + QK_BOOT, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_UP, _______, RGB_TOG, _______, _______, _______, _______, KC_DEL, KC_0, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/keebio/iris/keymaps/default/keymap.c b/keyboards/keebio/iris/keymaps/default/keymap.c index 169e5b50c7..f1a2bf2164 100644 --- a/keyboards/keebio/iris/keymaps/default/keymap.c +++ b/keyboards/keebio/iris/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/keebio/iris/keymaps/via/keymap.c b/keyboards/keebio/iris/keymaps/via/keymap.c index 0a71bad92b..1305a3b909 100644 --- a/keyboards/keebio/iris/keymaps/via/keymap.c +++ b/keyboards/keebio/iris/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, //├────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┤ KC_DEL, _______, KC_LEFT, KC_RGHT, KC_UP, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/keebio/laplace/keymaps/default/keymap.c b/keyboards/keebio/laplace/keymaps/default/keymap.c index 053bfb7ad6..d728f65938 100644 --- a/keyboards/keebio/laplace/keymaps/default/keymap.c +++ b/keyboards/keebio/laplace/keymaps/default/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN1] = LAYOUT( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, - RESET, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, + QK_BOOT, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, KC_UP, _______, RGB_TOG, _______, _______, _______, _______, KC_DEL, KC_0, KC_LEFT, KC_DOWN, KC_RGHT ), diff --git a/keyboards/keebio/levinson/keymaps/default/keymap.c b/keyboards/keebio/levinson/keymaps/default/keymap.c index 81f3e75b8d..ed4c7243d1 100644 --- a/keyboards/keebio/levinson/keymaps/default/keymap.c +++ b/keyboards/keebio/levinson/keymaps/default/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/levinson/keymaps/via/keymap.c b/keyboards/keebio/levinson/keymaps/via/keymap.c index f6504de337..b2ca57c8ab 100644 --- a/keyboards/keebio/levinson/keymaps/via/keymap.c +++ b/keyboards/keebio/levinson/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT_ortho_4x12( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/nyquist/keymaps/default/keymap.c b/keyboards/keebio/nyquist/keymaps/default/keymap.c index 7b28dc9536..03de74a80d 100644 --- a/keyboards/keebio/nyquist/keymaps/default/keymap.c +++ b/keyboards/keebio/nyquist/keymaps/default/keymap.c @@ -143,7 +143,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, + _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/nyquist/keymaps/default_4x12/keymap.c b/keyboards/keebio/nyquist/keymaps/default_4x12/keymap.c index 78eb393162..da2b79e3c2 100644 --- a/keyboards/keebio/nyquist/keymaps/default_4x12/keymap.c +++ b/keyboards/keebio/nyquist/keymaps/default_4x12/keymap.c @@ -81,14 +81,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | RESET| + * | | | | | | | | | | | | QK_BOOT| * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( TSKMGR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CALTDEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Function diff --git a/keyboards/keebio/nyquist/keymaps/via/keymap.c b/keyboards/keebio/nyquist/keymaps/via/keymap.c index 312e8c99c8..f77ba03eb4 100644 --- a/keyboards/keebio/nyquist/keymaps/via/keymap.c +++ b/keyboards/keebio/nyquist/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [3] = LAYOUT_ortho_5x12( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/keebio/rorschach/keymaps/default/keymap.c b/keyboards/keebio/rorschach/keymaps/default/keymap.c index 431f7d3a91..00f2a9cffb 100644 --- a/keyboards/keebio/rorschach/keymaps/default/keymap.c +++ b/keyboards/keebio/rorschach/keymaps/default/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( BL_STEP, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_LBRC, KC_RBRC, KC_P4, KC_P5, KC_P6, KC_PLUS, KC_PIPE, - RESET, _______, RGB_HUD, RGB_SAD, RGB_VAD, KC_LCBR, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_SLSH, _______, + QK_BOOT, _______, RGB_HUD, RGB_SAD, RGB_VAD, KC_LCBR, KC_RCBR, KC_P1, KC_P2, KC_P3, KC_SLSH, _______, KC_GRV, _______, _______, _______, _______, KC_DEL, _______, _______, KC_P0, KC_PDOT, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/keebio/viterbi/keymaps/default/keymap.c b/keyboards/keebio/viterbi/keymaps/default/keymap.c index 78ae83a824..1db80b7452 100644 --- a/keyboards/keebio/viterbi/keymaps/default/keymap.c +++ b/keyboards/keebio/viterbi/keymaps/default/keymap.c @@ -85,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_5x14( _______, 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_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, + _______, _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, _______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/viterbi/keymaps/via/keymap.c b/keyboards/keebio/viterbi/keymaps/via/keymap.c index 6360202ee0..fd2008bee9 100644 --- a/keyboards/keebio/viterbi/keymaps/via/keymap.c +++ b/keyboards/keebio/viterbi/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_ortho_5x14( _______, 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_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, + _______, _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, KC_DEL, _______, _______, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebio/wavelet/keymaps/default/keymap.c b/keyboards/keebio/wavelet/keymaps/default/keymap.c index 81f3e75b8d..ed4c7243d1 100644 --- a/keyboards/keebio/wavelet/keymaps/default/keymap.c +++ b/keyboards/keebio/wavelet/keymaps/default/keymap.c @@ -125,7 +125,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keebsforall/coarse60/keymaps/default/keymap.c b/keyboards/keebsforall/coarse60/keymaps/default/keymap.c index 7027850582..569f7cbd20 100644 --- a/keyboards/keebsforall/coarse60/keymaps/default/keymap.c +++ b/keyboards/keebsforall/coarse60/keymaps/default/keymap.c @@ -32,6 +32,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_MOD, _______, _______, KC_UP, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, _______, _______, _______, _______, _______, RGB_RMOD, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/keebsforall/coarse60/keymaps/via/keymap.c b/keyboards/keebsforall/coarse60/keymaps/via/keymap.c index 6139c43d73..39155534f1 100644 --- a/keyboards/keebsforall/coarse60/keymaps/via/keymap.c +++ b/keyboards/keebsforall/coarse60/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_MOD, _______, _______, KC_UP, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, _______, _______, _______, _______, _______, RGB_RMOD, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ), [2] = LAYOUT_alice_split_bs( diff --git a/keyboards/keebsforall/freebird60/keymaps/default/keymap.c b/keyboards/keebsforall/freebird60/keymaps/default/keymap.c index d2540ee9b5..fe63e2030d 100644 --- a/keyboards/keebsforall/freebird60/keymaps/default/keymap.c +++ b/keyboards/keebsforall/freebird60/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/keebsforall/freebird60/keymaps/via/keymap.c b/keyboards/keebsforall/freebird60/keymaps/via/keymap.c index d2540ee9b5..fe63e2030d 100644 --- a/keyboards/keebsforall/freebird60/keymaps/via/keymap.c +++ b/keyboards/keebsforall/freebird60/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/keebwerk/mega/ansi/keymaps/default/keymap.c b/keyboards/keebwerk/mega/ansi/keymaps/default/keymap.c index 1d95e13c40..aaa096bd84 100755 --- a/keyboards/keebwerk/mega/ansi/keymaps/default/keymap.c +++ b/keyboards/keebwerk/mega/ansi/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi( /* FN */ KC_GRV, 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_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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/keebwerk/mega/ansi/keymaps/via/keymap.c b/keyboards/keebwerk/mega/ansi/keymaps/via/keymap.c index 59ccdf685d..c88a9629a3 100755 --- a/keyboards/keebwerk/mega/ansi/keymaps/via/keymap.c +++ b/keyboards/keebwerk/mega/ansi/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi( /* FN */ KC_GRV, 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_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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/keebzdotnet/fme/keymaps/default/keymap.c b/keyboards/keebzdotnet/fme/keymaps/default/keymap.c index a66b64eef0..6b40c7e17e 100644 --- a/keyboards/keebzdotnet/fme/keymaps/default/keymap.c +++ b/keyboards/keebzdotnet/fme/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/keebzdotnet/fme/keymaps/via/keymap.c b/keyboards/keebzdotnet/fme/keymaps/via/keymap.c index a66b64eef0..6b40c7e17e 100644 --- a/keyboards/keebzdotnet/fme/keymaps/via/keymap.c +++ b/keyboards/keebzdotnet/fme/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/keybage/radpad/keymaps/default/keymap.c b/keyboards/keybage/radpad/keymaps/default/keymap.c index f2d712bd6f..1d1e15e798 100644 --- a/keyboards/keybage/radpad/keymaps/default/keymap.c +++ b/keyboards/keybage/radpad/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PSLS, KC_F21, KC_F22, KC_F23, KC_PAST, KC_F18, KC_F19, KC_F20, KC_NLCK, KC_F15, KC_F16, KC_F17, - RESET, _______, KC_F13, KC_F14 + QK_BOOT, _______, KC_F13, KC_F14 ) }; diff --git a/keyboards/keybee/keybee65/keymaps/default/keymap.c b/keyboards/keybee/keybee65/keymaps/default/keymap.c index a1df29ef92..8d58a54852 100644 --- a/keyboards/keybee/keybee65/keymaps/default/keymap.c +++ b/keyboards/keybee/keybee65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_TRNS, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/keybee/keybee65/keymaps/via/keymap.c b/keyboards/keybee/keybee65/keymaps/via/keymap.c index 12faf6f196..1eb0a6480c 100644 --- a/keyboards/keybee/keybee65/keymaps/via/keymap.c +++ b/keyboards/keybee/keybee65/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_TRNS, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/keyboardio/atreus/keymaps/default/keymap.c b/keyboards/keyboardio/atreus/keymaps/default/keymap.c index 7168733454..6971edc332 100644 --- a/keyboards/keyboardio/atreus/keymaps/default/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/default/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LW] = LAYOUT( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , - KC_NO, KC_VOLU, KC_NO, KC_NO, RESET, _______, _______, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , + KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, _______, _______, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , KC_NO, KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(_QW), KC_PSCR, KC_SLCK, KC_PAUS ) }; diff --git a/keyboards/keyboardio/atreus/keymaps/via/keymap.c b/keyboards/keyboardio/atreus/keymaps/via/keymap.c index c649ec1c65..dee94fc57e 100644 --- a/keyboards/keyboardio/atreus/keymaps/via/keymap.c +++ b/keyboards/keyboardio/atreus/keymaps/via/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( /* [> LOWER <] */ KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_UP, KC_F7, KC_F8, KC_F9, KC_F10 , KC_DEL, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, KC_DOWN, KC_F4, KC_F5, KC_F6, KC_F11 , - KC_NO, KC_VOLU, KC_NO, KC_NO, RESET, KC_TRNS, KC_TRNS, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , + KC_NO, KC_VOLU, KC_NO, KC_NO, QK_BOOT, KC_TRNS, KC_TRNS, KC_NO, KC_F1, KC_F2, KC_F3, KC_F12 , TO(0), KC_VOLD, KC_LGUI, KC_LSFT, KC_BSPC, KC_LCTL, KC_LALT, KC_SPC, TO(0), KC_PSCR, KC_SLCK, KC_PAUS ), [3] = LAYOUT( /* blank */ diff --git a/keyboards/keyboardio/model01/keymaps/default/keymap.c b/keyboards/keyboardio/model01/keymaps/default/keymap.c index 5ee865972e..1ff1eb8370 100644 --- a/keyboards/keyboardio/model01/keymaps/default/keymap.c +++ b/keyboards/keyboardio/model01/keymaps/default/keymap.c @@ -25,7 +25,7 @@ enum { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [DEF] = LAYOUT( - RESET , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , TG(NUM), + QK_BOOT , KC_1 , KC_2 , KC_3 , KC_4 , KC_5 , KC_6 , KC_7 , KC_8 , KC_9 , KC_0 , TG(NUM), KC_GRV , KC_Q , KC_W , KC_E , KC_R , KC_T , RGB_MOD, _______, KC_Y , KC_U , KC_I , KC_O , KC_P , KC_EQL , KC_PGUP, KC_A , KC_S , KC_D , KC_F , KC_G , KC_TAB , KC_ENT , KC_H , KC_J , KC_K , KC_L , KC_SCLN, KC_QUOT, KC_PGDN, KC_Z , KC_X , KC_C , KC_V , KC_B , KC_ESC , _______, KC_N , KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_MINS, diff --git a/keyboards/keycapsss/kimiko/keymaps/default/keymap.c b/keyboards/keycapsss/kimiko/keymaps/default/keymap.c index 5a33d527c8..7e767852f6 100644 --- a/keyboards/keycapsss/kimiko/keymaps/default/keymap.c +++ b/keyboards/keycapsss/kimiko/keymaps/default/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* ADJUST (Press LOWER and RAISE together) * ,-----------------------------------------. ,-----------------------------------------. - * |RESET | | | | | | | | | | | | | + * |QK_BOOT | | | | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * |RGB ON| HUE+ | SAT+ | VAL+ | | | | PREV | PLAY | NEXT | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -108,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, XXXXXXX, XXXXXXX, KC_VOLU, KC_MUTE, KC_VOLD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c b/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c index 107d6c940b..050b5a2c3e 100644 --- a/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c +++ b/keyboards/keycapsss/o4l_5x12/keymaps/default/keymap.c @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/keyhive/absinthe/keymaps/ansi/keymap.c b/keyboards/keyhive/absinthe/keymaps/ansi/keymap.c index 2177f18146..a0a73eb783 100644 --- a/keyboards/keyhive/absinthe/keymaps/ansi/keymap.c +++ b/keyboards/keyhive/absinthe/keymaps/ansi/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( KC_TRNS, 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_PSCR, KC_SLCK, KC_PAUS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_HUD,RGB_HUI,RGB_SAD,RGB_SAI,RGB_VAD,RGB_VAI, 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_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS) diff --git a/keyboards/keyhive/absinthe/keymaps/default/keymap.c b/keyboards/keyhive/absinthe/keymaps/default/keymap.c index e5c74366c0..7f74137037 100644 --- a/keyboards/keyhive/absinthe/keymaps/default/keymap.c +++ b/keyboards/keyhive/absinthe/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( KC_TRNS, 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_PSCR, KC_SLCK, KC_PAUS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, 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, RGB_TOG, RGB_RMOD, RGB_MOD, RGB_HUD,RGB_HUI,RGB_SAD,RGB_SAI,RGB_VAD,RGB_VAI, 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_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS) diff --git a/keyboards/keyhive/ergosaurus/keymaps/default/keymap.c b/keyboards/keyhive/ergosaurus/keymaps/default/keymap.c index 42cf9082e4..d9f5d882a4 100644 --- a/keyboards/keyhive/ergosaurus/keymaps/default/keymap.c +++ b/keyboards/keyhive/ergosaurus/keymaps/default/keymap.c @@ -42,6 +42,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/keyhive/ergosaurus/keymaps/via/keymap.c b/keyboards/keyhive/ergosaurus/keymaps/via/keymap.c index 5ae73bfd47..72a604ad2c 100644 --- a/keyboards/keyhive/ergosaurus/keymaps/via/keymap.c +++ b/keyboards/keyhive/ergosaurus/keymaps/via/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ), [3] = LAYOUT_alice_split_bs( @@ -46,6 +46,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/keyhive/southpole/keymaps/default/keymap.c b/keyboards/keyhive/southpole/keymaps/default/keymap.c index 2777f00b5b..c8782b9699 100644 --- a/keyboards/keyhive/southpole/keymaps/default/keymap.c +++ b/keyboards/keyhive/southpole/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_0, KC_DOT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), LAYOUT( - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_GRV, 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, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_GRV, 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, QK_BOOT, 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, 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, diff --git a/keyboards/keyhive/ut472/keymaps/via/keymap.c b/keyboards/keyhive/ut472/keymaps/via/keymap.c index fe3eff802e..506e8b3cde 100644 --- a/keyboards/keyhive/ut472/keymaps/via/keymap.c +++ b/keyboards/keyhive/ut472/keymaps/via/keymap.c @@ -15,7 +15,7 @@ LAYOUT( /* Right */ KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DELETE, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F11, KC_F12, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, _______, - RESET, _______, _______, KC_CAPS, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END + QK_BOOT, _______, _______, KC_CAPS, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END ), LAYOUT( /* Left */ diff --git a/keyboards/keyprez/rhino/keymaps/default/keymap.c b/keyboards/keyprez/rhino/keymaps/default/keymap.c index c58c3e8ccb..a44805f557 100644 --- a/keyboards/keyprez/rhino/keymaps/default/keymap.c +++ b/keyboards/keyprez/rhino/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | | | DEL | PRT SC | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| * | | | | | | | | MUTE | VOL UP |VOL DOWN| PAUSE | | * '-----------------------------------------------------------------------------------------------------------------------------' @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_APP, KC_GRV, 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_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, KC_DEL, KC_PSCR, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, MU_TOG, MU_MOD, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPLY ), diff --git a/keyboards/keyprez/rhino/keymaps/default_7u/keymap.c b/keyboards/keyprez/rhino/keymaps/default_7u/keymap.c index a24f45db65..1748d4590a 100644 --- a/keyboards/keyprez/rhino/keymaps/default_7u/keymap.c +++ b/keyboards/keyprez/rhino/keymaps/default_7u/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+-----------------+--------| * | | F7 | F8 | F9 | F10 | F11 | F12 | | | | | | DEL | PRT SC | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------------------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| * | | MU TOG | MU MOD | | | | | * '-----------------------------------------------------------------------------------------------------------------------------' @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_APP, KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, _______, KC_UP, _______, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_PSCR, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, MU_TOG, MU_MOD, _______, _______, _______ ), diff --git a/keyboards/keyprez/rhino/keymaps/default_ergo/keymap.c b/keyboards/keyprez/rhino/keymaps/default_ergo/keymap.c index ac73e3d796..ed57c543f9 100644 --- a/keyboards/keyprez/rhino/keymaps/default_ergo/keymap.c +++ b/keyboards/keyprez/rhino/keymaps/default_ergo/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+ F6 + F7 +--------+--------+--------+-----------------+---------| * | | F7 | F8 | F9 | F10 | F11 |--------|--------| | | | | | PRT SC | * |--------+--------+--------+--------+--------+--------+ F12 + +--------+--------+--------------------------+--------| - * | | | | | | | | | | | | | | RESET | + * | | | | | | | | | | | | | | QK_BOOT | * |--------+--------+--------+--------+--------+-----------------+--------+--------+--------+-----------------+--------+--------| * | | MU TOG | MU MOD | | | | | MUTE | VOL UP |VOL DOWN| PAUSE | | * '-----------------------------------------------------------------------------------------------------------------------------' @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_APP, KC_GRV, 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_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, KC_PSCR, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, MU_TOG, MU_MOD, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_VOLD, KC_MPLY ), diff --git a/keyboards/keyprez/unicorn/keymaps/default/keymap.c b/keyboards/keyprez/unicorn/keymaps/default/keymap.c index 14a22167f4..ef385bce50 100644 --- a/keyboards/keyprez/unicorn/keymaps/default/keymap.c +++ b/keyboards/keyprez/unicorn/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( _______, 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, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/keysofkings/twokey/keymaps/default/keymap.c b/keyboards/keysofkings/twokey/keymaps/default/keymap.c index f5a3732989..b611436b8c 100644 --- a/keyboards/keysofkings/twokey/keymaps/default/keymap.c +++ b/keyboards/keysofkings/twokey/keymaps/default/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( TO(0), - RESET, EEPROM_RESET), + QK_BOOT, EEPROM_RESET), }; void matrix_init_user(void) { diff --git a/keyboards/kikoslab/ellora65/keymaps/default/keymap.c b/keyboards/kikoslab/ellora65/keymaps/default/keymap.c index e904026b8e..625305c557 100644 --- a/keyboards/kikoslab/ellora65/keymaps/default/keymap.c +++ b/keyboards/kikoslab/ellora65/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F17 , 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_F18 , 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_F19 , 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_F20 , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_F20 , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/kikoslab/ellora65/keymaps/via/keymap.c b/keyboards/kikoslab/ellora65/keymaps/via/keymap.c index fbe101d3d1..8275718bcb 100644 --- a/keyboards/kikoslab/ellora65/keymaps/via/keymap.c +++ b/keyboards/kikoslab/ellora65/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F17 , 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_F18 , 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_F19 , 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_F20 , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + KC_F20 , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_all( diff --git a/keyboards/kin80/keymaps/default/keymap.c b/keyboards/kin80/keymaps/default/keymap.c index 9ef3e2b2fc..769dc65e08 100644 --- a/keyboards/kin80/keymaps/default/keymap.c +++ b/keyboards/kin80/keymaps/default/keymap.c @@ -72,7 +72,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+------+------+------+------+------| |------+------+------+------+------+--------| * | | | | | | | | . | 1 | 2 | 3 |Enter | | * `--------+------+------+------+------+------' `------+------+------+------+------+--------' -* |RESET | | | | | | | | | +* |QK_BOOT | | | | | | | | | * `---------------------------' `---------------------------' * ,-------------. ,-------------. * | | | | RAlt | | @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_BTN1, KC_MS_U, KC_BTN2, _______, KC_CAPS, KC_P7, KC_P8, KC_P9, KC_PMNS, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, KC_P4, KC_P5, KC_P6, KC_PPLS, _______, _______, _______, _______, _______, _______, _______, KC_PDOT, KC_P1, KC_P2, KC_P3, KC_PENT, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_RALT, _______, KC_WH_U, _______, _______, _______, KC_WH_D, _______, _______, KC_P0 diff --git a/keyboards/kinesis/keymaps/default/keymap.c b/keyboards/kinesis/keymaps/default/keymap.c index d46a07cacf..9c2f3bcc6b 100644 --- a/keyboards/kinesis/keymaps/default/keymap.c +++ b/keyboards/kinesis/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL,KC_LALT, KC_HOME, KC_BSPC,KC_DEL ,KC_END , - KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_NO, RESET, + KC_F9 ,KC_F10 ,KC_F11 ,KC_F12 ,KC_PSCR ,KC_SLCK ,KC_PAUS, KC_NO, QK_BOOT, KC_6 ,KC_7 ,KC_8 ,KC_9 ,KC_0 ,KC_MINS, KC_Y ,KC_U ,KC_I ,KC_O ,KC_P ,KC_BSLS, KC_H ,KC_J ,KC_K ,KC_L ,KC_SCLN,KC_QUOT, diff --git a/keyboards/kinesis/keymaps/default_pretty/keymap.c b/keyboards/kinesis/keymaps/default_pretty/keymap.c index 94102a8067..913f5dbf84 100644 --- a/keyboards/kinesis/keymaps/default_pretty/keymap.c +++ b/keyboards/kinesis/keymaps/default_pretty/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [QWERTY] = LAYOUT_pretty( - 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_PSCR, KC_SLCK, KC_PAUS, KC_NO, RESET, + 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_PSCR, KC_SLCK, KC_PAUS, KC_NO, QK_BOOT, KC_EQL, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, 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_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, diff --git a/keyboards/kingly_keys/little_foot/keymaps/default/keymap.c b/keyboards/kingly_keys/little_foot/keymaps/default/keymap.c index e85e0d6c47..76cac53e2e 100644 --- a/keyboards/kingly_keys/little_foot/keymaps/default/keymap.c +++ b/keyboards/kingly_keys/little_foot/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LT(_LN, KC_ESC), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MINS, KC_BSPC, KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, LSFT(KC_MINS), KC_BSLS, KC_LSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_QUOT, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LALT, KC_TRNS, KC_LCTRL ), diff --git a/keyboards/kira80/keymaps/ansi/keymap.c b/keyboards/kira80/keymaps/ansi/keymap.c index 21e4ce66eb..29d8d5d7f2 100644 --- a/keyboards/kira80/keymaps/ansi/keymap.c +++ b/keyboards/kira80/keymaps/ansi/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/kira80/keymaps/default/keymap.c b/keyboards/kira80/keymaps/default/keymap.c index e8468a0db6..8b1a75cb84 100644 --- a/keyboards/kira80/keymaps/default/keymap.c +++ b/keyboards/kira80/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/kira80/keymaps/iso/keymap.c b/keyboards/kira80/keymaps/iso/keymap.c index a4c86fbf30..c617dc4334 100644 --- a/keyboards/kira80/keymaps/iso/keymap.c +++ b/keyboards/kira80/keymaps/iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_iso( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/kira80/keymaps/via/keymap.c b/keyboards/kira80/keymaps/via/keymap.c index d875541045..78353c9d60 100644 --- a/keyboards/kira80/keymaps/via/keymap.c +++ b/keyboards/kira80/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/kiwikeebs/macro/keymaps/default/keymap.c b/keyboards/kiwikeebs/macro/keymaps/default/keymap.c index caa6b4aafc..b7f98c68ca 100644 --- a/keyboards/kiwikeebs/macro/keymaps/default/keymap.c +++ b/keyboards/kiwikeebs/macro/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE ), [_FN1] = LAYOUT( - RESET, KC_UP, _______, + QK_BOOT, KC_UP, _______, KC_LEFT, KC_DOWN, KC_RGHT, MAGIC_TOGGLE_NKRO ), [_FN2] = LAYOUT( diff --git a/keyboards/kiwikeebs/macro/keymaps/via/keymap.c b/keyboards/kiwikeebs/macro/keymaps/via/keymap.c index 56dffdbd93..0641efab59 100644 --- a/keyboards/kiwikeebs/macro/keymaps/via/keymap.c +++ b/keyboards/kiwikeebs/macro/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE ), [_FN] = LAYOUT( - RESET, KC_UP, _______, + QK_BOOT, KC_UP, _______, KC_LEFT, KC_DOWN, KC_RGHT, MAGIC_TOGGLE_NKRO ) }; diff --git a/keyboards/kiwikeebs/macro_v2/keymaps/default/keymap.c b/keyboards/kiwikeebs/macro_v2/keymaps/default/keymap.c index dd0def64b6..bfe8208a8b 100644 --- a/keyboards/kiwikeebs/macro_v2/keymaps/default/keymap.c +++ b/keyboards/kiwikeebs/macro_v2/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE ), [_FN1] = LAYOUT( - RESET, KC_UP, _______, + QK_BOOT, KC_UP, _______, KC_LEFT, KC_DOWN, KC_RGHT, MAGIC_TOGGLE_NKRO ), [_FN2] = LAYOUT( diff --git a/keyboards/kiwikeebs/macro_v2/keymaps/via/keymap.c b/keyboards/kiwikeebs/macro_v2/keymaps/via/keymap.c index 56dffdbd93..0641efab59 100644 --- a/keyboards/kiwikeebs/macro_v2/keymaps/via/keymap.c +++ b/keyboards/kiwikeebs/macro_v2/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MPRV, KC_MPLY, KC_MNXT, KC_MUTE ), [_FN] = LAYOUT( - RESET, KC_UP, _______, + QK_BOOT, KC_UP, _______, KC_LEFT, KC_DOWN, KC_RGHT, MAGIC_TOGGLE_NKRO ) }; diff --git a/keyboards/kiwikey/borderland/keymaps/default/keymap.c b/keyboards/kiwikey/borderland/keymaps/default/keymap.c index 9723158b4c..e232e68beb 100644 --- a/keyboards/kiwikey/borderland/keymaps/default/keymap.c +++ b/keyboards/kiwikey/borderland/keymaps/default/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kiwikey/borderland/keymaps/via/keymap.c b/keyboards/kiwikey/borderland/keymaps/via/keymap.c index b787933457..a785a53d15 100644 --- a/keyboards/kiwikey/borderland/keymaps/via/keymap.c +++ b/keyboards/kiwikey/borderland/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kiwikey/kawii9/keymaps/default/keymap.c b/keyboards/kiwikey/kawii9/keymaps/default/keymap.c index a43e84d00b..b9d1f0f2dd 100644 --- a/keyboards/kiwikey/kawii9/keymaps/default/keymap.c +++ b/keyboards/kiwikey/kawii9/keymaps/default/keymap.c @@ -30,6 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_3x3( RGB_TOG, RGB_MODE_REVERSE, RGB_MODE_FORWARD, _______, RGB_MODE_BREATHE, RGB_MODE_RAINBOW, - _______, _______, RESET + _______, _______, QK_BOOT ) }; diff --git a/keyboards/kiwikey/kawii9/keymaps/via/keymap.c b/keyboards/kiwikey/kawii9/keymaps/via/keymap.c index 4d64978cd0..cb462a58fe 100644 --- a/keyboards/kiwikey/kawii9/keymaps/via/keymap.c +++ b/keyboards/kiwikey/kawii9/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_3x3( RGB_TOG, RGB_MODE_REVERSE, RGB_MODE_FORWARD, _______, RGB_MODE_BREATHE, RGB_MODE_RAINBOW, - _______, _______, RESET + _______, _______, QK_BOOT ), [2] = LAYOUT_ortho_3x3( _______, _______, _______, diff --git a/keyboards/kiwikey/wanderland/keymaps/default/keymap.c b/keyboards/kiwikey/wanderland/keymaps/default/keymap.c index bb8a9bc0c0..62cefd77ff 100644 --- a/keyboards/kiwikey/wanderland/keymaps/default/keymap.c +++ b/keyboards/kiwikey/wanderland/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, 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, _______, RGB_TOG, RGB_MOD, RGB_RMOD,_______, _______, _______, BL_TOGG, BL_STEP, BL_BRTG, KC_UP, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, - RESET, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/kiwikey/wanderland/keymaps/via/keymap.c b/keyboards/kiwikey/wanderland/keymaps/via/keymap.c index 7ada22d02a..79f96d8b3a 100644 --- a/keyboards/kiwikey/wanderland/keymaps/via/keymap.c +++ b/keyboards/kiwikey/wanderland/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, 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, _______, RGB_TOG, RGB_MOD, RGB_RMOD,_______, _______, _______, BL_TOGG, BL_STEP, BL_BRTG, KC_UP, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, - RESET, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, RGB_VAD, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_alice_split_bs( diff --git a/keyboards/kkatano/bakeneko60/keymaps/default/keymap.c b/keyboards/kkatano/bakeneko60/keymaps/default/keymap.c index e1f5cfc2e2..c00e7fb050 100644 --- a/keyboards/kkatano/bakeneko60/keymaps/default/keymap.c +++ b/keyboards/kkatano/bakeneko60/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_60_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko60/keymaps/via/keymap.c b/keyboards/kkatano/bakeneko60/keymaps/via/keymap.c index 4034ba70d3..516ad4dc81 100644 --- a/keyboards/kkatano/bakeneko60/keymaps/via/keymap.c +++ b/keyboards/kkatano/bakeneko60/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_L1] = LAYOUT_60_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko65/rev2/keymaps/default/keymap.c b/keyboards/kkatano/bakeneko65/rev2/keymaps/default/keymap.c index 4d6d297d94..bcfb230469 100644 --- a/keyboards/kkatano/bakeneko65/rev2/keymaps/default/keymap.c +++ b/keyboards/kkatano/bakeneko65/rev2/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko65/rev2/keymaps/via/keymap.c b/keyboards/kkatano/bakeneko65/rev2/keymaps/via/keymap.c index a4cc2d8e8a..fd164e9d30 100644 --- a/keyboards/kkatano/bakeneko65/rev2/keymaps/via/keymap.c +++ b/keyboards/kkatano/bakeneko65/rev2/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_65_ansi_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko65/rev3/keymaps/default/keymap.c b/keyboards/kkatano/bakeneko65/rev3/keymaps/default/keymap.c index eb745e15ce..c9d1dd3052 100644 --- a/keyboards/kkatano/bakeneko65/rev3/keymaps/default/keymap.c +++ b/keyboards/kkatano/bakeneko65/rev3/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - 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, _______, KC_INS, _______, + QK_BOOT, 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_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko65/rev3/keymaps/via/keymap.c b/keyboards/kkatano/bakeneko65/rev3/keymaps/via/keymap.c index aed067bf10..267904a42e 100644 --- a/keyboards/kkatano/bakeneko65/rev3/keymaps/via/keymap.c +++ b/keyboards/kkatano/bakeneko65/rev3/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_all( - 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, _______, KC_INS, _______, + QK_BOOT, 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_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kkatano/bakeneko80/keymaps/default/keymap.c b/keyboards/kkatano/bakeneko80/keymaps/default/keymap.c index ff02728043..a1cc957f0c 100644 --- a/keyboards/kkatano/bakeneko80/keymaps/default/keymap.c +++ b/keyboards/kkatano/bakeneko80/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, LT(_FN, KC_APP), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_tkl_ansi( - RESET, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_MUTE, KC_VOLD, KC_VOLU, _______, KC_BRID, KC_BRIU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kmini/keymaps/default/keymap.c b/keyboards/kmini/keymaps/default/keymap.c index 50a1cfbc50..c3a7b12a40 100755 --- a/keyboards/kmini/keymaps/default/keymap.c +++ b/keyboards/kmini/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT( - _______, _______, _______, 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, _______, + _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/knops/mini/keymaps/default-gsm-newbs/keymap.c b/keyboards/knops/mini/keymaps/default-gsm-newbs/keymap.c index 3851719f19..4921564529 100644 --- a/keyboards/knops/mini/keymaps/default-gsm-newbs/keymap.c +++ b/keyboards/knops/mini/keymaps/default-gsm-newbs/keymap.c @@ -89,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * */ LAYOUT( - KC_TRNS, KC_TRNS, RESET, TO(0), TO(1), TO(2)), + KC_TRNS, KC_TRNS, QK_BOOT, TO(0), TO(1), TO(2)), // More Layers that can be used, but are not by default diff --git a/keyboards/knops/mini/keymaps/default/keymap.c b/keyboards/knops/mini/keymaps/default/keymap.c index 46ce7e49d0..de990cc597 100644 --- a/keyboards/knops/mini/keymaps/default/keymap.c +++ b/keyboards/knops/mini/keymaps/default/keymap.c @@ -17,7 +17,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LT(3, KC_1), KC_2, KC_3, KC_4, M_TGLHF, M_TGG), LAYOUT( - KC_TRNS, KC_TRNS, RESET, TO(0), TO(1), TO(2)), + KC_TRNS, KC_TRNS, QK_BOOT, TO(0), TO(1), TO(2)), LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/kona_classic/keymaps/ansi/keymap.c b/keyboards/kona_classic/keymaps/ansi/keymap.c index 8cf9d049b9..a99fbe34cc 100644 --- a/keyboards/kona_classic/keymaps/ansi/keymap.c +++ b/keyboards/kona_classic/keymaps/ansi/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_RGUI, MO(_FN), KC_RCTL ), [_FN] = LAYOUT_ansi( - RGB_TOG, RGB_MOD, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + RGB_TOG, RGB_MOD, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kona_classic/keymaps/default/keymap.c b/keyboards/kona_classic/keymaps/default/keymap.c index 2b4949869f..e9eaacd5ce 100644 --- a/keyboards/kona_classic/keymaps/default/keymap.c +++ b/keyboards/kona_classic/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_ENT, KC_RGUI, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - RGB_TOG, RGB_MOD, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + RGB_TOG, RGB_MOD, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kona_classic/keymaps/iso/keymap.c b/keyboards/kona_classic/keymaps/iso/keymap.c index 797d1cb188..29347ae647 100644 --- a/keyboards/kona_classic/keymaps/iso/keymap.c +++ b/keyboards/kona_classic/keymaps/iso/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F9, KC_F10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_RGUI, MO(_FN), KC_RCTL ), [_FN] = LAYOUT_iso( - RGB_TOG, RGB_MOD, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + RGB_TOG, RGB_MOD, KC_TILD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kopibeng/mnk65/keymaps/default/keymap.c b/keyboards/kopibeng/mnk65/keymaps/default/keymap.c index f588475516..75221584d8 100644 --- a/keyboards/kopibeng/mnk65/keymaps/default/keymap.c +++ b/keyboards/kopibeng/mnk65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kopibeng/mnk65/keymaps/via/keymap.c b/keyboards/kopibeng/mnk65/keymaps/via/keymap.c index ea2fcff18c..3f8d0f5f27 100644 --- a/keyboards/kopibeng/mnk65/keymaps/via/keymap.c +++ b/keyboards/kopibeng/mnk65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kopibeng/mnk88/keymaps/default/keymap.c b/keyboards/kopibeng/mnk88/keymaps/default/keymap.c index eb3748e277..6dce963838 100644 --- a/keyboards/kopibeng/mnk88/keymaps/default/keymap.c +++ b/keyboards/kopibeng/mnk88/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, 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_MPLY, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/kopibeng/mnk88/keymaps/via/keymap.c b/keyboards/kopibeng/mnk88/keymaps/via/keymap.c index eb3748e277..6dce963838 100644 --- a/keyboards/kopibeng/mnk88/keymaps/via/keymap.c +++ b/keyboards/kopibeng/mnk88/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, 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_MPLY, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/kopibeng/typ65/keymaps/default/keymap.c b/keyboards/kopibeng/typ65/keymaps/default/keymap.c index 63628ade61..2a69c2bb0c 100644 --- a/keyboards/kopibeng/typ65/keymaps/default/keymap.c +++ b/keyboards/kopibeng/typ65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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, 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, diff --git a/keyboards/kopibeng/typ65/keymaps/via/keymap.c b/keyboards/kopibeng/typ65/keymaps/via/keymap.c index 63628ade61..2a69c2bb0c 100644 --- a/keyboards/kopibeng/typ65/keymaps/via/keymap.c +++ b/keyboards/kopibeng/typ65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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, 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, diff --git a/keyboards/kopibeng/xt60/keymaps/default/keymap.c b/keyboards/kopibeng/xt60/keymaps/default/keymap.c index 337ec2836f..ee43182799 100644 --- a/keyboards/kopibeng/xt60/keymaps/default/keymap.c +++ b/keyboards/kopibeng/xt60/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( KC_TRNS, 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, RESET, 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, QK_BOOT, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, 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 diff --git a/keyboards/kopibeng/xt60/keymaps/via/keymap.c b/keyboards/kopibeng/xt60/keymaps/via/keymap.c index 337ec2836f..ee43182799 100644 --- a/keyboards/kopibeng/xt60/keymaps/via/keymap.c +++ b/keyboards/kopibeng/xt60/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( KC_TRNS, 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, RESET, 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, QK_BOOT, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, 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 diff --git a/keyboards/kopibeng/xt65/keymaps/default/keymap.c b/keyboards/kopibeng/xt65/keymaps/default/keymap.c index 4fad8d149b..901f1ec547 100644 --- a/keyboards/kopibeng/xt65/keymaps/default/keymap.c +++ b/keyboards/kopibeng/xt65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_65_ansi_blocker_split_bs( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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_CAPS, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kopibeng/xt65/keymaps/via/keymap.c b/keyboards/kopibeng/xt65/keymaps/via/keymap.c index a4c95edd4b..7d515d977a 100644 --- a/keyboards/kopibeng/xt65/keymaps/via/keymap.c +++ b/keyboards/kopibeng/xt65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_65_ansi_blocker_split_bs( - KC_TRNS, 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, RESET, + KC_TRNS, 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, QK_BOOT, 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_CAPS, 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_VOLD, KC_VOLU, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/kopibeng/xt8x/keymaps/default/keymap.c b/keyboards/kopibeng/xt8x/keymaps/default/keymap.c index 368f0f1127..52cd88d9cd 100644 --- a/keyboards/kopibeng/xt8x/keymaps/default/keymap.c +++ b/keyboards/kopibeng/xt8x/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, 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_MPLY, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/kopibeng/xt8x/keymaps/via/keymap.c b/keyboards/kopibeng/xt8x/keymaps/via/keymap.c index 368f0f1127..52cd88d9cd 100644 --- a/keyboards/kopibeng/xt8x/keymaps/via/keymap.c +++ b/keyboards/kopibeng/xt8x/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, 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_MPLY, KC_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/kprepublic/bm16a/keymaps/default/keymap.c b/keyboards/kprepublic/bm16a/keymaps/default/keymap.c index 1020fe3804..0255603d33 100644 --- a/keyboards/kprepublic/bm16a/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm16a/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN2] = LAYOUT_ortho_4x4( RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, BL_STEP, _______, QMKBEST, QMKURL ) diff --git a/keyboards/kprepublic/bm16a/keymaps/via/keymap.c b/keyboards/kprepublic/bm16a/keymaps/via/keymap.c index 5c8006759c..8b41b08dfe 100644 --- a/keyboards/kprepublic/bm16a/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm16a/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_VOLD, KC_MUTE, KC_MNXT ), [1] = LAYOUT_ortho_4x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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 diff --git a/keyboards/kprepublic/bm16s/keymaps/default/keymap.c b/keyboards/kprepublic/bm16s/keymaps/default/keymap.c index ed324e37ff..f2f0f43e9f 100755 --- a/keyboards/kprepublic/bm16s/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm16s/keymaps/default/keymap.c @@ -8,7 +8,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_KP_0, KC_PDOT, KC_PCMM, KC_PENT ), [1] = LAYOUT_ortho_4x4( - RESET, BL_STEP, _______, KC_VOLU, + QK_BOOT, BL_STEP, _______, KC_VOLU, BL_TOGG, BL_DEC, BL_INC, KC_VOLD, RGB_TOG, RGB_MOD, RGB_HUI, KC_MUTE, RGB_SAI, RGB_SAD, RGB_HUD, _______ diff --git a/keyboards/kprepublic/bm16s/keymaps/via/keymap.c b/keyboards/kprepublic/bm16s/keymaps/via/keymap.c index 71b0d2b0f5..cdf46e2afe 100644 --- a/keyboards/kprepublic/bm16s/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm16s/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_KP_0, KC_PDOT, KC_PCMM, KC_PENT ), [1] = LAYOUT_ortho_4x4( - RESET, BL_STEP, KC_TRNS, KC_VOLU, + QK_BOOT, BL_STEP, KC_TRNS, KC_VOLU, BL_TOGG, BL_DEC, BL_INC, KC_VOLD, RGB_TOG, RGB_MOD, RGB_HUI, KC_MUTE, RGB_SAI, RGB_SAD, RGB_HUD, KC_TRNS diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c index 60faf17e1c..37378b6085 100755 --- a/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm40hsrgb/keymaps/default/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c b/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c index 60faf17e1c..37378b6085 100644 --- a/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm40hsrgb/keymaps/via/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_mit( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/bm43a/keymaps/default/keymap.c b/keyboards/kprepublic/bm43a/keymaps/default/keymap.c index 7cafeadb32..4398244f6f 100644 --- a/keyboards/kprepublic/bm43a/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm43a/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/bm43hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm43hsrgb/keymaps/default/keymap.c index a772e54aa4..b6edf3925e 100755 --- a/keyboards/kprepublic/bm43hsrgb/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm43hsrgb/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/bm43hsrgb/keymaps/default/readme.md b/keyboards/kprepublic/bm43hsrgb/keymaps/default/readme.md index 2ecc0b2f49..a1ebf08a17 100755 --- a/keyboards/kprepublic/bm43hsrgb/keymaps/default/readme.md +++ b/keyboards/kprepublic/bm43hsrgb/keymaps/default/readme.md @@ -16,7 +16,7 @@ ## Fn Layer ``` ,----------------------------------------------------------------------------. -| RESET | | | | | | | | | | | | +| QK_BOOT | | | | | | | | | | | | |----------------------------------------------------------------------------+ | | | | | | | | | | | | |----------------------------------------------------------------------------+ diff --git a/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/default/keymap.c index e8be1cccf6..9ef0ca3c47 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_ansi_arrow( - 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, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/via/keymap.c index da2f6e8ced..d0a3d2bcf5 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb/rev1/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_ansi_arrow( - 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, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/default/keymap.c index a46be1786e..51ac4708fc 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_ansi_arrow( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/via/keymap.c index 55db68139e..d0d548a5ad 100644 --- a/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb/rev2/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_ansi_arrow( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev1/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb_iso/rev1/keymaps/default/keymap.c index 9eca076df9..4178c5066e 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev1/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_iso_arrow( - 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, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c index 93da46e31b..4ed48135f8 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_iso_arrow( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c index 2bdfd2efe6..48484dee1b 100644 --- a/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_iso/rev2/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_60_iso_arrow( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/default/keymap.c index efd74ad134..0e54a9dd4a 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL ), [1] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/via/keymap.c index 8f577b4593..049fc66b8c 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev1/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, MO(1) ), [1] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_UP, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/default/keymap.c index b1c5c57ea4..069dcf1689 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_ansi( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/via/keymap.c index f74fa21de8..ef525f3ab0 100644 --- a/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm60hsrgb_poker/rev2/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_ansi( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm65hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm65hsrgb/keymaps/default/keymap.c index dadeb9c149..1e1aae0413 100644 --- a/keyboards/kprepublic/bm65hsrgb/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm65hsrgb/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/default/keymap.c b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/default/keymap.c index bed12e0f72..3d6ff36e08 100644 --- a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_iso_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/via/keymap.c b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/via/keymap.c index ae36e6b1f5..e405cef34d 100644 --- a/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm65hsrgb_iso/rev1/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_iso_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/default/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/default/keymap.c index b4bc5cb59d..878967718f 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/via/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/via/keymap.c index 46381c561c..453853fc63 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm68hsrgb/rev1/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRAVE, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_65_ansi( diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c index e4542b553f..e9961a7238 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/default/keymap.c @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi( - KC_GESC, 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, RESET, + KC_GESC, 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, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, KC_CAPS, RMT, RMS, RMIH, RMDH, RMIS, RMDS, RMIV, RMDV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, diff --git a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c index 02c54584c6..d85e4ae979 100644 --- a/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm68hsrgb/rev2/keymaps/via/keymap.c @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi( - KC_GESC, 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, RESET, + KC_GESC, 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, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_SPI, RGB_SPD, _______, _______, _______, _______, KC_CAPS, RM_TOGG, RM_MOD, RM_HUI, RM_HUD, RM_SAI, RM_SAD, RM_VAI, RM_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, diff --git a/keyboards/kprepublic/bm80hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm80hsrgb/keymaps/default/keymap.c index d86c6f9ec8..0f0467060b 100644 --- a/keyboards/kprepublic/bm80hsrgb/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm80hsrgb/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/kprepublic/bm80hsrgb/keymaps/via/keymap.c b/keyboards/kprepublic/bm80hsrgb/keymaps/via/keymap.c index 53b2981c5e..824f671ece 100644 --- a/keyboards/kprepublic/bm80hsrgb/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm80hsrgb/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/kprepublic/bm980hsrgb/keymaps/default/keymap.c b/keyboards/kprepublic/bm980hsrgb/keymaps/default/keymap.c index a9a2c818ee..9ec3d9968a 100644 --- a/keyboards/kprepublic/bm980hsrgb/keymaps/default/keymap.c +++ b/keyboards/kprepublic/bm980hsrgb/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/bm980hsrgb/keymaps/via/keymap.c b/keyboards/kprepublic/bm980hsrgb/keymaps/via/keymap.c index 822ac29012..41bd790804 100644 --- a/keyboards/kprepublic/bm980hsrgb/keymaps/via/keymap.c +++ b/keyboards/kprepublic/bm980hsrgb/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/kprepublic/cospad/keymaps/default/keymap.c b/keyboards/kprepublic/cospad/keymaps/default/keymap.c index 06b06d41f9..c9d323480b 100644 --- a/keyboards/kprepublic/cospad/keymaps/default/keymap.c +++ b/keyboards/kprepublic/cospad/keymaps/default/keymap.c @@ -52,6 +52,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, BL_ON, RGB_SAD, RGB_SAI, BL_OFF, _______, RGB_VAD, RGB_VAI, BL_STEP, - _______, RESET, _______ + _______, QK_BOOT, _______ ) }; diff --git a/keyboards/kprepublic/cospad/keymaps/via/keymap.c b/keyboards/kprepublic/cospad/keymaps/via/keymap.c index f8611c02d7..f436f85a2f 100644 --- a/keyboards/kprepublic/cospad/keymaps/via/keymap.c +++ b/keyboards/kprepublic/cospad/keymaps/via/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, BL_ON, RGB_SAD, RGB_SAI, BL_OFF, _______, RGB_VAD, RGB_VAI, BL_STEP, - _______, RESET, _______ + _______, QK_BOOT, _______ ), [2] = LAYOUT_numpad_6x4( diff --git a/keyboards/kprepublic/jj40/keymaps/default/keymap.c b/keyboards/kprepublic/jj40/keymaps/default/keymap.c index 380be974db..c82106e187 100644 --- a/keyboards/kprepublic/jj40/keymaps/default/keymap.c +++ b/keyboards/kprepublic/jj40/keymaps/default/keymap.c @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/jj40/keymaps/via/keymap.c b/keyboards/kprepublic/jj40/keymaps/via/keymap.c index 0e0e469abc..131566cfbe 100644 --- a/keyboards/kprepublic/jj40/keymaps/via/keymap.c +++ b/keyboards/kprepublic/jj40/keymaps/via/keymap.c @@ -85,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [3] = LAYOUT_planck_mit( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/jj4x4/keymaps/default/keymap.c b/keyboards/kprepublic/jj4x4/keymaps/default/keymap.c index ae2c6b5417..c7eee75189 100644 --- a/keyboards/kprepublic/jj4x4/keymaps/default/keymap.c +++ b/keyboards/kprepublic/jj4x4/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN2] = LAYOUT_ortho_4x4( RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, - _______, _______, _______, RESET, + _______, _______, _______, QK_BOOT, BL_STEP, _______, QMKBEST, QMKURL ) }; diff --git a/keyboards/kprepublic/jj4x4/keymaps/via/keymap.c b/keyboards/kprepublic/jj4x4/keymaps/via/keymap.c index 35ca0e361d..120d275efd 100644 --- a/keyboards/kprepublic/jj4x4/keymaps/via/keymap.c +++ b/keyboards/kprepublic/jj4x4/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P0, KC_PDOT, KC_PPLS, LT(1, KC_ENT) ), LAYOUT_ortho_4x4( - RESET, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/jj50/keymaps/default/keymap.c b/keyboards/kprepublic/jj50/keymaps/default/keymap.c index 96a308f82a..af495f17f1 100644 --- a/keyboards/kprepublic/jj50/keymaps/default/keymap.c +++ b/keyboards/kprepublic/jj50/keymaps/default/keymap.c @@ -182,7 +182,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, QWERTY, WORKMAN, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kprepublic/jj50/keymaps/via/keymap.c b/keyboards/kprepublic/jj50/keymaps/via/keymap.c index 978ac4c12c..98396dd47a 100644 --- a/keyboards/kprepublic/jj50/keymaps/via/keymap.c +++ b/keyboards/kprepublic/jj50/keymaps/via/keymap.c @@ -109,7 +109,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_CAPS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ktec/daisy/keymaps/default/keymap.c b/keyboards/ktec/daisy/keymaps/default/keymap.c index 10f5710417..5fa591734a 100644 --- a/keyboards/ktec/daisy/keymaps/default/keymap.c +++ b/keyboards/ktec/daisy/keymaps/default/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └────┴───┴────┴────────┴──────────┴────┴───┴────┘ */ [_RS] = LAYOUT( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_HOME, KC_PGUP, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_HOME, KC_PGUP, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_END, KC_PGDN, _______, _______, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_VAD, RGB_VAI, RGB_SAD, RGB_SAI, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ktec/daisy/keymaps/via/keymap.c b/keyboards/ktec/daisy/keymaps/via/keymap.c index 102657116c..e55715b3a3 100644 --- a/keyboards/ktec/daisy/keymaps/via/keymap.c +++ b/keyboards/ktec/daisy/keymaps/via/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └────┴───┴────┴────────┴──────────┴────┴───┴────┘ */ [_RS] = LAYOUT( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_HOME, KC_PGUP, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, KC_HOME, KC_PGUP, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_END, KC_PGDN, _______, _______, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_VAD, RGB_VAI, RGB_SAD, RGB_SAI, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/kv/revt/keymaps/default/keymap.c b/keyboards/kv/revt/keymaps/default/keymap.c index 4f94f197a8..7f2d130e2c 100644 --- a/keyboards/kv/revt/keymaps/default/keymap.c +++ b/keyboards/kv/revt/keymaps/default/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MNXT, KC_VOLU, _______, _______, _______, _______, _______, KC_MS_BTN1, KC_MS_U, KC_MS_BTN2, KC_WH_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MSTP, KC_MPRV, KC_VOLD, -_______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, _______, RESET, _______, _______, _______, _______, +_______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, KC_WH_D, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/ky01/keymaps/default/keymap.c b/keyboards/ky01/keymaps/default/keymap.c index fc08c14a87..bb40b8bec6 100644 --- a/keyboards/ky01/keymaps/default/keymap.c +++ b/keyboards/ky01/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), [L1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/latincompass/latin60rgb/keymaps/default/keymap.c b/keyboards/latincompass/latin60rgb/keymaps/default/keymap.c index a44bbf660e..478b4872dc 100644 --- a/keyboards/latincompass/latin60rgb/keymaps/default/keymap.c +++ b/keyboards/latincompass/latin60rgb/keymaps/default/keymap.c @@ -25,14 +25,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_latin_hhkb( RGB_TOG, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,_______, KC_LALT, _______, _______, _______, _______ ), [2] = LAYOUT_60_latin_hhkb( RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, RGB_SPI, RGB_SPD, KC_F11, KC_F12, KC_DEL, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______ diff --git a/keyboards/latincompass/latin60rgb/keymaps/via/keymap.c b/keyboards/latincompass/latin60rgb/keymaps/via/keymap.c index a44bbf660e..478b4872dc 100644 --- a/keyboards/latincompass/latin60rgb/keymaps/via/keymap.c +++ b/keyboards/latincompass/latin60rgb/keymaps/via/keymap.c @@ -25,14 +25,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_latin_hhkb( RGB_TOG, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, _______, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______,_______, KC_LALT, _______, _______, _______, _______ ), [2] = LAYOUT_60_latin_hhkb( RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, RGB_SPI, RGB_SPD, KC_F11, KC_F12, KC_DEL, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______ diff --git a/keyboards/lazydesigners/bolt/keymaps/default/keymap.c b/keyboards/lazydesigners/bolt/keymaps/default/keymap.c index d410e60a53..e6ca2e891d 100644 --- a/keyboards/lazydesigners/bolt/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/bolt/keymaps/default/keymap.c @@ -26,13 +26,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, LT1_SPC, KC_SPC, LT1_SPC, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, KC_INS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO ), [2] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO diff --git a/keyboards/lazydesigners/bolt/keymaps/via/keymap.c b/keyboards/lazydesigners/bolt/keymaps/via/keymap.c index a977f9c38f..6e39046b9a 100644 --- a/keyboards/lazydesigners/bolt/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/bolt/keymaps/via/keymap.c @@ -23,13 +23,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, KC_INS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO ), [2] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO diff --git a/keyboards/lazydesigners/cassette8/keymaps/default/keymap.c b/keyboards/lazydesigners/cassette8/keymaps/default/keymap.c index 3d1eb395c6..b264630654 100755 --- a/keyboards/lazydesigners/cassette8/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/cassette8/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_5, KC_6, KC_7, LT1_SPC ), [1] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ), [2] = LAYOUT( diff --git a/keyboards/lazydesigners/cassette8/keymaps/via/keymap.c b/keyboards/lazydesigners/cassette8/keymaps/via/keymap.c index 3d1eb395c6..b264630654 100755 --- a/keyboards/lazydesigners/cassette8/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/cassette8/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_5, KC_6, KC_7, LT1_SPC ), [1] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ), [2] = LAYOUT( diff --git a/keyboards/lazydesigners/dimple/ortho/keymaps/default/keymap.c b/keyboards/lazydesigners/dimple/ortho/keymaps/default/keymap.c index 6fd8f5875f..afdc729f58 100644 --- a/keyboards/lazydesigners/dimple/ortho/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/dimple/ortho/keymaps/default/keymap.c @@ -40,7 +40,7 @@ ), [1] = LAYOUT_ortho_2u( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/dimple/ortho/keymaps/via/keymap.c b/keyboards/lazydesigners/dimple/ortho/keymaps/via/keymap.c index 32b71b75df..15248143bd 100644 --- a/keyboards/lazydesigners/dimple/ortho/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/dimple/ortho/keymaps/via/keymap.c @@ -40,7 +40,7 @@ ), [1] = LAYOUT_ortho_2u( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/dimple/staggered/keymaps/default/keymap.c b/keyboards/lazydesigners/dimple/staggered/keymaps/default/keymap.c index 65b81ff4e1..168a62b3d4 100644 --- a/keyboards/lazydesigners/dimple/staggered/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/dimple/staggered/keymaps/default/keymap.c @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( - EEP_RST, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + EEP_RST, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_VAD, RGB_TOG, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO diff --git a/keyboards/lazydesigners/dimple/staggered/rev3/keymaps/default/keymap.c b/keyboards/lazydesigners/dimple/staggered/rev3/keymaps/default/keymap.c index ca20b00201..8742851f92 100644 --- a/keyboards/lazydesigners/dimple/staggered/rev3/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/dimple/staggered/rev3/keymaps/default/keymap.c @@ -40,7 +40,7 @@ ), [1] = LAYOUT_all( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/dimpleplus/keymaps/default/keymap.c b/keyboards/lazydesigners/dimpleplus/keymaps/default/keymap.c index 17b9aec472..8e82d33e42 100644 --- a/keyboards/lazydesigners/dimpleplus/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/dimpleplus/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, LT1_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, RESET, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, QK_BOOT, KC_TILD, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSLS, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_LBRC, KC_RBRC, KC_MINS, KC_EQL, KC_SCLN, KC_SLSH, KC_NO, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_NO, KC_NO, KC_NO, KC_DOT, KC_NO, diff --git a/keyboards/lazydesigners/dimpleplus/keymaps/default_7u/keymap.c b/keyboards/lazydesigners/dimpleplus/keymaps/default_7u/keymap.c index 16724b5461..b22c21c8dc 100644 --- a/keyboards/lazydesigners/dimpleplus/keymaps/default_7u/keymap.c +++ b/keyboards/lazydesigners/dimpleplus/keymaps/default_7u/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_SPC, KC_RALT, MO(1) ), [1] = LAYOUT_7u( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TAB, KC_UNDS, KC_SCLN, KC_BSLS, KC_QUOT, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_UP, KC_SLSH, KC_LSFT, KC_VOLD, KC_VOLU, KC_MUTE, KC_MSTP, KC_MPLY, KC_MFFD, KC_LEFT, KC_DOWN, KC_RIGHT, KC_RSFT, diff --git a/keyboards/lazydesigners/dimpleplus/keymaps/via/keymap.c b/keyboards/lazydesigners/dimpleplus/keymaps/via/keymap.c index e15949fd16..76cfe9a9a2 100644 --- a/keyboards/lazydesigners/dimpleplus/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/dimpleplus/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, diff --git a/keyboards/lazydesigners/the30/keymaps/default/keymap.c b/keyboards/lazydesigners/the30/keymaps/default/keymap.c index e15fad7eb3..a3115dddec 100644 --- a/keyboards/lazydesigners/the30/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/the30/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_3x10( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, EEP_RST, _______, _______, KC_SPC, _______, _______, _______, _______, _______ + QK_BOOT, EEP_RST, _______, _______, KC_SPC, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/lazydesigners/the30/keymaps/via/keymap.c b/keyboards/lazydesigners/the30/keymaps/via/keymap.c index 1a1b10fd51..0158e981c2 100644 --- a/keyboards/lazydesigners/the30/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/the30/keymaps/via/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, MO(1) ), [1] = LAYOUT_ortho_3x10( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/the40/keymaps/default/keymap.c b/keyboards/lazydesigners/the40/keymaps/default/keymap.c index 81e1e72975..6bd7bbfdbd 100644 --- a/keyboards/lazydesigners/the40/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/the40/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_TRNS, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/the40/keymaps/via/keymap.c b/keyboards/lazydesigners/the40/keymaps/via/keymap.c index cdd7941b4b..69780dd949 100644 --- a/keyboards/lazydesigners/the40/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/the40/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_NO, - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_NO, KC_NO, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO ), diff --git a/keyboards/lazydesigners/the50/keymaps/default/keymap.c b/keyboards/lazydesigners/the50/keymaps/default/keymap.c index cba582cab2..c8ab42d811 100644 --- a/keyboards/lazydesigners/the50/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/the50/keymaps/default/keymap.c @@ -42,7 +42,7 @@ KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, */ [_FN] = LAYOUT( -RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, KC_HOME, KC_PGUP, _______, +QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, KC_DEL, KC_HOME, KC_PGUP, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/lazydesigners/the60/rev1/keymaps/default/keymap.c b/keyboards/lazydesigners/the60/rev1/keymaps/default/keymap.c index 8a95b44748..71bab883c1 100755 --- a/keyboards/lazydesigners/the60/rev1/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/the60/rev1/keymaps/default/keymap.c @@ -44,7 +44,7 @@ KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_SPACE, */ [_FN] = LAYOUT_split_spc_split_bspc( -RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_END, KC_INS, +QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_END, KC_INS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PGUP, KC_PGDN, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/lazydesigners/the60/rev2/keymaps/default/keymap.c b/keyboards/lazydesigners/the60/rev2/keymaps/default/keymap.c index b7bece8b35..745f46e1fb 100755 --- a/keyboards/lazydesigners/the60/rev2/keymaps/default/keymap.c +++ b/keyboards/lazydesigners/the60/rev2/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [1] = LAYOUT_all( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/lazydesigners/the60/rev2/keymaps/via/keymap.c b/keyboards/lazydesigners/the60/rev2/keymaps/via/keymap.c index b7bece8b35..745f46e1fb 100755 --- a/keyboards/lazydesigners/the60/rev2/keymaps/via/keymap.c +++ b/keyboards/lazydesigners/the60/rev2/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [1] = LAYOUT_all( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/leeku/finger65/keymaps/default/keymap.c b/keyboards/leeku/finger65/keymaps/default/keymap.c index 14a0f0c5c9..ca1e556269 100644 --- a/keyboards/leeku/finger65/keymaps/default/keymap.c +++ b/keyboards/leeku/finger65/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( KC_GRV, 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, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PAUS, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END), diff --git a/keyboards/lets_split/keymaps/default/keymap.c b/keyboards/lets_split/keymaps/default/keymap.c index fcb3ab6677..bc240b5f00 100644 --- a/keyboards/lets_split/keymaps/default/keymap.c +++ b/keyboards/lets_split/keymaps/default/keymap.c @@ -124,7 +124,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/lets_split/keymaps/via/keymap.c b/keyboards/lets_split/keymaps/via/keymap.c index 1509a2e6a2..6c5239cf4c 100644 --- a/keyboards/lets_split/keymaps/via/keymap.c +++ b/keyboards/lets_split/keymaps/via/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - RESET, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + QK_BOOT, KC_LCTL, KC_LALT, KC_LGUI, MO(1), KC_SPC, KC_SPC, MO(2), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), @@ -68,7 +68,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [3] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, RGB_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/lfkeyboards/lfk65_hs/keymaps/default/keymap.c b/keyboards/lfkeyboards/lfk65_hs/keymaps/default/keymap.c index 8d8b4b751b..6928a2f559 100644 --- a/keyboards/lfkeyboards/lfk65_hs/keymaps/default/keymap.c +++ b/keyboards/lfkeyboards/lfk65_hs/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FUNC] = LAYOUT_ansi( KC_GRV, 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_F13, KC_F14, MU_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, RGB_MOD, + AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, MU_TOG, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c index 8faa099453..ccd5b1c716 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c +++ b/keyboards/lfkeyboards/lfk78/keymaps/default/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [SETTINGS] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, BL_TOGG, RGB_TOG, RGB_VAI, XXXXXXX, XXXXXXX, MU_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAD, - XXXXXXX, XXXXXXX, AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c index ec054b33e7..f61efbbfe4 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c +++ b/keyboards/lfkeyboards/lfk78/keymaps/iso/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [SETTINGS] = LAYOUT_iso( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, BL_TOGG, RGB_TOG, RGB_VAI, XXXXXXX, XXXXXXX, MU_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAD, - XXXXXXX, XXXXXXX, AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c b/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c index 48e183984f..e388706814 100644 --- a/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c +++ b/keyboards/lfkeyboards/lfk78/keymaps/via/keymap.c @@ -50,14 +50,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( 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_INC, BL_TOGG, RGB_TOG, RGB_VAI, KC_TRNS, KC_TRNS, MU_MOD, 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, RGB_MOD, RGB_VAD, - KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI ), [3] = LAYOUT( 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_INC, BL_TOGG, RGB_TOG, RGB_VAI, KC_TRNS, KC_TRNS, MU_MOD, 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, RGB_MOD, RGB_VAD, - KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, AU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, MU_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c index 789a6f9737..73f62d36bf 100644 --- a/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c +++ b/keyboards/lfkeyboards/lfk87/keymaps/default/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, BL_TOGG, RGB_TOG, RGB_VAI, XXXXXXX, MU_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAD, XXXXXXX, - AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c b/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c index b36de66c6a..74a7d1cfa3 100644 --- a/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c +++ b/keyboards/lfkeyboards/lfk87/keymaps/iso/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, BL_TOGG, RGB_TOG, RGB_VAI, XXXXXXX, MU_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAD, XXXXXXX, - AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c b/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c index 13cb6c22f5..3ec324ebe5 100644 --- a/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c +++ b/keyboards/lfkeyboards/mini1800/keymaps/default/keymap.c @@ -81,7 +81,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [SETTINGS] = LAYOUT( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, BL_TOGG, RGB_TOG, RGB_VAI, XXXXXXX, XXXXXXX, MU_MOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAD, XXXXXXX, XXXXXXX, - AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + AU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, MU_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_HUI, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_SAD, RGB_HUD, RGB_SAI, XXXXXXX, XXXXXXX ) diff --git a/keyboards/lfkeyboards/smk65/keymaps/default/keymap.c b/keyboards/lfkeyboards/smk65/keymaps/default/keymap.c index 0e6b2820d0..868c5eca27 100644 --- a/keyboards/lfkeyboards/smk65/keymaps/default/keymap.c +++ b/keyboards/lfkeyboards/smk65/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_65_ansi( KC_GRV, 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_F13, KC_F14, MU_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, RGB_MOD, + AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, MU_TOG, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/smk65/keymaps/iso/keymap.c b/keyboards/lfkeyboards/smk65/keymaps/iso/keymap.c index 881ff99c9d..fe75179572 100644 --- a/keyboards/lfkeyboards/smk65/keymaps/iso/keymap.c +++ b/keyboards/lfkeyboards/smk65/keymaps/iso/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,------------------------------------------------------------.----. * |Esc~| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 0| - | = |Backspa| Ins| * |------------------------------------------------------------|----| - * |MuMode | | | |E| R| T| Y| U| I| O| P| [| ]| RESET| Del| + * |MuMode | | | |E| R| T| Y| U| I| O| P| [| ]| QK_BOOT| Del| * |--------------------------------------------------------. |----| * |AudTgl|Hz+|MS+| | D| F| G| H| J| K| L| ;| '| | |PgUp| * |------------------------------------------------------------|----| @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_65_iso( KC_GRV, 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_F13, KC_F14, MU_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, - AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, RGB_MOD, + AU_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, MU_TOG, RGB_VAD, RGB_VAI, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAD, RGB_HUD, RGB_SAI ) diff --git a/keyboards/lfkeyboards/smk65/revf/keymaps/via/keymap.c b/keyboards/lfkeyboards/smk65/revf/keymaps/via/keymap.c index ca2fe748ac..d7aac3ddaf 100644 --- a/keyboards/lfkeyboards/smk65/revf/keymaps/via/keymap.c +++ b/keyboards/lfkeyboards/smk65/revf/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_F13, KC_F14, KC_F15, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/lime/keymaps/default/keymap.c b/keyboards/lime/keymaps/default/keymap.c index eade4d4183..3969514513 100644 --- a/keyboards/lime/keymaps/default/keymap.c +++ b/keyboards/lime/keymaps/default/keymap.c @@ -142,7 +142,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* ADJUST * ,-----------------------------------------. ,-----------------------------------------. - * | RESET| | | | | | | | | | | | | + * | QK_BOOT| | | | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | |QWERTY| | | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -155,7 +155,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `----------------------------------------' '------''----------------------------------' */ [_ADJUST] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_QWERTY, XXXXXXX, XXXXXXX, CG_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_JOYSTICK_DEBUG,XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_COLEMAK, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, diff --git a/keyboards/linworks/fave84h/keymaps/default/keymap.c b/keyboards/linworks/fave84h/keymaps/default/keymap.c index 5b65733221..9f7b1b40ef 100644 --- a/keyboards/linworks/fave84h/keymaps/default/keymap.c +++ b/keyboards/linworks/fave84h/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, EEP_RST, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ) }; diff --git a/keyboards/linworks/fave84h/keymaps/via/keymap.c b/keyboards/linworks/fave84h/keymaps/via/keymap.c index 3000a76245..c750a8bc3c 100644 --- a/keyboards/linworks/fave84h/keymaps/via/keymap.c +++ b/keyboards/linworks/fave84h/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, EEP_RST, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ), diff --git a/keyboards/linworks/fave87/keymaps/default/keymap.c b/keyboards/linworks/fave87/keymaps/default/keymap.c index fc56046e85..1aaa50f22f 100644 --- a/keyboards/linworks/fave87/keymaps/default/keymap.c +++ b/keyboards/linworks/fave87/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, RGB_VAD, RGB_VAI, BL_DEC, BL_INC, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_SPI, RGB_SPI, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/linworks/fave87/keymaps/via/keymap.c b/keyboards/linworks/fave87/keymaps/via/keymap.c index fc56046e85..1aaa50f22f 100644 --- a/keyboards/linworks/fave87/keymaps/via/keymap.c +++ b/keyboards/linworks/fave87/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, RGB_VAD, RGB_VAI, BL_DEC, BL_INC, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_RMOD, RGB_MOD, RGB_SPI, RGB_SPI, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/linworks/fave87h/keymaps/default/keymap.c b/keyboards/linworks/fave87h/keymaps/default/keymap.c index 0f93bc13f0..d5d64a1230 100644 --- a/keyboards/linworks/fave87h/keymaps/default/keymap.c +++ b/keyboards/linworks/fave87h/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, EEP_RST, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ) }; diff --git a/keyboards/linworks/fave87h/keymaps/via/keymap.c b/keyboards/linworks/fave87h/keymaps/via/keymap.c index a64a67df47..4d9a56cebf 100644 --- a/keyboards/linworks/fave87h/keymaps/via/keymap.c +++ b/keyboards/linworks/fave87h/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, EEP_RST, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ), diff --git a/keyboards/lm_keyboard/lm60n/keymaps/default/keymap.c b/keyboards/lm_keyboard/lm60n/keymaps/default/keymap.c index 655cc7ac03..09faf755c2 100644 --- a/keyboards/lm_keyboard/lm60n/keymaps/default/keymap.c +++ b/keyboards/lm_keyboard/lm60n/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( /* FN */ KC_GRV, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, RGB_TOG, RGB_RMOD,RGB_MOD, RGB_VAD, RGB_VAI, KC_END, KC_PGDN, 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 diff --git a/keyboards/lm_keyboard/lm60n/keymaps/via/keymap.c b/keyboards/lm_keyboard/lm60n/keymaps/via/keymap.c index 04c7c09603..de80a1e4d2 100644 --- a/keyboards/lm_keyboard/lm60n/keymaps/via/keymap.c +++ b/keyboards/lm_keyboard/lm60n/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all_ansi( KC_GRV, 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_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_PGDN, 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 diff --git a/keyboards/longnald/corin/keymaps/default/keymap.c b/keyboards/longnald/corin/keymaps/default/keymap.c index c8906efc59..eddc652cdc 100644 --- a/keyboards/longnald/corin/keymaps/default/keymap.c +++ b/keyboards/longnald/corin/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT_64_ansi( KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, - KC_NO, KC_NO, KC_NO, KC_NO, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, + KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO diff --git a/keyboards/lucid/alexa/keymaps/default/keymap.c b/keyboards/lucid/alexa/keymaps/default/keymap.c index 29efe094f5..6f7cd1772b 100644 --- a/keyboards/lucid/alexa/keymaps/default/keymap.c +++ b/keyboards/lucid/alexa/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LAYER1] = LAYOUT_65_ansi_blocker_split_bs( KC_GESC, 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_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lucid/alexa/keymaps/via/keymap.c b/keyboards/lucid/alexa/keymaps/via/keymap.c index 8cfb97af10..7977c826c2 100644 --- a/keyboards/lucid/alexa/keymaps/via/keymap.c +++ b/keyboards/lucid/alexa/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_LAYER1] = LAYOUT_65_ansi_blocker_split_bs( KC_GESC, 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_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lucid/alexa_solder/keymaps/default/keymap.c b/keyboards/lucid/alexa_solder/keymaps/default/keymap.c index 89ab39deac..eb8178fa56 100644 --- a/keyboards/lucid/alexa_solder/keymaps/default/keymap.c +++ b/keyboards/lucid/alexa_solder/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lucid/alexa_solder/keymaps/via/keymap.c b/keyboards/lucid/alexa_solder/keymaps/via/keymap.c index bbf11418c7..7bdbbbe9cc 100644 --- a/keyboards/lucid/alexa_solder/keymaps/via/keymap.c +++ b/keyboards/lucid/alexa_solder/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_TRNS, KC_DEL, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE,RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE,QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lucid/phantom_hs/keymaps/default/keymap.c b/keyboards/lucid/phantom_hs/keymaps/default/keymap.c index 63229ed087..843ee30305 100644 --- a/keyboards/lucid/phantom_hs/keymaps/default/keymap.c +++ b/keyboards/lucid/phantom_hs/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_BSPC, KC_DEL, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/lucid/phantom_hs/keymaps/via/keymap.c b/keyboards/lucid/phantom_hs/keymaps/via/keymap.c index 3366ff8bec..3f98bda83c 100644 --- a/keyboards/lucid/phantom_hs/keymaps/via/keymap.c +++ b/keyboards/lucid/phantom_hs/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_BSPC, KC_DEL, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK diff --git a/keyboards/lucid/phantom_solder/keymaps/default/keymap.c b/keyboards/lucid/phantom_solder/keymaps/default/keymap.c index 6c86063932..cd74f03a15 100644 --- a/keyboards/lucid/phantom_solder/keymaps/default/keymap.c +++ b/keyboards/lucid/phantom_solder/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_DEL, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lucid/phantom_solder/keymaps/via/keymap.c b/keyboards/lucid/phantom_solder/keymaps/via/keymap.c index afc8ae550f..04103653a9 100644 --- a/keyboards/lucid/phantom_solder/keymaps/via/keymap.c +++ b/keyboards/lucid/phantom_solder/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_all( KC_GESC, 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_BSPC, KC_TRNS, KC_DEL, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE,RESET, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE,QK_BOOT, KC_PGUP, 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_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/lyso1/lck75/keymaps/default/keymap.c b/keyboards/lyso1/lck75/keymaps/default/keymap.c index 4af75f23e2..550d0863f4 100644 --- a/keyboards/lyso1/lck75/keymaps/default/keymap.c +++ b/keyboards/lyso1/lck75/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( 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, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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_RALT, MO(1), KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/lyso1/lck75/keymaps/iso/keymap.c b/keyboards/lyso1/lck75/keymaps/iso/keymap.c index f0d6dbaf12..24d2adc478 100644 --- a/keyboards/lyso1/lck75/keymaps/iso/keymap.c +++ b/keyboards/lyso1/lck75/keymaps/iso/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_iso( 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, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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, KC_TRNS, KC_RALT, MO(1), KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/lyso1/lck75/keymaps/via/keymap.c b/keyboards/lyso1/lck75/keymaps/via/keymap.c index 4ba5c50f44..97da242d1e 100644 --- a/keyboards/lyso1/lck75/keymaps/via/keymap.c +++ b/keyboards/lyso1/lck75/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_default( 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, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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_RALT, MO(1), KC_TRNS, KC_TRNS, KC_TRNS @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_default( 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, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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_RALT, MO(1), KC_TRNS, KC_TRNS, KC_TRNS @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_default( 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, KC_TRNS, KC_TRNS, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, 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_RALT, MO(1), KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/lyso1/lefishe/keymaps/default/keymap.c b/keyboards/lyso1/lefishe/keymaps/default/keymap.c index 5ba35de7b0..ccba20a3cb 100644 --- a/keyboards/lyso1/lefishe/keymaps/default/keymap.c +++ b/keyboards/lyso1/lefishe/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_default( 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, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/lyso1/lefishe/keymaps/wkl/keymap.c b/keyboards/lyso1/lefishe/keymaps/wkl/keymap.c index f40e933d6d..41b092062b 100644 --- a/keyboards/lyso1/lefishe/keymaps/wkl/keymap.c +++ b/keyboards/lyso1/lefishe/keymaps/wkl/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_wkl( 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, RESET, 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, QK_BOOT, 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, 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 diff --git a/keyboards/makenova/omega/omega4/keymaps/default/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default/keymap.c index 26c5ada806..583d5a8a3d 100644 --- a/keyboards/makenova/omega/omega4/keymaps/default/keymap.c +++ b/keyboards/makenova/omega/omega4/keymaps/default/keymap.c @@ -59,6 +59,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c index b60275d3ab..2cbc706ee4 100644 --- a/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c +++ b/keyboards/makenova/omega/omega4/keymaps/default_10u_bar/keymap.c @@ -60,6 +60,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, - RESET + QK_BOOT ) }; \ No newline at end of file diff --git a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c index 477582613c..e5e9cc05a6 100644 --- a/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c +++ b/keyboards/makenova/omega/omega4/keymaps/default_6u_bar/keymap.c @@ -59,6 +59,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_LEFT, KC_DOWN, KC_UP, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_TRNS, - RESET, KC_TRNS, KC_TRNS + QK_BOOT, KC_TRNS, KC_TRNS ) }; \ No newline at end of file diff --git a/keyboards/manta60/keymaps/default/keymap.c b/keyboards/manta60/keymaps/default/keymap.c index f7cafdacdd..78e260e47f 100644 --- a/keyboards/manta60/keymaps/default/keymap.c +++ b/keyboards/manta60/keymaps/default/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - _______, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + _______, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_R, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_M_SN,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_M_T, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_K, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, RGB_M_P, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_SW, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/maple_computing/christmas_tree/keymaps/default/keymap.c b/keyboards/maple_computing/christmas_tree/keymaps/default/keymap.c index 6931b91a61..44753644b1 100644 --- a/keyboards/maple_computing/christmas_tree/keymaps/default/keymap.c +++ b/keyboards/maple_computing/christmas_tree/keymaps/default/keymap.c @@ -50,13 +50,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,------+------. * | 8 | 9 | * ,------+------+------. - * | 0 | FUNC | RESET| + * | 0 | FUNC | QK_BOOT| * `--------------------' */ [_FUNC] = LAYOUT( BACKLIT, KC_8, KC_9, - KC_0, _______, RESET + KC_0, _______, QK_BOOT ) diff --git a/keyboards/maple_computing/jnao/keymaps/default/keymap.c b/keyboards/maple_computing/jnao/keymaps/default/keymap.c index 356f056bdb..12155650a5 100644 --- a/keyboards/maple_computing/jnao/keymaps/default/keymap.c +++ b/keyboards/maple_computing/jnao/keymaps/default/keymap.c @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | |RESET | + * | | | | | | | | | | | |QK_BOOT | * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_5x12( @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TSKMGR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CALTDEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Function diff --git a/keyboards/maple_computing/jnao/keymaps/default_4x12/keymap.c b/keyboards/maple_computing/jnao/keymaps/default_4x12/keymap.c index 8861a36b23..5cffdedb54 100644 --- a/keyboards/maple_computing/jnao/keymaps/default_4x12/keymap.c +++ b/keyboards/maple_computing/jnao/keymaps/default_4x12/keymap.c @@ -82,14 +82,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | RESET| + * | | | | | | | | | | | | QK_BOOT| * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( TSKMGR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CALTDEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Function diff --git a/keyboards/maple_computing/jnao/keymaps/via/keymap.c b/keyboards/maple_computing/jnao/keymaps/via/keymap.c index 00305db81d..feb0fd0f2c 100644 --- a/keyboards/maple_computing/jnao/keymaps/via/keymap.c +++ b/keyboards/maple_computing/jnao/keymaps/via/keymap.c @@ -108,7 +108,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | |Voice-|Voice+|Mus on|Musoff|MIDIon|MIDIof| | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | |RESET | + * | | | | | | | | | | | |QK_BOOT | * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_5x12( @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TSKMGR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CALTDEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/maple_computing/lets_split_eh/keymaps/default/keymap.c b/keyboards/maple_computing/lets_split_eh/keymaps/default/keymap.c index 3f41051cf6..681198fc70 100644 --- a/keyboards/maple_computing/lets_split_eh/keymaps/default/keymap.c +++ b/keyboards/maple_computing/lets_split_eh/keymaps/default/keymap.c @@ -85,14 +85,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+------|------+------+------+------+------+------| * | | | | | | | | | | | |BLSTEP| * |------+------+------+------+------+------+------+------+------+------+------+------| - * | | | | | | | | | | | | RESET| + * | | | | | | | | | | | | QK_BOOT| * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( TSKMGR, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, CALTDEL, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_VAD, RGB_SAD, RGB_HUD, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT ), /* Function diff --git a/keyboards/maple_computing/minidox/keymaps/default/keymap.c b/keyboards/maple_computing/minidox/keymaps/default/keymap.c index 737b53d301..7886eec172 100644 --- a/keyboards/maple_computing/minidox/keymaps/default/keymap.c +++ b/keyboards/maple_computing/minidox/keymaps/default/keymap.c @@ -107,7 +107,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x5_3( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, TSKMGR, CALTDEL, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/maple_computing/the_ruler/keymaps/default/keymap.c b/keyboards/maple_computing/the_ruler/keymaps/default/keymap.c index 898881fc3c..87190f0b3f 100644 --- a/keyboards/maple_computing/the_ruler/keymaps/default/keymap.c +++ b/keyboards/maple_computing/the_ruler/keymaps/default/keymap.c @@ -41,11 +41,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* FN 2 Layer * ,-----------------------------------------------. - * | FN_2 |RGB_VAD|RGB_VAI|RGB_MOD|TSKMGR | RESET | + * | FN_2 |RGB_VAD|RGB_VAI|RGB_MOD|TSKMGR | QK_BOOT | * `-----------------------------------------------' */ [_FN_2] = LAYOUT( - _______, RGB_VAD, RGB_VAI, RGB_MOD, TSKMGR, RESET + _______, RGB_VAD, RGB_VAI, RGB_MOD, TSKMGR, QK_BOOT ) }; diff --git a/keyboards/marksard/leftover30/keymaps/default/keymap.c b/keyboards/marksard/leftover30/keymaps/default/keymap.c index c0779cfa06..81ff937c02 100644 --- a/keyboards/marksard/leftover30/keymaps/default/keymap.c +++ b/keyboards/marksard/leftover30/keymaps/default/keymap.c @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_all( //,-----------------------------------------------------------------------------------------------------------. - RESET, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_PSCR, + QK_BOOT, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_PSCR, //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_NLCK, //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------| diff --git a/keyboards/marksard/rhymestone/keymaps/default/keymap.c b/keyboards/marksard/rhymestone/keymaps/default/keymap.c index 0bc9819773..2a646bfec4 100644 --- a/keyboards/marksard/rhymestone/keymaps/default/keymap.c +++ b/keyboards/marksard/rhymestone/keymaps/default/keymap.c @@ -78,7 +78,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_ortho_4x10( //,---------------------------------------------------------------------------------------------------. - RESET, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_PSCR, + QK_BOOT, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_PSCR, //|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_NLCK, //|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------| diff --git a/keyboards/marksard/treadstone32/keymaps/default/keymap.c b/keyboards/marksard/treadstone32/keymaps/default/keymap.c index 0f3e5e9e12..0d00c33c4a 100644 --- a/keyboards/marksard/treadstone32/keymaps/default/keymap.c +++ b/keyboards/marksard/treadstone32/keymaps/default/keymap.c @@ -99,7 +99,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( //,---------------------------------------------------------------------------------------------------. - RESET, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_PSCR, + QK_BOOT, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_PSCR, //|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------| RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, KC_MS_L, KC_MS_D, KC_MS_U, KC_MS_R, KC_NLCK, //|---------+---------+---------+---------+---------+---------+---------+---------+---------+---------| diff --git a/keyboards/marksard/treadstone48/keymaps/default/keymap.c b/keyboards/marksard/treadstone48/keymaps/default/keymap.c index 00884f3918..c095c7ea24 100644 --- a/keyboards/marksard/treadstone48/keymaps/default/keymap.c +++ b/keyboards/marksard/treadstone48/keymaps/default/keymap.c @@ -84,7 +84,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_base( //,--------------------------------------------------------------------------------------------------------------------. - XXXXXXX, RESET, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, KC_WH_L, KC_WH_U, KC_HOME, KC_PGUP, XXXXXXX, + XXXXXXX, QK_BOOT, RGBRST, AG_NORM, AG_SWAP, XXXXXXX, XXXXXXX, KC_WH_L, KC_WH_U, KC_HOME, KC_PGUP, XXXXXXX, //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+-----------------| XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, KC_WH_R, KC_WH_D, KC_END, KC_PGDN, XXXXXXX, //|--------+--------+--------+--------+--------+--------|--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/matrix/abelx/keymaps/default/keymap.c b/keyboards/matrix/abelx/keymaps/default/keymap.c index ecba6d6d15..98d132dc19 100644 --- a/keyboards/matrix/abelx/keymaps/default/keymap.c +++ b/keyboards/matrix/abelx/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/abelx/keymaps/iso/keymap.c b/keyboards/matrix/abelx/keymaps/iso/keymap.c index 81cfcd74d2..d0b0f637e3 100644 --- a/keyboards/matrix/abelx/keymaps/iso/keymap.c +++ b/keyboards/matrix/abelx/keymaps/iso/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/cain_re/keymaps/default/keymap.c b/keyboards/matrix/cain_re/keymaps/default/keymap.c index 1f2d3b4e25..d3b01c84b2 100644 --- a/keyboards/matrix/cain_re/keymaps/default/keymap.c +++ b/keyboards/matrix/cain_re/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, _______,_______,_______,_______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/falcon/keymaps/default/keymap.c b/keyboards/matrix/falcon/keymaps/default/keymap.c index 2860d515e9..a40f1d4094 100644 --- a/keyboards/matrix/falcon/keymaps/default/keymap.c +++ b/keyboards/matrix/falcon/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_hhkb( _______, 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_PSCR, - RESET, RGB_TOG,RGB_MOD,_______,KC_F13,KC_F14,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______,KC_F13,KC_F14,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME,KC_END,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______, _______, _______,_______), diff --git a/keyboards/matrix/falcon/keymaps/via/keymap.c b/keyboards/matrix/falcon/keymaps/via/keymap.c index 03f9bab87b..e720cb0b4b 100644 --- a/keyboards/matrix/falcon/keymaps/via/keymap.c +++ b/keyboards/matrix/falcon/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - RESET, _______,KC_UP,_______,_______,_______,_______,_______,KC_PAUS,KC_SLCK,KC_PSCR,KC_PGUP,_______,KC_INS, + QK_BOOT, _______,KC_UP,_______,_______,_______,_______,_______,KC_PAUS,KC_SLCK,KC_PSCR,KC_PGUP,_______,KC_INS, _______, KC_LEFT,KC_DOWN,KC_RIGHT,_______,_______,_______,_______, _______,_______,KC_HOME,KC_END,_______, _______, _______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,KC_PGDN,_______,_______, _______,_______, _______, _______,MO(2)), diff --git a/keyboards/matrix/m12og/rev1/keymaps/default/keymap.c b/keyboards/matrix/m12og/rev1/keymaps/default/keymap.c index 311725c15d..355827c9c6 100644 --- a/keyboards/matrix/m12og/rev1/keymaps/default/keymap.c +++ b/keyboards/matrix/m12og/rev1/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD, KC_TRNS, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_SPI, RGB_SPD, 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, RESET, 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, QK_BOOT, 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_VOLD, KC_VOLU, KC_MUTE, KC_MPRV, KC_MNXT, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/matrix/m12og/rev2/keymaps/default/keymap.c b/keyboards/matrix/m12og/rev2/keymaps/default/keymap.c index 1444e4bff4..186758c122 100644 --- a/keyboards/matrix/m12og/rev2/keymaps/default/keymap.c +++ b/keyboards/matrix/m12og/rev2/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/m12og/rev2/keymaps/iso/keymap.c b/keyboards/matrix/m12og/rev2/keymaps/iso/keymap.c index 70d0d7bc13..76c1e16d8d 100644 --- a/keyboards/matrix/m12og/rev2/keymaps/iso/keymap.c +++ b/keyboards/matrix/m12og/rev2/keymaps/iso/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/m12og/rev2/keymaps/via/keymap.c b/keyboards/matrix/m12og/rev2/keymaps/via/keymap.c index 1ae1400fe9..1f715eb4b2 100644 --- a/keyboards/matrix/m12og/rev2/keymaps/via/keymap.c +++ b/keyboards/matrix/m12og/rev2/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/matrix/m20add/keymaps/default/keymap.c b/keyboards/matrix/m20add/keymaps/default/keymap.c index e7ddc00cc3..e6462c8b1c 100644 --- a/keyboards/matrix/m20add/keymaps/default/keymap.c +++ b/keyboards/matrix/m20add/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/m20add/keymaps/iso/keymap.c b/keyboards/matrix/m20add/keymaps/iso/keymap.c index c57bdfcd40..48b6fddc86 100644 --- a/keyboards/matrix/m20add/keymaps/iso/keymap.c +++ b/keyboards/matrix/m20add/keymaps/iso/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_NLCK, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), }; diff --git a/keyboards/matrix/me/keymaps/default/keymap.c b/keyboards/matrix/me/keymaps/default/keymap.c index 9858753a50..1727d0ae25 100644 --- a/keyboards/matrix/me/keymaps/default/keymap.c +++ b/keyboards/matrix/me/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/matrix/me/keymaps/via/keymap.c b/keyboards/matrix/me/keymaps/via/keymap.c index d5a05ef944..60fbc32966 100644 --- a/keyboards/matrix/me/keymaps/via/keymap.c +++ b/keyboards/matrix/me/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT), diff --git a/keyboards/matrix/noah/keymaps/default/keymap.c b/keyboards/matrix/noah/keymaps/default/keymap.c index 44ac206ee4..c30b3456c2 100644 --- a/keyboards/matrix/noah/keymaps/default/keymap.c +++ b/keyboards/matrix/noah/keymaps/default/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_default( KC_BSLS, 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, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______), diff --git a/keyboards/matrix/noah/keymaps/iso/keymap.c b/keyboards/matrix/noah/keymaps/iso/keymap.c index 990c4dd7a9..066ebe4471 100644 --- a/keyboards/matrix/noah/keymaps/iso/keymap.c +++ b/keyboards/matrix/noah/keymaps/iso/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN,KC_RIGHT), [1] = LAYOUT_iso( KC_GRV, 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, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/matrix/noah/keymaps/wkl/keymap.c b/keyboards/matrix/noah/keymaps/wkl/keymap.c index 0496582440..5ff6aed261 100644 --- a/keyboards/matrix/noah/keymaps/wkl/keymap.c +++ b/keyboards/matrix/noah/keymaps/wkl/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_wkl( KC_BSLS, 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, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, _______, KC_F13, KC_F14, KC_F24, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_UP,KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/mb44/keymaps/default/keymap.c b/keyboards/mb44/keymaps/default/keymap.c index 5eac54e07e..8b8c509241 100644 --- a/keyboards/mb44/keymaps/default/keymap.c +++ b/keyboards/mb44/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, KC_RALT, KC_RCTL ), }; diff --git a/keyboards/mb44/keymaps/via/keymap.c b/keyboards/mb44/keymaps/via/keymap.c index 9a998ba0a2..fa999fa8cc 100644 --- a/keyboards/mb44/keymaps/via/keymap.c +++ b/keyboards/mb44/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, KC_RALT, KC_RCTL ), diff --git a/keyboards/mechanickeys/miniashen40/keymaps/default/keymap.c b/keyboards/mechanickeys/miniashen40/keymaps/default/keymap.c index 4f4b79e45e..11834add94 100644 --- a/keyboards/mechanickeys/miniashen40/keymaps/default/keymap.c +++ b/keyboards/mechanickeys/miniashen40/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT( /*3: Empty */ - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/mechanickeys/miniashen40/keymaps/via/keymap.c b/keyboards/mechanickeys/miniashen40/keymaps/via/keymap.c index bb7721561d..8859f53856 100644 --- a/keyboards/mechanickeys/miniashen40/keymaps/via/keymap.c +++ b/keyboards/mechanickeys/miniashen40/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT( /*3: Empty */ - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/mechanickeys/undead60m/keymaps/default/keymap.c b/keyboards/mechanickeys/undead60m/keymaps/default/keymap.c index 084049f09b..cad22afff4 100644 --- a/keyboards/mechanickeys/undead60m/keymaps/default/keymap.c +++ b/keyboards/mechanickeys/undead60m/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( /* 1: fn */ KC_TRNS, KC_TRNS, KC_GRV, 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_UP, KC_TRNS, RESET, 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_UP, KC_TRNS, QK_BOOT, 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_LEFT, KC_DOWN, KC_RGHT, 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, MO(2), KC_TRNS diff --git a/keyboards/mechanickeys/undead60m/keymaps/via/keymap.c b/keyboards/mechanickeys/undead60m/keymaps/via/keymap.c index 1bd56eadbf..a12e6c7bd4 100644 --- a/keyboards/mechanickeys/undead60m/keymaps/via/keymap.c +++ b/keyboards/mechanickeys/undead60m/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( /* 1: fn */ KC_TRNS, KC_TRNS, KC_GRV, 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_UP, KC_TRNS, RESET, 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_UP, KC_TRNS, QK_BOOT, 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_LEFT, KC_DOWN, KC_RGHT, 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, MO(2), KC_TRNS diff --git a/keyboards/mechkeys/acr60/keymaps/default/keymap.c b/keyboards/mechkeys/acr60/keymaps/default/keymap.c index e7381c5783..cf14a86b58 100644 --- a/keyboards/mechkeys/acr60/keymaps/default/keymap.c +++ b/keyboards/mechkeys/acr60/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mechkeys/alu84/keymaps/default/keymap.c b/keyboards/mechkeys/alu84/keymaps/default/keymap.c index ca370c765a..cbbe4f3611 100755 --- a/keyboards/mechkeys/alu84/keymaps/default/keymap.c +++ b/keyboards/mechkeys/alu84/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_75_ansi( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mechkeys/espectro/keymaps/default/keymap.c b/keyboards/mechkeys/espectro/keymaps/default/keymap.c index 3b23fee190..25d07843a5 100755 --- a/keyboards/mechkeys/espectro/keymaps/default/keymap.c +++ b/keyboards/mechkeys/espectro/keymaps/default/keymap.c @@ -56,7 +56,7 @@ ________________________________________________________________________________ /* FN_1 ____________________________________________________________________________________________________________________________________________________________________________ | | | | | | | | | | | | | | | VOL | VOL | NEXT | | | -| RESET | | | | | | | | | | | | | MUTE | DOWN | UP | TRACK | HOME | END | +| QK_BOOT | | | | | | | | | | | | | MUTE | DOWN | UP | TRACK | HOME | END | |________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________| | | RGB | RGB | RGB | RGB | RGB | RGB | RGB | RGB | | | | | | | | | | | | TOGGLE | MODE |INCREASE|DECREASE| HUE | HUE | SAT | SAT | | | | | DELETE | | | | | @@ -76,7 +76,7 @@ ________________________________________________________________________________ */ [_FN1] = LAYOUT_default( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mechkeys/espectro/keymaps/iso/keymap.c b/keyboards/mechkeys/espectro/keymaps/iso/keymap.c index b001f9417d..a8a5950b87 100755 --- a/keyboards/mechkeys/espectro/keymaps/iso/keymap.c +++ b/keyboards/mechkeys/espectro/keymaps/iso/keymap.c @@ -56,7 +56,7 @@ ________________________________________________________________________________ /* FN_1 ____________________________________________________________________________________________________________________________________________________________________________ | | | | | | | | | | | | | | | VOL | VOL | NEXT | | | -| RESET | | | | | | | | | | | | | MUTE | DOWN | UP | TRACK | HOME | END | +| QK_BOOT | | | | | | | | | | | | | MUTE | DOWN | UP | TRACK | HOME | END | |________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________| | | RGB | RGB | RGB | RGB | RGB | RGB | RGB | RGB | | | | | | | | | | | | TOGGLE | MODE |INCREASE|DECREASE| HUE | HUE | SAT | SAT | | | | | DELETE | | | | | @@ -76,7 +76,7 @@ ________________________________________________________________________________ */ [_FN1] = LAYOUT_iso( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_HOME, KC_END, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, BL_TOGG, BL_INC, BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/default/keymap.c b/keyboards/mechkeys/mechmini/v2/keymaps/default/keymap.c index dae1dc9fd6..ab6f0012b4 100755 --- a/keyboards/mechkeys/mechmini/v2/keymaps/default/keymap.c +++ b/keyboards/mechkeys/mechmini/v2/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_FN2] = LAYOUT_split_space( - KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, RESET, + KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, QK_BOOT, KC_TRNS, BL_TOGG, BL_STEP, BL_INC, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/mechkeys/mechmini/v2/keymaps/via/keymap.c b/keyboards/mechkeys/mechmini/v2/keymaps/via/keymap.c index e77d9d8859..e0d22980d2 100644 --- a/keyboards/mechkeys/mechmini/v2/keymaps/via/keymap.c +++ b/keyboards/mechkeys/mechmini/v2/keymaps/via/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PWR, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_TRNS, KC_TRNS, BL_TOGG, BL_STEP, BL_INC, BL_DEC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, KC_HOME, KC_END, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_PGDN, KC_PGUP, KC_MPLY), + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MNXT, KC_PGDN, KC_PGUP, KC_MPLY), [3] = LAYOUT_ortho( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/mechkeys/mk60/keymaps/default/keymap.c b/keyboards/mechkeys/mk60/keymaps/default/keymap.c index 7471a3cd3e..f41ef3f3b6 100644 --- a/keyboards/mechkeys/mk60/keymaps/default/keymap.c +++ b/keyboards/mechkeys/mk60/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_SPC, KC_RALT, KC_PGUP, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - 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, KC_DEL, KC_TRNS, + QK_BOOT, 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_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, 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, diff --git a/keyboards/mechllama/g35/keymaps/default/keymap.c b/keyboards/mechllama/g35/keymaps/default/keymap.c index f02cba0b5a..4568f54f54 100644 --- a/keyboards/mechllama/g35/keymaps/default/keymap.c +++ b/keyboards/mechllama/g35/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( //┌────────┬────────┬────────┬────────┬────────┬────────┬────────┐ - RGB_TOG,TO(_BASE),XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + RGB_TOG,TO(_BASE),XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ RGB_M_K, XXXXXXX, RGB_RMOD,RGB_HUI, RGB_MOD, XXXXXXX, XXXXXXX, //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/mechlovin/tmkl/keymaps/default/keymap.c b/keyboards/mechlovin/tmkl/keymaps/default/keymap.c index e39051d9b4..0a6311bce2 100644 --- a/keyboards/mechlovin/tmkl/keymaps/default/keymap.c +++ b/keyboards/mechlovin/tmkl/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [1] = LAYOUT( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/mechstudio/dawn/keymaps/default/keymap.c b/keyboards/mechstudio/dawn/keymaps/default/keymap.c index e1cebe2358..6d12760f67 100644 --- a/keyboards/mechstudio/dawn/keymaps/default/keymap.c +++ b/keyboards/mechstudio/dawn/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , + QK_BOOT , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , diff --git a/keyboards/mechstudio/dawn/keymaps/via/keymap.c b/keyboards/mechstudio/dawn/keymaps/via/keymap.c index 3db791edd4..e6b92fc98c 100644 --- a/keyboards/mechstudio/dawn/keymaps/via/keymap.c +++ b/keyboards/mechstudio/dawn/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , + QK_BOOT , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , _______ , diff --git a/keyboards/mechwild/bde/keymaps/default/keymap.c b/keyboards/mechwild/bde/keymaps/default/keymap.c index 63f5e51f35..8222af7576 100644 --- a/keyboards/mechwild/bde/keymaps/default/keymap.c +++ b/keyboards/mechwild/bde/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { CTL_Z, ALT_X, WIN_C, KC_V, FN1_BSPC, FN2_SPC, FN3_B, ALT_N, CTL_M, SFT_ENT, KC_P1, KC_P2, KC_P3, KC_MINS ), [_FN1] = LAYOUT( - _______, _______, _______, RESET, _______, _______, KC_PSCR, KC_LBRC, KC_RBRC, KC_BSLS, KC_7, KC_8, KC_9, KC_NLCK, + _______, _______, _______, QK_BOOT, _______, _______, KC_PSCR, KC_LBRC, KC_RBRC, KC_BSLS, KC_7, KC_8, KC_9, KC_NLCK, _______, _______, _______, _______, _______, _______, _______, KC_GRV, KC_SCLN, KC_QUOT, KC_4, KC_5, KC_6, KC_0, _______, _______, _______, _______, _______, KC_TAB, KC_LGUI, KC_COMM, KC_DOT, KC_SLSH, KC_1, KC_2, KC_3, KC_EQL ), diff --git a/keyboards/mechwild/bde/keymaps/via/keymap.c b/keyboards/mechwild/bde/keymaps/via/keymap.c index 30018d1d7e..e28c1b6db8 100644 --- a/keyboards/mechwild/bde/keymaps/via/keymap.c +++ b/keyboards/mechwild/bde/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { CTL_Z, ALT_X, WIN_C, KC_V, FN1_BSPC, FN2_SPC, FN3_B, ALT_N, CTL_M, SFT_ENT, KC_P1, KC_P2, KC_P3, KC_MINS ), [_FN1] = LAYOUT( - _______, _______, _______, RESET, _______, _______, KC_PSCR, KC_LBRC, KC_RBRC, KC_BSLS, KC_7, KC_8, KC_9, KC_NLCK, + _______, _______, _______, QK_BOOT, _______, _______, KC_PSCR, KC_LBRC, KC_RBRC, KC_BSLS, KC_7, KC_8, KC_9, KC_NLCK, _______, _______, _______, _______, _______, _______, _______, KC_GRV, KC_SCLN, KC_QUOT, KC_4, KC_5, KC_6, KC_0, _______, _______, _______, _______, _______, KC_TAB, KC_LGUI, KC_COMM, KC_DOT, KC_SLSH, KC_1, KC_2, KC_3, KC_EQL ), diff --git a/keyboards/mechwild/mokulua/keymaps/default/keymap.c b/keyboards/mechwild/mokulua/keymaps/default/keymap.c index 69a16d090f..f95663bb6b 100644 --- a/keyboards/mechwild/mokulua/keymaps/default/keymap.c +++ b/keyboards/mechwild/mokulua/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN2] = LAYOUT( _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mechwild/mokulua/keymaps/via/keymap.c b/keyboards/mechwild/mokulua/keymaps/via/keymap.c index 69a16d090f..f95663bb6b 100644 --- a/keyboards/mechwild/mokulua/keymaps/via/keymap.c +++ b/keyboards/mechwild/mokulua/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN2] = LAYOUT( _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mehkee96/keymaps/default/keymap.c b/keyboards/mehkee96/keymaps/default/keymap.c index 46ee4d19cc..8f9a1cee37 100644 --- a/keyboards/mehkee96/keymaps/default/keymap.c +++ b/keyboards/mehkee96/keymaps/default/keymap.c @@ -39,7 +39,7 @@ ________________________________________________________________________________ /* Layer 1, function layer ____________________________________________________________________________________________________________________________________________________________________________ | | | | | | | | | | | | | | | VOL | VOL | | | | -| RESET | | | | | | | | | | | | | MUTE | DOWN | UP | | | | +| QK_BOOT | | | | | | | | | | | | | MUTE | DOWN | UP | | | | |________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________|________| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | @@ -61,7 +61,7 @@ BL_TOGG, BL_DEC, BL_INC changes the in-switch LEDs LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/meletrix/zoom65/keymaps/default/keymap.c b/keyboards/meletrix/zoom65/keymaps/default/keymap.c index dfcad3107e..3eab5dabb0 100644 --- a/keyboards/meletrix/zoom65/keymaps/default/keymap.c +++ b/keyboards/meletrix/zoom65/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/meletrix/zoom65/keymaps/via/keymap.c b/keyboards/meletrix/zoom65/keymaps/via/keymap.c index 0bd3004a12..62e10541c2 100644 --- a/keyboards/meletrix/zoom65/keymaps/via/keymap.c +++ b/keyboards/meletrix/zoom65/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( diff --git a/keyboards/meletrix/zoom65_lite/keymaps/default/keymap.c b/keyboards/meletrix/zoom65_lite/keymaps/default/keymap.c index be205e059a..9d9aa67557 100644 --- a/keyboards/meletrix/zoom65_lite/keymaps/default/keymap.c +++ b/keyboards/meletrix/zoom65_lite/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MNXT, KC_MPLY, KC_MPRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c b/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c index 9fc9964679..de44abe37e 100644 --- a/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c +++ b/keyboards/meletrix/zoom65_lite/keymaps/via/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MNXT, KC_MPLY, KC_MPRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( diff --git a/keyboards/melgeek/mach80/keymaps/default/keymap.c b/keyboards/melgeek/mach80/keymaps/default/keymap.c index 235f0c40db..0d426f7de3 100755 --- a/keyboards/melgeek/mach80/keymaps/default/keymap.c +++ b/keyboards/melgeek/mach80/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( /* FN */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, KC_END, _______, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, _______, KC_INS, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mach80/keymaps/via/keymap.c b/keyboards/melgeek/mach80/keymaps/via/keymap.c index 058786d1d2..e90f8f0653 100755 --- a/keyboards/melgeek/mach80/keymaps/via/keymap.c +++ b/keyboards/melgeek/mach80/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi( /* FN */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, KC_END, _______, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, _______, KC_INS, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mach80/keymaps/wkl/keymap.c b/keyboards/melgeek/mach80/keymaps/wkl/keymap.c index 7fcf43bd01..093a7f33f7 100755 --- a/keyboards/melgeek/mach80/keymaps/wkl/keymap.c +++ b/keyboards/melgeek/mach80/keymaps/wkl/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_wkl( /* FN */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, KC_END, _______, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, _______, KC_INS, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj61/keymaps/default/keymap.c b/keyboards/melgeek/mj61/keymaps/default/keymap.c index 2237851fbe..ee0e82580b 100644 --- a/keyboards/melgeek/mj61/keymaps/default/keymap.c +++ b/keyboards/melgeek/mj61/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GESC, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/melgeek/mj61/keymaps/via/keymap.c b/keyboards/melgeek/mj61/keymaps/via/keymap.c index 409a37c9b1..01b48fb585 100644 --- a/keyboards/melgeek/mj61/keymaps/via/keymap.c +++ b/keyboards/melgeek/mj61/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( KC_GESC, 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_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, KC_UP, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/melgeek/mj63/keymaps/default/keymap.c b/keyboards/melgeek/mj63/keymaps/default/keymap.c index 2829ae8fc9..85252dbe48 100644 --- a/keyboards/melgeek/mj63/keymaps/default/keymap.c +++ b/keyboards/melgeek/mj63/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi_arrow( KC_GRV, 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_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, _______, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj63/keymaps/via/keymap.c b/keyboards/melgeek/mj63/keymaps/via/keymap.c index 37e25a8349..c0248664e0 100644 --- a/keyboards/melgeek/mj63/keymaps/via/keymap.c +++ b/keyboards/melgeek/mj63/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi_arrow( KC_GRV, 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_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, _______, _______, _______, _______, _______, KC_CALC, _______, KC_INS, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj64/keymaps/default/keymap.c b/keyboards/melgeek/mj64/keymaps/default/keymap.c index 6f4d66c52b..1d8f3f1118 100644 --- a/keyboards/melgeek/mj64/keymaps/default/keymap.c +++ b/keyboards/melgeek/mj64/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( /* FN */ KC_GESC, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj64/keymaps/via/keymap.c b/keyboards/melgeek/mj64/keymaps/via/keymap.c index 79a58b49d4..7fe6458550 100644 --- a/keyboards/melgeek/mj64/keymaps/via/keymap.c +++ b/keyboards/melgeek/mj64/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_64_ansi( /* FN */ KC_GESC, 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, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, KC_PGUP, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, KC_INS, KC_END, KC_PGDN, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj65/keymaps/default/keymap.c b/keyboards/melgeek/mj65/keymaps/default/keymap.c index 8ab1bf3bbc..4efc7e12da 100644 --- a/keyboards/melgeek/mj65/keymaps/default/keymap.c +++ b/keyboards/melgeek/mj65/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( /* FN */ KC_GESC, 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_HOME, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj65/keymaps/via/keymap.c b/keyboards/melgeek/mj65/keymaps/via/keymap.c index d3b20cbaa3..858254f7ba 100644 --- a/keyboards/melgeek/mj65/keymaps/via/keymap.c +++ b/keyboards/melgeek/mj65/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( /* FN */ KC_GESC, 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_HOME, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mj6xy/keymaps/default/keymap.c b/keyboards/melgeek/mj6xy/keymaps/default/keymap.c index 4bedb0d400..77e9d940d1 100755 --- a/keyboards/melgeek/mj6xy/keymaps/default/keymap.c +++ b/keyboards/melgeek/mj6xy/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_60_ansi( KC_GRV, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/melgeek/mj6xy/keymaps/via/keymap.c b/keyboards/melgeek/mj6xy/keymaps/via/keymap.c index be2bcc247e..ee1bc38e7c 100755 --- a/keyboards/melgeek/mj6xy/keymaps/via/keymap.c +++ b/keyboards/melgeek/mj6xy/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_60_ansi( KC_GRV, 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_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_DEC, BL_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_DEL, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/melgeek/mojo68/keymaps/default/keymap.c b/keyboards/melgeek/mojo68/keymaps/default/keymap.c index f76ca3a37b..16559a3dfc 100755 --- a/keyboards/melgeek/mojo68/keymaps/default/keymap.c +++ b/keyboards/melgeek/mojo68/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_68_ansi( KC_GRV, 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_PSCR, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, KC_MPLY, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mojo68/keymaps/via/keymap.c b/keyboards/melgeek/mojo68/keymaps/via/keymap.c index c8655ab819..a8aab4eb34 100755 --- a/keyboards/melgeek/mojo68/keymaps/via/keymap.c +++ b/keyboards/melgeek/mojo68/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_68_ansi( KC_GRV, 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_PSCR, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, KC_HOME, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_INS, KC_END, KC_MPLY, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mojo75/keymaps/default/keymap.c b/keyboards/melgeek/mojo75/keymaps/default/keymap.c index 3158946311..fe967d09c9 100644 --- a/keyboards/melgeek/mojo75/keymaps/default/keymap.c +++ b/keyboards/melgeek/mojo75/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( /* FN */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_END, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, KC_INS, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/mojo75/keymaps/via/keymap.c b/keyboards/melgeek/mojo75/keymaps/via/keymap.c index 78aec3c963..f59ecb1177 100644 --- a/keyboards/melgeek/mojo75/keymaps/via/keymap.c +++ b/keyboards/melgeek/mojo75/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( /* FN */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_END, - _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, RESET, KC_INS, + _______, RGB_TOG, _______, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, RGB_MOD, _______, _______, _______, QK_BOOT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SPI, RGB_SPD, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/z70ultra/keymaps/default/keymap.c b/keyboards/melgeek/z70ultra/keymaps/default/keymap.c index e954776dbe..5dc65ef020 100644 --- a/keyboards/melgeek/z70ultra/keymaps/default/keymap.c +++ b/keyboards/melgeek/z70ultra/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( /* FN */ KC_GRV, 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, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/melgeek/z70ultra/keymaps/via/keymap.c b/keyboards/melgeek/z70ultra/keymaps/via/keymap.c index a822ecdefa..15d0d34444 100644 --- a/keyboards/melgeek/z70ultra/keymaps/via/keymap.c +++ b/keyboards/melgeek/z70ultra/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( /* FN */ KC_GRV, 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, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, _______, _______, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/meow65/keymaps/default/keymap.c b/keyboards/meow65/keymaps/default/keymap.c index 3a5c4b76a8..485c22e10d 100644 --- a/keyboards/meow65/keymaps/default/keymap.c +++ b/keyboards/meow65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi_blocker( - 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, KC_DEL, _______, + QK_BOOT, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/meow65/keymaps/via/keymap.c b/keyboards/meow65/keymaps/via/keymap.c index ef7dd62071..d5bbede886 100644 --- a/keyboards/meow65/keymaps/via/keymap.c +++ b/keyboards/meow65/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_L1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_65_ansi_blocker( - 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, KC_DEL, _______, + QK_BOOT, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/meson/keymaps/default/keymap.c b/keyboards/meson/keymaps/default/keymap.c index 3280b081c8..b83a2a7533 100644 --- a/keyboards/meson/keymaps/default/keymap.c +++ b/keyboards/meson/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT( /* Reset, other functions if you want */ - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/metamechs/timberwolf/keymaps/default/keymap.c b/keyboards/metamechs/timberwolf/keymaps/default/keymap.c index 85b79f168c..33529318da 100644 --- a/keyboards/metamechs/timberwolf/keymaps/default/keymap.c +++ b/keyboards/metamechs/timberwolf/keymaps/default/keymap.c @@ -19,14 +19,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [0] = LAYOUT_all( KC_MUTE,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_INS ,KC_HOME,KC_PGUP, - RESET ,KC_GRV ,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_DEL ,KC_END ,KC_PGDN, + QK_BOOT ,KC_GRV ,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_DEL ,KC_END ,KC_PGDN, BL_INC ,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 ,KC_PSCR,KC_SLCK, BL_DEC ,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_NUHS,KC_ENT ,KC_DEL ,KC_INS , KC_F13 ,KC_LSFT,KC_NUBS,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_UP ,KC_UP ,KC_PENT, MO(1) ,KC_LCTL,KC_LGUI,KC_LALT ,KC_SPC ,KC_RALT,KC_RGUI,KC_RCTL,KC_LEFT,KC_LEFT,KC_DOWN,KC_RGHT,KC_PENT ), [1] = LAYOUT_all( - RESET ,RESET ,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______,_______, + QK_BOOT ,QK_BOOT ,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______, diff --git a/keyboards/metamechs/timberwolf/keymaps/via/keymap.c b/keyboards/metamechs/timberwolf/keymaps/via/keymap.c index 6246ffd2e2..c1a4841d9a 100644 --- a/keyboards/metamechs/timberwolf/keymaps/via/keymap.c +++ b/keyboards/metamechs/timberwolf/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1) ,KC_LCTL,KC_LGUI,KC_LALT ,KC_SPC ,KC_RALT,KC_RGUI,KC_RCTL,KC_LEFT,KC_LEFT,KC_DOWN,KC_RGHT,KC_PENT ), [1] = LAYOUT_all( - RESET ,RESET ,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______,_______, + QK_BOOT ,QK_BOOT ,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ ,_______,_______, diff --git a/keyboards/mikeneko65/rev3/keymaps/default/keymap.c b/keyboards/mikeneko65/rev3/keymaps/default/keymap.c index 69844b8c30..6418e10e3f 100644 --- a/keyboards/mikeneko65/rev3/keymaps/default/keymap.c +++ b/keyboards/mikeneko65/rev3/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_all( - 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, _______, KC_INS, _______, + QK_BOOT, 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_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mikeneko65/rev3/keymaps/via/keymap.c b/keyboards/mikeneko65/rev3/keymaps/via/keymap.c index 2a456503ea..74db8d464c 100644 --- a/keyboards/mikeneko65/rev3/keymaps/via/keymap.c +++ b/keyboards/mikeneko65/rev3/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_all( - 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, _______, KC_INS, _______, + QK_BOOT, 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_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/miller/gm862/keymaps/default/keymap.c b/keyboards/miller/gm862/keymaps/default/keymap.c index 897d8f1f77..eeceec6c20 100644 --- a/keyboards/miller/gm862/keymaps/default/keymap.c +++ b/keyboards/miller/gm862/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL), [_LAYER1] = LAYOUT_60_ansi( /* FN */ KC_GESC, 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_TRNS, RGB_TOG, KC_UP, RGB_MOD, KC_TRNS, KC_TRNS, KC_CALC, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET , + KC_TRNS, RGB_TOG, KC_UP, RGB_MOD, KC_TRNS, KC_TRNS, KC_CALC, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, MAGIC_TOGGLE_NKRO, KC_TRNS, KC_TRNS, KC_END, KC_PGDOWN,KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/miller/gm862/keymaps/via/keymap.c b/keyboards/miller/gm862/keymaps/via/keymap.c index 897d8f1f77..eeceec6c20 100644 --- a/keyboards/miller/gm862/keymaps/via/keymap.c +++ b/keyboards/miller/gm862/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RGUI, KC_RCTL), [_LAYER1] = LAYOUT_60_ansi( /* FN */ KC_GESC, 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_TRNS, RGB_TOG, KC_UP, RGB_MOD, KC_TRNS, KC_TRNS, KC_CALC, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET , + KC_TRNS, RGB_TOG, KC_UP, RGB_MOD, KC_TRNS, KC_TRNS, KC_CALC, KC_TRNS, KC_INS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGUP, KC_TRNS, KC_MPRV, KC_VOLD, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, MAGIC_TOGGLE_NKRO, KC_TRNS, KC_TRNS, KC_END, KC_PGDOWN,KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/miniaxe/keymaps/default/keymap.c b/keyboards/miniaxe/keymaps/default/keymap.c index 8e9695220c..45e1e131e8 100644 --- a/keyboards/miniaxe/keymaps/default/keymap.c +++ b/keyboards/miniaxe/keymaps/default/keymap.c @@ -103,7 +103,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x5_3( 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, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, + QK_BOOT, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/mino/keymaps/default/keymap.c b/keyboards/mino/keymaps/default/keymap.c index 2c9dcecd4a..27c70c7e6b 100644 --- a/keyboards/mino/keymaps/default/keymap.c +++ b/keyboards/mino/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_UP, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ) }; diff --git a/keyboards/mino/keymaps/via/keymap.c b/keyboards/mino/keymaps/via/keymap.c index 597b854052..6cfdb50164 100644 --- a/keyboards/mino/keymaps/via/keymap.c +++ b/keyboards/mino/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_UP, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, XXXXXXX, KC_BSLS, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ), [_3] = LAYOUT_default( XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/miuni32/keymaps/default/keymap.c b/keyboards/miuni32/keymaps/default/keymap.c index 87519de546..5d1eab8b8c 100644 --- a/keyboards/miuni32/keymaps/default/keymap.c +++ b/keyboards/miuni32/keymaps/default/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Level 3: RGB Layer * ,---------------------------------------------------------------------------------------. - * | RESET | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 | + * | QK_BOOT | TRNS | TRNS | TRNS | TRNS | F1 | F2 | F3 | F4 | F5 | F6 | * |---------------------------------------------------------------------------------------| * |RGB_TOG|RGB_MOD|RGB_HUI|RGB_HUD| NO |RGB_SAI|RGB_SAD|RGB_VAI|RGB_VAD| TRNS | TRNS | * |---------------------------------------------------------------------------------------| @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |---------------------------------------------------------------------------------------| */ [3] = LAYOUT( - RESET, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + QK_BOOT, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, KC_NO, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12 ) diff --git a/keyboards/mixi/keymaps/default/keymap.c b/keyboards/mixi/keymaps/default/keymap.c index 916bd5e3d0..22877c1101 100644 --- a/keyboards/mixi/keymaps/default/keymap.c +++ b/keyboards/mixi/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .--------------------------------------. * | N/A | N/A | Hold: Layer 2 | * |--------------|-------|---------------| - * | RESET EEPROM | RESET | DEBUG MODE | + * | QK_BOOT EEPROM | QK_BOOT | DEBUG MODE | * |--------------|-------|---------------| * | N/A | N/A | N/A | * '--------------------------------------' @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( KC_NO , KC_NO, KC_TRNS, - EEP_RST, RESET, DEBUG , + EEP_RST, QK_BOOT, DEBUG , KC_NO , KC_NO, KC_NO ) diff --git a/keyboards/mixi/keymaps/via/keymap.c b/keyboards/mixi/keymaps/via/keymap.c index 5eb9e12365..927e16659c 100644 --- a/keyboards/mixi/keymaps/via/keymap.c +++ b/keyboards/mixi/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * .--------------------------------------. * | N/A | N/A | Hold: Layer 2 | * |--------------|-------|---------------| - * | RESET EEPROM | RESET | DEBUG MODE | + * | QK_BOOT EEPROM | QK_BOOT | DEBUG MODE | * |--------------|-------|---------------| * | N/A | N/A | N/A | * '--------------------------------------' @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( KC_NO , KC_NO, KC_TRNS, - EEP_RST, RESET, DEBUG , + EEP_RST, QK_BOOT, DEBUG , KC_NO , KC_NO, KC_NO ), diff --git a/keyboards/mlego/m48/keymaps/default/keymap.c b/keyboards/mlego/m48/keymaps/default/keymap.c index df9e1bb46e..5eb40a332a 100644 --- a/keyboards/mlego/m48/keymaps/default/keymap.c +++ b/keyboards/mlego/m48/keymaps/default/keymap.c @@ -106,7 +106,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJ] = LAYOUT_ortho_4x12( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mlego/m48/keymaps/via/keymap.c b/keyboards/mlego/m48/keymaps/via/keymap.c index af625ef207..4e19343847 100644 --- a/keyboards/mlego/m48/keymaps/via/keymap.c +++ b/keyboards/mlego/m48/keymaps/via/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJ] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mlego/m60/keymaps/default/keymap.c b/keyboards/mlego/m60/keymaps/default/keymap.c index 18fdba688a..8d0cddae80 100644 --- a/keyboards/mlego/m60/keymaps/default/keymap.c +++ b/keyboards/mlego/m60/keymaps/default/keymap.c @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJ] = LAYOUT_ortho_5x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mlego/m60/keymaps/via/keymap.c b/keyboards/mlego/m60/keymaps/via/keymap.c index 18fdba688a..8d0cddae80 100644 --- a/keyboards/mlego/m60/keymaps/via/keymap.c +++ b/keyboards/mlego/m60/keymaps/via/keymap.c @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJ] = LAYOUT_ortho_5x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mlego/m60_split/keymaps/default/keymap.c b/keyboards/mlego/m60_split/keymaps/default/keymap.c index 5e3912b0bd..2f51794c1c 100644 --- a/keyboards/mlego/m60_split/keymaps/default/keymap.c +++ b/keyboards/mlego/m60_split/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJ] = LAYOUT_ortho_5x12( - _______, RESET , _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_M_G, RESET , _______, + _______, QK_BOOT , _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_M_G, QK_BOOT , _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI , _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ , _______, _______, _______, diff --git a/keyboards/mlego/m60_split/keymaps/via/keymap.c b/keyboards/mlego/m60_split/keymaps/via/keymap.c index ccb0104748..dc0263c287 100644 --- a/keyboards/mlego/m60_split/keymaps/via/keymap.c +++ b/keyboards/mlego/m60_split/keymaps/via/keymap.c @@ -64,7 +64,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJ] = LAYOUT_ortho_5x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mlego/m65/keymaps/default/keymap.c b/keyboards/mlego/m65/keymaps/default/keymap.c index 96a1ced900..c8a6cfce2e 100644 --- a/keyboards/mlego/m65/keymaps/default/keymap.c +++ b/keyboards/mlego/m65/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJ] = LAYOUT_ortho_5x13( RGB_MOD, RGB_RMOD, A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T , RGB_M_SW, - RGB_HUI, RGB_HUD , RGB_M_P , _______, RESET , _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN, + RGB_HUI, RGB_HUD , RGB_M_P , _______, QK_BOOT , _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN, RGB_SAI, RGB_SAD , RGB_M_B , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K , RGB_VAI, RGB_VAD , RGB_M_R , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_X , RGB_TOG, _______ , _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G), diff --git a/keyboards/mlego/m65/keymaps/via/keymap.c b/keyboards/mlego/m65/keymaps/via/keymap.c index 1422eed34e..831a2a72e4 100644 --- a/keyboards/mlego/m65/keymaps/via/keymap.c +++ b/keyboards/mlego/m65/keymaps/via/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJ] = LAYOUT_ortho_5x13( RGB_MOD, RGB_RMOD, A(KC_F2), _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_T , RGB_M_SW, - RGB_HUI, RGB_HUD , RGB_M_P , _______, RESET , _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN, + RGB_HUI, RGB_HUD , RGB_M_P , _______, QK_BOOT , _______, _______, _______, _______, _______, _______, _______ , RGB_M_SN, RGB_SAI, RGB_SAD , RGB_M_B , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_K , RGB_VAI, RGB_VAD , RGB_M_R , _______, _______, _______, _______, _______, _______, _______, _______, _______ , RGB_M_X , RGB_TOG, _______ , _______ , _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_TW, RGB_M_G), diff --git a/keyboards/mntre/keymaps/default/keymap.c b/keyboards/mntre/keymaps/default/keymap.c index 4dcdebe31b..58c48d988f 100644 --- a/keyboards/mntre/keymaps/default/keymap.c +++ b/keyboards/mntre/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( _______, BL_DEC, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mode/m65ha_alpha/keymaps/default/keymap.c b/keyboards/mode/m65ha_alpha/keymaps/default/keymap.c index 2a2e041536..eff4ba8994 100755 --- a/keyboards/mode/m65ha_alpha/keymaps/default/keymap.c +++ b/keyboards/mode/m65ha_alpha/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m65ha_alpha/keymaps/via/keymap.c b/keyboards/mode/m65ha_alpha/keymaps/via/keymap.c index 2a2e041536..eff4ba8994 100755 --- a/keyboards/mode/m65ha_alpha/keymaps/via/keymap.c +++ b/keyboards/mode/m65ha_alpha/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m65hi_alpha/keymaps/default/keymap.c b/keyboards/mode/m65hi_alpha/keymaps/default/keymap.c index 2159d5ffe8..5b5f558dd3 100755 --- a/keyboards/mode/m65hi_alpha/keymaps/default/keymap.c +++ b/keyboards/mode/m65hi_alpha/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m65hi_alpha/keymaps/via/keymap.c b/keyboards/mode/m65hi_alpha/keymaps/via/keymap.c index 6d84d38496..787512fbbb 100755 --- a/keyboards/mode/m65hi_alpha/keymaps/via/keymap.c +++ b/keyboards/mode/m65hi_alpha/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m65s/keymaps/default/keymap.c b/keyboards/mode/m65s/keymaps/default/keymap.c index 880835f382..90ffd1ef21 100755 --- a/keyboards/mode/m65s/keymaps/default/keymap.c +++ b/keyboards/mode/m65s/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m65s/keymaps/via/keymap.c b/keyboards/mode/m65s/keymaps/via/keymap.c index 880835f382..90ffd1ef21 100755 --- a/keyboards/mode/m65s/keymaps/via/keymap.c +++ b/keyboards/mode/m65s/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_TRNS, KC_MUTE, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, 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_MPLY, diff --git a/keyboards/mode/m75s/keymaps/default/keymap.c b/keyboards/mode/m75s/keymaps/default/keymap.c index 35db109a41..1ddbb0dd4f 100755 --- a/keyboards/mode/m75s/keymaps/default/keymap.c +++ b/keyboards/mode/m75s/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_ansi/keymap.c b/keyboards/mode/m75s/keymaps/default_ansi/keymap.c index 5ca5384010..0c6c953984 100644 --- a/keyboards/mode/m75s/keymaps/default_ansi/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_ansi/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_ansi_split_bs/keymap.c b/keyboards/mode/m75s/keymaps/default_ansi_split_bs/keymap.c index 0e74130e45..e9fcee655c 100644 --- a/keyboards/mode/m75s/keymaps/default_ansi_split_bs/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_ansi_split_bs/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi_split_bs( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_ansi_tsangan/keymap.c b/keyboards/mode/m75s/keymaps/default_ansi_tsangan/keymap.c index ed2fd875b0..62eb8d7fd9 100644 --- a/keyboards/mode/m75s/keymaps/default_ansi_tsangan/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_ansi_tsangan/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi_tsangan( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_ansi_tsangan_split_bs/keymap.c b/keyboards/mode/m75s/keymaps/default_ansi_tsangan_split_bs/keymap.c index dda171515a..f407ee03b3 100644 --- a/keyboards/mode/m75s/keymaps/default_ansi_tsangan_split_bs/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_ansi_tsangan_split_bs/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi_tsangan_split_bs( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_iso/keymap.c b/keyboards/mode/m75s/keymaps/default_iso/keymap.c index 6e21982e1b..c4439f96cf 100644 --- a/keyboards/mode/m75s/keymaps/default_iso/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_iso_split_bs/keymap.c b/keyboards/mode/m75s/keymaps/default_iso_split_bs/keymap.c index 5f1851472c..5c07b9670b 100644 --- a/keyboards/mode/m75s/keymaps/default_iso_split_bs/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_iso_split_bs/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso_split_bs( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_iso_tsangan/keymap.c b/keyboards/mode/m75s/keymaps/default_iso_tsangan/keymap.c index 7bba870fc0..98e266a7a4 100644 --- a/keyboards/mode/m75s/keymaps/default_iso_tsangan/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_iso_tsangan/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso_tsangan( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/default_iso_tsangan_split_bs/keymap.c b/keyboards/mode/m75s/keymaps/default_iso_tsangan_split_bs/keymap.c index 2ad104262b..4d476a8d4f 100644 --- a/keyboards/mode/m75s/keymaps/default_iso_tsangan_split_bs/keymap.c +++ b/keyboards/mode/m75s/keymaps/default_iso_tsangan_split_bs/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso_tsangan_split_bs( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m75s/keymaps/via/keymap.c b/keyboards/mode/m75s/keymaps/via/keymap.c index 35db109a41..1ddbb0dd4f 100755 --- a/keyboards/mode/m75s/keymaps/via/keymap.c +++ b/keyboards/mode/m75s/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, MO(1) , KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET , 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, + QK_BOOT , 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_MUTE, 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_VOLU, 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_VOLD, diff --git a/keyboards/mode/m80v1/m80h/keymaps/default/keymap.c b/keyboards/mode/m80v1/m80h/keymaps/default/keymap.c index 95c2008ad1..7bab61e83e 100644 --- a/keyboards/mode/m80v1/m80h/keymaps/default/keymap.c +++ b/keyboards/mode/m80v1/m80h/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_eighty_m80h( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/mode/m80v1/m80h/keymaps/via/keymap.c b/keyboards/mode/m80v1/m80h/keymaps/via/keymap.c index f2b74cb6ef..eb9ce47da1 100644 --- a/keyboards/mode/m80v1/m80h/keymaps/via/keymap.c +++ b/keyboards/mode/m80v1/m80h/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_eighty_m80h( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c b/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c index 49fab527c5..6712f9e1c6 100644 --- a/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c +++ b/keyboards/mode/m80v1/m80s/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_eighty_m80s( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c b/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c index 6db2185949..248758525b 100644 --- a/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c +++ b/keyboards/mode/m80v1/m80s/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [_FN1] = LAYOUT_eighty_m80s( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/mode/m80v2/m80v2h/keymaps/default/keymap.c b/keyboards/mode/m80v2/m80v2h/keymaps/default/keymap.c index f65309dfc7..ab580934bd 100755 --- a/keyboards/mode/m80v2/m80v2h/keymaps/default/keymap.c +++ b/keyboards/mode/m80v2/m80v2h/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_m80v2h( - RESET , 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, + QK_BOOT , 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, 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, diff --git a/keyboards/mode/m80v2/m80v2h/keymaps/via/keymap.c b/keyboards/mode/m80v2/m80v2h/keymaps/via/keymap.c index f65309dfc7..ab580934bd 100755 --- a/keyboards/mode/m80v2/m80v2h/keymaps/via/keymap.c +++ b/keyboards/mode/m80v2/m80v2h/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_m80v2h( - RESET , 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, + QK_BOOT , 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, 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, diff --git a/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c b/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c index fcb05df0cf..9a110cc2bc 100755 --- a/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c +++ b/keyboards/mode/m80v2/m80v2s/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_m80v2s( - RESET , 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, + QK_BOOT , 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, 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, diff --git a/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c b/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c index fcb05df0cf..9a110cc2bc 100755 --- a/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c +++ b/keyboards/mode/m80v2/m80v2s/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_RALT, KC_RGUI, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_m80v2s( - RESET , 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, + QK_BOOT , 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, 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, diff --git a/keyboards/mokey/ginkgo65/keymaps/default/keymap.c b/keyboards/mokey/ginkgo65/keymaps/default/keymap.c index 9ac7dc18ba..9ebfe8ef28 100644 --- a/keyboards/mokey/ginkgo65/keymaps/default/keymap.c +++ b/keyboards/mokey/ginkgo65/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mokey/ginkgo65/keymaps/via/keymap.c b/keyboards/mokey/ginkgo65/keymaps/via/keymap.c index 28fdc1a9b2..c50a31f4a4 100644 --- a/keyboards/mokey/ginkgo65/keymaps/via/keymap.c +++ b/keyboards/mokey/ginkgo65/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/mokey/ginkgo65hot/keymaps/via/keymap.c b/keyboards/mokey/ginkgo65hot/keymaps/via/keymap.c index a8d5162e7e..0142988784 100644 --- a/keyboards/mokey/ginkgo65hot/keymaps/via/keymap.c +++ b/keyboards/mokey/ginkgo65hot/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - BL_TOGG, BL_STEP, BL_DEC, BL_INC, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + BL_TOGG, BL_STEP, BL_DEC, BL_INC, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/momoka_ergo/keymaps/default/keymap.c b/keyboards/momoka_ergo/keymaps/default/keymap.c index 01c01ed013..45faae63ba 100644 --- a/keyboards/momoka_ergo/keymaps/default/keymap.c +++ b/keyboards/momoka_ergo/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN2] = LAYOUT( 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, _______, _______, _______, _______, RESET, _______, _______, _______, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_MOD, RGB_TOG, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, RGB_VAI, RGB_VAD, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, diff --git a/keyboards/monarch/keymaps/default/keymap.c b/keyboards/monarch/keymaps/default/keymap.c index fb480b8a7f..84c50c7a85 100644 --- a/keyboards/monarch/keymaps/default/keymap.c +++ b/keyboards/monarch/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_ON, diff --git a/keyboards/monarch/keymaps/iso/keymap.c b/keyboards/monarch/keymaps/iso/keymap.c index 2a6ea3a340..71ff786171 100644 --- a/keyboards/monarch/keymaps/iso/keymap.c +++ b/keyboards/monarch/keymaps/iso/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_ON, diff --git a/keyboards/monarch/keymaps/via/keymap.c b/keyboards/monarch/keymaps/via/keymap.c index 079ff65a6b..1b822529e1 100644 --- a/keyboards/monarch/keymaps/via/keymap.c +++ b/keyboards/monarch/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_VOLD, KC_VOLU ), [1] = LAYOUT_all( - 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, _______, _______, _______, + QK_BOOT, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_ON, diff --git a/keyboards/montsinger/rebound/rev1/keymaps/default/keymap.c b/keyboards/montsinger/rebound/rev1/keymaps/default/keymap.c index 94d9ef91dc..b5a9b11085 100644 --- a/keyboards/montsinger/rebound/rev1/keymaps/default/keymap.c +++ b/keyboards/montsinger/rebound/rev1/keymaps/default/keymap.c @@ -128,7 +128,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/montsinger/rebound/rev2/keymaps/default/keymap.c b/keyboards/montsinger/rebound/rev2/keymaps/default/keymap.c index 57feb19726..45cda20cf1 100644 --- a/keyboards/montsinger/rebound/rev2/keymaps/default/keymap.c +++ b/keyboards/montsinger/rebound/rev2/keymaps/default/keymap.c @@ -127,7 +127,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/montsinger/rebound/rev3/keymaps/default/keymap.c b/keyboards/montsinger/rebound/rev3/keymaps/default/keymap.c index 1dd4bec95f..cda97096ad 100644 --- a/keyboards/montsinger/rebound/rev3/keymaps/default/keymap.c +++ b/keyboards/montsinger/rebound/rev3/keymaps/default/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/montsinger/rebound/rev4/keymaps/default/keymap.c b/keyboards/montsinger/rebound/rev4/keymaps/default/keymap.c index 1dd4bec95f..cda97096ad 100644 --- a/keyboards/montsinger/rebound/rev4/keymaps/default/keymap.c +++ b/keyboards/montsinger/rebound/rev4/keymaps/default/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/montsinger/rebound/rev4/keymaps/via/keymap.c b/keyboards/montsinger/rebound/rev4/keymaps/via/keymap.c index 85eb73cc55..f678ce60ba 100644 --- a/keyboards/montsinger/rebound/rev4/keymaps/via/keymap.c +++ b/keyboards/montsinger/rebound/rev4/keymaps/via/keymap.c @@ -78,7 +78,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, _______, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/montsinger/rewind/keymaps/default/keymap.c b/keyboards/montsinger/rewind/keymaps/default/keymap.c index 861c04faf9..8cd802eb73 100644 --- a/keyboards/montsinger/rewind/keymaps/default/keymap.c +++ b/keyboards/montsinger/rewind/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_LEFT, KC_UP, KC_RIGHT,KC_END, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_DOWN, XXXXXXX, XXXXXXX, - RESET, XXXXXXX, XXXXXXX, _______, KC_BSPC, KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX + QK_BOOT, XXXXXXX, XXXXXXX, _______, KC_BSPC, KC_DEL, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX ), [_SYM] = LAYOUT_ortho_5x10( diff --git a/keyboards/moonlander/keymaps/default/keymap.c b/keyboards/moonlander/keymaps/default/keymap.c index 0cb7fa5d27..c0c2820307 100644 --- a/keyboards/moonlander/keymaps/default/keymap.c +++ b/keyboards/moonlander/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [MDIA] = LAYOUT_moonlander( - LED_LEVEL,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + LED_LEVEL,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, diff --git a/keyboards/moonlander/keymaps/via/keymap.c b/keyboards/moonlander/keymaps/via/keymap.c index 13a299b434..ab36b4fc33 100644 --- a/keyboards/moonlander/keymaps/via/keymap.c +++ b/keyboards/moonlander/keymaps/via/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [MDIA] = LAYOUT_moonlander( - USER01, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + USER01, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, KC_MS_U, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, _______, KC_MS_L, KC_MS_D, KC_MS_R, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, _______, _______, diff --git a/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c b/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c index 713b1288eb..cdff70d69c 100644 --- a/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c +++ b/keyboards/mss_studio/m63_rgb/keymaps/default/keymap.c @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ [_FN] = LAYOUT_60_ansi_arrow( KC_GRV, 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, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c b/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c index 713b1288eb..cdff70d69c 100644 --- a/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c +++ b/keyboards/mss_studio/m63_rgb/keymaps/via/keymap.c @@ -101,7 +101,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ [_FN] = LAYOUT_60_ansi_arrow( KC_GRV, 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, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c index f348dc69fe..a5892b3825 100644 --- a/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c +++ b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c @@ -97,7 +97,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ [_FN] = LAYOUT_64_ansi( KC_GRV, 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, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c index f348dc69fe..a5892b3825 100644 --- a/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c @@ -97,7 +97,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Row: 0 1 2 3 4 5 6 7 8 9 10 11 12 13 */ [_FN] = LAYOUT_64_ansi( KC_GRV, 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, - RESET, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, KC_PSCR, _______, RGB_HUI, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, KC_CALC, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mt/blocked65/keymaps/default/keymap.c b/keyboards/mt/blocked65/keymaps/default/keymap.c index c38a103101..219dd2647e 100644 --- a/keyboards/mt/blocked65/keymaps/default/keymap.c +++ b/keyboards/mt/blocked65/keymaps/default/keymap.c @@ -22,10 +22,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, - KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, RESET, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, + KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, RGB_MOD, RGB_VAD, RGB_HUD, RGB_SAD, KC_NO, KC_NO, KC_F14, KC_F15, KC_INS, KC_HOME, KC_LSFT, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, BL_TOGG, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, KC_RSFT, RGB_MOD, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, RESET, KC_RALT, KC_TRNS, KC_HOME, BL_STEP, KC_END + KC_LCTL, KC_LGUI, KC_LALT, QK_BOOT, KC_RALT, KC_TRNS, KC_HOME, BL_STEP, KC_END ) }; diff --git a/keyboards/mt/blocked65/keymaps/via/keymap.c b/keyboards/mt/blocked65/keymaps/via/keymap.c index 7c35725c0b..c7afb9f7b0 100644 --- a/keyboards/mt/blocked65/keymaps/via/keymap.c +++ b/keyboards/mt/blocked65/keymaps/via/keymap.c @@ -24,10 +24,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, - KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, RESET, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, + KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, RGB_MOD, RGB_VAD, RGB_HUD, RGB_SAD, KC_NO, KC_NO, KC_F14, KC_F15, KC_INS, KC_HOME, KC_LSFT, KC_MPRV, KC_MPLY, KC_MNXT, KC_NO, BL_TOGG, KC_NO, KC_MUTE, KC_VOLD, KC_VOLU, KC_NO, KC_RSFT, RGB_MOD, KC_END, - KC_LCTL, KC_LGUI, KC_LALT, RESET, KC_RALT, KC_TRNS, KC_HOME, BL_STEP, KC_END + KC_LCTL, KC_LGUI, KC_LALT, QK_BOOT, KC_RALT, KC_TRNS, KC_HOME, BL_STEP, KC_END ), [_SL] = LAYOUT_65_ansi_blocker( diff --git a/keyboards/mt/mt64rgb/keymaps/via/keymap.c b/keyboards/mt/mt64rgb/keymaps/via/keymap.c index 7a9a2c1441..37c3c18259 100644 --- a/keyboards/mt/mt64rgb/keymaps/via/keymap.c +++ b/keyboards/mt/mt64rgb/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] =LAYOUT_64_ansi( KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, KC_TRNS, RGB_MOD, RGB_HUI, RGB_VAD, RGB_HUD), diff --git a/keyboards/mt/mt84/keymaps/via/keymap.c b/keyboards/mt/mt84/keymaps/via/keymap.c index 3a92e9b94e..ca62790cde 100644 --- a/keyboards/mt/mt84/keymaps/via/keymap.c +++ b/keyboards/mt/mt84/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_75_ansi( 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/mt/mt980/keymaps/default/keymap.c b/keyboards/mt/mt980/keymaps/default/keymap.c index 504233a983..97a3de64fd 100644 --- a/keyboards/mt/mt980/keymaps/default/keymap.c +++ b/keyboards/mt/mt980/keymaps/default/keymap.c @@ -12,10 +12,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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_PAUSE, KC_SLCK, KC_HOME, KC_END, - 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, RGB_TOG, RESET, 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, RGB_TOG, QK_BOOT, 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, 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, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_VAD, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS) + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_VAD, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS) }; diff --git a/keyboards/mwstudio/mw65_black/keymaps/default/keymap.c b/keyboards/mwstudio/mw65_black/keymaps/default/keymap.c index 620a39091e..c08fe87785 100644 --- a/keyboards/mwstudio/mw65_black/keymaps/default/keymap.c +++ b/keyboards/mwstudio/mw65_black/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - RGB_TOG, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + RGB_TOG, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/mwstudio/mw65_black/keymaps/via/keymap.c b/keyboards/mwstudio/mw65_black/keymaps/via/keymap.c index 620a39091e..c08fe87785 100644 --- a/keyboards/mwstudio/mw65_black/keymaps/via/keymap.c +++ b/keyboards/mwstudio/mw65_black/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, - RGB_TOG, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + RGB_TOG, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/mwstudio/mw75r2/keymaps/default/keymap.c b/keyboards/mwstudio/mw75r2/keymaps/default/keymap.c index 73fd380112..1c46bdc572 100644 --- a/keyboards/mwstudio/mw75r2/keymaps/default/keymap.c +++ b/keyboards/mwstudio/mw75r2/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, - RGB_TOG, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, + RGB_TOG, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAD, _______, _______, _______, _______, RGB_MOD, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mwstudio/mw75r2/keymaps/via/keymap.c b/keyboards/mwstudio/mw75r2/keymaps/via/keymap.c index 0648ac7bf6..082aa03876 100644 --- a/keyboards/mwstudio/mw75r2/keymaps/via/keymap.c +++ b/keyboards/mwstudio/mw75r2/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, USER00, USER01, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, - RGB_TOG, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, + RGB_TOG, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAD, _______, _______, _______, _______, RGB_MOD, _______, RGB_SPD, RGB_VAD, RGB_SPI diff --git a/keyboards/mxss/keymaps/default/keymap.c b/keyboards/mxss/keymaps/default/keymap.c index e74eb0d226..519547f15a 100644 --- a/keyboards/mxss/keymaps/default/keymap.c +++ b/keyboards/mxss/keymaps/default/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( /* L1 */ KC_GRV, 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_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, FLED_VAD, FLED_VAI, FLED_MOD, RGB_VAI, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI ), diff --git a/keyboards/mxss/keymaps/via/keymap.c b/keyboards/mxss/keymaps/via/keymap.c index 34e40592a6..823be9fabb 100644 --- a/keyboards/mxss/keymaps/via/keymap.c +++ b/keyboards/mxss/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_all( /* L1 */ KC_GRV, 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_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, FLED_VAD, FLED_VAI, FLED_MOD, RGB_VAI, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI ) diff --git a/keyboards/mysticworks/wyvern/keymaps/default/keymap.c b/keyboards/mysticworks/wyvern/keymaps/default/keymap.c index 9c927e7f2a..5de61e0424 100644 --- a/keyboards/mysticworks/wyvern/keymaps/default/keymap.c +++ b/keyboards/mysticworks/wyvern/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - _______, _______, _______, _______, 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, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/mysticworks/wyvern/keymaps/via/keymap.c b/keyboards/mysticworks/wyvern/keymaps/via/keymap.c index d92fb562e2..5cf059dda3 100644 --- a/keyboards/mysticworks/wyvern/keymaps/via/keymap.c +++ b/keyboards/mysticworks/wyvern/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P0, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - _______, _______, _______, _______, 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, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/neito/keymaps/default/keymap.c b/keyboards/neito/keymaps/default/keymap.c index 47e84d5838..a9cc10f147 100644 --- a/keyboards/neito/keymaps/default/keymap.c +++ b/keyboards/neito/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT( KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, - KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/neito/keymaps/via/keymap.c b/keyboards/neito/keymaps/via/keymap.c index 47e84d5838..a9cc10f147 100644 --- a/keyboards/neito/keymaps/via/keymap.c +++ b/keyboards/neito/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT( KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_HUD, RGB_SAD, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, - KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/nemui/keymaps/default/keymap.c b/keyboards/nemui/keymaps/default/keymap.c index 831ce5bb33..895c36efcf 100644 --- a/keyboards/nemui/keymaps/default/keymap.c +++ b/keyboards/nemui/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( KC_GRAVE,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_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, RESET, KC_END, + 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, QK_BOOT, KC_END, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/nemui/keymaps/via/keymap.c b/keyboards/nemui/keymaps/via/keymap.c index 1e524d18ef..e642829e7d 100644 --- a/keyboards/nemui/keymaps/via/keymap.c +++ b/keyboards/nemui/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( KC_GRAVE,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_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, RESET, KC_END, + 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, QK_BOOT, KC_END, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/neokeys/g67/element_hs/keymaps/default/keymap.c b/keyboards/neokeys/g67/element_hs/keymaps/default/keymap.c index e617a80b52..d11f634cf8 100644 --- a/keyboards/neokeys/g67/element_hs/keymaps/default/keymap.c +++ b/keyboards/neokeys/g67/element_hs/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, 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_HOME, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, KC_PGUP, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, + _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/neokeys/g67/element_hs/keymaps/via/keymap.c b/keyboards/neokeys/g67/element_hs/keymaps/via/keymap.c index 5fb2edac5e..907800f682 100644 --- a/keyboards/neokeys/g67/element_hs/keymaps/via/keymap.c +++ b/keyboards/neokeys/g67/element_hs/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, 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_HOME, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, KC_PGUP, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, + _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_65_ansi_blocker( diff --git a/keyboards/neokeys/g67/hotswap/keymaps/default/keymap.c b/keyboards/neokeys/g67/hotswap/keymaps/default/keymap.c index 9eac0afaf5..e72206d78c 100644 --- a/keyboards/neokeys/g67/hotswap/keymaps/default/keymap.c +++ b/keyboards/neokeys/g67/hotswap/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, 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_HOME, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, KC_PGUP, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, + _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/neokeys/g67/hotswap/keymaps/via/keymap.c b/keyboards/neokeys/g67/hotswap/keymaps/via/keymap.c index e7c96d274b..dab2c9cc62 100644 --- a/keyboards/neokeys/g67/hotswap/keymaps/via/keymap.c +++ b/keyboards/neokeys/g67/hotswap/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, 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_HOME, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, KC_PGUP, - _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, + _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_65_ansi_blocker( diff --git a/keyboards/neokeys/g67/soldered/keymaps/default/keymap.c b/keyboards/neokeys/g67/soldered/keymaps/default/keymap.c index 867fb5ca9c..0bdab86fc6 100644 --- a/keyboards/neokeys/g67/soldered/keymaps/default/keymap.c +++ b/keyboards/neokeys/g67/soldered/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/neokeys/g67/soldered/keymaps/via/keymap.c b/keyboards/neokeys/g67/soldered/keymaps/via/keymap.c index 247c7fadfe..a9d17ce841 100644 --- a/keyboards/neokeys/g67/soldered/keymaps/via/keymap.c +++ b/keyboards/neokeys/g67/soldered/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_INS, KC_HOME, KC_PGUP, _______, _______, - _______, _______, RESET, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, + _______, _______, QK_BOOT, BL_DEC, BL_TOGG, BL_INC, KC_VOLD, KC_MUTE, KC_VOLU, _______, KC_DEL, KC_END, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( diff --git a/keyboards/neson_design/n6/keymaps/default/keymap.c b/keyboards/neson_design/n6/keymaps/default/keymap.c index 14efed4c90..56d867f218 100644 --- a/keyboards/neson_design/n6/keymaps/default/keymap.c +++ b/keyboards/neson_design/n6/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker_split_bs( _______, 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_PSCR,_______, - RESET, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______, KC_F16, KC_F17,_______,_______,_______,_______,_______,KC_PGUP,KC_PGDN,_______,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN, KC_UP,KC_RIGHT,KC_HOME, KC_END, _______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______,_______,_______, _______, _______,_______, _______,_______,_______), diff --git a/keyboards/neson_design/n6/keymaps/via/keymap.c b/keyboards/neson_design/n6/keymaps/via/keymap.c index 2d8d24b980..dc9b3714ce 100644 --- a/keyboards/neson_design/n6/keymaps/via/keymap.c +++ b/keyboards/neson_design/n6/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker_split_bs( _______, 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_PSCR,_______, - RESET, RGB_TOG,RGB_MOD,RGB_RMOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,KC_MUTE,KC_VOLU,KC_VOLD,_______, _______, + QK_BOOT, RGB_TOG,RGB_MOD,RGB_RMOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,KC_MUTE,KC_VOLU,KC_VOLD,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______,_______, _______,_______,_______), diff --git a/keyboards/nibiria/stream15/keymaps/via/keymap.c b/keyboards/nibiria/stream15/keymaps/via/keymap.c index c4eeae8def..c8dfbf8ba3 100644 --- a/keyboards/nibiria/stream15/keymaps/via/keymap.c +++ b/keyboards/nibiria/stream15/keymaps/via/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT_ortho_3x5( KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, - KC_F23, KC_F24, KC_NO, KC_NO, RESET + KC_F23, KC_F24, KC_NO, KC_NO, QK_BOOT ), [1] = LAYOUT_ortho_3x5( diff --git a/keyboards/nightingale_studios/hailey/keymaps/default/keymap.c b/keyboards/nightingale_studios/hailey/keymaps/default/keymap.c index 695937a959..5d3177af39 100644 --- a/keyboards/nightingale_studios/hailey/keymaps/default/keymap.c +++ b/keyboards/nightingale_studios/hailey/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ansi( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nightingale_studios/hailey/keymaps/via/keymap.c b/keyboards/nightingale_studios/hailey/keymaps/via/keymap.c index 71283252d0..a208f5df2a 100644 --- a/keyboards/nightingale_studios/hailey/keymaps/via/keymap.c +++ b/keyboards/nightingale_studios/hailey/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nightly_boards/alter/rev1/keymaps/default/keymap.c b/keyboards/nightly_boards/alter/rev1/keymaps/default/keymap.c index aff0c916ab..70b9c19126 100644 --- a/keyboards/nightly_boards/alter/rev1/keymaps/default/keymap.c +++ b/keyboards/nightly_boards/alter/rev1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RGUI, KC_RCTL ), [1] = LAYOUT_alice_split_bs( - 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, _______, _______, + QK_BOOT, _______, 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_BRIU, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______ , _______, KC_DEL, KC_BRID, _______, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_HOME, KC_END, _______, _______, diff --git a/keyboards/nightly_boards/n60_s/keymaps/default/keymap.c b/keyboards/nightly_boards/n60_s/keymaps/default/keymap.c index e1932af948..7549f061c6 100644 --- a/keyboards/nightly_boards/n60_s/keymaps/default/keymap.c +++ b/keyboards/nightly_boards/n60_s/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_ansi_split_bs_rshift( - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_DOWN, KC_RIGHT,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, diff --git a/keyboards/nightly_boards/n60_s/keymaps/tsangan/keymap.c b/keyboards/nightly_boards/n60_s/keymaps/tsangan/keymap.c index 203e4997a9..0fd3ac6a7a 100644 --- a/keyboards/nightly_boards/n60_s/keymaps/tsangan/keymap.c +++ b/keyboards/nightly_boards/n60_s/keymaps/tsangan/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [1] = LAYOUT_60_ansi_split_bs_rshift_tsangan( - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_DOWN, KC_RIGHT,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, diff --git a/keyboards/nightly_boards/n60_s/keymaps/via/keymap.c b/keyboards/nightly_boards/n60_s/keymaps/via/keymap.c index 933343bb65..d76c734782 100644 --- a/keyboards/nightly_boards/n60_s/keymaps/via/keymap.c +++ b/keyboards/nightly_boards/n60_s/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_LALT, KC_APP, KC_RGUI, KC_LCTL ), [1] = LAYOUT_60_ansi_split_bs_rshift_encoder( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, KC_F12, KC_DEL, KC_DEL, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F12, KC_F12, KC_DEL, KC_DEL, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_DOWN, KC_RIGHT,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/nightly_boards/n87/keymaps/default/keymap.c b/keyboards/nightly_boards/n87/keymaps/default/keymap.c index 70484db210..b779871c76 100644 --- a/keyboards/nightly_boards/n87/keymaps/default/keymap.c +++ b/keyboards/nightly_boards/n87/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_LALT, KC_LGUI, KC_MENU, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi_split_bs_rshift( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_UP, CLICKY_RESET, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_UP, CLICKY_RESET, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_TOGGLE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nightly_boards/n87/keymaps/tsangan/keymap.c b/keyboards/nightly_boards/n87/keymaps/tsangan/keymap.c index 05e63a6158..ddb67c4bc0 100644 --- a/keyboards/nightly_boards/n87/keymaps/tsangan/keymap.c +++ b/keyboards/nightly_boards/n87/keymaps/tsangan/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LGUI, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi_split_bs_rshift_tsangan( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_UP, CLICKY_RESET, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_UP, CLICKY_RESET, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_DOWN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, CLICKY_TOGGLE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nightly_boards/n87/keymaps/via/keymap.c b/keyboards/nightly_boards/n87/keymaps/via/keymap.c index 142d3c1592..ab944adf57 100644 --- a/keyboards/nightly_boards/n87/keymaps/via/keymap.c +++ b/keyboards/nightly_boards/n87/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, MO(1), KC_LALT, KC_SPC, KC_LALT, KC_LGUI, KC_MENU, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_tkl_ansi_split_bs_rshift( - 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, CLICKY_UP, CLICKY_RESET, RESET, + 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, CLICKY_UP, CLICKY_RESET, QK_BOOT, 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, CLICKY_DOWN, 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, CLICKY_TOGGLE, 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, diff --git a/keyboards/nightly_boards/octopad/keymaps/default/keymap.c b/keyboards/nightly_boards/octopad/keymaps/default/keymap.c index 5dfea2721e..7025c89375 100644 --- a/keyboards/nightly_boards/octopad/keymaps/default/keymap.c +++ b/keyboards/nightly_boards/octopad/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MACRO5, MACRO6, MACRO7, MACRO8 */ [0] = LAYOUT( - KC_VOLD, KC_ESC, KC_VOLU, KC_BRID, RESET, KC_BRIU, + KC_VOLD, KC_ESC, KC_VOLU, KC_BRID, QK_BOOT, KC_BRIU, KC_Q, KC_W, KC_E, KC_R, KC_A, KC_S, KC_D, KC_F diff --git a/keyboards/nightly_boards/octopad/keymaps/via/keymap.c b/keyboards/nightly_boards/octopad/keymaps/via/keymap.c index c6ac3ca0bf..44c2d63cc7 100644 --- a/keyboards/nightly_boards/octopad/keymaps/via/keymap.c +++ b/keyboards/nightly_boards/octopad/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MACRO5, MACRO6, MACRO7, MACRO8 */ [0] = LAYOUT( - KC_VOLD, KC_ESC, KC_VOLU, KC_BRID, RESET, KC_BRIU, + KC_VOLD, KC_ESC, KC_VOLU, KC_BRID, QK_BOOT, KC_BRIU, KC_Q, KC_W, KC_E, KC_R, KC_A, KC_S, KC_D, KC_F diff --git a/keyboards/nightly_boards/ph_arisu/keymaps/default/keymap.c b/keyboards/nightly_boards/ph_arisu/keymaps/default/keymap.c index 7fc5fd8e70..eee64b28a0 100644 --- a/keyboards/nightly_boards/ph_arisu/keymaps/default/keymap.c +++ b/keyboards/nightly_boards/ph_arisu/keymaps/default/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_LALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nightly_boards/ph_arisu/keymaps/via/keymap.c b/keyboards/nightly_boards/ph_arisu/keymaps/via/keymap.c index c70603ef40..5866d6aa1d 100644 --- a/keyboards/nightly_boards/ph_arisu/keymaps/via/keymap.c +++ b/keyboards/nightly_boards/ph_arisu/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nix_studio/oxalys80/keymaps/default/keymap.c b/keyboards/nix_studio/oxalys80/keymaps/default/keymap.c index f2e62ec6cd..b1af091365 100644 --- a/keyboards/nix_studio/oxalys80/keymaps/default/keymap.c +++ b/keyboards/nix_studio/oxalys80/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/nix_studio/oxalys80/keymaps/via/keymap.c b/keyboards/nix_studio/oxalys80/keymaps/via/keymap.c index 9ad66c9239..39adfc359d 100644 --- a/keyboards/nix_studio/oxalys80/keymaps/via/keymap.c +++ b/keyboards/nix_studio/oxalys80/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, BL_TOGG, BL_DEC, BL_INC, 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_VOLU, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MNXT, KC_VOLD, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c b/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c index 1f26ae3e94..0fa6955d27 100644 --- a/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c +++ b/keyboards/nopunin10did/jabberwocky/keymaps/default/keymap.c @@ -29,9 +29,9 @@ KC_LSFT,KC_LSFT,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N , [1] = LAYOUT_rh_any( -RESET ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, +QK_BOOT ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, - XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,RESET ,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, + XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,QK_BOOT ,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,KC_PAUS,_______,_______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______,_______,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, _______,_______, _______,XXXXXXX,XXXXXXX, XXXXXXX, _______, _______,_______,XXXXXXX,XXXXXXX,XXXXXXX, XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX) diff --git a/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c b/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c index cce5505909..bf727c9b1f 100644 --- a/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c +++ b/keyboards/nopunin10did/jabberwocky/keymaps/via/keymap.c @@ -29,9 +29,9 @@ KC_LSFT,KC_NUBS,KC_Z ,KC_X ,KC_C ,KC_V ,KC_B ,MO(1), MO(1), KC_N , [1] = LAYOUT_rh_any( -RESET ,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, +QK_BOOT ,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, - _______,_______,_______,_______,RESET ,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, + _______,_______,_______,_______,QK_BOOT ,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______, _______,_______, _______,_______,_______, _______, _______, _______,_______,_______,_______,_______, _______,_______,_______,_______), diff --git a/keyboards/nopunin10did/kastenwagen1840/keymaps/default/keymap.c b/keyboards/nopunin10did/kastenwagen1840/keymaps/default/keymap.c index 59a009211c..f9d34ad070 100644 --- a/keyboards/nopunin10did/kastenwagen1840/keymaps/default/keymap.c +++ b/keyboards/nopunin10did/kastenwagen1840/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL ,KC_LALT ,MO(2) ,L2_SPC ,L3_SPC ,MO(3) ,RWINALT ,MO(1) ,KC_LEFT,KC_DOWN,KC_RGHT,KC_P0 ,KC_PDOT,L3_PENT ), [1] = LAYOUT_all( - RESET ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_HOME,XXXXXXX,KC_PGUP,XXXXXXX, + QK_BOOT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_HOME,XXXXXXX,KC_PGUP,XXXXXXX, KC_CAPS ,KC_F11 ,KC_F12 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX , XXXXXXX,XXXXXXX,XXXXXXX,KC_PAST, _______ ,XXXXXXX,XXXXXXX,KC_PSCR,KC_SLCK,KC_PAUS,KC_INS ,KC_APP ,KC_LGUI,KC_RGUI,XXXXXXX,_______ ,KC_PGUP,KC_END ,XXXXXXX,KC_PGDN,KC_PSLS, KC_RCTL ,_______ ,_______,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,KC_HOME,KC_PGDN,KC_END ,KC_INS ,KC_DEL ,KC_EQL diff --git a/keyboards/nopunin10did/kastenwagen1840/keymaps/via/keymap.c b/keyboards/nopunin10did/kastenwagen1840/keymaps/via/keymap.c index 59a009211c..f9d34ad070 100644 --- a/keyboards/nopunin10did/kastenwagen1840/keymaps/via/keymap.c +++ b/keyboards/nopunin10did/kastenwagen1840/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL ,KC_LALT ,MO(2) ,L2_SPC ,L3_SPC ,MO(3) ,RWINALT ,MO(1) ,KC_LEFT,KC_DOWN,KC_RGHT,KC_P0 ,KC_PDOT,L3_PENT ), [1] = LAYOUT_all( - RESET ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_HOME,XXXXXXX,KC_PGUP,XXXXXXX, + QK_BOOT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_HOME,XXXXXXX,KC_PGUP,XXXXXXX, KC_CAPS ,KC_F11 ,KC_F12 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX , XXXXXXX,XXXXXXX,XXXXXXX,KC_PAST, _______ ,XXXXXXX,XXXXXXX,KC_PSCR,KC_SLCK,KC_PAUS,KC_INS ,KC_APP ,KC_LGUI,KC_RGUI,XXXXXXX,_______ ,KC_PGUP,KC_END ,XXXXXXX,KC_PGDN,KC_PSLS, KC_RCTL ,_______ ,_______,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,KC_HOME,KC_PGDN,KC_END ,KC_INS ,KC_DEL ,KC_EQL diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/default/keymap.c b/keyboards/nopunin10did/kastenwagen48/keymaps/default/keymap.c index 397b75b901..3ec11064f9 100644 --- a/keyboards/nopunin10did/kastenwagen48/keymaps/default/keymap.c +++ b/keyboards/nopunin10did/kastenwagen48/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL ,KC_LALT ,MO(2) ,L2_SPC ,L3_SPC ,MO(3) ,RWINALT ,MO(1) ,KC_LEFT,KC_DOWN,KC_RGHT ), [1] = LAYOUT_all( - RESET ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_INS , + QK_BOOT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_INS , KC_CAPS ,KC_F11 ,KC_F12 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX , KC_HOME, _______ ,XXXXXXX,XXXXXXX,KC_PSCR,KC_SLCK,KC_PAUS,KC_INS ,KC_APP ,KC_LGUI,KC_RGUI,XXXXXXX,_______ ,KC_PGUP,KC_END , KC_RCTL ,_______ ,_______,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,KC_HOME,KC_PGDN,KC_END diff --git a/keyboards/nopunin10did/kastenwagen48/keymaps/via/keymap.c b/keyboards/nopunin10did/kastenwagen48/keymaps/via/keymap.c index 397b75b901..3ec11064f9 100644 --- a/keyboards/nopunin10did/kastenwagen48/keymaps/via/keymap.c +++ b/keyboards/nopunin10did/kastenwagen48/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL ,KC_LALT ,MO(2) ,L2_SPC ,L3_SPC ,MO(3) ,RWINALT ,MO(1) ,KC_LEFT,KC_DOWN,KC_RGHT ), [1] = LAYOUT_all( - RESET ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_INS , + QK_BOOT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 ,KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_RBRC,KC_DEL , KC_INS , KC_CAPS ,KC_F11 ,KC_F12 ,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX , KC_HOME, _______ ,XXXXXXX,XXXXXXX,KC_PSCR,KC_SLCK,KC_PAUS,KC_INS ,KC_APP ,KC_LGUI,KC_RGUI,XXXXXXX,_______ ,KC_PGUP,KC_END , KC_RCTL ,_______ ,_______,XXXXXXX ,XXXXXXX ,_______,_______ ,_______ ,KC_HOME,KC_PGDN,KC_END diff --git a/keyboards/novelkeys/nk65/keymaps/default/keymap.c b/keyboards/novelkeys/nk65/keymaps/default/keymap.c index f0fcda4674..597da5c18d 100755 --- a/keyboards/novelkeys/nk65/keymaps/default/keymap.c +++ b/keyboards/novelkeys/nk65/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi( /* FN */ KC_GRV, 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_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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/novelkeys/nk65/keymaps/via/keymap.c b/keyboards/novelkeys/nk65/keymaps/via/keymap.c index f0fcda4674..597da5c18d 100755 --- a/keyboards/novelkeys/nk65/keymaps/via/keymap.c +++ b/keyboards/novelkeys/nk65/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi( /* FN */ KC_GRV, 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_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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/novelkeys/nk87/keymaps/default/keymap.c b/keyboards/novelkeys/nk87/keymaps/default/keymap.c index f5387d48de..f7f63e9ea7 100755 --- a/keyboards/novelkeys/nk87/keymaps/default/keymap.c +++ b/keyboards/novelkeys/nk87/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* FN */ 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_VOLU, KC_VOLD, KC_MUTE, 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/novelkeys/nk87/keymaps/via/keymap.c b/keyboards/novelkeys/nk87/keymaps/via/keymap.c index f8ada46952..3c7e4a90f7 100755 --- a/keyboards/novelkeys/nk87/keymaps/via/keymap.c +++ b/keyboards/novelkeys/nk87/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* FN */ 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_VOLU, KC_VOLD, KC_MUTE, 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/novelkeys/novelpad/keymaps/default/keymap.c b/keyboards/novelkeys/novelpad/keymaps/default/keymap.c index cbac67eaaa..6aa3312040 100755 --- a/keyboards/novelkeys/novelpad/keymaps/default/keymap.c +++ b/keyboards/novelkeys/novelpad/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - _______, BL_STEP, RGB_M_SW, RESET, + _______, BL_STEP, RGB_M_SW, QK_BOOT, RGB_TOG, RGB_MOD, RGB_M_P, RGB_M_SN, RGB_HUI, RGB_SAI, RGB_VAI, RGB_M_K, RGB_HUD, RGB_SAD, RGB_VAD, RGB_M_X, diff --git a/keyboards/noxary/260/keymaps/default/keymap.c b/keyboards/noxary/260/keymaps/default/keymap.c index 3e8c57bd4e..8c836bddab 100644 --- a/keyboards/noxary/260/keymaps/default/keymap.c +++ b/keyboards/noxary/260/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_all( KC_GRV, 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_PSCR, - _______, KC_VOLU, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_VOLU, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______), diff --git a/keyboards/noxary/260/keymaps/via/keymap.c b/keyboards/noxary/260/keymaps/via/keymap.c index 4177abd154..4cac4e4e83 100644 --- a/keyboards/noxary/260/keymaps/via/keymap.c +++ b/keyboards/noxary/260/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_60_ansi( KC_GRV, 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_PSCR, - _______, KC_VOLU, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, KC_VOLU, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, _______, _______, BL_TOGG, _______, _______, _______, _______), diff --git a/keyboards/noxary/268/keymaps/ansi/keymap.c b/keyboards/noxary/268/keymaps/ansi/keymap.c index b9b0db2478..8e36c7ec95 100644 --- a/keyboards/noxary/268/keymaps/ansi/keymap.c +++ b/keyboards/noxary/268/keymaps/ansi/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_ansi( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268/keymaps/default/keymap.c b/keyboards/noxary/268/keymaps/default/keymap.c index f4e8e5db4a..70d40701ed 100644 --- a/keyboards/noxary/268/keymaps/default/keymap.c +++ b/keyboards/noxary/268/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_all( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, KC_VOLD, _______), diff --git a/keyboards/noxary/268/keymaps/iso/keymap.c b/keyboards/noxary/268/keymaps/iso/keymap.c index d190845360..3a75c891f9 100644 --- a/keyboards/noxary/268/keymaps/iso/keymap.c +++ b/keyboards/noxary/268/keymaps/iso/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_iso( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268/keymaps/via/keymap.c b/keyboards/noxary/268/keymaps/via/keymap.c index 431ea5bac4..9970730023 100644 --- a/keyboards/noxary/268/keymaps/via/keymap.c +++ b/keyboards/noxary/268/keymaps/via/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_all( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268_2/keymaps/default/keymap.c b/keyboards/noxary/268_2/keymaps/default/keymap.c index 90e392deb8..ae37332248 100644 --- a/keyboards/noxary/268_2/keymaps/default/keymap.c +++ b/keyboards/noxary/268_2/keymaps/default/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268_2/keymaps/via/keymap.c b/keyboards/noxary/268_2/keymaps/via/keymap.c index c4f044e4fe..10c24ecc42 100644 --- a/keyboards/noxary/268_2/keymaps/via/keymap.c +++ b/keyboards/noxary/268_2/keymaps/via/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268_2_rgb/keymaps/default/keymap.c b/keyboards/noxary/268_2_rgb/keymaps/default/keymap.c index 4557ae07ac..a3194f285d 100644 --- a/keyboards/noxary/268_2_rgb/keymaps/default/keymap.c +++ b/keyboards/noxary/268_2_rgb/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, _______, - RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, RGB_VAD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/268_2_rgb/keymaps/via/keymap.c b/keyboards/noxary/268_2_rgb/keymaps/via/keymap.c index 4ca46d2a61..445f1a4ce2 100644 --- a/keyboards/noxary/268_2_rgb/keymaps/via/keymap.c +++ b/keyboards/noxary/268_2_rgb/keymaps/via/keymap.c @@ -62,7 +62,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PSCR, _______, - RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, RGB_VAD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/280/keymaps/default/keymap.c b/keyboards/noxary/280/keymaps/default/keymap.c index 38fff0da2f..7ffb6e85ea 100644 --- a/keyboards/noxary/280/keymaps/default/keymap.c +++ b/keyboards/noxary/280/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, KC_VOLU, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/280/keymaps/via/keymap.c b/keyboards/noxary/280/keymaps/via/keymap.c index 38fff0da2f..7ffb6e85ea 100644 --- a/keyboards/noxary/280/keymaps/via/keymap.c +++ b/keyboards/noxary/280/keymaps/via/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, _______, KC_VOLU, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/valhalla/keymaps/default/keymap.c b/keyboards/noxary/valhalla/keymaps/default/keymap.c index fb9aab0968..cb251d585d 100755 --- a/keyboards/noxary/valhalla/keymaps/default/keymap.c +++ b/keyboards/noxary/valhalla/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT , 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, 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, diff --git a/keyboards/noxary/valhalla/keymaps/via/keymap.c b/keyboards/noxary/valhalla/keymaps/via/keymap.c index fb9aab0968..cb251d585d 100755 --- a/keyboards/noxary/valhalla/keymaps/via/keymap.c +++ b/keyboards/noxary/valhalla/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC , KC_SPC , KC_SPC , KC_SPC , KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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 , KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT , 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, 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, diff --git a/keyboards/noxary/vulcan/keymaps/default/keymap.c b/keyboards/noxary/vulcan/keymaps/default/keymap.c index d80a451ff4..8b80a94d65 100644 --- a/keyboards/noxary/vulcan/keymaps/default/keymap.c +++ b/keyboards/noxary/vulcan/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [_FN] = LAYOUT( /* Fn */ - RESET, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/noxary/x268/keymaps/default/keymap.c b/keyboards/noxary/x268/keymaps/default/keymap.c index 7f26a6c10e..81b6a2b791 100644 --- a/keyboards/noxary/x268/keymaps/default/keymap.c +++ b/keyboards/noxary/x268/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT( KC_GRV, 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_PSCR, _______, - RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, RGB_VAD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/noxary/x268/keymaps/via/keymap.c b/keyboards/noxary/x268/keymaps/via/keymap.c index 7f26a6c10e..81b6a2b791 100644 --- a/keyboards/noxary/x268/keymaps/via/keymap.c +++ b/keyboards/noxary/x268/keymaps/via/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT( KC_GRV, 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_PSCR, _______, - RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, + RGB_TOG, RGB_VAI, RGB_SAI, RGB_HUI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, _______, RGB_VAD, RGB_SAD, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_INC, _______, KC_MUTE, KC_VOLU, KC_END, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, KC_VOLD, _______ diff --git a/keyboards/nullbitsco/nibble/keymaps/default/keymap.c b/keyboards/nullbitsco/nibble/keymaps/default/keymap.c index f9fc56e702..9337c82863 100644 --- a/keyboards/nullbitsco/nibble/keymaps/default/keymap.c +++ b/keyboards/nullbitsco/nibble/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F16, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_ansi( - 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, _______, KC_END, + QK_BOOT, 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_END, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nullbitsco/nibble/keymaps/iso/keymap.c b/keyboards/nullbitsco/nibble/keymaps/iso/keymap.c index 0f0ed590a4..866585b909 100644 --- a/keyboards/nullbitsco/nibble/keymaps/iso/keymap.c +++ b/keyboards/nullbitsco/nibble/keymaps/iso/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F16, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(_FN), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_iso( - 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, KC_HOME, KC_INS, + QK_BOOT, 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_HOME, KC_INS, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/nullbitsco/nibble/keymaps/via/keymap.c b/keyboards/nullbitsco/nibble/keymaps/via/keymap.c index b1c9242b9a..86fe152cd4 100644 --- a/keyboards/nullbitsco/nibble/keymaps/via/keymap.c +++ b/keyboards/nullbitsco/nibble/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_VIA1] = LAYOUT_all( - 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, _______, KC_END, + QK_BOOT, 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_END, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/numatreus/keymaps/default/keymap.c b/keyboards/numatreus/keymaps/default/keymap.c index 99053002fb..a916ecdc11 100644 --- a/keyboards/numatreus/keymaps/default/keymap.c +++ b/keyboards/numatreus/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT( /* [> LOWER <] */ KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN , KC_DELT, KC_ESC, KC_NO, KC_NO, KC_NO, KC_PGDN, KC_PGUP, KC_PSCR, KC_NO, KC_NO, - KC_CAPS, KC_VOLU, KC_NO, KC_ENT, RESET, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO , + KC_CAPS, KC_VOLU, KC_NO, KC_ENT, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_UP, KC_NO , KC_NO, KC_VOLD, KC_LGUI, KC_LSFT, KC_SPC, KC_BSPC, KC_LALT, KC_ENT, KC_NO, KC_LEFT, KC_DOWN, KC_RGHT ) }; diff --git a/keyboards/obosob/arch_36/keymaps/default/keymap.c b/keyboards/obosob/arch_36/keymaps/default/keymap.c index 797ca8798f..33cb5d09fe 100644 --- a/keyboards/obosob/arch_36/keymaps/default/keymap.c +++ b/keyboards/obosob/arch_36/keymaps/default/keymap.c @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x5_3( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, TSKMGR, CALTDEL, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/obosob/steal_this_keyboard/keymaps/default/keymap.c b/keyboards/obosob/steal_this_keyboard/keymaps/default/keymap.c index 32834c16b1..2d20fafe30 100644 --- a/keyboards/obosob/steal_this_keyboard/keymaps/default/keymap.c +++ b/keyboards/obosob/steal_this_keyboard/keymaps/default/keymap.c @@ -85,7 +85,7 @@ KC_PAST, KC_4, KC_5, KC_6, KC_PEQL, _______, _______, _______, _______, [7] = LAYOUT_split_3x5_2( _______, _______, KC_COLN, KC_ESC, _______, _______, _______, _______, _______, KC_DEL, _______, KC_PERC, KC_SLSH, KC_ENT, _______, DF(1), KC_LGUI, _______, _______, _______, -_______, _______, _______, KC_EXLM, _______, DF(0), _______, MT_COMM, MT_DOT, RESET, +_______, _______, _______, KC_EXLM, _______, DF(0), _______, MT_COMM, MT_DOT, QK_BOOT, _______, KC_TAB, XXXXXXX, _______ ) }; diff --git a/keyboards/ogre/ergo_single/keymaps/default/keymap.c b/keyboards/ogre/ergo_single/keymaps/default/keymap.c index 94e725791e..404ab79a8b 100644 --- a/keyboards/ogre/ergo_single/keymaps/default/keymap.c +++ b/keyboards/ogre/ergo_single/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TP_GR, KC_LALT, KC_LEFT, KC_RGHT, TP_SPC, KC_SPC, KC_BSPC, KC_RALT, KC_ENT, TP_ENT, KC_DOWN, KC_UP, KC_LBRC, TP_RCTRL ), [1] = LAYOUT( - RESET, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_INS, KC_HOME, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_INS, KC_HOME, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ogre/ergo_split/keymaps/default/keymap.c b/keyboards/ogre/ergo_split/keymaps/default/keymap.c index 94e725791e..404ab79a8b 100644 --- a/keyboards/ogre/ergo_split/keymaps/default/keymap.c +++ b/keyboards/ogre/ergo_split/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { TP_GR, KC_LALT, KC_LEFT, KC_RGHT, TP_SPC, KC_SPC, KC_BSPC, KC_RALT, KC_ENT, TP_ENT, KC_DOWN, KC_UP, KC_LBRC, TP_RCTRL ), [1] = LAYOUT( - RESET, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_INS, KC_HOME, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_INS, KC_HOME, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_M_P, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ok60/keymaps/default/keymap.c b/keyboards/ok60/keymaps/default/keymap.c index c51510c646..427eb10d6b 100644 --- a/keyboards/ok60/keymaps/default/keymap.c +++ b/keyboards/ok60/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ok60/keymaps/via/keymap.c b/keyboards/ok60/keymaps/via/keymap.c index d0f5939f4e..d384075725 100644 --- a/keyboards/ok60/keymaps/via/keymap.c +++ b/keyboards/ok60/keymaps/via/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/omkbd/ergodash/mini/keymaps/default/keymap.c b/keyboards/omkbd/ergodash/mini/keymaps/default/keymap.c index 064584e43a..1d18383652 100644 --- a/keyboards/omkbd/ergodash/mini/keymaps/default/keymap.c +++ b/keyboards/omkbd/ergodash/mini/keymaps/default/keymap.c @@ -83,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------------------------------------------------------------. */ [_ADJUST] = LAYOUT( - _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,_______, _______, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, + _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,_______, _______, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, _______, _______, BL_TOGG, BL_BRTG, BL_INC , BL_DEC ,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______,_______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/ergodash/rev1/keymaps/default/keymap.c b/keyboards/omkbd/ergodash/rev1/keymaps/default/keymap.c index 68c5e52708..c5e0a30147 100644 --- a/keyboards/omkbd/ergodash/rev1/keymaps/default/keymap.c +++ b/keyboards/omkbd/ergodash/rev1/keymaps/default/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, - _______, RESET , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,_______, _______, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, + _______, QK_BOOT , RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI,_______, _______, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, _______, _______, _______, _______, BL_TOGG, BL_BRTG, BL_INC , BL_DEC ,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______, _______,_______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/3x6/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/3x6/keymaps/default/keymap.c index 99ab7ff2d7..1889e759a0 100644 --- a/keyboards/omkbd/runner3680/3x6/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/3x6/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,-----------------------------------------. ,-----------------------------------------. - * | |RGBRST| RESET| | | | | | | | | | | + * | |RGBRST| QK_BOOT| | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | TOG | HUI | SAI | VAI | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' `-----------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/omkbd/runner3680/3x7/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/3x7/keymaps/default/keymap.c index 795999cf5b..f0b1a8cab2 100644 --- a/keyboards/omkbd/runner3680/3x7/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/3x7/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,------------------------------------------------. ,------------------------------------------------. - * | | |RGBRST| RESET| | | | | | | | | | | | + * | | |RGBRST| QK_BOOT| | | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| * | | | TOG | HUI | SAI | VAI | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------------------------------------------------' `------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/omkbd/runner3680/3x8/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/3x8/keymaps/default/keymap.c index ae5d2ba650..d7796a04eb 100644 --- a/keyboards/omkbd/runner3680/3x8/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/3x8/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,-------------------------------------------------------. ,--------------------------------------------------------. - * | | | |RGBRST| RESET| | | | | | | | | | | | | + * | | | |RGBRST| QK_BOOT| | | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| * | | | | TOG | HUI | SAI | VAI | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------' `-------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/omkbd/runner3680/4x6/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/4x6/keymaps/default/keymap.c index d0c07ddd04..566e65128f 100644 --- a/keyboards/omkbd/runner3680/4x6/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/4x6/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,-----------------------------------------. ,-----------------------------------------. - * | |RGBRST| RESET| | | | | | | | | | | + * | |RGBRST| QK_BOOT| | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | TOG | HUI | SAI | VAI | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------' `-----------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/4x7/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/4x7/keymaps/default/keymap.c index 95e2a67ebe..a081d4e9dd 100644 --- a/keyboards/omkbd/runner3680/4x7/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/4x7/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,------------------------------------------------. ,------------------------------------------------. - * | | |RGBRST| RESET| | | | | | | | | | | | + * | | |RGBRST| QK_BOOT| | | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| * | | | TOG | HUI | SAI | VAI | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `------------------------------------------------' `------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/4x8/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/4x8/keymaps/default/keymap.c index 5ff0c0d691..6e0b01c30f 100644 --- a/keyboards/omkbd/runner3680/4x8/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/4x8/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Adjust * ,-------------------------------------------------------. ,--------------------------------------------------------. - * | | | |RGBRST| RESET| | | | | | | | | | | | | + * | | | |RGBRST| QK_BOOT| | | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| * | | | | TOG | HUI | SAI | VAI | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------' `-------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/5x6/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/5x6/keymaps/default/keymap.c index e183b3cbfc..eb886efa46 100644 --- a/keyboards/omkbd/runner3680/5x6/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/5x6/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------. ,-----------------------------------------. * | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | |RGBRST| RESET| | | | | | | | | | | + * | |RGBRST| QK_BOOT| | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | TOG | HUI | SAI | VAI | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, - _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/5x7/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/5x7/keymaps/default/keymap.c index 9c6c12fe40..03010e9a4e 100644 --- a/keyboards/omkbd/runner3680/5x7/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/5x7/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,------------------------------------------------. ,------------------------------------------------. * | | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| - * | | |RGBRST| RESET| | | | | | | | | | | | + * | | |RGBRST| QK_BOOT| | | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| * | | | TOG | HUI | SAI | VAI | | | | | | | | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omkbd/runner3680/5x8/keymaps/default/keymap.c b/keyboards/omkbd/runner3680/5x8/keymaps/default/keymap.c index b9efd44ef7..f4c6742792 100644 --- a/keyboards/omkbd/runner3680/5x8/keymaps/default/keymap.c +++ b/keyboards/omkbd/runner3680/5x8/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-------------------------------------------------------. ,--------------------------------------------------------. * | | | | F1 | F2 | F3 | F4 | F5 | | F6 | F7 | F8 | F9 | F10 | F11 | F12 | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| - * | | | |RGBRST| RESET| | | | | | | | | | | | | + * | | | |RGBRST| QK_BOOT| | | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| * | | | | TOG | HUI | SAI | VAI | | | | | | | | | | | * |------+------+------+------+------+------+------+------| |------+------+------+------+------+------+------+------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, - _______, _______, _______, RGBRST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, RGBRST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/omnikeyish/keymaps/default/keymap.c b/keyboards/omnikeyish/keymaps/default/keymap.c index fd434b535d..83dfef6015 100644 --- a/keyboards/omnikeyish/keymaps/default/keymap.c +++ b/keyboards/omnikeyish/keymaps/default/keymap.c @@ -9,6 +9,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { DYN_MACRO_KEY1, DYN_MACRO_KEY2, KC_GRV, 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_INS, KC_HOME, KC_PGUP, M_PROG, KC_PSLS, KC_PAST, KC_PMNS, DYN_MACRO_KEY3, DYN_MACRO_KEY4, 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, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PPLS, DYN_MACRO_KEY5, DYN_MACRO_KEY6, 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_NUHS, KC_ENT, KC_MPRV, KC_MPLY, KC_MNXT, KC_P4, KC_P5, KC_P6, KC_PEQL, - DYN_MACRO_KEY7, DYN_MACRO_KEY8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_BSLS, DEBUG, KC_UP, RESET, KC_P1, KC_P2, KC_P3, KC_PENT, + DYN_MACRO_KEY7, DYN_MACRO_KEY8, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_BSLS, DEBUG, KC_UP, QK_BOOT, KC_P1, KC_P2, KC_P3, KC_PENT, DYN_MACRO_KEY9, DYN_MACRO_KEY10, KC_LCTL, KC_LGUI, KC_LALT, KC_SPACE, KC_RALT, KC_RGUI, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT) }; diff --git a/keyboards/orange75/keymaps/default/keymap.c b/keyboards/orange75/keymaps/default/keymap.c index 11027ca6ee..2d4465e9fd 100644 --- a/keyboards/orange75/keymaps/default/keymap.c +++ b/keyboards/orange75/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `---------------------------------------------------------------' */ LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_INC, diff --git a/keyboards/org60/keymaps/default/keymap.c b/keyboards/org60/keymaps/default/keymap.c index b82ec254b3..cf1fd5d56c 100644 --- a/keyboards/org60/keymaps/default/keymap.c +++ b/keyboards/org60/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer LAYOUT( - 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, KC_NO, KC_NO, + QK_BOOT, 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_NO, KC_NO, KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_RSFT, KC_NO ,KC_PGUP, KC_INS, diff --git a/keyboards/ortho5by12/keymaps/default/keymap.c b/keyboards/ortho5by12/keymaps/default/keymap.c index 67fb80a32f..00be853e9c 100644 --- a/keyboards/ortho5by12/keymaps/default/keymap.c +++ b/keyboards/ortho5by12/keymaps/default/keymap.c @@ -156,7 +156,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x12( 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, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/orthocode/keymaps/default/keymap.c b/keyboards/orthocode/keymaps/default/keymap.c index 75bac5ff3f..ae06735c57 100644 --- a/keyboards/orthocode/keymaps/default/keymap.c +++ b/keyboards/orthocode/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = home */ KC_TRNS, KC_GRV, 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, /* tab Q W E R T Y U I O P \ delete end */ - RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, + RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' enter */ RGB_HUD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, /* shift Z X C V B N M , . / up */ diff --git a/keyboards/orthocode/keymaps/via/keymap.c b/keyboards/orthocode/keymaps/via/keymap.c index 0030bbb00d..0e1d843633 100644 --- a/keyboards/orthocode/keymaps/via/keymap.c +++ b/keyboards/orthocode/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* esc 1 2 3 4 5 6 7 8 9 0 - = home */ KC_TRNS, KC_GRV, 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, /* tab Q W E R T Y U I O P \ delete end */ - RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, + RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS, KC_TRNS, LSFT(KC_LBRC), LSFT(KC_RBRC), KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' enter */ RGB_HUD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_LBRC, KC_RBRC, KC_TRNS, KC_TRNS, KC_TRNS, /* shift Z X C V B N M , . / up */ diff --git a/keyboards/orthodox/keymaps/default/keymap.c b/keyboards/orthodox/keymaps/default/keymap.c index 7bda5a6f7e..1e06d7106d 100644 --- a/keyboards/orthodox/keymaps/default/keymap.c +++ b/keyboards/orthodox/keymaps/default/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, _______, _______, _______, _______, AG_SWAP, QWERTY , COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MNXT, KC_MPLY ) diff --git a/keyboards/owlab/jelly_epoch/hotswap/keymaps/default/keymap.c b/keyboards/owlab/jelly_epoch/hotswap/keymaps/default/keymap.c index 93d9ec2046..f61039a33a 100644 --- a/keyboards/owlab/jelly_epoch/hotswap/keymaps/default/keymap.c +++ b/keyboards/owlab/jelly_epoch/hotswap/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, diff --git a/keyboards/owlab/jelly_epoch/hotswap/keymaps/via/keymap.c b/keyboards/owlab/jelly_epoch/hotswap/keymaps/via/keymap.c index a78ca0a4c6..023e520dea 100644 --- a/keyboards/owlab/jelly_epoch/hotswap/keymaps/via/keymap.c +++ b/keyboards/owlab/jelly_epoch/hotswap/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, diff --git a/keyboards/owlab/jelly_epoch/soldered/keymaps/default/keymap.c b/keyboards/owlab/jelly_epoch/soldered/keymaps/default/keymap.c index fa024790d9..c82f8bc67a 100644 --- a/keyboards/owlab/jelly_epoch/soldered/keymaps/default/keymap.c +++ b/keyboards/owlab/jelly_epoch/soldered/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_75_ansi( 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, diff --git a/keyboards/owlab/jelly_epoch/soldered/keymaps/via/keymap.c b/keyboards/owlab/jelly_epoch/soldered/keymaps/via/keymap.c index 29bd0a08e3..4dab4725a5 100644 --- a/keyboards/owlab/jelly_epoch/soldered/keymaps/via/keymap.c +++ b/keyboards/owlab/jelly_epoch/soldered/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( 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, RESET, 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, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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, KC_TRNS, diff --git a/keyboards/owlab/spring/keymaps/default/keymap.c b/keyboards/owlab/spring/keymaps/default/keymap.c index e48ae32418..c41c3e33c4 100644 --- a/keyboards/owlab/spring/keymaps/default/keymap.c +++ b/keyboards/owlab/spring/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_spring( - KC_TRNS, KC_TRNS, 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, + KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, 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_INS, KC_HOME, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_TRNS, KC_TRNS, diff --git a/keyboards/owlab/spring/keymaps/via/keymap.c b/keyboards/owlab/spring/keymaps/via/keymap.c index 06779ed4ed..326b897b8e 100644 --- a/keyboards/owlab/spring/keymaps/via/keymap.c +++ b/keyboards/owlab/spring/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_spring( - KC_TRNS, KC_TRNS, 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, + KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_PSCR, KC_SLCK, KC_PAUS, 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_INS, KC_HOME, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, KC_END, KC_TRNS, KC_TRNS, diff --git a/keyboards/owlab/suit80/ansi/keymaps/default/keymap.c b/keyboards/owlab/suit80/ansi/keymaps/default/keymap.c index e9ab5f323f..5baa8961ea 100644 --- a/keyboards/owlab/suit80/ansi/keymaps/default/keymap.c +++ b/keyboards/owlab/suit80/ansi/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/owlab/suit80/ansi/keymaps/via/keymap.c b/keyboards/owlab/suit80/ansi/keymaps/via/keymap.c index d438aea409..cde44a98b2 100644 --- a/keyboards/owlab/suit80/ansi/keymaps/via/keymap.c +++ b/keyboards/owlab/suit80/ansi/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/owlab/suit80/iso/keymaps/default/keymap.c b/keyboards/owlab/suit80/iso/keymaps/default/keymap.c index 84cfcc4ad2..8e498d1b57 100644 --- a/keyboards/owlab/suit80/iso/keymaps/default/keymap.c +++ b/keyboards/owlab/suit80/iso/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_iso( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/owlab/suit80/iso/keymaps/via/keymap.c b/keyboards/owlab/suit80/iso/keymaps/via/keymap.c index d392b797e8..0faf6e6d11 100644 --- a/keyboards/owlab/suit80/iso/keymaps/via/keymap.c +++ b/keyboards/owlab/suit80/iso/keymaps/via/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/owlab/voice65/hotswap/keymaps/default/keymap.c b/keyboards/owlab/voice65/hotswap/keymaps/default/keymap.c index 7c508167bd..055f93e188 100644 --- a/keyboards/owlab/voice65/hotswap/keymaps/default/keymap.c +++ b/keyboards/owlab/voice65/hotswap/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_HOME, KC_TRNS, KC_VOLU, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_TRNS, KC_TRNS, KC_F22, KC_TRNS, diff --git a/keyboards/owlab/voice65/hotswap/keymaps/via/keymap.c b/keyboards/owlab/voice65/hotswap/keymaps/via/keymap.c index 96e1a60387..68801ff2f8 100644 --- a/keyboards/owlab/voice65/hotswap/keymaps/via/keymap.c +++ b/keyboards/owlab/voice65/hotswap/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_HOME, KC_TRNS, KC_VOLU, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_TRNS, KC_TRNS, KC_F22, KC_TRNS, diff --git a/keyboards/owlab/voice65/soldered/keymaps/default/keymap.c b/keyboards/owlab/voice65/soldered/keymaps/default/keymap.c index 7c508167bd..055f93e188 100644 --- a/keyboards/owlab/voice65/soldered/keymaps/default/keymap.c +++ b/keyboards/owlab/voice65/soldered/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_HOME, KC_TRNS, KC_VOLU, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_TRNS, KC_TRNS, KC_F22, KC_TRNS, diff --git a/keyboards/owlab/voice65/soldered/keymaps/via/keymap.c b/keyboards/owlab/voice65/soldered/keymaps/via/keymap.c index 7c508167bd..055f93e188 100644 --- a/keyboards/owlab/voice65/soldered/keymaps/via/keymap.c +++ b/keyboards/owlab/voice65/soldered/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, KC_TRNS, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_HOME, KC_TRNS, KC_VOLU, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_TRNS, KC_TRNS, KC_F22, KC_TRNS, diff --git a/keyboards/panc40/keymaps/default/keymap.c b/keyboards/panc40/keymaps/default/keymap.c index 95bfa32c75..816c950749 100644 --- a/keyboards/panc40/keymaps/default/keymap.c +++ b/keyboards/panc40/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/panc40/keymaps/default_minorca/keymap.c b/keyboards/panc40/keymaps/default_minorca/keymap.c index 76889bb7dc..e43b7a9c12 100644 --- a/keyboards/panc40/keymaps/default_minorca/keymap.c +++ b/keyboards/panc40/keymaps/default_minorca/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_minorca( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/panc40/keymaps/default_minorca/readme.md b/keyboards/panc40/keymaps/default_minorca/readme.md index 224d011c88..4b7fb8dfd1 100644 --- a/keyboards/panc40/keymaps/default_minorca/readme.md +++ b/keyboards/panc40/keymaps/default_minorca/readme.md @@ -12,4 +12,4 @@ └────┴────┴────┴────────┴────────┴────┴───┴─────┘ ``` -`Fn+Esc` = `RESET` +`Fn+Esc` = `QK_BOOT` diff --git a/keyboards/panc40/keymaps/default_sebright/keymap.c b/keyboards/panc40/keymaps/default_sebright/keymap.c index f6ab057a93..7ad9c6883a 100644 --- a/keyboards/panc40/keymaps/default_sebright/keymap.c +++ b/keyboards/panc40/keymaps/default_sebright/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_sebright( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/panc40/keymaps/default_sebright/readme.md b/keyboards/panc40/keymaps/default_sebright/readme.md index 8d3de22e14..cdf3eb8c92 100644 --- a/keyboards/panc40/keymaps/default_sebright/readme.md +++ b/keyboards/panc40/keymaps/default_sebright/readme.md @@ -12,4 +12,4 @@ └────┴────┴────┴──────────┴───┴───┴───┘ ``` -`Fn+Esc` = `RESET` +`Fn+Esc` = `QK_BOOT` diff --git a/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c b/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c index b7f54ceb7c..d55a498109 100644 --- a/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c +++ b/keyboards/papercranekeyboards/gerald65/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/atlas/keymaps/default/keymap.c b/keyboards/pearlboards/atlas/keymaps/default/keymap.c index eac060cb7c..fffdaf4b08 100644 --- a/keyboards/pearlboards/atlas/keymaps/default/keymap.c +++ b/keyboards/pearlboards/atlas/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT), LAYOUT_all( - 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, KC_DEL, KC_TRNS, KC_TRNS, + QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, HPT_FBK, HPT_TOG, HPT_ON, CK_ON, CK_TOGG, 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, diff --git a/keyboards/pearlboards/atlas/keymaps/via/keymap.c b/keyboards/pearlboards/atlas/keymaps/via/keymap.c index 1d1b5ccffc..49fccc63c8 100644 --- a/keyboards/pearlboards/atlas/keymaps/via/keymap.c +++ b/keyboards/pearlboards/atlas/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_MEDIA_PLAY_PAUSE, KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, KC_TRNS, + QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, HPT_FBK, HPT_TOG, HPT_ON, CK_ON, CK_TOGG, 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, diff --git a/keyboards/pearlboards/pandora/keymaps/default/keymap.c b/keyboards/pearlboards/pandora/keymaps/default/keymap.c index a0feb7ea32..c8bc6636a1 100644 --- a/keyboards/pearlboards/pandora/keymaps/default/keymap.c +++ b/keyboards/pearlboards/pandora/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), [1] = LAYOUT_all( - 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, KC_TRNS, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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_UP, KC_TRNS, diff --git a/keyboards/pearlboards/pandora/keymaps/via/keymap.c b/keyboards/pearlboards/pandora/keymaps/via/keymap.c index aad4ddf290..369b30b5a3 100644 --- a/keyboards/pearlboards/pandora/keymaps/via/keymap.c +++ b/keyboards/pearlboards/pandora/keymaps/via/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), [1] = LAYOUT_all( - 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, KC_TRNS, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, 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_UP, KC_TRNS, diff --git a/keyboards/pearlboards/pearl/keymaps/default/keymap.c b/keyboards/pearlboards/pearl/keymaps/default/keymap.c index 05af40adae..0462f74d63 100644 --- a/keyboards/pearlboards/pearl/keymaps/default/keymap.c +++ b/keyboards/pearlboards/pearl/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_BSPC, KC_APP, MO(1)), LAYOUT_all( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_DEL, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, HPT_FBK, HPT_TOG, HPT_ON, CK_ON, CK_TOGG, RGB_MOD, RGB_HUI, KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/pearlboards/pearl/keymaps/via/keymap.c b/keyboards/pearlboards/pearl/keymaps/via/keymap.c index 29e8fe1e89..706ae597b4 100644 --- a/keyboards/pearlboards/pearl/keymaps/via/keymap.c +++ b/keyboards/pearlboards/pearl/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_BSPC, KC_APP, MO(1)), [1] = LAYOUT_all( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_EQL, KC_DEL, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSLS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_TRNS, KC_TRNS, KC_TRNS, HPT_FBK, HPT_TOG, HPT_ON, CK_ON, CK_TOGG, RGB_MOD, RGB_HUI, KC_TRNS, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/pearlboards/zeus/keymaps/default/keymap.c b/keyboards/pearlboards/zeus/keymaps/default/keymap.c index 7c79a64395..4fafc63d95 100644 --- a/keyboards/pearlboards/zeus/keymaps/default/keymap.c +++ b/keyboards/pearlboards/zeus/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, HPT_TOG, HPT_FBK, HPT_MODI, HPT_RST, 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, CK_ON, CK_TOGG, MU_TOG, MU_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/zeus/keymaps/via/keymap.c b/keyboards/pearlboards/zeus/keymaps/via/keymap.c index 70a83ab6c5..6be8bce5d5 100644 --- a/keyboards/pearlboards/zeus/keymaps/via/keymap.c +++ b/keyboards/pearlboards/zeus/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, HPT_TOG, HPT_FBK, HPT_MODI, HPT_RST, 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, CK_ON, CK_TOGG, MU_TOG, MU_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c index 71a33c4545..ec31e2a98c 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c index 5c99ae2acc..0b23972e3c 100644 --- a/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c +++ b/keyboards/pearlboards/zeuspad/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/pegasus/keymaps/default/keymap.c b/keyboards/pegasus/keymaps/default/keymap.c index fb2cb061ff..dfad61d82f 100644 --- a/keyboards/pegasus/keymaps/default/keymap.c +++ b/keyboards/pegasus/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLU, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, KC_RALT, KC_RCTL, KC_DEL, KC_VOLD, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, KC_RALT, KC_RCTL, KC_DEL, KC_VOLD, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPLY ), }; diff --git a/keyboards/percent/canoe/keymaps/default/keymap.c b/keyboards/percent/canoe/keymaps/default/keymap.c index 8bf7cacb4a..e7a49f09c6 100644 --- a/keyboards/percent/canoe/keymaps/default/keymap.c +++ b/keyboards/percent/canoe/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PAUS, - KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG,RGB_VAI,RGB_HUI,RGB_SAI,KC_INS, RESET, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, + KC_TRNS, KC_NO, KC_UP, KC_NO, RGB_TOG,RGB_VAI,RGB_HUI,RGB_SAI,KC_INS, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,RGB_MOD,RGB_VAD,RGB_HUD,RGB_SAD,KC_NO, KC_NO, KC_F14, KC_F15, KC_INS, KC_HOME, KC_LSFT, KC_MPRV, KC_MPLY, KC_MNXT,KC_NO, KC_NO, KC_NO, KC_MUTE,KC_VOLD, KC_VOLU, KC_NO, KC_RSFT, KC_PGUP, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_RALT, KC_TRNS, KC_HOME, KC_PGDOWN,KC_END) diff --git a/keyboards/percent/canoe/keymaps/via/keymap.c b/keyboards/percent/canoe/keymaps/via/keymap.c index 28eb222b12..dbc1b88641 100644 --- a/keyboards/percent/canoe/keymaps/via/keymap.c +++ b/keyboards/percent/canoe/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( KC_GRV, 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_PAUS, - KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, RESET, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, RGB_TOG, RGB_VAI, RGB_HUI, RGB_SAI, KC_INS, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_BSLS, KC_SLCK, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,RGB_MOD, RGB_VAD, RGB_HUD, RGB_SAD, KC_TRNS, KC_TRNS, KC_F14, KC_F15, KC_INS, KC_HOME, KC_LSFT, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_RSFT, KC_PGUP, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_RALT, KC_TRNS, KC_HOME, KC_PGDN, KC_END), diff --git a/keyboards/percent/canoe_gen2/keymaps/default/keymap.c b/keyboards/percent/canoe_gen2/keymaps/default/keymap.c index bd30836d36..0fb7cc7913 100644 --- a/keyboards/percent/canoe_gen2/keymaps/default/keymap.c +++ b/keyboards/percent/canoe_gen2/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker_split_bs( KC_TILD, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______), diff --git a/keyboards/percent/canoe_gen2/keymaps/via/keymap.c b/keyboards/percent/canoe_gen2/keymaps/via/keymap.c index 20fcddd5e2..1b6d346819 100644 --- a/keyboards/percent/canoe_gen2/keymaps/via/keymap.c +++ b/keyboards/percent/canoe_gen2/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TILD, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, KC_VOLD, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/phase_studio/titan65/hotswap/keymaps/default/keymap.c b/keyboards/phase_studio/titan65/hotswap/keymaps/default/keymap.c index c921e1d3f7..5da05af159 100644 --- a/keyboards/phase_studio/titan65/hotswap/keymaps/default/keymap.c +++ b/keyboards/phase_studio/titan65/hotswap/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/phase_studio/titan65/hotswap/keymaps/via/keymap.c b/keyboards/phase_studio/titan65/hotswap/keymaps/via/keymap.c index 9844a01393..b2c4e77a9a 100644 --- a/keyboards/phase_studio/titan65/hotswap/keymaps/via/keymap.c +++ b/keyboards/phase_studio/titan65/hotswap/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c b/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c index 7751c0a0dd..b6bb5f0323 100644 --- a/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c +++ b/keyboards/phase_studio/titan65/soldered/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c b/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c index 678dcfc91a..08448e679c 100644 --- a/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c +++ b/keyboards/phase_studio/titan65/soldered/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LALT, KC_LCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + KC_GRV, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/picolab/frusta_fundamental/keymaps/default/keymap.c b/keyboards/picolab/frusta_fundamental/keymaps/default/keymap.c index 0b04efb988..de4229e906 100644 --- a/keyboards/picolab/frusta_fundamental/keymaps/default/keymap.c +++ b/keyboards/picolab/frusta_fundamental/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FKEY] = LAYOUT( KC_TRNS, 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, RGB_MOD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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 diff --git a/keyboards/picolab/frusta_fundamental/keymaps/via/keymap.c b/keyboards/picolab/frusta_fundamental/keymaps/via/keymap.c index 0e44fa52c4..896e8afc78 100644 --- a/keyboards/picolab/frusta_fundamental/keymaps/via/keymap.c +++ b/keyboards/picolab/frusta_fundamental/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* F-Keys */ [1] = LAYOUT( KC_TRNS, 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, RGB_MOD, - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PGUP, 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_PGDN, 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 diff --git a/keyboards/pizzakeyboards/pizza65/keymaps/default/keymap.c b/keyboards/pizzakeyboards/pizza65/keymaps/default/keymap.c index faf803461d..adac40fe59 100644 --- a/keyboards/pizzakeyboards/pizza65/keymaps/default/keymap.c +++ b/keyboards/pizzakeyboards/pizza65/keymaps/default/keymap.c @@ -29,6 +29,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), }; diff --git a/keyboards/pizzakeyboards/pizza65/keymaps/via/keymap.c b/keyboards/pizzakeyboards/pizza65/keymaps/via/keymap.c index 068f2d1d41..e12366b5e0 100644 --- a/keyboards/pizzakeyboards/pizza65/keymaps/via/keymap.c +++ b/keyboards/pizzakeyboards/pizza65/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_PGUP, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), [2] = LAYOUT_65_ansi_blocker( 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, diff --git a/keyboards/pkb65/keymaps/default/keymap.c b/keyboards/pkb65/keymaps/default/keymap.c index 74528cd2b6..d9a382bd79 100644 --- a/keyboards/pkb65/keymaps/default/keymap.c +++ b/keyboards/pkb65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( KC_GRAVE, 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, RESET, + 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, QK_BOOT, 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), diff --git a/keyboards/pkb65/keymaps/via/keymap.c b/keyboards/pkb65/keymaps/via/keymap.c index fc33861452..8e54312cc6 100644 --- a/keyboards/pkb65/keymaps/via/keymap.c +++ b/keyboards/pkb65/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( KC_GRAVE, 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, RESET, + 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, QK_BOOT, 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), diff --git a/keyboards/planck/keymaps/default/keymap.c b/keyboards/planck/keymaps/default/keymap.c index b5ec2e8082..3453d41746 100644 --- a/keyboards/planck/keymaps/default/keymap.c +++ b/keyboards/planck/keymaps/default/keymap.c @@ -163,7 +163,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_planck_grid( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, PLOVER, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/planck/keymaps/via/keymap.c b/keyboards/planck/keymaps/via/keymap.c index d469cd6aec..b82efcf82e 100644 --- a/keyboards/planck/keymaps/via/keymap.c +++ b/keyboards/planck/keymaps/via/keymap.c @@ -78,7 +78,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Utility * ,-----------------------------------------------------------------------------------. - * | |RESET |DEBUG | | | | | | | | |Del | + * | |QK_BOOT |DEBUG | | | | | | | | |Del | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | | | | | | * |------+------+------+------+------+------+------+------+------+------+------+------| @@ -88,7 +88,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [3] = LAYOUT_ortho_4x12 ( - KC_TRNS, RESET, DEBUG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, + KC_TRNS, QK_BOOT, DEBUG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_DEL, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/planck/keymaps/via/readme.md b/keyboards/planck/keymaps/via/readme.md index a3cd80f1db..4e074ce39e 100644 --- a/keyboards/planck/keymaps/via/readme.md +++ b/keyboards/planck/keymaps/via/readme.md @@ -5,4 +5,4 @@ Predefined Layers: - 0 - Default Planck QWERTY keymap (minus lighting control, plus SHIFT ENTER) - 1 - Default Planck LOWER keymap - 2 - Default Planck RAISE keymap -- 3 - UTILITY keymap (RESET, DEBUG) +- 3 - UTILITY keymap (QK_BOOT, DEBUG) diff --git a/keyboards/playkbtw/ca66/keymaps/default/keymap.c b/keyboards/playkbtw/ca66/keymaps/default/keymap.c index 6f87fb0c11..f0a39239c1 100644 --- a/keyboards/playkbtw/ca66/keymaps/default/keymap.c +++ b/keyboards/playkbtw/ca66/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( KC_GRV, 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_DEL, RGB_TOG, - KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, RGB_MOD, + KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, RGB_MOD, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT,KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_INS, KC_HOME, KC_LSFT, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_HUI, KC_END, KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_HUD, RGB_SAI), diff --git a/keyboards/playkbtw/ca66/keymaps/via/keymap.c b/keyboards/playkbtw/ca66/keymaps/via/keymap.c index 620d11efa9..c8c9c89b0a 100644 --- a/keyboards/playkbtw/ca66/keymaps/via/keymap.c +++ b/keyboards/playkbtw/ca66/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //Layer3, Lighting Function keys, soft reset on Tab. [3] = LAYOUT( KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, - RESET, KC_NO, RGB_HUD, RGB_HUI, RGB_VAD, RGB_VAI, KC_NO, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_NO, KC_NO, MO(4), KC_NO, + QK_BOOT, KC_NO, RGB_HUD, RGB_HUI, RGB_VAD, RGB_VAI, KC_NO, BL_TOGG, BL_DEC, BL_INC, BL_STEP, KC_NO, KC_NO, MO(4), KC_NO, KC_TRNS, KC_NO, RGB_RMOD, RGB_MOD, RGB_TOG, KC_NO, KC_MSTP, KC_MPLY, KC_MPRV, KC_MNXT, KC_VOLD, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RGB_SAD, RGB_SAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO), diff --git a/keyboards/playkbtw/helen80/keymaps/default/keymap.c b/keyboards/playkbtw/helen80/keymaps/default/keymap.c index 13982b0ddf..6be85c14b2 100644 --- a/keyboards/playkbtw/helen80/keymaps/default/keymap.c +++ b/keyboards/playkbtw/helen80/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RGB] = LAYOUT_tkl_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, + _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/playkbtw/helen80/keymaps/via/keymap.c b/keyboards/playkbtw/helen80/keymaps/via/keymap.c index 13982b0ddf..6be85c14b2 100644 --- a/keyboards/playkbtw/helen80/keymaps/via/keymap.c +++ b/keyboards/playkbtw/helen80/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RGB] = LAYOUT_tkl_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, + _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/playkbtw/pk60/keymaps/default/keymap.c b/keyboards/playkbtw/pk60/keymaps/default/keymap.c index f91db0eae4..fc9379977d 100644 --- a/keyboards/playkbtw/pk60/keymaps/default/keymap.c +++ b/keyboards/playkbtw/pk60/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_PSCR, KC_CALC, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_PSCR, KC_CALC, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_SLCK, _______, _______, _______, RGB_TOG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/playkbtw/pk64rgb/keymaps/via/keymap.c b/keyboards/playkbtw/pk64rgb/keymaps/via/keymap.c index 3d18f60ddb..015ba3a6b1 100644 --- a/keyboards/playkbtw/pk64rgb/keymaps/via/keymap.c +++ b/keyboards/playkbtw/pk64rgb/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] =LAYOUT_64_ansi( KC_GRV, 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_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, RGB_SAI, RGB_SAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_TOGG, BL_INC, BL_STEP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS,RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, KC_TRNS, RGB_MOD, RGB_HUI, RGB_VAD, RGB_HUD), diff --git a/keyboards/plut0nium/0x3e/keymaps/default/keymap.c b/keyboards/plut0nium/0x3e/keymaps/default/keymap.c index bca46e9910..243218f1c6 100644 --- a/keyboards/plut0nium/0x3e/keymaps/default/keymap.c +++ b/keyboards/plut0nium/0x3e/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_DEL, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, _______, KC_END, _______, _______, BL_INC, KC_MPLY, KC_VOLU, KC_MUTE, _______, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, RGB_TOG, KC_HOME, BL_TOGG, BL_TOGG, BL_DEC, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/poker87c/keymaps/default/keymap.c b/keyboards/poker87c/keymaps/default/keymap.c index 4be088c0f6..c46dd4c6af 100644 --- a/keyboards/poker87c/keymaps/default/keymap.c +++ b/keyboards/poker87c/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/poker87c/keymaps/via/keymap.c b/keyboards/poker87c/keymaps/via/keymap.c index 59c5b359b3..26bcbf1353 100644 --- a/keyboards/poker87c/keymaps/via/keymap.c +++ b/keyboards/poker87c/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, RESET, _______, _______, _______, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/poker87d/keymaps/default/keymap.c b/keyboards/poker87d/keymaps/default/keymap.c index 8adc58ae11..2ecb85bbca 100644 --- a/keyboards/poker87d/keymaps/default/keymap.c +++ b/keyboards/poker87d/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/poker87d/keymaps/via/keymap.c b/keyboards/poker87d/keymaps/via/keymap.c index b2eff1ce33..2afb2be404 100644 --- a/keyboards/poker87d/keymaps/via/keymap.c +++ b/keyboards/poker87d/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_MSTP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/polycarbdiet/s20/keymaps/default/keymap.c b/keyboards/polycarbdiet/s20/keymaps/default/keymap.c index b399202062..330e65b722 100644 --- a/keyboards/polycarbdiet/s20/keymaps/default/keymap.c +++ b/keyboards/polycarbdiet/s20/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_VOLD, KC_MUTE, KC_VOLU, KC_TRNS, - RESET, MO(2), KC_TRNS, KC_TRNS + QK_BOOT, MO(2), KC_TRNS, KC_TRNS ), [2] = LAYOUT_ortho_5x4( RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, diff --git a/keyboards/portal_66/hotswap/keymaps/default/keymap.c b/keyboards/portal_66/hotswap/keymaps/default/keymap.c index 5f9143a2ad..e57b799082 100644 --- a/keyboards/portal_66/hotswap/keymaps/default/keymap.c +++ b/keyboards/portal_66/hotswap/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/portal_66/hotswap/keymaps/via/keymap.c b/keyboards/portal_66/hotswap/keymaps/via/keymap.c index 7f9878eae3..540e54320b 100644 --- a/keyboards/portal_66/hotswap/keymaps/via/keymap.c +++ b/keyboards/portal_66/hotswap/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_65_ansi_blocker( - 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, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/portal_66/soldered/keymaps/default/keymap.c b/keyboards/portal_66/soldered/keymaps/default/keymap.c index 8b40550b86..181031a29a 100644 --- a/keyboards/portal_66/soldered/keymaps/default/keymap.c +++ b/keyboards/portal_66/soldered/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT_65_ansi_blocker_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/portal_66/soldered/keymaps/via/keymap.c b/keyboards/portal_66/soldered/keymaps/via/keymap.c index 97c74de1f1..37f03ff1dc 100644 --- a/keyboards/portal_66/soldered/keymaps/via/keymap.c +++ b/keyboards/portal_66/soldered/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_L1), KC_LEFT, KC_DOWN, KC_RGHT ), [_L1] = LAYOUT_65_ansi_blocker_split_bs( - 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, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/pos78/keymaps/default/keymap.c b/keyboards/pos78/keymaps/default/keymap.c index 9d4b43001a..6f739536af 100644 --- a/keyboards/pos78/keymaps/default/keymap.c +++ b/keyboards/pos78/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_SLEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, XXXXXXX, KC_WAKE, KC_MYCM, XXXXXXX, XXXXXXX, KC_AGAIN, KC_VOLU, KC_INS, KC_PWR, KC_PSCR, XXXXXXX, KC_PGUP, _______, XXXXXXX, XXXXXXX, XXXXXXX, KC_FIND, XXXXXXX, KC_HELP, KC_VOLD, KC_CALC, KC_BRIU, XXXXXXX, KC_UP, KC_PGDN, - _______, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, RESET, XXXXXXX, KC_MAIL, UK_COMM, KC_BRID, KC_LEFT, KC_DOWN, KC_RIGHT, + _______, KC_UNDO, KC_CUT, KC_COPY, KC_PASTE, QK_BOOT, XXXXXXX, KC_MAIL, UK_COMM, KC_BRID, KC_LEFT, KC_DOWN, KC_RIGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/preonic/keymaps/default/keymap.c b/keyboards/preonic/keymaps/default/keymap.c index f99a6953c6..ef7614393d 100644 --- a/keyboards/preonic/keymaps/default/keymap.c +++ b/keyboards/preonic/keymaps/default/keymap.c @@ -157,7 +157,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_preonic_grid( 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, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, TERM_ON, TERM_OFF,_______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/preonic/keymaps/via/keymap.c b/keyboards/preonic/keymaps/via/keymap.c index fe62441049..40d5340d9a 100644 --- a/keyboards/preonic/keymaps/via/keymap.c +++ b/keyboards/preonic/keymaps/via/keymap.c @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_preonic_grid( 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, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, MU_MOD, AU_ON, AU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, MU_ON, MU_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/primekb/meridian/keymaps/default/keymap.c b/keyboards/primekb/meridian/keymaps/default/keymap.c index 2ea91eeb13..6dfe00c87f 100644 --- a/keyboards/primekb/meridian/keymaps/default/keymap.c +++ b/keyboards/primekb/meridian/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT_split_bs_rshift( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/primekb/meridian/keymaps/via/keymap.c b/keyboards/primekb/meridian/keymaps/via/keymap.c index 9c314d657c..9d3113a831 100644 --- a/keyboards/primekb/meridian/keymaps/via/keymap.c +++ b/keyboards/primekb/meridian/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT_split_bs_rshift( - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/primekb/meridian_rgb/keymaps/default/keymap.c b/keyboards/primekb/meridian_rgb/keymaps/default/keymap.c index cf963b553d..a86654c4f6 100644 --- a/keyboards/primekb/meridian_rgb/keymaps/default/keymap.c +++ b/keyboards/primekb/meridian_rgb/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT( - 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, KC_DEL, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/primekb/meridian_rgb/keymaps/via/keymap.c b/keyboards/primekb/meridian_rgb/keymaps/via/keymap.c index cf963b553d..a86654c4f6 100644 --- a/keyboards/primekb/meridian_rgb/keymaps/via/keymap.c +++ b/keyboards/primekb/meridian_rgb/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_RGUI, KC_RCTL ), [1] = LAYOUT( - 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, KC_DEL, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, diff --git a/keyboards/primekb/prime_l/keymaps/default/keymap.c b/keyboards/primekb/prime_l/keymaps/default/keymap.c index dbaf522455..eb175a8444 100644 --- a/keyboards/primekb/prime_l/keymaps/default/keymap.c +++ b/keyboards/primekb/prime_l/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_SCLN, 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, diff --git a/keyboards/primekb/prime_l/keymaps/via/keymap.c b/keyboards/primekb/prime_l/keymaps/via/keymap.c index 9fb3da5ef7..f0b162087b 100644 --- a/keyboards/primekb/prime_l/keymaps/via/keymap.c +++ b/keyboards/primekb/prime_l/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, 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_GRV, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_SCLN, 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, diff --git a/keyboards/program_yoink/ortho/keymaps/default/keymap.c b/keyboards/program_yoink/ortho/keymaps/default/keymap.c index 9b09f21cc0..6719a38b0a 100644 --- a/keyboards/program_yoink/ortho/keymaps/default/keymap.c +++ b/keyboards/program_yoink/ortho/keymaps/default/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_ortho( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_M_K, RGB_M_G, RGB_M_R, RGB_M_SW, _______, RGB_HUI, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_VAD, _______, RGB_HUD, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_VAD, _______, RGB_HUD, _______, RGB_TOG, XXXXXXX, XXXXXXX, KC_DEL, KC_RALT, KC_RCTL ), }; diff --git a/keyboards/program_yoink/staggered/keymaps/default/keymap.c b/keyboards/program_yoink/staggered/keymaps/default/keymap.c index 8a039044ac..8780cad06e 100644 --- a/keyboards/program_yoink/staggered/keymaps/default/keymap.c +++ b/keyboards/program_yoink/staggered/keymaps/default/keymap.c @@ -47,8 +47,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, RGB_M_B, RGB_M_P, RGB_M_K, RGB_M_G, RGB_M_R, RGB_HUI, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, RGB_HUD, - _______, RGB_TOG, XXXXXXX, RESET, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_HUD, + _______, RGB_TOG, XXXXXXX, QK_BOOT, _______, _______, _______ ), }; diff --git a/keyboards/program_yoink/staggered/keymaps/via/keymap.c b/keyboards/program_yoink/staggered/keymaps/via/keymap.c index 18dace1eeb..0ac2bfd60d 100644 --- a/keyboards/program_yoink/staggered/keymaps/via/keymap.c +++ b/keyboards/program_yoink/staggered/keymaps/via/keymap.c @@ -43,15 +43,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER2] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, RGB_M_B, RGB_M_P, RGB_M_K, RGB_M_G, RGB_M_R, RGB_HUI, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, RGB_HUD, - _______, RGB_TOG, XXXXXXX, RESET, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_HUD, + _______, RGB_TOG, XXXXXXX, QK_BOOT, _______, _______, _______ ), [_LAYER3] = LAYOUT_default( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, RGB_M_B, RGB_M_P, RGB_M_K, RGB_M_G, RGB_M_R, RGB_HUI, - _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, RGB_HUD, - _______, RGB_TOG, XXXXXXX, RESET, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, RGB_HUD, + _______, RGB_TOG, XXXXXXX, QK_BOOT, _______, _______, _______ ), }; diff --git a/keyboards/projectcain/vault35/keymaps/default/keymap.c b/keyboards/projectcain/vault35/keymaps/default/keymap.c index 05fb05b760..64ff62c3ef 100644 --- a/keyboards/projectcain/vault35/keymaps/default/keymap.c +++ b/keyboards/projectcain/vault35/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_QUOTE, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, - LALT(KC_TAB), MO(1), SFT_T(KC_BSPC), KC_SPACE, MO(2), RESET + LALT(KC_TAB), MO(1), SFT_T(KC_BSPC), KC_SPACE, MO(2), QK_BOOT ), [NUM] = LAYOUT_split_4space( diff --git a/keyboards/projectcain/vault45/keymaps/default/keymap.c b/keyboards/projectcain/vault45/keymaps/default/keymap.c index 6955320e77..aa1179fbcd 100644 --- a/keyboards/projectcain/vault45/keymaps/default/keymap.c +++ b/keyboards/projectcain/vault45/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [NUM] = LAYOUT_split_4space( - KC_TRNS, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_WBAK, KC_PSLS, KC_7, KC_8, KC_9, KC_PMNS, KC_DEL, RESET, + KC_TRNS, KC_PGUP, KC_HOME, KC_UP, KC_END, KC_WBAK, KC_PSLS, KC_7, KC_8, KC_9, KC_PMNS, KC_DEL, QK_BOOT, KC_TRNS, KC_PGDN, KC_LEFT, KC_DOWN, KC_RGHT, KC_WFWD, KC_PAST, KC_4, KC_5, KC_6, KC_PPLS, KC_TRNS, KC_LBRC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_0, KC_1, KC_2, KC_3, KC_PDOT, KC_RBRC, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S(KC_RCTRL), RALT(KC_F4), RALT(KC_F4) diff --git a/keyboards/projectkb/alice/keymaps/default/keymap.c b/keyboards/projectkb/alice/keymaps/default/keymap.c index a6d222b02d..d656e4f31b 100644 --- a/keyboards/projectkb/alice/keymaps/default/keymap.c +++ b/keyboards/projectkb/alice/keymaps/default/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_MOD, _______, _______, KC_UP, _______, _______, _______, RGB_SAI, RGB_HUI, RGB_VAI, _______, _______, _______, _______, _______, RGB_RMOD, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, RGB_SAD, RGB_HUD, RGB_VAD, _______, _______, _______, _______, _______, BL_INC, BL_DEC, BL_TOGG, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET + _______, _______, _______, _______, _______, _______, QK_BOOT ) }; diff --git a/keyboards/projectkb/signature65/keymaps/default/keymap.c b/keyboards/projectkb/signature65/keymaps/default/keymap.c index 46927246ca..b6a51a9809 100644 --- a/keyboards/projectkb/signature65/keymaps/default/keymap.c +++ b/keyboards/projectkb/signature65/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_DEL, KC_PSCR, - 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/projectkb/signature65/keymaps/via/keymap.c b/keyboards/projectkb/signature65/keymaps/via/keymap.c index cbebc20952..58360ff3d5 100644 --- a/keyboards/projectkb/signature65/keymaps/via/keymap.c +++ b/keyboards/projectkb/signature65/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_DEL, KC_PSCR, - 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/projectkb/signature87/keymaps/default/keymap.c b/keyboards/projectkb/signature87/keymaps/default/keymap.c index d150ef33cc..a58d077f60 100644 --- a/keyboards/projectkb/signature87/keymaps/default/keymap.c +++ b/keyboards/projectkb/signature87/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/projectkb/signature87/keymaps/via/keymap.c b/keyboards/projectkb/signature87/keymaps/via/keymap.c index fd61304785..87e9a2af74 100644 --- a/keyboards/projectkb/signature87/keymaps/via/keymap.c +++ b/keyboards/projectkb/signature87/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/prototypist/allison/keymaps/default/keymap.c b/keyboards/prototypist/allison/keymaps/default/keymap.c index 30fed354a4..55eb1bd9c6 100644 --- a/keyboards/prototypist/allison/keymaps/default/keymap.c +++ b/keyboards/prototypist/allison/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL), [1] = LAYOUT_all( /* FN1 */ - RESET, 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, + QK_BOOT, 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, KC_UP, 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_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/prototypist/allison/keymaps/via/keymap.c b/keyboards/prototypist/allison/keymaps/via/keymap.c index 30fed354a4..55eb1bd9c6 100644 --- a/keyboards/prototypist/allison/keymaps/via/keymap.c +++ b/keyboards/prototypist/allison/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL), [1] = LAYOUT_all( /* FN1 */ - RESET, 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, + QK_BOOT, 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, KC_UP, 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_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/punk75/keymaps/default/keymap.c b/keyboards/punk75/keymaps/default/keymap.c index 30910a4a0d..c330612cf4 100644 --- a/keyboards/punk75/keymaps/default/keymap.c +++ b/keyboards/punk75/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, MO(_FN), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ ) diff --git a/keyboards/punk75/keymaps/via/keymap.c b/keyboards/punk75/keymaps/via/keymap.c index 44deb8bd96..fce000d5ed 100644 --- a/keyboards/punk75/keymaps/via/keymap.c +++ b/keyboards/punk75/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, MO(1), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(1), _______, _______, _______ ), diff --git a/keyboards/q4z/keymaps/default/keymap.c b/keyboards/q4z/keymaps/default/keymap.c index 21d0c4ffcb..45fe8c2dd5 100644 --- a/keyboards/q4z/keymaps/default/keymap.c +++ b/keyboards/q4z/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NAV] = LAYOUT( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, 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 diff --git a/keyboards/qpockets/eggman/keymaps/default/keymap.c b/keyboards/qpockets/eggman/keymaps/default/keymap.c index 11da71c6c7..13a34c14b0 100644 --- a/keyboards/qpockets/eggman/keymaps/default/keymap.c +++ b/keyboards/qpockets/eggman/keymaps/default/keymap.c @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NAV] = LAYOUT_default( KC_TRNS, KC_TRNS, - KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, + KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TAB, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_LCAP, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/qpockets/space_space/rev1/keymaps/default/keymap.c b/keyboards/qpockets/space_space/rev1/keymaps/default/keymap.c index 6b4219b289..09b74316a8 100644 --- a/keyboards/qpockets/space_space/rev1/keymaps/default/keymap.c +++ b/keyboards/qpockets/space_space/rev1/keymaps/default/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_default( - KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, + KC_HOME, KC_UP, KC_END, KC_PGUP, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_BSPC, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TAB, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_TRNS, KC_LCAP, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/qpockets/space_space/rev2/keymaps/default/keymap.c b/keyboards/qpockets/space_space/rev2/keymaps/default/keymap.c index 64f34c8291..7d47cf4f8d 100644 --- a/keyboards/qpockets/space_space/rev2/keymaps/default/keymap.c +++ b/keyboards/qpockets/space_space/rev2/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_default( - KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, + KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_TRNS, KC_F4, KC_F5, KC_F6, KC_F7, KC_TAB, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_LCAP, KC_F9, KC_F10, KC_F11, KC_F12, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/qpockets/wanten/keymaps/default/keymap.c b/keyboards/qpockets/wanten/keymaps/default/keymap.c index f0cec2cc45..b0e61490d8 100644 --- a/keyboards/qpockets/wanten/keymaps/default/keymap.c +++ b/keyboards/qpockets/wanten/keymaps/default/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_default( - KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, + KC_TRNS, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_TRNS, KC_F5, KC_F6, KC_F7, KC_F8, KC_TAB, KC_TRNS, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_CAPS, KC_F9, KC_F10, KC_F11, KC_F12, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/quantrik/kyuu/keymaps/default/keymap.c b/keyboards/quantrik/kyuu/keymaps/default/keymap.c index 6b7adf0d13..3b3c09f2d9 100644 --- a/keyboards/quantrik/kyuu/keymaps/default/keymap.c +++ b/keyboards/quantrik/kyuu/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( 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, QMKBEST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, QMKBEST, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/quantrik/kyuu/keymaps/via/keymap.c b/keyboards/quantrik/kyuu/keymaps/via/keymap.c index 2525ae1c9c..7f769d72bb 100755 --- a/keyboards/quantrik/kyuu/keymaps/via/keymap.c +++ b/keyboards/quantrik/kyuu/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( KC_TRNS, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c index 86799d7617..edd4133731 100644 --- a/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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_HOME, 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_END, 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, diff --git a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c index 67f5d38908..f319ff9c75 100644 --- a/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c +++ b/keyboards/qwertykeys/qk65/hotswap/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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_HOME, 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_END, 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, diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c index ea9b36136f..f05e46b0a7 100644 --- a/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c +++ b/keyboards/qwertykeys/qk65/solder/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_iso_blocker( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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_HOME, 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_END, 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, diff --git a/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c index c1059821b1..3a8fb5fe0d 100644 --- a/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c +++ b/keyboards/qwertykeys/qk65/solder/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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_HOME, 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_END, 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, diff --git a/keyboards/qwertyydox/keymaps/default/keymap.c b/keyboards/qwertyydox/keymaps/default/keymap.c index 2884fcfbce..2a4099b3cc 100644 --- a/keyboards/qwertyydox/keymaps/default/keymap.c +++ b/keyboards/qwertyydox/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| KC_INS, KC_HOME, KC_PGUP, KC_BTN1, KC_BTN2, KC_WH_D, KC_MS_L, KC_MS_U, KC_MS_D, KC_MS_R, KC_NO, KC_NO, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| - KC_DEL, KC_END, KC_PGDN, nav, KC_LCTL, KC_SPC, TO(0), TO(1), KC_LSFT, KC_BSPC, KC_NO, KC_NO, KC_NO, RESET + KC_DEL, KC_END, KC_PGDN, nav, KC_LCTL, KC_SPC, TO(0), TO(1), KC_LSFT, KC_BSPC, KC_NO, KC_NO, KC_NO, QK_BOOT //`--------+--------+--------+--------+--------+--------+--------/ \--------+--------+--------+--------+--------+--------+--------' ) }; diff --git a/keyboards/rainkeebs/rainkeeb/keymaps/default/keymap.c b/keyboards/rainkeebs/rainkeeb/keymaps/default/keymap.c index 08cf7462c3..914d1113b1 100644 --- a/keyboards/rainkeebs/rainkeeb/keymaps/default/keymap.c +++ b/keyboards/rainkeebs/rainkeeb/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( 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_F13, KC_F14, KC_F15, GAME, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_GAME] = LAYOUT( diff --git a/keyboards/rainkeebs/rainkeeb/keymaps/via/keymap.c b/keyboards/rainkeebs/rainkeeb/keymaps/via/keymap.c index 08cf7462c3..914d1113b1 100644 --- a/keyboards/rainkeebs/rainkeeb/keymaps/via/keymap.c +++ b/keyboards/rainkeebs/rainkeeb/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( 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_F13, KC_F14, KC_F15, GAME, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_GAME] = LAYOUT( diff --git a/keyboards/ramonimbao/aelith/keymaps/default/keymap.c b/keyboards/ramonimbao/aelith/keymaps/default/keymap.c index ff9319e4fa..64e74607e1 100644 --- a/keyboards/ramonimbao/aelith/keymaps/default/keymap.c +++ b/keyboards/ramonimbao/aelith/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice_split_bs( - 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, KC_DEL, KC_DEL, + QK_BOOT, _______, 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_DEL, KC_HOME, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/aelith/keymaps/via/keymap.c b/keyboards/ramonimbao/aelith/keymaps/via/keymap.c index 7c48ffa0d3..e916d6e6c1 100644 --- a/keyboards/ramonimbao/aelith/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/aelith/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice_split_bs( - 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, KC_DEL, KC_DEL, + QK_BOOT, _______, 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_DEL, KC_HOME, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/herringbone/pro/keymaps/via/keymap.c b/keyboards/ramonimbao/herringbone/pro/keymaps/via/keymap.c index 8acc017679..71622cddcf 100644 --- a/keyboards/ramonimbao/herringbone/pro/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/herringbone/pro/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_NO, KC_SPC, KC_NO, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/herringbone/v1/keymaps/via/keymap.c b/keyboards/ramonimbao/herringbone/v1/keymaps/via/keymap.c index 04734d0444..6438021f3a 100644 --- a/keyboards/ramonimbao/herringbone/v1/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/herringbone/v1/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/mona/v1/keymaps/via/keymap.c b/keyboards/ramonimbao/mona/v1/keymaps/via/keymap.c index 4a129b8764..3bd85273e8 100644 --- a/keyboards/ramonimbao/mona/v1/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/mona/v1/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/mona/v1_1/keymaps/via/keymap.c b/keyboards/ramonimbao/mona/v1_1/keymaps/via/keymap.c index e5a714314e..a86b5fa6c7 100644 --- a/keyboards/ramonimbao/mona/v1_1/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/mona/v1_1/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/mona/v32a/keymaps/via/keymap.c b/keyboards/ramonimbao/mona/v32a/keymaps/via/keymap.c index e5a714314e..a86b5fa6c7 100644 --- a/keyboards/ramonimbao/mona/v32a/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/mona/v32a/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_DEL, KC_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/squishy65/keymaps/default/keymap.c b/keyboards/ramonimbao/squishy65/keymaps/default/keymap.c index c46d573323..f22daf1760 100644 --- a/keyboards/ramonimbao/squishy65/keymaps/default/keymap.c +++ b/keyboards/ramonimbao/squishy65/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_ansi( - 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, _______, _______, RGB_SAI, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAD, diff --git a/keyboards/ramonimbao/squishy65/keymaps/iso/keymap.c b/keyboards/ramonimbao/squishy65/keymaps/iso/keymap.c index ee1907d3e5..dedb48f333 100644 --- a/keyboards/ramonimbao/squishy65/keymaps/iso/keymap.c +++ b/keyboards/ramonimbao/squishy65/keymaps/iso/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_iso( - 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, KC_DEL, RGB_SAI, + QK_BOOT, 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, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAD, diff --git a/keyboards/ramonimbao/squishy65/keymaps/via/keymap.c b/keyboards/ramonimbao/squishy65/keymaps/via/keymap.c index d9177a622e..c1abb8cff6 100644 --- a/keyboards/ramonimbao/squishy65/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/squishy65/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_NO, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, RGB_SAI, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_VAI, RGB_SAD, diff --git a/keyboards/ramonimbao/squishyfrl/keymaps/via/keymap.c b/keyboards/ramonimbao/squishyfrl/keymaps/via/keymap.c index e1158c2a23..06e14e016e 100644 --- a/keyboards/ramonimbao/squishyfrl/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/squishyfrl/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_NO, KC_SPC, KC_NO, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ramonimbao/wete/v1/keymaps/via/keymap.c b/keyboards/ramonimbao/wete/v1/keymaps/via/keymap.c index 0f1a0bedb1..8753e0a48f 100644 --- a/keyboards/ramonimbao/wete/v1/keymaps/via/keymap.c +++ b/keyboards/ramonimbao/wete/v1/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_KP_0, KC_KP_DOT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT_ansi_rhnp( - KC_NO, KC_NO, KC_NO, KC_NO, BL_TOGG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, + KC_NO, KC_NO, KC_NO, KC_NO, BL_TOGG, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, diff --git a/keyboards/rart/rart45/keymaps/default/keymap.c b/keyboards/rart/rart45/keymaps/default/keymap.c index c1aae5828d..0514cd654e 100644 --- a/keyboards/rart/rart45/keymaps/default/keymap.c +++ b/keyboards/rart/rart45/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_all( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart45/keymaps/via/keymap.c b/keyboards/rart/rart45/keymaps/via/keymap.c index 2147bb67c5..4787c60976 100644 --- a/keyboards/rart/rart45/keymaps/via/keymap.c +++ b/keyboards/rart/rart45/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_all( - RESET, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, + QK_BOOT, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart4x4/keymaps/via/keymap.c b/keyboards/rart/rart4x4/keymaps/via/keymap.c index 86e5538073..dd6c81d768 100644 --- a/keyboards/rart/rart4x4/keymaps/via/keymap.c +++ b/keyboards/rart/rart4x4/keymaps/via/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_4x4( - KC_TRNS, RGB_HUI, RGB_HUD, RESET, + KC_TRNS, RGB_HUI, RGB_HUD, QK_BOOT, RGB_SAI, RGB_SAD, KC_MNXT, KC_MPRV, RGB_VAI, RGB_VAD, KC_MSTP, KC_MPLY, KC_COPY, KC_PSTE, KC_MYCM, RGB_TOG diff --git a/keyboards/rart/rart67/keymaps/default/keymap.c b/keyboards/rart/rart67/keymaps/default/keymap.c index e1a21f89dc..b8f3e851cb 100644 --- a/keyboards/rart/rart67/keymaps/default/keymap.c +++ b/keyboards/rart/rart67/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, _______, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_P7, KC_P8, KC_P9, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_NLCK, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, KC_P1, KC_P2, KC_P3, KC_VOLU, _______, _______, _______, _______, _______, _______, KC_P0, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/rart/rart67/keymaps/via/keymap.c b/keyboards/rart/rart67/keymaps/via/keymap.c index cfb8e06a32..8c179885fc 100644 --- a/keyboards/rart/rart67/keymaps/via/keymap.c +++ b/keyboards/rart/rart67/keymaps/via/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, _______, - RESET, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_P7, KC_P8, KC_P9, _______, _______, _______, + QK_BOOT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_P7, KC_P8, KC_P9, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, KC_NLCK, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, KC_P1, KC_P2, KC_P3, KC_VOLU, _______, _______, _______, _______, _______, _______, KC_P0, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/rart/rart75/keymaps/ansi/keymap.c b/keyboards/rart/rart75/keymaps/ansi/keymap.c index 35da09b6f9..44758054c2 100644 --- a/keyboards/rart/rart75/keymaps/ansi/keymap.c +++ b/keyboards/rart/rart75/keymaps/ansi/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart75/keymaps/default/keymap.c b/keyboards/rart/rart75/keymaps/default/keymap.c index 145d5b6117..55966e262d 100644 --- a/keyboards/rart/rart75/keymaps/default/keymap.c +++ b/keyboards/rart/rart75/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart75/keymaps/via/keymap.c b/keyboards/rart/rart75/keymaps/via/keymap.c index d4a83373c8..56058bd102 100644 --- a/keyboards/rart/rart75/keymaps/via/keymap.c +++ b/keyboards/rart/rart75/keymaps/via/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart75hs/keymaps/default/keymap.c b/keyboards/rart/rart75hs/keymaps/default/keymap.c index c6f334e98f..4582818a46 100644 --- a/keyboards/rart/rart75hs/keymaps/default/keymap.c +++ b/keyboards/rart/rart75hs/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rart75hs/keymaps/via/keymap.c b/keyboards/rart/rart75hs/keymaps/via/keymap.c index 27a4f99fa6..e64380d4d2 100644 --- a/keyboards/rart/rart75hs/keymaps/via/keymap.c +++ b/keyboards/rart/rart75hs/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/rart/rartand/keymaps/default/keymap.c b/keyboards/rart/rartand/keymaps/default/keymap.c index 3d04ffc6f3..47b37e7e2d 100644 --- a/keyboards/rart/rartand/keymaps/default/keymap.c +++ b/keyboards/rart/rartand/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_all( - RESET, 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_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rartand/keymaps/via/keymap.c b/keyboards/rart/rartand/keymaps/via/keymap.c index 3d04ffc6f3..47b37e7e2d 100644 --- a/keyboards/rart/rartand/keymaps/via/keymap.c +++ b/keyboards/rart/rartand/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_all( - RESET, 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_DEL, + QK_BOOT, 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_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rartland/keymaps/default/keymap.c b/keyboards/rart/rartland/keymaps/default/keymap.c index e813d87ffd..9b406af292 100644 --- a/keyboards/rart/rartland/keymaps/default/keymap.c +++ b/keyboards/rart/rartland/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/rart/rartland/keymaps/via/keymap.c b/keyboards/rart/rartland/keymaps/via/keymap.c index 4049ae135e..18db9b8b4b 100644 --- a/keyboards/rart/rartland/keymaps/via/keymap.c +++ b/keyboards/rart/rartland/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/rart/rartlice/keymaps/via/keymap.c b/keyboards/rart/rartlice/keymaps/via/keymap.c index 700bb7f414..90b11ff7eb 100644 --- a/keyboards/rart/rartlice/keymaps/via/keymap.c +++ b/keyboards/rart/rartlice/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_SPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - KC_NLCK, RGB_TOG, 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, _______, + KC_NLCK, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, KC_SLCK, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, KC_P7, KC_P8, KC_P9, KC_P0, _______, _______, _______, _______, _______, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, _______, diff --git a/keyboards/rart/rartlite/keymaps/default/keymap.c b/keyboards/rart/rartlite/keymaps/default/keymap.c index 730aad9908..c701a432c8 100644 --- a/keyboards/rart/rartlite/keymaps/default/keymap.c +++ b/keyboards/rart/rartlite/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_right_numpad( - 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_INS, 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, KC_DEL, KC_INS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rartlite/keymaps/via/keymap.c b/keyboards/rart/rartlite/keymaps/via/keymap.c index 9cb23f8a59..9b70cf19ba 100644 --- a/keyboards/rart/rartlite/keymaps/via/keymap.c +++ b/keyboards/rart/rartlite/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_right_numpad( - 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_INS, 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, KC_DEL, KC_INS, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rart/rartpad/keymaps/default/keymap.c b/keyboards/rart/rartpad/keymaps/default/keymap.c index e102d241a1..2b8a1035c3 100644 --- a/keyboards/rart/rartpad/keymaps/default/keymap.c +++ b/keyboards/rart/rartpad/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_SAI, RGB_SAD, KC_MNXT, KC_MPRV, RGB_VAI, RGB_VAD, KC_MSTP, KC_MPLY, KC_COPY, KC_PSTE, KC_MYCM, KC_CALC, - KC_TRNS, RGB_TOG, RESET, KC_TRNS + KC_TRNS, RGB_TOG, QK_BOOT, KC_TRNS ) }; diff --git a/keyboards/rart/rartpad/keymaps/via/keymap.c b/keyboards/rart/rartpad/keymaps/via/keymap.c index 8e4f05fea4..84aaca1ec6 100644 --- a/keyboards/rart/rartpad/keymaps/via/keymap.c +++ b/keyboards/rart/rartpad/keymaps/via/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_5x4( - KC_TRNS, RGB_HUI, RGB_HUD, RESET, + KC_TRNS, RGB_HUI, RGB_HUD, QK_BOOT, RGB_SAI, RGB_SAD, KC_MNXT, KC_MPRV, RGB_VAI, RGB_VAD, KC_MSTP, KC_MPLY, KC_COPY, KC_PSTE, KC_MYCM, KC_CALC, diff --git a/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c b/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c index 1d095ea22b..2e9afb3060 100644 --- a/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c +++ b/keyboards/rationalist/ratio65_hotswap/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), // basic function layer [1] = LAYOUT_all( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c b/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c index d677bb3c8a..180bfeee84 100644 --- a/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c +++ b/keyboards/rationalist/ratio65_hotswap/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), // basic function layer 1 [1] = LAYOUT_all( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c b/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c index 892d1e8b67..52c01dfbf2 100644 --- a/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c +++ b/keyboards/rationalist/ratio65_solder/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), // basic function layer [1] = LAYOUT_all( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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, 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, diff --git a/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c b/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c index 3310c23f4a..01165c0a5e 100644 --- a/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c +++ b/keyboards/rationalist/ratio65_solder/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RGUI, MO(1), KC_LEFT, KC_DOWN, KC_RIGHT ), // basic function layer 1 [1] = LAYOUT_all( - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, 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, 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, diff --git a/keyboards/recompile_keys/choco60/keymaps/default/keymap.c b/keyboards/recompile_keys/choco60/keymaps/default/keymap.c index c906fef779..ec40e84fa8 100644 --- a/keyboards/recompile_keys/choco60/keymaps/default/keymap.c +++ b/keyboards/recompile_keys/choco60/keymaps/default/keymap.c @@ -36,6 +36,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - _______, _______, _______, _______, _______, KC_STOP, RESET + _______, _______, _______, _______, _______, KC_STOP, QK_BOOT ) }; diff --git a/keyboards/recompile_keys/choco60/keymaps/via/keymap.c b/keyboards/recompile_keys/choco60/keymaps/via/keymap.c index 878a74210b..aad421903c 100644 --- a/keyboards/recompile_keys/choco60/keymaps/via/keymap.c +++ b/keyboards/recompile_keys/choco60/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_CAPS, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGUP, KC_LEFT, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, KC_PGDN, KC_DOWN, _______, _______, - _______, _______, _______, _______, _______, KC_STOP, RESET + _______, _______, _______, _______, _______, KC_STOP, QK_BOOT ), [2] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/recompile_keys/cocoa40/keymaps/default/keymap.c b/keyboards/recompile_keys/cocoa40/keymaps/default/keymap.c index 320f918a9e..0b6f8cb576 100644 --- a/keyboards/recompile_keys/cocoa40/keymaps/default/keymap.c +++ b/keyboards/recompile_keys/cocoa40/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = 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_DELETE, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/recompile_keys/mio/keymaps/default/keymap.c b/keyboards/recompile_keys/mio/keymaps/default/keymap.c index 39223f537a..f21d1357b8 100644 --- a/keyboards/recompile_keys/mio/keymaps/default/keymap.c +++ b/keyboards/recompile_keys/mio/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(_FN), KC_LCTL, KC_LALT, KC_SPC, KC_ENT ), [_FN] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/recompile_keys/mio/keymaps/via/keymap.c b/keyboards/recompile_keys/mio/keymaps/via/keymap.c index b521df9971..abe3925061 100644 --- a/keyboards/recompile_keys/mio/keymaps/via/keymap.c +++ b/keyboards/recompile_keys/mio/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_LCTL, KC_LALT, KC_SPC, KC_ENT ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/recompile_keys/nomu30/keymaps/default/keymap.c b/keyboards/recompile_keys/nomu30/keymaps/default/keymap.c index 8878c3b1e8..3e5b5343bf 100644 --- a/keyboards/recompile_keys/nomu30/keymaps/default/keymap.c +++ b/keyboards/recompile_keys/nomu30/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNC] = LAYOUT( KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - KC_TAB, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, RESET, + KC_TAB, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, QK_BOOT, KC_TRNS, KC_LALT, KC_LGUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) }; diff --git a/keyboards/redox/keymaps/default/keymap.c b/keyboards/redox/keymaps/default/keymap.c index 460e298978..3f56fa5f3c 100644 --- a/keyboards/redox/keymaps/default/keymap.c +++ b/keyboards/redox/keymaps/default/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - XXXXXXX ,RESET ,RGB_M_P ,RGB_TOG ,RGB_MOD ,RGB_HUD ,RGB_HUI , RGB_SAD ,RGB_SAI ,RGB_VAD ,RGB_VAI ,XXXXXXX ,XXXXXXX ,XXXXXXX , + XXXXXXX ,QK_BOOT ,RGB_M_P ,RGB_TOG ,RGB_MOD ,RGB_HUD ,RGB_HUI , RGB_SAD ,RGB_SAI ,RGB_VAD ,RGB_VAI ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/redox/keymaps/via/keymap.c b/keyboards/redox/keymaps/via/keymap.c index f0f9285879..13c95bdd53 100644 --- a/keyboards/redox/keymaps/via/keymap.c +++ b/keyboards/redox/keymaps/via/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + XXXXXXX ,QK_BOOT ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/redox_media/keymaps/default/keymap.c b/keyboards/redox_media/keymaps/default/keymap.c index a8b479159f..efd0ac2afb 100644 --- a/keyboards/redox_media/keymaps/default/keymap.c +++ b/keyboards/redox_media/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // ┌────────┐ ┌────────┬────────┐ KC_MPRV, XXXXXXX, XXXXXXX, //┌────────┬────────┬────────┬───┼────┬───┼────┬────────┐ ┌──┼─────┬──┼─────┬──┼─────┬────────┬────────┬────────┐ - RESET ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5, KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , + QK_BOOT ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5, KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,KC_F11 , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,KC_F12 , XXXXXXX ,XXXXXXX ,XXXXXXX, KC_UP ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/redox_w/keymaps/default/keymap.c b/keyboards/redox_w/keymaps/default/keymap.c index 91fc7afa97..a91d3725f4 100644 --- a/keyboards/redox_w/keymaps/default/keymap.c +++ b/keyboards/redox_w/keymaps/default/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + XXXXXXX ,QK_BOOT ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/redox_w/keymaps/via/keymap.c b/keyboards/redox_w/keymaps/via/keymap.c index 406bc1b8e1..b9af344a46 100644 --- a/keyboards/redox_w/keymaps/via/keymap.c +++ b/keyboards/redox_w/keymaps/via/keymap.c @@ -76,7 +76,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //┌────────┬────────┬────────┬────────┬────────┬────────┐ ┌────────┬────────┬────────┬────────┬────────┬────────┐ XXXXXXX ,KC_F1 ,KC_F2 ,KC_F3 ,KC_F4 ,KC_F5 , KC_F6 ,KC_F7 ,KC_F8 ,KC_F9 ,KC_F10 ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┤ - XXXXXXX ,RESET ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , + XXXXXXX ,QK_BOOT ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ ├────────┼────────┼────────┼────────┼────────┼────────┼────────┤ XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX ,XXXXXXX , //├────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┐ ┌────────┼────────┼────────┼────────┼────────┼────────┼────────┼────────┤ diff --git a/keyboards/redscarf_iiplus/verb/keymaps/default/keymap.c b/keyboards/redscarf_iiplus/verb/keymaps/default/keymap.c index 4f05b0c28c..5920f29705 100755 --- a/keyboards/redscarf_iiplus/verb/keymaps/default/keymap.c +++ b/keyboards/redscarf_iiplus/verb/keymaps/default/keymap.c @@ -22,6 +22,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F3, KC_F4, 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, KC_DEL, KC_F5, KC_F6, 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_PGUP, KC_F7, KC_F8, 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, KC_PGDN, - KC_F9, RESET, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT + KC_F9, QK_BOOT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ) }; diff --git a/keyboards/redscarf_iiplus/verc/keymaps/default/keymap.c b/keyboards/redscarf_iiplus/verc/keymaps/default/keymap.c index f382b4775b..525c809439 100755 --- a/keyboards/redscarf_iiplus/verc/keymaps/default/keymap.c +++ b/keyboards/redscarf_iiplus/verc/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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, 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, diff --git a/keyboards/retro_75/keymaps/default/keymap.c b/keyboards/retro_75/keymaps/default/keymap.c index 602eb695ba..929097b3b4 100644 --- a/keyboards/retro_75/keymaps/default/keymap.c +++ b/keyboards/retro_75/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/reviung/reviung33/keymaps/default/keymap.c b/keyboards/reviung/reviung33/keymaps/default/keymap.c index 875df97601..858d3f6ee3 100644 --- a/keyboards/reviung/reviung33/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung33/keymaps/default/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung33( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c index 738915ce34..05e2111b3d 100644 --- a/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c +++ b/keyboards/reviung/reviung33/keymaps/default_jp/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung33( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung34/keymaps/default/keymap.c b/keyboards/reviung/reviung34/keymaps/default/keymap.c index 66939d2469..44ec64bdd3 100755 --- a/keyboards/reviung/reviung34/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung34( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c index 9f586b333c..4e759db5d7 100755 --- a/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_2u/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung34_2u( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c index 3faff2e368..e1e9c83d2d 100755 --- a/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_jp/keymap.c @@ -60,7 +60,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung34( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + KC_F11, KC_F12, KC_CAPS, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c index e2d852354b..fd232c6f0e 100755 --- a/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_rgb/keymap.c @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung34( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, _______, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c index d5a5a2223b..0f9595c7b8 100755 --- a/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c +++ b/keyboards/reviung/reviung34/keymaps/default_rgb2u/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung34_2u( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD,XXXXXXX, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, KC_F11, KC_F12, KC_CAPS, XXXXXXX, KC_PSCR, _______, _______, _______ ), }; diff --git a/keyboards/reviung/reviung39/keymaps/default/keymap.c b/keyboards/reviung/reviung39/keymaps/default/keymap.c index 7030be13fa..ba82e933dc 100644 --- a/keyboards/reviung/reviung39/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung39/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung39( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______ ), }; diff --git a/keyboards/reviung/reviung39/keymaps/default_s/keymap.c b/keyboards/reviung/reviung39/keymaps/default_s/keymap.c index 42e2694315..d1423b9a19 100644 --- a/keyboards/reviung/reviung39/keymaps/default_s/keymap.c +++ b/keyboards/reviung/reviung39/keymaps/default_s/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung39( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______ ), }; diff --git a/keyboards/reviung/reviung39/keymaps/via/keymap.c b/keyboards/reviung/reviung39/keymaps/via/keymap.c index 0a4a664dc2..7915452427 100644 --- a/keyboards/reviung/reviung39/keymaps/via/keymap.c +++ b/keyboards/reviung/reviung39/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung39( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, _______ ), }; diff --git a/keyboards/reviung/reviung41/keymaps/default/keymap.c b/keyboards/reviung/reviung41/keymaps/default/keymap.c index 4231e4896b..749eac5693 100644 --- a/keyboards/reviung/reviung41/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung41/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung41( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, _______, _______ ), }; diff --git a/keyboards/reviung/reviung41/keymaps/via/keymap.c b/keyboards/reviung/reviung41/keymaps/via/keymap.c index 1f0bce741f..aceddfcc6b 100644 --- a/keyboards/reviung/reviung41/keymaps/via/keymap.c +++ b/keyboards/reviung/reviung41/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_reviung41( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, _______, _______ ), }; diff --git a/keyboards/reviung/reviung53/keymaps/default/keymap.c b/keyboards/reviung/reviung53/keymaps/default/keymap.c index a8d95d70d5..6b47aad35a 100644 --- a/keyboards/reviung/reviung53/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung53/keymaps/default/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), [_ADJUST] = LAYOUT_reviung53( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung53/keymaps/via/keymap.c b/keyboards/reviung/reviung53/keymaps/via/keymap.c index a8d95d70d5..6b47aad35a 100644 --- a/keyboards/reviung/reviung53/keymaps/via/keymap.c +++ b/keyboards/reviung/reviung53/keymaps/via/keymap.c @@ -42,7 +42,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______ ), [_ADJUST] = LAYOUT_reviung53( - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/reviung/reviung61/keymaps/default/keymap.c b/keyboards/reviung/reviung61/keymaps/default/keymap.c index ef24d4be27..c0ef54c357 100644 --- a/keyboards/reviung/reviung61/keymaps/default/keymap.c +++ b/keyboards/reviung/reviung61/keymaps/default/keymap.c @@ -36,6 +36,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, KC_INS, _______, - _______, _______, _______, _______, RESET, _______, _______, _______ + _______, _______, _______, _______, QK_BOOT, _______, _______, _______ ) }; diff --git a/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c b/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c index ef24d4be27..c0ef54c357 100644 --- a/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c +++ b/keyboards/reviung/reviung61/keymaps/default_rgb/keymap.c @@ -36,6 +36,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, RGB_TOG, _______, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_HOME, KC_END, KC_PGUP, KC_PGDN, KC_PSCR, KC_INS, _______, - _______, _______, _______, _______, RESET, _______, _______, _______ + _______, _______, _______, _______, QK_BOOT, _______, _______, _______ ) }; diff --git a/keyboards/rgbkb/mun/keymaps/default/keymap.c b/keyboards/rgbkb/mun/keymaps/default/keymap.c index bdc2ea9811..8c61059971 100644 --- a/keyboards/rgbkb/mun/keymaps/default/keymap.c +++ b/keyboards/rgbkb/mun/keymaps/default/keymap.c @@ -119,7 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, GAME, _______, RGB_RMOD,_______, RGB_MOD, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, QWERTY, COLEMAK, diff --git a/keyboards/rgbkb/mun/keymaps/via/keymap.c b/keyboards/rgbkb/mun/keymaps/via/keymap.c index bdc2ea9811..8c61059971 100644 --- a/keyboards/rgbkb/mun/keymaps/via/keymap.c +++ b/keyboards/rgbkb/mun/keymaps/via/keymap.c @@ -119,7 +119,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, GAME, _______, RGB_RMOD,_______, RGB_MOD, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, QWERTY, COLEMAK, diff --git a/keyboards/rgbkb/pan/keymaps/default/keymap.c b/keyboards/rgbkb/pan/keymaps/default/keymap.c index 1188db837c..dbc127616a 100644 --- a/keyboards/rgbkb/pan/keymaps/default/keymap.c +++ b/keyboards/rgbkb/pan/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJ] = LAYOUT_all( KC_NO, KC_NO, 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_PSCR, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, _QWERTY, _COLEMAK diff --git a/keyboards/rgbkb/sol/keymaps/default/keymap.c b/keyboards/rgbkb/sol/keymaps/default/keymap.c index 1414c0ce24..c82259f5ee 100644 --- a/keyboards/rgbkb/sol/keymaps/default/keymap.c +++ b/keyboards/rgbkb/sol/keymaps/default/keymap.c @@ -107,7 +107,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,------------------------------------------------. ,------------------------------------------------. * | F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| - * | | SAD | VAI | SAI | RESET| | | | | | P7 | P8 | P9 | | | + * | | SAD | VAI | SAI | QK_BOOT| | | | | | P7 | P8 | P9 | | | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| * | | HUD | VAD | HUI |RGBRST| | | | | | P4 | P5 | P6 | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| @@ -121,7 +121,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJ] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, RGBRST, _______, _______, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, _______, _______, _______, KC_P1, KC_P2, KC_P3, _______, _______, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, QWERTY, COLEMAK, @@ -263,7 +263,7 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } #endif return false; - case RESET: + case QK_BOOT: if (record->event.pressed) { reset_timer = timer_read(); } else { diff --git a/keyboards/rgbkb/sol/keymaps/default/readme.md b/keyboards/rgbkb/sol/keymaps/default/readme.md index 7036f029f2..6c3dfb05f5 100644 --- a/keyboards/rgbkb/sol/keymaps/default/readme.md +++ b/keyboards/rgbkb/sol/keymaps/default/readme.md @@ -57,7 +57,7 @@ * ,------------------------------------------------. ,------------------------------------------------. * | F1 | F2 | F3 | F4 | F5 | F6 | | | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| - * | | SAD | VAI | SAI | RESET| | | | | | P7 | P8 | P9 | | | + * | | SAD | VAI | SAI | QK_BOOT| | | | | | P7 | P8 | P9 | | | * |------+------+------+------+------+------|------| |------|------+------+------+------+------+------| * | | HUD | VAD | HUI |RGBRST| | | | | | P4 | P5 | P6 | | | * |------+------+------+------+------+------+------| |------+------+------+------+------+------+------| diff --git a/keyboards/rgbkb/sol3/keymaps/default/keymap.c b/keyboards/rgbkb/sol3/keymaps/default/keymap.c index c1d1a04d79..f619c624cd 100644 --- a/keyboards/rgbkb/sol3/keymaps/default/keymap.c +++ b/keyboards/rgbkb/sol3/keymaps/default/keymap.c @@ -104,7 +104,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, RGB_RST, _______, DM_REC1, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, DM_RSTP, _______, _______, KC_P1, KC_P2, KC_P3, _______, GAME, _______, RGB_RMOD,RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, QWERTY, COLEMAK, diff --git a/keyboards/rgbkb/sol3/keymaps/via/keymap.c b/keyboards/rgbkb/sol3/keymaps/via/keymap.c index 740d3cc084..ae0560036f 100644 --- a/keyboards/rgbkb/sol3/keymaps/via/keymap.c +++ b/keyboards/rgbkb/sol3/keymaps/via/keymap.c @@ -107,7 +107,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F11, KC_F12, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, KC_P7, KC_P8, KC_P9, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, RGB_RST, _______, DM_REC1, _______, _______, KC_P4, KC_P5, KC_P6, _______, _______, _______, RGB_SPD, _______, RGB_SPI, _______, _______, DM_RSTP, _______, _______, KC_P1, KC_P2, KC_P3, _______, GAME, _______, RGB_RMOD,RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_P0, KC_PDOT, KC_NLCK, QWERTY, COLEMAK, diff --git a/keyboards/rgbkb/zen/rev1/keymaps/default/keymap.c b/keyboards/rgbkb/zen/rev1/keymaps/default/keymap.c index e02010f193..b91ae7f922 100644 --- a/keyboards/rgbkb/zen/rev1/keymaps/default/keymap.c +++ b/keyboards/rgbkb/zen/rev1/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------. .-----------------------------------------. * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | |RGBSAI|RGBVAI|RGBSAD| RESET| [ | | ] | Pgup | Up | Pgdn |Insert| Home | + * | |RGBSAI|RGBVAI|RGBSAD| QK_BOOT| [ | | ] | Pgup | Up | Pgdn |Insert| Home | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | |RGBHUD|RGBVAD|RGBHUI| | | | | Left | Down | Right|Delete| End | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_NAV] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, RGB_SAI, RGB_VAI, RGB_SAD, RESET, KC_LBRC, KC_RBRC, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_HOME, + _______, RGB_SAI, RGB_VAI, RGB_SAD, QK_BOOT, KC_LBRC, KC_RBRC, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_HOME, _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_END, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, KC_MPLY, KC_MPRV, KC_MNXT, KC_LCTL, KC_LGUI, KC_LALT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_VOLD diff --git a/keyboards/rgbkb/zen/rev2/keymaps/default/keymap.c b/keyboards/rgbkb/zen/rev2/keymaps/default/keymap.c index a369f5399f..b67893170f 100644 --- a/keyboards/rgbkb/zen/rev2/keymaps/default/keymap.c +++ b/keyboards/rgbkb/zen/rev2/keymaps/default/keymap.c @@ -58,7 +58,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_NAV] = LAYOUT( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, RGB_SAI, RGB_VAI, RGB_SAD, RESET, KC_LBRC, KC_RBRC, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_HOME, + _______, RGB_SAI, RGB_VAI, RGB_SAD, QK_BOOT, KC_LBRC, KC_RBRC, KC_PGUP, KC_UP, KC_PGDN, KC_INS, KC_HOME, _______, RGB_HUD, RGB_VAD, RGB_HUI, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL, KC_END, KC_LSFT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MPRV, KC_MNXT, KC_LCTL, KC_LGUI, KC_LALT, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLU, KC_VOLD, diff --git a/keyboards/rgbkb/zygomorph/keymaps/default/keymap.c b/keyboards/rgbkb/zygomorph/keymaps/default/keymap.c index 7f19c2ef02..63564b7654 100644 --- a/keyboards/rgbkb/zygomorph/keymaps/default/keymap.c +++ b/keyboards/rgbkb/zygomorph/keymaps/default/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * /-----------------------------------------\ /-----------------------------------------\ * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | SAD | VAI | SAI | RESET| | | | | | | | | + * | | SAD | VAI | SAI | QK_BOOT| | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | HUD | VAD | HUI |RGBRST| | | |QWERTY|COLEMK| | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJ] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, RGBRST, _______, _______, QWERTY, COLEMAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/rgbkb/zygomorph/keymaps/default/readme.md b/keyboards/rgbkb/zygomorph/keymaps/default/readme.md index 67e68578d0..ef7831de4a 100644 --- a/keyboards/rgbkb/zygomorph/keymaps/default/readme.md +++ b/keyboards/rgbkb/zygomorph/keymaps/default/readme.md @@ -66,7 +66,7 @@ * ,-----------------------------------------. ,-----------------------------------------. * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | SAD | VAI | SAI | RESET| | | | | | | | | + * | | SAD | VAI | SAI | QK_BOOT| | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | HUD | VAD | HUI |RGBRST| | | |QWERTY|COLEMK| | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| diff --git a/keyboards/rgbkb/zygomorph/keymaps/default_oled/keymap.c b/keyboards/rgbkb/zygomorph/keymaps/default_oled/keymap.c index 8457cb54f1..48bd1a33f7 100644 --- a/keyboards/rgbkb/zygomorph/keymaps/default_oled/keymap.c +++ b/keyboards/rgbkb/zygomorph/keymaps/default_oled/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * /-----------------------------------------\ /-----------------------------------------\ * | F1 | F2 | F3 | F4 | F5 | F6 | | F7 | F8 | F9 | F10 | F11 | F12 | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | | SAD | VAI | SAI | RESET| | | | | | | | | + * | | SAD | VAI | SAI | QK_BOOT| | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | HUD | VAD | HUI |RGBRST| | | |QWERTY|COLEMK| | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -105,7 +105,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJ] = LAYOUT_ortho_5x12( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - _______, RGB_SAD, RGB_VAI, RGB_SAI, RESET, _______, _______, _______, _______, _______, _______, _______, + _______, RGB_SAD, RGB_VAI, RGB_SAI, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_VAD, RGB_HUI, RGBRST, _______, _______, QWERTY, COLEMAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, RGB_MOD, _______, _______, _______, _______, RGB_RMOD,RGB_HUD, RGB_SAD, RGB_VAD diff --git a/keyboards/rocketboard_16/keymaps/default/keymap.c b/keyboards/rocketboard_16/keymaps/default/keymap.c index 6d75d40fbd..ce26a834d0 100644 --- a/keyboards/rocketboard_16/keymaps/default/keymap.c +++ b/keyboards/rocketboard_16/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_RMOD, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_EXAM, KC_NO, KC_NO, KC_NO, KC_NO, - RESET, RGB_TOG, RGB_SPI, RGB_SPD, + QK_BOOT, RGB_TOG, RGB_SPI, RGB_SPD, KC_NO, _______, KC_NO, KC_NO ) }; diff --git a/keyboards/rocketboard_16/keymaps/via/keymap.c b/keyboards/rocketboard_16/keymaps/via/keymap.c index 6d75d40fbd..ce26a834d0 100644 --- a/keyboards/rocketboard_16/keymaps/via/keymap.c +++ b/keyboards/rocketboard_16/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_RMOD, KC_MUTE, KC_NO, KC_NO, KC_NO, KC_EXAM, KC_NO, KC_NO, KC_NO, KC_NO, - RESET, RGB_TOG, RGB_SPI, RGB_SPD, + QK_BOOT, RGB_TOG, RGB_SPI, RGB_SPD, KC_NO, _______, KC_NO, KC_NO ) }; diff --git a/keyboards/rominronin/katana60/rev1/keymaps/default/keymap.c b/keyboards/rominronin/katana60/rev1/keymaps/default/keymap.c index 1cb925889f..d0b03bf45b 100644 --- a/keyboards/rominronin/katana60/rev1/keymaps/default/keymap.c +++ b/keyboards/rominronin/katana60/rev1/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, KC_BTN1, _______, KC_P0, KC_PDOT, KC_PENT, _______, _______, _______ ), [SYMB] = LAYOUT( - 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, + QK_BOOT, _______, 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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_VOLD, KC_VOLU, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_MPRV, KC_MPLY, KC_MNXT, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, KC_BSLS, _______, diff --git a/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c b/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c index d9c9b6d4ed..9b06ebfedf 100644 --- a/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c +++ b/keyboards/rominronin/katana60/rev2/keymaps/default/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, KC_P0, _______, _______, KC_PDOT, KC_PENT, _______, _______ ), [SYMB] = LAYOUT_1_a( - 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, + QK_BOOT, _______, 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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_VOLD, KC_VOLU, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_MPRV, KC_MPLY, KC_MNXT, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, KC_BSLS, _______, diff --git a/keyboards/rominronin/katana60/rev2/keymaps/via/keymap.c b/keyboards/rominronin/katana60/rev2/keymaps/via/keymap.c index 3661e245ec..88afa6e64d 100644 --- a/keyboards/rominronin/katana60/rev2/keymaps/via/keymap.c +++ b/keyboards/rominronin/katana60/rev2/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, KC_P0, _______, _______, KC_PDOT, KC_PENT, _______, _______ ), [2] = LAYOUT_1_a( - 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, + QK_BOOT, _______, 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_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, _______, _______, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, _______, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_VOLD, KC_VOLU, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, _______, _______, KC_PLUS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_MPRV, KC_MPLY, KC_MNXT, KC_LBRC, KC_RBRC, KC_SCLN, KC_COLN, KC_BSLS, _______, diff --git a/keyboards/roseslite/keymaps/default/keymap.c b/keyboards/roseslite/keymaps/default/keymap.c index 1e28aa3b5d..22365a5e2e 100644 --- a/keyboards/roseslite/keymaps/default/keymap.c +++ b/keyboards/roseslite/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/roseslite/keymaps/via/keymap.c b/keyboards/roseslite/keymaps/via/keymap.c index a8ececf1f4..b4b455cf38 100644 --- a/keyboards/roseslite/keymaps/via/keymap.c +++ b/keyboards/roseslite/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ @@ -34,14 +34,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [2] = LAYOUT( _______, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT( _______, _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/rpiguy9907/southpaw66/keymaps/default/keymap.c b/keyboards/rpiguy9907/southpaw66/keymaps/default/keymap.c index 712a34c9be..426bd91c7e 100644 --- a/keyboards/rpiguy9907/southpaw66/keymaps/default/keymap.c +++ b/keyboards/rpiguy9907/southpaw66/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT, KC_LCTL, KC_LGUI, KC_SPC, KC_RALT, MO(1), KC_RCTL ), [1] = LAYOUT( - KC_TRNS, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/rpiguy9907/southpaw66/keymaps/via/keymap.c b/keyboards/rpiguy9907/southpaw66/keymaps/via/keymap.c index 87eccd222d..ec6f5e3e4e 100644 --- a/keyboards/rpiguy9907/southpaw66/keymaps/via/keymap.c +++ b/keyboards/rpiguy9907/southpaw66/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT, KC_LCTL, KC_LGUI, KC_SPC, MO(1), KC_RALT, KC_RCTL ), [1] = LAYOUT( - KC_TRNS, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/rubi/keymaps/default/keymap.c b/keyboards/rubi/keymaps/default/keymap.c index e0e7290dfe..d2eaf0bb07 100644 --- a/keyboards/rubi/keymaps/default/keymap.c +++ b/keyboards/rubi/keymaps/default/keymap.c @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RESET , KC_TRNS, + KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/rubi/keymaps/via/keymap.c b/keyboards/rubi/keymaps/via/keymap.c index 1e8cb70c7c..f9657a99cc 100644 --- a/keyboards/rubi/keymaps/via/keymap.c +++ b/keyboards/rubi/keymaps/via/keymap.c @@ -46,7 +46,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RESET , KC_TRNS, + KC_TRNS, QK_BOOT , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/runes/vaengr/keymaps/default/keymap.c b/keyboards/runes/vaengr/keymaps/default/keymap.c index 340cb963b3..e0ae22effc 100644 --- a/keyboards/runes/vaengr/keymaps/default/keymap.c +++ b/keyboards/runes/vaengr/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_DOUBLE] = LAYOUT( KC_SLEP, 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, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, RGB_TOG, RGB_MODE_FORWARD, RGB_HUI, RGB_SAI, RGB_VAI, 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), diff --git a/keyboards/runes/vaengr/keymaps/via/keymap.c b/keyboards/runes/vaengr/keymaps/via/keymap.c index 340cb963b3..e0ae22effc 100644 --- a/keyboards/runes/vaengr/keymaps/via/keymap.c +++ b/keyboards/runes/vaengr/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_DOUBLE] = LAYOUT( KC_SLEP, 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, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, RGB_TOG, RGB_MODE_FORWARD, RGB_HUI, RGB_SAI, RGB_VAI, 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), diff --git a/keyboards/ryloo_studio/m0110/keymaps/default/keymap.c b/keyboards/ryloo_studio/m0110/keymaps/default/keymap.c index 98b739b597..87eb3146e3 100755 --- a/keyboards/ryloo_studio/m0110/keymaps/default/keymap.c +++ b/keyboards/ryloo_studio/m0110/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( KC_GRV, 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, - RGB_TOG, _______, KC_UP, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, RESET, + RGB_TOG, _______, KC_UP, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, QK_BOOT, BL_TOGG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_BRTG, _______, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/salicylic_acid3/7skb/keymaps/default/keymap.c b/keyboards/salicylic_acid3/7skb/keymaps/default/keymap.c index c56fb76fcb..117a129a8b 100644 --- a/keyboards/salicylic_acid3/7skb/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/7skb/keymaps/default/keymap.c @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( /* Base */ //,-----------------------------------------------------| |--------------------------------------------------------------------------------. - TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + TG(_ADJUST), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/salicylic_acid3/7skb/keymaps/via/keymap.c b/keyboards/salicylic_acid3/7skb/keymaps/via/keymap.c index 7b0b76c76a..b294666966 100644 --- a/keyboards/salicylic_acid3/7skb/keymaps/via/keymap.c +++ b/keyboards/salicylic_acid3/7skb/keymaps/via/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L2] = LAYOUT( /* Base */ //,-----------------------------------------------------| |--------------------------------------------------------------------------------. - TG(_L2), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + TG(_L2), XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------| @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L3] = LAYOUT( /* Base */ //,-----------------------------------------------------| |--------------------------------------------------------------------------------. - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/default/keymap.c index e145c02e32..9501d9709c 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default/readme.md b/keyboards/salicylic_acid3/naked48/keymaps/default/readme.md index a28ad8c52c..c0624903d7 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default/readme.md +++ b/keyboards/salicylic_acid3/naked48/keymaps/default/readme.md @@ -33,5 +33,5 @@ | ~| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_RST| XXXXX| XXXXX| XXXXX| XXXXX| DEL| | ESC| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_TOG| RGB_MOD| XXXXX| C+A+D| Alt+PSCR| PSCR| | LSFT| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | RGB_VAD| RGB_VAI| RGB_HUD| RGB_HUI| RGB_SAD| RGB_SAI| -| |ADJUST| LCTRL| LALT| LGUI| LOWER| RESET| RESET| RAISE| MNXT| VOLD| VOLU| MPLY| | +| |ADJUST| LCTRL| LALT| LGUI| LOWER| QK_BOOT| QK_BOOT| RAISE| MNXT| VOLD| VOLU| MPLY| | diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c index f5d0772aa4..4804025eb8 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_nafuda/keymap.c @@ -95,7 +95,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |--------+--------+--------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_MOD, RGB_TOG, RGB_SAI, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |--------------------------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c index f6e460588c..9ede4553a8 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/default_with_setta21/keymap.c @@ -75,7 +75,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |-------+-------+-------+-------+-------+-------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, _______,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,_______, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG,_______,_______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______, RGB_MOD, RGB_TOG,_______,_______ //`------------------------------------------------------------------------------------------------------------' |-----------------------------------------------| ) }; diff --git a/keyboards/salicylic_acid3/naked48/keymaps/via/keymap.c b/keyboards/salicylic_acid3/naked48/keymaps/via/keymap.c index 8d0c6f901b..a84e7f1173 100644 --- a/keyboards/salicylic_acid3/naked48/keymaps/via/keymap.c +++ b/keyboards/salicylic_acid3/naked48/keymaps/via/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/default/keymap.c index 3a95e73244..8b1f5e9362 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/default/keymap.c @@ -86,7 +86,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,LCA(KC_DEL), //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default/readme.md b/keyboards/salicylic_acid3/naked60/keymaps/default/readme.md index c6f3342b21..459112f4a2 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default/readme.md +++ b/keyboards/salicylic_acid3/naked60/keymaps/default/readme.md @@ -49,5 +49,5 @@ | TILD| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | XXXXX| BTN1| MS_U| BTN2| XXXXX|Alt+PSCR| | LSFT| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | XXXXX| MS_L| MS_D| MS_R| XXXXX| PSCR| | LCTRL| XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| | | XXXXX| XXXXX| XXXXX| XXXXX| XXXXX| C+A+D| -| |ADJUST| LCTRL| LALT| LGUI| LOWER| RESET| RESET| RAISE| MNXT| VOLD| VOLU| MPLY| | +| |ADJUST| LCTRL| LALT| LGUI| LOWER| QK_BOOT| QK_BOOT| RAISE| MNXT| VOLD| VOLU| MPLY| | diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c index be8c9f3ec9..58f8d269c1 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_nafuda/keymap.c @@ -117,7 +117,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |--------------------------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,LCA(KC_DEL), //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c index 95a273a388..cc1cd38ff6 100644 --- a/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked60/keymaps/default_with_setta21/keymap.c @@ -92,7 +92,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------| |---------------+---------------+-------+-------| _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX,LCA(KC_DEL), RGB_MOD, RGB_TOG,_______,_______, //|--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| |-----------------------------------------------| - _______, _______, _______, _______, _______, RESET, RESET, _______, _______, _______, _______, _______ + _______, _______, _______, _______, _______, QK_BOOT, QK_BOOT, _______, _______, _______, _______, _______ //`------------------------------------------------------------------------------------------------------------' ) }; diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/default/keymap.c index b26044507e..799a6c30db 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/default/keymap.c @@ -83,7 +83,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( /* Base */ //,--------------------------------------------------------------| |--------------------------------------------------------------. - TG(_FLOCK), 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, + TG(_FLOCK), QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, //|--------+--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c index cc30e5332d..1748f00036 100644 --- a/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c +++ b/keyboards/salicylic_acid3/naked64/keymaps/default_with_setta21/keymap.c @@ -89,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_with_setta21( /* Base */ - TG(_FLOCK), 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, _______, _______, _______, _______, + TG(_FLOCK), QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_RST, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_TOG, RGB_MOD, XXXXXXX, LCA(KC_DEL), LALT(KC_PSCR), KC_PSCR, XXXXXXX, RGB_SAD, RGB_SAI, XXXXXXX, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, XXXXXXX, RGB_HUD, RGB_HUI, XXXXXXX, RGB_TOG, diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/default/keymap.c b/keyboards/salicylic_acid3/nknl7en/keymaps/default/keymap.c index f3ce52e91b..54bfb6277b 100644 --- a/keyboards/salicylic_acid3/nknl7en/keymaps/default/keymap.c +++ b/keyboards/salicylic_acid3/nknl7en/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( //,-----------------------------------------------------| |--------------------------------------------------------------------------------. - 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, KC_STOP, KC_PSCR, + QK_BOOT, 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_STOP, KC_PSCR, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/salicylic_acid3/nknl7en/keymaps/via/keymap.c b/keyboards/salicylic_acid3/nknl7en/keymaps/via/keymap.c index f31d06a22b..79ec55ef45 100644 --- a/keyboards/salicylic_acid3/nknl7en/keymaps/via/keymap.c +++ b/keyboards/salicylic_acid3/nknl7en/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_L1] = LAYOUT( //,-----------------------------------------------------| |--------------------------------------------------------------------------------. - 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, KC_STOP, KC_PSCR, + QK_BOOT, 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_STOP, KC_PSCR, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_INS, //|--------+--------+--------+--------+--------+--------| |--------+--------+--------+--------+--------+--------+--------+--------+--------| diff --git a/keyboards/sandwich/keeb68/keymaps/default/keymap.c b/keyboards/sandwich/keeb68/keymaps/default/keymap.c index 4c20b53e81..ec8283c422 100644 --- a/keyboards/sandwich/keeb68/keymaps/default/keymap.c +++ b/keyboards/sandwich/keeb68/keymaps/default/keymap.c @@ -35,6 +35,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PAUS, _______, BL_TOGG, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, KC_END, - _______, RESET, _______, _______, _______, MO(_FN), _______, _______, KC_VOLD, _______ + _______, QK_BOOT, _______, _______, _______, MO(_FN), _______, _______, KC_VOLD, _______ ) }; diff --git a/keyboards/satt/comet46/keymaps/default-rgbled/keymap.c b/keyboards/satt/comet46/keymaps/default-rgbled/keymap.c index d1e5b663dc..6c88b70bfe 100644 --- a/keyboards/satt/comet46/keymaps/default-rgbled/keymap.c +++ b/keyboards/satt/comet46/keymaps/default-rgbled/keymap.c @@ -134,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET, DVORAK, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, QK_BOOT, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/satt/comet46/keymaps/default/keymap.c b/keyboards/satt/comet46/keymaps/default/keymap.c index 7a8c29dcb9..cf2c911d4c 100644 --- a/keyboards/satt/comet46/keymaps/default/keymap.c +++ b/keyboards/satt/comet46/keymaps/default/keymap.c @@ -138,7 +138,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QWERTY, COLEMAK, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, RESET, DVORAK, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, QK_BOOT, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/satt/vision/keymaps/default/keymap.c b/keyboards/satt/vision/keymaps/default/keymap.c index d7b3b00a88..7f50dc7044 100644 --- a/keyboards/satt/vision/keymaps/default/keymap.c +++ b/keyboards/satt/vision/keymaps/default/keymap.c @@ -59,7 +59,7 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - 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, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/satt/vision/keymaps/via/keymap.c b/keyboards/satt/vision/keymaps/via/keymap.c index bacdccf80f..037ab3e382 100644 --- a/keyboards/satt/vision/keymaps/via/keymap.c +++ b/keyboards/satt/vision/keymaps/via/keymap.c @@ -56,7 +56,7 @@ const uint16_t keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT( - 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, + QK_BOOT, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/sauce/mild/keymaps/default/keymap.c b/keyboards/sauce/mild/keymaps/default/keymap.c index 4b6f63aa11..7553b11206 100644 --- a/keyboards/sauce/mild/keymaps/default/keymap.c +++ b/keyboards/sauce/mild/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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_MPLY, KC_MUTE, KC_VOLU, 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_MPRV, KC_MNXT, KC_VOLD, 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, diff --git a/keyboards/sauce/mild/keymaps/via/keymap.c b/keyboards/sauce/mild/keymaps/via/keymap.c index 01f5742d0d..3d816d127e 100644 --- a/keyboards/sauce/mild/keymaps/via/keymap.c +++ b/keyboards/sauce/mild/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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_MPLY, KC_MUTE, KC_VOLU, 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_MPRV, KC_MNXT, KC_VOLD, 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, diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c index f0d21c96bc..b65e36d9e5 100644 --- a/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, 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_INS, - RESET, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, + QK_BOOT, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, 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_MPLY, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS diff --git a/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c index 708fc51d3d..497a4964ea 100644 --- a/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c +++ b/keyboards/sawnsprojects/vcl65/solder/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_TRNS, 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_INS, - RESET, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, + QK_BOOT, RGB_TOG, RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, 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_MPLY, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS diff --git a/keyboards/scatter42/keymaps/default/keymap.c b/keyboards/scatter42/keymaps/default/keymap.c index 53e0d1e5a7..8f3da5498b 100644 --- a/keyboards/scatter42/keymaps/default/keymap.c +++ b/keyboards/scatter42/keymaps/default/keymap.c @@ -27,5 +27,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [0] = LAYOUT(KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_LCTL, KC_LSFT, KC_TAB, KC_LGUI, MO(1), KC_SPC, KC_ENT, MO(2), KC_RALT, KC_BSPC, KC_RSFT, KC_RCTL), [1] = LAYOUT(KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_F11, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_F12, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_LCTL, KC_LSFT, KC_ESC, KC_LGUI, KC_TRNS, KC_SPC, KC_ENT, MO(3), KC_RALT, KC_DEL, KC_RSFT, KC_PSCR), [2] = LAYOUT(KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_NO, KC_NO, KC_NO, KC_BSLS, KC_GRV, KC_MINS, KC_EQL, KC_QUOT, KC_LCBR, KC_RCBR, KC_NO, KC_NO, KC_NO, KC_PIPE, KC_TILD, KC_UNDS, KC_PLUS, KC_DQUO, KC_LBRC, KC_RBRC, KC_LCTL, KC_LSFT, KC_ESC, KC_LGUI, MO(3), KC_SPC, KC_ENT, KC_TRNS, KC_RALT, KC_DEL, KC_RSFT, KC_RCTL), - [3] = LAYOUT(KC_VOLU, RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU, KC_VOLD, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID, KC_MUTE, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO) + [3] = LAYOUT(KC_VOLU, QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRIU, KC_VOLD, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_NO, KC_NO, KC_NO, KC_BRID, KC_MUTE, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_TRNS, KC_NO, KC_NO, KC_NO, KC_NO) }; diff --git a/keyboards/sck/m0116b/keymaps/default/keymap.c b/keyboards/sck/m0116b/keymaps/default/keymap.c index 8a6f831fe6..56bb777f7a 100644 --- a/keyboards/sck/m0116b/keymaps/default/keymap.c +++ b/keyboards/sck/m0116b/keymaps/default/keymap.c @@ -48,7 +48,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Keymap Layer 1: (Layer 1) Layer 1 * ,---------------------------------------------------------------------------------. - * | |RESET| | + * | |QK_BOOT| | * `---------------------------------------------------------------------------------' * ,-----------------------------------------------------------. .-------------------. * | |F1 |F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12| | | | | | | @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' `-------------------' */ [1] = LAYOUT_m0116_ansi( /* Layer 1 */ - RESET, + QK_BOOT, KC_TRNS, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/sendyyeah/75pixels/keymaps/default/keymap.c b/keyboards/sendyyeah/75pixels/keymaps/default/keymap.c index 98f71c4de4..d18f4f4c25 100644 --- a/keyboards/sendyyeah/75pixels/keymaps/default/keymap.c +++ b/keyboards/sendyyeah/75pixels/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [LW] = LAYOUT_ortho_5x15( - RESET , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_DEL , _______, _______, _______, + QK_BOOT , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_DEL , _______, _______, _______, _______, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/sendyyeah/75pixels/keymaps/via/keymap.c b/keyboards/sendyyeah/75pixels/keymaps/via/keymap.c index 98f71c4de4..d18f4f4c25 100644 --- a/keyboards/sendyyeah/75pixels/keymaps/via/keymap.c +++ b/keyboards/sendyyeah/75pixels/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [LW] = LAYOUT_ortho_5x15( - RESET , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_DEL , _______, _______, _______, + QK_BOOT , KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , KC_DEL , _______, _______, _______, _______, KC_F11 , KC_F12 , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/senselessclay/had60/keymaps/default/keymap.c b/keyboards/senselessclay/had60/keymaps/default/keymap.c index d9c4f458c8..358d75be4d 100644 --- a/keyboards/senselessclay/had60/keymaps/default/keymap.c +++ b/keyboards/senselessclay/had60/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [2] = LAYOUT_all( - MAGIC_NO_GUI, 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, RESET, + MAGIC_NO_GUI, 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, QK_BOOT, MAGIC_UNNO_GUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_RGHT, 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_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/senselessclay/had60/keymaps/iso/keymap.c b/keyboards/senselessclay/had60/keymaps/iso/keymap.c index b35af822d9..b46a6e2c6d 100644 --- a/keyboards/senselessclay/had60/keymaps/iso/keymap.c +++ b/keyboards/senselessclay/had60/keymaps/iso/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [2] = LAYOUT_all( - MAGIC_NO_GUI, 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, RESET, + MAGIC_NO_GUI, 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, QK_BOOT, MAGIC_UNNO_GUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_RGHT, 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_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/senselessclay/had60/keymaps/via/keymap.c b/keyboards/senselessclay/had60/keymaps/via/keymap.c index 8ea437aa2a..b8e85c81d7 100644 --- a/keyboards/senselessclay/had60/keymaps/via/keymap.c +++ b/keyboards/senselessclay/had60/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_END, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_2] = LAYOUT_all( - MAGIC_NO_GUI, 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, RESET, + MAGIC_NO_GUI, 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, QK_BOOT, MAGIC_UNNO_GUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_UP, 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_LEFT, KC_RGHT, 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_DOWN, KC_TRNS, KC_TRNS, diff --git a/keyboards/sentraq/s65_plus/keymaps/default/keymap.c b/keyboards/sentraq/s65_plus/keymaps/default/keymap.c index 0db09d2b46..e912a8bbf7 100644 --- a/keyboards/sentraq/s65_plus/keymaps/default/keymap.c +++ b/keyboards/sentraq/s65_plus/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_AL] = LAYOUT_ansi( - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_STEP, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, KC_VOLU, _______, diff --git a/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c b/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c index bb2d1fa2ba..3e5ebe5748 100644 --- a/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c +++ b/keyboards/sentraq/s65_plus/keymaps/iso/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_AL] = LAYOUT_iso( - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_STEP, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, KC_VOLU, _______, diff --git a/keyboards/sets3n/kk980/keymaps/default/keymap.c b/keyboards/sets3n/kk980/keymaps/default/keymap.c index f4255f4505..8118ce639c 100644 --- a/keyboards/sets3n/kk980/keymaps/default/keymap.c +++ b/keyboards/sets3n/kk980/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_DEC, 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, 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 diff --git a/keyboards/sets3n/kk980/keymaps/via/keymap.c b/keyboards/sets3n/kk980/keymaps/via/keymap.c index f4255f4505..8118ce639c 100644 --- a/keyboards/sets3n/kk980/keymaps/via/keymap.c +++ b/keyboards/sets3n/kk980/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_TOGG, BL_DEC, 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, 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 diff --git a/keyboards/shapeshifter4060/keymaps/default/keymap.c b/keyboards/shapeshifter4060/keymaps/default/keymap.c index e390b5a36f..88ea5a7138 100644 --- a/keyboards/shapeshifter4060/keymaps/default/keymap.c +++ b/keyboards/shapeshifter4060/keymaps/default/keymap.c @@ -86,6 +86,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______ , BWSR_BK , TAB_LFT , KC_UP , TAB_RGT , BWSR_FW , KC_MUTE , XXXXXXX , SCR_LFT , SCR_FUL , SCR_RGT , _______ , _______ , XXXXXXX , KC_LEFT , KC_DOWN , KC_RGHT , KC_PGUP , KC_VOLU , SLACKUP , XXXXXXX , XXXXXXX , TO_QW , _______ , _______ , XXXXXXX , XXXXXXX , XXXXXXX , XXXXXXX , KC_PGDN , KC_VOLD , SLACKDN , XXXXXXX , XXXXXXX , TO_DV , _______ , - _______ , RESET , _______ , _______ , _LAYER_ , KC_BSPC , _______ , KC_LSFT , KC_LGUI , KC_LALT , KC_LCTL , _______ + _______ , QK_BOOT , _______ , _______ , _LAYER_ , KC_BSPC , _______ , KC_LSFT , KC_LGUI , KC_LALT , KC_LCTL , _______ ) }; diff --git a/keyboards/sidderskb/majbritt/rev1/keymaps/default/keymap.c b/keyboards/sidderskb/majbritt/rev1/keymaps/default/keymap.c index 21cdd04ed4..529299e456 100644 --- a/keyboards/sidderskb/majbritt/rev1/keymaps/default/keymap.c +++ b/keyboards/sidderskb/majbritt/rev1/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LALT, KC_SPC, MO(1), KC_BSPC, KC_RALT, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/signum/3_0/keymaps/default/keymap.c b/keyboards/signum/3_0/keymaps/default/keymap.c index 15cf215305..ed31c54760 100644 --- a/keyboards/signum/3_0/keymaps/default/keymap.c +++ b/keyboards/signum/3_0/keymaps/default/keymap.c @@ -731,7 +731,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ------------------------------------------------- */ LAYOUT_ortho_4x12( - KC_TRNS, KC_NO, KC_MPLY, KC_VOLU, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, RESET, KC_PWR, + KC_TRNS, KC_NO, KC_MPLY, KC_VOLU, KC_VOLU, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, QK_BOOT, KC_PWR, KC_TRNS, KC_NO, KC_MPRV, KC_MUTE, KC_MNXT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_SLEP, KC_TRNS, MO(5), KC_NO, KC_VOLD, KC_VOLD, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, TG(5), KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/signum/3_0/keymaps/default/layout.py b/keyboards/signum/3_0/keymaps/default/layout.py index 1e43e25c57..c4d9546518 100644 --- a/keyboards/signum/3_0/keymaps/default/layout.py +++ b/keyboards/signum/3_0/keymaps/default/layout.py @@ -369,7 +369,7 @@ qmk_dict = { ">>|": "KC_MNXT", "|<<": "KC_MPRV", "play/ps": "KC_MPLY", "Bri +": "KC_BRIU", "Bri -": "KC_BRID", # Quantum Keycodes - "_reset": "RESET", "_debug": "DEBUG", "_eep_re": "EEP_RST", + "_reset": "QK_BOOT", "_debug": "DEBUG", "_eep_re": "EEP_RST", # Audio Keys missing # Backlighting "Led 0": "BL_TOGG", "Led +": "BL_INC", "Led -": "BL_DEC", "Led ~": "BL_BRTG", diff --git a/keyboards/silverbullet44/keymaps/default/keymap.c b/keyboards/silverbullet44/keymaps/default/keymap.c index af8078608d..ceaee389c7 100644 --- a/keyboards/silverbullet44/keymaps/default/keymap.c +++ b/keyboards/silverbullet44/keymaps/default/keymap.c @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------' '-----------------------------' */ [_CURSOL] = LAYOUT( - RESET , KC_F1, KC_F2, KC_PGUP, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, RESET, + QK_BOOT , KC_F1, KC_F2, KC_PGUP, KC_F4, KC_F5, KC_F6, KC_F7, KC_UP, KC_F9, KC_F10, QK_BOOT, _______, KC_TILD, KC_HOME, KC_PGDN, KC_END, KC_LPRN, KC_RPRN, KC_LEFT, KC_DOWN, KC_RGHT, KC_PIPE, KC_F11, _______, KC_GRV, C(KC_LEFT), KC_F3, C(KC_RGHT), S(ALTAB), ALTAB, LCA(KC_LEFT), KC_F8, LCA(KC_RGHT), KC_BSLS, RGBRST, _______, _______, C(KC_SPC), MO(_ADJUST), _______, _______, _______, _______ diff --git a/keyboards/singa/keymaps/default/keymap.c b/keyboards/singa/keymaps/default/keymap.c index 20936116b1..558a1e4db6 100644 --- a/keyboards/singa/keymaps/default/keymap.c +++ b/keyboards/singa/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_wkl( /* Base */ - RESET, 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, + QK_BOOT, 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_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, KC_TRNS, KC_CAPS, 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, diff --git a/keyboards/singa/keymaps/via/keymap.c b/keyboards/singa/keymaps/via/keymap.c index 68a800a0b9..f3312a1a92 100644 --- a/keyboards/singa/keymaps/via/keymap.c +++ b/keyboards/singa/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c b/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c index 96c2351e89..08a6086139 100644 --- a/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c +++ b/keyboards/skippys_custom_pcs/rooboard65/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c index 3e071bd079..89576787ff 100644 --- a/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c +++ b/keyboards/skippys_custom_pcs/rooboard65/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_65_ansi( KC_GESC, 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_TRNS, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, RESET, KC_TRNS, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUSE, QK_BOOT, KC_TRNS, KC_TRNS, RGB_SPI, RGB_SPD, 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, NK_TOGG, 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 diff --git a/keyboards/slz40/keymaps/default/keymap.c b/keyboards/slz40/keymaps/default/keymap.c index 9212d792e8..5e35132110 100644 --- a/keyboards/slz40/keymaps/default/keymap.c +++ b/keyboards/slz40/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_TRNS, KC_TRNS, KC_SPACE, KC_QUOT, KC_HOME, KC_PGDN, KC_END ), [_FN2] = LAYOUT( - KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, RESET, + KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, QK_BOOT, KC_ESC, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_PIPE, KC_BSPC, KC_TAB, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_BSLS, KC_UNDS, KC_PLUS, KC_NO, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_LCBR, KC_RCBR, KC_COMM, KC_DOT, KC_VOLU, KC_RSFT, diff --git a/keyboards/smk60/keymaps/default/keymap.c b/keyboards/smk60/keymaps/default/keymap.c index 95d2fb0f26..70f913c82b 100644 --- a/keyboards/smk60/keymaps/default/keymap.c +++ b/keyboards/smk60/keymaps/default/keymap.c @@ -22,7 +22,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, MO(1), KC_RCTL), [1] = LAYOUT_60_ansi( 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,_______, - RESET, RGB_TOG,RGB_MOD,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, + QK_BOOT, RGB_TOG,RGB_MOD,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,KC_LEFT,KC_DOWN,KC_UP,KC_RIGHT,_______,_______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______,_______,_______,_______), diff --git a/keyboards/sneakbox/aliceclone/keymaps/default/keymap.c b/keyboards/sneakbox/aliceclone/keymaps/default/keymap.c index a318dabede..c9b37e0134 100644 --- a/keyboards/sneakbox/aliceclone/keymaps/default/keymap.c +++ b/keyboards/sneakbox/aliceclone/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_alice_split_bs( KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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), }; diff --git a/keyboards/sneakbox/aliceclone/keymaps/via/keymap.c b/keyboards/sneakbox/aliceclone/keymaps/via/keymap.c index 8092f46fcb..1d4248da5e 100644 --- a/keyboards/sneakbox/aliceclone/keymaps/via/keymap.c +++ b/keyboards/sneakbox/aliceclone/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_alice_split_bs( KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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), [_L3] = LAYOUT_alice_split_bs( diff --git a/keyboards/sneakbox/aliceclonergb/keymaps/default/keymap.c b/keyboards/sneakbox/aliceclonergb/keymaps/default/keymap.c index 9dd7ee5eae..f451ffca47 100644 --- a/keyboards/sneakbox/aliceclonergb/keymaps/default/keymap.c +++ b/keyboards/sneakbox/aliceclonergb/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_alice_split_bs( KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_MOD, RGB_TOG, - RESET, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, + QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; diff --git a/keyboards/sneakbox/aliceclonergb/keymaps/via/keymap.c b/keyboards/sneakbox/aliceclonergb/keymaps/via/keymap.c index 0f1e600bd1..bdd6deb5f8 100644 --- a/keyboards/sneakbox/aliceclonergb/keymaps/via/keymap.c +++ b/keyboards/sneakbox/aliceclonergb/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_alice_split_bs( KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_MOD, RGB_TOG, - RESET, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, + QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_L3] = LAYOUT_alice_split_bs( diff --git a/keyboards/sneakbox/ava/keymaps/default/keymap.c b/keyboards/sneakbox/ava/keymaps/default/keymap.c index 3de4f41577..3c284266ca 100644 --- a/keyboards/sneakbox/ava/keymaps/default/keymap.c +++ b/keyboards/sneakbox/ava/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), }; diff --git a/keyboards/sneakbox/ava/keymaps/via/keymap.c b/keyboards/sneakbox/ava/keymaps/via/keymap.c index 2888fc67b9..4e994aad66 100644 --- a/keyboards/sneakbox/ava/keymaps/via/keymap.c +++ b/keyboards/sneakbox/ava/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD, RGB_MOD, RGB_TOG, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, RGB_VAI, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_SAD, RGB_SAI, KC_TRNS, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_L3] = LAYOUT_ava_split_bs( 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, diff --git a/keyboards/sneakbox/disarray/ortho/keymaps/default/keymap.c b/keyboards/sneakbox/disarray/ortho/keymaps/default/keymap.c index 020f01d60d..b978f78468 100644 --- a/keyboards/sneakbox/disarray/ortho/keymaps/default/keymap.c +++ b/keyboards/sneakbox/disarray/ortho/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, LT(1,KC_SPC), KC_SPC, KC_SPC, LT(2,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_P0, KC_P0, KC_PDOT, KC_PENT), [_FN] = LAYOUT( KC_TRNS, - KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, 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_HOME, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/sneakbox/disarray/ortho/keymaps/via/keymap.c b/keyboards/sneakbox/disarray/ortho/keymaps/via/keymap.c index ed72fcbfbe..51e2615fdf 100644 --- a/keyboards/sneakbox/disarray/ortho/keymaps/via/keymap.c +++ b/keyboards/sneakbox/disarray/ortho/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, KC_LCTL, KC_LALT, KC_LGUI, LT(1,KC_SPC), KC_SPC, KC_SPC, LT(2,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_P0, KC_P0, KC_PDOT, KC_PENT), [_FN] = LAYOUT( KC_TRNS, - KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_LPRN, KC_RPRN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_TRNS, KC_TRNS, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, 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_HOME, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/sneakbox/disarray/staggered/keymaps/default/keymap.c b/keyboards/sneakbox/disarray/staggered/keymaps/default/keymap.c index 3eedd078cd..46303d35e1 100644 --- a/keyboards/sneakbox/disarray/staggered/keymaps/default/keymap.c +++ b/keyboards/sneakbox/disarray/staggered/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LGUI, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT( 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, RESET, + 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/sneakbox/disarray/staggered/keymaps/via/keymap.c b/keyboards/sneakbox/disarray/staggered/keymaps/via/keymap.c index 2637d1b03f..25d0d7afc1 100644 --- a/keyboards/sneakbox/disarray/staggered/keymaps/via/keymap.c +++ b/keyboards/sneakbox/disarray/staggered/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_LGUI, KC_LEFT, KC_DOWN, KC_RGHT), [_FN] = LAYOUT( 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, RESET, + 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/sofle/keymaps/default/keymap.c b/keyboards/sofle/keymaps/default/keymap.c index 1d3a02b450..94e7d8b3a6 100644 --- a/keyboards/sofle/keymaps/default/keymap.c +++ b/keyboards/sofle/keymaps/default/keymap.c @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------. ,-----------------------------------------. * | | | | | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RESET| |QWERTY|COLEMAK| | | | | | | | | | + * | QK_BOOT| |QWERTY|COLEMAK| | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | |MACWIN| | | |-------. ,-------| | VOLDO| MUTE | VOLUP| | | * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------| @@ -128,7 +128,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( XXXXXXX , XXXXXXX, XXXXXXX , XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - RESET , XXXXXXX,KC_QWERTY,KC_COLEMAK,CG_TOGG,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT , XXXXXXX,KC_QWERTY,KC_COLEMAK,CG_TOGG,XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX,CG_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/soup10/keymaps/default/keymap.c b/keyboards/soup10/keymaps/default/keymap.c index 5379a15095..00813ac5c4 100644 --- a/keyboards/soup10/keymaps/default/keymap.c +++ b/keyboards/soup10/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F20, KC_F21, MO(_FN)), [_FN] = LAYOUT( - RESET, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c b/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c index 0af19b3587..7fc1aaef00 100644 --- a/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c +++ b/keyboards/sowbug/ansi_tkl/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, RESET , + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, _______, QK_BOOT , _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MSTP, KC_VOLU, _______, RGB_SPD, RGB_VAI, RGB_SPI, RGB_HUI, RGB_SAI, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MNXT, KC_VOLD, _______, RGB_RMOD,RGB_VAD, RGB_MOD, RGB_HUD, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/soy20/keymaps/default/keymap.c b/keyboards/soy20/keymaps/default/keymap.c index 0ab505eeb8..e9e31ad1ef 100644 --- a/keyboards/soy20/keymaps/default/keymap.c +++ b/keyboards/soy20/keymaps/default/keymap.c @@ -14,6 +14,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RESET), + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT), }; diff --git a/keyboards/soy20/keymaps/via/keymap.c b/keyboards/soy20/keymaps/via/keymap.c index fde63da13a..1678fcd34a 100644 --- a/keyboards/soy20/keymaps/via/keymap.c +++ b/keyboards/soy20/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, RESET), + KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT), [2] = LAYOUT_ortho_5x4( KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/spaceholdings/nebula68/keymaps/default/keymap.c b/keyboards/spaceholdings/nebula68/keymaps/default/keymap.c index da4479f89b..3d27b48229 100755 --- a/keyboards/spaceholdings/nebula68/keymaps/default/keymap.c +++ b/keyboards/spaceholdings/nebula68/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_68_ansi( /* FN */ KC_GRV, 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_INS, KC_PGUP, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_DEL, KC_PGDN, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_DEL, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/spaceholdings/nebula68/keymaps/via/keymap.c b/keyboards/spaceholdings/nebula68/keymaps/via/keymap.c index da4479f89b..3d27b48229 100755 --- a/keyboards/spaceholdings/nebula68/keymaps/via/keymap.c +++ b/keyboards/spaceholdings/nebula68/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_68_ansi( /* FN */ KC_GRV, 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_INS, KC_PGUP, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_DEL, KC_PGDN, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_DEL, KC_PGDN, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, S1_DEC, S1_INC, S2_DEC, S2_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EF_DEC, EF_INC, H1_DEC, H1_INC, H2_DEC, H2_INC, BR_DEC, BR_INC, ES_DEC, ES_INC, KC_TRNS, KC_TRNS, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/spaceman/pancake/rev1/keymaps/default/keymap.c b/keyboards/spaceman/pancake/rev1/keymaps/default/keymap.c index cebc6fccba..682e1ae382 100644 --- a/keyboards/spaceman/pancake/rev1/keymaps/default/keymap.c +++ b/keyboards/spaceman/pancake/rev1/keymaps/default/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ortho_4x12( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/spaceman/pancake/rev1/keymaps/via/keymap.c b/keyboards/spaceman/pancake/rev1/keymaps/via/keymap.c index a0cda2ee7c..ed8cd28521 100644 --- a/keyboards/spaceman/pancake/rev1/keymaps/via/keymap.c +++ b/keyboards/spaceman/pancake/rev1/keymaps/via/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_FN] = LAYOUT_ortho_4x12( - RESET, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/spiderisland/split78/keymaps/default/keymap.c b/keyboards/spiderisland/split78/keymaps/default/keymap.c index 761648d958..7841d41e1d 100644 --- a/keyboards/spiderisland/split78/keymaps/default/keymap.c +++ b/keyboards/spiderisland/split78/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, TT(_FN), KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [_FN] = LAYOUT( - RESET, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, + QK_BOOT, KC_F13, KC_F14, KC_F15, KC_F16, KC_F17, KC_F18, KC_F19, KC_F20, KC_F21, KC_F22, KC_F23, KC_F24, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_DEC, BL_INC, KC_DEL, KC_NLCK, XXXXXXX, KC_UP, XXXXXXX, XXXXXXX, XXXXXXX, KC_P7, KC_P8, KC_P9, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_TOGG, KC_LEFT, KC_DOWN, KC_RGHT, XXXXXXX, XXXXXXX, KC_P4, KC_P5, KC_P6, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, diff --git a/keyboards/splitkb/zima/keymaps/default/keymap.c b/keyboards/splitkb/zima/keymaps/default/keymap.c index 33483c2938..fba4ad3b1b 100644 --- a/keyboards/splitkb/zima/keymaps/default/keymap.c +++ b/keyboards/splitkb/zima/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P1, KC_P2, KC_P3 ), [1] = LAYOUT_ortho_4x3( /* Layer 1 */ - RESET, _______, XXXXXXX, + QK_BOOT, _______, XXXXXXX, AU_ON, AU_OFF, XXXXXXX, CK_TOGG, XXXXXXX, CK_UP, CK_RST, XXXXXXX, CK_DOWN diff --git a/keyboards/splitkb/zima/keymaps/via/keymap.c b/keyboards/splitkb/zima/keymaps/via/keymap.c index e9fb001bbe..3a360cd9f7 100644 --- a/keyboards/splitkb/zima/keymaps/via/keymap.c +++ b/keyboards/splitkb/zima/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P1, KC_P2, KC_P3 ), [1] = LAYOUT_ortho_4x3(/* Layer 1 */ - RESET, _______, XXXXXXX, + QK_BOOT, _______, XXXXXXX, AU_ON, AU_OFF, XXXXXXX, CK_TOGG, XXXXXXX, CK_UP, CK_RST, XXXXXXX, CK_DOWN diff --git a/keyboards/splitty/keymaps/default/keymap.c b/keyboards/splitty/keymaps/default/keymap.c index e6075339b0..b42a8bd384 100644 --- a/keyboards/splitty/keymaps/default/keymap.c +++ b/keyboards/splitty/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT( //,-------+-------+-------+-------+-------+-------+-------. ,-------+-------+-------+-------+-------+-------+-------. - _______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, RESET , + _______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______, QK_BOOT , //|-------+-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------+-------| _______,_______, KC_7 , KC_8 , KC_9 ,_______,_______, _______,KC_DEL ,KC_PGUP, KC_UP ,KC_PGDN,_______,_______, //|-------+-------+-------+-------+-------+-------| | | |-------+-------+-------+-------+-------+-------| diff --git a/keyboards/studiokestra/bourgeau/keymaps/default/keymap.c b/keyboards/studiokestra/bourgeau/keymaps/default/keymap.c index 62e3209582..479b6cc6be 100644 --- a/keyboards/studiokestra/bourgeau/keymaps/default/keymap.c +++ b/keyboards/studiokestra/bourgeau/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT_75_ansi_rwkl( /* FN */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/studiokestra/bourgeau/keymaps/via/keymap.c b/keyboards/studiokestra/bourgeau/keymaps/via/keymap.c index c1604b5633..fa1e40e4f6 100644 --- a/keyboards/studiokestra/bourgeau/keymaps/via/keymap.c +++ b/keyboards/studiokestra/bourgeau/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT ), [1] = LAYOUT_75_ansi_rwkl( /* FN */ - RESET, 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, + QK_BOOT, 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, 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, @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [2] = LAYOUT_75_ansi_rwkl( /* Layer 3 */ - RESET, 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, + QK_BOOT, 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, 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, @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), [3] = LAYOUT_75_ansi_rwkl( /* Layer 3 */ - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/studiokestra/cascade/keymaps/default/keymap.c b/keyboards/studiokestra/cascade/keymaps/default/keymap.c index 9c9b9345bf..783c2ac15a 100644 --- a/keyboards/studiokestra/cascade/keymaps/default/keymap.c +++ b/keyboards/studiokestra/cascade/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/studiokestra/cascade/keymaps/default_tsangan_hhkb/keymap.c b/keyboards/studiokestra/cascade/keymaps/default_tsangan_hhkb/keymap.c index 42f300fca8..a5cfe430cd 100644 --- a/keyboards/studiokestra/cascade/keymaps/default_tsangan_hhkb/keymap.c +++ b/keyboards/studiokestra/cascade/keymaps/default_tsangan_hhkb/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_RCTL ), [_FN] = LAYOUT_60_tsangan_hhkb( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/studiokestra/cascade/keymaps/via/keymap.c b/keyboards/studiokestra/cascade/keymaps/via/keymap.c index 4a971c4de5..3ef3479995 100644 --- a/keyboards/studiokestra/cascade/keymaps/via/keymap.c +++ b/keyboards/studiokestra/cascade/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/studiokestra/galatea/keymaps/default/keymap.c b/keyboards/studiokestra/galatea/keymaps/default/keymap.c index 8224c98751..974f59607c 100644 --- a/keyboards/studiokestra/galatea/keymaps/default/keymap.c +++ b/keyboards/studiokestra/galatea/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/studiokestra/galatea/keymaps/via/keymap.c b/keyboards/studiokestra/galatea/keymaps/via/keymap.c index 6d49b79bef..7733e59737 100644 --- a/keyboards/studiokestra/galatea/keymaps/via/keymap.c +++ b/keyboards/studiokestra/galatea/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTRL, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN1] = LAYOUT_all( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/studiokestra/nue/keymaps/default/keymap.c b/keyboards/studiokestra/nue/keymaps/default/keymap.c index b61ab47d45..513e78393f 100644 --- a/keyboards/studiokestra/nue/keymaps/default/keymap.c +++ b/keyboards/studiokestra/nue/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/studiokestra/nue/keymaps/via/keymap.c b/keyboards/studiokestra/nue/keymaps/via/keymap.c index 56e64b7c2d..5990f1ba89 100644 --- a/keyboards/studiokestra/nue/keymaps/via/keymap.c +++ b/keyboards/studiokestra/nue/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_MENU, KC_RCTL), [_FN1] = LAYOUT_all( 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, RESET, 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, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/subatomic/keymaps/default/keymap.c b/keyboards/subatomic/keymaps/default/keymap.c index e0fc52b70e..00a60bc2a0 100644 --- a/keyboards/subatomic/keymaps/default/keymap.c +++ b/keyboards/subatomic/keymaps/default/keymap.c @@ -144,7 +144,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT_ortho_5x14_1x2uC( KC_TRNS, 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, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_TRNS, + KC_TRNS, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, KC_TRNS, KC_TRNS, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, KC_TRNS, KC_TRNS, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, _______, _______, _______, _______, _______, KC_TRNS, KC_TRNS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_TRNS diff --git a/keyboards/switchplate/southpaw_65/keymaps/default/keymap.c b/keyboards/switchplate/southpaw_65/keymaps/default/keymap.c index 4be4bb5e7a..57fe92b1d7 100644 --- a/keyboards/switchplate/southpaw_65/keymaps/default/keymap.c +++ b/keyboards/switchplate/southpaw_65/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ _______, _______, _______, _______, KC_GRV, 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_DEL, KC_INS, /* ├─────────┼─────────┼─────────┼─────────┼─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴─────────┼─────────┤ */ - _______, _______, _______, _______, RESET, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┼─────────┼─────────┼─────────┼──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬───────────┼─────────┤ */ _______, _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, /* ├─────────┼─────────┼─────────┼─────────┼───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┼─────────┤ */ diff --git a/keyboards/switchplate/southpaw_65/keymaps/default_ansi/keymap.c b/keyboards/switchplate/southpaw_65/keymaps/default_ansi/keymap.c index bdd2d5129e..ac049cbc40 100644 --- a/keyboards/switchplate/southpaw_65/keymaps/default_ansi/keymap.c +++ b/keyboards/switchplate/southpaw_65/keymaps/default_ansi/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ _______, _______, _______, _______, KC_GRV, 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_INS, /* ├─────────┼─────────┼─────────┼─────────┼─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ - _______, _______, _______, _______, RESET, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┼─────────┼─────────┤ ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──────────────├─────────┤ */ _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, EEP_RST, _______, /* ├─────────┼─────────┼─────────┼─────────┼─────────────────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───────────┬─────────┼─────────┤ */ diff --git a/keyboards/switchplate/southpaw_65/keymaps/default_iso/keymap.c b/keyboards/switchplate/southpaw_65/keymaps/default_iso/keymap.c index a8f080ca94..75059041f4 100644 --- a/keyboards/switchplate/southpaw_65/keymaps/default_iso/keymap.c +++ b/keyboards/switchplate/southpaw_65/keymaps/default_iso/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬───────────────────┬─────────┐ */ _______, _______, _______, _______, KC_GRV, 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_INS, /* ├─────────┼─────────┼─────────┼─────────┼─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ - _______, _______, _______, _______, RESET, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, BL_TOGG, BL_INC, BL_DEC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┼─────────┼─────────┤ ├──────────────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬──────┴──┬ ├─────────┤ */ _______, _______, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, _______, _______, _______, _______, _______, _______, _______, EEP_RST, _______, /* ├─────────┼─────────┼─────────┼─────────┼───────────┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴───┬─────┴─────────┴─┬─────────┼─────────┤ */ diff --git a/keyboards/switchplate/southpaw_fullsize/keymaps/default/keymap.c b/keyboards/switchplate/southpaw_fullsize/keymaps/default/keymap.c index 185c98516e..e2496202df 100644 --- a/keyboards/switchplate/southpaw_fullsize/keymaps/default/keymap.c +++ b/keyboards/switchplate/southpaw_fullsize/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_all ( - _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/switchplate/southpaw_fullsize/keymaps/default_wkl/keymap.c b/keyboards/switchplate/southpaw_fullsize/keymaps/default_wkl/keymap.c index e66da98325..39238e1286 100644 --- a/keyboards/switchplate/southpaw_fullsize/keymaps/default_wkl/keymap.c +++ b/keyboards/switchplate/southpaw_fullsize/keymaps/default_wkl/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_ansi_wkl ( - _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/switchplate/switchplate910/keymaps/default/keymap.c b/keyboards/switchplate/switchplate910/keymaps/default/keymap.c index 5277a0dc00..6cc14d5901 100644 --- a/keyboards/switchplate/switchplate910/keymaps/default/keymap.c +++ b/keyboards/switchplate/switchplate910/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_all( /* L1 */ KC_GRV, 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_INS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI ), diff --git a/keyboards/switchplate/switchplate910/keymaps/via/keymap.c b/keyboards/switchplate/switchplate910/keymaps/via/keymap.c index c278772543..dd56159af8 100644 --- a/keyboards/switchplate/switchplate910/keymaps/via/keymap.c +++ b/keyboards/switchplate/switchplate910/keymaps/via/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT_all( /* L1 */ KC_GRV, 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_INS, KC_TRNS, KC_TRNS, KC_MPLY, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAI, - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, KC_VOLD, KC_VOLU, KC_TRNS, RGB_MOD, RGB_SAI, RGB_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUD, RGB_SAD, RGB_HUI ), diff --git a/keyboards/sx60/keymaps/default/keymap.c b/keyboards/sx60/keymaps/default/keymap.c index b6747c253c..9e730fa3e7 100755 --- a/keyboards/sx60/keymaps/default/keymap.c +++ b/keyboards/sx60/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, 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_PGUP, KC_UP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_LPRN, KC_RPRN, KC_GRV, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/sx60/keymaps/via/keymap.c b/keyboards/sx60/keymaps/via/keymap.c index 92a305eca4..ac1034e57e 100755 --- a/keyboards/sx60/keymaps/via/keymap.c +++ b/keyboards/sx60/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ansi_split_bs_rshift( - 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, _______, _______, + QK_BOOT, 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_PGUP, KC_UP, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, KC_MINS, KC_LPRN, KC_RPRN, KC_GRV, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/synapse/keymaps/default/keymap.c b/keyboards/synapse/keymaps/default/keymap.c index 85ca4c628e..adaa51bddb 100644 --- a/keyboards/synapse/keymaps/default/keymap.c +++ b/keyboards/synapse/keymaps/default/keymap.c @@ -50,7 +50,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_default( - RESET, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, KC_TRNS, + QK_BOOT, KC_TRNS, KC_HOME, KC_UP, KC_END, KC_PGUP, KC_F1, KC_F2, KC_F3, KC_F4, KC_BSPC, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RIGHT, KC_PGDN, KC_F4, KC_F5, KC_F6, KC_F7, KC_TAB, KC_LCAP, KC_TRNS, KC_MPRV, KC_MPLY, KC_MNXT, KC_TRNS, KC_F9, KC_F10, KC_F11, KC_F12, KC_ENT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/system76/launch_1/keymaps/default/keymap.c b/keyboards/system76/launch_1/keymaps/default/keymap.c index f9f86b6584..1da2fbf4bc 100644 --- a/keyboards/system76/launch_1/keymaps/default/keymap.c +++ b/keyboards/system76/launch_1/keymaps/default/keymap.c @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Layer 1, function layer _________________________________________________________________________________________________________________________________ ________ | | | | | | | | | | | | | | || PLAY/ | -| RESET | | | | | | | | | | | | | || PAUSE | +| QK_BOOT | | | | | | | | | | | | | || PAUSE | |________|________|________|________|________|________|________|________|________|________|________|________|________|____________||________| | | | | | | | | | | | LED | LED | LED | || VOLUME | | | | | | | | | | | | TOGGLE | DOWN | UP | || UP | @@ -71,12 +71,12 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { | | | | | | | | | | | HOME | PGDN | END | |____________|________|_______|________|_________________|_________________|________|________|_____________| |________|________|________| - * `RESET' resets the controller and puts the board into firmware flashing mode. + * `QK_BOOT' resets the controller and puts the board into firmware flashing mode. * If this key is hit accidentally, just unplug the board and plug it back in. */ [1] = LAYOUT( - RESET, 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_MPLY, + QK_BOOT, 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_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, RGB_VAD, RGB_VAI, KC_TRNS, KC_VOLU, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_PGUP, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_UP, KC_RGHT, KC_TRNS, KC_TRNS, KC_TRNS, KC_MUTE, diff --git a/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c b/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c index 665f180a38..0c765b9f40 100644 --- a/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c +++ b/keyboards/takashicompany/spreadwriter/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, RESET, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, QK_BOOT, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, 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 ), diff --git a/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c b/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c index defca4b55a..7d601c21a6 100644 --- a/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c +++ b/keyboards/takashicompany/spreadwriter/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, - KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, RESET, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, KC_TRNS, + KC_TRNS, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, RGB_M_T, KC_TRNS, QK_BOOT, KC_F11, KC_F12, KC_CAPS, KC_NO, KC_NO, 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 ), diff --git a/keyboards/taleguers/taleguers75/keymaps/default/keymap.c b/keyboards/taleguers/taleguers75/keymaps/default/keymap.c index 24dc65aaac..2f5025e459 100644 --- a/keyboards/taleguers/taleguers75/keymaps/default/keymap.c +++ b/keyboards/taleguers/taleguers75/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), [1] = LAYOUT( - KC_TRNS, RGB_MODE_FORWARD, RGB_MODE_REVERSE, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, RGB_MODE_FORWARD, RGB_MODE_REVERSE, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/taleguers/taleguers75/keymaps/via/keymap.c b/keyboards/taleguers/taleguers75/keymaps/via/keymap.c index bc2510576d..cbaaedcafd 100644 --- a/keyboards/taleguers/taleguers75/keymaps/via/keymap.c +++ b/keyboards/taleguers/taleguers75/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_UP, KC_DOWN, KC_RGHT), [1] = LAYOUT( - KC_TRNS, RGB_MODE_FORWARD, RGB_MODE_REVERSE, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, RGB_MODE_FORWARD, RGB_MODE_REVERSE, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/tanuki/keymaps/default/keymap.c b/keyboards/tanuki/keymaps/default/keymap.c index 789475b88d..e4987ef8cb 100644 --- a/keyboards/tanuki/keymaps/default/keymap.c +++ b/keyboards/tanuki/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), + KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), [_UL] = LAYOUT( KC_GRV, KC_LBRC, KC_RBRC, KC_LCBR, KC_RCBR, KC_PIPE, KC_BSLS, KC_PLUS, KC_UNDS, KC_MINS, KC_EQL, KC_DEL, diff --git a/keyboards/tau4/keymaps/default/keymap.c b/keyboards/tau4/keymaps/default/keymap.c index 6c1b2342a2..37fb6b666b 100755 --- a/keyboards/tau4/keymaps/default/keymap.c +++ b/keyboards/tau4/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MSTP, KC_MPRV, KC_MPLY, KC_MNXT), [_ADJUST] = LAYOUT_ortho_4x12( - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, RESET, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUD, RGB_HUI, RGB_SAD, RGB_SAI, RGB_VAD, RGB_VAI, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, RGB_M_P, RGB_M_B, RGB_M_R, RGB_M_SW, RGB_M_SN, RGB_M_K, RGB_M_X, RGB_M_G, RGB_M_T, KC_TRNS, KC_TRNS, KC_TRNS, TG(_NUMPAD), 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), diff --git a/keyboards/teleport/numpad/keymaps/default/keymap.c b/keyboards/teleport/numpad/keymaps/default/keymap.c index 539a046ee8..d9bb2248da 100644 --- a/keyboards/teleport/numpad/keymaps/default/keymap.c +++ b/keyboards/teleport/numpad/keymaps/default/keymap.c @@ -30,6 +30,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), }; diff --git a/keyboards/teleport/numpad/keymaps/via/keymap.c b/keyboards/teleport/numpad/keymaps/via/keymap.c index 8eea06c76e..932287c27b 100644 --- a/keyboards/teleport/numpad/keymaps/via/keymap.c +++ b/keyboards/teleport/numpad/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), [2] = LAYOUT_numpad_5x4( @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), [3] = LAYOUT_numpad_5x4( @@ -46,6 +46,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_TRNS, KC_TRNS, RESET + KC_TRNS, KC_TRNS, QK_BOOT ), }; diff --git a/keyboards/tenki/keymaps/default/keymap.c b/keyboards/tenki/keymaps/default/keymap.c index 1f308a4c7b..6ce06f3dfc 100644 --- a/keyboards/tenki/keymaps/default/keymap.c +++ b/keyboards/tenki/keymaps/default/keymap.c @@ -14,6 +14,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_VOLU, RGB_TOG, RGB_VAI, KC_MPRV, KC_MUTE, KC_MNXT, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, RGB_MOD + QK_BOOT, KC_TRNS, KC_TRNS, RGB_MOD ) }; diff --git a/keyboards/tenki/keymaps/via/keymap.c b/keyboards/tenki/keymaps/via/keymap.c index 5de6c439bb..8e144133c5 100644 --- a/keyboards/tenki/keymaps/via/keymap.c +++ b/keyboards/tenki/keymaps/via/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_VOLU, RGB_TOG, RGB_VAI, KC_MPRV, KC_MUTE, KC_MNXT, KC_TRNS, KC_TRNS, KC_VOLD, KC_TRNS, KC_TRNS, - RESET, KC_TRNS, KC_TRNS, RGB_MOD + QK_BOOT, KC_TRNS, KC_TRNS, RGB_MOD ), [2] = LAYOUT_ortho_5x4( diff --git a/keyboards/terrazzo/keymaps/default/keymap.c b/keyboards/terrazzo/keymaps/default/keymap.c index b6439aa8e9..d81ced8acc 100644 --- a/keyboards/terrazzo/keymaps/default/keymap.c +++ b/keyboards/terrazzo/keymaps/default/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, _______, _______, KC_CAPS, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_F11, KC_F12, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, CG_TOGG, - _______, RESET, _______, _______, _______, _______, _______ + _______, QK_BOOT, _______, _______, _______, _______, _______ ) }; diff --git a/keyboards/tg4x/keymaps/default/keymap.c b/keyboards/tg4x/keymaps/default/keymap.c index a19e54026d..7a6cb8912f 100644 --- a/keyboards/tg4x/keymaps/default/keymap.c +++ b/keyboards/tg4x/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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 ) diff --git a/keyboards/tg4x/keymaps/via/keymap.c b/keyboards/tg4x/keymaps/via/keymap.c index c8421c8e58..10b73e6e89 100644 --- a/keyboards/tg4x/keymaps/via/keymap.c +++ b/keyboards/tg4x/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( 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, RESET, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, 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 ), diff --git a/keyboards/tgr/910/keymaps/default/keymap.c b/keyboards/tgr/910/keymaps/default/keymap.c index 8abdb7e283..e15423eb9c 100644 --- a/keyboards/tgr/910/keymaps/default/keymap.c +++ b/keyboards/tgr/910/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_split_bs( KC_GRV, 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_BSLS, KC_DEL, - BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + BL_TOGG, BL_STEP, BL_INC, BL_DEC, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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), diff --git a/keyboards/tgr/910/keymaps/via/keymap.c b/keyboards/tgr/910/keymaps/via/keymap.c index 3aff12b530..b5adb55f41 100644 --- a/keyboards/tgr/910/keymaps/via/keymap.c +++ b/keyboards/tgr/910/keymaps/via/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi_split_bs( KC_GRV, 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_BSLS, KC_TRNS, - BL_TOGG, BL_STEP, BL_INC, BL_DEC, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, + BL_TOGG, BL_STEP, BL_INC, BL_DEC, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, RGB_TOG, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, KC_TRNS, RGB_RMOD, RGB_HUD, RGB_SAD, RGB_VAD, RGB_SPD, 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), diff --git a/keyboards/tgr/tris/keymaps/default/keymap.c b/keyboards/tgr/tris/keymaps/default/keymap.c index 5a4e47a694..656d51b686 100644 --- a/keyboards/tgr/tris/keymaps/default/keymap.c +++ b/keyboards/tgr/tris/keymaps/default/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_numpad_6x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, diff --git a/keyboards/tgr/tris/keymaps/via/keymap.c b/keyboards/tgr/tris/keymaps/via/keymap.c index bfa8dbc59b..8cfd43c685 100644 --- a/keyboards/tgr/tris/keymaps/via/keymap.c +++ b/keyboards/tgr/tris/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_numpad_6x4( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, diff --git a/keyboards/the_royal/liminal/keymaps/default/keymap.c b/keyboards/the_royal/liminal/keymaps/default/keymap.c index dd98661011..5ff6c4aa3c 100644 --- a/keyboards/the_royal/liminal/keymaps/default/keymap.c +++ b/keyboards/the_royal/liminal/keymaps/default/keymap.c @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ├─────┼─────┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬────────┤ * │ │ │ │ │ │ │ │ │ │ │DOWN│ │ │ * ├─────┼────┬──┴─┬──┴─┬──┴────┴────┴────┴────┴────┴───┬┴────┴┬───┴─┬──────┤ - * │RESET│ │ │ │ │ │ │ │ + * │QK_BOOT│ │ │ │ │ │ │ │ * └─────┴────┴────┴────┴───────────────────────────────┴──────┴─────┴──────┘ */ [_OTHER] = LAYOUT_base_kit_all( diff --git a/keyboards/the_royal/liminal/keymaps/default_iso/keymap.c b/keyboards/the_royal/liminal/keymaps/default_iso/keymap.c index 62ff2b6a5d..d5fe730d80 100644 --- a/keyboards/the_royal/liminal/keymaps/default_iso/keymap.c +++ b/keyboards/the_royal/liminal/keymaps/default_iso/keymap.c @@ -116,7 +116,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ├─────┼────┬─┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─┬──┴─────┤ * │ │ │ │ │ │ │ │ │ │ │ │ │DOWN│ │ * ├─────┼────┼───┴┬───┴─┬──┴────┴────┴────┴────┴────┴───┬┴────┴┬───┴─┬──────┤ - * │RESET│ │ │ │ │ │ │ │ + * │QK_BOOT│ │ │ │ │ │ │ │ * └─────┴────┴────┴─────┴───────────────────────────────┴──────┴─────┴──────┘ */ [_OTHER] = LAYOUT_base_kit_all( diff --git a/keyboards/tkc/candybar/lefty/keymaps/default/keymap.c b/keyboards/tkc/candybar/lefty/keymaps/default/keymap.c index 08e2bd4bb1..bc834aff3f 100644 --- a/keyboards/tkc/candybar/lefty/keymaps/default/keymap.c +++ b/keyboards/tkc/candybar/lefty/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), diff --git a/keyboards/tkc/candybar/lefty/keymaps/via/keymap.c b/keyboards/tkc/candybar/lefty/keymaps/via/keymap.c index 04088b985f..8aa4935d5c 100644 --- a/keyboards/tkc/candybar/lefty/keymaps/via/keymap.c +++ b/keyboards/tkc/candybar/lefty/keymaps/via/keymap.c @@ -33,19 +33,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), [_AL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), [_LL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), diff --git a/keyboards/tkc/candybar/lefty_r3/keymaps/default/keymap.c b/keyboards/tkc/candybar/lefty_r3/keymaps/default/keymap.c index 2a66ec834f..765529a18f 100644 --- a/keyboards/tkc/candybar/lefty_r3/keymaps/default/keymap.c +++ b/keyboards/tkc/candybar/lefty_r3/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , \ KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , \ KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), diff --git a/keyboards/tkc/candybar/lefty_r3/keymaps/via/keymap.c b/keyboards/tkc/candybar/lefty_r3/keymaps/via/keymap.c index 40890bd7ac..1ff05328a8 100644 --- a/keyboards/tkc/candybar/lefty_r3/keymaps/via/keymap.c +++ b/keyboards/tkc/candybar/lefty_r3/keymaps/via/keymap.c @@ -35,19 +35,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , \ KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , \ KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), [_AL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , \ KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , \ KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), [_LL] = LAYOUT( - KC_P7 , KC_P8, KC_P9 , KC_VOLU, RESET , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ + KC_P7 , KC_P8, KC_P9 , KC_VOLU, QK_BOOT , KC_Q , KC_W , KC_E, KC_R , KC_T , KC_Y, KC_U , KC_I , KC_LBRC, KC_RBRC, KC_INS , KC_BSPC , \ KC_P4 , KC_P5, KC_P6 , KC_VOLD, KC_TAB , KC_A , KC_SLCK, KC_D, KC_F , KC_G , KC_H, KC_J , KC_K , KC_L , KC_QUOT, KC_BSLS , \ KC_P1 , KC_P2, KC_P3 , KC_PEQL, KC_LSFT, KC_Z , KC_X, KC_CAPS, KC_V , KC_B, KC_NLCK, KC_M , KC_COMM, KC_DOT , KC_SLSH, KC_PGUP , \ KC_END, KC_P0, KC_PDOT, KC_PENT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC , KC_BSPC, KC_APP , MO(_FL), KC_HOME, KC_PGDN), diff --git a/keyboards/tkc/candybar/righty/keymaps/default/keymap.c b/keyboards/tkc/candybar/righty/keymaps/default/keymap.c index c686e6f57d..489cccf8df 100644 --- a/keyboards/tkc/candybar/righty/keymaps/default/keymap.c +++ b/keyboards/tkc/candybar/righty/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), diff --git a/keyboards/tkc/candybar/righty/keymaps/via/keymap.c b/keyboards/tkc/candybar/righty/keymaps/via/keymap.c index f9bacbf555..560cf56f3b 100644 --- a/keyboards/tkc/candybar/righty/keymaps/via/keymap.c +++ b/keyboards/tkc/candybar/righty/keymaps/via/keymap.c @@ -33,19 +33,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), [_AL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), [_LL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), diff --git a/keyboards/tkc/candybar/righty_r3/keymaps/default/keymap.c b/keyboards/tkc/candybar/righty_r3/keymaps/default/keymap.c index 849f552961..d144bb8183 100644 --- a/keyboards/tkc/candybar/righty_r3/keymaps/default/keymap.c +++ b/keyboards/tkc/candybar/righty_r3/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, \ KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, \ KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), diff --git a/keyboards/tkc/candybar/righty_r3/keymaps/via/keymap.c b/keyboards/tkc/candybar/righty_r3/keymaps/via/keymap.c index 269e3d727f..dd9119702b 100644 --- a/keyboards/tkc/candybar/righty_r3/keymaps/via/keymap.c +++ b/keyboards/tkc/candybar/righty_r3/keymaps/via/keymap.c @@ -35,19 +35,19 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Keymap _FL: Function Layer */ [_FL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, \ KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, \ KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), [_AL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, \ KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, \ KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), [_LL] = LAYOUT( - RESET,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ + QK_BOOT,KC_Q,KC_W,KC_E,KC_R,KC_T,KC_Y,KC_U,KC_I,KC_LBRC,KC_RBRC,KC_INS,KC_BSPC,KC_P7,KC_P8,KC_P9,KC_VOLU, \ KC_TAB,KC_A,KC_SLCK,KC_D,KC_F,KC_G,KC_H,KC_J,KC_K,KC_L,KC_QUOT,KC_BSLS,KC_P4,KC_P5,KC_P6,KC_VOLD, \ KC_LSFT,KC_Z,KC_X,KC_CAPS,KC_V,KC_B,KC_NLCK,KC_M,KC_COMM,KC_DOT,KC_SLSH,KC_PGUP,KC_P1,KC_P2,KC_P3,KC_PEQL, \ KC_LCTL,KC_LGUI,KC_LALT,KC_SPC,KC_SPC,KC_BSPC,KC_APP,MO(_FL),KC_HOME,KC_PGDN,KC_END,KC_P0,KC_PDOT,KC_PENT), diff --git a/keyboards/tkc/godspeed75/keymaps/default/keymap.c b/keyboards/tkc/godspeed75/keymaps/default/keymap.c index ac536922f2..8961f3eaa4 100644 --- a/keyboards/tkc/godspeed75/keymaps/default/keymap.c +++ b/keyboards/tkc/godspeed75/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_NO, RESET, KC_PGUP, + KC_GRV, 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_NO, QK_BOOT, KC_PGUP, 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, KC_PGDN, 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_INS, KC_LSFT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, diff --git a/keyboards/tkc/godspeed75/keymaps/via/keymap.c b/keyboards/tkc/godspeed75/keymaps/via/keymap.c index 5d99cafad4..81c214906f 100644 --- a/keyboards/tkc/godspeed75/keymaps/via/keymap.c +++ b/keyboards/tkc/godspeed75/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FL] = 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_NO, RESET, KC_PGUP, + KC_GRV, 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_NO, QK_BOOT, KC_PGUP, 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, KC_PGDN, 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_INS, KC_LSFT, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_DEL, @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_AL] = 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_NO, RESET, KC_PGUP, + KC_GRV, 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_NO, QK_BOOT, KC_PGUP, 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, KC_PGDN, 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_INS, 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, KC_DEL, @@ -51,7 +51,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LL] = 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_PSCR, KC_SLCK, KC_PAUS, - KC_GRV, 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_NO, RESET, KC_PGUP, + KC_GRV, 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_NO, QK_BOOT, KC_PGUP, 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, KC_PGDN, 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_INS, 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, KC_DEL, diff --git a/keyboards/tkc/m0lly/keymaps/default/keymap.c b/keyboards/tkc/m0lly/keymaps/default/keymap.c index bb065fa239..2b79849f44 100644 --- a/keyboards/tkc/m0lly/keymaps/default/keymap.c +++ b/keyboards/tkc/m0lly/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Function Layer * * ,-----------------------------------------------------------. .-------------------. - * | | | | | | | | | | | | | | RESET | | | | | | + * | | | | | | | | | | | | | | QK_BOOT | | | | | | * |-----------------------------------------------------------| |-------------------| * | | | | | | | | | | | | | | | | | | | | * |-----------------------------------------------------------| |-------------------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' '-------------------' */ [_FUNC] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, XXXXXXX, _______, _______, _______, XXXXXXX, diff --git a/keyboards/tkc/m0lly/keymaps/via/keymap.c b/keyboards/tkc/m0lly/keymaps/via/keymap.c index 40f75b4579..d52a30c6a7 100644 --- a/keyboards/tkc/m0lly/keymaps/via/keymap.c +++ b/keyboards/tkc/m0lly/keymaps/via/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Function Layer * * ,-----------------------------------------------------------. .-------------------. - * | | | | | | | | | | | | | | RESET | | | | | | + * | | | | | | | | | | | | | | QK_BOOT | | | | | | * |-----------------------------------------------------------| |-------------------| * | | | | | | | | | | | | | | | | | | | | * |-----------------------------------------------------------| |-------------------| @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------' '-------------------' */ [_FUNC1] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, XXXXXXX, _______, _______, _______, XXXXXXX, @@ -69,7 +69,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNC2] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, XXXXXXX, _______, _______, _______, XXXXXXX, @@ -77,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNC3] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, XXXXXXX, _______, _______, _______, XXXXXXX, diff --git a/keyboards/tkc/portico/keymaps/default/keymap.c b/keyboards/tkc/portico/keymaps/default/keymap.c index 3442067011..c75a4550ad 100644 --- a/keyboards/tkc/portico/keymaps/default/keymap.c +++ b/keyboards/tkc/portico/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #ifdef RGB_BACKLIGHT_PORTICO [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, EF_INC, EF_DEC, BR_INC, BR_DEC, H1_INC, H1_DEC, S1_INC, S1_DEC, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, EF_INC, EF_DEC, BR_INC, BR_DEC, H1_INC, H1_DEC, S1_INC, S1_DEC, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, _______, _______, _______, _______, H2_INC, H2_DEC, S2_INC, S2_DEC, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #else [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/tkc/portico/keymaps/via/keymap.c b/keyboards/tkc/portico/keymaps/via/keymap.c index 3442067011..c75a4550ad 100644 --- a/keyboards/tkc/portico/keymaps/via/keymap.c +++ b/keyboards/tkc/portico/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #ifdef RGB_BACKLIGHT_PORTICO [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, EF_INC, EF_DEC, BR_INC, BR_DEC, H1_INC, H1_DEC, S1_INC, S1_DEC, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, EF_INC, EF_DEC, BR_INC, BR_DEC, H1_INC, H1_DEC, S1_INC, S1_DEC, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, _______, _______, _______, _______, H2_INC, H2_DEC, S2_INC, S2_DEC, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { #else [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/tkc/portico68v2/keymaps/default/keymap.c b/keyboards/tkc/portico68v2/keymaps/default/keymap.c index d8ecbe1c0a..2d4897bfb0 100644 --- a/keyboards/tkc/portico68v2/keymaps/default/keymap.c +++ b/keyboards/tkc/portico68v2/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/tkc/portico68v2/keymaps/via/keymap.c b/keyboards/tkc/portico68v2/keymaps/via/keymap.c index b8fd68f625..be6845391a 100644 --- a/keyboards/tkc/portico68v2/keymaps/via/keymap.c +++ b/keyboards/tkc/portico68v2/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_65_ansi_blocker( KC_GESC, 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_HOME, - _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_PGUP, + _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_PGUP, KC_CAPS, RGB_SPI, RGB_SPD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGDN, KC_LSFT, _______, _______, _______, _______, _______, NK_TOGG, _______, _______, _______, _______, _______, KC_VOLU, KC_MUTE, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/tkc/tkc1800/keymaps/default/keymap.c b/keyboards/tkc/tkc1800/keymaps/default/keymap.c index 0fd56f73f8..dcc4749c9d 100644 --- a/keyboards/tkc/tkc1800/keymaps/default/keymap.c +++ b/keyboards/tkc/tkc1800/keymaps/default/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------' |-------------------| * | | | | | * ,-----------------------------------------------------------. |-------------------| - * | | | | | | | | | | | | | | RESET | | | | | | + * | | | | | | | | | | | | | | QK_BOOT | | | | | | * |-----------------------------------------------------------| |-------------------| * | | | | | | | | | | | | | | | | | | | | * |-----------------------------------------------------------| |-------------------| @@ -70,7 +70,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FUNCTION] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, _______, _______, _______, _______, XXXXXXX, diff --git a/keyboards/tkc/tkc1800/keymaps/via/keymap.c b/keyboards/tkc/tkc1800/keymaps/via/keymap.c index a14c6df217..9fde46a875 100644 --- a/keyboards/tkc/tkc1800/keymaps/via/keymap.c +++ b/keyboards/tkc/tkc1800/keymaps/via/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------' |-------------------| * | | | | | * ,-----------------------------------------------------------. |-------------------| - * | | | | | | | | | | | | | | RESET | | | | | | + * | | | | | | | | | | | | | | QK_BOOT | | | | | | * |-----------------------------------------------------------| |-------------------| * | | | | | | | | | | | | | | | | | | | | * |-----------------------------------------------------------| |-------------------| @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FUNCTION] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, _______, _______, _______, _______, XXXXXXX, @@ -80,7 +80,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [ALTERNATE] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, _______, _______, _______, _______, XXXXXXX, @@ -89,7 +89,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [LAST] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, _______, _______, _______, _______, XXXXXXX, diff --git a/keyboards/tkc/tkc1800/keymaps/wkl/keymap.c b/keyboards/tkc/tkc1800/keymaps/wkl/keymap.c index df6030702f..144943e372 100644 --- a/keyboards/tkc/tkc1800/keymaps/wkl/keymap.c +++ b/keyboards/tkc/tkc1800/keymaps/wkl/keymap.c @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [FUNCTION] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, XXXXXXX, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, _______, _______, _______, _______, _______, XXXXXXX, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, BL_STEP, _______, _______, _______, _______, _______, _______, XXXXXXX, diff --git a/keyboards/tkw/grandiceps/keymaps/default/keymap.c b/keyboards/tkw/grandiceps/keymaps/default/keymap.c index e3de33616e..a55dd5a5c5 100644 --- a/keyboards/tkw/grandiceps/keymaps/default/keymap.c +++ b/keyboards/tkw/grandiceps/keymaps/default/keymap.c @@ -134,7 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,-----------------------------------------. ,-----------------------------------------. * | | | | | | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| - * | RESET| |QWERTY|COLEMAK| | | | | | | | | | + * | QK_BOOT| |QWERTY|COLEMAK| | | | | | | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | |MACWIN| | | |-------. ,-------| | VOLDO| MUTE | VOLUP| | | * |------+------+------+------+------+------| MUTE | | |------+------+------+------+------+------| @@ -146,7 +146,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_ADJUST] = LAYOUT( XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, XXXXXXX, RGB_TOG, - RESET , XXXXXXX, KC_QWERTY,KC_COLEMAK,CG_TOGG, XXXXXXX, RGB_RMOD, RGB_VAD, RGB_SAD, RGB_HUD, XXXXXXX, XXXXXXX, + QK_BOOT , XXXXXXX, KC_QWERTY,KC_COLEMAK,CG_TOGG, XXXXXXX, RGB_RMOD, RGB_VAD, RGB_SAD, RGB_HUD, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX, CG_TOGG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX , XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MPRV, KC_MPLY, KC_MNXT, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/tkw/stoutgat/v1/keymaps/default/keymap.c b/keyboards/tkw/stoutgat/v1/keymaps/default/keymap.c index 300b698bb8..00be8be514 100644 --- a/keyboards/tkw/stoutgat/v1/keymaps/default/keymap.c +++ b/keyboards/tkw/stoutgat/v1/keymaps/default/keymap.c @@ -19,7 +19,7 @@ /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ KC_GRV, 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_PSCR, /* tab Q W E R T Y U I O P [ ] delete*/ - KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' # enter pg up*/ 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_INS, KC_TRNS, KC_HOME, /* shift \ Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/tkw/stoutgat/v2/keymaps/ansi/keymap.c b/keyboards/tkw/stoutgat/v2/keymaps/ansi/keymap.c index 4a3a83e45a..145b2dc635 100644 --- a/keyboards/tkw/stoutgat/v2/keymaps/ansi/keymap.c +++ b/keyboards/tkw/stoutgat/v2/keymaps/ansi/keymap.c @@ -15,9 +15,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_65_ansi_blocker( /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, /* tab Q W E R T Y U I O P [ ] \ delete*/ - RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, RESET, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, KC_TRNS, + RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, QK_BOOT, KC_TRNS,KC_TRNS,KC_TRNS,KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, KC_TRNS, /* caps A S D F G H J K L ; ' enter pg up*/ RGB_TOG, RGB_VAD, RGB_SAD, RGB_HUD, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_HOME, /* shift Z X C V B N M , . / shift up pg dn*/ diff --git a/keyboards/tkw/stoutgat/v2/keymaps/default/keymap.c b/keyboards/tkw/stoutgat/v2/keymaps/default/keymap.c index f7139b70b1..1e2b3aafd5 100644 --- a/keyboards/tkw/stoutgat/v2/keymaps/default/keymap.c +++ b/keyboards/tkw/stoutgat/v2/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_encoder( /* esc 1 2 3 4 5 6 7 8 9 0 - = bkspc `~ */ - KC_GRV, 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, RESET, + KC_GRV, 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, QK_BOOT, /* tab Q W E R T Y U I O P [ ] delete */ RGB_MOD, RGB_VAI, RGB_SAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PAUS, KC_TRNS, /* caps A S D F G H J K L ; ' # enter pg up */ diff --git a/keyboards/tmo50/keymaps/default/keymap.c b/keyboards/tmo50/keymaps/default/keymap.c index a1d896b61b..1486bf82cc 100644 --- a/keyboards/tmo50/keymaps/default/keymap.c +++ b/keyboards/tmo50/keymaps/default/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn3 layer [3] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_CAPS, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, BL_TOGG, BL_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, BL_STEP, BL_DEC, 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 diff --git a/keyboards/tmo50/keymaps/via/keymap.c b/keyboards/tmo50/keymaps/via/keymap.c index a1d896b61b..1486bf82cc 100644 --- a/keyboards/tmo50/keymaps/via/keymap.c +++ b/keyboards/tmo50/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn3 layer [3] = LAYOUT_all( - 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, KC_TRNS, KC_TRNS, + QK_BOOT, 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_CAPS, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, BL_TOGG, BL_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, BL_STEP, BL_DEC, 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 diff --git a/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c b/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c index 45fee56a95..1e0548c303 100644 --- a/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c +++ b/keyboards/tominabox1/le_chiffre/keymaps/default/keymap.c @@ -55,7 +55,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT( - RESET, _______, AG_NORM, AG_SWAP, DEBUG, KC_TRNS, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, + QK_BOOT, _______, AG_NORM, AG_SWAP, DEBUG, KC_TRNS, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS,KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c b/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c index beaa8d92f2..01e684e8ec 100644 --- a/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c +++ b/keyboards/tominabox1/underscore33/rev1/keymaps/default/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_33_split_space( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c b/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c index 09547fa06f..89efbd77e6 100644 --- a/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c +++ b/keyboards/tominabox1/underscore33/rev1/keymaps/default_big_space/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_33_big_space( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/tominabox1/underscore33/rev2/keymaps/default/keymap.c b/keyboards/tominabox1/underscore33/rev2/keymaps/default/keymap.c index ebacea4132..00ae38ce75 100644 --- a/keyboards/tominabox1/underscore33/rev2/keymaps/default/keymap.c +++ b/keyboards/tominabox1/underscore33/rev2/keymaps/default/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_33_split_space( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/tominabox1/underscore33/rev2/keymaps/default_big_space/keymap.c b/keyboards/tominabox1/underscore33/rev2/keymaps/default_big_space/keymap.c index 09547fa06f..89efbd77e6 100644 --- a/keyboards/tominabox1/underscore33/rev2/keymaps/default_big_space/keymap.c +++ b/keyboards/tominabox1/underscore33/rev2/keymaps/default_big_space/keymap.c @@ -56,7 +56,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_NAV] = LAYOUT_33_big_space( - RESET, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_GRV, KC_PGDN, KC_UP, KC_PGUP, KC_SCLN, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_NO, KC_HOME, KC_LEFT, KC_DOWN, KC_RGHT, KC_END, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_NO, KC_MINS, KC_RO, KC_COMM, KC_DOT, KC_BSLS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/tr60w/keymaps/default/keymap.c b/keyboards/tr60w/keymaps/default/keymap.c index 86bfbb5662..ecfb9126bc 100644 --- a/keyboards/tr60w/keymaps/default/keymap.c +++ b/keyboards/tr60w/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), LAYOUT_60_tsangan_hhkb( - 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, _______, _______, + QK_BOOT, 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_UP, _______, KC_DEL, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, KC_LEFT, KC_RGHT, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_STEP, _______, _______, _______, KC_DOWN, _______, _______, diff --git a/keyboards/trashman/ketch/keymaps/default/keymap.c b/keyboards/trashman/ketch/keymaps/default/keymap.c index 5d2220a4f4..37d396ace3 100644 --- a/keyboards/trashman/ketch/keymaps/default/keymap.c +++ b/keyboards/trashman/ketch/keymaps/default/keymap.c @@ -39,6 +39,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_TRNS, KC_UNDS, KC_PLUS, KC_COLN, KC_DQUO, KC_TRNS, KC_TRNS, KC_TRNS, KC_UNDS, KC_PLUS, KC_DQUO, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LCBR, KC_RCBR, KC_PGUP, KC_PIPE, - KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END + KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ) }; diff --git a/keyboards/treasure/type9s2/keymaps/default/keymap.c b/keyboards/treasure/type9s2/keymaps/default/keymap.c index 35e789a95d..8d076c3d99 100644 --- a/keyboards/treasure/type9s2/keymaps/default/keymap.c +++ b/keyboards/treasure/type9s2/keymaps/default/keymap.c @@ -38,6 +38,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [3] = LAYOUT_ortho_3x3( _______, _______, _______, _______, _______, _______, - RESET, _______, _______ + QK_BOOT, _______, _______ ) }; diff --git a/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c b/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c index b32eb33ec6..04866e35ef 100644 --- a/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c +++ b/keyboards/tronguylabs/m122_3270/keymaps/default/keymap.c @@ -71,7 +71,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, EEP_RST, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, EEP_RST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, DEBUG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/tszaboo/ortho4exent/keymaps/default/keymap.c b/keyboards/tszaboo/ortho4exent/keymaps/default/keymap.c index c6a8a7a80d..148beb247a 100644 --- a/keyboards/tszaboo/ortho4exent/keymaps/default/keymap.c +++ b/keyboards/tszaboo/ortho4exent/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( KC_TRNS, KC_F1 , KC_F2 , KC_F3 , KC_F4 , KC_F5 , KC_TRNS, KC_TRNS, KC_TRNS, KC_F6 , KC_F7 , KC_F8 , KC_F9 , KC_F10 , 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, RESET, 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, QK_BOOT, 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, RGB_TOG, RGB_MOD, RGB_M_P, RGB_M_G, 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 diff --git a/keyboards/uk78/keymaps/default/keymap.c b/keyboards/uk78/keymaps/default/keymap.c index c23cca1b84..3a83fd1672 100644 --- a/keyboards/uk78/keymaps/default/keymap.c +++ b/keyboards/uk78/keymaps/default/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL1] = LAYOUT_all( KC_GRV, 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_PSCR, KC_INS, KC_NLCK, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, BL_DEC, BL_INC, _______, KC_MUTE, KC_MUTE, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, KC_VOLD, _______, _______, _______, _______ diff --git a/keyboards/ungodly/launch_pad/keymaps/default/keymap.c b/keyboards/ungodly/launch_pad/keymaps/default/keymap.c index 43e0e72bdc..6ac19d5b59 100644 --- a/keyboards/ungodly/launch_pad/keymaps/default/keymap.c +++ b/keyboards/ungodly/launch_pad/keymaps/default/keymap.c @@ -122,7 +122,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, XXXXXXX, RGB_M_P, RGB_SAD, RGB_SAI, XXXXXXX, RGB_MOD, RGB_VAD, RGB_VAI, XXXXXXX, XXXXXXX, - RESET, RESET, XXXXXXX, XXXXXXX + QK_BOOT, QK_BOOT, XXXXXXX, XXXXXXX ), }; diff --git a/keyboards/ungodly/launch_pad/keymaps/via/keymap.c b/keyboards/ungodly/launch_pad/keymaps/via/keymap.c index 0854715bef..198d99d29d 100644 --- a/keyboards/ungodly/launch_pad/keymaps/via/keymap.c +++ b/keyboards/ungodly/launch_pad/keymaps/via/keymap.c @@ -122,7 +122,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, XXXXXXX, RGB_M_P, RGB_SAD, RGB_SAI, XXXXXXX, RGB_MOD, RGB_VAD, RGB_VAI, XXXXXXX, XXXXXXX, - RESET, RESET, XXXXXXX, XXXXXXX + QK_BOOT, QK_BOOT, XXXXXXX, XXXXXXX ), }; diff --git a/keyboards/ungodly/nines/keymaps/default/keymap.c b/keyboards/ungodly/nines/keymaps/default/keymap.c index 2100f4b801..e9cd2e02b6 100644 --- a/keyboards/ungodly/nines/keymaps/default/keymap.c +++ b/keyboards/ungodly/nines/keymaps/default/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_3x3( - RESET, _______, KC_STOP, + QK_BOOT, _______, KC_STOP, _______, KC_HOME, _______, KC_MPRV, KC_END , KC_MNXT ) diff --git a/keyboards/ungodly/nines/keymaps/via/keymap.c b/keyboards/ungodly/nines/keymaps/via/keymap.c index e0567ff0f1..46644b3a20 100644 --- a/keyboards/ungodly/nines/keymaps/via/keymap.c +++ b/keyboards/ungodly/nines/keymaps/via/keymap.c @@ -24,7 +24,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_ortho_3x3( - RESET, _______, KC_STOP, + QK_BOOT, _______, KC_STOP, _______, KC_HOME, _______, KC_MPRV, KC_END , KC_MNXT ), diff --git a/keyboards/unicomp/spacesaver_m_post_2013/keymaps/default/keymap.c b/keyboards/unicomp/spacesaver_m_post_2013/keymaps/default/keymap.c index 08a9be07f5..53a198107b 100644 --- a/keyboards/unicomp/spacesaver_m_post_2013/keymaps/default/keymap.c +++ b/keyboards/unicomp/spacesaver_m_post_2013/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( 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_PSCR, KC_SLCK, KC_PAUS, KC_NUBS,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_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_EQL, KC_PSLS, KC_PAST, - KC_TAB, KC_Q, KC_W,EEPROM_RESET,RESET,KC_T,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_TAB, KC_Q, KC_W,EEPROM_RESET,QK_BOOT,KC_T,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_CAPS, KC_A, KC_S,DEBUG, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_LSFT,KC_GRV, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LCTRL, KC_LALT, KC_LGUI, KC_NO, KC_SPC, KC_RGUI, KC_RALT, MO(_FN), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_P0, KC_PDOT, KC_PENT diff --git a/keyboards/unicomp/spacesaver_m_pre_2013/keymaps/default/keymap.c b/keyboards/unicomp/spacesaver_m_pre_2013/keymaps/default/keymap.c index 08a9be07f5..53a198107b 100644 --- a/keyboards/unicomp/spacesaver_m_pre_2013/keymaps/default/keymap.c +++ b/keyboards/unicomp/spacesaver_m_pre_2013/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_all( 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_PSCR, KC_SLCK, KC_PAUS, KC_NUBS,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_BSPC, KC_INS, KC_HOME, KC_PGUP, KC_NLCK, KC_EQL, KC_PSLS, KC_PAST, - KC_TAB, KC_Q, KC_W,EEPROM_RESET,RESET,KC_T,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, + KC_TAB, KC_Q, KC_W,EEPROM_RESET,QK_BOOT,KC_T,KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, KC_DEL, KC_END, KC_PGDN, KC_P7, KC_P8, KC_P9, KC_PMNS, KC_CAPS, KC_A, KC_S,DEBUG, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT,KC_NUHS, KC_ENT, KC_P4, KC_P5, KC_P6, KC_PPLS, KC_LSFT,KC_GRV, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_RSFT, KC_UP, KC_P1, KC_P2, KC_P3, KC_PENT, KC_LCTRL, KC_LALT, KC_LGUI, KC_NO, KC_SPC, KC_RGUI, KC_RALT, MO(_FN), KC_RCTRL, KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_P0, KC_PDOT, KC_PENT diff --git a/keyboards/unikeyboard/divergetm2/keymaps/default/keymap.c b/keyboards/unikeyboard/divergetm2/keymaps/default/keymap.c index fb5957ccae..e4ba788b70 100644 --- a/keyboards/unikeyboard/divergetm2/keymaps/default/keymap.c +++ b/keyboards/unikeyboard/divergetm2/keymaps/default/keymap.c @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_BSPC, KC_ESC, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_ENT , - RESET, KC_LCTL, KC_LALT, KC_LGUI, LT(_LOWER, KC_SPC), LT(_RAISE,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT + QK_BOOT, KC_LCTL, KC_LALT, KC_LGUI, LT(_LOWER, KC_SPC), LT(_RAISE,KC_SPC), KC_LEFT, KC_DOWN, KC_UP, KC_RGHT ), /* Colemak @@ -141,7 +141,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12_2x2u( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/unikorn/keymaps/default/keymap.c b/keyboards/unikorn/keymaps/default/keymap.c index 3e73036253..5ecc4b29bb 100644 --- a/keyboards/unikorn/keymaps/default/keymap.c +++ b/keyboards/unikorn/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_TRNS, 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, - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/unikorn/keymaps/tsangan/keymap.c b/keyboards/unikorn/keymaps/tsangan/keymap.c index 4c86d4f02e..6761281787 100644 --- a/keyboards/unikorn/keymaps/tsangan/keymap.c +++ b/keyboards/unikorn/keymaps/tsangan/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_tsangan_hhkb( KC_TRNS, 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_DEL, - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/unikorn/keymaps/via/keymap.c b/keyboards/unikorn/keymaps/via/keymap.c index 99310e861b..05a9ea0a96 100644 --- a/keyboards/unikorn/keymaps/via/keymap.c +++ b/keyboards/unikorn/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi( KC_TRNS, 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, - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/unison/keymaps/via/keymap.c b/keyboards/unison/keymaps/via/keymap.c index f3af26f184..2e3a6ad71a 100644 --- a/keyboards/unison/keymaps/via/keymap.c +++ b/keyboards/unison/keymaps/via/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJ] = LAYOUT_all( _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, - _______, _______,_______,_______,RESET, _______,_______,_______,_______,_______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______, + _______, _______,_______,_______,QK_BOOT, _______,_______,_______,_______,_______,RGB_HUI,RGB_SAI,RGB_VAI,_______,RGB_RMOD, _______, _______, AU_TOG, CK_TOGG,MU_TOG, MU_MOD, _______,_______,_______,_______,_______,RGB_HUD,RGB_SAD,RGB_VAD,RGB_TOG,RGB_MOD, _______, KC_CAPS,_______,CK_RST, CK_DOWN,CK_UP, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______ diff --git a/keyboards/uzu42/keymaps/default/keymap.c b/keyboards/uzu42/keymaps/default/keymap.c index 03ac17f629..01e31ceb39 100644 --- a/keyboards/uzu42/keymaps/default/keymap.c +++ b/keyboards/uzu42/keymaps/default/keymap.c @@ -79,7 +79,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,---------------------------------------. ,---------------------------------------. 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,KC_PSCR, KC_INS, RGB_TOG,RGB_HUI,RGB_SAI,RGB_VAI,XXXXXXX, + KC_F11, KC_F12, QK_BOOT,KC_PSCR, KC_INS, RGB_TOG,RGB_HUI,RGB_SAI,RGB_VAI,XXXXXXX, //|-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------| XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX,XXXXXXX, RGB_MOD,RGB_HUD,RGB_SAD,RGB_VAD,RGBRST, //|-------+-------+-------+-------+-------+-------| |-------+-------+-------+-------+-------+-------| diff --git a/keyboards/v4n4g0rth0n/v1/keymaps/default/keymap.c b/keyboards/v4n4g0rth0n/v1/keymaps/default/keymap.c index a1c547e884..89b6e06ff0 100644 --- a/keyboards/v4n4g0rth0n/v1/keymaps/default/keymap.c +++ b/keyboards/v4n4g0rth0n/v1/keymaps/default/keymap.c @@ -34,15 +34,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NUM] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LCTL, RESET, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LCTL, QK_BOOT, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH, - RESET, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT + QK_BOOT, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LCTL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV, KC_LSFT, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD, - RESET, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT + QK_BOOT, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT ) }; diff --git a/keyboards/v4n4g0rth0n/v2/keymaps/default/keymap.c b/keyboards/v4n4g0rth0n/v2/keymaps/default/keymap.c index 11616b2e7b..93aa46b7b0 100644 --- a/keyboards/v4n4g0rth0n/v2/keymaps/default/keymap.c +++ b/keyboards/v4n4g0rth0n/v2/keymaps/default/keymap.c @@ -72,15 +72,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NUM] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_TAB, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_BSPC, - KC_LCTL, RESET, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, + KC_LCTL, QK_BOOT, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_UP, KC_SLSH, - RESET, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT + QK_BOOT, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT ), [_FN] = LAYOUT( KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_TAB, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_BSPC, KC_LCTL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_MINS, KC_EQL, KC_LCBR, KC_RCBR, KC_PIPE, KC_GRV, KC_LSFT, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_UNDS, KC_PLUS, KC_LBRC, KC_RBRC, KC_BSLS, KC_TILD, - RESET, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT + QK_BOOT, KC_TRNS, KC_TRNS, KC_SPC, KC_ENT, KC_LEFT, KC_DOWN, KC_RIGHT ) }; diff --git a/keyboards/vagrant_10/keymaps/default/keymap.c b/keyboards/vagrant_10/keymaps/default/keymap.c index 4864ce6e79..f64df59fe5 100755 --- a/keyboards/vagrant_10/keymaps/default/keymap.c +++ b/keyboards/vagrant_10/keymaps/default/keymap.c @@ -52,7 +52,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_NO, KC_TRNS, KC_NO), [OTHER] = LAYOUT( - RESET, + QK_BOOT, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_TRNS), diff --git a/keyboards/viktus/at101_bh/keymaps/default/keymap.c b/keyboards/viktus/at101_bh/keymaps/default/keymap.c index 1962dd7479..a87660ce73 100644 --- a/keyboards/viktus/at101_bh/keymaps/default/keymap.c +++ b/keyboards/viktus/at101_bh/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { LAYOUT( 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, - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/viktus/omnikey_bh/keymaps/default/keymap.c b/keyboards/viktus/omnikey_bh/keymaps/default/keymap.c index 671c04a36b..b3ace4c7b7 100644 --- a/keyboards/viktus/omnikey_bh/keymaps/default/keymap.c +++ b/keyboards/viktus/omnikey_bh/keymaps/default/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, XXXXXXX, _______, XXXXXXX, _______, _______, _______, _______, diff --git a/keyboards/viktus/smolka/keymaps/default/keymap.c b/keyboards/viktus/smolka/keymaps/default/keymap.c index dba3f65203..8e91203f32 100644 --- a/keyboards/viktus/smolka/keymaps/default/keymap.c +++ b/keyboards/viktus/smolka/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* Smolka Base */ - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/viktus/smolka/keymaps/via/keymap.c b/keyboards/viktus/smolka/keymaps/via/keymap.c index 3d1f0a323c..7f5fff9ee9 100644 --- a/keyboards/viktus/smolka/keymaps/via/keymap.c +++ b/keyboards/viktus/smolka/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* Smolka Base */ - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/viktus/sp111/keymaps/default/keymap.c b/keyboards/viktus/sp111/keymaps/default/keymap.c index 11571e37a2..844b1c793c 100644 --- a/keyboards/viktus/sp111/keymaps/default/keymap.c +++ b/keyboards/viktus/sp111/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P0, KC_P0, KC_P00, KC_PDOT, KC_LCTL, KC_LGUI, KC_LALT, KC_MUTE, KC_SPC, KC_SPC, KC_APP, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [_FN] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/viktus/sp111/keymaps/via/keymap.c b/keyboards/viktus/sp111/keymaps/via/keymap.c index 37dacc3835..4ae50062ca 100644 --- a/keyboards/viktus/sp111/keymaps/via/keymap.c +++ b/keyboards/viktus/sp111/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P0, KC_P0, KC_PDOT, KC_PDOT, KC_LCTL, KC_LGUI, KC_LALT, KC_MUTE, KC_SPC, KC_SPC, KC_APP, KC_RALT, KC_RGUI, KC_RCTL, KC_LEFT, KC_DOWN, KC_RIGHT), [1] = LAYOUT_all( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/viktus/sp_mini/keymaps/default/keymap.c b/keyboards/viktus/sp_mini/keymaps/default/keymap.c index e01b6083d7..3f123b1cb1 100644 --- a/keyboards/viktus/sp_mini/keymaps/default/keymap.c +++ b/keyboards/viktus/sp_mini/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, _______, KC_UP, diff --git a/keyboards/viktus/sp_mini/keymaps/via/keymap.c b/keyboards/viktus/sp_mini/keymaps/via/keymap.c index e1242d5b9c..49d421e934 100644 --- a/keyboards/viktus/sp_mini/keymaps/via/keymap.c +++ b/keyboards/viktus/sp_mini/keymaps/via/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, _______, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, KC_VOLU, KC_LBRC, KC_RBRC, KC_4, KC_5, KC_6, KC_SCLN, _______, _______, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, KC_VOLD, KC_LCBR, KC_RCBR, KC_1, KC_2, KC_3, _______, KC_UP, diff --git a/keyboards/viktus/styrka/keymaps/default/keymap.c b/keyboards/viktus/styrka/keymaps/default/keymap.c index ac4950b2a4..47adf07313 100644 --- a/keyboards/viktus/styrka/keymaps/default/keymap.c +++ b/keyboards/viktus/styrka/keymaps/default/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_default( /* Styrka Base */ - RESET, KC_F2, 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_INS, + QK_BOOT, KC_F2, 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_INS, KC_F3, KC_F4, 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_DEL, KC_F5, KC_F6, 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_PGUP, KC_F7, KC_F8, 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, KC_PGDN, diff --git a/keyboards/viktus/styrka/keymaps/via/keymap.c b/keyboards/viktus/styrka/keymaps/via/keymap.c index 6ec931a90a..2950af5523 100644 --- a/keyboards/viktus/styrka/keymaps/via/keymap.c +++ b/keyboards/viktus/styrka/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( /* Styrka Base */ - RESET, 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, + QK_BOOT, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/viktus/z150_bh/keymaps/default/keymap.c b/keyboards/viktus/z150_bh/keymaps/default/keymap.c index 9ca75dd285..3ff40f7e83 100644 --- a/keyboards/viktus/z150_bh/keymaps/default/keymap.c +++ b/keyboards/viktus/z150_bh/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c b/keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c index fa1f7e47b9..bcc5501bac 100644 --- a/keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c +++ b/keyboards/viktus/z150_bh/keymaps/default_tkl/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_z150_tkl( - _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/vitamins_included/keymaps/default/keymap.c b/keyboards/vitamins_included/keymaps/default/keymap.c index 2f3b98060c..ce287fca9a 100644 --- a/keyboards/vitamins_included/keymaps/default/keymap.c +++ b/keyboards/vitamins_included/keymaps/default/keymap.c @@ -85,7 +85,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | * |------+------+------+------+------+------|------+------+------+------+------+------| - * |RESET | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |QK_BOOT | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * |TGNKRO| | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' @@ -93,7 +93,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT_ortho_4x12( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - RESET, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, + QK_BOOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, TG_NKRO, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), @@ -103,7 +103,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |TGNKRO|RESET | + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |TGNKRO|QK_BOOT | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' @@ -111,7 +111,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT_ortho_4x12( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, TG_NKRO, RESET, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, TG_NKRO, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), diff --git a/keyboards/vitamins_included/keymaps/via/keymap.c b/keyboards/vitamins_included/keymaps/via/keymap.c index 07460400f2..08968d0b52 100644 --- a/keyboards/vitamins_included/keymaps/via/keymap.c +++ b/keyboards/vitamins_included/keymaps/via/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | Del | F1 | F2 | F3 | F4 | F5 | F6 | _ | + | | \ | | | * |------+------+------+------+------+------|------+------+------+------+------+------| - * |RESET | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | + * |QK_BOOT | F7 | F8 | F9 | F10 | F11 | F12 |ISO ~ |ISO | | | |Enter | * |------+------+------+------+------+------+------+------+------+------+------+------| * |NKTOGG| | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LOWER] = LAYOUT_ortho_4x12( KC_TILD, KC_EXLM, KC_AT, KC_HASH, KC_DLR, KC_PERC, KC_CIRC, KC_AMPR, KC_ASTR, KC_LPRN, KC_RPRN, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_UNDS, KC_PLUS, KC_LCBR, KC_RCBR, KC_PIPE, - RESET, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, + QK_BOOT, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,S(KC_NUHS),S(KC_NUBS),_______,_______,_______, NK_TOGG, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), @@ -53,7 +53,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |------+------+------+------+------+-------------+------+------+------+------+------| * | Del | F1 | F2 | F3 | F4 | F5 | F6 | - | = | [ | ] | \ | * |------+------+------+------+------+------|------+------+------+------+------+------| - * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |NKTOGG|RESET | + * | | F7 | F8 | F9 | F10 | F11 | F12 |ISO # |ISO / | |NKTOGG|QK_BOOT | * |------+------+------+------+------+------+------+------+------+------+------+------| * | | | | | | | | Next | Vol- | Vol+ | Play | * `-----------------------------------------------------------------------------------' @@ -61,13 +61,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_RAISE] = LAYOUT_ortho_4x12( KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_DEL, KC_DEL, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, - _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, NK_TOGG, RESET, + _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_NUHS, KC_NUBS, _______, NK_TOGG, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), /* Adjust * ,-----------------------------------------------------------------------------------. - * | | RESET| | | | | | | | | RESET| Del | + * | | QK_BOOT| | | | | | | | | QK_BOOT| Del | * |------+------+------+------+------+-------------+------+------+------+------+------| * | | | | | | | | | | | | | * |------+------+------+------+------+------|------+------+------+------+------+------| @@ -77,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, RESET, KC_DEL, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, AU_OFF, AU_ON, _______, _______, _______, _______, _______, RGB_MOD diff --git a/keyboards/waldo/keymaps/default/keymap.c b/keyboards/waldo/keymaps/default/keymap.c index dffb55bd87..7d5f8c70f0 100644 --- a/keyboards/waldo/keymaps/default/keymap.c +++ b/keyboards/waldo/keymaps/default/keymap.c @@ -33,7 +33,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FUNCTION] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/waldo/keymaps/via/keymap.c b/keyboards/waldo/keymaps/via/keymap.c index b7dfa5e4e2..b5217a7a8a 100644 --- a/keyboards/waldo/keymaps/via/keymap.c +++ b/keyboards/waldo/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_60_ansi( - 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, KC_DEL, + QK_BOOT, 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_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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/walletburner/cajal/keymaps/via/keymap.c b/keyboards/walletburner/cajal/keymaps/via/keymap.c index 86348ed456..246bbfa246 100644 --- a/keyboards/walletburner/cajal/keymaps/via/keymap.c +++ b/keyboards/walletburner/cajal/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [3] = LAYOUT_stagger( - RESET, 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, + QK_BOOT, 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, 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 diff --git a/keyboards/walletburner/neuron/keymaps/default/keymap.c b/keyboards/walletburner/neuron/keymaps/default/keymap.c index e2c1dcf01d..d07fb306ce 100644 --- a/keyboards/walletburner/neuron/keymaps/default/keymap.c +++ b/keyboards/walletburner/neuron/keymaps/default/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_RALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/walletburner/neuron/keymaps/via/keymap.c b/keyboards/walletburner/neuron/keymaps/via/keymap.c index 29e1c4d68d..a0cf95210f 100644 --- a/keyboards/walletburner/neuron/keymaps/via/keymap.c +++ b/keyboards/walletburner/neuron/keymaps/via/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI, KC_RALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/wavtype/foundation/keymaps/default/keymap.c b/keyboards/wavtype/foundation/keymaps/default/keymap.c index 1e9bd709f7..884a66f7e2 100644 --- a/keyboards/wavtype/foundation/keymaps/default/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/default/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_ansi_split_bs( RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, 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, RGB_SAI, 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_VOLU, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c b/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c index 304517d43a..1691538831 100644 --- a/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/default_ansi_tsangan_split_bs/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_ansi_tsangan_split_bs( RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, 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, RGB_SAI, 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_VOLU, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c b/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c index e93a0771e3..cfb2589685 100644 --- a/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/default_iso_split_bs_rshift/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_iso_split_bs_rshift( RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, 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, RGB_SAI, 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_VOLU, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c b/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c index b9561bc39b..ffe2f53221 100644 --- a/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/default_iso_tsangan_split_bs_rshift/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_iso_tsangan_split_bs_rshift( RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, 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, RGB_SAI, 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_VOLU, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wavtype/foundation/keymaps/via/keymap.c b/keyboards/wavtype/foundation/keymaps/via/keymap.c index ba8929c1a9..f57fe6d61a 100644 --- a/keyboards/wavtype/foundation/keymaps/via/keymap.c +++ b/keyboards/wavtype/foundation/keymaps/via/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_ansi_split_bs( RGB_TOG, 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_INS, KC_HOME, KC_PGUP, - RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + RGB_MOD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_HUI, 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, RGB_SAI, 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_VOLU, RGB_VAI, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wekey/polaris/keymaps/default/keymap.c b/keyboards/wekey/polaris/keymaps/default/keymap.c index 65902ae583..c53c3a7226 100644 --- a/keyboards/wekey/polaris/keymaps/default/keymap.c +++ b/keyboards/wekey/polaris/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL ), [_FN] = LAYOUT_all( /* FN */ - 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, KC_DEL, KC_BSPC, + QK_BOOT, 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_BSPC, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, KC_UP, _______, KC_MPRV, KC_MPLY, KC_MNXT, BL_STEP, _______, KC_HOME, KC_PGDN, KC_END, _______, KC_VOLD, KC_VOLU, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, KC_PSCR, _______, diff --git a/keyboards/wekey/stelo65/keymaps/default/keymap.c b/keyboards/wekey/stelo65/keymaps/default/keymap.c index 3e55cfdd22..305d97243c 100644 --- a/keyboards/wekey/stelo65/keymaps/default/keymap.c +++ b/keyboards/wekey/stelo65/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN] = LAYOUT_all( - 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, _______, _______, _______, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/wekey/stelo65/keymaps/via/keymap.c b/keyboards/wekey/stelo65/keymaps/via/keymap.c index 3c3b9076c1..1a5c202947 100644 --- a/keyboards/wekey/stelo65/keymaps/via/keymap.c +++ b/keyboards/wekey/stelo65/keymaps/via/keymap.c @@ -21,7 +21,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] = LAYOUT_all( - 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, _______, _______, _______, _______, _______, + QK_BOOT, 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_PGUP, _______, _______, _______, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, diff --git a/keyboards/wekey/we27/keymaps/default/keymap.c b/keyboards/wekey/we27/keymaps/default/keymap.c index fdaafa7d82..53f5c5dc77 100644 --- a/keyboards/wekey/we27/keymaps/default/keymap.c +++ b/keyboards/wekey/we27/keymaps/default/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, - _______, _______, _______, RESET + _______, _______, _______, QK_BOOT ), [2] = LAYOUT_numpad_6x5_encoder( _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wekey/we27/keymaps/via/keymap.c b/keyboards/wekey/we27/keymaps/via/keymap.c index fdaafa7d82..53f5c5dc77 100644 --- a/keyboards/wekey/we27/keymaps/via/keymap.c +++ b/keyboards/wekey/we27/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_SPI, RGB_HUI, RGB_SAI, RGB_VAI, RGB_SPD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, - _______, _______, _______, RESET + _______, _______, _______, QK_BOOT ), [2] = LAYOUT_numpad_6x5_encoder( _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westfoxtrot/aanzee/keymaps/default/keymap.c b/keyboards/westfoxtrot/aanzee/keymaps/default/keymap.c index e4c89b118b..2ba8596bc5 100644 --- a/keyboards/westfoxtrot/aanzee/keymaps/default/keymap.c +++ b/keyboards/westfoxtrot/aanzee/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT), [_F1] = LAYOUT_ansi( - 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,_______,_______,_______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,_______,_______,_______, _______,RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, diff --git a/keyboards/westfoxtrot/aanzee/keymaps/via/keymap.c b/keyboards/westfoxtrot/aanzee/keymaps/via/keymap.c index 183b419402..4e648fdeff 100644 --- a/keyboards/westfoxtrot/aanzee/keymaps/via/keymap.c +++ b/keyboards/westfoxtrot/aanzee/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,MO(_F1) ,KC_LEFT,KC_DOWN, KC_RGHT), [_F1] = LAYOUT_ansi( - 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,_______,_______,_______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12,_______,_______,_______, _______,RGB_TOG,RGB_MOD,RGB_HUI,RGB_HUD,RGB_SAI,RGB_SAD,RGB_VAI,RGB_VAD,_______,_______,_______,_______,_______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, diff --git a/keyboards/westfoxtrot/cyclops/keymaps/default/keymap.c b/keyboards/westfoxtrot/cyclops/keymaps/default/keymap.c index b693bcebad..42e3dcd0bd 100644 --- a/keyboards/westfoxtrot/cyclops/keymaps/default/keymap.c +++ b/keyboards/westfoxtrot/cyclops/keymaps/default/keymap.c @@ -33,5 +33,5 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_END, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_ENT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - RESET, _______, _______, _______, _______, _______, _______, _______, _______), + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______), }; diff --git a/keyboards/westfoxtrot/cypher/rev1/keymaps/default/keymap.c b/keyboards/westfoxtrot/cypher/rev1/keymaps/default/keymap.c index 54eae8e38e..bd79fe5d0b 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keymaps/default/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev1/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_ansi( /* Function Layer */ - 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, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westfoxtrot/cypher/rev1/keymaps/default_iso/keymap.c b/keyboards/westfoxtrot/cypher/rev1/keymaps/default_iso/keymap.c index df93c53996..2ce4282661 100644 --- a/keyboards/westfoxtrot/cypher/rev1/keymaps/default_iso/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev1/keymaps/default_iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_iso( /* Function Layer */ - 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, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westfoxtrot/cypher/rev5/keymaps/default/keymap.c b/keyboards/westfoxtrot/cypher/rev5/keymaps/default/keymap.c index f9d6bc8e56..b1001450e5 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keymaps/default/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev5/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI,KC_LALT, KC_SPC,KC_SPC,KC_SPC, KC_RALT,KC_RALT,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_all( /* Function Layer */ - 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, KC_DEL , _______, _______, _______, _______, _______, + QK_BOOT, 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 , _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westfoxtrot/cypher/rev5/keymaps/default_iso/keymap.c b/keyboards/westfoxtrot/cypher/rev5/keymaps/default_iso/keymap.c index e3bda0c005..65c01ef9d5 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keymaps/default_iso/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev5/keymaps/default_iso/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTRL, KC_LGUI,KC_LALT, KC_NO,KC_SPC,KC_NO, KC_RALT,KC_RGUI,MO(_F1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [_F1] = LAYOUT_all( /* Function Layer */ - 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, _______, _______, _______, _______, _______, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, _______, _______, _______, _______, BL_TOGG,BL_STEP,BL_ON,BL_OFF,BL_INC,BL_DEC,BL_BRTG,_______,_______,_______,_______, _______,_______, _______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______,_______,_______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westfoxtrot/cypher/rev5/keymaps/via/keymap.c b/keyboards/westfoxtrot/cypher/rev5/keymaps/via/keymap.c index 93be29fbdc..47e4ad4017 100644 --- a/keyboards/westfoxtrot/cypher/rev5/keymaps/via/keymap.c +++ b/keyboards/westfoxtrot/cypher/rev5/keymaps/via/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RALT, MO(1), KC_LEFT,KC_DOWN,KC_RGHT, KC_P0, KC_PDOT, KC_BSPC), [1] = LAYOUT_all( - 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, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + QK_BOOT, 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_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_STEP, BL_ON, BL_OFF, BL_INC, BL_DEC, BL_BRTG, 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, 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, diff --git a/keyboards/westfoxtrot/prophet/keymaps/default/keymap.c b/keyboards/westfoxtrot/prophet/keymaps/default/keymap.c index 095baf9ac9..5fef7d1e53 100644 --- a/keyboards/westfoxtrot/prophet/keymaps/default/keymap.c +++ b/keyboards/westfoxtrot/prophet/keymaps/default/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI,KC_RCTL), [_F1] = LAYOUT_all( - 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,KC_INS,KC_DEL, + QK_BOOT, 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_INS,KC_DEL, KC_CAPS,_______,_______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK,KC_PAUS,KC_UP,_______,KC_DEL, _______,KC_VOLD,KC_VOLU,KC_MUTE,KC_EJCT,_______,KC_PAST,KC_PSLS,KC_HOME,KC_PGUP,KC_LEFT,KC_RIGHT, _______, _______,_______,_______,_______,_______,_______,_______,KC_PPLS,KC_PMNS,KC_END,KC_PGDN,KC_DOWN,_______,_______, diff --git a/keyboards/westfoxtrot/prophet/keymaps/via/keymap.c b/keyboards/westfoxtrot/prophet/keymaps/via/keymap.c index 966ea3a84d..39b80cde46 100644 --- a/keyboards/westfoxtrot/prophet/keymaps/via/keymap.c +++ b/keyboards/westfoxtrot/prophet/keymaps/via/keymap.c @@ -13,7 +13,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LGUI,KC_LGUI,KC_LALT, KC_SPC, KC_RALT,KC_RGUI,KC_RCTL), [_F1] = LAYOUT_all( - 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,KC_INS,KC_DEL, + QK_BOOT, 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_INS,KC_DEL, KC_CAPS,_______,_______,_______,_______,_______,_______,_______,KC_PSCR,KC_SLCK,KC_PAUS,KC_UP,_______,KC_DEL, _______,KC_VOLD,KC_VOLU,KC_MUTE,KC_EJCT,_______,KC_PAST,KC_PSLS,KC_HOME,KC_PGUP,KC_LEFT,KC_RIGHT, _______, _______,_______,_______,_______,_______,_______,_______,KC_PPLS,KC_PMNS,KC_END,KC_PGDN,KC_DOWN,_______,_______, diff --git a/keyboards/westm/westmergo/keymaps/default/keymap.c b/keyboards/westm/westmergo/keymaps/default/keymap.c index 80e40b33ca..ba24687860 100755 --- a/keyboards/westm/westmergo/keymaps/default/keymap.c +++ b/keyboards/westm/westmergo/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_SPC, KC_LALT, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice( /* FN */ - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_MUTE, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC__VOLDOWN, KC__VOLUP, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/westm/westmergo/keymaps/via/keymap.c b/keyboards/westm/westmergo/keymaps/via/keymap.c index 170f827100..8389331a09 100644 --- a/keyboards/westm/westmergo/keymaps/via/keymap.c +++ b/keyboards/westm/westmergo/keymaps/via/keymap.c @@ -26,21 +26,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_SPC, KC_LALT, KC_SPC, KC_RALT, KC_RCTL ), [1] = LAYOUT_alice( /* FN */ - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_MUTE, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC__VOLDOWN, KC__VOLUP, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_alice( /* 2 */ - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_MUTE, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC__VOLDOWN, KC__VOLUP, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT_alice( /* 3 */ - 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, KC_DEL, + QK_BOOT, _______, 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_HOME, _______, _______, KC_UP, _______, RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, KC_END, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, KC_MUTE, RGB_HUI, RGB_HUD, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, KC__VOLDOWN, KC__VOLUP, RGB_SAI, RGB_SAD, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wolf/kuku65/keymaps/default/keymap.c b/keyboards/wolf/kuku65/keymaps/default/keymap.c index 11d9f26ff5..a310ea69a3 100644 --- a/keyboards/wolf/kuku65/keymaps/default/keymap.c +++ b/keyboards/wolf/kuku65/keymaps/default/keymap.c @@ -61,7 +61,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ) }; diff --git a/keyboards/wolf/kuku65/keymaps/via/keymap.c b/keyboards/wolf/kuku65/keymaps/via/keymap.c index 44618f676b..d605e4ec5b 100644 --- a/keyboards/wolf/kuku65/keymaps/via/keymap.c +++ b/keyboards/wolf/kuku65/keymaps/via/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_AUDIO_VOL_UP, KC_AUDIO_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MEDIA_PREV_TRACK, KC_AUDIO_VOL_DOWN, KC_MEDIA_NEXT_TRACK ), diff --git a/keyboards/wolf/sabre/keymaps/default/keymap.c b/keyboards/wolf/sabre/keymaps/default/keymap.c index a873ab89fb..dc8312a7ea 100644 --- a/keyboards/wolf/sabre/keymaps/default/keymap.c +++ b/keyboards/wolf/sabre/keymaps/default/keymap.c @@ -35,7 +35,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG ) }; diff --git a/keyboards/wolf/sabre/keymaps/via/keymap.c b/keyboards/wolf/sabre/keymaps/via/keymap.c index 6a6c35bb0e..e3d01e7424 100644 --- a/keyboards/wolf/sabre/keymaps/via/keymap.c +++ b/keyboards/wolf/sabre/keymaps/via/keymap.c @@ -37,7 +37,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, + KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_INC, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, BL_TOGG, BL_DEC, BL_BRTG ), diff --git a/keyboards/wolf/ts60/keymaps/default/keymap.c b/keyboards/wolf/ts60/keymaps/default/keymap.c index 9165bea341..262d51f25e 100644 --- a/keyboards/wolf/ts60/keymaps/default/keymap.c +++ b/keyboards/wolf/ts60/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GRV, 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, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ) diff --git a/keyboards/wolf/ts60/keymaps/via/keymap.c b/keyboards/wolf/ts60/keymaps/via/keymap.c index 65d06d649d..c418f9697e 100644 --- a/keyboards/wolf/ts60/keymaps/via/keymap.c +++ b/keyboards/wolf/ts60/keymaps/via/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_LAYER1] = LAYOUT_60_ansi( KC_GRV , 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, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, - _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), diff --git a/keyboards/wolfmarkclub/wm1/keymaps/default/keymap.c b/keyboards/wolfmarkclub/wm1/keymaps/default/keymap.c index 83e9ac21a7..9817557d66 100644 --- a/keyboards/wolfmarkclub/wm1/keymaps/default/keymap.c +++ b/keyboards/wolfmarkclub/wm1/keymaps/default/keymap.c @@ -10,7 +10,7 @@ KC_LCTL, KC_LALT,KC_LGUI,KC_SPC, KC_SPC, KC_RALT, [1] = LAYOUT( KC_GRV, 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, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, +QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______), diff --git a/keyboards/woodkeys/meira/keymaps/default/keymap.c b/keyboards/woodkeys/meira/keymaps/default/keymap.c index dacf848cf1..44229c1b11 100644 --- a/keyboards/woodkeys/meira/keymaps/default/keymap.c +++ b/keyboards/woodkeys/meira/keymaps/default/keymap.c @@ -157,7 +157,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - BL_TOGG, RESET, _______, KC_MRWD, KC_MPLY, KC_MFFD, KC_PSCR, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, + BL_TOGG, QK_BOOT, _______, KC_MRWD, KC_MPLY, KC_MFFD, KC_PSCR, _______, KC_MUTE, KC_VOLD, KC_VOLU, KC_DEL, BL_STEP, RGB_MOD, _______, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_PSCR, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/woodkeys/scarletbandana/keymaps/default/keymap.c b/keyboards/woodkeys/scarletbandana/keymaps/default/keymap.c index 7b2687a607..707e9fa132 100644 --- a/keyboards/woodkeys/scarletbandana/keymaps/default/keymap.c +++ b/keyboards/woodkeys/scarletbandana/keymaps/default/keymap.c @@ -63,7 +63,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______,_______,_______, _______, _______, _______, _______,_______,_______,_______,_______,_______), [_ADJUST] = LAYOUT_all( - RESET, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, + QK_BOOT, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, _______, _______, _______, _______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______,_______, diff --git a/keyboards/work_louder/loop/keymaps/default/keymap.c b/keyboards/work_louder/loop/keymaps/default/keymap.c index a2e35d9670..aafe366180 100644 --- a/keyboards/work_louder/loop/keymaps/default/keymap.c +++ b/keyboards/work_louder/loop/keymaps/default/keymap.c @@ -21,10 +21,10 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_MUTE, KC_MPLY, R_M_TOG, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, MO(1) ), [1] = LAYOUT( - RESET, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, MO(2), _______ + QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, MO(2), _______ ), [2] = LAYOUT( - RESET, _______, R_M_TOG, R_M_MOD, R_M_HUI, R_M_HUD, R_M_SAI, R_M_SAD, R_M_VAI, R_M_VAD, _______, _______ + QK_BOOT, _______, R_M_TOG, R_M_MOD, R_M_HUI, R_M_HUD, R_M_SAI, R_M_SAD, R_M_VAI, R_M_VAD, _______, _______ ) }; // clang-format on diff --git a/keyboards/work_louder/loop/keymaps/via/keymap.c b/keyboards/work_louder/loop/keymaps/via/keymap.c index 22113e836e..286c651361 100644 --- a/keyboards/work_louder/loop/keymaps/via/keymap.c +++ b/keyboards/work_louder/loop/keymaps/via/keymap.c @@ -30,11 +30,11 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_VOLU, KC_VOLD, KC_MNXT, KC_MPRV, R_M_MOD, R_M_RMOD ), [1] = LAYOUT_via( - RESET, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, MO(2), _______, + QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, MO(2), _______, _______, _______, _______, _______, RGB_MOD, RGB_RMOD ), [2] = LAYOUT_via( - RESET, _______, R_M_TOG, R_M_MOD, R_M_HUI, R_M_HUD, R_M_SAI, R_M_SAD, R_M_VAI, R_M_VAD, _______, _______, + QK_BOOT, _______, R_M_TOG, R_M_MOD, R_M_HUI, R_M_HUD, R_M_SAI, R_M_SAD, R_M_VAI, R_M_VAD, _______, _______, _______, _______, _______, _______, R_M_MOD, R_M_RMOD ), [3] = LAYOUT_via( diff --git a/keyboards/work_louder/nano/keymaps/default/keymap.c b/keyboards/work_louder/nano/keymaps/default/keymap.c index d4647657e4..9f7433123c 100644 --- a/keyboards/work_louder/nano/keymaps/default/keymap.c +++ b/keyboards/work_louder/nano/keymaps/default/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Base */ [0] = LAYOUT(KC_PSCR, KC_LSFT, MO(1)), - [1] = LAYOUT(RESET, KC_LCTL, _______)}; + [1] = LAYOUT(QK_BOOT, KC_LCTL, _______)}; // bool encoder_update_user(uint8_t index, bool clockwise) { // if (clockwise) { diff --git a/keyboards/work_louder/nano/keymaps/via/keymap.c b/keyboards/work_louder/nano/keymaps/via/keymap.c index 7461172e07..07451f52b2 100644 --- a/keyboards/work_louder/nano/keymaps/via/keymap.c +++ b/keyboards/work_louder/nano/keymaps/via/keymap.c @@ -31,7 +31,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PGDN, KC_PGUP ), [1] = LAYOUT_via( - RESET, MACRO01, _______, + QK_BOOT, MACRO01, _______, _______, _______ ), [2] = LAYOUT_via( diff --git a/keyboards/work_louder/work_board/keymaps/default/keymap.c b/keyboards/work_louder/work_board/keymaps/default/keymap.c index 01c96ecedb..59bb437d9d 100644 --- a/keyboards/work_louder/work_board/keymaps/default/keymap.c +++ b/keyboards/work_louder/work_board/keymaps/default/keymap.c @@ -144,7 +144,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, _______, MU_MOD, AU_ON, AU_OFF, AG_NORM, AG_SWAP, QWERTY, COLEMAK, DVORAK, _______, _______, _______, MUV_DE, MUV_IN, MU_ON, MU_OFF, MI_ON, MI_OFF, TERM_ON, TERM_OFF, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/work_louder/work_board/keymaps/via/keymap.c b/keyboards/work_louder/work_board/keymaps/via/keymap.c index 5675adf2ed..fff7248afa 100644 --- a/keyboards/work_louder/work_board/keymaps/via/keymap.c +++ b/keyboards/work_louder/work_board/keymaps/via/keymap.c @@ -67,7 +67,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_ADJUST] = LAYOUT_via( - _______, RESET, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , R_M_TOG, + _______, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , R_M_TOG, _______, _______, MU_MOD, R_M_TOG, R_M_MOD, R_M_HUI, R_M_HUD, R_M_SAI, R_M_SAD, R_M_VAI, R_M_VAD, _______, R_M_HUI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, R_M_HUD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/wsk/gothic50/keymaps/default/keymap.c b/keyboards/wsk/gothic50/keymaps/default/keymap.c index 512dd85595..d366bccc9e 100644 --- a/keyboards/wsk/gothic50/keymaps/default/keymap.c +++ b/keyboards/wsk/gothic50/keymaps/default/keymap.c @@ -23,7 +23,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT( - _______, 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, + _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/wsk/gothic70/keymaps/default/keymap.c b/keyboards/wsk/gothic70/keymaps/default/keymap.c index db4c52b41b..66ed2da1b7 100644 --- a/keyboards/wsk/gothic70/keymaps/default/keymap.c +++ b/keyboards/wsk/gothic70/keymaps/default/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_MEDIA] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, diff --git a/keyboards/wsk/gothic70/keymaps/via/keymap.c b/keyboards/wsk/gothic70/keymaps/via/keymap.c index f386f0b3fd..af0424baed 100644 --- a/keyboards/wsk/gothic70/keymaps/via/keymap.c +++ b/keyboards/wsk/gothic70/keymaps/via/keymap.c @@ -34,14 +34,14 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( KC_GRV, 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_PAUS, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_MOD, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_END ), [_MEDIA] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, diff --git a/keyboards/wsk/jerkin/keymaps/default/keymap.c b/keyboards/wsk/jerkin/keymaps/default/keymap.c index 38c1195e91..13cb333bad 100644 --- a/keyboards/wsk/jerkin/keymaps/default/keymap.c +++ b/keyboards/wsk/jerkin/keymaps/default/keymap.c @@ -16,7 +16,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_TRNS), [2] = LAYOUT( - 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, + QK_BOOT, 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_HOME, KC_PGDN, KC_PGUP, KC_END, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PASTA, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS) diff --git a/keyboards/wsk/sl40/keymaps/default/keymap.c b/keyboards/wsk/sl40/keymaps/default/keymap.c index 8055d7fd9d..087c7302a6 100644 --- a/keyboards/wsk/sl40/keymaps/default/keymap.c +++ b/keyboards/wsk/sl40/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( KC_GRV, 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_DEL, - KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, RESET, KC_VOLU, KC_VOLD, KC_MPRV, KC_MNXT, KC_TRNS, + KC_TRNS, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, QK_BOOT, KC_VOLU, KC_VOLD, KC_MPRV, KC_MNXT, KC_TRNS, KC_TRNS, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MPLY, KC_MSTP, KC_TRNS, KC_TRNS, KC_PGUP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_PGDN, KC_END ), diff --git a/keyboards/wsk/tkl30/keymaps/default/keymap.c b/keyboards/wsk/tkl30/keymaps/default/keymap.c index 7f10893049..01e16b46bc 100644 --- a/keyboards/wsk/tkl30/keymaps/default/keymap.c +++ b/keyboards/wsk/tkl30/keymaps/default/keymap.c @@ -15,7 +15,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT( - 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, KC_DEL, + QK_BOOT, 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_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 ) diff --git a/keyboards/wuque/ikki68/keymaps/default/keymap.c b/keyboards/wuque/ikki68/keymaps/default/keymap.c index 13f869e384..42b0d8e7da 100644 --- a/keyboards/wuque/ikki68/keymaps/default/keymap.c +++ b/keyboards/wuque/ikki68/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_68_ansi( - KC_GRV, 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, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wuque/ikki68/keymaps/via/keymap.c b/keyboards/wuque/ikki68/keymaps/via/keymap.c index 7825082eb2..4c3ec7f29d 100644 --- a/keyboards/wuque/ikki68/keymaps/via/keymap.c +++ b/keyboards/wuque/ikki68/keymaps/via/keymap.c @@ -25,21 +25,21 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_68_ansi( - KC_GRV, 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, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_68_ansi( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [3] = LAYOUT_68_ansi( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wuque/ikki68_aurora/keymaps/default/keymap.c b/keyboards/wuque/ikki68_aurora/keymaps/default/keymap.c index 3e05333a28..d18ad7c012 100644 --- a/keyboards/wuque/ikki68_aurora/keymaps/default/keymap.c +++ b/keyboards/wuque/ikki68_aurora/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - KC_GRV, 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, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wuque/ikki68_aurora/keymaps/via/keymap.c b/keyboards/wuque/ikki68_aurora/keymaps/via/keymap.c index fec80fca15..26be5780da 100644 --- a/keyboards/wuque/ikki68_aurora/keymaps/via/keymap.c +++ b/keyboards/wuque/ikki68_aurora/keymaps/via/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - KC_GRV, 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, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, _______, QK_BOOT, _______, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/wuque/mammoth75x/keymaps/default/keymap.c b/keyboards/wuque/mammoth75x/keymaps/default/keymap.c index 6dd789e179..b0273298dc 100644 --- a/keyboards/wuque/mammoth75x/keymaps/default/keymap.c +++ b/keyboards/wuque/mammoth75x/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/wuque/mammoth75x/keymaps/via/keymap.c b/keyboards/wuque/mammoth75x/keymaps/via/keymap.c index bb62bedefe..13d5d4fa7a 100644 --- a/keyboards/wuque/mammoth75x/keymaps/via/keymap.c +++ b/keyboards/wuque/mammoth75x/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/wuque/serneity65/keymaps/default/keymap.c b/keyboards/wuque/serneity65/keymaps/default/keymap.c index 23928ddea5..2acca2f0c0 100644 --- a/keyboards/wuque/serneity65/keymaps/default/keymap.c +++ b/keyboards/wuque/serneity65/keymaps/default/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/wuque/serneity65/keymaps/via/keymap.c b/keyboards/wuque/serneity65/keymaps/via/keymap.c index 435e020090..8e820022fe 100644 --- a/keyboards/wuque/serneity65/keymaps/via/keymap.c +++ b/keyboards/wuque/serneity65/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_GRV, 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_MPRV, KC_MPLY, KC_MNXT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ), [2] = LAYOUT_all( diff --git a/keyboards/x16/keymaps/default/keymap.c b/keyboards/x16/keymaps/default/keymap.c index fea518ad31..3f9186c8f2 100644 --- a/keyboards/x16/keymaps/default/keymap.c +++ b/keyboards/x16/keymaps/default/keymap.c @@ -19,7 +19,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { MO(1), KC_P0, KC_DOT, KC_ENT ), [1] = LAYOUT_ortho_4x4( - RESET, KC_TRNS, KC_TRNS, KC_DEL, + QK_BOOT, KC_TRNS, KC_TRNS, KC_DEL, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPLY diff --git a/keyboards/xbows/knight/keymaps/default/keymap.c b/keyboards/xbows/knight/keymaps/default/keymap.c index bde212f105..ab5329199b 100644 --- a/keyboards/xbows/knight/keymaps/default/keymap.c +++ b/keyboards/xbows/knight/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/knight/keymaps/via/keymap.c b/keyboards/xbows/knight/keymaps/via/keymap.c index dabbc6c9b3..662b68f81b 100644 --- a/keyboards/xbows/knight/keymaps/via/keymap.c +++ b/keyboards/xbows/knight/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/knight_plus/keymaps/default/keymap.c b/keyboards/xbows/knight_plus/keymaps/default/keymap.c index a1941677e4..6316f66a9d 100644 --- a/keyboards/xbows/knight_plus/keymaps/default/keymap.c +++ b/keyboards/xbows/knight_plus/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/knight_plus/keymaps/via/keymap.c b/keyboards/xbows/knight_plus/keymaps/via/keymap.c index dcd9ec687b..31a359266d 100644 --- a/keyboards/xbows/knight_plus/keymaps/via/keymap.c +++ b/keyboards/xbows/knight_plus/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/nature/keymaps/default/keymap.c b/keyboards/xbows/nature/keymaps/default/keymap.c index 605c58bad4..331889ffe4 100644 --- a/keyboards/xbows/nature/keymaps/default/keymap.c +++ b/keyboards/xbows/nature/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/nature/keymaps/via/keymap.c b/keyboards/xbows/nature/keymaps/via/keymap.c index dabbc6c9b3..662b68f81b 100644 --- a/keyboards/xbows/nature/keymaps/via/keymap.c +++ b/keyboards/xbows/nature/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_ENT, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_LCTL, KC_LSFT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, 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_NLCK, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_HOME, KC_TRNS, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_END, diff --git a/keyboards/xbows/numpad/keymaps/default/keymap.c b/keyboards/xbows/numpad/keymaps/default/keymap.c index b2b4da7fb5..9d657a33cc 100644 --- a/keyboards/xbows/numpad/keymaps/default/keymap.c +++ b/keyboards/xbows/numpad/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P1, KC_P2, KC_P3, KC_PENT, KC_P0, KC_PDOT), [1] = LAYOUT( - RESET, EEP_RST, KC_TRNS, KC_TRNS, + QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, RGB_MOD, RGB_VAI, RGB_HUI, KC_VOLD, RGB_SPD, RGB_TOG, RGB_SPI, KC_VOLU, diff --git a/keyboards/xbows/numpad/keymaps/via/keymap.c b/keyboards/xbows/numpad/keymaps/via/keymap.c index 6b122cc5d0..36b91961c8 100644 --- a/keyboards/xbows/numpad/keymaps/via/keymap.c +++ b/keyboards/xbows/numpad/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_P1, KC_P2, KC_P3, KC_PENT, KC_P0, KC_PDOT), [1] = LAYOUT( - RESET, EEP_RST, KC_TRNS, KC_TRNS, + QK_BOOT, EEP_RST, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, RGB_MOD, RGB_VAI, RGB_HUI, KC_VOLD, RGB_SPD, RGB_TOG, RGB_SPI, KC_VOLU, diff --git a/keyboards/xbows/ranger/keymaps/default/keymap.c b/keyboards/xbows/ranger/keymaps/default/keymap.c index 27b0cf3f8b..519014af06 100644 --- a/keyboards/xbows/ranger/keymaps/default/keymap.c +++ b/keyboards/xbows/ranger/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT, MO(1) , KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_tkl_ansi( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, KC_NLCK, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, KC_NLCK, 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, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, 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, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/xbows/ranger/keymaps/via/keymap.c b/keyboards/xbows/ranger/keymaps/via/keymap.c index e38c05861a..61632edbf4 100644 --- a/keyboards/xbows/ranger/keymaps/via/keymap.c +++ b/keyboards/xbows/ranger/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_LCTL, KC_LGUI,KC_LALT, KC_SPC, KC_RALT, MO(1) , KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_tkl_ansi( - RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, KC_NLCK, + QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_CALC, KC_MYCM, KC_MSEL, KC_MAIL, NK_TOGG, EEP_RST, KC_NLCK, 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, RGB_TOG, RGB_MOD, RGB_VAI, RGB_HUI, 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, RGB_SPD, RGB_VAD, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/xbows/woody/keymaps/default/keymap.c b/keyboards/xbows/woody/keymaps/default/keymap.c index 62e86be2fe..820b5315ef 100644 --- a/keyboards/xbows/woody/keymaps/default/keymap.c +++ b/keyboards/xbows/woody/keymaps/default/keymap.c @@ -9,7 +9,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT( /* FN */ KC_GESC, 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_DEL, - KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, RESET, KC_HOME, + KC_TRNS, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, QK_BOOT, KC_HOME, KC_CAPS, RGB_SPI, RGB_SPD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, EEP_RST, KC_END, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, NK_TOGG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLU, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT) diff --git a/keyboards/xelus/akis/keymaps/default/keymap.c b/keyboards/xelus/akis/keymaps/default/keymap.c index 5144727442..c3d986c13d 100644 --- a/keyboards/xelus/akis/keymaps/default/keymap.c +++ b/keyboards/xelus/akis/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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_PSCR, KC_PSCR, RESET, + 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_PSCR, KC_PSCR, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/xelus/akis/keymaps/via/keymap.c b/keyboards/xelus/akis/keymaps/via/keymap.c index 82325529e8..a8e2913f84 100644 --- a/keyboards/xelus/akis/keymaps/via/keymap.c +++ b/keyboards/xelus/akis/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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_PSCR, KC_PSCR, RESET, + 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_PSCR, KC_PSCR, QK_BOOT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/xelus/dharma/keymaps/default/keymap.c b/keyboards/xelus/dharma/keymaps/default/keymap.c index 8039663e5f..9a3337dc77 100644 --- a/keyboards/xelus/dharma/keymaps/default/keymap.c +++ b/keyboards/xelus/dharma/keymaps/default/keymap.c @@ -29,8 +29,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_GRV, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ) diff --git a/keyboards/xelus/dharma/keymaps/via/keymap.c b/keyboards/xelus/dharma/keymaps/via/keymap.c index 7f28ab1c23..9d45c281a0 100644 --- a/keyboards/xelus/dharma/keymaps/via/keymap.c +++ b/keyboards/xelus/dharma/keymaps/via/keymap.c @@ -29,8 +29,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( - KC_GRV, 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, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, - KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, QK_BOOT, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_CAPS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_INS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS ), diff --git a/keyboards/xelus/kangaroo/keymaps/default/keymap.c b/keyboards/xelus/kangaroo/keymaps/default/keymap.c index 2e877c4fc1..9150ceffc8 100644 --- a/keyboards/xelus/kangaroo/keymaps/default/keymap.c +++ b/keyboards/xelus/kangaroo/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_PENT, KC_PDOT, KC_P0, KC_P0, KC_LEFT, KC_DOWN, KC_RGHT, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_APP, KC_RCTL), [1] = LAYOUT_all( - RESET , 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, + QK_BOOT , 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, 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, 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, diff --git a/keyboards/xelus/la_plus/keymaps/default/keymap.c b/keyboards/xelus/la_plus/keymaps/default/keymap.c index cf04368e52..4b4fac030d 100755 --- a/keyboards/xelus/la_plus/keymaps/default/keymap.c +++ b/keyboards/xelus/la_plus/keymaps/default/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( KC_GRV, 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_INS, KC_DEL, KB_SUAC, - KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, 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), diff --git a/keyboards/xelus/la_plus/keymaps/via/keymap.c b/keyboards/xelus/la_plus/keymaps/via/keymap.c index cf04368e52..4b4fac030d 100755 --- a/keyboards/xelus/la_plus/keymaps/via/keymap.c +++ b/keyboards/xelus/la_plus/keymaps/via/keymap.c @@ -30,7 +30,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // Fn1 Layer [1] = LAYOUT_all( KC_GRV, 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_INS, KC_DEL, KB_SUAC, - KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_CAPS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_PSCR, KC_SLCK, KC_PAUS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, KC_MUTE, KC_EJCT, 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), diff --git a/keyboards/xelus/ninjin/keymaps/default/keymap.c b/keyboards/xelus/ninjin/keymaps/default/keymap.c index 2bc991e42c..338d5ada59 100644 --- a/keyboards/xelus/ninjin/keymaps/default/keymap.c +++ b/keyboards/xelus/ninjin/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_tkl_ansi_tsangan( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/xelus/ninjin/keymaps/via/keymap.c b/keyboards/xelus/ninjin/keymaps/via/keymap.c index 0af46375c4..331214cbf8 100644 --- a/keyboards/xelus/ninjin/keymaps/via/keymap.c +++ b/keyboards/xelus/ninjin/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LWIN, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_tkl_ansi_tsangan( - RESET, 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, + QK_BOOT, 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, 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, diff --git a/keyboards/xelus/pachi/mini_32u4/keymaps/default/keymap.c b/keyboards/xelus/pachi/mini_32u4/keymaps/default/keymap.c index 9fdc609e7d..0459e1f2dd 100644 --- a/keyboards/xelus/pachi/mini_32u4/keymaps/default/keymap.c +++ b/keyboards/xelus/pachi/mini_32u4/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, 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, 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, diff --git a/keyboards/xelus/pachi/mini_32u4/keymaps/via/keymap.c b/keyboards/xelus/pachi/mini_32u4/keymaps/via/keymap.c index 0b3f81afb5..d46bdc103f 100644 --- a/keyboards/xelus/pachi/mini_32u4/keymaps/via/keymap.c +++ b/keyboards/xelus/pachi/mini_32u4/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, 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, 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, diff --git a/keyboards/xelus/pachi/rev1/keymaps/default/keymap.c b/keyboards/xelus/pachi/rev1/keymaps/default/keymap.c index 9fdc609e7d..0459e1f2dd 100644 --- a/keyboards/xelus/pachi/rev1/keymaps/default/keymap.c +++ b/keyboards/xelus/pachi/rev1/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, 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, 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, diff --git a/keyboards/xelus/pachi/rev1/keymaps/via/keymap.c b/keyboards/xelus/pachi/rev1/keymaps/via/keymap.c index 0b3f81afb5..d46bdc103f 100644 --- a/keyboards/xelus/pachi/rev1/keymaps/via/keymap.c +++ b/keyboards/xelus/pachi/rev1/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( 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, RESET, RESET, 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, QK_BOOT, QK_BOOT, 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, 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, diff --git a/keyboards/xelus/pachi/rgb/keymaps/default/keymap.c b/keyboards/xelus/pachi/rgb/keymaps/default/keymap.c index 63ce070200..7c1499668d 100644 --- a/keyboards/xelus/pachi/rgb/keymaps/default/keymap.c +++ b/keyboards/xelus/pachi/rgb/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_tsangan( 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, RESET , RGB_TOG, RGB_HUI, RGB_SAI, + 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, QK_BOOT , RGB_TOG, RGB_HUI, RGB_SAI, 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, RGB_MOD, RGB_HUD, RGB_SAD, 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, RGB_VAI, diff --git a/keyboards/xelus/pachi/rgb/keymaps/via/keymap.c b/keyboards/xelus/pachi/rgb/keymaps/via/keymap.c index dafc1c18ce..641a3cfa7d 100644 --- a/keyboards/xelus/pachi/rgb/keymaps/via/keymap.c +++ b/keyboards/xelus/pachi/rgb/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_tkl_ansi_tsangan( 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, RESET , 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, QK_BOOT , 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, 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, diff --git a/keyboards/xelus/rs60/keymaps/default/keymap.c b/keyboards/xelus/rs60/keymaps/default/keymap.c index bff32ac2bc..2785488a81 100644 --- a/keyboards/xelus/rs60/keymaps/default/keymap.c +++ b/keyboards/xelus/rs60/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( 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_PSCR, KC_PSCR, - KC_CAPS, KC_TRNS, KC_UP , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, RESET, + KC_CAPS, KC_TRNS, KC_UP , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_RSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/xelus/rs60/keymaps/via/keymap.c b/keyboards/xelus/rs60/keymaps/via/keymap.c index 10d3835511..2900081385 100644 --- a/keyboards/xelus/rs60/keymaps/via/keymap.c +++ b/keyboards/xelus/rs60/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( 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_PSCR, KC_PSCR, - KC_CAPS, KC_TRNS, KC_UP , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, RESET, + KC_CAPS, KC_TRNS, KC_UP , KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_VOLD, KC_VOLU, QK_BOOT, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_RSFT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS diff --git a/keyboards/xelus/trinityxttkl/keymaps/default/keymap.c b/keyboards/xelus/trinityxttkl/keymaps/default/keymap.c index 5336e3a473..84469b6ac6 100644 --- a/keyboards/xelus/trinityxttkl/keymaps/default/keymap.c +++ b/keyboards/xelus/trinityxttkl/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_F23, KC_F24, KC_LCTL, KC_LALT, KC_SPC, KC_SPC, KC_SPC, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), [1] = LAYOUT_all( - RESET , EEP_RST, 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, + QK_BOOT , EEP_RST, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/xelus/valor/rev1/keymaps/default/keymap.c b/keyboards/xelus/valor/rev1/keymaps/default/keymap.c index 3cf8111e97..6f7c7f0bbd 100644 --- a/keyboards/xelus/valor/rev1/keymaps/default/keymap.c +++ b/keyboards/xelus/valor/rev1/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, KC_TRNS, 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, RGB_MOD, 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, - RESET, 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, + QK_BOOT, 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, KC_TRNS, KC_TRNS ) diff --git a/keyboards/xelus/valor/rev1/keymaps/via/keymap.c b/keyboards/xelus/valor/rev1/keymaps/via/keymap.c index b3395f1dfb..fa077c309d 100644 --- a/keyboards/xelus/valor/rev1/keymaps/via/keymap.c +++ b/keyboards/xelus/valor/rev1/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, KC_TRNS, 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, RGB_MOD, 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, - RESET, 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, + QK_BOOT, 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, KC_TRNS, KC_TRNS ), diff --git a/keyboards/xelus/valor/rev2/keymaps/default/keymap.c b/keyboards/xelus/valor/rev2/keymaps/default/keymap.c index eb5f551126..6cf7b5cf5d 100644 --- a/keyboards/xelus/valor/rev2/keymaps/default/keymap.c +++ b/keyboards/xelus/valor/rev2/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, KC_TRNS, 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, RGB_MOD, 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, - RESET, 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, + QK_BOOT, 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, KC_TRNS, KC_TRNS ) diff --git a/keyboards/xelus/valor/rev2/keymaps/via/keymap.c b/keyboards/xelus/valor/rev2/keymaps/via/keymap.c index c256659514..640030a10d 100644 --- a/keyboards/xelus/valor/rev2/keymaps/via/keymap.c +++ b/keyboards/xelus/valor/rev2/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( RGB_TOG, KC_TRNS, 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, RGB_MOD, 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, - RESET, 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, + QK_BOOT, 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, KC_TRNS, KC_TRNS ), diff --git a/keyboards/xiudi/xd60/keymaps/default/keymap.c b/keyboards/xiudi/xd60/keymaps/default/keymap.c index 1b8fa07a8e..93a83ff49d 100644 --- a/keyboards/xiudi/xd60/keymaps/default/keymap.c +++ b/keyboards/xiudi/xd60/keymaps/default/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer LAYOUT_all( - 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, KC_F13, KC_F14, + QK_BOOT, 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_F13, KC_F14, KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_PGDN, KC_RSFT, KC_PGUP, KC_INS, diff --git a/keyboards/xiudi/xd60/keymaps/iso/keymap.c b/keyboards/xiudi/xd60/keymaps/iso/keymap.c index 481b62155f..155ba64e18 100644 --- a/keyboards/xiudi/xd60/keymaps/iso/keymap.c +++ b/keyboards/xiudi/xd60/keymaps/iso/keymap.c @@ -18,7 +18,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { //,: Function Layer [_FL] = LAYOUT_60_iso( - 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, KC_DEL, + QK_BOOT, 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, XXXXXXX, KC_VOLD, KC_MUTE, KC_VOLU, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, BL_TOGG, BL_DEC, BL_INC, XXXXXXX, KC_MPLY, KC_MSTP, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_ENT, KC_LSFT, RGB_TOG, RGB_MOD, KC_CUT, KC_COPY, KC_PSTE, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_RSFT, diff --git a/keyboards/xiudi/xd60/keymaps/via/keymap.c b/keyboards/xiudi/xd60/keymaps/via/keymap.c index 9685737b46..198418213b 100644 --- a/keyboards/xiudi/xd60/keymaps/via/keymap.c +++ b/keyboards/xiudi/xd60/keymaps/via/keymap.c @@ -12,7 +12,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { // 1: Function Layer [1] = LAYOUT_all( - 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, KC_F13, KC_F14, + QK_BOOT, 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_F13, KC_F14, KC_NO, KC_WH_U, KC_UP, KC_WH_D, KC_BSPC,KC_HOME,KC_CALC,KC_NO, KC_INS, KC_NO, KC_PSCR, KC_SLCK, KC_PAUS, KC_DEL, KC_NO, KC_LEFT, KC_DOWN, KC_RIGHT,KC_DEL, KC_END, KC_PGDN,KC_NO, KC_NO, KC_NO, KC_HOME, KC_PGUP, KC_NO, KC_ENT, KC_LSFT, KC_NO, KC_NO, KC_APP, BL_STEP,KC_NO, KC_NO, KC_VOLD,KC_VOLU,KC_MUTE, KC_END, KC_PGDN, KC_RSFT, KC_PGUP, KC_INS, diff --git a/keyboards/xiudi/xd68/keymaps/default/keymap.c b/keyboards/xiudi/xd68/keymaps/default/keymap.c index d9cfe5bf0d..8a450c97c2 100644 --- a/keyboards/xiudi/xd68/keymaps/default/keymap.c +++ b/keyboards/xiudi/xd68/keymaps/default/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * |~ `| F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del |Ins | * |----------------------------------------------------------------| - * |RESET| |Up | | | | | | | | | | | | | + * |QK_BOOT| |Up | | | | | | | | | | | | | * |----------------------------------------------------------------| * | |<- |Dn | ->| | | | | | | | | | | * |----------------------------------------------------------------| @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_ansi( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, _______, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/xiudi/xd68/keymaps/default_iso/keymap.c b/keyboards/xiudi/xd68/keymaps/default_iso/keymap.c index 428715a669..3e13ddc7f7 100644 --- a/keyboards/xiudi/xd68/keymaps/default_iso/keymap.c +++ b/keyboards/xiudi/xd68/keymaps/default_iso/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * |~ `| F1| F2| F3| F4| F5| F6| F7| F8| F9|F10|F11|F12| Delete| Ins| * |----------------------------------------------------------------| - * |RESET| | ↑ | | | | | | | | | | | | | + * |QK_BOOT| | ↑ | | | | | | | | | | | | | * |------------------------------------------------------- -----| * | | ← | ↓ | → | | | | | | | | | | | | * |----------------------------------------------------------------| @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_65_iso( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, RGB_MOD, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, _______, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/xiudi/xd68/keymaps/via/keymap.c b/keyboards/xiudi/xd68/keymaps/via/keymap.c index 64be6af3b9..f18bcce017 100644 --- a/keyboards/xiudi/xd68/keymaps/via/keymap.c +++ b/keyboards/xiudi/xd68/keymaps/via/keymap.c @@ -29,7 +29,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * ,----------------------------------------------------------------. * |~ `| F1|F2 |F3 |F4 |F5 |F6 |F7 |F8 |F9 |F10|F11|F12|Del |Ins | * |----------------------------------------------------------------| - * |RESET| |Up | | | | | | | | | | | | | + * |QK_BOOT| |Up | | | | | | | | | | | | | * |----------------------------------------------------------------| * | |<- |Dn | ->| | | | | | | | | | | * |----------------------------------------------------------------| @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [_FL] = LAYOUT_all( KC_GRV, 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_INS, - RESET, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + QK_BOOT, _______, KC_UP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, _______, RGB_SAI, RGB_VAI, RGB_MOD, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, KC_MPLY, KC_VOLU, KC_MUTE, RGB_HUD, RGB_SAD, RGB_VAD, RGB_TOG, _______, _______, KC_TRNS, KC_MPRV, KC_VOLD, KC_MNXT diff --git a/keyboards/xiudi/xd75/keymaps/default/keymap.c b/keyboards/xiudi/xd75/keymaps/default/keymap.c index 68441d1728..0b1126b93b 100644 --- a/keyboards/xiudi/xd75/keymaps/default/keymap.c +++ b/keyboards/xiudi/xd75/keymaps/default/keymap.c @@ -49,7 +49,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -59,7 +59,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT_ortho_5x15( /* FUNCTION */ KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, MO(_FN), RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, MO(_FN), _______, _______, _______ ) diff --git a/keyboards/xiudi/xd75/keymaps/via/keymap.c b/keyboards/xiudi/xd75/keymaps/via/keymap.c index a868222671..aa4961b934 100644 --- a/keyboards/xiudi/xd75/keymaps/via/keymap.c +++ b/keyboards/xiudi/xd75/keymaps/via/keymap.c @@ -44,7 +44,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | SELECT | CALC | MYCOMP | MAIL | RGB HD | RGB HI | P7 | P8 | P9 | - | | | PR SCR | SCR LK | PAUSE | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| - * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | RESET | | | | + * | PREV | PLAY | NEXT | STOP | RGB SD | RGB SI | P4 | P5 | P6 | + | | QK_BOOT | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| * | VOL- | MUTE | VOL+ | APP | RGB VD | RGB VI | P1 | P2 | P3 | PENT | | | | | | * |--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------+--------| @@ -54,7 +54,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ortho_5x15( KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_NLCK, KC_SLSH, KC_ASTR, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_MSEL, KC_CALC, KC_MYCM, KC_MAIL, RGB_HUD, RGB_HUI, KC_P7, KC_P8, KC_P9, KC_MINS, _______, _______, KC_PSCR, KC_SLCK, KC_PAUS, - KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, RESET, _______, _______, _______, + KC_MPRV, KC_MPLY, KC_MNXT, KC_MSTP, RGB_SAD, RGB_SAI, KC_P4, KC_P5, KC_P6, KC_PLUS, _______, QK_BOOT, _______, _______, _______, KC_VOLD, KC_MUTE, KC_VOLU, KC_APP, RGB_VAD, RGB_VAI, KC_P1, KC_P2, KC_P3, KC_PENT, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_RMOD,RGB_MOD, KC_P0, _______, KC_PDOT, KC_PENT, KC_PENT, _______, _______, _______, _______ ), diff --git a/keyboards/xiudi/xd84pro/keymaps/default/keymap.c b/keyboards/xiudi/xd84pro/keymaps/default/keymap.c index 5229b7462e..be5fcd31fe 100644 --- a/keyboards/xiudi/xd84pro/keymaps/default/keymap.c +++ b/keyboards/xiudi/xd84pro/keymaps/default/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_ansi( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┼─────────┤ */ _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ diff --git a/keyboards/xiudi/xd84pro/keymaps/default_iso/keymap.c b/keyboards/xiudi/xd84pro/keymaps/default_iso/keymap.c index c27c169604..47352b4174 100644 --- a/keyboards/xiudi/xd84pro/keymaps/default_iso/keymap.c +++ b/keyboards/xiudi/xd84pro/keymaps/default_iso/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_iso( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┼─────────┤ */ _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ diff --git a/keyboards/xiudi/xd84pro/keymaps/via/keymap.c b/keyboards/xiudi/xd84pro/keymaps/via/keymap.c index 214fff6f60..137b0ad9af 100644 --- a/keyboards/xiudi/xd84pro/keymaps/via/keymap.c +++ b/keyboards/xiudi/xd84pro/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET, + _______, BL_TOGG, BL_STEP, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┼─────────┤ */ _______, RGB_TOG, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ diff --git a/keyboards/yampad/keymaps/default/keymap.c b/keyboards/yampad/keymaps/default/keymap.c index 51d921be3f..f54d4f33b0 100644 --- a/keyboards/yampad/keymaps/default/keymap.c +++ b/keyboards/yampad/keymaps/default/keymap.c @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, XXXXXXX, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, XXXXXXX, - RESET, XXXXXXX, XXXXXXX, XXXXXXX + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX ), }; diff --git a/keyboards/yampad/keymaps/via/keymap.c b/keyboards/yampad/keymaps/via/keymap.c index 51d921be3f..f54d4f33b0 100644 --- a/keyboards/yampad/keymaps/via/keymap.c +++ b/keyboards/yampad/keymaps/via/keymap.c @@ -98,7 +98,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_HUD, RGB_HUI, XXXXXXX, RGB_SAD, RGB_SAI, XXXXXXX, XXXXXXX, RGB_VAD, RGB_VAI, XXXXXXX, - RESET, XXXXXXX, XXXXXXX, XXXXXXX + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX ), }; diff --git a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c index 0d6dfb42a4..302e215ac4 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_GRV, 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, RESET, 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, QK_BOOT, 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) }; diff --git a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c index 6e4d6381a7..081cb60750 100644 --- a/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c +++ b/keyboards/yandrstudio/zhou65/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT( KC_GRV, 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, RESET, 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, QK_BOOT, 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), diff --git a/keyboards/yanghu/unicorne/keymaps/default/keymap.c b/keyboards/yanghu/unicorne/keymaps/default/keymap.c index 26fb014260..a8c7bd7c51 100644 --- a/keyboards/yanghu/unicorne/keymaps/default/keymap.c +++ b/keyboards/yanghu/unicorne/keymaps/default/keymap.c @@ -47,7 +47,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x6_4( RGB_VAI, RGB_SAI, RGB_HUI, RGB_MOD, XXXXXXX, RGB_TOG, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RGB_VAD, RGB_SAD, RGB_HUD, RGB_RMOD, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, - XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, + XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, _______, _______, _______, _______, _______, _______, _______, _______ ), }; diff --git a/keyboards/ydkb/just60/keymaps/default/keymap.c b/keyboards/ydkb/just60/keymaps/default/keymap.c index da034e0e44..b23cb57ce9 100644 --- a/keyboards/ydkb/just60/keymaps/default/keymap.c +++ b/keyboards/ydkb/just60/keymaps/default/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_PGDN, KC_PGUP, KC_END ), [_COMMAND] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, RESET, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, EEP_RST, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/yeehaw/keymaps/default/keymap.c b/keyboards/yeehaw/keymaps/default/keymap.c index 7f7141d293..f3d6351f2f 100644 --- a/keyboards/yeehaw/keymaps/default/keymap.c +++ b/keyboards/yeehaw/keymaps/default/keymap.c @@ -38,7 +38,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_SAI, RGB_VAI, RGB_VAD, RGB_SPI, KC_TRNS, RGB_SAD, RGB_M_P, RGB_MOD, RGB_SPD, KC_TRNS, KC_TRNS, - RESET + QK_BOOT ), }; diff --git a/keyboards/yeehaw/keymaps/via/keymap.c b/keyboards/yeehaw/keymaps/via/keymap.c index 3beca9c21d..79df7ef2ac 100644 --- a/keyboards/yeehaw/keymaps/via/keymap.c +++ b/keyboards/yeehaw/keymaps/via/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { RGB_SAI, RGB_VAI, RGB_VAD, RGB_SPI, KC_TRNS, RGB_SAD, RGB_M_P, RGB_MOD, RGB_SPD, KC_TRNS, KC_TRNS, - RESET + QK_BOOT ), [2] = LAYOUT( diff --git a/keyboards/yiancardesigns/barleycorn/keymaps/default/keymap.c b/keyboards/yiancardesigns/barleycorn/keymaps/default/keymap.c index 230b78e991..ce13f31c9c 100644 --- a/keyboards/yiancardesigns/barleycorn/keymaps/default/keymap.c +++ b/keyboards/yiancardesigns/barleycorn/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_ansi( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/yiancardesigns/barleycorn/keymaps/iso/keymap.c b/keyboards/yiancardesigns/barleycorn/keymaps/iso/keymap.c index 7fd4d06969..42e8f1f7c3 100644 --- a/keyboards/yiancardesigns/barleycorn/keymaps/iso/keymap.c +++ b/keyboards/yiancardesigns/barleycorn/keymaps/iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_iso( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/yiancardesigns/barleycorn/keymaps/via/keymap.c b/keyboards/yiancardesigns/barleycorn/keymaps/via/keymap.c index 90ce60d1ea..990e93f7ab 100644 --- a/keyboards/yiancardesigns/barleycorn/keymaps/via/keymap.c +++ b/keyboards/yiancardesigns/barleycorn/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/yiancardesigns/gingham/keymaps/default/keymap.c b/keyboards/yiancardesigns/gingham/keymaps/default/keymap.c index f54d6d8bdc..7b53bb7af0 100644 --- a/keyboards/yiancardesigns/gingham/keymaps/default/keymap.c +++ b/keyboards/yiancardesigns/gingham/keymaps/default/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_ansi_split_bs_rshift( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET, KC_TRNS, + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/yiancardesigns/gingham/keymaps/iso/keymap.c b/keyboards/yiancardesigns/gingham/keymaps/iso/keymap.c index 6aae0ccf36..541ef59114 100644 --- a/keyboards/yiancardesigns/gingham/keymaps/iso/keymap.c +++ b/keyboards/yiancardesigns/gingham/keymaps/iso/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso_split_bs_rshift( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/yiancardesigns/gingham/keymaps/via/keymap.c b/keyboards/yiancardesigns/gingham/keymaps/via/keymap.c index f303449739..29e16a7b2f 100644 --- a/keyboards/yiancardesigns/gingham/keymaps/via/keymap.c +++ b/keyboards/yiancardesigns/gingham/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_60_iso_split_bs_rshift( /* FN */ KC_GRV, 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_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RESET , + KC_TRNS, KC_TRNS, KC_UP, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, QK_BOOT , KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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_VOLU, KC_VOLD, KC_MUTE, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS), diff --git a/keyboards/ymdk/bface/keymaps/via/keymap.c b/keyboards/ymdk/bface/keymaps/via/keymap.c index 27280b7d1c..56a9451dc2 100644 --- a/keyboards/ymdk/bface/keymaps/via/keymap.c +++ b/keyboards/ymdk/bface/keymaps/via/keymap.c @@ -28,7 +28,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), //Layer 1 [1] = LAYOUT_all( - KC_GRV, 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_NO,RESET, + KC_GRV, 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_NO,QK_BOOT, 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_NO,KC_TRNS, KC_TRNS,KC_NO,KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS, KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_TRNS,KC_NO, KC_TRNS, KC_NO, diff --git a/keyboards/ymdk/melody96/keymaps/default/keymap.c b/keyboards/ymdk/melody96/keymaps/default/keymap.c index 3ed6f3068b..959b2cf5a6 100644 --- a/keyboards/ymdk/melody96/keymaps/default/keymap.c +++ b/keyboards/ymdk/melody96/keymaps/default/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c b/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c index 5dc26b150d..96e892af13 100644 --- a/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c +++ b/keyboards/ymdk/melody96/keymaps/default_96_with60_split_num0/keymap.c @@ -14,7 +14,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_APP, KC_RCTL, KC_P0, KC_P00, KC_PDOT ), [1] = LAYOUT_96_with60_split_num0( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ymdk/melody96/keymaps/via/keymap.c b/keyboards/ymdk/melody96/keymaps/via/keymap.c index c02fa785a8..b448c62426 100644 --- a/keyboards/ymdk/melody96/keymaps/via/keymap.c +++ b/keyboards/ymdk/melody96/keymaps/via/keymap.c @@ -10,7 +10,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), MO(1), KC_LEFT, KC_DOWN, KC_RGHT, KC_P0, KC_PDOT, KC_PENT ), [1] = LAYOUT_all( - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MUTE, KC_VOLD, KC_VOLU, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_TOG, _______, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ymdk/wings/keymaps/default/keymap.c b/keyboards/ymdk/wings/keymaps/default/keymap.c index 9b0c070711..fb017650fe 100644 --- a/keyboards/ymdk/wings/keymaps/default/keymap.c +++ b/keyboards/ymdk/wings/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/wings/keymaps/via/keymap.c b/keyboards/ymdk/wings/keymaps/via/keymap.c index 6e866902f3..5cb0adb8e8 100644 --- a/keyboards/ymdk/wings/keymaps/via/keymap.c +++ b/keyboards/ymdk/wings/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/wingshs/keymaps/default/keymap.c b/keyboards/ymdk/wingshs/keymaps/default/keymap.c index adfe6c11e9..61366f75dd 100644 --- a/keyboards/ymdk/wingshs/keymaps/default/keymap.c +++ b/keyboards/ymdk/wingshs/keymaps/default/keymap.c @@ -25,8 +25,8 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + QK_BOOT, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/wingshs/keymaps/via/keymap.c b/keyboards/ymdk/wingshs/keymaps/via/keymap.c index 29e3f3df9a..f5e1958556 100644 --- a/keyboards/ymdk/wingshs/keymaps/via/keymap.c +++ b/keyboards/ymdk/wingshs/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_all( _______, 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, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, KC_DEL, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/yd60mq/keymaps/default/keymap.c b/keyboards/ymdk/yd60mq/keymaps/default/keymap.c index 2ba4416262..b124da8a74 100644 --- a/keyboards/ymdk/yd60mq/keymaps/default/keymap.c +++ b/keyboards/ymdk/yd60mq/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, _______, KC_DEL, + QK_BOOT, 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, _______, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/ymdk/yd60mq/keymaps/via/keymap.c b/keyboards/ymdk/yd60mq/keymaps/via/keymap.c index ab503ee277..043bb2809e 100644 --- a/keyboards/ymdk/yd60mq/keymaps/via/keymap.c +++ b/keyboards/ymdk/yd60mq/keymaps/via/keymap.c @@ -27,7 +27,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_TRNS, KC_DEL, + QK_BOOT, 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_DEL, KC_TRNS, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ymdk/ym68/keymaps/default/keymap.c b/keyboards/ymdk/ym68/keymaps/default/keymap.c index 1293cf9f92..e4b9b11dbb 100644 --- a/keyboards/ymdk/ym68/keymaps/default/keymap.c +++ b/keyboards/ymdk/ym68/keymaps/default/keymap.c @@ -25,7 +25,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_APP, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT ), [1] = LAYOUT_all( - 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, _______, _______, KC_PSCR, + QK_BOOT, 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_PSCR, RGB_TOG, _______, KC_UP, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, BL_TOGG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, KC_END, _______, _______, _______, BL_DEC, BL_TOGG, BL_INC, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, diff --git a/keyboards/ymdk/ymd09/keymaps/via/keymap.c b/keyboards/ymdk/ymd09/keymaps/via/keymap.c index e84b587a36..15962e367a 100644 --- a/keyboards/ymdk/ymd09/keymaps/via/keymap.c +++ b/keyboards/ymdk/ymd09/keymaps/via/keymap.c @@ -7,7 +7,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_KP_1, KC_KP_2, KC_KP_3), [1] = LAYOUT(RGB_RMOD, RGB_VAI, RGB_MOD, - RGB_HUI, RESET, RGB_SAI, + RGB_HUI, QK_BOOT, RGB_SAI, RGB_HUD, RGB_VAD, RGB_SAD), [2] = LAYOUT(KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ymdk/ymd40/v2/keymaps/default/keymap.c b/keyboards/ymdk/ymd40/v2/keymaps/default/keymap.c index 10d9385cf0..6208edcb82 100644 --- a/keyboards/ymdk/ymd40/v2/keymaps/default/keymap.c +++ b/keyboards/ymdk/ymd40/v2/keymaps/default/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, _______, _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [_ADJUST] = LAYOUT_ortho_4x12( - RESET, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, DEBUG, + QK_BOOT, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, DEBUG, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, AG_NORM, AG_SWAP, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/ymd40/v2/keymaps/via/keymap.c b/keyboards/ymdk/ymd40/v2/keymaps/via/keymap.c index 70e96c2dcf..ec59d43f0a 100644 --- a/keyboards/ymdk/ymd40/v2/keymaps/via/keymap.c +++ b/keyboards/ymdk/ymd40/v2/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, _______, _______, _______, MO(3), _______, _______, _______, KC_MNXT, KC_VOLD, KC_VOLU, KC_MPLY ), [3] = LAYOUT_ortho_4x12( - RESET, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, DEBUG, + QK_BOOT, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, DEBUG, _______, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, BL_TOGG, BL_DEC, BL_INC, BL_BRTG, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/ymdk/ymd67/keymaps/default/keymap.c b/keyboards/ymdk/ymd67/keymaps/default/keymap.c index 7ce144d62c..11cb55598e 100644 --- a/keyboards/ymdk/ymd67/keymaps/default/keymap.c +++ b/keyboards/ymdk/ymd67/keymaps/default/keymap.c @@ -8,7 +8,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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, KC_DEL, KC_LCTL, KC_LGUI, KC_LALT, MO(1), KC_SPC, MO(1), KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT(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, KC_TRNS, KC_DEL, + [1] = LAYOUT(QK_BOOT, 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_DEL, KC_TRNS, RGB_TOG, KC_UP, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_LEFT, KC_DOWN, KC_RGHT, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ymdk/ymd75/keymaps/default_iso/keymap.c b/keyboards/ymdk/ymd75/keymaps/default_iso/keymap.c index 2008dddf8c..d712373feb 100644 --- a/keyboards/ymdk/ymd75/keymaps/default_iso/keymap.c +++ b/keyboards/ymdk/ymd75/keymaps/default_iso/keymap.c @@ -20,7 +20,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [1] = LAYOUT_75_iso( /* ┌─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┬─────────┐ */ - RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MPRV, KC_MNXT, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MPLY, KC_MPRV, KC_MNXT, /* ├─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┼─────────┴─────────┼─────────┤ */ _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_VOLU, /* ├─────────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬────┴────┬──────────────┼─────────┤ */ diff --git a/keyboards/ymdk/ymd75/keymaps/via/keymap.c b/keyboards/ymdk/ymd75/keymaps/via/keymap.c index 4a9107bf95..e1b91490c3 100644 --- a/keyboards/ymdk/ymd75/keymaps/via/keymap.c +++ b/keyboards/ymdk/ymd75/keymaps/via/keymap.c @@ -43,7 +43,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT( - _______, _______, _______, _______, _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, KC_INS, + _______, _______, _______, _______, _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, KC_INS, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ ,_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, diff --git a/keyboards/yoichiro/lunakey_macro/keymaps/default/keymap.c b/keyboards/yoichiro/lunakey_macro/keymaps/default/keymap.c index 1b2055b749..cb4e757cdc 100644 --- a/keyboards/yoichiro/lunakey_macro/keymaps/default/keymap.c +++ b/keyboards/yoichiro/lunakey_macro/keymaps/default/keymap.c @@ -36,6 +36,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, - RESET, KC_NO, DF(_NUMBERS) + QK_BOOT, KC_NO, DF(_NUMBERS) ) }; diff --git a/keyboards/yoichiro/lunakey_macro/keymaps/via/keymap.c b/keyboards/yoichiro/lunakey_macro/keymaps/via/keymap.c index a3a203df6d..1fd0ce709c 100644 --- a/keyboards/yoichiro/lunakey_macro/keymaps/via/keymap.c +++ b/keyboards/yoichiro/lunakey_macro/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT( RGB_TOG, RGB_MOD, RGB_VAI, RGB_VAD, AU_TOG, CK_TOGG, MU_TOG, MU_MOD, - RESET, KC_NO, DF(_NUMBERS) + QK_BOOT, KC_NO, DF(_NUMBERS) ) }; diff --git a/keyboards/yoichiro/lunakey_mini/keymaps/default/keymap.c b/keyboards/yoichiro/lunakey_mini/keymaps/default/keymap.c index eeb59b4e19..0132e8c3d2 100644 --- a/keyboards/yoichiro/lunakey_mini/keymaps/default/keymap.c +++ b/keyboards/yoichiro/lunakey_mini/keymaps/default/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x6_4( //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ - RESET, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + QK_BOOT, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ diff --git a/keyboards/yoichiro/lunakey_mini/keymaps/via/keymap.c b/keyboards/yoichiro/lunakey_mini/keymaps/via/keymap.c index eeb59b4e19..0132e8c3d2 100644 --- a/keyboards/yoichiro/lunakey_mini/keymaps/via/keymap.c +++ b/keyboards/yoichiro/lunakey_mini/keymaps/via/keymap.c @@ -65,7 +65,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_ADJUST] = LAYOUT_split_3x6_4( //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ - RESET, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, + QK_BOOT, _______, _______, _______, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, //+--------+--------+--------+--------+--------+--------+ +--------+--------+--------+--------+--------+--------+ diff --git a/keyboards/yosino58/keymaps/default/keymap.c b/keyboards/yosino58/keymaps/default/keymap.c index 915fb75922..3200d14708 100644 --- a/keyboards/yosino58/keymaps/default/keymap.c +++ b/keyboards/yosino58/keymaps/default/keymap.c @@ -102,7 +102,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* ADJUST * ,-----------------------------------------. ,-----------------------------------------. - * |RESET | | | | | | | Mute | Vol+ | Play | | | | + * |QK_BOOT | | | | | | | Mute | Vol+ | Play | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| * | | | | PSCR | SLCK | Pause| | Prev | Vol- | Next | | | | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -115,7 +115,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------' '------------------------------' */ [_ADJUST] = LAYOUT( - RESET, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MUTE, KC_VOLU, KC_MPLY, XXXXXXX, XXXXXXX, XXXXXXX, + QK_BOOT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_MUTE, KC_VOLU, KC_MPLY, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_PSCR, KC_SLCK, KC_PAUS, KC_MPRV, KC_VOLD, KC_MNXT, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, XXXXXXX, KC_INS, KC_HOME, KC_PGUP, XXXXXXX, XXXXXXX, RGB_TOG, RGB_HUI, RGB_SAI, RGB_VAI, XXXXXXX, XXXXXXX, XXXXXXX, KC_DEL, KC_END, KC_PGDN, XXXXXXX, _______, _______, XXXXXXX, XXXXXXX, RGBRST, RGB_MOD, RGB_HUD, RGB_SAD, RGB_VAD, diff --git a/keyboards/yushakobo/navpad/10/keymaps/default/keymap.c b/keyboards/yushakobo/navpad/10/keymaps/default/keymap.c index 772d4e6f2c..80580da9f1 100644 --- a/keyboards/yushakobo/navpad/10/keymaps/default/keymap.c +++ b/keyboards/yushakobo/navpad/10/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] =LAYOUT ( - RESET, EEP_RST, KC_NO, KC_NO, + QK_BOOT, EEP_RST, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_QUOT, KC_PEQL, KC_NO, KC_CAPS, KC_NLCK, KC_SLCK, S(KC_9), KC_UP, S(KC_0), S(KC_SPC), KC_LEFT, KC_BTN3, KC_RGHT, S(KC_SPC), diff --git a/keyboards/yushakobo/navpad/10/keymaps/default/readme.md b/keyboards/yushakobo/navpad/10/keymaps/default/readme.md index 3b45e937bc..698d3ce950 100644 --- a/keyboards/yushakobo/navpad/10/keymaps/default/readme.md +++ b/keyboards/yushakobo/navpad/10/keymaps/default/readme.md @@ -19,7 +19,7 @@ ### FN1 layer ``` ,-------------------------------. ,-------. - | RESET | EEP_RST | KC_NO | | KC_NO | + | QK_BOOT | EEP_RST | KC_NO | | KC_NO | |----------+----------+----------+-------------------------------------------------. | KC_NO | KC_NO | KC_NO | KC_NLCK | KC_QUOT | KC_PEQL | KC_NO | |----------+----------+----------+----------+-----------+----------+---------------| diff --git a/keyboards/yushakobo/navpad/10/keymaps/via/keymap.c b/keyboards/yushakobo/navpad/10/keymaps/via/keymap.c index bd75cc77dd..63a116662d 100644 --- a/keyboards/yushakobo/navpad/10/keymaps/via/keymap.c +++ b/keyboards/yushakobo/navpad/10/keymaps/via/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] =LAYOUT ( - RESET, EEP_RST, KC_NO, KC_NO, + QK_BOOT, EEP_RST, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_QUOT, KC_PEQL, KC_NO, KC_CAPS, KC_NLCK, KC_SLCK, S(KC_9), KC_UP, S(KC_0), S(KC_SPC), KC_LEFT, KC_BTN3, KC_RGHT, S(KC_SPC), diff --git a/keyboards/yushakobo/navpad/10/keymaps/via/readme.md b/keyboards/yushakobo/navpad/10/keymaps/via/readme.md index f6ccaeee9e..c4758d0e4d 100644 --- a/keyboards/yushakobo/navpad/10/keymaps/via/readme.md +++ b/keyboards/yushakobo/navpad/10/keymaps/via/readme.md @@ -19,7 +19,7 @@ ### FN1 layer ``` ,-------------------------------. ,-------. - | RESET | EEP_RST | KC_NO | | KC_NO | + | QK_BOOT | EEP_RST | KC_NO | | KC_NO | |----------+----------+----------+-------------------------------------------------. | KC_NO | KC_NO | KC_NO | KC_NLCK | KC_QUOT | KC_PEQL | KC_NO | |----------+----------+----------+----------+-----------+----------+---------------| diff --git a/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/keymap.c b/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/keymap.c index 4753aa6ee5..09ad518e94 100644 --- a/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/keymap.c +++ b/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [_FN1] =LAYOUT ( - RESET, EEP_RST, KC_NO, KC_NO, + QK_BOOT, EEP_RST, KC_NO, KC_NO, KC_NO, KC_NO, KC_NO, KC_NLCK, KC_QUOT, KC_PEQL, KC_NO, KC_1, KC_2, KC_3, KC_4, KC_5, KC_DEL, KC_CAPS, KC_NLCK, KC_SLCK, S(KC_9), KC_UP, S(KC_0), S(KC_SPC), KC_Q, KC_W, KC_E, KC_R, KC_T, KC_BSPC, KC_LEFT, KC_BTN3, KC_RGHT, S(KC_SPC), KC_A, KC_S, KC_D, KC_F, KC_G, KC_QUOT, diff --git a/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/readme.md b/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/readme.md index 640f8056c0..f06bb2d9e3 100644 --- a/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/readme.md +++ b/keyboards/yushakobo/navpad/10_helix_r/keymaps/default/readme.md @@ -19,7 +19,7 @@ ### FN1 layer ``` ,-------------------------------. ,-------. - | RESET | EEP_RST | KC_NO | | KC_NO | + | QK_BOOT | EEP_RST | KC_NO | | KC_NO | |----------+----------+----------+-------------------------------------------------. ,-----------------------------------------------------------------------. | KC_NO | KC_NO | KC_NO | KC_NLCK | KC_QUOT | KC_PEQL | KC_NO | | KC_1 | KC_2 | KC_3 | KC_4 | KC_5 | KC_DEL | `--------------------------------+----------+-----------+----------+---------------| |------------+----------+-----------+-----------+-----------+-----------| diff --git a/keyboards/yushakobo/quick17/keymaps/default/keymap.c b/keyboards/yushakobo/quick17/keymaps/default/keymap.c index 5f2f45a6eb..37e59ad4a9 100644 --- a/keyboards/yushakobo/quick17/keymaps/default/keymap.c +++ b/keyboards/yushakobo/quick17/keymaps/default/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( KC_ESC, KC_LANG,KC_NO, RGB_TOG,KC_MNXT,KC_VOLU, KC_CAPS,KC_NLCK,KC_NO, RGB_MOD,KC_MPRV,KC_VOLD, - CG_NORM,LCG_SWP,EEP_RST,RESET, TO(0), KC_MUTE + CG_NORM,LCG_SWP,EEP_RST,QK_BOOT, TO(0), KC_MUTE ) }; diff --git a/keyboards/yushakobo/quick17/keymaps/default/readme.md b/keyboards/yushakobo/quick17/keymaps/default/readme.md index 5a5066ed58..8e2f3cd3c0 100644 --- a/keyboards/yushakobo/quick17/keymaps/default/readme.md +++ b/keyboards/yushakobo/quick17/keymaps/default/readme.md @@ -40,7 +40,7 @@ |-------+-------+--------+-------+---------+--------| | Caps | Numlk | (NONE) |RGB_MOD| Media < | Vol- | |-------+-------+--------+-------+---------+--------| - | Win | mac | EEP_RST| RESET | CONTROL | Mute | + | Win | mac | EEP_RST| QK_BOOT | CONTROL | Mute | `---------------------------------------------------' ``` ### difference between mac-Mode and Win-Mode diff --git a/keyboards/yushakobo/quick17/keymaps/via/keymap.c b/keyboards/yushakobo/quick17/keymaps/via/keymap.c index 5f2f45a6eb..37e59ad4a9 100644 --- a/keyboards/yushakobo/quick17/keymaps/via/keymap.c +++ b/keyboards/yushakobo/quick17/keymaps/via/keymap.c @@ -40,7 +40,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_FN] = LAYOUT( KC_ESC, KC_LANG,KC_NO, RGB_TOG,KC_MNXT,KC_VOLU, KC_CAPS,KC_NLCK,KC_NO, RGB_MOD,KC_MPRV,KC_VOLD, - CG_NORM,LCG_SWP,EEP_RST,RESET, TO(0), KC_MUTE + CG_NORM,LCG_SWP,EEP_RST,QK_BOOT, TO(0), KC_MUTE ) }; diff --git a/keyboards/yushakobo/quick17/keymaps/via/readme.md b/keyboards/yushakobo/quick17/keymaps/via/readme.md index da0923539d..1923764c8c 100644 --- a/keyboards/yushakobo/quick17/keymaps/via/readme.md +++ b/keyboards/yushakobo/quick17/keymaps/via/readme.md @@ -40,7 +40,7 @@ |-------+-------+--------+-------+---------+--------| | Caps | Numlk | (NONE) |RGB_MOD| Media < | Vol- | |-------+-------+--------+-------+---------+--------| - | Win | mac | EEP_RST| RESET | CONTROL | Mute | + | Win | mac | EEP_RST| QK_BOOT | CONTROL | Mute | `---------------------------------------------------' ``` ### difference between mac-Mode and Win-Mode diff --git a/keyboards/yushakobo/quick7/keymaps/default/keymap.c b/keyboards/yushakobo/quick7/keymaps/default/keymap.c index 385e89277b..b3c77dd24b 100644 --- a/keyboards/yushakobo/quick7/keymaps/default/keymap.c +++ b/keyboards/yushakobo/quick7/keymaps/default/keymap.c @@ -34,7 +34,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), [_FUNC1] = LAYOUT( - RESET, KC_TRNS, RGB_TOG, + QK_BOOT, KC_TRNS, RGB_TOG, KC_HOME, KC_VOLU, KC_END, KC_MPRV, KC_VOLD, KC_MNXT ) diff --git a/keyboards/yushakobo/quick7/keymaps/default/readme.md b/keyboards/yushakobo/quick7/keymaps/default/readme.md index 9db29d7ae6..644098edfa 100644 --- a/keyboards/yushakobo/quick7/keymaps/default/readme.md +++ b/keyboards/yushakobo/quick7/keymaps/default/readme.md @@ -16,7 +16,7 @@ Right Encoder(CW: RGB HUE-, CCW: RGB HUE+) ### Func1 Layer ``` ,----------- --------- ------------, -| RESET | Func1 | RGB TOGGLE | +| QK_BOOT | Func1 | RGB TOGGLE | ----------- --------- ------------ | HOME | VOL+ | END | ----------- --------- ------------ diff --git a/keyboards/yushakobo/quick7/keymaps/via/keymap.c b/keyboards/yushakobo/quick7/keymaps/via/keymap.c index 122decc92a..c7cd0ed821 100644 --- a/keyboards/yushakobo/quick7/keymaps/via/keymap.c +++ b/keyboards/yushakobo/quick7/keymaps/via/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LEFT, KC_DOWN, KC_RGHT ), [_FUNC1] = LAYOUT( - RESET, KC_TRNS, RGB_TOG, + QK_BOOT, KC_TRNS, RGB_TOG, KC_HOME, KC_VOLU, KC_END, KC_MPRV, KC_VOLD, KC_MNXT ), diff --git a/keyboards/yushakobo/quick7/keymaps/via/readme.md b/keyboards/yushakobo/quick7/keymaps/via/readme.md index ff0978780e..febed08e14 100644 --- a/keyboards/yushakobo/quick7/keymaps/via/readme.md +++ b/keyboards/yushakobo/quick7/keymaps/via/readme.md @@ -18,7 +18,7 @@ Right Encoder(CW: RGB HUE-, CCW: RGB HUE+) ### Func1 Layer ``` ,----------- --------- ------------, -| RESET | Func1 | RGB TOGGLE | +| QK_BOOT | Func1 | RGB TOGGLE | ----------- --------- ------------ | HOME | VOL+ | END | ----------- --------- ------------ diff --git a/keyboards/yynmt/kagamidget/keymaps/default/keymap.c b/keyboards/yynmt/kagamidget/keymaps/default/keymap.c index cb1ee4c63b..0b480251fe 100644 --- a/keyboards/yynmt/kagamidget/keymaps/default/keymap.c +++ b/keyboards/yynmt/kagamidget/keymaps/default/keymap.c @@ -94,7 +94,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT( - _______, RESET, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , + _______, QK_BOOT, DEBUG, RGB_TOG, RGB_MOD, RGB_HUI, RGB_HUD, RGB_SAI, RGB_SAD, RGB_VAI, RGB_VAD, KC_DEL , _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/zj68/keymaps/default/keymap.c b/keyboards/zj68/keymaps/default/keymap.c index 05e0776db8..55bdd970a0 100644 --- a/keyboards/zj68/keymaps/default/keymap.c +++ b/keyboards/zj68/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), LAYOUT_all( - KC_GRV, 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_NO, RESET, KC_PSCR, + KC_GRV, 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_NO, QK_BOOT, KC_PSCR, RGB_TOG, _______, KC_UP, _______, RGB_MOD, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, BL_TOGG, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, KC_END, _______, _______, _______, BL_DEC, BL_INC, BL_STEP, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, diff --git a/keyboards/zlant/keymaps/default/keymap.c b/keyboards/zlant/keymaps/default/keymap.c index 1348b87fcd..eb6df73859 100755 --- a/keyboards/zlant/keymaps/default/keymap.c +++ b/keyboards/zlant/keymaps/default/keymap.c @@ -26,7 +26,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { _______, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, _______, _______, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_MINS, KC_EQL, KC_LBRC, KC_RBRC, KC_BSLS, _______, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_PGUP, KC_HOME, _______, _______, - RGB_VAI, RGB_VAD, RESET, KC_PSCR, _______, _______, _______, _______, KC_PGDN, KC_END, _______, KC_DEL + RGB_VAI, RGB_VAD, QK_BOOT, KC_PSCR, _______, _______, _______, _______, KC_PGDN, KC_END, _______, KC_DEL ) }; /* FN LAYER diff --git a/keyboards/ztboards/after/keymaps/default/keymap.c b/keyboards/ztboards/after/keymaps/default/keymap.c index a317884d3e..9197c54b95 100644 --- a/keyboards/ztboards/after/keymaps/default/keymap.c +++ b/keyboards/ztboards/after/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_INS, KC_DEL, KC_TRNS, + QK_BOOT, 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_INS, KC_DEL, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ztboards/noon/keymaps/default/keymap.c b/keyboards/ztboards/noon/keymaps/default/keymap.c index cc8ab8df05..fbdbd5d64d 100644 --- a/keyboards/ztboards/noon/keymaps/default/keymap.c +++ b/keyboards/ztboards/noon/keymaps/default/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] LAYOUT_all ( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/ztboards/noon/keymaps/via/keymap.c b/keyboards/ztboards/noon/keymaps/via/keymap.c index 46bbc55986..f8cf030352 100644 --- a/keyboards/ztboards/noon/keymaps/via/keymap.c +++ b/keyboards/ztboards/noon/keymaps/via/keymap.c @@ -11,7 +11,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [1] = LAYOUT_all( - 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, KC_INS, KC_DEL, + QK_BOOT, 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_INS, KC_DEL, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, diff --git a/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c b/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c index f9428c3292..51052bd6c3 100644 --- a/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c +++ b/keyboards/zvecr/split_blackpill/keymaps/default/keymap.c @@ -78,7 +78,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/keyboards/zvecr/zv48/keymaps/default/keymap.c b/keyboards/zvecr/zv48/keymaps/default/keymap.c index f9428c3292..51052bd6c3 100644 --- a/keyboards/zvecr/zv48/keymaps/default/keymap.c +++ b/keyboards/zvecr/zv48/keymaps/default/keymap.c @@ -78,7 +78,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-----------------------------------------------------------------------------------' */ [_ADJUST] = LAYOUT_ortho_4x12( - _______, RESET, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, RESET, _______, + _______, QK_BOOT, _______, _______, _______, _______, RGB_TOG, RGB_MOD, RGB_RMOD,RGB_M_G, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, RGB_HUI, RGB_SAI, RGB_VAI, _______, _______, _______, _______, _______, _______, _______, _______, _______, RGB_HUD, RGB_SAD, RGB_VAD, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/layouts/default/60_abnt2/default_60_abnt2/keymap.c b/layouts/default/60_abnt2/default_60_abnt2/keymap.c index 2d64fc2dfc..d2c1e212c7 100644 --- a/layouts/default/60_abnt2/default_60_abnt2/keymap.c +++ b/layouts/default/60_abnt2/default_60_abnt2/keymap.c @@ -39,7 +39,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { */ [1] = LAYOUT_60_abnt2( BR_QUOT, 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, - _______, _______, _______, _______, RESET, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, KC_INS, KC_HOME, KC_UP, KC_END, KC_PGUP, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, KC_PGDN, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/layouts/default/64_ansi/default_64_ansi/keymap.c b/layouts/default/64_ansi/default_64_ansi/keymap.c index aae78dc8da..d386ccd719 100644 --- a/layouts/default/64_ansi/default_64_ansi/keymap.c +++ b/layouts/default/64_ansi/default_64_ansi/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_64_ansi( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/layouts/default/64_iso/default_64_iso/keymap.c b/layouts/default/64_iso/default_64_iso/keymap.c index 45e07dd9cc..9e8c202ec0 100644 --- a/layouts/default/64_iso/default_64_iso/keymap.c +++ b/layouts/default/64_iso/default_64_iso/keymap.c @@ -32,7 +32,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), [2] = LAYOUT_64_iso( _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, - _______, _______, _______, _______, RESET, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ diff --git a/layouts/default/numpad_5x6/default_numpad_5x6/keymap.c b/layouts/default/numpad_5x6/default_numpad_5x6/keymap.c index b48e323ad9..5ea08e1921 100644 --- a/layouts/default/numpad_5x6/default_numpad_5x6/keymap.c +++ b/layouts/default/numpad_5x6/default_numpad_5x6/keymap.c @@ -36,7 +36,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └───┴───└───────┴───┴───┘ */ [1] = LAYOUT_numpad_5x6( - RESET, _______, _______, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, _______, _______, KC_LEFT, XXXXXXX, KC_RGHT, _______, _______, _______, KC_END, KC_DOWN, KC_PGDN, diff --git a/layouts/default/numpad_6x4/default_numpad_6x4/keymap.c b/layouts/default/numpad_6x4/default_numpad_6x4/keymap.c index 53cd4d3469..f33574e696 100644 --- a/layouts/default/numpad_6x4/default_numpad_6x4/keymap.c +++ b/layouts/default/numpad_6x4/default_numpad_6x4/keymap.c @@ -41,7 +41,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └───────┴───┘───┘ */ [1] = LAYOUT_numpad_6x4( - RESET, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, KC_LEFT, XXXXXXX, KC_RGHT, _______, diff --git a/layouts/default/numpad_6x5/default_numpad_6x5/keymap.c b/layouts/default/numpad_6x5/default_numpad_6x5/keymap.c index 2bdbfc468d..5fe7123087 100644 --- a/layouts/default/numpad_6x5/default_numpad_6x5/keymap.c +++ b/layouts/default/numpad_6x5/default_numpad_6x5/keymap.c @@ -57,7 +57,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └───┴───────┴───┘───┘ */ [1] = LAYOUT_numpad_6x5( - _______, RESET, _______, _______, _______, + _______, QK_BOOT, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, _______, KC_LEFT, XXXXXXX, KC_RGHT, _______, diff --git a/layouts/default/ortho_6x4/default_ortho_6x4/keymap.c b/layouts/default/ortho_6x4/default_ortho_6x4/keymap.c index d1dc759de3..cf9f7d8963 100644 --- a/layouts/default/ortho_6x4/default_ortho_6x4/keymap.c +++ b/layouts/default/ortho_6x4/default_ortho_6x4/keymap.c @@ -45,7 +45,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * └───┴───┴───┘───┘ */ [1] = LAYOUT_ortho_6x4( - RESET, _______, _______, _______, + QK_BOOT, _______, _______, _______, _______, _______, _______, _______, KC_HOME, KC_UP, KC_PGUP, _______, KC_LEFT, XXXXXXX, KC_RGHT, _______, From 608fa5154c01420ff8f0946655ef16c99dec56a4 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Sun, 15 May 2022 22:39:29 +0100 Subject: [PATCH 418/699] Data driven `g_led_config` (#16728) --- builddefs/build_keyboard.mk | 8 +- data/schemas/keyboard.jsonschema | 56 ++++++++++ lib/python/qmk/c_parse.py | 118 ++++++++++++++++++++++ lib/python/qmk/cli/__init__.py | 1 + lib/python/qmk/cli/generate/keyboard_c.py | 75 ++++++++++++++ lib/python/qmk/info.py | 45 ++++++++- lib/python/qmk/json_encoders.py | 4 +- 7 files changed, 303 insertions(+), 4 deletions(-) create mode 100755 lib/python/qmk/cli/generate/keyboard_c.py diff --git a/builddefs/build_keyboard.mk b/builddefs/build_keyboard.mk index 4503f018a8..dc86b232df 100644 --- a/builddefs/build_keyboard.mk +++ b/builddefs/build_keyboard.mk @@ -322,12 +322,18 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_5)/info.json)","") endif CONFIG_H += $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h +KEYBOARD_SRC += $(KEYBOARD_OUTPUT)/src/default_keyboard.c $(KEYBOARD_OUTPUT)/src/info_config.h: $(INFO_JSON_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/info_config.h) @$(BUILD_CMD) +$(KEYBOARD_OUTPUT)/src/default_keyboard.c: $(INFO_JSON_FILES) + @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) + $(eval CMD=$(QMK_BIN) generate-keyboard-c --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.c) + @$(BUILD_CMD) + $(KEYBOARD_OUTPUT)/src/default_keyboard.h: $(INFO_JSON_FILES) @$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD) $(eval CMD=$(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.h) @@ -338,7 +344,7 @@ $(KEYBOARD_OUTPUT)/src/layouts.h: $(INFO_JSON_FILES) $(eval CMD=$(QMK_BIN) generate-layouts --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/layouts.h) @$(BUILD_CMD) -generated-files: $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/default_keyboard.h $(KEYBOARD_OUTPUT)/src/layouts.h +generated-files: $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/default_keyboard.c $(KEYBOARD_OUTPUT)/src/default_keyboard.h $(KEYBOARD_OUTPUT)/src/layouts.h .INTERMEDIATE : generated-files diff --git a/data/schemas/keyboard.jsonschema b/data/schemas/keyboard.jsonschema index aaf6f887d5..ba1a6b6cc9 100644 --- a/data/schemas/keyboard.jsonschema +++ b/data/schemas/keyboard.jsonschema @@ -212,6 +212,62 @@ "timeout": {"$ref": "qmk.definitions.v1#/unsigned_int"} } }, + "led_matrix": { + "type": "object", + "properties": { + "driver": {"type": "string"}, + "layout": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "matrix": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "number", + "min": 0, + "multipleOf": 1 + } + }, + "x": {"$ref": "qmk.definitions.v1#/key_unit"}, + "y": {"$ref": "qmk.definitions.v1#/key_unit"}, + "flags": {"$ref": "qmk.definitions.v1#/unsigned_decimal"} + } + } + } + } + }, + "rgb_matrix": { + "type": "object", + "properties": { + "driver": {"type": "string"}, + "layout": { + "type": "array", + "items": { + "type": "object", + "additionalProperties": false, + "properties": { + "matrix": { + "type": "array", + "minItems": 2, + "maxItems": 2, + "items": { + "type": "number", + "min": 0, + "multipleOf": 1 + } + }, + "x": {"$ref": "qmk.definitions.v1#/key_unit"}, + "y": {"$ref": "qmk.definitions.v1#/key_unit"}, + "flags": {"$ref": "qmk.definitions.v1#/unsigned_decimal"} + } + } + } + } + }, "rgblight": { "type": "object", "additionalProperties": false, diff --git a/lib/python/qmk/c_parse.py b/lib/python/qmk/c_parse.py index 72be690019..359aaccbbc 100644 --- a/lib/python/qmk/c_parse.py +++ b/lib/python/qmk/c_parse.py @@ -1,5 +1,9 @@ """Functions for working with config.h files. """ +from pygments.lexers.c_cpp import CLexer +from pygments.token import Token +from pygments import lex +from itertools import islice from pathlib import Path import re @@ -13,6 +17,13 @@ multi_comment_regex = re.compile(r'/\*(.|\n)*?\*/', re.MULTILINE) layout_macro_define_regex = re.compile(r'^#\s*define') +def _get_chunks(it, size): + """Break down a collection into smaller parts + """ + it = iter(it) + return iter(lambda: tuple(islice(it, size)), ()) + + def strip_line_comment(string): """Removes comments from a single line string. """ @@ -170,3 +181,110 @@ def _parse_matrix_locations(matrix, file, macro_name): matrix_locations[identifier] = [row_num, col_num] return matrix_locations + + +def _coerce_led_token(_type, value): + """ Convert token to valid info.json content + """ + value_map = { + 'NO_LED': None, + 'LED_FLAG_ALL': 0xFF, + 'LED_FLAG_NONE': 0x00, + 'LED_FLAG_MODIFIER': 0x01, + 'LED_FLAG_UNDERGLOW': 0x02, + 'LED_FLAG_KEYLIGHT': 0x04, + 'LED_FLAG_INDICATOR': 0x08, + } + if _type is Token.Literal.Number.Integer: + return int(value) + if _type is Token.Literal.Number.Float: + return float(value) + if _type is Token.Literal.Number.Hex: + return int(value, 0) + if _type is Token.Name and value in value_map.keys(): + return value_map[value] + + +def _parse_led_config(file, matrix_cols, matrix_rows): + """Return any 'raw' led/rgb matrix config + """ + file_contents = file.read_text(encoding='utf-8') + file_contents = comment_remover(file_contents) + file_contents = file_contents.replace('\\\n', '') + + matrix_raw = [] + position_raw = [] + flags = [] + + found_led_config = False + bracket_count = 0 + section = 0 + for _type, value in lex(file_contents, CLexer()): + # Assume g_led_config..stuff..; + if value == 'g_led_config': + found_led_config = True + elif value == ';': + found_led_config = False + elif found_led_config: + # Assume bracket count hints to section of config we are within + if value == '{': + bracket_count += 1 + if bracket_count == 2: + section += 1 + elif value == '}': + bracket_count -= 1 + else: + # Assume any non whitespace value here is important enough to stash + if _type in [Token.Literal.Number.Integer, Token.Literal.Number.Float, Token.Literal.Number.Hex, Token.Name]: + if section == 1 and bracket_count == 3: + matrix_raw.append(_coerce_led_token(_type, value)) + if section == 2 and bracket_count == 3: + position_raw.append(_coerce_led_token(_type, value)) + if section == 3 and bracket_count == 2: + flags.append(_coerce_led_token(_type, value)) + + # Slightly better intrim format + matrix = list(_get_chunks(matrix_raw, matrix_cols)) + position = list(_get_chunks(position_raw, 2)) + matrix_indexes = list(filter(lambda x: x is not None, matrix_raw)) + + # If we have not found anything - bail + if not section: + return None + + # TODO: Improve crude parsing/validation + if len(matrix) != matrix_rows and len(matrix) != (matrix_rows / 2): + raise ValueError("Unable to parse g_led_config matrix data") + if len(position) != len(flags): + raise ValueError("Unable to parse g_led_config position data") + if len(matrix_indexes) and (max(matrix_indexes) >= len(flags)): + raise ValueError("OOB within g_led_config matrix data") + + return (matrix, position, flags) + + +def find_led_config(file, matrix_cols, matrix_rows): + """Search file for led/rgb matrix config + """ + found = _parse_led_config(file, matrix_cols, matrix_rows) + if not found: + return None + + # Expand collected content + (matrix, position, flags) = found + + # Align to output format + led_config = [] + for index, item in enumerate(position, start=0): + led_config.append({ + 'x': item[0], + 'y': item[1], + 'flags': flags[index], + }) + for r in range(len(matrix)): + for c in range(len(matrix[r])): + index = matrix[r][c] + if index is not None: + led_config[index]['matrix'] = [r, c] + + return led_config diff --git a/lib/python/qmk/cli/__init__.py b/lib/python/qmk/cli/__init__.py index 85baa238a8..d7192631a3 100644 --- a/lib/python/qmk/cli/__init__.py +++ b/lib/python/qmk/cli/__init__.py @@ -52,6 +52,7 @@ subcommands = [ 'qmk.cli.generate.dfu_header', 'qmk.cli.generate.docs', 'qmk.cli.generate.info_json', + 'qmk.cli.generate.keyboard_c', 'qmk.cli.generate.keyboard_h', 'qmk.cli.generate.layouts', 'qmk.cli.generate.rgb_breathe_table', diff --git a/lib/python/qmk/cli/generate/keyboard_c.py b/lib/python/qmk/cli/generate/keyboard_c.py new file mode 100755 index 0000000000..a9b742f323 --- /dev/null +++ b/lib/python/qmk/cli/generate/keyboard_c.py @@ -0,0 +1,75 @@ +"""Used by the make system to generate keyboard.c from info.json. +""" +from milc import cli + +from qmk.info import info_json +from qmk.commands import dump_lines +from qmk.keyboard import keyboard_completer, keyboard_folder +from qmk.path import normpath +from qmk.constants import GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE + + +def _gen_led_config(info_data): + """Convert info.json content to g_led_config + """ + cols = info_data['matrix_size']['cols'] + rows = info_data['matrix_size']['rows'] + + config_type = None + if 'layout' in info_data.get('rgb_matrix', {}): + config_type = 'rgb_matrix' + elif 'layout' in info_data.get('led_matrix', {}): + config_type = 'led_matrix' + + lines = [] + if not config_type: + return lines + + matrix = [['NO_LED'] * cols for i in range(rows)] + pos = [] + flags = [] + + led_config = info_data[config_type]['layout'] + for index, item in enumerate(led_config, start=0): + if 'matrix' in item: + (x, y) = item['matrix'] + matrix[x][y] = str(index) + pos.append(f'{{ {item.get("x", 0)},{item.get("y", 0)} }}') + flags.append(str(item.get('flags', 0))) + + if config_type == 'rgb_matrix': + lines.append('#ifdef RGB_MATRIX_ENABLE') + lines.append('#include "rgb_matrix.h"') + elif config_type == 'led_matrix': + lines.append('#ifdef LED_MATRIX_ENABLE') + lines.append('#include "led_matrix.h"') + + lines.append('__attribute__ ((weak)) led_config_t g_led_config = {') + lines.append(' {') + for line in matrix: + lines.append(f' {{ {",".join(line)} }},') + lines.append(' },') + lines.append(f' {{ {",".join(pos)} }},') + lines.append(f' {{ {",".join(flags)} }},') + lines.append('};') + lines.append('#endif') + + return lines + + +@cli.argument('-o', '--output', arg_only=True, type=normpath, help='File to write to') +@cli.argument('-q', '--quiet', arg_only=True, action='store_true', help="Quiet mode, only output error messages") +@cli.argument('-kb', '--keyboard', arg_only=True, type=keyboard_folder, completer=keyboard_completer, required=True, help='Keyboard to generate keyboard.c for.') +@cli.subcommand('Used by the make system to generate keyboard.c from info.json', hidden=True) +def generate_keyboard_c(cli): + """Generates the keyboard.h file. + """ + kb_info_json = info_json(cli.args.keyboard) + + # Build the layouts.h file. + keyboard_h_lines = [GPL2_HEADER_C_LIKE, GENERATED_HEADER_C_LIKE, '#include QMK_KEYBOARD_H', ''] + + keyboard_h_lines.extend(_gen_led_config(kb_info_json)) + + # Show the results + dump_lines(cli.args.output, keyboard_h_lines, cli.args.quiet) diff --git a/lib/python/qmk/info.py b/lib/python/qmk/info.py index 49d1054519..0763433b3d 100644 --- a/lib/python/qmk/info.py +++ b/lib/python/qmk/info.py @@ -8,7 +8,7 @@ from dotty_dict import dotty from milc import cli from qmk.constants import CHIBIOS_PROCESSORS, LUFA_PROCESSORS, VUSB_PROCESSORS -from qmk.c_parse import find_layouts, parse_config_h_file +from qmk.c_parse import find_layouts, parse_config_h_file, find_led_config from qmk.json_schema import deep_update, json_load, validate from qmk.keyboard import config_h, rules_mk from qmk.keymap import list_keymaps, locate_keymap @@ -76,6 +76,9 @@ def info_json(keyboard): # Ensure that we have matrix row and column counts info_data = _matrix_size(info_data) + # Merge in data from + info_data = _extract_led_config(info_data, str(keyboard)) + # Validate against the jsonschema try: validate(info_data, 'qmk.api.keyboard.v1') @@ -590,6 +593,46 @@ def _extract_rules_mk(info_data, rules): return info_data +def find_keyboard_c(keyboard): + """Find all .c files + """ + keyboard = Path(keyboard) + current_path = Path('keyboards/') + + files = [] + for directory in keyboard.parts: + current_path = current_path / directory + keyboard_c_path = current_path / f'{directory}.c' + if keyboard_c_path.exists(): + files.append(keyboard_c_path) + + return files + + +def _extract_led_config(info_data, keyboard): + """Scan all .c files for led config + """ + cols = info_data['matrix_size']['cols'] + rows = info_data['matrix_size']['rows'] + + # Assume what feature owns g_led_config + feature = "rgb_matrix" + if info_data.get("features", {}).get("led_matrix", False): + feature = "led_matrix" + + # Process + for file in find_keyboard_c(keyboard): + try: + ret = find_led_config(file, cols, rows) + if ret: + info_data[feature] = info_data.get(feature, {}) + info_data[feature]["layout"] = ret + except Exception as e: + _log_warning(info_data, f'led_config: {file.name}: {e}') + + return info_data + + def _matrix_size(info_data): """Add info_data['matrix_size'] if it doesn't exist. """ diff --git a/lib/python/qmk/json_encoders.py b/lib/python/qmk/json_encoders.py index 40a5c1dea8..f968b3dbb2 100755 --- a/lib/python/qmk/json_encoders.py +++ b/lib/python/qmk/json_encoders.py @@ -75,8 +75,8 @@ class InfoJSONEncoder(QMKJSONEncoder): """Encode info.json dictionaries. """ if obj: - if self.indentation_level == 4: - # These are part of a layout, put them on a single line. + if set(("x", "y")).issubset(obj.keys()): + # These are part of a layout/led_config, put them on a single line. return "{ " + ", ".join(f"{self.encode(key)}: {self.encode(element)}" for key, element in sorted(obj.items())) + " }" else: From 85289e34ae32b262ef0546a2eb4b487eb5f3bea5 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Mon, 16 May 2022 00:40:56 +0100 Subject: [PATCH 419/699] Various fixes for g_led_config lint warnings (#17104) --- keyboards/aleblazer/zodiark/zodiark.c | 2 +- keyboards/ferris/0_2/bling/bling.c | 9 ++++++++- keyboards/horrortroll/handwired_k552/handwired_k552.c | 7 ++++++- keyboards/kbdfans/kbd75rgb/kbd75rgb.c | 2 +- keyboards/ml/gas75/gas75.c | 7 ++++++- keyboards/mwstudio/mw75r2/mw75r2.c | 9 ++++++--- keyboards/rgbkb/mun/rev1/rev1.c | 8 ++++---- 7 files changed, 32 insertions(+), 12 deletions(-) diff --git a/keyboards/aleblazer/zodiark/zodiark.c b/keyboards/aleblazer/zodiark/zodiark.c index d3893ada03..59429bf389 100644 --- a/keyboards/aleblazer/zodiark/zodiark.c +++ b/keyboards/aleblazer/zodiark/zodiark.c @@ -49,6 +49,6 @@ led_config_t g_led_config = { { { 113, 64 }, { 132, 64 }, { 150, 64 }, { 169, 64 }, { 187, 64 }, { 206, 64 }, { 224, 64 }, }, { // LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 + 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 } }; #endif diff --git a/keyboards/ferris/0_2/bling/bling.c b/keyboards/ferris/0_2/bling/bling.c index e275abdad0..e4d0bdbf7e 100644 --- a/keyboards/ferris/0_2/bling/bling.c +++ b/keyboards/ferris/0_2/bling/bling.c @@ -53,7 +53,14 @@ const is31_led g_is31_leds[DRIVER_LED_TOTAL] = { led_config_t g_led_config = { // Key Matrix to LED Index { - {}, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, }, { // LED Index to Physical Position. The unit is roughly milimiters in the real world // | Left || Right | diff --git a/keyboards/horrortroll/handwired_k552/handwired_k552.c b/keyboards/horrortroll/handwired_k552/handwired_k552.c index 31012d8a33..03bbad461f 100644 --- a/keyboards/horrortroll/handwired_k552/handwired_k552.c +++ b/keyboards/horrortroll/handwired_k552/handwired_k552.c @@ -21,7 +21,12 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - { } + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } }, { {152, 0}, {165, 0}, {190, 0}, {205, 0}, {224, 21}, {224, 43}, {224, 54}, diff --git a/keyboards/kbdfans/kbd75rgb/kbd75rgb.c b/keyboards/kbdfans/kbd75rgb/kbd75rgb.c index 93bbbfc02c..1f160ed4a5 100644 --- a/keyboards/kbdfans/kbd75rgb/kbd75rgb.c +++ b/keyboards/kbdfans/kbd75rgb/kbd75rgb.c @@ -25,7 +25,7 @@ led_config_t g_led_config = { { { 60, 61, 62, 63, 64, 65, 66, 67, 68, 69, 70, 71, NO_LED,72, 73}, { 83, 82, 81, NO_LED, NO_LED, 80, NO_LED, NO_LED, 79, 78, 77, 76, NO_LED,75 ,74} }, { - {0, 0}, {14.9, 0}, {14.9*2, 0},{14.9*3, 0}, {14.9*4, 0}, {14.9*5, 0}, {14.9*6, 0}, {14.9*7, 0}, {14.9*8, 0}, {14.9*9, 0}, {14.9*10, 0}, {14.9*11, 0}, {14.9*12, 0}, {14.9*13, 0}, {14.9*14, 0}, {224, 0}, + {0, 0}, {15, 0}, {30, 0},{45, 0}, {60, 0}, {75, 0}, {90, 0}, {105, 0}, {120, 0}, {135, 0}, {150, 0}, {165, 0}, {180, 0}, {195, 0}, {210, 0}, {224, 0}, {224, 12.8}, {218, 12.8},{192, 12.8},{176, 12.8},{160, 12.8},{144, 12.8},{128, 12.8},{112, 12.8},{96, 12.8},{80, 12.8},{64, 12.8},{48, 12.8},{32, 12.8},{16, 12.8},{0, 12.8}, {0, 25.6},{16, 25.6}, {32, 25.6}, {48, 25.6}, {64, 25.6}, {80, 25.6}, {96, 25.6}, {112, 25.6}, {128, 25.6}, {144, 25.6}, {160, 25.6},{176, 25.6}, {192, 25.6}, {218, 25.6}, {224, 25.6}, {224, 38.4},{200, 38.4},{176, 38.4},{160, 38.4},{144, 38.4},{128, 38.4},{112, 38.4},{96, 38.4},{80, 38.4},{64, 38.4},{48, 38.4},{32, 38.4},{16, 38.4},{0, 38.4}, diff --git a/keyboards/ml/gas75/gas75.c b/keyboards/ml/gas75/gas75.c index 61054273e4..05aa679011 100644 --- a/keyboards/ml/gas75/gas75.c +++ b/keyboards/ml/gas75/gas75.c @@ -18,7 +18,12 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - { 0, 1, 2 } + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } }, { //Key matrix (0 -> 2) {224, 0}, {0 , 0}, {6 , 38}, diff --git a/keyboards/mwstudio/mw75r2/mw75r2.c b/keyboards/mwstudio/mw75r2/mw75r2.c index 0aa3874678..339e2a5394 100644 --- a/keyboards/mwstudio/mw75r2/mw75r2.c +++ b/keyboards/mwstudio/mw75r2/mw75r2.c @@ -17,9 +17,12 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - { 0, 1, 2, 3, 4, 5, 6, 7 }, - { 8, 9, 10, 11, 12, 13, 14, 15 }, - { 16, 17, 18, 19, 20 } + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } }, { { 105, 60 }, { 70, 60 }, { 35, 60 }, { 0, 60 }, { 0, 40 }, { 0, 20 }, { 0, 0 }, { 42, 0 }, { 84, 0 }, { 126, 0 }, { 168, 0 }, { 210, 0 }, { 210, 20 }, { 210, 40 }, { 40, 20 }, { 120, 20 }, { 40, 40 }, { 120, 40 }, { 210, 60 }, { 175, 60 },{ 140, 60 } }, { diff --git a/keyboards/rgbkb/mun/rev1/rev1.c b/keyboards/rgbkb/mun/rev1/rev1.c index 28ad843b52..c7604510da 100644 --- a/keyboards/rgbkb/mun/rev1/rev1.c +++ b/keyboards/rgbkb/mun/rev1/rev1.c @@ -82,15 +82,15 @@ led_config_t g_led_config = { { { 14, 15, 16, 17, 18, 19, 20 }, { 27, 26, 25, 24, 23, 22, 21 }, { 28, 29, 30, 31, 32, 33, 34 }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, { 49, 50, 51, 52, 53, 54, 55 }, { 62, 61, 60, 59, 58, 57, 56 }, { 63, 64, 65, 66, 67, 68, 69 }, { 76, 75, 74, 73, 72, 71, 70 }, { 77, 78, 79, 80, 81, 82, 83 }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, - { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED }, + { NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED, NO_LED } }, { { 16, 16},{ 34, 16},{ 49, 16},{ 64, 16},{ 79, 16},{ 94, 16},{ 109, 16}, { 109, 31},{ 94, 31},{ 79, 31},{ 64, 31},{ 49, 31},{ 34, 31},{ 16, 31}, From 581628892600c422796ee4ad4ccf40d32a28b3af Mon Sep 17 00:00:00 2001 From: Nick Brassel Date: Mon, 16 May 2022 15:29:55 +1000 Subject: [PATCH 420/699] Warn about LTO with arm_atsam, not ChibiOS. (#17106) --- builddefs/common_rules.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/builddefs/common_rules.mk b/builddefs/common_rules.mk index 85dfe67f3f..d3acddc87b 100644 --- a/builddefs/common_rules.mk +++ b/builddefs/common_rules.mk @@ -82,8 +82,8 @@ endif # -Wall...: warning level # -Wa,...: tell GCC to pass this to the assembler. ifeq ($(strip $(LTO_ENABLE)), yes) - ifeq ($(PLATFORM),CHIBIOS) - $(info Enabling LTO on ChibiOS-targeting boards is known to have a high likelihood of failure.) + ifeq ($(PLATFORM),ARM_ATSAM) + $(info Enabling LTO on arm_atsam-targeting boards is known to have a high likelihood of failure.) $(info If unsure, set LTO_ENABLE = no.) endif CDEFS += -flto From 6a94a9547d8eca8cea58b14f98a921d485873456 Mon Sep 17 00:00:00 2001 From: moyi4681 Date: Mon, 16 May 2022 19:46:37 +0800 Subject: [PATCH 421/699] fix tiger80 matrix error (#17107) --- keyboards/kbdfans/tiger80/tiger80.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/kbdfans/tiger80/tiger80.h b/keyboards/kbdfans/tiger80/tiger80.h index cc48ca1ad6..5ff82f2bf1 100644 --- a/keyboards/kbdfans/tiger80/tiger80.h +++ b/keyboards/kbdfans/tiger80/tiger80.h @@ -29,7 +29,7 @@ { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F }, \ { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F }, \ { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F }, \ - { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K4E, K3F }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, KC_NO, K3D, K3E, K3F }, \ { K40, KC_NO, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, KC_NO, K4D, K4E, K4F }, \ { K50, K51, K52, KC_NO, KC_NO, KC_NO, K56, KC_NO, KC_NO, KC_NO, K5A, K5B, K5C, K5D, K5E, K5F } \ } From bc2a6cf6aea71e0fdd622370709aa924c9de031f Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Mon, 16 May 2022 18:44:34 -0700 Subject: [PATCH 422/699] DigiCarpice Configurator Rendering Fix (#17113) * info.json: apply friendly formatting * info.json: rebuild layout data --- .../handwired/swiftrax/digicarpice/info.json | 151 +++++++++++++++++- 1 file changed, 149 insertions(+), 2 deletions(-) diff --git a/keyboards/handwired/swiftrax/digicarpice/info.json b/keyboards/handwired/swiftrax/digicarpice/info.json index fb168bd770..762cc69af8 100644 --- a/keyboards/handwired/swiftrax/digicarpice/info.json +++ b/keyboards/handwired/swiftrax/digicarpice/info.json @@ -4,10 +4,157 @@ "maintainer": "swiftrax", "layouts": { "LAYOUT_unified_bs": { - "layout": [{"label":"0,0", "x":2.37, "y":0.08}, {"label":"0,1", "x":3.37, "y":0.08}, {"label":"0,11", "x":14.13, "y":0.08}, {"label":"0,12", "x":15.13, "y":0.08}, {"label":"0,13", "x":16.13, "y":0.08, "w":2}, {"label":"0,14", "x":18.38, "y":0.08}, {"label":"1,0", "x":2.24, "y":1.08, "w":1.5}, {"label":"1,1", "x":3.74, "y":1.08}, {"label":"1,10", "x":13.75, "y":1.08}, {"label":"1,11", "x":14.75, "y":1.08}, {"label":"1,12", "x":15.75, "y":1.08}, {"label":"1,13", "x":16.75, "y":1.08, "w":1.5}, {"label":"1,14", "x":18.5, "y":1.08}, {"label":"2,0", "x":2.1, "y":2.08, "w":1.75}, {"label":"2,1", "x":3.85, "y":2.08}, {"label":"2,10", "x":14.16, "y":2.08}, {"label":"2,11", "x":15.16, "y":2.08}, {"label":"2,13", "x":16.16, "y":2.08, "w":2.25}, {"label":"2,14", "x":18.66, "y":2.08}, {"label":"3,0", "x":1.95, "y":3.08, "w":2.25}, {"label":"3,1", "x":4.2, "y":3.08}, {"label":"3,10", "x":13.819999999999999, "y":3.08}, {"label":"3,11", "x":14.819999999999999, "y":3.08}, {"label":"3,12", "x":15.819999999999999, "y":3.08, "w":1.75}, {"label":"3,13", "x":17.82, "y":3.33}, {"label":"4,0", "x":2.1, "y":4.08, "w":1.25}, {"label":"4,1", "x":3.35, "y":4.08, "w":1.25}, {"label":"4,11", "x":15.32, "y":4.08, "w":1.25}, {"label":"4,12", "x":16.82, "y":4.33}, {"label":"4,13", "x":17.82, "y":4.33}, {"label":"4,14", "x":18.82, "y":4.33}, {"label":"0,2", "x":0, "y":5.33}, {"label":"0,3", "x":1, "y":5.33}, {"label":"0,4", "x":2, "y":5.33}, {"label":"0,5", "x":3, "y":5.33}, {"label":"0,6", "x":4, "y":5.33}, {"label":"1,2", "x":0.5, "y":6.33}, {"label":"1,3", "x":1.5, "y":6.33}, {"label":"1,4", "x":2.5, "y":6.33}, {"label":"1,5", "x":3.5, "y":6.33}, {"label":"2,2", "x":0.75, "y":7.33}, {"label":"2,3", "x":1.75, "y":7.33}, {"label":"2,4", "x":2.75, "y":7.33}, {"label":"2,5", "x":3.75, "y":7.33}, {"label":"3,2", "x":1.25, "y":8.33}, {"label":"3,3", "x":2.25, "y":8.33}, {"label":"3,4", "x":3.25, "y":8.33}, {"label":"3,5", "x":4.25, "y":8.33}, {"label":"4,2", "x":1.75, "y":9.33, "w":1.25}, {"label":"4,4", "x":3, "y":9.33, "w":2.25}, {"label":"0,7", "x":-4.5, "y":10.33}, {"label":"0,8", "x":-3.5, "y":10.33}, {"label":"0,9", "x":-2.5, "y":10.33}, {"label":"0,10", "x":-1.5, "y":10.33}, {"label":"1,6", "x":-5.0, "y":11.33}, {"label":"1,7", "x":-4, "y":11.33}, {"label":"1,8", "x":-3.0, "y":11.33}, {"label":"1,9", "x":-2, "y":11.33}, {"label":"2,6", "x":-4.75, "y":12.33}, {"label":"2,7", "x":-3.75, "y":12.33}, {"label":"2,8", "x":-2.75, "y":12.33}, {"label":"2,9", "x":-1.75, "y":12.33}, {"label":"3,6", "x":-5.25, "y":13.33}, {"label":"3,7", "x":-4.25, "y":13.33}, {"label":"3,8", "x":-3.25, "y":13.33}, {"label":"3,9", "x":-2.25, "y":13.33}, {"label":"4,7", "x":-5.25, "y":14.33, "w":2.75}, {"label":"4,9", "x":-2.5, "y":14.33, "w":1.25}] + "layout": [ + {"label":"0,0", "x":0.42, "y":0}, + {"label":"0,1", "x":1.42, "y":0}, + {"label":"0,2", "x":2.55, "y":0}, + {"label":"0,3", "x":3.55, "y":0}, + {"label":"0,4", "x":4.55, "y":0}, + {"label":"0,5", "x":5.55, "y":0}, + {"label":"0,6", "x":6.55, "y":0}, + {"label":"0,7", "x":9.55, "y":0}, + {"label":"0,8", "x":10.55, "y":0}, + {"label":"0,9", "x":11.55, "y":0}, + {"label":"0,10", "x":12.55, "y":0}, + {"label":"0,11", "x":13.68, "y":0}, + {"label":"0,12", "x":14.68, "y":0}, + {"label":"0,13", "x":15.68, "y":0, "w":2}, + {"label":"0,14", "x":17.93, "y":0}, + + {"label":"1,0", "w":1.5, "x":0.29, "y":1}, + {"label":"1,1", "x":1.79, "y":1}, + {"label":"1,2", "x":3.05, "y":1}, + {"label":"1,3", "x":4.05, "y":1}, + {"label":"1,4", "x":5.05, "y":1}, + {"label":"1,5", "x":6.05, "y":1}, + {"label":"1,6", "x":9.05, "y":1}, + {"label":"1,7", "x":10.05, "y":1}, + {"label":"1,8", "x":11.05, "y":1}, + {"label":"1,9", "x":12.05, "y":1}, + {"label":"1,10", "x":13.3, "y":1}, + {"label":"1,11", "x":14.3, "y":1}, + {"label":"1,12", "x":15.3, "y":1}, + {"label":"1,13", "w":1.5, "x":16.3, "y":1}, + {"label":"1,14", "x":18.05, "y":1}, + + {"label":"2,0", "w":1.75, "x":0.15, "y":2}, + {"label":"2,1", "x":1.9, "y":2}, + {"label":"2,2", "x":3.3, "y":2}, + {"label":"2,3", "x":4.3, "y":2}, + {"label":"2,4", "x":5.3, "y":2}, + {"label":"2,5", "x":6.3, "y":2}, + {"label":"2,6", "x":9.3, "y":2}, + {"label":"2,7", "x":10.3, "y":2}, + {"label":"2,8", "x":11.3, "y":2}, + {"label":"2,9", "x":12.3, "y":2}, + {"label":"2,10", "x":13.71, "y":2}, + {"label":"2,11", "x":14.71, "y":2}, + {"label":"2,13", "w":2.25, "x":15.71, "y":2}, + {"label":"2,14", "x":18.21, "y":2}, + + {"label":"3,0", "w":2.25, "x":0, "y":3}, + {"label":"3,1", "x":2.25, "y":3}, + {"label":"3,2", "x":3.8, "y":3}, + {"label":"3,3", "x":4.8, "y":3}, + {"label":"3,4", "x":5.8, "y":3}, + {"label":"3,5", "x":6.8, "y":3}, + {"label":"3,6", "x":8.8, "y":3}, + {"label":"3,7", "x":9.8, "y":3}, + {"label":"3,8", "x":10.8, "y":3}, + {"label":"3,9", "x":11.8, "y":3}, + {"label":"3,10", "x":13.37, "y":3}, + {"label":"3,11", "x":14.37, "y":3}, + {"label":"3,12", "w":1.75, "x":15.37, "y":3}, + {"label":"3,13", "x":17.37, "y":3.25}, + + {"label":"4,0", "w":1.25, "x":0.15, "y":4}, + {"label":"4,1", "w":1.25, "x":1.4, "y":4}, + {"label":"4,2", "w":1.25, "x":4.3, "y":4}, + {"label":"4,4", "w":2.25, "x":5.55, "y":4}, + {"label":"4,7", "w":2.75, "x":8.8, "y":4}, + {"label":"4,9", "w":1.25, "x":11.55, "y":4}, + {"label":"4,11", "w":1.25, "x":14.87, "y":4}, + {"label":"4,12", "x":16.37, "y":4.25}, + {"label":"4,13", "x":17.37, "y":4.25}, + {"label":"4,14", "x":18.37, "y":4.25} + ] }, "LAYOUT_split_bs": { - "layout": [{"label":"0,0", "x":2.37, "y":0.08}, {"label":"0,1", "x":3.37, "y":0.08}, {"label":"0,11", "x":14.13, "y":0.08}, {"label":"0,12", "x":15.13, "y":0.08}, {"label":"0,13", "x":16.13, "y":0.08}, {"label":"2,12", "x":17.13, "y":0.08}, {"label":"0,14", "x":18.38, "y":0.08}, {"label":"1,0", "x":2.24, "y":1.08, "w":1.5}, {"label":"1,1", "x":3.74, "y":1.08}, {"label":"1,10", "x":13.75, "y":1.08}, {"label":"1,11", "x":14.75, "y":1.08}, {"label":"1,12", "x":15.75, "y":1.08}, {"label":"1,13", "x":16.75, "y":1.08, "w":1.5}, {"label":"1,14", "x":18.5, "y":1.08}, {"label":"2,0", "x":2.1, "y":2.08, "w":1.75}, {"label":"2,1", "x":3.85, "y":2.08}, {"label":"2,10", "x":14.16, "y":2.08}, {"label":"2,11", "x":15.16, "y":2.08}, {"label":"2,13", "x":16.16, "y":2.08, "w":2.25}, {"label":"2,14", "x":18.66, "y":2.08}, {"label":"3,0", "x":1.95, "y":3.08, "w":2.25}, {"label":"3,1", "x":4.2, "y":3.08}, {"label":"3,10", "x":13.819999999999999, "y":3.08}, {"label":"3,11", "x":14.819999999999999, "y":3.08}, {"label":"3,12", "x":15.819999999999999, "y":3.08, "w":1.75}, {"label":"3,13", "x":17.82, "y":3.33}, {"label":"4,0", "x":2.1, "y":4.08, "w":1.25}, {"label":"4,1", "x":3.35, "y":4.08, "w":1.25}, {"label":"4,11", "x":15.32, "y":4.08, "w":1.25}, {"label":"4,12", "x":16.82, "y":4.33}, {"label":"4,13", "x":17.82, "y":4.33}, {"label":"4,14", "x":18.82, "y":4.33}, {"label":"0,2", "x":0, "y":5.33}, {"label":"0,3", "x":1, "y":5.33}, {"label":"0,4", "x":2, "y":5.33}, {"label":"0,5", "x":3, "y":5.33}, {"label":"0,6", "x":4, "y":5.33}, {"label":"1,2", "x":0.5, "y":6.33}, {"label":"1,3", "x":1.5, "y":6.33}, {"label":"1,4", "x":2.5, "y":6.33}, {"label":"1,5", "x":3.5, "y":6.33}, {"label":"2,2", "x":0.75, "y":7.33}, {"label":"2,3", "x":1.75, "y":7.33}, {"label":"2,4", "x":2.75, "y":7.33}, {"label":"2,5", "x":3.75, "y":7.33}, {"label":"3,2", "x":1.25, "y":8.33}, {"label":"3,3", "x":2.25, "y":8.33}, {"label":"3,4", "x":3.25, "y":8.33}, {"label":"3,5", "x":4.25, "y":8.33}, {"label":"4,2", "x":1.75, "y":9.33, "w":1.25}, {"label":"4,4", "x":3, "y":9.33, "w":2.25}, {"label":"0,7", "x":-4.5, "y":10.33}, {"label":"0,8", "x":-3.5, "y":10.33}, {"label":"0,9", "x":-2.5, "y":10.33}, {"label":"0,10", "x":-1.5, "y":10.33}, {"label":"1,6", "x":-5.0, "y":11.33}, {"label":"1,7", "x":-4, "y":11.33}, {"label":"1,8", "x":-3.0, "y":11.33}, {"label":"1,9", "x":-2, "y":11.33}, {"label":"2,6", "x":-4.75, "y":12.33}, {"label":"2,7", "x":-3.75, "y":12.33}, {"label":"2,8", "x":-2.75, "y":12.33}, {"label":"2,9", "x":-1.75, "y":12.33}, {"label":"3,6", "x":-5.25, "y":13.33}, {"label":"3,7", "x":-4.25, "y":13.33}, {"label":"3,8", "x":-3.25, "y":13.33}, {"label":"3,9", "x":-2.25, "y":13.33}, {"label":"4,7", "x":-5.25, "y":14.33, "w":2.75}, {"label":"4,9", "x":-2.5, "y":14.33, "w":1.25}] + "layout": [ + {"label":"0,0", "x":0.42, "y":0}, + {"label":"0,1", "x":1.42, "y":0}, + {"label":"0,2", "x":2.55, "y":0}, + {"label":"0,3", "x":3.55, "y":0}, + {"label":"0,4", "x":4.55, "y":0}, + {"label":"0,5", "x":5.55, "y":0}, + {"label":"0,6", "x":6.55, "y":0}, + {"label":"0,7", "x":9.55, "y":0}, + {"label":"0,8", "x":10.55, "y":0}, + {"label":"0,9", "x":11.55, "y":0}, + {"label":"0,10", "x":12.55, "y":0}, + {"label":"0,11", "x":13.68, "y":0}, + {"label":"0,12", "x":14.68, "y":0}, + {"label":"0,13", "x":15.68, "y":0}, + {"label":"2,12", "x":16.68, "y":0}, + {"label":"0,14", "x":17.93, "y":0}, + + {"label":"1,0", "w":1.5, "x":0.29, "y":1}, + {"label":"1,1", "x":1.79, "y":1}, + {"label":"1,2", "x":3.05, "y":1}, + {"label":"1,3", "x":4.05, "y":1}, + {"label":"1,4", "x":5.05, "y":1}, + {"label":"1,5", "x":6.05, "y":1}, + {"label":"1,6", "x":9.05, "y":1}, + {"label":"1,7", "x":10.05, "y":1}, + {"label":"1,8", "x":11.05, "y":1}, + {"label":"1,9", "x":12.05, "y":1}, + {"label":"1,10", "x":13.3, "y":1}, + {"label":"1,11", "x":14.3, "y":1}, + {"label":"1,12", "x":15.3, "y":1}, + {"label":"1,13", "w":1.5, "x":16.3, "y":1}, + {"label":"1,14", "x":18.05, "y":1}, + + {"label":"2,0", "w":1.75, "x":0.15, "y":2}, + {"label":"2,1", "x":1.9, "y":2}, + {"label":"2,2", "x":3.3, "y":2}, + {"label":"2,3", "x":4.3, "y":2}, + {"label":"2,4", "x":5.3, "y":2}, + {"label":"2,5", "x":6.3, "y":2}, + {"label":"2,6", "x":9.3, "y":2}, + {"label":"2,7", "x":10.3, "y":2}, + {"label":"2,8", "x":11.3, "y":2}, + {"label":"2,9", "x":12.3, "y":2}, + {"label":"2,10", "x":13.71, "y":2}, + {"label":"2,11", "x":14.71, "y":2}, + {"label":"2,13", "w":2.25, "x":15.71, "y":2}, + {"label":"2,14", "x":18.21, "y":2}, + + {"label":"3,0", "w":2.25, "x":0, "y":3}, + {"label":"3,1", "x":2.25, "y":3}, + {"label":"3,2", "x":3.8, "y":3}, + {"label":"3,3", "x":4.8, "y":3}, + {"label":"3,4", "x":5.8, "y":3}, + {"label":"3,5", "x":6.8, "y":3}, + {"label":"3,6", "x":8.8, "y":3}, + {"label":"3,7", "x":9.8, "y":3}, + {"label":"3,8", "x":10.8, "y":3}, + {"label":"3,9", "x":11.8, "y":3}, + {"label":"3,10", "x":13.37, "y":3}, + {"label":"3,11", "x":14.37, "y":3}, + {"label":"3,12", "w":1.75, "x":15.37, "y":3}, + {"label":"3,13", "x":17.37, "y":3.25}, + + {"label":"4,0", "w":1.25, "x":0.15, "y":4}, + {"label":"4,1", "w":1.25, "x":1.4, "y":4}, + {"label":"4,2", "w":1.25, "x":4.3, "y":4}, + {"label":"4,4", "w":2.25, "x":5.55, "y":4}, + {"label":"4,7", "w":2.75, "x":8.8, "y":4}, + {"label":"4,9", "w":1.25, "x":11.55, "y":4}, + {"label":"4,11", "w":1.25, "x":14.87, "y":4}, + {"label":"4,12", "x":16.37, "y":4.25}, + {"label":"4,13", "x":17.37, "y":4.25}, + {"label":"4,14", "x":18.37, "y":4.25} + ] } } } From 4b7555117ad851e1d4fda16a59636e8b705fd985 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 16 May 2022 20:27:22 -0700 Subject: [PATCH 423/699] [Keyboard] Fix compilation issues for Quark LP (#17009) Co-authored-by: Ryan --- keyboards/checkerboards/quark_lp/config.h | 13 +---------- keyboards/checkerboards/quark_lp/quark_lp.c | 24 ++++++++++----------- keyboards/checkerboards/quark_lp/rules.mk | 1 + 3 files changed, 14 insertions(+), 24 deletions(-) diff --git a/keyboards/checkerboards/quark_lp/config.h b/keyboards/checkerboards/quark_lp/config.h index 08f8c75b67..4d2f8f9fdf 100644 --- a/keyboards/checkerboards/quark_lp/config.h +++ b/keyboards/checkerboards/quark_lp/config.h @@ -46,21 +46,10 @@ /* Locking resynchronize hack */ #define LOCKING_RESYNC_ENABLE -// RGB Matrix -#define RGBLIGHT_EFFECT_BREATHING -#define RGBLIGHT_EFFECT_RAINBOW_MOOD -#define RGBLIGHT_EFFECT_RAINBOW_SWIRL -#define RGBLIGHT_EFFECT_SNAKE -#define RGBLIGHT_EFFECT_KNIGHT -#define RGBLIGHT_EFFECT_CHRISTMAS -#define RGBLIGHT_EFFECT_STATIC_GRADIENT -#define RGBLIGHT_EFFECT_RGB_TEST -#define RGBLIGHT_EFFECT_ALTERNATING -#define RGBLIGHT_EFFECT_TWINKLE #define RGB_DI_PIN C2 // pin the DI on the ws2812 is hooked-up to -#define RGBLED_NUM 51 // number of LEDs #ifdef RGB_MATRIX_ENABLE +#define DRIVER_LED_TOTAL 51 #define RGB_MATRIX_KEYPRESSES // reacts to keypresses #define RGB_DISABLE_WHEN_USB_SUSPENDED // turn off effects when suspended #define RGB_MATRIX_FRAMEBUFFER_EFFECTS diff --git a/keyboards/checkerboards/quark_lp/quark_lp.c b/keyboards/checkerboards/quark_lp/quark_lp.c index ff8f237a5b..05a2f79bcd 100644 --- a/keyboards/checkerboards/quark_lp/quark_lp.c +++ b/keyboards/checkerboards/quark_lp/quark_lp.c @@ -19,21 +19,21 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { // Key Matrix to LED Index - { 11, 10, 9, 8, 7, NO_LED, 6, NO_LED, 5, NO_LED, 4, 3, 2, 1, 0 }, - { 12, 13, 14, 15, 16, NO_LED, 17, NO_LED, 18, NO_LED, 19, 20, 21, 22, 23 }, - { 35, 34, 33, 32, 31, NO_LED, 30, NO_LED, 29, NO_LED, 28, 27, 26, 25, 24 }, - { 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 } + { 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50 }, + { 38, 37, 36, 35, 34, 33, 32, 31, 30, 29, 28, 27 }, + { 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26 }, + { 14, 13, 12, 11, 10, 9, 7, 5, 3, 2, 1, 0 } }, { // LED Index to Physical Position - { 244, 0 }, { 224, 0 }, { 203, 0 }, { 183, 0 }, { 163, 0 }, { 143, 0 }, { 122, 0 }, { 102, 0 }, { 81, 0 }, { 61, 0 }, { 41, 0 }, { 20, 0 }, - { 20, 21 }, { 41, 21 }, { 61, 21 }, { 81, 21 }, { 102, 21 }, { 122, 21 }, { 143, 21 }, { 163, 21 }, { 183, 21 }, { 203, 21 }, { 224, 21 }, { 244, 21 }, - { 244, 43 }, { 224, 43 }, { 203, 43 }, { 183, 43 }, { 163, 43 }, { 143, 43 }, { 122, 43 }, { 102, 43 }, { 81, 43 }, { 61, 43 }, { 41, 43 }, { 20, 43 }, - { 20, 64 }, { 41, 64 }, { 61, 64 }, { 81, 64 }, { 102, 64 }, { 112, 64 }, { 122, 64 }, { 132, 64 }, { 143, 64 }, { 153, 64 }, { 163, 64 }, { 183, 64 }, { 203, 64 }, { 224, 64 }, { 244, 64 } + { 244, 0 }, { 224, 0 }, { 203, 0 }, { 183, 0 }, { 173, 0 }, { 163, 0 }, { 153, 0 }, { 143, 0 }, { 133, 0 }, { 122, 0 }, { 102, 0 }, { 81, 0 }, { 61, 0 }, { 41, 0 }, { 20, 0 }, + { 20, 21 }, { 41, 21 }, { 61, 21 }, { 81, 21 }, { 102, 21 }, { 122, 21 }, { 143, 21 }, { 163, 21 }, { 183, 21 }, { 203, 21 }, { 224, 21 }, { 244, 21 }, + { 244, 43 }, { 224, 43 }, { 203, 43 }, { 183, 43 }, { 163, 43 }, { 143, 43 }, { 122, 43 }, { 102, 43 }, { 81, 43 }, { 61, 43 }, { 41, 43 }, { 20, 43 }, + { 20, 64 }, { 41, 64 }, { 61, 64 }, { 81, 64 }, { 102, 64 }, { 112, 64 }, { 122, 64 }, { 132, 64 }, { 143, 64 }, { 153, 64 }, { 163, 64 }, { 183, 64 }, { 203, 64 }, { 224, 64 }, { 244, 64 } }, { // LED Index to Flag - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, - 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4 + 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1, + 1, 4, 4, 4, 4, 4, 4, 4, 4, 4, 4, 1 } }; #endif diff --git a/keyboards/checkerboards/quark_lp/rules.mk b/keyboards/checkerboards/quark_lp/rules.mk index d5bf779f12..37ede7c3d3 100644 --- a/keyboards/checkerboards/quark_lp/rules.mk +++ b/keyboards/checkerboards/quark_lp/rules.mk @@ -17,3 +17,4 @@ BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow AUDIO_ENABLE = no # Audio output RGB_MATRIX_ENABLE = yes +RGB_MATRIX_DRIVER = WS2812 From f22e8585a148a19afa45476b69def23c6b997925 Mon Sep 17 00:00:00 2001 From: Drashna Jaelre Date: Mon, 16 May 2022 21:45:11 -0700 Subject: [PATCH 424/699] [Keyboard] Fix too many elements in g_led_config for quark_lp (#17117) --- keyboards/checkerboards/quark_lp/quark_lp.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/keyboards/checkerboards/quark_lp/quark_lp.c b/keyboards/checkerboards/quark_lp/quark_lp.c index 05a2f79bcd..a46110e8b9 100644 --- a/keyboards/checkerboards/quark_lp/quark_lp.c +++ b/keyboards/checkerboards/quark_lp/quark_lp.c @@ -28,7 +28,7 @@ led_config_t g_led_config = { { { 244, 0 }, { 224, 0 }, { 203, 0 }, { 183, 0 }, { 173, 0 }, { 163, 0 }, { 153, 0 }, { 143, 0 }, { 133, 0 }, { 122, 0 }, { 102, 0 }, { 81, 0 }, { 61, 0 }, { 41, 0 }, { 20, 0 }, { 20, 21 }, { 41, 21 }, { 61, 21 }, { 81, 21 }, { 102, 21 }, { 122, 21 }, { 143, 21 }, { 163, 21 }, { 183, 21 }, { 203, 21 }, { 224, 21 }, { 244, 21 }, { 244, 43 }, { 224, 43 }, { 203, 43 }, { 183, 43 }, { 163, 43 }, { 143, 43 }, { 122, 43 }, { 102, 43 }, { 81, 43 }, { 61, 43 }, { 41, 43 }, { 20, 43 }, - { 20, 64 }, { 41, 64 }, { 61, 64 }, { 81, 64 }, { 102, 64 }, { 112, 64 }, { 122, 64 }, { 132, 64 }, { 143, 64 }, { 153, 64 }, { 163, 64 }, { 183, 64 }, { 203, 64 }, { 224, 64 }, { 244, 64 } + { 20, 64 }, { 41, 64 }, { 61, 64 }, { 81, 64 }, { 102, 64 }, { 112, 64 }, { 122, 64 }, { 132, 64 }, { 143, 64 }, { 153, 64 }, { 163, 64 }, { 183, 64 } }, { // LED Index to Flag 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, From 467f3ae872101ed6c1c3cbf10f18384304ddbb6e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C3=81lvaro=20A=2E=20Volpato?= Date: Tue, 17 May 2022 01:45:56 -0300 Subject: [PATCH 425/699] [Keyboard] Add Iron165R2 PCB support (#16948) --- keyboards/smithrune/iron165r2/config.h | 64 +++++++++++ keyboards/smithrune/iron165r2/f072/config.h | 40 +++++++ keyboards/smithrune/iron165r2/f072/halconf.h | 24 ++++ keyboards/smithrune/iron165r2/f072/mcuconf.h | 25 ++++ keyboards/smithrune/iron165r2/f072/rules.mk | 4 + keyboards/smithrune/iron165r2/f411/config.h | 48 ++++++++ keyboards/smithrune/iron165r2/f411/halconf.h | 24 ++++ keyboards/smithrune/iron165r2/f411/mcuconf.h | 44 +++++++ keyboards/smithrune/iron165r2/f411/rules.mk | 5 + keyboards/smithrune/iron165r2/iron165r2.c | 37 ++++++ keyboards/smithrune/iron165r2/iron165r2.h | 43 +++++++ .../iron165r2/keymaps/default/keymap.c | 47 ++++++++ .../smithrune/iron165r2/keymaps/via/keymap.c | 47 ++++++++ .../smithrune/iron165r2/keymaps/via/rules.mk | 1 + keyboards/smithrune/iron165r2/readme.md | 64 +++++++++++ keyboards/smithrune/iron165r2/rules.mk | 18 +++ keyboards/smithrune/iron180/config.h | 68 +++++++++++ keyboards/smithrune/iron180/halconf.h | 27 +++++ keyboards/smithrune/iron180/info.json | 108 ++++++++++++++++++ keyboards/smithrune/iron180/iron180.c | 18 +++ keyboards/smithrune/iron180/iron180.h | 38 ++++++ .../iron180/keymaps/default/keymap.c | 53 +++++++++ .../smithrune/iron180/keymaps/via/keymap.c | 53 +++++++++ .../smithrune/iron180/keymaps/via/rules.mk | 1 + keyboards/smithrune/iron180/mcuconf.h | 30 +++++ keyboards/smithrune/iron180/readme.md | 18 +++ keyboards/smithrune/iron180/rules.mk | 23 ++++ 27 files changed, 972 insertions(+) create mode 100644 keyboards/smithrune/iron165r2/config.h create mode 100644 keyboards/smithrune/iron165r2/f072/config.h create mode 100644 keyboards/smithrune/iron165r2/f072/halconf.h create mode 100644 keyboards/smithrune/iron165r2/f072/mcuconf.h create mode 100644 keyboards/smithrune/iron165r2/f072/rules.mk create mode 100644 keyboards/smithrune/iron165r2/f411/config.h create mode 100644 keyboards/smithrune/iron165r2/f411/halconf.h create mode 100644 keyboards/smithrune/iron165r2/f411/mcuconf.h create mode 100644 keyboards/smithrune/iron165r2/f411/rules.mk create mode 100644 keyboards/smithrune/iron165r2/iron165r2.c create mode 100644 keyboards/smithrune/iron165r2/iron165r2.h create mode 100644 keyboards/smithrune/iron165r2/keymaps/default/keymap.c create mode 100644 keyboards/smithrune/iron165r2/keymaps/via/keymap.c create mode 100644 keyboards/smithrune/iron165r2/keymaps/via/rules.mk create mode 100644 keyboards/smithrune/iron165r2/readme.md create mode 100644 keyboards/smithrune/iron165r2/rules.mk create mode 100644 keyboards/smithrune/iron180/config.h create mode 100644 keyboards/smithrune/iron180/halconf.h create mode 100644 keyboards/smithrune/iron180/info.json create mode 100644 keyboards/smithrune/iron180/iron180.c create mode 100644 keyboards/smithrune/iron180/iron180.h create mode 100755 keyboards/smithrune/iron180/keymaps/default/keymap.c create mode 100755 keyboards/smithrune/iron180/keymaps/via/keymap.c create mode 100644 keyboards/smithrune/iron180/keymaps/via/rules.mk create mode 100644 keyboards/smithrune/iron180/mcuconf.h create mode 100644 keyboards/smithrune/iron180/readme.md create mode 100644 keyboards/smithrune/iron180/rules.mk diff --git a/keyboards/smithrune/iron165r2/config.h b/keyboards/smithrune/iron165r2/config.h new file mode 100644 index 0000000000..bfe83ba52c --- /dev/null +++ b/keyboards/smithrune/iron165r2/config.h @@ -0,0 +1,64 @@ +/* +Copyright 2022 Gondolindrim + +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 . +*/ + +#pragma once + +#include "config_common.h" + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x8384 // SR for Smith and RUne +#define PRODUCT_ID 0x1652 // 165 rev 2 +#define DEVICE_VER 0x0001 +#define MANUFACTURER SmithRune +#define PRODUCT Iron156R2 + +#define MATRIX_ROWS 5 +#define MATRIX_COLS 15 + +#define MATRIX_COL_PINS { A3 , B8 , B9 , B1 , B0 , B5 , B4 , B3 , A15, A8 , A1 , A0 , C15, C14, C13} +#define MATRIX_ROW_PINS { B10, A10, A2 , A5 , A7 } + +#define DIODE_DIRECTION COL2ROW + +#define LED_CAPS_LOCK_PIN A4 + +#define DEBOUNCE 5 + +#define LOCKING_SUPPORT_ENABLE +#define LOCKING_RESYNC_ENABLE + +//#define ALL_RGBS // Define the RGB option here +//#define LINE_RGBS +//#define RUNE_RGBS +#define LUKE_RGBS + +#define RGBLIGHT_LED_MAP {17 , 0 , 1 , 2 , 3 , 18 , 20 , 16 , 4 , 5 , 6 , 7 , 8 , 9 , 10 , 11 , 19 , 12 , 13 , 14 , 15 , 21} +// D18, D19, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D60, D61, D62, D63, D64, D65, D66, D67, D68, D69} + +#ifdef RUNE_RGBS +# undef RGBLIGHT_LED_MAP +# define RGBLIGHT_LED_MAP {1 , 6 , 7 , 8 , 9 , 2 , 5 , 0 , 10 , 11 , 12 , 13 , 14 , 15 , 16 , 17 , 3 , 4 , 18 , 19 , 20 , 21 } +// D18, D19, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D60, D61, D62, D63, D64, D65, D66, D67, D68, D69} +#endif + +#ifdef LUKE_RGBS +# undef RGBLIGHT_LED_MAP +# define RGBLIGHT_LED_MAP {21 , 2 , 3 , 4 , 5 , 1 , 20 , 0 , 6 , 7 , 8 , 9 , 10 , 11 , 12 , 13 , 19 , 14 , 15 , 16 , 17 , 18 } +// D18, D19, D20, D21, D22, D23, D24, D25, D26, D27, D28, D29, D60, D61, D62, D63, D64, D65, D66, D67, D68, D69} +#endif + +#define RGBLIGHT_DEFAULT_VAL 0 diff --git a/keyboards/smithrune/iron165r2/f072/config.h b/keyboards/smithrune/iron165r2/f072/config.h new file mode 100644 index 0000000000..502f5d6add --- /dev/null +++ b/keyboards/smithrune/iron165r2/f072/config.h @@ -0,0 +1,40 @@ +/* +Copyright 2020 Gondolindrim + +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 . +*/ + +#pragma once + +#define BACKLIGHT_PIN A6 +#define BACKLIGHT_PWM_DRIVER PWMD3 +#define BACKLIGHT_PWM_CHANNEL 1 +#define BACKLIGHT_PAL_MODE 1 +#define BACKLIGHT_LEVELS 20 +#define BACKLIGHT_BREATHING +#define BREATHING_PERIOD 5 +#define BACKLIGHT_ON_STATE 1 + +#define RGB_DI_PIN B15 +#define RGBLED_NUM 22 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE diff --git a/keyboards/smithrune/iron165r2/f072/halconf.h b/keyboards/smithrune/iron165r2/f072/halconf.h new file mode 100644 index 0000000000..22478d7bc9 --- /dev/null +++ b/keyboards/smithrune/iron165r2/f072/halconf.h @@ -0,0 +1,24 @@ +/* Copyright 2022 QMK + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_PAL TRUE + +#define HAL_USE_SPI TRUE + +#include_next diff --git a/keyboards/smithrune/iron165r2/f072/mcuconf.h b/keyboards/smithrune/iron165r2/f072/mcuconf.h new file mode 100644 index 0000000000..d712a1e5a7 --- /dev/null +++ b/keyboards/smithrune/iron165r2/f072/mcuconf.h @@ -0,0 +1,25 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE + +#undef STM32_SPI_USE_SPI2 +#define STM32_SPI_USE_SPI2 TRUE diff --git a/keyboards/smithrune/iron165r2/f072/rules.mk b/keyboards/smithrune/iron165r2/f072/rules.mk new file mode 100644 index 0000000000..dfaf85650d --- /dev/null +++ b/keyboards/smithrune/iron165r2/f072/rules.mk @@ -0,0 +1,4 @@ +# MCU name +MCU = STM32F072 +BACKLIGHT_ENABLE = yes +BACKLIGHT_DRIVER = pwm diff --git a/keyboards/smithrune/iron165r2/f411/config.h b/keyboards/smithrune/iron165r2/f411/config.h new file mode 100644 index 0000000000..5b2e04b93c --- /dev/null +++ b/keyboards/smithrune/iron165r2/f411/config.h @@ -0,0 +1,48 @@ +/* +Copyright 2022 Gondolindrim + +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 . +*/ + +#pragma once +#define BACKLIGHT_PIN A6 +#define BACKLIGHT_PWM_DRIVER PWMD3 +#define BACKLIGHT_PWM_CHANNEL 1 +#define BACKLIGHT_PAL_MODE 2 +#define BACKLIGHT_LEVELS 20 +#define BACKLIGHT_BREATHING +#define BREATHING_PERIOD 5 +#define BACKLIGHT_ON_STATE 1 + +#define STM32_HSECLK 8000000 + +#define RGB_DI_PIN B15 +#define RGBLED_NUM 22 +#define RGBLIGHT_EFFECT_BREATHING +#define RGBLIGHT_EFFECT_RAINBOW_MOOD +#define RGBLIGHT_EFFECT_RAINBOW_SWIRL +#define RGBLIGHT_EFFECT_SNAKE +#define RGBLIGHT_EFFECT_KNIGHT +#define RGBLIGHT_EFFECT_CHRISTMAS +#define RGBLIGHT_EFFECT_STATIC_GRADIENT +#define RGBLIGHT_EFFECT_RGB_TEST +#define RGBLIGHT_EFFECT_ALTERNATING +#define RGBLIGHT_EFFECT_TWINKLE + +#define WS2812_PWM_COMPLEMENTARY_OUTPUT +#define WS2812_PWM_DRIVER PWMD1 +#define WS2812_PWM_CHANNEL 3 +#define WS2812_PWM_PAL_MODE 1 +#define WS2812_DMA_STREAM STM32_DMA2_STREAM5 +#define WS2812_DMA_CHANNEL 6 diff --git a/keyboards/smithrune/iron165r2/f411/halconf.h b/keyboards/smithrune/iron165r2/f411/halconf.h new file mode 100644 index 0000000000..ebdb4954a1 --- /dev/null +++ b/keyboards/smithrune/iron165r2/f411/halconf.h @@ -0,0 +1,24 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#define HAL_USE_PWM TRUE +#define HAL_USE_PAL TRUE + +#define HAL_USE_I2C TRUE + +#include_next diff --git a/keyboards/smithrune/iron165r2/f411/mcuconf.h b/keyboards/smithrune/iron165r2/f411/mcuconf.h new file mode 100644 index 0000000000..0ea015be4f --- /dev/null +++ b/keyboards/smithrune/iron165r2/f411/mcuconf.h @@ -0,0 +1,44 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +#pragma once + +#include_next +#undef STM32_PLLM_VALUE +#undef STM32_PLLN_VALUE +#undef STM32_PLLP_VALUE +#undef STM32_PLLQ_VALUE +#undef STM32_PPRE1 +#undef STM32_PPRE2 + +#define STM32_PLLM_VALUE 4 +#define STM32_PLLN_VALUE 72 +#define STM32_PLLP_VALUE 2 +#define STM32_PLLQ_VALUE 3 +#define STM32_PPRE1 STM32_PPRE1_DIV2 +#define STM32_PPRE2 STM32_PPRE2_DIV1 + +#undef STM32_I2C_USE_I2C1 +#define STM32_I2C_USE_I2C1 TRUE + +#undef STM32_PWM_USE_ADVANCED +#define STM32_PWM_USE_ADVANCED TRUE + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 TRUE + +#undef STM32_PWM_USE_TIM1 +#define STM32_PWM_USE_TIM1 TRUE diff --git a/keyboards/smithrune/iron165r2/f411/rules.mk b/keyboards/smithrune/iron165r2/f411/rules.mk new file mode 100644 index 0000000000..19ac363e7d --- /dev/null +++ b/keyboards/smithrune/iron165r2/f411/rules.mk @@ -0,0 +1,5 @@ +MCU = STM32F411 +EEPROM_DRIVER = i2c +BACKLIGHT_ENABLE = yes +BACKLIGHT_DRIVER = pwm +WS2812_DRIVER = pwm diff --git a/keyboards/smithrune/iron165r2/iron165r2.c b/keyboards/smithrune/iron165r2/iron165r2.c new file mode 100644 index 0000000000..c13c362556 --- /dev/null +++ b/keyboards/smithrune/iron165r2/iron165r2.c @@ -0,0 +1,37 @@ +/* Copyright 2020 Gondolindrim + * + * 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 . + */ + +#include "iron165r2.h" + +void board_init(void) { + setPinInput(B6); + setPinInput(B7); +#if defined (LINE_RGBS) + rgblight_set_effect_range(0,16); +#elif defined (RUNE_RGBS) + rgblight_set_effect_range(0,5); +#elif defined (LUKE_RGBS) + rgblight_set_effect_range(0,2); +#endif +} + +#define LED_PIN_ON_STATE 1 + +bool led_update_kb(led_t led_state) { + bool res = led_update_user(led_state); + if(res) writePin(LED_CAPS_LOCK_PIN, led_state.caps_lock); + return res; +} diff --git a/keyboards/smithrune/iron165r2/iron165r2.h b/keyboards/smithrune/iron165r2/iron165r2.h new file mode 100644 index 0000000000..3bc816d454 --- /dev/null +++ b/keyboards/smithrune/iron165r2/iron165r2.h @@ -0,0 +1,43 @@ +/* Copyright 2022 Gondolindrim + * + * 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 . + */ + +#pragma once +#define ___ KC_NO + +#include "quantum.h" + +/* This is a shortcut to help you visually see your layout. + * + * The first section contains all of the arguments representing the physical + * layout of the board and position of the Keys. + * + * The second converts the arguments into a two-dimensional array which + * represents the switch matrix. + */ + +#define LAYOUT( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E , \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E , \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E , \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E , \ + K40, K41, K42, K46, K49, K4A, K4B, K4C, K4D, K4E )\ +{\ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, K3E }, \ + { K40, K41, K42, ___, ___, ___, K46, ___, ___, K49, K4A, K4B, K4C, K4D, K4E } \ +} diff --git a/keyboards/smithrune/iron165r2/keymaps/default/keymap.c b/keyboards/smithrune/iron165r2/keymaps/default/keymap.c new file mode 100644 index 0000000000..9d7d092e51 --- /dev/null +++ b/keyboards/smithrune/iron165r2/keymaps/default/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2020 Gondolindrim + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT( /* Base */ + KC_GESC, 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_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, KC_PGUP, + 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_NUHS, KC_ENTER,KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL +), +[1] = LAYOUT( + RESET , 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[2] = LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[3] = LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +}; diff --git a/keyboards/smithrune/iron165r2/keymaps/via/keymap.c b/keyboards/smithrune/iron165r2/keymaps/via/keymap.c new file mode 100644 index 0000000000..9d7d092e51 --- /dev/null +++ b/keyboards/smithrune/iron165r2/keymaps/via/keymap.c @@ -0,0 +1,47 @@ +/* Copyright 2020 Gondolindrim + * + * 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 . + */ +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { +[0] = LAYOUT( /* Base */ + KC_GESC, 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_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, KC_PGUP, + 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_NUHS, KC_ENTER,KC_PGDN, + KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT , KC_SLSH, KC_RSFT, KC_UP, KC_END, + KC_LCTRL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, KC_RGUI, KC_LEFT, KC_DOWN, KC_RGHT, KC_DEL +), +[1] = LAYOUT( + RESET , 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[2] = LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[3] = LAYOUT( + 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +}; diff --git a/keyboards/smithrune/iron165r2/keymaps/via/rules.mk b/keyboards/smithrune/iron165r2/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/smithrune/iron165r2/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/smithrune/iron165r2/readme.md b/keyboards/smithrune/iron165r2/readme.md new file mode 100644 index 0000000000..2bbf31bdeb --- /dev/null +++ b/keyboards/smithrune/iron165r2/readme.md @@ -0,0 +1,64 @@ +# Iron 165R2 QMK folder + +![Iron165R2](https://i.imgur.com/jPamxKu.jpg) + +## Introduction + +This is the QMK Firmware repository for the Iron165 Round 2 PCB, a keyboard designed by [Smith and Rune](https://smithrune.com/) and PCB designed by [Gondolindrim](http://github.com/Gondolindrim), who is also the firwmare maintainer. + +The Iron 165R2 PCB is a 65% PCB with support for a myriad of alternative layouts, including a 7U bottom row and ISO. It also supports in-switch single-color LEDs and RGB LEDs for underglow light. + +As of November 2021, the only way to obtain an Iron165 was through the [Group Buy](https://geekhack.org/index.php?topic=110985) which is already over; extra units are still to be sold. + +## How to flash + +### Enter bootloader + +The DFU state in the bootloader can be accessed in 3 ways: + +* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key, escape in the default keymap) and plug in the keyboard; +* **Physical reset button**: press the button on the front of the PCB, next to caps lock, for at least five seconds; +* **Keycode in layout**: Press the key mapped to `RESET`; in the default layout, that is top left key ('escape') in layer 1. + +### How to compile and flash + +The 165R2 PCB was prototyped and tested using two microcontrollers: STM32F072 and STM32F411. Most production-run units were manufactured with the latter. + +After checking what PCB you own and setting up your build environment, you can compile the Iron 165R2 default keymap by using one of the options below. + + make smithrune/iron165r2/165r2_f072:default + make smithrune/iron165r2/165r2_f411:default + +And use dfu-util in the command line or through a GUI like QMK toolbox to upload the firmware to the PCB. To directly flash the PCB after it is put into a DFU state, use: + + make smithrune/iron165r2/165r2_f072:default:flash + make smithrune/iron165r2/165r2_f411:default:flash + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + +## The "runes RGB" feature + +The firmware for 165R2 allows the user to control the RGBs on the PCB through limiting their span according to the usage. There are four possible usages: + +- "Rune RGBs" where only the RGBs under the SnR rune logo on the 165R2 case are lit up; +![runergbs](https://i.imgur.com/HzpnsdL.jpg) +- "Line RGBs" where only the RGBs on the two alpha cluster rows are lit up; +![linergbs](https://i.imgur.com/A1YThUr.jpg) +- "Luke RGBs" where the line RGBs and D25-D23 are on (to avoid hotspotting on the rune backplate); and +![lukergbs](https://i.imgur.com/PnuuX3F.jpg) +- "All RGBs" where all RGBs are turned on. +![allrgbs](https://i.imgur.com/cX9KnTP.jpg) + +In order to use the "rune RGBs" option, you can turn this option on by un-commenting the respective line on the corresponding `config.h` file: + + #define RUNE_RGBS + +If you want to use the "line RGBs" option, you can un-comment the respective lone on the corresponding `config.h` file: + + #define LINES_RGBS + +If you want to use the "luke RGBs" option, you can un-comment the respective lone on the corresponding `config.h` file: + + #define LUKE_RGBS + +The options supersede each other in this order. If no option is defined, then the firwmare defaults to the "all RGBs" option. diff --git a/keyboards/smithrune/iron165r2/rules.mk b/keyboards/smithrune/iron165r2/rules.mk new file mode 100644 index 0000000000..272814ce9e --- /dev/null +++ b/keyboards/smithrune/iron165r2/rules.mk @@ -0,0 +1,18 @@ +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = no # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = no # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # USB Nkey Rollover +RGBLIGHT_ENABLE = yes # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +LTO_ENABLE = no +ENCODER_ENABLE = no +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRU diff --git a/keyboards/smithrune/iron180/config.h b/keyboards/smithrune/iron180/config.h new file mode 100644 index 0000000000..084f008a78 --- /dev/null +++ b/keyboards/smithrune/iron180/config.h @@ -0,0 +1,68 @@ +/* +Copyright 2015 Álvaro "Gondolindrim" Volpato + +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 . +*/ + +#pragma once + +/* USB Device descriptor parameter */ +#define VENDOR_ID 0x8384 //SR for Smith and Rune +#define PRODUCT_ID 0x1180 +#define DEVICE_VER 0x0001 +#define MANUFACTURER SmithRune +#define PRODUCT IRON180 + +/* key matrix size */ +#define MATRIX_ROWS 6 +#define MATRIX_COLS 17 + +#define MATRIX_COL_PINS { B7 , B6 , B5 , B4 , B3 , A10, A9 , A8 , B15, B14, B13, B12, B11, B2 , A4 , B1 , A3 } +#define MATRIX_ROW_PINS { B9 , B8 , A15, B0 , A7 , A5 } +#define DIODE_DIRECTION COL2ROW + +#define BACKLIGHT_PIN A6 +#define BACKLIGHT_PWM_DRIVER PWMD3 +#define BACKLIGHT_PWM_CHANNEL 1 +#define BACKLIGHT_PAL_MODE 1 +#define BACKLIGHT_LEVELS 6 +#define BACKLIGHT_BREATHING +#define BREATHING_PERIOD 6 + +/* define if matrix has ghost */ +//#define MATRIX_HAS_GHOST + +/* Set 0 if debouncing isn't needed */ +#define DEBOUNCE 5 + +/* 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 + +/* + * 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 diff --git a/keyboards/smithrune/iron180/halconf.h b/keyboards/smithrune/iron180/halconf.h new file mode 100644 index 0000000000..2d08414263 --- /dev/null +++ b/keyboards/smithrune/iron180/halconf.h @@ -0,0 +1,27 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/iron180/halconf.h -r platforms/chibios/common/configs/halconf.h` + */ + +#pragma once + +#define HAL_USE_PWM YES + +#include_next + diff --git a/keyboards/smithrune/iron180/info.json b/keyboards/smithrune/iron180/info.json new file mode 100644 index 0000000000..64ee4b4ee3 --- /dev/null +++ b/keyboards/smithrune/iron180/info.json @@ -0,0 +1,108 @@ +{ + "keyboard_name": "Iron180", + "url": "", + "maintainer": "Gondolindrim", + "layouts": { + "LAYOUT_all": { + "layout": [ + {"label":"K00", "x":0, "y":0}, + {"label":"K01", "x":1.25, "y":0}, + {"label":"K02", "x":2.25, "y":0}, + {"label":"K03", "x":3.25, "y":0}, + {"label":"K04", "x":4.25, "y":0}, + {"label":"K05", "x":5.5, "y":0}, + {"label":"K06", "x":6.5, "y":0}, + {"label":"K07", "x":7.5, "y":0}, + {"label":"K08", "x":8.5, "y":0}, + {"label":"K09", "x":9.75, "y":0}, + {"label":"K0A", "x":10.75, "y":0}, + {"label":"K0B", "x":11.75, "y":0}, + {"label":"K0C", "x":12.75, "y":0}, + {"label":"K0D", "x":14, "y":0}, + {"label":"K0E", "x":15.25, "y":0}, + {"label":"K0F", "x":16.25, "y":0}, + {"label":"K0G", "x":17.25, "y":0}, + + {"label":"K10", "x":0, "y":1.25}, + {"label":"K11", "x":1, "y":1.25}, + {"label":"K12", "x":2, "y":1.25}, + {"label":"K13", "x":3, "y":1.25}, + {"label":"K14", "x":4, "y":1.25}, + {"label":"K15", "x":5, "y":1.25}, + {"label":"K16", "x":6, "y":1.25}, + {"label":"K17", "x":7, "y":1.25}, + {"label":"K18", "x":8, "y":1.25}, + {"label":"K19", "x":9, "y":1.25}, + {"label":"K1A", "x":10, "y":1.25}, + {"label":"K1B", "x":11, "y":1.25}, + {"label":"K1C", "x":12, "y":1.25}, + {"label":"K1D", "x":13, "y":1.25}, + {"label":"K1E", "x":14, "y":1.25}, + {"label":"K1F", "x":15.25, "y":1.25}, + {"label":"K1G", "x":16.25, "y":1.25}, + {"label":"K3G", "x":17.25, "y":1.25}, + + {"label":"K20", "x":0, "y":2.25, "w":1.5}, + {"label":"K21", "x":1.5, "y":2.25}, + {"label":"K22", "x":2.5, "y":2.25}, + {"label":"K23", "x":3.5, "y":2.25}, + {"label":"K24", "x":4.5, "y":2.25}, + {"label":"K25", "x":5.5, "y":2.25}, + {"label":"K26", "x":6.5, "y":2.25}, + {"label":"K27", "x":7.5, "y":2.25}, + {"label":"K28", "x":8.5, "y":2.25}, + {"label":"K29", "x":9.5, "y":2.25}, + {"label":"K2A", "x":10.5, "y":2.25}, + {"label":"K2B", "x":11.5, "y":2.25}, + {"label":"K2C", "x":12.5, "y":2.25}, + {"label":"K2D", "x":13.5, "y":2.25, "w":1.5}, + {"label":"K2E", "x":15.25, "y":2.25}, + {"label":"K2F", "x":16.25, "y":2.25}, + {"label":"K2G", "x":17.25, "y":2.25}, + + {"label":"K30", "x":0, "y":3.25, "w":1.75}, + {"label":"K31", "x":1.75, "y":3.25}, + {"label":"K32", "x":2.75, "y":3.25}, + {"label":"K33", "x":3.75, "y":3.25}, + {"label":"K34", "x":4.75, "y":3.25}, + {"label":"K35", "x":5.75, "y":3.25}, + {"label":"K36", "x":6.75, "y":3.25}, + {"label":"K37", "x":7.75, "y":3.25}, + {"label":"K38", "x":8.75, "y":3.25}, + {"label":"K39", "x":9.75, "y":3.25}, + {"label":"K3A", "x":10.75, "y":3.25}, + {"label":"K3B", "x":11.75, "y":3.25}, + {"label":"K3C", "x":12.75, "y":3.25}, + {"label":"K3D", "x":13.75, "y":3.25, "w":1.25}, + + {"label":"K40", "x":0, "y":4.25, "w":1.25}, + {"label":"K41", "x":1.25, "y":4.25}, + {"label":"K42", "x":2.25, "y":4.25}, + {"label":"K43", "x":3.25, "y":4.25}, + {"label":"K44", "x":4.25, "y":4.25}, + {"label":"K45", "x":5.25, "y":4.25}, + {"label":"K46", "x":6.25, "y":4.25}, + {"label":"K47", "x":7.25, "y":4.25}, + {"label":"K48", "x":8.25, "y":4.25}, + {"label":"K49", "x":9.25, "y":4.25}, + {"label":"K4A", "x":10.25, "y":4.25}, + {"label":"K4B", "x":11.25, "y":4.25}, + {"label":"K4C", "x":12.25, "y":4.25, "w":1.75}, + {"label":"K4D", "x":14, "y":4.25}, + {"label":"K4F", "x":16.25, "y":4.25}, + + {"label":"K50", "x":0, "y":5.25, "w":1.25}, + {"label":"K51", "x":1.25, "y":5.25, "w":1.25}, + {"label":"K52", "x":2.5, "y":5.25, "w":1.25}, + {"label":"K56", "x":3.75, "y":5.25, "w":6.25}, + {"label":"K59", "x":10, "y":5.25, "w":1.25}, + {"label":"K5A", "x":11.25, "y":5.25, "w":1.25}, + {"label":"K5B", "x":12.5, "y":5.25, "w":1.25}, + {"label":"K5C", "x":13.75, "y":5.25, "w":1.25}, + {"label":"K5D", "x":15.25, "y":5.25}, + {"label":"K5E", "x":16.25, "y":5.25}, + {"label":"K5F", "x":17.25, "y":5.25} + ] + } + } +} diff --git a/keyboards/smithrune/iron180/iron180.c b/keyboards/smithrune/iron180/iron180.c new file mode 100644 index 0000000000..236f8176f6 --- /dev/null +++ b/keyboards/smithrune/iron180/iron180.c @@ -0,0 +1,18 @@ +/* +Copyright 2020 Álvaro "Gondolindrim" Volpato + +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 . +*/ + +#include "iron180.h" diff --git a/keyboards/smithrune/iron180/iron180.h b/keyboards/smithrune/iron180/iron180.h new file mode 100644 index 0000000000..032d8afb58 --- /dev/null +++ b/keyboards/smithrune/iron180/iron180.h @@ -0,0 +1,38 @@ +/* +Copyright 2015 Álvaro "Gondolindrim" Volpato + +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 . +*/ + +#pragma once + +#define ___ KC_NO + +#include "quantum.h" + +#define LAYOUT_all( \ + K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0G, K0F, K0E, \ + K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G, K3G, \ + K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G, \ + K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, \ + K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, K4F, \ + K50, K51, K52, K56, K59, K5A, K5B, K5C, K5D, K5E, K5F \ +) { \ + { K00, K01, K02, K03, K04, K05, K06, K07, K08, K09, K0A, K0B, K0C, K0D, K0E, K0F, K0G }, \ + { K10, K11, K12, K13, K14, K15, K16, K17, K18, K19, K1A, K1B, K1C, K1D, K1E, K1F, K1G }, \ + { K20, K21, K22, K23, K24, K25, K26, K27, K28, K29, K2A, K2B, K2C, K2D, K2E, K2F, K2G }, \ + { K30, K31, K32, K33, K34, K35, K36, K37, K38, K39, K3A, K3B, K3C, K3D, ___, ___, K3G }, \ + { K40, K41, K42, K43, K44, K45, K46, K47, K48, K49, K4A, K4B, K4C, K4D, ___, K4F, ___ }, \ + { K50, K51, K52, ___, ___, ___, K56, ___, ___, K59, K5A, K5B, K5C, ___, K5D, K5E, K5F } \ +} diff --git a/keyboards/smithrune/iron180/keymaps/default/keymap.c b/keyboards/smithrune/iron180/keymaps/default/keymap.c new file mode 100755 index 0000000000..d78f60e118 --- /dev/null +++ b/keyboards/smithrune/iron180/keymaps/default/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2012,2013 Jun Wako + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_F13 , KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV , 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_BSPC, KC_INS , KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END , KC_PGDN, + 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_NUHS, KC_ENT , + KC_LSFT, KC_BSLS, 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_UP , + KC_LCTL, KC_LWIN, KC_LALT, KC_SPC , KC_RALT, KC_RWIN, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/smithrune/iron180/keymaps/via/keymap.c b/keyboards/smithrune/iron180/keymaps/via/keymap.c new file mode 100755 index 0000000000..d78f60e118 --- /dev/null +++ b/keyboards/smithrune/iron180/keymaps/via/keymap.c @@ -0,0 +1,53 @@ +/* +Copyright 2012,2013 Jun Wako + +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 . +*/ + +#include QMK_KEYBOARD_H + +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + [0] = LAYOUT_all( + 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_F13 , KC_PSCR, KC_SLCK, KC_PAUS, + KC_GRV , 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_BSPC, KC_INS , KC_HOME, KC_PGUP, + 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, KC_DEL , KC_END , KC_PGDN, + 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_NUHS, KC_ENT , + KC_LSFT, KC_BSLS, 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_UP , + KC_LCTL, KC_LWIN, KC_LALT, KC_SPC , KC_RALT, KC_RWIN, MO(1) , KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT + ), + [1] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [2] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), + [3] = LAYOUT_all( + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, + _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______ + ), +}; diff --git a/keyboards/smithrune/iron180/keymaps/via/rules.mk b/keyboards/smithrune/iron180/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/smithrune/iron180/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes diff --git a/keyboards/smithrune/iron180/mcuconf.h b/keyboards/smithrune/iron180/mcuconf.h new file mode 100644 index 0000000000..620b983c75 --- /dev/null +++ b/keyboards/smithrune/iron180/mcuconf.h @@ -0,0 +1,30 @@ +/* Copyright 2020 QMK + * + * 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 . + */ + +/* + * This file was auto-generated by: + * `qmk chibios-confmigrate -i keyboards/iron180/mcuconf.h -r platforms/chibios/GENERIC_STM32_F072XB/configs/mcuconf.h` + */ + +#pragma once + +#include_next + +#undef STM32_I2C_USE_DMA +#define STM32_I2C_USE_DMA FALSE + +#undef STM32_PWM_USE_TIM3 +#define STM32_PWM_USE_TIM3 YES diff --git a/keyboards/smithrune/iron180/readme.md b/keyboards/smithrune/iron180/readme.md new file mode 100644 index 0000000000..611c9bd448 --- /dev/null +++ b/keyboards/smithrune/iron180/readme.md @@ -0,0 +1,18 @@ +# Iron180 QMK folder + +## Introduction + +This is the QMK Firmware repository for the Iron180 PCB, a keyboard designed by [Smith and Rune](https://smithrune.com/) and PCB designed by [Gondolindrim](http://github.com/Gondolindrim). + +The Iron180 PCB is a F13 TKL PCB with ALPS switches support. It also supports in-switch single-color LEDs and a multi-layout design for default or 7U bottom row, ISO layout, split backspace and right shift. + +As of November 2020, the only way to obtain an Iron180 was through the [Group Buy](https://geekhack.org/index.php?topic=109513) which is already over and all spots were filled. + +## How to compile + +After setting up your build environment, you can compile the Iron180 default keymap by using: + + make smithrune/iron180:default + +See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs). + diff --git a/keyboards/smithrune/iron180/rules.mk b/keyboards/smithrune/iron180/rules.mk new file mode 100644 index 0000000000..da310926f3 --- /dev/null +++ b/keyboards/smithrune/iron180/rules.mk @@ -0,0 +1,23 @@ +# MCU name +MCU = STM32F072 + +# Bootloader selection +BOOTLOADER = stm32-dfu + +# Build Options +# change yes to no to disable +# +BOOTMAGIC_ENABLE = yes # Enable Bootmagic Lite +MOUSEKEY_ENABLE = yes # Mouse keys +EXTRAKEY_ENABLE = yes # Audio control and System control +CONSOLE_ENABLE = yes # Console for debug +COMMAND_ENABLE = yes # Commands for debug and configuration +NKRO_ENABLE = yes # USB Nkey Rollover +BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality +RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow +AUDIO_ENABLE = no # Audio output +ENCODER_ENABLE = no +LTO_ENABLE = no + +# Enter lower-power sleep mode when on the ChibiOS idle thread +OPT_DEFS += -DCORTEX_ENABLE_WFI_IDLE=TRUE From aa970e85609e46f69ae14f09ec072fea8d165021 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Tue, 17 May 2022 13:02:14 +0800 Subject: [PATCH 426/699] [Keyboard] mach3 LED index correction (#17110) --- keyboards/machkeyboards/mach3/mach3.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/machkeyboards/mach3/mach3.c b/keyboards/machkeyboards/mach3/mach3.c index 9769d02a53..509aac9fe5 100644 --- a/keyboards/machkeyboards/mach3/mach3.c +++ b/keyboards/machkeyboards/mach3/mach3.c @@ -19,8 +19,8 @@ led_config_t g_led_config = { { // Key Matrix to LED Index { 0, 1, 2 }, - { 7, 6, 5 }, - { 8, 9, 10 }, + { 5, 4, 3 }, + { 6, 7, 8 }, }, { // LED Index to Physical Position { 0, 0 }, { 112, 0 }, { 224, 0 }, @@ -39,4 +39,4 @@ void keyboard_pre_init_kb(void) { writePinHigh(F5); keyboard_pre_init_user(); -} \ No newline at end of file +} From 8b9cb030a74ced2c50fe62e2fd259e16a93e33bf Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Tue, 17 May 2022 13:02:35 +0800 Subject: [PATCH 427/699] [Keyboard] Latinpad LED index correction (#17109) --- keyboards/latincompass/latinpad/latinpad.c | 20 +++++++++----------- 1 file changed, 9 insertions(+), 11 deletions(-) diff --git a/keyboards/latincompass/latinpad/latinpad.c b/keyboards/latincompass/latinpad/latinpad.c index 85f8eba7d5..51826bd6a0 100644 --- a/keyboards/latincompass/latinpad/latinpad.c +++ b/keyboards/latincompass/latinpad/latinpad.c @@ -16,25 +16,23 @@ #include "latinpad.h" #ifdef RGB_MATRIX_ENABLE - led_config_t g_led_config = { - { - { 1, 2, 3, 4 }, - { 5, 6, 7, 8 }, - { 9, 10, 11, 12 }, - { 13, 14, 15, 16 }, - { 17, 18, NO_LED, NO_LED } - },{ +led_config_t g_led_config = { { + { 0, 1, 2, 3 }, + { 4, 5, 6, 7 }, + { 8, 9, 10, 11 }, + { 12, 13, 14, 15 }, + { 16, 17, NO_LED, NO_LED } +},{ { 74, 21 }, { 37, 21 }, { 24, 21 }, { 18, 21 }, { 74, 10 }, { 37, 10 }, { 28, 10 }, { 18, 10 }, { 74, 7 }, { 37, 7 }, { 20, 7 }, { 18, 7 }, { 74, 5 }, { 37, 5 }, { 22, 5 }, { 18, 5 }, { 74, 5 }, { 37, 5 }, - },{ +},{ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 - } - }; +} }; #endif From b6ee006060d7e0767a380a1d6e0e8126553d0482 Mon Sep 17 00:00:00 2001 From: Albert Y <76888457+filterpaper@users.noreply.github.com> Date: Tue, 17 May 2022 13:03:08 +0800 Subject: [PATCH 428/699] [Keyboard] lulu LED index correction (#17108) --- keyboards/boardsource/lulu/lulu.c | 20 ++++++++++---------- 1 file changed, 10 insertions(+), 10 deletions(-) diff --git a/keyboards/boardsource/lulu/lulu.c b/keyboards/boardsource/lulu/lulu.c index 390815795a..7a25fce50c 100644 --- a/keyboards/boardsource/lulu/lulu.c +++ b/keyboards/boardsource/lulu/lulu.c @@ -5,16 +5,16 @@ #ifdef RGB_MATRIX_ENABLE led_config_t g_led_config = { { - {12,11,10,9 ,8 ,7 }, - {18,17,16,15,14,13}, - {24,23,22,21,20,19}, - {30,29,28,27,26,25}, - {NO_LED,35,34,33,32,31}, - {42,43,44,45,46,47}, - {48,49,50,51,52,53}, - {54,55,56,57,58,59}, - {60,61,62,63,64,65}, - {NO_LED,66,67,68,69,70} + {11,10, 9, 8, 7, 6}, + {17,16,15,14,13,12}, + {23,22,21,20,19,18}, + {29,28,27,26,25,24}, + {NO_LED,34,33,32,31,30}, + {41,42,43,44,45,46}, + {47,48,49,50,51,52}, + {53,54,55,56,57,58}, + {59,60,61,62,63,64}, + {NO_LED,65,66,67,68,69} },{ {86,55},{51,55},{17,40},{17,10},{51,10},{86,10}, From e9e83b4da73e5594b1f864d78529e85aa5ebefe9 Mon Sep 17 00:00:00 2001 From: HorrorTroll Date: Tue, 17 May 2022 12:05:05 +0700 Subject: [PATCH 429/699] [Keyboard] Fixed Gas75 info.json and keymap for M64 RGB (#17081) --- keyboards/ml/gas75/info.json | 2 +- keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c | 2 +- keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/keyboards/ml/gas75/info.json b/keyboards/ml/gas75/info.json index 3cb3d912f5..42899cc091 100644 --- a/keyboards/ml/gas75/info.json +++ b/keyboards/ml/gas75/info.json @@ -36,7 +36,7 @@ {"label":"0)", "x":10, "y":1.25}, {"label":"-_", "x":11, "y":1.25}, {"label":"=+", "x":12, "y":1.25}, - {"label":"Backspace", "x":13, "y":1.25}, + {"label":"Backspace", "x":13, "y":1.25, "w":2}, {"label":"Home", "x":15.25, "y":1.25}, {"label":"Tab", "x":0, "y":2.25, "w":1.5}, diff --git a/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c index f348dc69fe..48a6949e78 100644 --- a/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c +++ b/keyboards/mss_studio/m64_rgb/keymaps/default/keymap.c @@ -77,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_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, 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, KC_UP, KC_SLSH, + 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, KC_DEL, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT ), diff --git a/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c index f348dc69fe..48a6949e78 100644 --- a/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c +++ b/keyboards/mss_studio/m64_rgb/keymaps/via/keymap.c @@ -77,7 +77,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { 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_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, 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, KC_UP, KC_SLSH, + 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, KC_DEL, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(_FN), KC_LEFT, KC_DOWN, KC_RIGHT ), From 654baebb2c3e1706a20c985dfde35a9b7bd6958a Mon Sep 17 00:00:00 2001 From: Xelus22 <17491233+Xelus22@users.noreply.github.com> Date: Tue, 17 May 2022 22:00:26 +1000 Subject: [PATCH 430/699] fix non-working builds (#17123) --- keyboards/xelus/pachi/rgb/rev1/config.h | 9 ++++++--- keyboards/xelus/pachi/rgb/rev2/config.h | 4 ++-- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/keyboards/xelus/pachi/rgb/rev1/config.h b/keyboards/xelus/pachi/rgb/rev1/config.h index e6cf1756bd..2711b5c7a8 100644 --- a/keyboards/xelus/pachi/rgb/rev1/config.h +++ b/keyboards/xelus/pachi/rgb/rev1/config.h @@ -21,7 +21,7 @@ #define PRODUCT_ID 0x5052 // "PR" #define DEVICE_VER 0x0001 #define MANUFACTURER Xelus -#define PRODUCT Xelus Pachi RGB Rev 1 +#define PRODUCT Xelus Pachi RGB Rev1 /* key matrix size */ #define MATRIX_ROWS 6 @@ -45,8 +45,8 @@ #define LOCKING_RESYNC_ENABLE // I2C setup -#define I2C1_SCL 8 -#define I2C1_SDA 9 +#define I2C1_SCL_PIN B8 +#define I2C1_SDA_PIN B9 #define I2C1_SCL_PAL_MODE 4 #define I2C1_SDA_PAL_MODE 4 #define I2C1_TIMINGR_PRESC 0U @@ -58,6 +58,9 @@ // I2C EEPROM #define EEPROM_I2C_24LC64 +// More EEPROM for layers +#define DYNAMIC_KEYMAP_EEPROM_MAX_ADDR 8191 + // RGB Matrix defines #define DRIVER_ADDR_1 0b0110000 diff --git a/keyboards/xelus/pachi/rgb/rev2/config.h b/keyboards/xelus/pachi/rgb/rev2/config.h index a9240da6bb..35a4cf238f 100644 --- a/keyboards/xelus/pachi/rgb/rev2/config.h +++ b/keyboards/xelus/pachi/rgb/rev2/config.h @@ -45,8 +45,8 @@ #define LOCKING_RESYNC_ENABLE // I2C setup -#define I2C1_SCL 6 -#define I2C1_SDA 7 +#define I2C1_SCL_PIN B6 +#define I2C1_SDA_PIN B7 #define I2C1_SCL_PAL_MODE 4 #define I2C1_SDA_PAL_MODE 4 #define I2C1_TIMINGR_PRESC 0U From 656090335066eed90a9b76e113fb93ee3bc8c089 Mon Sep 17 00:00:00 2001 From: John-Schreiber <56258966+John-Schreiber@users.noreply.github.com> Date: Tue, 17 May 2022 08:01:26 -0400 Subject: [PATCH 431/699] Adding VIA support for bfo-9000 (#17116) --- keyboards/keebio/bfo9000/keymaps/via/keymap.c | 42 +++++++++++++++++++ keyboards/keebio/bfo9000/keymaps/via/rules.mk | 1 + 2 files changed, 43 insertions(+) create mode 100644 keyboards/keebio/bfo9000/keymaps/via/keymap.c create mode 100644 keyboards/keebio/bfo9000/keymaps/via/rules.mk diff --git a/keyboards/keebio/bfo9000/keymaps/via/keymap.c b/keyboards/keebio/bfo9000/keymaps/via/keymap.c new file mode 100644 index 0000000000..760d1e0f9a --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/via/keymap.c @@ -0,0 +1,42 @@ +// Copyright 2022 John-Schreiber +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + + +enum bfo9000_layers {_BASE,_BASE1,_BASE2,_BASE3}; +const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { + +[_BASE] = LAYOUT( + KC_ESC, KC_VOLU, KC_ESC, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, KC_DEL, + KC_HOME, KC_VOLD, KC_GRV, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, KC_BSPC, + KC_END, KC_TAB, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS, + KC_PGUP, KC_CAPS, KC_LCTL, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT, KC_ENT, + KC_PGDN, KC_UP, KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_TRNS, + KC_LEFT, KC_DOWN, KC_RGHT, KC_LCTL, KC_LALT, KC_LGUI, KC_SPC, KC_SPC, KC_ENT, KC_BSPC, KC_SPC, KC_SPC, KC_RGUI, KC_RALT, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT +), +[_BASE1] = LAYOUT( + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[_BASE2] = LAYOUT( + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +), +[_BASE3] = LAYOUT( + 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, 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, 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, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS +) +}; diff --git a/keyboards/keebio/bfo9000/keymaps/via/rules.mk b/keyboards/keebio/bfo9000/keymaps/via/rules.mk new file mode 100644 index 0000000000..1e5b99807c --- /dev/null +++ b/keyboards/keebio/bfo9000/keymaps/via/rules.mk @@ -0,0 +1 @@ +VIA_ENABLE = yes From dba5b730a3f112b40d9f19881e0c5eaa03672452 Mon Sep 17 00:00:00 2001 From: durken1 <71756879+durken1@users.noreply.github.com> Date: Tue, 17 May 2022 15:20:13 +0200 Subject: [PATCH 432/699] Update pr_checklist.md (#17122) --- docs/pr_checklist.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/pr_checklist.md b/docs/pr_checklist.md index 591c21b97b..f55517dfa2 100644 --- a/docs/pr_checklist.md +++ b/docs/pr_checklist.md @@ -62,7 +62,7 @@ https://github.com/qmk/qmk_firmware/pulls?q=is%3Apr+is%3Aclosed+label%3Akeyboard - modified `# Enable Bluetooth with the Adafruit EZ-Key HID` -> `# Enable Bluetooth` - no `(-/+size)` comments related to enabling features - remove the list of alternate bootloaders if one has been specified - - no re-definitions of the default MCU parameters if same value, when compared to the equivalent MCU in [mcu_selection.mk](https://github.com/qmk/qmk_firmware/blob/master/quantum/mcu_selection.mk) + - no re-definitions of the default MCU parameters if same value, when compared to the equivalent MCU in [mcu_selection.mk](https://github.com/qmk/qmk_firmware/blob/master/builddefs/mcu_selection.mk) - keyboard `config.h` - don't repeat `MANUFACTURER` in the `PRODUCT` value - no `#define DESCRIPTION` From f736828fa8801748d6446ad74fb704bdbc7e599b Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Tue, 17 May 2022 09:12:52 -0700 Subject: [PATCH 433/699] Frooastside Walnut Community Layout Support (#17112) * LAYOUT_iso: move Enter to home row This commit makes the layout macro compatible with QMK's `tkl_nofrow_iso` Community Layout. * rename LAYOUT_ansi to LAYOUT_tkl_nofrow_ansi * rename LAYOUT_iso to LAYOUT_tkl_nofrow_iso * enable Community Layout support --- keyboards/frooastboard/walnut/info.json | 11 ++++++++--- .../walnut/keymaps/default_ansi/keymap.c | 4 ++-- .../frooastboard/walnut/keymaps/default_iso/keymap.c | 12 ++++++------ 3 files changed, 16 insertions(+), 11 deletions(-) diff --git a/keyboards/frooastboard/walnut/info.json b/keyboards/frooastboard/walnut/info.json index 7a8276f3ff..13e1904c94 100644 --- a/keyboards/frooastboard/walnut/info.json +++ b/keyboards/frooastboard/walnut/info.json @@ -27,8 +27,13 @@ "pid": "0x776E", "device_version": "1.0.0" }, + "community_layouts": ["tkl_nofrow_ansi", "tkl_nofrow_iso"], + "layout_aliases": { + "LAYOUT_ansi": "LAYOUT_tkl_nofrow_ansi", + "LAYOUT_iso": "LAYOUT_tkl_nofrow_iso" + }, "layouts": { - "LAYOUT_ansi": { + "LAYOUT_tkl_nofrow_ansi": { "layout": [ { "matrix": [0, 0], "x": 0, "y": 0 }, { "matrix": [0, 1], "x": 1, "y": 0 }, @@ -103,7 +108,7 @@ { "matrix": [1, 7], "x": 17.5, "y": 4 } ] }, - "LAYOUT_iso": { + "LAYOUT_tkl_nofrow_iso": { "layout": [ { "matrix": [0, 0], "x": 0, "y": 0 }, { "matrix": [0, 1], "x": 1, "y": 0 }, @@ -135,7 +140,6 @@ { "matrix": [3, 2], "x": 10.5, "y": 1 }, { "matrix": [3, 3], "x": 11.5, "y": 1 }, { "matrix": [3, 4], "x": 12.5, "y": 1 }, - { "matrix": [3, 5], "x": 13.75, "y": 1, "w": 1.25, "h": 2 }, { "matrix": [7, 5], "x": 15.5, "y": 1 }, { "matrix": [7, 6], "x": 16.5, "y": 1 }, { "matrix": [7, 7], "x": 17.5, "y": 1 }, @@ -152,6 +156,7 @@ { "matrix": [5, 2], "x": 10.75, "y": 2 }, { "matrix": [5, 3], "x": 11.75, "y": 2 }, { "matrix": [5, 4], "x": 12.75, "y": 2 }, + { "matrix": [3, 5], "x": 13.75, "y": 1, "w": 1.25, "h": 2 }, { "matrix": [6, 0], "x": 0, "y": 3, "w": 1.25 }, { "matrix": [6, 1], "x": 1.25, "y": 3 }, { "matrix": [6, 2], "x": 2.25, "y": 3 }, diff --git a/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c b/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c index a65dfe3a6e..f28645cf2f 100644 --- a/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c +++ b/keyboards/frooastboard/walnut/keymaps/default_ansi/keymap.c @@ -4,14 +4,14 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_ansi( + [0] = LAYOUT_tkl_nofrow_ansi( 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_BSPC, KC_INS, KC_HOME, KC_PGUP, 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, KC_DEL, KC_END, KC_PGDN, 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, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_ansi( + [1] = LAYOUT_tkl_nofrow_ansi( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, 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, RGB_SAI, RGB_HUI, RGB_SPI, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_TOG, diff --git a/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c b/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c index 8dd069ba3e..f42b67db2d 100644 --- a/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c +++ b/keyboards/frooastboard/walnut/keymaps/default_iso/keymap.c @@ -4,17 +4,17 @@ #include QMK_KEYBOARD_H const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { - [0] = LAYOUT_iso( + [0] = LAYOUT_tkl_nofrow_iso( 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_BSPC, KC_INS, KC_HOME, KC_PGUP, - 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_ENT, KC_DEL, KC_END, KC_PGDN, - 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_BSLS, + 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_DEL, KC_END, KC_PGDN, + 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_BSLS, KC_ENT, KC_LSFT, KC_NUBS, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, KC_UP, KC_LCTL, KC_LGUI, KC_LALT, KC_SPC, KC_RALT, MO(1), KC_MENU, KC_RCTL, KC_LEFT, KC_DOWN, KC_RGHT), - [1] = LAYOUT_iso( + [1] = LAYOUT_tkl_nofrow_iso( KC_GRV, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, EE_CLR, KC_PSCR, KC_SCRL, KC_PAUS, - 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, RGB_TOG, RGB_SAI, RGB_HUI, RGB_SPI, - 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, RGB_SAI, RGB_HUI, RGB_SPI, + 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, RGB_TOG, 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, RGB_VAI, KC_TRNS, GUI_TOG, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, KC_TRNS, RGB_RMOD,RGB_VAD, RGB_MOD) }; From d241e80533b445d042e89d7eae5f0e5f88c0ce44 Mon Sep 17 00:00:00 2001 From: Ryan Date: Wed, 18 May 2022 04:48:59 +1000 Subject: [PATCH 434/699] Keymap FAQ updates (#17130) --- docs/faq_keymap.md | 71 +++++++++++++++++++++------------------------- 1 file changed, 33 insertions(+), 38 deletions(-) diff --git a/docs/faq_keymap.md b/docs/faq_keymap.md index 01ded4f231..8641281835 100644 --- a/docs/faq_keymap.md +++ b/docs/faq_keymap.md @@ -3,6 +3,7 @@ This page covers questions people often have about keymaps. If you haven't you should read [Keymap Overview](keymap.md) first. ## What Keycodes Can I Use? + See [Keycodes](keycodes.md) for an index of keycodes available to you. These link to more extensive documentation when available. Keycodes are actually defined in [quantum/keycode.h](https://github.com/qmk/qmk_firmware/blob/master/quantum/keycode.h). @@ -25,25 +26,30 @@ Sometimes, for readability's sake, it's useful to define custom names for some k This will allow you to use `FN_CAPS` and `ALT_TAB` in your keymap, keeping it more readable. +## My Keymap Doesn't Update When I Flash It + +This is usually due to VIA, and has to do with how it deals with keymaps. + +On first run, the VIA code in the firmware will copy the keymap from flash memory into EEPROM so that it can be rewritten at runtime by the VIA app. From this point QMK will use the keymap stored in EEPROM instead of flash, and so updates to your `keymap.c` will not be reflected. + +The simple fix for this is to clear the EEPROM. You can do this in several ways: + +* Hold the Bootmagic Lite key (usually top left/Escape) while plugging the board in, which will also place the board into bootloader mode; then unplug and replug the board. +* Press the `QK_CLEAR_EEPROM`/`EE_CLR` keycode if it is accessible on your keymap. +* Place the board into bootloader mode and hit the "Clear EEPROM" button. This may not be available for all bootloaders, and you may need to reflash the board afterwards. + ## Some Of My Keys Are Swapped Or Not Working -QMK has two features, Bootmagic and Command, which allow you to change the behavior of your keyboard on the fly. This includes, but is not limited to, swapping Ctrl/Caps, disabling Gui, swapping Alt/Gui, swapping Backspace/Backslash, disabling all keys, and other behavioral modifications. +QMK has a couple of features which allow you to change the behavior of your keyboard on the fly. This includes, but is not limited to, swapping Ctrl/Caps, disabling GUI, swapping Alt/GUI, swapping Backspace/Backslash, disabling all keys, and other behavioral modifications. -As a quick fix try holding down `Space`+`Backspace` while you plug in your keyboard. This will reset the stored settings on your keyboard, returning those keys to normal operation. If that doesn't work look here: +Refer to the EEPROM clearing methods above, which should return those keys to normal operation. If that doesn't work, look here: -* [Bootmagic Lite](feature_bootmagic.md) -* [Command](feature_command.md) +* [Magic Keycodes](keycodes_magic.md) +* [Command](feature_command.md) ## The Menu Key Isn't Working -The key found on most modern keyboards that is located between `KC_RGUI` and `KC_RCTL` is actually called `KC_APP`. This is because when that key was invented there was already a key named `MENU` in the relevant standards, so MS chose to call that the `APP` key. - -## `KC_SYSTEM_REQUEST` Isn't Working -Use keycode for Print Screen (`KC_PRINT_SCREEN`/`KC_PSCR`) instead of `KC_SYSTEM_REQUEST`. Key combination of 'Alt + Print Screen' is recognized as 'System request'. - -See [issue #168](https://github.com/tmk/tmk_keyboard/issues/168) and -* https://en.wikipedia.org/wiki/Magic_SysRq_key -* https://en.wikipedia.org/wiki/System_request +The key found on most modern keyboards that is located between `KC_RGUI` and `KC_RCTL` is actually called `KC_APP`. This is because when the key was invented, there was already a key named "Menu" in the HID specification, so for whatever reason, Microsoft chose to create a new key and call it "Application". ## Power Keys Aren't Working @@ -52,10 +58,12 @@ Somewhat confusingly, there are two "Power" keycodes in QMK: `KC_KB_POWER` in th The former is only recognized on macOS, while the latter, `KC_SLEP` and `KC_WAKE` are supported by all three major operating systems, so it is recommended to use those instead. Under Windows, these keys take effect immediately, however on macOS they must be held down until a dialog appears. ## One Shot Modifier + Solves my personal 'the' problem. I often got 'the' or 'THe' wrongly instead of 'The'. One Shot Shift mitigates this for me. https://github.com/tmk/tmk_keyboard/issues/67 ## Modifier/Layer Stuck + Modifier keys or layers can be stuck unless layer switching is configured properly. For Modifier keys and layer actions you have to place `KC_TRNS` on same position of destination layer to unregister the modifier key or return to previous layer on release event. @@ -63,12 +71,11 @@ For Modifier keys and layer actions you have to place `KC_TRNS` on same position * https://geekhack.org/index.php?topic=57008.msg1492604#msg1492604 * https://github.com/tmk/tmk_keyboard/issues/248 - ## Mechanical Lock Switch Support This feature is for *mechanical lock switch* like [this Alps one](https://deskthority.net/wiki/Alps_SKCL_Lock). You can enable it by adding this to your `config.h`: -``` +```c #define LOCKING_SUPPORT_ENABLE #define LOCKING_RESYNC_ENABLE ``` @@ -91,6 +98,7 @@ Even worse, it is not recognized unless the keyboard's VID and PID match that of See [this issue](https://github.com/qmk/qmk_firmware/issues/2179) for detailed information. ## Keys Supported in Mac OSX? + You can know which keycodes are supported in OSX from this source code. `usb_2_adb_keymap` array maps Keyboard/Keypad Page usages to ADB scancodes(OSX internal keycodes). @@ -101,8 +109,8 @@ And `IOHIDConsumer::dispatchConsumerEvent` handles Consumer page usages. https://opensource.apple.com/source/IOHIDFamily/IOHIDFamily-606.1.7/IOHIDFamily/IOHIDConsumer.cpp - ## JIS Keys in Mac OSX + Japanese JIS keyboard specific keys like `無変換(Muhenkan)`, `変換(Henkan)`, `ひらがな(hiragana)` are not recognized on OSX. You can use **Seil** to enable those keys, try following options. * Enable NFER Key on PC keyboard @@ -111,8 +119,8 @@ Japanese JIS keyboard specific keys like `無変換(Muhenkan)`, `変換(Henkan)` https://pqrs.org/osx/karabiner/seil.html - ## RN-42 Bluetooth Doesn't Work with Karabiner + Karabiner - Keymapping tool on Mac OSX - ignores inputs from RN-42 module by default. You have to enable this option to make Karabiner working with your keyboard. https://github.com/tekezo/Karabiner/issues/403#issuecomment-102559237 @@ -120,37 +128,24 @@ See these for the detail of this problem. https://github.com/tmk/tmk_keyboard/issues/213 https://github.com/tekezo/Karabiner/issues/403 - ## Esc and ` on a Single Key See the [Grave Escape](feature_grave_esc.md) feature. ## Eject on Mac OSX + `KC_EJCT` keycode works on OSX. https://github.com/tmk/tmk_keyboard/issues/250 It seems Windows 10 ignores the code and Linux/Xorg recognizes but has no mapping by default. -Not sure what keycode Eject is on genuine Apple keyboard actually. HHKB uses `F20` for Eject key(`Fn+f`) on Mac mode but this is not same as Apple Eject keycode probably. +Not sure what keycode Eject is on genuine Apple keyboard actually. HHKB uses `F20` for Eject key(`Fn+F`) on Mac mode but this is not same as Apple Eject keycode probably. +## What are "Real" and "Weak" modifiers? -## What's `weak_mods` and `real_mods` in `action_util.c` -___TO BE IMPROVED___ +Real modifiers refer to the state of the real/physical modifier keys, while weak modifiers are the state of "virtual" or temporary modifiers which should not interfere with the internal state of the real modifier keys. -real_mods is intended to retains state of real/physical modifier key state, while -weak_mods retains state of virtual or temporary modifiers which should not affect state real modifier key. +The real and weak modifier states are ORed together when the keyboard report is sent, so if you release a weak modifier while the same real modifier is still held, the report does not change: -Let's say you hold down physical left shift key and type ACTION_MODS_KEY(LSHIFT, KC_A), - -with weak_mods, -* (1) hold down left shift: real_mods |= MOD_BIT(LSHIFT) -* (2) press ACTION_MODS_KEY(LSHIFT, KC_A): weak_mods |= MOD_BIT(LSHIFT) -* (3) release ACTION_MODS_KEY(LSHIFT, KC_A): weak_mods &= ~MOD_BIT(LSHIFT) -real_mods still keeps modifier state. - -without weak mods, -* (1) hold down left shift: real_mods |= MOD_BIT(LSHIFT) -* (2) press ACTION_MODS_KEY(LSHIFT, KC_A): real_mods |= MOD_BIT(LSHIFT) -* (3) release ACTION_MODS_KEY(LSHIFT, KC_A): real_mods &= ~MOD_BIT(LSHIFT) -here real_mods lost state for 'physical left shift'. - -weak_mods is ORed with real_mods when keyboard report is sent. -https://github.com/tmk/tmk_core/blob/master/common/action_util.c#L57 + 1. **Hold down physical Left Shift:** Real mods now contains Left Shift, final state is Left Shift + 2. **Add weak Left Shift:** Weak mods now contains Left Shift, final state is Left Shift + 3. **Remove weak Left Shift:** Weak mods now contains nothing, final state is Left Shift + 4. **Release physical Left Shift:** Real mods now contains nothing, final state is nothing From 40e33d03a89575e30d94851cbc34fbdbf6a069b6 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Tue, 17 May 2022 21:50:48 +0100 Subject: [PATCH 435/699] Recommend pillow as part of manual MSYS install (#17133) --- docs/newbs_getting_started.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/docs/newbs_getting_started.md b/docs/newbs_getting_started.md index c03e6acdb4..d5f92cf89d 100644 --- a/docs/newbs_getting_started.md +++ b/docs/newbs_getting_started.md @@ -44,7 +44,7 @@ Once MSYS2 is installed, close any open MSYS terminals and open a new MinGW 64-b Then run the following command: - pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip + pacman --needed --noconfirm --disable-download-timeout -S git mingw-w64-x86_64-toolchain mingw-w64-x86_64-python3-pip mingw-w64-x86_64-python-pillow #### Installation From 6503987c84994b2c6b5229db8b91c14d8bd11e41 Mon Sep 17 00:00:00 2001 From: Joel Challis Date: Wed, 18 May 2022 11:06:55 +0100 Subject: [PATCH 436/699] Workaround for recent -Werror=array-bounds AVR issues (#17136) --- platforms/avr/platform.mk | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/platforms/avr/platform.mk b/platforms/avr/platform.mk index 0374e2e058..978199b385 100644 --- a/platforms/avr/platform.mk +++ b/platforms/avr/platform.mk @@ -12,6 +12,11 @@ HEX = $(OBJCOPY) -O $(FORMAT) -R .eeprom -R .fuse -R .lock -R .signature EEP = $(OBJCOPY) -j .eeprom --set-section-flags=.eeprom="alloc,load" --change-section-lma .eeprom=0 --no-change-warnings -O $(FORMAT) BIN = +# https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105523 +ifneq ($(findstring 12.,$(shell avr-gcc --version 2>/dev/null)),) +COMPILEFLAGS += --param=min-pagesize=0 +endif + COMPILEFLAGS += -funsigned-char COMPILEFLAGS += -funsigned-bitfields COMPILEFLAGS += -ffunction-sections From 33d568e29b454e5ead83b9e7216bd807549cc9b6 Mon Sep 17 00:00:00 2001 From: Takeshi ISHII <2170248+mtei@users.noreply.github.com> Date: Thu, 19 May 2022 02:33:17 +0900 Subject: [PATCH 437/699] Update mtei's keymap (helix/rev2:five_rows, helix/pico:mtei, helix/rev3_5rows:five_rows) (#16966) * add users/mtei/key_blocks.h This change does not alter the binary of the build result. Moved common macro definitions in the following files to users/mtei/key_blocks.h. * keyboards/helix/rev2/keymaps/five_rows/keymap.c * keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c * remove INIT_HELIX_OLED() in helix:five_rows This change does not alter the binary of the build result. * update helix/pico/keymaps/mtei/keymap.c Changed helix/pico/keymaps/mtei/keymap.c to use users/mtei/key_blocks.h. This change does not alter the binary of the build result. * Remove old SSD1306OLED code from users/mtei/oled_display.c This change does not alter the binary of the build result. * add options ENABLE_COLEMAK, ENABLE_DVORAK and ENABLE_EUCALYN into five_rows/keymap.c * add users/mtei/{config.h,rules.mk,user_featues.mk,user_options.mk} * move layer_names[] from users/mtei/oled_display.c to keymaps/five_rows/keymap.c * Update keyboards/helix/pico/keymaps/mtei/config.h Co-authored-by: Ryan * Update keyboards/helix/pico/keymaps/mtei/config.h Co-authored-by: Ryan * Update keyboards/helix/pico/keymaps/mtei/keymap.c Co-authored-by: Ryan * Update keyboards/helix/rev2/keymaps/five_rows/config.h Co-authored-by: Ryan * Update keyboards/helix/rev2/keymaps/five_rows/config.h Co-authored-by: Ryan * Update keyboards/helix/rev2/keymaps/five_rows/keymap.c Co-authored-by: Ryan * Update keyboards/helix/rev3_5rows/keymaps/five_rows/config.h Co-authored-by: Ryan * Update keyboards/helix/rev3_5rows/keymaps/five_rows/config.h Co-authored-by: Ryan * Update keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c Co-authored-by: Ryan * Update users/mtei/config.h Co-authored-by: Ryan * Update users/mtei/config.h Co-authored-by: Ryan * Update users/mtei/cpp_map.h Co-authored-by: Ryan * Update users/mtei/cpp_map.h Co-authored-by: Ryan * Update users/mtei/debug_config.h Co-authored-by: Ryan * Update users/mtei/debug_config.h Co-authored-by: Ryan * Update users/mtei/layer_number_util.h Co-authored-by: Ryan Co-authored-by: Ryan --- keyboards/helix/pico/keymaps/mtei/config.h | 38 +---- keyboards/helix/pico/keymaps/mtei/keymap.c | 56 ++----- .../helix/rev2/keymaps/five_rows/config.h | 72 +-------- .../helix/rev2/keymaps/five_rows/keymap.c | 93 ++++++++---- .../rev2/keymaps/five_rows/layer_number.h | 26 ---- .../five_rows/matrix_output_unselect_delay.c | 31 ---- .../helix/rev2/keymaps/five_rows/rules.mk | 82 +--------- .../rev3_5rows/keymaps/five_rows/config.h | 72 +-------- .../rev3_5rows/keymaps/five_rows/keymap.c | 99 +++++++----- .../keymaps/five_rows/layer_number.h | 26 ---- .../five_rows/matrix_output_unselect_delay.c | 31 ---- .../rev3_5rows/keymaps/five_rows/rules.mk | 81 ---------- users/mtei/config.h | 46 ++++++ users/mtei/cpp_map.h | 84 +++++++++++ users/mtei/debug_config.h | 6 + users/mtei/encoder_update_user.c | 33 ++++ users/mtei/key_blocks.h | 40 +++++ users/mtei/layer_number_util.h | 17 +++ .../matrix_output_unselect_delay_ondemand.c | 18 +++ users/mtei/oled_display.c | 141 ++++-------------- users/mtei/rules.mk | 9 ++ users/mtei/user_featues.mk | 60 ++++++++ users/mtei/user_options.mk | 127 ++++++++++++++++ 23 files changed, 609 insertions(+), 679 deletions(-) delete mode 100644 keyboards/helix/rev2/keymaps/five_rows/layer_number.h delete mode 100644 keyboards/helix/rev2/keymaps/five_rows/matrix_output_unselect_delay.c delete mode 100644 keyboards/helix/rev3_5rows/keymaps/five_rows/layer_number.h delete mode 100644 keyboards/helix/rev3_5rows/keymaps/five_rows/matrix_output_unselect_delay.c create mode 100644 users/mtei/config.h create mode 100644 users/mtei/cpp_map.h create mode 100644 users/mtei/debug_config.h create mode 100644 users/mtei/encoder_update_user.c create mode 100644 users/mtei/key_blocks.h create mode 100644 users/mtei/layer_number_util.h create mode 100644 users/mtei/matrix_output_unselect_delay_ondemand.c create mode 100644 users/mtei/rules.mk create mode 100644 users/mtei/user_featues.mk create mode 100644 users/mtei/user_options.mk diff --git a/keyboards/helix/pico/keymaps/mtei/config.h b/keyboards/helix/pico/keymaps/mtei/config.h index c5812de8d7..1a4dc2c842 100644 --- a/keyboards/helix/pico/keymaps/mtei/config.h +++ b/keyboards/helix/pico/keymaps/mtei/config.h @@ -1,25 +1,7 @@ -/* -This is the c configuration file for the keymap +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert - -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 . -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#pragma once // place overrides here @@ -36,17 +18,3 @@ along with this program. If not, see . // If you need more program area, try select and reduce rgblight modes to use. -// Selection of RGBLIGHT MODE to use. -#if defined(LED_ANIMATIONS) - #define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - #define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - #define RGBLIGHT_EFFECT_CHRISTMAS - #define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING -#endif - -#endif /* CONFIG_USER_H */ diff --git a/keyboards/helix/pico/keymaps/mtei/keymap.c b/keyboards/helix/pico/keymaps/mtei/keymap.c index 58684be497..b703ca376d 100644 --- a/keyboards/helix/pico/keymaps/mtei/keymap.c +++ b/keyboards/helix/pico/keymaps/mtei/keymap.c @@ -14,6 +14,7 @@ * along with this program. If not, see . */ #include QMK_KEYBOARD_H +#include "key_blocks.h" #define LAYOUT_wrapper(...) LAYOUT(__VA_ARGS__) #define kc5(a,b,c,d,e) KC_##a, KC_##b, KC_##c, KC_##d, KC_##e @@ -59,12 +60,6 @@ enum custom_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Qwerty */ -#define Q_____W_____E_____R_____T kc5( Q, W, E, R, T ) -#define Y_____U_____I_____O_____P kc5( Y, U, I, O, P ) -#define A_____S_____D_____F_____G kc5( A, S, D, F, G ) -#define H_____J_____K_____L__SCLN kc5( H, J, K, L, SCLN ) -#define Z_____X_____C_____V_____B kc5( Z, X, C, V, B ) -#define N_____M__COMM___DOT__SLSH kc5( N, M, COMM, DOT, SLSH ) #define LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS MO(_LOWER), MO(_LOWER), KC_CAPS, KC_LALT, KC_LGUI, LT_NUML_SP, LT_RA_BSPC #define RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER LT_RA_ENT, LT_NUMR_SP, KC_RGUI, KC_RALT, KC_APP, MO(_LOWER), MO(_LOWER) /* ,-----------------------------------------. ,-----------------------------------------. @@ -78,18 +73,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_QWERTY] = LAYOUT_wrapper( - KC_ESC, Q_____W_____E_____R_____T, Y_____U_____I_____O_____P, KC_BSLS, - KC_LCTL, A_____S_____D_____F_____G, H_____J_____K_____L__SCLN, KC_RCTL, - KC_LSFT, Z_____X_____C_____V_____B, N_____M__COMM___DOT__SLSH, KC_RSFT, + KC_ESC, Q_____W_____E_____R_____T, Y_____U_____I_____O_____P, KC_BSLS, + KC_LCTL, A_____S_____D_____F_____G, H_____J_____K_____L____SCLN, KC_RCTL, + KC_LSFT, Z_____X_____C_____V_____B, N_____M____COMM__DOT___SLSH, KC_RSFT, LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER ), /* Colemak */ -#define Q_____W_____F_____P_____G kc5( Q, W, F, P, G ) -#define J_____L_____U_____Y__SCLN kc5( J, L, U, Y, SCLN ) -#define A_____R_____S_____T_____D kc5( A, R, S, T, D ) -#define H_____N_____E_____I_____O kc5( H, N, E, I, O ) -#define K_____M__COMM___DOT__SLSH kc5( K, M, COMM, DOT, SLSH ) /* ,-----------------------------------------. ,-----------------------------------------. * | ESC | Q | W | F | P | G | | J | L | U | Y | ; | \ | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -101,19 +91,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_COLEMAK] = LAYOUT_wrapper( - KC_ESC, Q_____W_____F_____P_____G, J_____L_____U_____Y__SCLN, KC_BSLS, - KC_LCTL, A_____R_____S_____T_____D, H_____N_____E_____I_____O, KC_RCTL, - KC_LSFT, Z_____X_____C_____V_____B, K_____M__COMM___DOT__SLSH, KC_RSFT, + KC_ESC, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS, + KC_LCTL, A_____R_____S_____T_____D, H_____N_____E_____I_____O, KC_RCTL, + KC_LSFT, Z_____X_____C_____V_____B, K_____M____COMM__DOT___SLSH, KC_RSFT, LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER ), /* Dvorak */ -#define QUOT__COMM___DOT_____P_____Y kc5( QUOT, COMM, DOT, P, Y ) -#define F_____G_____C_____R_____L kc5( F, G, C, R, L ) -#define A_____O_____E_____U_____I kc5( A, O, E, U, I ) -#define D_____H_____T_____N_____S kc5( D, H, T, N, S ) -#define SCLN_____Q_____J_____K_____X kc5( SCLN, Q, J, K, X ) -#define B_____M_____W_____V_____Z kc5( B, M, W, V, Z ) /* ,-----------------------------------------. ,-----------------------------------------. * | ESC | ' | , | . | P | Y | | F | G | C | R | L | \ | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -125,19 +109,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_DVORAK] = LAYOUT_wrapper( - KC_ESC, QUOT__COMM___DOT_____P_____Y, F_____G_____C_____R_____L, KC_BSLS, - KC_LCTL, A_____O_____E_____U_____I, D_____H_____T_____N_____S, KC_RCTL, - KC_LSFT, SCLN_____Q_____J_____K_____X, B_____M_____W_____V_____Z, KC_RSFT, + KC_ESC, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS, + KC_LCTL, A_____O_____E_____U_____I, D_____H_____T_____N_____S, KC_RCTL, + KC_LSFT, SCLN___Q_____J_____K_____X, B_____M_____W_____V_____Z, KC_RSFT, LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER ), /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */ -#define Q_____W__COMM___DOT__SCLN kc5( Q, W, COMM, DOT, SCLN ) -#define M_____R_____D_____Y_____P kc5( M, R, D, Y, P ) -#define A_____O_____E_____I_____U kc5( A, O, E, I, U ) -#define G_____T_____K_____S_____N kc5( G, T, K, S, N ) -#define Z_____X_____C_____V_____F kc5( Z, X, C, V, F ) -#define B_____H_____J_____L__SLSH kc5( B, H, J, L, SLSH ) /* ,-----------------------------------------. ,-----------------------------------------. * | ESC | Q | W | , | . | ; | | M | R | D | Y | P | \ | * |------+------+------+------+------+------| |------+------+------+------+------+------| @@ -149,19 +127,15 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * `-------------------------------------------------------------------------------------------------' */ [_EUCALYN] = LAYOUT_wrapper( - KC_ESC, Q_____W__COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS, - KC_LCTL, A_____O_____E_____I_____U, G_____T_____K_____S_____N, KC_RCTL, - KC_LSFT, Z_____X_____C_____V_____F, B_____H_____J_____L__SLSH, KC_RSFT, + KC_ESC, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS, + KC_LCTL, A_____O_____E_____I_____U, G_____T_____K_____S_____N, KC_RCTL, + KC_LSFT, Z_____X_____C_____V_____F, B_____H_____J_____L____SLSH, KC_RSFT, LOWER___LOWER__CAPS__LALT__LGUI__NUML__RABS, RAEN_NUMR__RGUI__RALT___APP_LOWER__LOWER ), /* Num */ #define EXLM__AT__HASH___DLR__PERC kc5( EXLM, AT, HASH, DLR, PERC ) #define CIRC_AMPR_ASTR__LPRN__RPRN kc5( CIRC, AMPR, ASTR, LPRN, RPRN ) -#define _1_____2_____3_____4_____5 kc5( 1, 2, 3, 4, 5 ) -#define _6_____7_____8_____9_____0 kc5( 6, 7, 8, 9, 0 ) -#define F1____F2____F3____F4____F5 kc5( F1, F2, F3, F4, F5 ) -#define F6____F7____F8____F9___F10 kc5( F6, F7, F8, F9, F10 ) #define ____z_____z_____z_____z _______, _______, _______, _______ #define ____z_____z_____z _______, _______, _______ #define ____z_____z _______, _______ @@ -178,13 +152,13 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { [_NUML] = LAYOUT_wrapper( _______, EXLM__AT__HASH___DLR__PERC, CIRC_AMPR_ASTR__LPRN__RPRN, _______, _______, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_F12, - _______, F1____F2____F3____F4____F5, F6____F7____F8____F9___F10, KC_F11, + _______, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11, _______, ____z_____z_____z_____z,____z_____z_____z,KC_SPC, ____z_____z_____z_____z, _______ ), [_NUMR] = LAYOUT_wrapper( _______, EXLM__AT__HASH___DLR__PERC, CIRC_AMPR_ASTR__LPRN__RPRN, _______, _______, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_F12, - _______, F1____F2____F3____F4____F5, F6____F7____F8____F9___F10, KC_F11, + _______, F1____F2____F3____F4____F5, F6____F7____F8____F9____F10, KC_F11, _______, ____z_____z_____z_____z,KC_SPC, ____z_____z_____z,____z_____z_____z_____z, _______ ), /* Lower */ diff --git a/keyboards/helix/rev2/keymaps/five_rows/config.h b/keyboards/helix/rev2/keymaps/five_rows/config.h index e1c124f419..4aae9b5cac 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/config.h +++ b/keyboards/helix/rev2/keymaps/five_rows/config.h @@ -1,26 +1,7 @@ -/* -This is the c configuration file for the keymap +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert -Copyright 2020 mtei - -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 . -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#pragma once #undef TAPPING_TERM #define TAPPING_TERM 300 @@ -35,50 +16,3 @@ along with this program. If not, see . # define OLED_UPDATE_INTERVAL 50 #endif -// place overrides here - -// If you need more program area, try select and reduce rgblight modes to use. - -#define DISABLE_SYNC_TIMER - -// Selection of RGBLIGHT MODE to use. -#undef RGBLIGHT_ANIMATIONS -#undef RGBLIGHT_EFFECT_BREATHING -#undef RGBLIGHT_EFFECT_RAINBOW_MOOD -#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL -#undef RGBLIGHT_EFFECT_SNAKE -#undef RGBLIGHT_EFFECT_KNIGHT -#undef RGBLIGHT_EFFECT_CHRISTMAS -#undef RGBLIGHT_EFFECT_STATIC_GRADIENT -#undef RGBLIGHT_EFFECT_RGB_TEST -#undef RGBLIGHT_EFFECT_ALTERNATING - -#if defined(LED_ANIMATIONS) -# if LED_ANIMATIONS_LEVEL > 1 - #define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - #define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - #define RGBLIGHT_EFFECT_CHRISTMAS - #define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING -# else - #define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - //#define RGBLIGHT_EFFECT_CHRISTMAS - #define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING -# endif -#endif - -#endif /* CONFIG_USER_H */ - -#ifdef DEBUG_CONFIG -# include "debug_config.h" -#endif diff --git a/keyboards/helix/rev2/keymaps/five_rows/keymap.c b/keyboards/helix/rev2/keymaps/five_rows/keymap.c index 2b3f6233c1..d992425de7 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/keymap.c +++ b/keyboards/helix/rev2/keymaps/five_rows/keymap.c @@ -16,7 +16,54 @@ #include QMK_KEYBOARD_H -#include "layer_number.h" +#include "key_blocks.h" +#include "layer_number_util.h" + +#ifdef ENABLE_COLEMAK +# define COLEMAK_Colemak (COLEMAK, " Colemak"), +#else +# define COLEMAK_Colemak +#endif +#ifdef ENABLE_DVORAK +# define DVORAK_Dvorak (DVORAK, " Dvorak"), +#else +# define DVORAK_Dvorak +#endif +#ifdef ENABLE_EUCALYN +# define EUCALYN_Eucalyn (EUCALYN, " Eucalyn"), +#else +# define EUCALYN_Eucalyn +#endif + +#define LAYER_NAME_LIST \ + (QWERTY, " Qwerty"), \ + COLEMAK_Colemak \ + DVORAK_Dvorak \ + EUCALYN_Eucalyn \ + (KEYPAD, " Keypad"), \ + (AUX, ":AUX"), \ + (KAUX, ":00"), \ + (LOWER, ":Func"), \ + (RAISE, ":Extra"), \ + (PADFUNC, ":PadFunc"), \ + (ADJUST, ":Adjust") + +enum layer_number { + // _QWERTY, _COLEMAK, ... + MAP(BUILD_LAYER_ENUM_NUMBER, LAYER_NAME_LIST) +}; + +#ifdef OLED_ENABLE +// static const char QWERTY_name[] PROGMEM = " Qwerty"; ... +MAP(BUILD_LAYER_NAME_STR, LAYER_NAME_LIST) + +const char *layer_names[] = { + // [_QWERTY] = QWERTY_name, ... + MAP(BUILD_LAYER_NAME_TABLE, LAYER_NAME_LIST) +}; +#endif + +const size_t num_of_layer_names = GET_ITEM_COUNT(LAYER_NAME_LIST); extern keymap_config_t keymap_config; @@ -44,8 +91,6 @@ enum custom_keycodes { #define ____ _______ #define KC_ADJ MO(_ADJUST) -#define _1_____2_____3_____4_____5 KC_1, KC_2, KC_3, KC_4, KC_5 -#define _6_____7_____8_____9_____0 KC_6, KC_7, KC_8, KC_9, KC_0 #define LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS \ KC_LOWER, KC_LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC) #define RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER \ @@ -56,12 +101,6 @@ enum custom_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Qwerty */ -#define Q_____W_____E_____R_____T KC_Q, KC_W, KC_E, KC_R, KC_T -#define Y_____U_____I_____O_____P KC_Y, KC_U, KC_I, KC_O, KC_P -#define A_____S_____D_____F_____G KC_A, KC_S, KC_D, KC_F, KC_G -#define H_____J_____K_____L____SCLN KC_H, KC_J, KC_K, KC_L, KC_SCLN -#define Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B -#define N_____M____COMM__DOT___SLSH KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -83,12 +122,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Colemak */ -#define Q_____W_____F_____P_____G KC_Q, KC_W, KC_F, KC_P, KC_G -#define J_____L_____U_____Y____SCLN KC_J, KC_L, KC_U, KC_Y, KC_SCLN -#define A_____R_____S_____T_____D KC_A, KC_R, KC_S, KC_T, KC_D -#define H_____N_____E_____I_____O KC_H, KC_N, KC_E, KC_I, KC_O -#define Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B -#define K_____M____COMM__DOT___SLSH KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -101,6 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_COLEMAK [_COLEMAK] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS, @@ -108,14 +142,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, K_____M____COMM__DOT___SLSH, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Dvorak */ -#define QUOT_COMM___DOT____P_____Y KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y -#define F_____G_____C_____R_____L KC_F, KC_G, KC_C, KC_R, KC_L -#define A_____O_____E_____U_____I KC_A, KC_O, KC_E, KC_U, KC_I -#define D_____H_____T_____N_____S KC_D, KC_H, KC_T, KC_N, KC_S -#define SCLN___Q_____J_____K_____X KC_SCLN, KC_Q, KC_J, KC_K, KC_X -#define B_____M_____W_____V_____Z KC_B, KC_M, KC_W, KC_V, KC_Z #define GRV__SLSH KC_GRV, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | @@ -129,6 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_DVORAK [_DVORAK] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS, @@ -136,14 +166,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, SCLN___Q_____J_____K_____X, GRV__SLSH, B_____M_____W_____V_____Z, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */ -#define Q_____W___COMM___DOT__SCLN KC_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN -#define M_____R_____D_____Y_____P KC_M, KC_R, KC_D, KC_Y, KC_P -#define A_____O_____E_____I_____U KC_A, KC_O, KC_E, KC_I, KC_U -#define G_____T_____K_____S_____N KC_G, KC_T, KC_K, KC_S, KC_N -#define Z_____X_____C_____V_____F KC_Z, KC_X, KC_C, KC_V, KC_F -#define B_____H_____J_____L____SLSH KC_B, KC_H, KC_J, KC_L, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -156,6 +181,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_EUCALYN [_EUCALYN] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS, @@ -163,6 +189,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, Z_____X_____C_____V_____F, GRV__QUOT, B_____H_____J_____L____SLSH, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Keypad */ #define KP_TAB__PSLS_PAST KC_TAB, KC_PSLS, KC_PAST @@ -246,8 +273,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Lower */ -#define F1____F2____F3____F4____F5 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 -#define F6____F7____F8____F9____F10 KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 #define XXXX__PAUS__SLCK___INS XXXX, KC_PAUS, KC_SLCK, KC_INS #define XXXX___INS__SLCK__PAUS__XXXX XXXX, KC_INS, KC_SLCK, KC_PAUS, XXXX #define ADJ___ADJ KC_ADJ, KC_ADJ @@ -383,21 +408,27 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; case COLEMAK: +#ifdef ENABLE_COLEMAK if (record->event.pressed) { update_base_layer(_COLEMAK); } +#endif return false; break; case DVORAK: +#ifdef ENABLE_DVORAK if (record->event.pressed) { update_base_layer(_DVORAK); } +#endif return false; break; case EUCALYN: +#ifdef ENABLE_EUCALYN if (record->event.pressed) { update_base_layer(_EUCALYN); } +#endif return false; break; case KEYPAD: @@ -447,7 +478,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return true; } - -void matrix_init_user(void) { - INIT_HELIX_OLED(); /* define in layer_number.h */ -} diff --git a/keyboards/helix/rev2/keymaps/five_rows/layer_number.h b/keyboards/helix/rev2/keymaps/five_rows/layer_number.h deleted file mode 100644 index 1272feba4f..0000000000 --- a/keyboards/helix/rev2/keymaps/five_rows/layer_number.h +++ /dev/null @@ -1,26 +0,0 @@ -#pragma once - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -enum layer_number { - _QWERTY = 0, - _COLEMAK, - _DVORAK, - _EUCALYN, - _KEYPAD, - _AUX, - _KAUX, - _LOWER, - _RAISE, - _PADFUNC, - _ADJUST, -}; - -#if defined(SSD1306OLED) -extern void init_helix_oled(void); -# define INIT_HELIX_OLED() init_helix_oled(); -#else -# define INIT_HELIX_OLED() -#endif diff --git a/keyboards/helix/rev2/keymaps/five_rows/matrix_output_unselect_delay.c b/keyboards/helix/rev2/keymaps/five_rows/matrix_output_unselect_delay.c deleted file mode 100644 index a093afe0a4..0000000000 --- a/keyboards/helix/rev2/keymaps/five_rows/matrix_output_unselect_delay.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2021 mtei - * - * 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 . - */ - -#include QMK_KEYBOARD_H - -void matrix_output_unselect_delay(uint8_t line, bool key_pressed) { - /* If none of the keys are pressed, - * there is no need to wait for time for the next line. */ - if (key_pressed) { -# ifdef MATRIX_IO_DELAY -# if MATRIX_IO_DELAY > 0 - wait_us(MATRIX_IO_DELAY); -# endif -# else - wait_us(30); -# endif - } -} diff --git a/keyboards/helix/rev2/keymaps/five_rows/rules.mk b/keyboards/helix/rev2/keymaps/five_rows/rules.mk index 6604f6309b..8f31c0bd06 100644 --- a/keyboards/helix/rev2/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev2/keymaps/five_rows/rules.mk @@ -22,84 +22,4 @@ HELIX_ROWS = 5 # Helix Rows is 4 or 5 # IOS_DEVICE_ENABLE = no # connect to IOS device (iPad,iPhone) OLED_SELECT = core -CUSTOM_DELAY = yes - -ifneq ($(strip $(HELIX)),) - define KEYMAP_OPTION_PARSE - # parse 'dispoff', 'consloe', 'na', 'ani', 'mini-ani', 'scan-api', - $(if $(SHOW_PARCE),$(info parse -$1-)) #debug - ifeq ($(strip $1),dispoff) - OLED_ENABLE = no - LED_BACK_ENABLE = no - LED_UNDERGLOW_ENABLE = no - endif - ifneq ($(filter nooled no-oled,$(strip $1)),) - OLED_ENABLE = no - endif - ifeq ($(strip $1),oled) - OLED_ENABLE = yes - endif - ifneq ($(filter core-oled core_oled newoled new-oled olednew oled-new,$(strip $1)),) - OLED_ENABLE = yes - OLED_SELECT = core - endif - ifneq ($(filter local-oled local_oled oldoled old-oled oledold oled-old,$(strip $1)),) - OLED_ENABLE = yes - OLED_SELECT = local - endif - ifeq ($(strip $1),console) - CONSOLE_ENABLE = yes - endif - ifeq ($(strip $1),debug) - DEBUG_CONFIG = yes - endif - ifneq ($(filter nodebug no-debug no_debug,$(strip $1)),) - DEBUG_CONFIG = no - endif - ifneq ($(filter na no_ani no-ani,$(strip $1)),) - LED_ANIMATIONS = no - endif - ifneq ($(filter mini-ani mini_ani,$(strip $1)),) - LED_ANIMATIONS = mini - endif - ifneq ($(filter ani animation,$(strip $1)),) - LED_ANIMATIONS = yes - endif - ifeq ($(strip $1),lto) - LTO_ENABLE = yes - endif - ifneq ($(filter nolto no-lto no_lto,$(strip $1)),) - LTO_ENABLE = no - endif - ifeq ($(strip $1),scan-api) - # use DEBUG_MATRIX_SCAN_RATE - # see docs/newbs_testing_debugging.md - DEBUG_MATRIX_SCAN_RATE_ENABLE = api - endif - endef # end of KEYMAP_OPTION_PARSE - - COMMA=, - $(eval $(foreach A_OPTION_NAME,$(subst $(COMMA), ,$(HELIX)), \ - $(call KEYMAP_OPTION_PARSE,$(A_OPTION_NAME)))) -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - OPT_DEFS += -DLED_ANIMATIONS_LEVEL=2 -endif - -ifeq ($(strip $(LED_ANIMATIONS)), mini) - OPT_DEFS += -DLED_ANIMATIONS_LEVEL=1 - LED_ANIMATIONS = yes -endif - -ifeq ($(strip $(DEBUG_CONFIG)), yes) - OPT_DEFS += -DDEBUG_CONFIG -endif - -ifeq ($(strip $(OLED_ENABLE)), yes) - SRC += oled_display.c -endif - -ifeq ($(strip $(CUSTOM_DELAY)),yes) - SRC += matrix_output_unselect_delay.c -endif +SRC += oled_display.c diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h index 02d4425d62..ab679d14b9 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h +++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/config.h @@ -1,26 +1,7 @@ -/* -This is the c configuration file for the keymap +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later -Copyright 2012 Jun Wako -Copyright 2015 Jack Humbert -Copyright 2020 mtei - -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 . -*/ - -#ifndef CONFIG_USER_H -#define CONFIG_USER_H +#pragma once #undef TAPPING_TERM #define TAPPING_TERM 300 @@ -37,50 +18,3 @@ along with this program. If not, see . #define PSEUDO_SPRINTF_DEFINED -// place overrides here - -// If you need more program area, try select and reduce rgblight modes to use. - -#define DISABLE_SYNC_TIMER - -// Selection of RGBLIGHT MODE to use. -#undef RGBLIGHT_ANIMATIONS -#undef RGBLIGHT_EFFECT_BREATHING -#undef RGBLIGHT_EFFECT_RAINBOW_MOOD -#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL -#undef RGBLIGHT_EFFECT_SNAKE -#undef RGBLIGHT_EFFECT_KNIGHT -#undef RGBLIGHT_EFFECT_CHRISTMAS -#undef RGBLIGHT_EFFECT_STATIC_GRADIENT -#undef RGBLIGHT_EFFECT_RGB_TEST -#undef RGBLIGHT_EFFECT_ALTERNATING - -#if defined(LED_ANIMATIONS) -# if LED_ANIMATIONS_LEVEL > 1 - #define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - #define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - #define RGBLIGHT_EFFECT_CHRISTMAS - #define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING -# else - #define RGBLIGHT_EFFECT_BREATHING - #define RGBLIGHT_EFFECT_RAINBOW_MOOD - //#define RGBLIGHT_EFFECT_RAINBOW_SWIRL - //#define RGBLIGHT_EFFECT_SNAKE - //#define RGBLIGHT_EFFECT_KNIGHT - //#define RGBLIGHT_EFFECT_CHRISTMAS - #define RGBLIGHT_EFFECT_STATIC_GRADIENT - //#define RGBLIGHT_EFFECT_RGB_TEST - //#define RGBLIGHT_EFFECT_ALTERNATING -# endif -#endif - -#endif /* CONFIG_USER_H */ - -#ifdef DEBUG_CONFIG -# include "debug_config.h" -#endif diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c b/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c index 16eff49244..d992425de7 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c +++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/keymap.c @@ -15,16 +15,55 @@ */ #include QMK_KEYBOARD_H -#include "util.h" -#include "bootloader.h" -#ifdef PROTOCOL_LUFA -#include "lufa.h" -#include "split_util.h" + +#include "key_blocks.h" +#include "layer_number_util.h" + +#ifdef ENABLE_COLEMAK +# define COLEMAK_Colemak (COLEMAK, " Colemak"), +#else +# define COLEMAK_Colemak #endif -#ifdef CONSOLE_ENABLE - #include +#ifdef ENABLE_DVORAK +# define DVORAK_Dvorak (DVORAK, " Dvorak"), +#else +# define DVORAK_Dvorak #endif -#include "layer_number.h" +#ifdef ENABLE_EUCALYN +# define EUCALYN_Eucalyn (EUCALYN, " Eucalyn"), +#else +# define EUCALYN_Eucalyn +#endif + +#define LAYER_NAME_LIST \ + (QWERTY, " Qwerty"), \ + COLEMAK_Colemak \ + DVORAK_Dvorak \ + EUCALYN_Eucalyn \ + (KEYPAD, " Keypad"), \ + (AUX, ":AUX"), \ + (KAUX, ":00"), \ + (LOWER, ":Func"), \ + (RAISE, ":Extra"), \ + (PADFUNC, ":PadFunc"), \ + (ADJUST, ":Adjust") + +enum layer_number { + // _QWERTY, _COLEMAK, ... + MAP(BUILD_LAYER_ENUM_NUMBER, LAYER_NAME_LIST) +}; + +#ifdef OLED_ENABLE +// static const char QWERTY_name[] PROGMEM = " Qwerty"; ... +MAP(BUILD_LAYER_NAME_STR, LAYER_NAME_LIST) + +const char *layer_names[] = { + // [_QWERTY] = QWERTY_name, ... + MAP(BUILD_LAYER_NAME_TABLE, LAYER_NAME_LIST) +}; +#endif + +const size_t num_of_layer_names = GET_ITEM_COUNT(LAYER_NAME_LIST); extern keymap_config_t keymap_config; @@ -52,8 +91,6 @@ enum custom_keycodes { #define ____ _______ #define KC_ADJ MO(_ADJUST) -#define _1_____2_____3_____4_____5 KC_1, KC_2, KC_3, KC_4, KC_5 -#define _6_____7_____8_____9_____0 KC_6, KC_7, KC_8, KC_9, KC_0 #define LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS \ KC_LOWER, KC_LOWER, KC_CAPS, KC_LALT, KC_LGUI, KC_SPC, LT(_RAISE,KC_BSPC) #define RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER \ @@ -64,12 +101,6 @@ enum custom_keycodes { const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { /* Qwerty */ -#define Q_____W_____E_____R_____T KC_Q, KC_W, KC_E, KC_R, KC_T -#define Y_____U_____I_____O_____P KC_Y, KC_U, KC_I, KC_O, KC_P -#define A_____S_____D_____F_____G KC_A, KC_S, KC_D, KC_F, KC_G -#define H_____J_____K_____L____SCLN KC_H, KC_J, KC_K, KC_L, KC_SCLN -#define Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B -#define N_____M____COMM__DOT___SLSH KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -91,12 +122,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Colemak */ -#define Q_____W_____F_____P_____G KC_Q, KC_W, KC_F, KC_P, KC_G -#define J_____L_____U_____Y____SCLN KC_J, KC_L, KC_U, KC_Y, KC_SCLN -#define A_____R_____S_____T_____D KC_A, KC_R, KC_S, KC_T, KC_D -#define H_____N_____E_____I_____O KC_H, KC_N, KC_E, KC_I, KC_O -#define Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B -#define K_____M____COMM__DOT___SLSH KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -109,6 +134,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_COLEMAK [_COLEMAK] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, Q_____W_____F_____P_____G, J_____L_____U_____Y____SCLN, KC_BSLS, @@ -116,14 +142,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, Z_____X_____C_____V_____B, GRV__QUOT, K_____M____COMM__DOT___SLSH, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Dvorak */ -#define QUOT_COMM___DOT____P_____Y KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y -#define F_____G_____C_____R_____L KC_F, KC_G, KC_C, KC_R, KC_L -#define A_____O_____E_____U_____I KC_A, KC_O, KC_E, KC_U, KC_I -#define D_____H_____T_____N_____S KC_D, KC_H, KC_T, KC_N, KC_S -#define SCLN___Q_____J_____K_____X KC_SCLN, KC_Q, KC_J, KC_K, KC_X -#define B_____M_____W_____V_____Z KC_B, KC_M, KC_W, KC_V, KC_Z #define GRV__SLSH KC_GRV, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | @@ -137,6 +158,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_DVORAK [_DVORAK] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, QUOT_COMM___DOT____P_____Y, F_____G_____C_____R_____L, KC_BSLS, @@ -144,14 +166,9 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, SCLN___Q_____J_____K_____X, GRV__SLSH, B_____M_____W_____V_____Z, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Eucalyn (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */ -#define Q_____W___COMM___DOT__SCLN KC_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN -#define M_____R_____D_____Y_____P KC_M, KC_R, KC_D, KC_Y, KC_P -#define A_____O_____E_____I_____U KC_A, KC_O, KC_E, KC_I, KC_U -#define G_____T_____K_____S_____N KC_G, KC_T, KC_K, KC_S, KC_N -#define Z_____X_____C_____V_____F KC_Z, KC_X, KC_C, KC_V, KC_F -#define B_____H_____J_____L____SLSH KC_B, KC_H, KC_J, KC_L, KC_SLSH /* ,-----------------------------------. ,-----------------------------------. * | ESC | 1 | 2 | 3 | 4 | 5 | | 6 | 7 | 8 | 9 | 0 | BS | * |-----+-----+-----+-----+-----+-----| |-----+-----+-----+-----+-----+-----| @@ -164,6 +181,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { * |Lower|Lower|Caps | Alt | GUI |Space| BS |Enter|Space| GUI | Alt |Menu |Lower|Lower| * `-----------------------------------------------------------------------------------' */ +#ifdef ENABLE_EUCALYN [_EUCALYN] = LAYOUT_wrapper( KC_ESC, _1_____2_____3_____4_____5, _6_____7_____8_____9_____0, KC_BSPC, KC_TAB, Q_____W___COMM___DOT__SCLN, M_____R_____D_____Y_____P, KC_BSLS, @@ -171,6 +189,7 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { KC_LSFT, Z_____X_____C_____V_____F, GRV__QUOT, B_____H_____J_____L____SLSH, KC_RSFT, LOWER__LOWER__CAPS__LALT__LGUI__SPC__RABS, RAEN___SPC___RGUI__RALT__APP___LOWER__LOWER ), +#endif /* Keypad */ #define KP_TAB__PSLS_PAST KC_TAB, KC_PSLS, KC_PAST @@ -254,8 +273,6 @@ const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = { ), /* Lower */ -#define F1____F2____F3____F4____F5 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 -#define F6____F7____F8____F9____F10 KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 #define XXXX__PAUS__SLCK___INS XXXX, KC_PAUS, KC_SLCK, KC_INS #define XXXX___INS__SLCK__PAUS__XXXX XXXX, KC_INS, KC_SLCK, KC_PAUS, XXXX #define ADJ___ADJ KC_ADJ, KC_ADJ @@ -391,21 +408,27 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { return false; break; case COLEMAK: +#ifdef ENABLE_COLEMAK if (record->event.pressed) { update_base_layer(_COLEMAK); } +#endif return false; break; case DVORAK: +#ifdef ENABLE_DVORAK if (record->event.pressed) { update_base_layer(_DVORAK); } +#endif return false; break; case EUCALYN: +#ifdef ENABLE_EUCALYN if (record->event.pressed) { update_base_layer(_EUCALYN); } +#endif return false; break; case KEYPAD: @@ -455,7 +478,3 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) { } return true; } - -void matrix_init_user(void) { - INIT_HELIX_OLED(); /* define in layer_number.h */ -} diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/layer_number.h b/keyboards/helix/rev3_5rows/keymaps/five_rows/layer_number.h deleted file mode 100644 index 1272feba4f..0000000000 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/layer_number.h +++ /dev/null @@ -1,26 +0,0 @@ -#pragma once - -// Each layer gets a name for readability, which is then used in the keymap matrix below. -// The underscores don't mean anything - you can have a layer called STUFF or any other name. -// Layer names don't all need to be of the same length, obviously, and you can also skip them -// entirely and just use numbers. -enum layer_number { - _QWERTY = 0, - _COLEMAK, - _DVORAK, - _EUCALYN, - _KEYPAD, - _AUX, - _KAUX, - _LOWER, - _RAISE, - _PADFUNC, - _ADJUST, -}; - -#if defined(SSD1306OLED) -extern void init_helix_oled(void); -# define INIT_HELIX_OLED() init_helix_oled(); -#else -# define INIT_HELIX_OLED() -#endif diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/matrix_output_unselect_delay.c b/keyboards/helix/rev3_5rows/keymaps/five_rows/matrix_output_unselect_delay.c deleted file mode 100644 index a093afe0a4..0000000000 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/matrix_output_unselect_delay.c +++ /dev/null @@ -1,31 +0,0 @@ -/* Copyright 2021 mtei - * - * 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 . - */ - -#include QMK_KEYBOARD_H - -void matrix_output_unselect_delay(uint8_t line, bool key_pressed) { - /* If none of the keys are pressed, - * there is no need to wait for time for the next line. */ - if (key_pressed) { -# ifdef MATRIX_IO_DELAY -# if MATRIX_IO_DELAY > 0 - wait_us(MATRIX_IO_DELAY); -# endif -# else - wait_us(30); -# endif - } -} diff --git a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk index 1d7f2f2744..a6ce7de118 100644 --- a/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk +++ b/keyboards/helix/rev3_5rows/keymaps/five_rows/rules.mk @@ -9,84 +9,3 @@ USER_NAME := mtei ENCODER_ENABLE = no LTO_ENABLE = no # if firmware size over limit, try this option LED_ANIMATIONS = yes - -CUSTOM_DELAY = yes - -ifneq ($(strip $(HELIX)),) - define KEYMAP_OPTION_PARSE - # parse 'dispoff', 'consle', 'back', 'oled', 'no-ani', 'mini-ani', 'lto', 'no-lto', 'no-enc', 'scan', 'scan-api' - $(if $(SHOW_PARCE),$(info parse .$1.)) #debug - ifeq ($(strip $1),dispoff) - OLED_ENABLE = no - RGBLIGHT_ENABLE = no - endif - ifeq ($(strip $1),console) - CONSOLE_ENABLE = yes - endif - ifeq ($(strip $1),debug) - DEBUG_CONFIG = yes - endif - ifneq ($(filter nodebug no-debug no_debug,$(strip $1)),) - DEBUG_CONFIG = no - endif - ifneq ($(filter enc,$(strip $1)),) - ENCODER_ENABLE = yes - endif - ifneq ($(filter noenc no-enc no_enc,$(strip $1)),) - ENCODER_ENABLE = no - endif - ifeq ($(strip $1),oled) - OLED_ENABLE = yes - endif - ifeq ($(strip $1),back) - RGBLIGHT_ENABLE = yes - endif - ifneq ($(filter na no_ani no-ani,$(strip $1)),) - LED_ANIMATIONS = no - endif - ifneq ($(filter mini-ani mini_ani,$(strip $1)),) - LED_ANIMATIONS = mini - endif - ifneq ($(filter ani animation,$(strip $1)),) - LED_ANIMATIONS = yes - endif - ifeq ($(strip $1),lto) - LTO_ENABLE = yes - endif - ifneq ($(filter nolto no-lto no_lto,$(strip $1)),) - LTO_ENABLE = no - endif - ifeq ($(strip $1),scan) - # use DEBUG_MATRIX_SCAN_RATE - # see docs/newbs_testing_debugging.md - DEBUG_MATRIX_SCAN_RATE_ENABLE = yes - endif - ifeq ($(strip $1),scan-api) - # use DEBUG_MATRIX_SCAN_RATE - # see docs/newbs_testing_debugging.md - DEBUG_MATRIX_SCAN_RATE_ENABLE = api - endif - endef # end of KEYMAP_OPTION_PARSE - - COMMA=, - $(eval $(foreach A_OPTION_NAME,$(subst $(COMMA), ,$(HELIX)), \ - $(call KEYMAP_OPTION_PARSE,$(A_OPTION_NAME)))) -endif - -ifeq ($(strip $(LED_ANIMATIONS)), yes) - OPT_DEFS += -DLED_ANIMATIONS - OPT_DEFS += -DLED_ANIMATIONS_LEVEL=2 -endif - -ifeq ($(strip $(LED_ANIMATIONS)), mini) - OPT_DEFS += -DLED_ANIMATIONS - OPT_DEFS += -DLED_ANIMATIONS_LEVEL=1 -endif - -ifeq ($(strip $(CUSTOM_DELAY)),yes) - SRC += matrix_output_unselect_delay.c -endif - -ifeq ($(strip $(DEBUG_CONFIG)), yes) - OPT_DEFS += -DDEBUG_CONFIG -endif diff --git a/users/mtei/config.h b/users/mtei/config.h new file mode 100644 index 0000000000..b245d7cff2 --- /dev/null +++ b/users/mtei/config.h @@ -0,0 +1,46 @@ +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later + +// clang-format off + +#pragma once + +// Selection of RGBLIGHT MODE to use. +#undef RGBLIGHT_ANIMATIONS +#undef RGBLIGHT_EFFECT_BREATHING +#undef RGBLIGHT_EFFECT_RAINBOW_MOOD +#undef RGBLIGHT_EFFECT_RAINBOW_SWIRL +#undef RGBLIGHT_EFFECT_SNAKE +#undef RGBLIGHT_EFFECT_KNIGHT +#undef RGBLIGHT_EFFECT_CHRISTMAS +#undef RGBLIGHT_EFFECT_STATIC_GRADIENT +#undef RGBLIGHT_EFFECT_RGB_TEST +#undef RGBLIGHT_EFFECT_ALTERNATING + +#if defined(LED_ANIMATIONS) +# if LED_ANIMATIONS_LEVEL > 1 +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +# else +# define RGBLIGHT_EFFECT_BREATHING +# define RGBLIGHT_EFFECT_RAINBOW_MOOD +//# define RGBLIGHT_EFFECT_RAINBOW_SWIRL +//# define RGBLIGHT_EFFECT_SNAKE +//# define RGBLIGHT_EFFECT_KNIGHT +//# define RGBLIGHT_EFFECT_CHRISTMAS +# define RGBLIGHT_EFFECT_STATIC_GRADIENT +//# define RGBLIGHT_EFFECT_RGB_TEST +//# define RGBLIGHT_EFFECT_ALTERNATING +# endif +#endif + +#ifdef DEBUG_CONFIG +# include "debug_config.h" +#endif diff --git a/users/mtei/cpp_map.h b/users/mtei/cpp_map.h new file mode 100644 index 0000000000..3b95d0a82a --- /dev/null +++ b/users/mtei/cpp_map.h @@ -0,0 +1,84 @@ +// Copyright (c) 2021 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: MIT + +// See here for how to use this. (https://github.com/mtei/bare_metal_parts/tree/master/cpp/map) + +#pragma once +// clang-format off + +#define _MAP1(E,ET, _1) ET(_1) +#define _MAP2(E,ET, _1,_2) E(_1) ET(_2) +#define _MAP3(E,ET, _1,_2,_3) E(_1) E(_2) ET(_3) +#define _MAP4(E,ET, _1,_2,_3,_4) E(_1) E(_2) E(_3) ET(_4) +#define _MAP5(E,ET, _1,_2,_3,_4,_5) E(_1) E(_2) E(_3) E(_4) ET(_5) +#define _MAP6(E,ET, _1,_2,_3,_4,_5,_6) E(_1) E(_2) E(_3) E(_4) E(_5) ET(_6) +#define _MAP7(E,ET, _1,_2,_3,_4,_5,_6,_7) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) ET(_7) +#define _MAP8(E,ET, _1,_2,_3,_4,_5,_6,_7,_8) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) ET(_8) +#define _MAP9(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) ET(_9) +#define _MAP10(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) ET(_10) +#define _MAP11(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) ET(_11) +#define _MAP12(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) ET(_12) +#define _MAP13(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) ET(_13) +#define _MAP14(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) ET(_14) +#define _MAP15(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) ET(_15) +#define _MAP16(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) ET(_16) +#define _MAP17(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) ET(_17) +#define _MAP18(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) ET(_18) +#define _MAP19(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) ET(_19) +#define _MAP20(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) ET(_20) +#define _MAP21(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) ET(_21) +#define _MAP22(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) ET(_22) +#define _MAP23(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) ET(_23) +#define _MAP24(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) ET(_24) +#define _MAP25(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) ET(_25) +#define _MAP26(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) ET(_26) +#define _MAP27(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) ET(_27) +#define _MAP28(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) E(_27) ET(_28) +#define _MAP29(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) E(_27) E(_28) ET(_29) +#define _MAP30(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) E(_27) E(_28) E(_29) ET(_30) +#define _MAP31(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) E(_27) E(_28) E(_29) E(_30) ET(_31) +#define _MAP32(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31,_32) E(_1) E(_2) E(_3) E(_4) E(_5) E(_6) E(_7) E(_8) E(_9) E(_10) E(_11) E(_12) E(_13) E(_14) E(_15) E(_16) E(_17) E(_18) E(_19) E(_20) E(_21) E(_22) E(_23) E(_24) E(_25) E(_26) E(_27) E(_28) E(_29) E(_30) E(_31) ET(_32) + +#define SELECT_MAP(e,et,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31,_32,NAME,...) NAME +#define MAPT(E,ET,...) SELECT_MAP(E,ET,__VA_ARGS__,_MAP32,_MAP31,_MAP30,_MAP29,_MAP28,_MAP27,_MAP26,_MAP25,_MAP24,_MAP23,_MAP22,_MAP21,_MAP20,_MAP19,_MAP18,_MAP17,_MAP16,_MAP15,_MAP14,_MAP13,_MAP12,_MAP11,_MAP10,_MAP9,_MAP8,_MAP7,_MAP6,_MAP5,_MAP4,_MAP3,_MAP2,_MAP1)(E,ET,__VA_ARGS__) +#define MAP(E,...) MAPT(E,E,__VA_ARGS__) + +#define _MAP_INDEX1(E,ET, _1) ET(0,_1) +#define _MAP_INDEX2(E,ET, _1,_2) E(0,_1) ET(1,_2) +#define _MAP_INDEX3(E,ET, _1,_2,_3) E(0,_1) E(1,_2) ET(2,_3) +#define _MAP_INDEX4(E,ET, _1,_2,_3,_4) E(0,_1) E(1,_2) E(2,_3) ET(3,_4) +#define _MAP_INDEX5(E,ET, _1,_2,_3,_4,_5) E(0,_1) E(1,_2) E(2,_3) E(3,_4) ET(4,_5) +#define _MAP_INDEX6(E,ET, _1,_2,_3,_4,_5,_6) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) ET(5,_6) +#define _MAP_INDEX7(E,ET, _1,_2,_3,_4,_5,_6,_7) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) ET(6,_7) +#define _MAP_INDEX8(E,ET, _1,_2,_3,_4,_5,_6,_7,_8) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) ET(7,_8) +#define _MAP_INDEX9(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) ET(8,_9) +#define _MAP_INDEX10(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) ET(9,_10) +#define _MAP_INDEX11(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) ET(10,_11) +#define _MAP_INDEX12(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) ET(11,_12) +#define _MAP_INDEX13(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) ET(12,_13) +#define _MAP_INDEX14(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) ET(13,_14) +#define _MAP_INDEX15(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) ET(14,_15) +#define _MAP_INDEX16(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) ET(15,_16) +#define _MAP_INDEX17(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) ET(16,_17) +#define _MAP_INDEX18(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) ET(17,_18) +#define _MAP_INDEX19(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) ET(18,_19) +#define _MAP_INDEX20(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) ET(19,_20) +#define _MAP_INDEX21(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) ET(20,_21) +#define _MAP_INDEX22(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) ET(21,_22) +#define _MAP_INDEX23(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) ET(22,_23) +#define _MAP_INDEX24(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) ET(23,_24) +#define _MAP_INDEX25(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) ET(24,_25) +#define _MAP_INDEX26(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) ET(25,_26) +#define _MAP_INDEX27(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) ET(26,_27) +#define _MAP_INDEX28(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) E(26,_27) ET(27,_28) +#define _MAP_INDEX29(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) E(26,_27) E(27,_28) ET(28,_29) +#define _MAP_INDEX30(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) E(26,_27) E(27,_28) E(28,_29) ET(29,_30) +#define _MAP_INDEX31(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) E(26,_27) E(27,_28) E(28,_29) E(29,_30) ET(30,_31) +#define _MAP_INDEX32(E,ET, _1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31,_32) E(0,_1) E(1,_2) E(2,_3) E(3,_4) E(4,_5) E(5,_6) E(6,_7) E(7,_8) E(8,_9) E(9,_10) E(10,_11) E(11,_12) E(12,_13) E(13,_14) E(14,_15) E(15,_16) E(16,_17) E(17,_18) E(18,_19) E(19,_20) E(20,_21) E(21,_22) E(22,_23) E(23,_24) E(24,_25) E(25,_26) E(26,_27) E(27,_28) E(28,_29) E(29,_30) E(30,_31) ET(31,_32) + +#define SELECT_MAP_INDEX(e,et,_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31,_32,NAME,...) NAME +#define MAPT_INDEX(E,ET,...) SELECT_MAP_INDEX(E,ET,__VA_ARGS__,_MAP_INDEX32,_MAP_INDEX31,_MAP_INDEX30,_MAP_INDEX29,_MAP_INDEX28,_MAP_INDEX27,_MAP_INDEX26,_MAP_INDEX25,_MAP_INDEX24,_MAP_INDEX23,_MAP_INDEX22,_MAP_INDEX21,_MAP_INDEX20,_MAP_INDEX19,_MAP_INDEX18,_MAP_INDEX17,_MAP_INDEX16,_MAP_INDEX15,_MAP_INDEX14,_MAP_INDEX13,_MAP_INDEX12,_MAP_INDEX11,_MAP_INDEX10,_MAP_INDEX9,_MAP_INDEX8,_MAP_INDEX7,_MAP_INDEX6,_MAP_INDEX5,_MAP_INDEX4,_MAP_INDEX3,_MAP_INDEX2,_MAP_INDEX1)(E,ET,__VA_ARGS__) +#define MAP_INDEX(E,...) MAPT_INDEX(E,E,__VA_ARGS__) + +#define SELECT_ITEM_COUNT(_1,_2,_3,_4,_5,_6,_7,_8,_9,_10,_11,_12,_13,_14,_15,_16,_17,_18,_19,_20,_21,_22,_23,_24,_25,_26,_27,_28,_29,_30,_31,_32,NAME,...) NAME +#define GET_ITEM_COUNT(...) SELECT_ITEM_COUNT(__VA_ARGS__,32,31,30,29,28,27,26,25,24,23,22,21,20,19,18,17,16,15,14,13,12,11,10,9,8,7,6,5,4,3,2,1) diff --git a/users/mtei/debug_config.h b/users/mtei/debug_config.h new file mode 100644 index 0000000000..edcc1ad41b --- /dev/null +++ b/users/mtei/debug_config.h @@ -0,0 +1,6 @@ +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later + +// clang-format off + +#pragma once diff --git a/users/mtei/encoder_update_user.c b/users/mtei/encoder_update_user.c new file mode 100644 index 0000000000..67585e0345 --- /dev/null +++ b/users/mtei/encoder_update_user.c @@ -0,0 +1,33 @@ +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +/* weak reference */ __attribute__((weak)) +int get_encoder_over_count(void); + +bool encoder_update_user(uint8_t index, bool clockwise) { +#ifndef ENCODER_DETECT_OVER_SPEED + switch (index) { + /* Left side encoder */ + case 0: tap_code(clockwise ? KC_LEFT : KC_RGHT); break; + /* Right side encoder */ + case 1: tap_code(clockwise ? KC_DOWN : KC_UP); break; + } +#else + // Is there a get_encoder_over_count() in quantum/encoder.c + if (get_encoder_over_count != NULL) { + int enc_over = get_encoder_over_count(); + for (; enc_over > 0; enc_over--) { + tap_code(KC_MINUS); + } + } + switch (index) { + case 0: tap_code(clockwise ? KC_A : KC_B); break; + case 1: tap_code(clockwise ? KC_C : KC_D); break; + case 2: tap_code(clockwise ? KC_E : KC_F); break; + case 3: tap_code(clockwise ? KC_G : KC_H); break; + } +#endif + return true; +} diff --git a/users/mtei/key_blocks.h b/users/mtei/key_blocks.h new file mode 100644 index 0000000000..9a62e5ccff --- /dev/null +++ b/users/mtei/key_blocks.h @@ -0,0 +1,40 @@ +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#define _1_____2_____3_____4_____5 KC_1, KC_2, KC_3, KC_4, KC_5 +#define _6_____7_____8_____9_____0 KC_6, KC_7, KC_8, KC_9, KC_0 +#define F1____F2____F3____F4____F5 KC_F1, KC_F2, KC_F3, KC_F4, KC_F5 +#define F6____F7____F8____F9____F10 KC_F6, KC_F7, KC_F8, KC_F9, KC_F10 + +/* Qwerty */ +#define Q_____W_____E_____R_____T KC_Q, KC_W, KC_E, KC_R, KC_T +#define Y_____U_____I_____O_____P KC_Y, KC_U, KC_I, KC_O, KC_P +#define A_____S_____D_____F_____G KC_A, KC_S, KC_D, KC_F, KC_G +#define H_____J_____K_____L____SCLN KC_H, KC_J, KC_K, KC_L, KC_SCLN +#define Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B +#define N_____M____COMM__DOT___SLSH KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH + +/* Colemak */ +#define Q_____W_____F_____P_____G KC_Q, KC_W, KC_F, KC_P, KC_G +#define J_____L_____U_____Y____SCLN KC_J, KC_L, KC_U, KC_Y, KC_SCLN +#define A_____R_____S_____T_____D KC_A, KC_R, KC_S, KC_T, KC_D +#define H_____N_____E_____I_____O KC_H, KC_N, KC_E, KC_I, KC_O +// Z_____X_____C_____V_____B KC_Z, KC_X, KC_C, KC_V, KC_B +#define K_____M____COMM__DOT___SLSH KC_K, KC_M, KC_COMM, KC_DOT, KC_SLSH + +/* Dvorak */ +#define QUOT_COMM___DOT____P_____Y KC_QUOT, KC_COMM, KC_DOT, KC_P, KC_Y +#define F_____G_____C_____R_____L KC_F, KC_G, KC_C, KC_R, KC_L +#define A_____O_____E_____U_____I KC_A, KC_O, KC_E, KC_U, KC_I +#define D_____H_____T_____N_____S KC_D, KC_H, KC_T, KC_N, KC_S +#define SCLN___Q_____J_____K_____X KC_SCLN, KC_Q, KC_J, KC_K, KC_X +#define B_____M_____W_____V_____Z KC_B, KC_M, KC_W, KC_V, KC_Z + +/* Eucalyn rev3 (http://eucalyn.hatenadiary.jp/entry/about-eucalyn-layout) */ +#define Q_____W___COMM___DOT__SCLN KC_Q, KC_W, KC_COMM, KC_DOT, KC_SCLN +#define M_____R_____D_____Y_____P KC_M, KC_R, KC_D, KC_Y, KC_P +#define A_____O_____E_____I_____U KC_A, KC_O, KC_E, KC_I, KC_U +#define G_____T_____K_____S_____N KC_G, KC_T, KC_K, KC_S, KC_N +#define Z_____X_____C_____V_____F KC_Z, KC_X, KC_C, KC_V, KC_F +#define B_____H_____J_____L____SLSH KC_B, KC_H, KC_J, KC_L, KC_SLSH diff --git a/users/mtei/layer_number_util.h b/users/mtei/layer_number_util.h new file mode 100644 index 0000000000..2147b9db05 --- /dev/null +++ b/users/mtei/layer_number_util.h @@ -0,0 +1,17 @@ +// Copyright (c) 2022 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later +#pragma once + +#include "cpp_map.h" + +//build -> _, +#define _BUILD_LAYER_ENUM_NUMBER(sym, str) _ ## sym, +#define BUILD_LAYER_ENUM_NUMBER(ent) _BUILD_LAYER_ENUM_NUMBER ent + +//build -> static const char _name[] PROGMEM = str; +#define _BUILD_LAYER_NAME_STR(sym, str) static const char sym ## _name[] PROGMEM = str; +#define BUILD_LAYER_NAME_STR(ent) _BUILD_LAYER_NAME_STR ent + +//build -> [_] = _name, +#define _BUILD_LAYER_NAME_TABLE(sym, str) [_##sym] = sym ## _name, +#define BUILD_LAYER_NAME_TABLE(ent) _BUILD_LAYER_NAME_TABLE ent diff --git a/users/mtei/matrix_output_unselect_delay_ondemand.c b/users/mtei/matrix_output_unselect_delay_ondemand.c new file mode 100644 index 0000000000..362d8a1303 --- /dev/null +++ b/users/mtei/matrix_output_unselect_delay_ondemand.c @@ -0,0 +1,18 @@ +// Copyright (c) 2021 Takeshi Ishii (mtei@github) +// SPDX-License-Identifier: GPL-2.0-or-later + +#include QMK_KEYBOARD_H + +void matrix_output_unselect_delay(uint8_t line, bool key_pressed) { + /* If none of the keys are pressed, + * there is no need to wait for time for the next line. */ + if (key_pressed) { +# ifdef MATRIX_IO_DELAY +# if MATRIX_IO_DELAY > 0 + wait_us(MATRIX_IO_DELAY); +# endif +# else + wait_us(30); +# endif + } +} diff --git a/users/mtei/oled_display.c b/users/mtei/oled_display.c index 6a16b23b0e..878dd29e6f 100644 --- a/users/mtei/oled_display.c +++ b/users/mtei/oled_display.c @@ -14,32 +14,17 @@ * along with this program. If not, see . */ -#include QMK_KEYBOARD_H #include -#ifdef CONSOLE_ENABLE - #include "print.h" -#endif -#ifdef SSD1306OLED - #include "ssd1306.h" -#endif #include -#include "layer_number.h" +#include QMK_KEYBOARD_H #include "pseudo_sprintf.h" extern int current_default_layer; -void init_helix_oled(void) { -#ifdef SSD1306OLED - //SSD1306 OLED init, make sure to add #define SSD1306OLED in config.h - iota_gfx_init(!has_usb()); // turns on the display -#endif -} +//OLED update loop +#if defined(OLED_ENABLE) -//SSD1306 OLED update loop, make sure to add #define SSD1306OLED in config.h -#if defined(SSD1306OLED) || defined(OLED_ENABLE) - -# if defined(OLED_ENABLE) oled_rotation_t oled_init_user(oled_rotation_t rotation) { if (is_keyboard_master()) { return OLED_ROTATION_0; @@ -47,35 +32,12 @@ oled_rotation_t oled_init_user(oled_rotation_t rotation) { return OLED_ROTATION_180; } } -# else -# define oled_write(data,flag) matrix_write(matrix, data) -# define oled_write_P(data,flag) matrix_write_P(matrix, data) -# endif - -# ifdef SSD1306OLED -void matrix_scan_user(void) { - iota_gfx_task(); // this is what updates the display continuously -} - -void matrix_update(struct CharacterMatrix *dest, - const struct CharacterMatrix *source) { - if (memcmp(dest->display, source->display, sizeof(dest->display))) { - memcpy(dest->display, source->display, sizeof(dest->display)); - dest->dirty = true; - } -} -# endif #ifndef PSEUDO_SPRINTF_DEFINED #include "pseudo_sprintf.c" #endif -# ifdef SSD1306OLED -static void render_logo(struct CharacterMatrix *matrix) { -# else static void render_logo(void) { -# endif - static const char helix_logo[] PROGMEM = { 0x80,0x81,0x82,0x83,0x84,0x85,0x86,0x87,0x88,0x89,0x8a,0x8b,0x8c,0x8d,0x8e,0x8f,0x90,0x91,0x92,0x93,0x94, 0xa0,0xa1,0xa2,0xa3,0xa4,0xa5,0xa6,0xa7,0xa8,0xa9,0xaa,0xab,0xac,0xad,0xae,0xaf,0xb0,0xb1,0xb2,0xb3,0xb4, @@ -98,57 +60,26 @@ static void render_logo(void) { bufp = sprints(bufp, " "); # endif oled_write(buf, false); -# ifndef SSD1306OLED } else { # ifdef DEBUG_MATRIX_SCAN_RATE bufp = sprintd(buf, " scan:", get_matrix_scan_rate()); oled_write(buf, false); -# endif +# endif // DEBUG_MATRIX_SCAN_RATE oled_write_P( PSTR("\n"), false); -# endif } -# else +# else // ifndef RGBLIGHT_ENABLE # ifdef DEBUG_MATRIX_SCAN_RATE bufp = sprintd(buf, " scan:", get_matrix_scan_rate()); bufp = sprints(bufp, " "); oled_write(buf, false); # endif -# endif +# endif // RGBLIGHT_ENABLE } -static const char Qwerty_name[] PROGMEM = " Qwerty"; -static const char Colemak_name[] PROGMEM = " Colemak"; -static const char Dvorak_name[] PROGMEM = " Dvorak"; -static const char Eucalyn_name[] PROGMEM = " Eucalyn"; -static const char Keypad_name[] PROGMEM = " Keypad"; +/* weak reference */ __attribute__((weak)) extern const char *layer_names[]; +/* weak reference */ __attribute__((weak)) extern const size_t num_of_layer_names; -static const char AUX_name[] PROGMEM = ":AUX"; -static const char KAUX_name[] PROGMEM = ":00"; -static const char Padfunc_name[] PROGMEM = ":PadFunc"; -static const char Lower_name[] PROGMEM = ":Func"; -static const char Raise_name[] PROGMEM = ":Extra"; -static const char Adjust_name[] PROGMEM = ":Adjust"; - -static const char *layer_names[] = { - [_QWERTY] = Qwerty_name, - [_COLEMAK] = Colemak_name, - [_DVORAK] = Dvorak_name, - [_EUCALYN]= Eucalyn_name, - [_KEYPAD] = Keypad_name, - [_AUX] = AUX_name, - [_KAUX] = KAUX_name, - [_LOWER] = Lower_name, - [_RAISE] = Raise_name, - [_PADFUNC]= Padfunc_name, - [_ADJUST] = Adjust_name -}; - -# ifdef SSD1306OLED -void render_status(struct CharacterMatrix *matrix) { -# else void render_status(void) { -# endif - // Render to mode icon static const char os_logo[][2][3] PROGMEM ={{{0x95,0x96,0},{0xb5,0xb6,0}},{{0x97,0x98,0},{0xb7,0xb8,0}}}; if(keymap_config.swap_lalt_lgui==false){ @@ -162,21 +93,29 @@ void render_status(void) { } // Define layers here, Have not worked out how to have text displayed for each layer. Copy down the number you see and add a case for it below - int name_num; + int name_num, max_name_num; uint32_t lstate; - oled_write_P(layer_names[current_default_layer], false); -# ifdef DEBUG_MATRIX_SCAN_RATE char buf[16]; + max_name_num = 0; + if (layer_names != NULL) { + max_name_num = num_of_layer_names; + oled_write_P(layer_names[current_default_layer], false); + } else { + sprintd(buf, " layer:", current_default_layer); + oled_write(buf, false); + } +# ifdef DEBUG_MATRIX_SCAN_RATE sprintd(buf, " scan:", get_matrix_scan_rate()); oled_write(buf, false); # endif oled_write_P(PSTR("\n"), false); - for (lstate = layer_state, name_num = 0; - lstate && name_num < sizeof(layer_names)/sizeof(char *); - lstate >>=1, name_num++) { + for (lstate = layer_state, name_num = 0; lstate; lstate >>=1, name_num++) { if ((lstate & 1) != 0) { - if (layer_names[name_num]) { + if (name_num < max_name_num && layer_names[name_num]) { oled_write_P(layer_names[name_num], false); + } else { + sprintd(buf, ":", name_num); + oled_write(buf, false); } } } @@ -189,42 +128,13 @@ void render_status(void) { oled_write_P(led_state.scroll_lock ? PSTR("SCLK ") : PSTR(" "), false); } -# ifdef SSD1306OLED -# if OLED_UPDATE_INTERVAL > 0 -uint16_t oled_update_timeout; -# endif - -void iota_gfx_task_user(void) { - struct CharacterMatrix matrix; - -# if DEBUG_TO_SCREEN - if (debug_enable) { - return; - } -# endif - -#if OLED_UPDATE_INTERVAL > 0 - if (timer_elapsed(oled_update_timeout) < OLED_UPDATE_INTERVAL) { - return; - } - oled_update_timeout = timer_read(); -#endif - matrix_clear(&matrix); - if (is_keyboard_master()) { - render_status(&matrix); - } else { - render_logo(&matrix); - } - matrix_update(&display, &matrix); -} -# else bool oled_task_user(void) { -# if DEBUG_TO_SCREEN +# if DEBUG_TO_SCREEN if (debug_enable) { return; } -# endif +# endif if(is_keyboard_master()){ render_status(); @@ -233,6 +143,5 @@ bool oled_task_user(void) { } return false; } -# endif #endif diff --git a/users/mtei/rules.mk b/users/mtei/rules.mk new file mode 100644 index 0000000000..780393ba12 --- /dev/null +++ b/users/mtei/rules.mk @@ -0,0 +1,9 @@ +VPATH += $(USER_PATH)/$(PLATFORM_PATH) +VPATH += $(USER_PATH)/$(PLATFORM_PATH)/$(PLATFORM_KEY) + +CUSTOM_MATRIX_DELAY = on-demand + +ifneq ($(strip $(USROPT)),) + include $(USER_PATH)/user_options.mk +endif +include $(USER_PATH)/user_featues.mk diff --git a/users/mtei/user_featues.mk b/users/mtei/user_featues.mk new file mode 100644 index 0000000000..243e80dde9 --- /dev/null +++ b/users/mtei/user_featues.mk @@ -0,0 +1,60 @@ +# Copyright (c) 2022 Takeshi Ishii (mtei@github) +# SPDX-License-Identifier: GPL-2.0-or-later + +ifeq ($(strip $(LED_ANIMATIONS)), yes) + OPT_DEFS += -DLED_ANIMATIONS + OPT_DEFS += -DLED_ANIMATIONS_LEVEL=2 +endif + +ifeq ($(strip $(LED_ANIMATIONS)), mini) + OPT_DEFS += -DLED_ANIMATIONS + OPT_DEFS += -DLED_ANIMATIONS_LEVEL=1 +endif + +ifeq ($(strip $(DEBUG_CONFIG)), yes) + OPT_DEFS += -DDEBUG_CONFIG +endif + +ifeq ($(strip $(CUSTOM_MATRIX_DELAY)),on-demand) + SRC += matrix_output_unselect_delay_ondemand.c +endif + +ifneq ($(strip $(MDELAY)),) + OPT_DEFS += -DMATRIX_IO_DELAY=$(strip $(MDELAY)) +endif + +ifeq ($(strip $(ENABLE_COLEMAK)),yes) + OPT_DEFS += -DENABLE_COLEMAK +endif + +ifeq ($(strip $(ENABLE_DVORAK)),yes) + OPT_DEFS += -DENABLE_DVORAK +endif + +ifeq ($(strip $(ENABLE_EUCALYN)),yes) + OPT_DEFS += -DENABLE_EUCALYN +endif + +ifeq ($(strip $(ENCODER_ENABLE)),yes) + SRC += encoder_update_user.c +endif + +ifeq ($(strip $(DEBUG_ENCODER)),yes) + OPT_DEFS += -DENCODER_DETECT_OVER_SPEED +endif + +ifneq ($(strip $(SYNC_TIMER_ENABLE)),yes) + OPT_DEFS += -DDISABLE_SYNC_TIMER +endif + +ifneq ($(strip $(USROPT)),) + $(info -) + $(info - CONSOLE_ENABLE = $(CONSOLE_ENABLE)) + $(info - OLED_ENABLE = $(OLED_ENABLE)) + $(info - RGBLIGHT_ENABLE = $(RGBLIGHT_ENABLE)) + $(info - ENCODER_ENABLE = $(ENCODER_ENABLE)) + $(info - MDELAY = $(MDELAY)) + $(info - CUSTOM_MATRIX_DELAY = $(CUSTOM_MATRIX_DELAY)) + $(info - DEBUG_MATRIX_SCAN_RATE_ENABLE = $(DEBUG_MATRIX_SCAN_RATE_ENABLE)) + $(info - OPT_DEFS = $(OPT_DEFS)) +endif diff --git a/users/mtei/user_options.mk b/users/mtei/user_options.mk new file mode 100644 index 0000000000..a3cf2196f9 --- /dev/null +++ b/users/mtei/user_options.mk @@ -0,0 +1,127 @@ +# Copyright (c) 2022 Takeshi Ishii (mtei@github) +# SPDX-License-Identifier: GPL-2.0-or-later + +# +# make USROPT=